Modbus Multimaster

2016-03-01
2016-03-01
  • mikegoesunder - 2016-03-01

    Hallo,

    ich möchte gerne parallel mit bis zu 3 Raspberrys als Modbusmaster ein modbus slave device auslesen.
    hat jemand hiermit schon Erfahrung gemacht?

    gruß Michl

     
  • Anonymous - 2016-03-01

    Originally created by: B&Bman

    Hallo mikegoesunder!

    Aber Du weisst schon dass Modbus eigentlich ein Single-Master Protokoll ist!?
    Seriell keine Chance würde ich sagen.
    Bei TCP evtl., wenn Du verschiedene TCP-Ports benutzt. Standard-Port für Modbus ist 502.

    Gruss
    B&Bman

    Gesendet von meinem iPad mit Tapatalk

     
  • mikegoesunder - 2016-03-01

    hmmmm.

    ja, aber die Hoffnung stirbt zum schluss.

    ich habe die Anforderung 3 Raspis mit einem Arduino zu synchronisieren.
    Jeder Raspi muss gleichberechtigt auf die Daten des Arduinos zugreifen können.

    Ich habe hierzu alle drei rapsis mit dem Arduino über i2c verbunden.
    Augenscheinlich hat das sehr gut funktioniert da immer nur jeweils ein Raspi über den i2c Bus
    den Masterstatus erhalten hat.

    leider funktioniert das nicht zufriedenstellend da der i2cMaster (meiner Meinung nach) noch Defizite aufweist.

    jetzt suche ich eine andere Lösung.

    ich könnte mir auch vorstellen das man ein Server / Clientsystem realisiert wobei der Arduino der Server ist, und der Raspberry ein Client.

    habe in dieser Richtung jedoch noch nicht viel gemacht

    was wäre sonst noch ein gangbarer weg?

    Gruß Michl

     
  • mikegoesunder - 2016-03-01

    Hallo,

    ich habe es jetzt ausprobiert.

    3 Raspberrys laufen als Modbus TCP. Alle drei erhalten gleichzeitig werte von dem Als ModbusSlave definierten Arduino.
    Zykluszeit hierbei: 10 ms.

    Folgendes Problem ergibt sich jedoch noch: Kann ich das eingebundene Gerät (Modbus_TCP_Slave) reseten wenn dies auf Störung geht?

    gruß Michl

     
  • mikegoesunder - 2016-03-01

    Hallo,

    hat sich erledigt.

    Ich kann den Modbus zur Laufzeit reseten indem ich xError abfrage und xConfirmError nach
    einer Prüfung auf true setze.

    danke an alle

    Gruß Michl

     

Log in to post a comment.