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

Page 4 of 4 FirstFirst ... 234
Results 31 to 39 of 39

Thread: Modbus RTU in Twincat, wie anfangen?

  1. #31
    Join Date
    13.12.2011
    Location
    Bückeburg
    Posts
    2,721
    Danke
    336
    Erhielt 386 Danke für 339 Beiträge

    Default


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Dann dreh die Zahlen mal wieder (16#210BA841) und schon bekommst Du einen Wert von um 21 raus.

  2. #32
    Join Date
    04.06.2018
    Posts
    23
    Danke
    0
    Erhielt 0 Danke für 0 Beiträge

    Default

    Top genau das war das Problem. Bekomme nun die richtigen Messwerte.

    Kann man ein gelesenes REAL in seine Bytes auf Teilen um die in die richtige Reihenfolge zu bekommen ?

    Hat sich erledigt. Danke für die Hilfe soweit klappt alles.
    Last edited by Christian Tepper; 28.06.2019 at 13:17.

  3. #33
    Join Date
    21.04.2020
    Posts
    11
    Danke
    1
    Erhielt 0 Danke für 0 Beiträge

    Default

    Ich habe ein ähnliches Problem wie die vorherigen Nutzer. Ich versuche Momentan eine Verbindung über einen PcCom aufzubauen. Dazu habe ich eine serielle Schnittstelle hinzugefügt. Die Ein- und Ausgänge der Schnittstelle habe ich mit der Modbus.InData bzw Modbus.OutData Instanz verknüpft. Folgendermaßen wird die Funktion ReadRegs vom Master ausgeführt:
    MB.ReadRegs(
    UnitID:=1,
    Quantity:=SIZEOF(Data)/2 ,
    MBAddr:=0,
    cbLength:=SIZEOF(Data),
    pMemoryAddr:=ADR(Data),
    ... );
    (allen nicht aufgeführten Variablen habe ich eine lokale Variable zugewiesen)

    Den Salve habe ich so eingestellt:
    VAR_INPUT
    MS : ModbusRtuSlave_PcCOM;
    Inputs AT %IW0 : ARRAY[0..63] OF WORD;
    Outputs AT %QW0 : ARRAY[0..63] OF WORD;
    Memory AT %MW0 : ARRAY[0..63] OF WORD;
    END_VAR

    MS(
    UnitID :=1,
    AdrInputs := ADR(Inputs),
    SizeInputBytes := SIZEOF(Inputs),
    AdrOutputs := ADR(Outputs),
    SizeOutputBytes := SIZEOF(Outputs),
    AdrMemory := ADR(Memory),
    SizeMemoryBytes := SIZEOF(Memory),
    ErrorId => );


    Mein Problem ist nun dass ich beim Versuch eine Verbindung aufzubauen immer folgende ErrorId beim Master erhalte: MODBUSERROR_NO_RESPONSE
    Kann mir da jemand weiterhelfen? Ich konnte im infosys von Beckhoff und auch auf sonstigen Internetseiten nichts genaues finden.

  4. #34
    Join Date
    10.08.2012
    Posts
    587
    Danke
    0
    Erhielt 158 Danke für 150 Beiträge

    Default

    @Hüpf3R : ein neuer Threat wäre prinzipiell schön gewesen.

    So ganz verstehe ich nicht was du machst.
    Du hast einen Baustein für den Master erstellt vom Typ
    ModbusRtuMaster_PcCom und die Eingänge/Ausgänge auf die Com-Schnittstelle verlinkt.
    Was willst du dann mit dem Slave und das auch noch als Baustein wo die als VAR_INPUT ... END_VAR mit Speicheradressen versiehst? Speicheradressen gibt es physikalisch nur 1x im Gerät.

    Aaaalso, bitte einmal strukturiert von Anfang an beschreiben was du machst, sonst wird das nichts.

    Guga

  5. #35
    Join Date
    21.04.2020
    Posts
    11
    Danke
    1
    Erhielt 0 Danke für 0 Beiträge

    Default

    Das Ganze hat sich gestern erledigt. Gestern wurde die Entscheidung getroffen nicht mit Beckhoff bzw. TwinCAT weiter zumachen. Trotzdem Danke für die Antwort

  6. #36
    Join Date
    13.12.2011
    Location
    Bückeburg
    Posts
    2,721
    Danke
    336
    Erhielt 386 Danke für 339 Beiträge

    Default

    Nur aus Neugier, was hat gegen Beckhoff TwinCAT gesprochen?

    Von irgendwas mit Internetzugang gesendet.

  7. #37
    Join Date
    21.04.2020
    Posts
    11
    Danke
    1
    Erhielt 0 Danke für 0 Beiträge

    Default

    Der eher mäßige Beckhoffsupport und die Tatsache, dass es einfach nicht ging 2 PCs über den COM-Port mit Modbus RTU zu verbinden, bzw. einfahc nicht die Zeit ist noch länger daran rumzuprobieren.
    Das hat 2 gründe. Zum einen der eher mäßige Beckhoffsupport. Zum anderen die Tatsache dass es einfach nicht ging 2 PCs über den COM-Port mit Modbus RTU zu verbinden, bzw. einfach nicht die Zeit ist noch länger daran rum zuprobieren und die Doku leider auch nicht weiterhilft.

  8. #38
    Join Date
    13.12.2011
    Location
    Bückeburg
    Posts
    2,721
    Danke
    336
    Erhielt 386 Danke für 339 Beiträge

    Default

    Ich hatte das eine oder andere mal auch schon meine Probleme mit dem Beckhoff Support, bin aber ansonsten sehr zufrieden mit deren Leistung.
    Ich bin mir nicht sicher ob es bei Modbus RTU überhaupt möglich ist, dass Master und Slave über die selbe Schnittstelle laufen. Sowohl der Master als auch der Slave müssten ja über die Schnittstelle gleichzeitig senden und empfangen können. Habt Ihr das mit einer anderen Steuerung denn schon am Laufen?

    Von irgendwas mit Internetzugang gesendet.
    Last edited by oliver.tonn; 30.04.2020 at 11:43.

  9. #39
    Join Date
    21.04.2020
    Posts
    11
    Danke
    1
    Erhielt 0 Danke für 0 Beiträge

    Default


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Naja Modbus RTU funktioniert ja so, dass der Master ein Telegramm sendet worauf der Slave antwortet. D.h. es ist immer nur einer der sendet. Das Problem bei uns war, dass TwinCAT zwar die COM-Schnittstelle blockier hat, aber keine Daten darüber gesendet hat, obwohl der Master ein Telegramm gesendet hat.
    Mit der anderen Steuerung wird es erst die nächsten Tage getestet.

Similar Threads

  1. Replies: 1
    Last Post: 15.05.2017, 16:19
  2. Replies: 0
    Last Post: 03.04.2014, 14:26
  3. Replies: 2
    Last Post: 05.04.2012, 17:51
  4. Wie am besten anfangen..?
    By Romance in forum Simatic
    Replies: 29
    Last Post: 13.10.2007, 12:45
  5. STEP 7, wie anfangen ?
    By sgssn in forum Simatic
    Replies: 4
    Last Post: 25.02.2007, 13:57

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
  •