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

Results 1 to 10 of 10

Thread: Zuweisung

  1. #1
    Join Date
    01.09.2008
    Posts
    48
    Danke
    8
    Erhielt 1 Danke für 1 Beitrag

    Default


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Hi!
    Habe da ein kleines Anfängerproblem.
    Ich komme mit übersichtlichen Mitteln irgendwie nicht weiter.
    Also, bekomme über einen Eingangsbyte Signale...Also Binärcodiert hätte ich dann 255 Möglichkeiten. Diese muss ich dann "ummappen" auf Merker...beginnend bei 200. Also 1= Merker 200.0, 2=Merker 200.1, 9=Merker 201.0 usw.
    Ich als Anfänger würde jetzt 255 vergleiche und zuweisungen anstellen, das ist aber ganz schön *pieep*. Hat jemand eine Idee wie ich das am einfachsten machen kann?
    Gruß
    Reply With Quote Reply With Quote Zuweisung  

  2. #2
    Join Date
    28.09.2007
    Location
    Österreich
    Posts
    6
    Danke
    0
    Erhielt 5 Danke für 4 Beiträge

    Default

    Du brauchst einfach nur das Eingansbyte auf ein Merkerbyte umkopieren:

    Beispiel:

    L EB0
    T MB0



    MFG
    Markus

  3. #3
    Join Date
    23.05.2008
    Posts
    29
    Danke
    0
    Erhielt 14 Danke für 12 Beiträge

    Default

    Hallo,

    du könntest das in einer Schleife mit Pointern machen. Aber wenn du schreiben würdest was du genau mit dem Eingansbyte machen möchtest, findet sich wahrscheinlich eine bessere Möglichkeit für die Auswertung.

    Stephan

    Edit:

    @thalerm
    So wie ich das verstanden habe möchte er wohl für jeden möglichen Zustand seines Eingangsworts einen Merker setzen. Also insgesamt 256 Merker (einer für jeden Zustand von 0 bis 255).
    Last edited by Isch; 03.12.2008 at 11:05.

  4. Folgender Benutzer sagt Danke zu Isch für den nützlichen Beitrag:

    snowbda (03.12.2008)

  5. #4
    Join Date
    28.03.2008
    Posts
    144
    Danke
    19
    Erhielt 25 Danke für 25 Beiträge

    Default

    Ich würde erstmal den Bereich mit Nullen voll schreiben.

    Code:
    L   0
    T   MD200
    T   MD204
    T   MD208
    T   MD212
    T   MD216
    T   MD220
    T   MD224
     T   MD228
    Und dann würde ich mir einen Pointer Basteln der das entsprechende Bit auf True setzt. http://www.sps-forum.de/showpost.php...92&postcount=4 in dem Beitrag geht es zwar um DBs aber das lässt sich sicher leicht auf Merker umbasteln.

  6. #5
    Join Date
    01.09.2008
    Posts
    48
    Danke
    8
    Erhielt 1 Danke für 1 Beitrag

    Default

    HI!
    Mit Nullen vollschreiben ist schlecht, ein Merker kann gesetzt werden und im nächsten Schritt ein anderer, der erste soll z.B. erhalten bleiben.
    In C wäre das alles kein Thema, aber in Step7...gnarf
    Last edited by snowbda; 03.12.2008 at 11:21.

  7. #6
    Join Date
    28.09.2007
    Location
    Österreich
    Posts
    6
    Danke
    0
    Erhielt 5 Danke für 4 Beiträge

    Default

    Sorry, hab ich leider falsch verstanden!
    Natürlich geht das dann nicht!

    Hast recht, indirekte Adressierung wär eh ziemlich die vernünftigste Lösung!

    MFG
    Markus

  8. Folgender Benutzer sagt Danke zu thalerm für den nützlichen Beitrag:

    snowbda (03.12.2008)

  9. #7
    Join Date
    28.03.2008
    Posts
    144
    Danke
    19
    Erhielt 25 Danke für 25 Beiträge

    Default

    Quote Originally Posted by snowbda View Post
    HI!
    Mit Nullen vollschreiben ist schlecht, ein Merker kann gesetzt werden und im nächsten Schritt ein anderer, der erste soll z.B. erhalten bleiben.
    In C wäre das alles kein Thema, aber in Step7...gnarf
    Das konnte ich aus der Frage stellung nicht rauslesen macht das ganze aber noch einfacher:
    Code:
    //GEÄNDERT
          L     MW    10
          T     #iBitNumber
    
    
          L     #iBitNumber
          L     8
          /I    
          L     200
          +I    
          T     #iByte
    
          L     #iBitNumber
          L     8
          MOD   
          T     #iBit
    
          L     #iByte
          SLD   3
          L     #iBit
          +D    
          LAR1  
    
          U     E      0.0
          =     M [AR1,P#0.0]
    Bit Adresse in MW10 und der Zustand des Bits wird durch E0.0 bestimmt.
    Last edited by BoxHead; 03.12.2008 at 11:32. Reason: Programm geändert

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

    snowbda (03.12.2008)

  11. #8
    Join Date
    22.03.2007
    Location
    Detmold (im Lipperland)
    Posts
    12,378
    Danke
    422
    Erhielt 2,527 Danke für 2,101 Beiträge

    Default

    Quote Originally Posted by snowbda View Post
    Hi!
    Habe da ein kleines Anfängerproblem.
    Ich komme mit übersichtlichen Mitteln irgendwie nicht weiter.
    Also, bekomme über einen Eingangsbyte Signale...Also Binärcodiert hätte ich dann 255 Möglichkeiten. Diese muss ich dann "ummappen" auf Merker...beginnend bei 200. Also 1= Merker 200.0, 2=Merker 200.1, 9=Merker 201.0 usw.
    Ich als Anfänger würde jetzt 255 vergleiche und zuweisungen anstellen, das ist aber ganz schön *pieep*. Hat jemand eine Idee wie ich das am einfachsten machen kann?
    Gruß
    Das ist doch gar kein Problem ...
    Code:
    L #Wort_mit_Bitmaske
    L P#200.0  // Anfangspointer für M200.0
    +D
    LAR1
     
    U     E      0.0
    =     M [AR1,P#0.0]
    Gruß
    LL

  12. Folgender Benutzer sagt Danke zu Larry Laffer für den nützlichen Beitrag:

    snowbda (03.12.2008)

  13. #9
    Join Date
    01.09.2008
    Posts
    48
    Danke
    8
    Erhielt 1 Danke für 1 Beitrag

    Default

    Das ist doch gar kein Problem ...
    Stimmt...wenn man weiß wie es geht

    Danke Euch für die Hilfe!

  14. #10
    Join Date
    30.11.2008
    Location
    Baesweiler
    Posts
    984
    Danke
    309
    Erhielt 162 Danke für 112 Beiträge

    Default


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    darf ich fragen was das für einen sinn macht, bzw. warum du das machen willst?

Similar Threads

  1. TIA Zuweisung
    By litlegerman in forum Simatic
    Replies: 5
    Last Post: 17.11.2019, 17:54
  2. Zuweisung an Variable
    By Softi11 in forum CODESYS und IEC61131
    Replies: 4
    Last Post: 11.05.2012, 16:06
  3. Zuweisung in SCL?
    By petzi in forum Simatic
    Replies: 13
    Last Post: 12.04.2012, 22:50
  4. Ungültige Zuweisung, SCL
    By petzi in forum Simatic
    Replies: 5
    Last Post: 18.05.2009, 13:55
  5. Zuweisung von Adressen
    By buenne in forum Simatic
    Replies: 18
    Last Post: 05.04.2007, 16:19

Bookmarks

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •