Zuviel Werbung? - > Hier kostenlos beim SPS-Forum registrieren

Ergebnis 1 bis 9 von 9

Thema: Udint

  1. #1
    Registriert seit
    26.07.2006
    Beiträge
    11
    Danke
    1
    Erhielt 0 Danke für 0 Beiträge

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Hallo Leute, ich suche einen einfachen Weg um die UDINT Variablen in Bits aufzuloesen (binaer) und die auszulesen. Ich habe ein furchtbares Programm mit FB geschrieben das mich nicht befriedigt. Ich denke da gibt es sicher einen einfachen Weg den ich im Moment nicht finde. Ich habe ein CanBus Netzwerk aufgebaut und die Bausteine liefern UDINT zurueck.
    Ich programmiere in Codesys. Leider bin ich im Speicher am Limit und benoetige einen einfachen ein bis fuenfzeiler Loesung, am liebsten in ST.
    Danke fuer eure Infos.
    Zitieren Zitieren Udint  

  2. #2
    Registriert seit
    03.01.2006
    Ort
    Im sonnigen Süden von Österreich!
    Beiträge
    1.377
    Danke
    227
    Erhielt 183 Danke für 168 Beiträge

    Standard

    Siehe dir mal den Befehl AT an. Der kann dir eine Variable in andere Variablen aufteilen.

    Bsp:
    Code:
    VAR
        Test_UDint:UDINT;
        Test_UDint_Bool AT Test_UDint: ARRAY[0..31] OF BOOL;    
    END_VAR
    godi


    //Edit
    Bin mir da jetzt nicht sicher ob das mit ST in Codesys genauso funktioniert wie mit SCL
    Geändert von godi (12.05.2008 um 10:20 Uhr)
    Zitieren Zitieren Befehl AT  

  3. Folgender Benutzer sagt Danke zu godi für den nützlichen Beitrag:

    reini_145 (12.05.2008)

  4. #3
    reini_145 ist offline Neuer Benutzer
    Themenstarter
    Registriert seit
    26.07.2006
    Beiträge
    11
    Danke
    1
    Erhielt 0 Danke für 0 Beiträge

    Standard

    Danke Godi, gute Idee werde ich gleich mal probieren. Da faellt mir das Wort ein, er sieht den Wald vor lauter Baeumen nicht. Natuerlich auf mich bezogen. Schoenen Sonntag(Montag)
    Gruss rene
    Zitieren Zitieren Udint  

  5. #4
    Registriert seit
    03.01.2006
    Ort
    Im sonnigen Süden von Österreich!
    Beiträge
    1.377
    Danke
    227
    Erhielt 183 Danke für 168 Beiträge

    Standard

    Ich habe gerade das mal in Codesys (V3.2) ausprobiert und der will nach dem AT Befehl eine Direkte Adresse. Also so wie ich es im Beispiel oben gemacht hat mecker er.
    Mit zb %MD10 führt er den Befehl AT aus. Warum geht das nicht so wie in SCL mit Variablen?

  6. #5
    reini_145 ist offline Neuer Benutzer
    Themenstarter
    Registriert seit
    26.07.2006
    Beiträge
    11
    Danke
    1
    Erhielt 0 Danke für 0 Beiträge

    Standard

    Im Codesys verwende ich den Befehl immer fuer die Zuordnung einer Variablen auf die Physikalische Adresse in der Globalen Variablen Liste. Ich habe dies mit dem AT Befehl nun ausprobiert. Er bringt mir die Fehlermeldung. " Nach dem AT fehlt physikalische Adresse". Gebe nicht auf probiere weiter. Richtung passt denke ich.
    Gruss rene
    Zitieren Zitieren Udint  

  7. #6
    Registriert seit
    03.01.2006
    Ort
    Im sonnigen Süden von Österreich!
    Beiträge
    1.377
    Danke
    227
    Erhielt 183 Danke für 168 Beiträge

    Standard

    Siehe mal meinen vorletzten Beitrag.
    Habe ich auch schon bemerkt das man da nur eine Direkte Adresse Benutzen kann!

    Aber ich kenne mich mit Codesys leider nicht aus also kann ich dir da auch nicht weiterhelfen.
    Aber Zotos oder ein anderer Codesys crack wird uns das schon erklären.

    godi

  8. #7
    Registriert seit
    20.11.2004
    Ort
    Linz, OÖ
    Beiträge
    1.365
    Danke
    96
    Erhielt 177 Danke für 133 Beiträge

    Standard

    B&R kennt hier die Library-Funktionen Byte2Bit und Bit2Byte, welche genau diese Funktion erfüllen. Weiß aber nicht ob anderer IEC-Systeme diese Funktionen auch kennen.

    mfg Maxl
    Bin aufgrund §2 der "Rechte des Betreibers" der Forum-Regeln nicht mehr aktiv, da nicht nicht akzeptiere, dass Informationen und Erkenntnisse ohne Quellangabe weitergegeben werden sollen. Jedem steht frei, auf die gleichen Erkenntnisse durch Eigenversuche zu kommen, vor allem Buchautoren.

  9. #8
    Registriert seit
    19.11.2006
    Beiträge
    1.346
    Danke
    6
    Erhielt 254 Danke für 231 Beiträge

    Standard

    Für Bit-weise Verwendung von Variablen nutze ich immer "." z.B.:
    >> VariablenName.0
    Da ich gerade aber keine Software zur Hand habe, kann ich nicht sagen, ob das nur für bit-orientierte BYTEs, WORDs und DWORDs gilt, oder auch für ganzzahlige Datentypen.

    edit:
    Bei TwinCAT geht das:
    http://infosys.beckhoff.com/index.ph...ables_bits.htm
    Geändert von trinitaucher (12.05.2008 um 17:37 Uhr)

  10. Folgender Benutzer sagt Danke zu trinitaucher für den nützlichen Beitrag:

    godi (12.05.2008)

  11. #9
    reini_145 ist offline Neuer Benutzer
    Themenstarter
    Registriert seit
    26.07.2006
    Beiträge
    11
    Danke
    1
    Erhielt 0 Danke für 0 Beiträge

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Hallo Leute, ich moechte mich bei allen bedanken die mir da geholfen haben. Ich habe jetzt die Loesung gefunden. Der letzte Beitrag hat mir den Durchbruch gebracht. Also die Loesung war dies.
    Tastenantwort:UDINT;
    ...
    Tastenantwort:=%ID16;
    BIT1:=Tastenantwort.0;

    Super einfache Loesung. Danke fuer die Infos. Ab und zu verrenne ich mich in unsinnige Programme die zwar funktionieren aber nicht im Sinne des Erfinders sind.

    Gruss Rene

Ähnliche Themen

  1. UDINT in TwinCAT verarbeiten und skalieren
    Von olitheis im Forum CODESYS und IEC61131
    Antworten: 13
    Letzter Beitrag: 06.12.2010, 08:19

Lesezeichen

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •