Konfiguration Modbus TCP Master

Rund um die Software von Revolution Pi
Samuel
Posts: 8
Joined: 21 Aug 2017, 20:33

Konfiguration Modbus TCP Master

Post by Samuel »

Hallo Volker

Ich habe nun in meinem Projekt Heizungssteuerung mit den ersten Kommunikationstests begonnen. In PiCtory habe ich nun einen virtuellen Modbus TCP Master konfiguriert und die Konfiguration anschliessend in LC3 übernommen:
IO_config.png
IO_config.png (22.78 KiB) Viewed 9160 times
Ich kann nun die digitalen Ein-und Ausgänge lesen und ansprechen, jedoch können Input_Bit_9 und Input_Bit_10 nicht gelesen werden. Und wenn ich Output_Bit_1 setze, dann wird auch gleich Output_Bit_10 mitgesetzt. Das gleiche Verhalten zeigt sich bei Output_Bit_2 / Output_Bit_11 und Output_Bit_3 / Output_Bit_12. Passiert dies, weil die Adressen aus PiCtory nicht stimmen? Wenn ich z. B. das Output_Bit_9 im Terminal setze, dann wird ja %QX1.177.0 gesetzt und nicht wie in den globalen Variablen definiert %QX1.176.8.
Ebenfalls habe ich noch Probleme beim Schreiben der analogen Ausgänge. Hier hatte ich bis jetzt noch gar keinen Erfolg. Den Slave (Buskoppler von Beckhoff) habe ich geprüft mit Modbus Poll, dort funktioniert es wie es soll. Kannst du mir hier weiterhelfen?

Gruss, Samuel
User avatar
Mathias
Posts: 130
Joined: 29 Nov 2016, 10:46

Re: Konfiguration Modbus TCP Master

Post by Mathias »

Hallo Samuel,

die Funktion piControlSetBitValue in der Datei piControlIf.c die vom ModbusMaster verwendet wird war leider fehlerhaft und hat zu diesem Fehler geführt. Seit gestern ist das neue Paket zum Download verfügbar, ich bin aber noch am Testen und habe deshalb noch keine Meldung veröffentlicht.

Installiere die neue Verion 1.0.2 mit den Befehlen:
sudo apt-get update
sudo apt-get install pimodbus-master

Melde dich bitte, wenn das Problem dann immer noch besteht.

Gruß
Mathias
User avatar
Mathias
Posts: 130
Joined: 29 Nov 2016, 10:46

Re: Konfiguration Modbus TCP Master

Post by Mathias »

zu deiner zweiten Frage:
meinst du mit "Modbus Poll" das Windows-Programm modpoll.exe ? Bei Modbus ist üblich, dass das erste Register mit Nummer 1 bezeichnet wird, tatsächlich auf der Leitung wird jedoch die Adresse 0 verschickt. In PiCtory und bei modpoll.exe musst du für das erste Register die Adresse 1 angeben.

Es gibt Hersteller, die in ihrer Doku diese 1 schon abziehen. Dann müsstest du in PiCtory zu der Adresse aus der Doku 1 dazu zählen. Probier bitte aus ob es daran liegen könnte.

Außerdem könntest du nach den Statusausgaben sehen mit "piTest -r Modbus_Action_Status_N" wobei N die Nummer der Action im Extended Data Dialog ist.

Gruß
Mathias
Samuel
Posts: 8
Joined: 21 Aug 2017, 20:33

Re: Konfiguration Modbus TCP Master

Post by Samuel »

Hallo Mathias

Besten Dank für deine schnelle Antwort. Ich habe das Update durchgeführt und nochmals getestet, nun funktioniert alles bis auf den Input_Bit_10. Diesen Fehler probiere ich in nächster Zeit noch ausfindig zu machen.
Genau dieses Programm für Windows habe ich gemeint. Das mit den Adressen habe ich so beachtet. Vielen Dank für die Informationen :)

Gruss, Samuel
User avatar
volker
Posts: 1046
Joined: 09 Nov 2016, 15:41

Re: Konfiguration Modbus TCP Master

Post by volker »

Hallo Samuel,
jetzt bin ich neugierig: Eigentlich sollte Dein 2. Problem nichts mit den Korrekturen in der von Dir runtergeladenen Paketversion zu tun haben. Darum meine Frage:
Läuft bei Dir jetzt auch die Ansteuerung der analogen Ausgänge? Wenn ja, hast Du in PiCtory dafür irgendwelche Änderungen gemacht oder wirklich nur das neue Paket installiert?
Und zu den digitalen Eingängen: Kannst Du jetzt bit 9 lesen, aber 10 nicht? Oder geht das lesen bei beiden noch nicht?
Unser RevPi Motto: Don't just claim it - make it!
Samuel
Posts: 8
Joined: 21 Aug 2017, 20:33

Re: Konfiguration Modbus TCP Master

Post by Samuel »

Hallo Volker

Ja, die analogen Ausgänge können jetzt auch angesteuert werden. Ich habe die ganze Konfiguration in PiCtory nach dem Update nochmals vorgenommen, nun verwende ich einen Master Adapter für die DIOs und einen für die AIOs sonst ist diese aber identisch. Lieg wohl daran, dass ein Master Adapter maximal 32 Tasks übernehmen kann oder?
Bit 9 kann ich nun lesen einfach Bit 10 bis jetzt noch nicht.

Gruss, Samuel
User avatar
volker
Posts: 1046
Joined: 09 Nov 2016, 15:41

Re: Konfiguration Modbus TCP Master

Post by volker »

Okay, das hört sich gut an und ich denke mal dass die Sache mit den Analogausgängen vielleicht doch an der Konfiguration lag (andere IP???).
Pro Master kannst Du in der Tat nur 32 Tasks und 1 IP / Port. Wenn Du mehr benötigst hast Du es genau richtig gemacht, dann bitte einfach mehrere virtuelle Module in die Konfig ziehen.
Wegen Input 10 solltest Du mal die HW prüfen und mit ModPoll oder QMod etc. schauen ob die Klemme überhaupt tut...
Übrigens zu der Adressierung:
Ob Du mit %QW1.176.8 oder mit %QW1.177.0 adressierst, ist ST ziemlich egal. Der Zugriff erfolgt im PA auf das selbe Bit.
Unser RevPi Motto: Don't just claim it - make it!
Samuel
Posts: 8
Joined: 21 Aug 2017, 20:33

Re: Konfiguration Modbus TCP Master

Post by Samuel »

Meine Konfiguration in LC3 sieht nun so aus:
IO_config2.0.png
IO_config2.0.png (141.89 KiB) Viewed 9037 times
Den Eingang %IX1.75.9 kann ich auch mit der neuen Konfiguration nicht lesen, an was könnte dies noch liegen?

Zudem habe ich noch eine Frage zu den analogen Eingängen. Ich erhalte dort Werte von ca. 45000 bis 65000 dec.
Wenn sich nun z.B. der Eingang %IW1.203 (Potentiometer) dem oberen Wert nähert, fällt dieser kurz vor dem rechten Anschlag des Potentiometers wieder
auf den unteren Wert. Am Potentiometer liegt es nicht und in Modbus Poll passiert dieser plötzliche Sprung auch nicht.
Habt ihr schon mal etwas ähnliches feststellen können?

Gruss, Samuel
User avatar
volker
Posts: 1046
Joined: 09 Nov 2016, 15:41

Re: Konfiguration Modbus TCP Master

Post by volker »

Hallo Samuel,
da ich grade auf einer Konferenz bin, dauert es mit den Antworten ein wenig länger. Kannst Du uns bitte mal genau beschreiben, wie Du das Poti angeschlossen hast und welche Konfigurationseinstellung Du für diesen Analogeingnag vorgenommen hast (PiCtory)? Und hats Du direkt parallel zum AIO Analogeingang mal ein gutes Multimeter angeschlossen, um die jeweiligen Spannungswerte am Eingang zu messen?
Unser RevPi Motto: Don't just claim it - make it!
Samuel
Posts: 8
Joined: 21 Aug 2017, 20:33

Re: Konfiguration Modbus TCP Master

Post by Samuel »

Hallo Volker

In PiCtory sieht die Konfiguration der analogen Ein-und Aussgänge so aus:
PiCtory_Modbus.png
PiCtory_Modbus.png (67.07 KiB) Viewed 9016 times
Die Potentiometer sind an zwei 8-Kanal-Eingangsklemmen (KL3208) von Beckhoff angeschlossen. Es kann natürlich auch sein,
dass etwas an der Konfiguration der Klemmen nicht stimmt. Die Spannungswerte habe ich bis jetzt noch nicht überprüft.
Post Reply