Digitale I/O mit C-Programm über Modbus auslesen
-
Hallo,
ich bin leider relativ wenig erfahren was die Programmierung angeht. Ich habe ein ADAM-6050 Modul mit einer Ethernet-Schnittstelle und digitalen Ein- und Ausgängen. Das Modul ist per Ethernet an einen Linux-PC angeschlossen. Mit einem C-Programm habe ich eine Socketverbindung (Client) programmiert, der das Modul auslesen soll. Starte ich den Client (Port 502) so bekomme ich keine Antwort und das Programm wartet und wartet (keine Fehlermeldung). Verbinde ich den Client aber mir einem selbst geschriebenen Server (Windows Python) so funktioniert die Kommunikation.
Also reagiert der ADAM-6050 nicht auf die Anfrage. Laut Support wird MODBUS benutzt, aber ich weiß nicht wie ich das unter C einbinden muss. Habe dazu auch schon etliche Seiten im Netz durchforstet, aber nichts brauchbares gefunden.
Kann mir jemand ein Beispiel geben, wie Modbus in C funktioniert? Die Befehle zum auslesen werden als ASCII übertragen z. B. $016(cr)Bitte um Hilfe, weiß nicht mehr weiter
Danke
-
Hallo,
natürlich funktioniert das nicht, wenn Modbus verwendet wird. Modbus ist ein höheres Protokoll, das unter anderem auf TCP aufbaut(gibt auch Modbus für serielle Verbindungen wie RS485).
Informationen zum Protokoll selbst findest du hier: http://www.modbus.org/ (gibt übrigends auch google aus...).
Ein open source Implementation des Modbus-Protokolls gibts auch. Schau mal unter: http://freemodbus.berlios.de/ (dort gibt es Ports für diverse µC und auch Linux, wenn auch nur die serielle Version). Hier wirst du Anregungen finden für die Implementierung des Modbus TCP-Protokolls unter Linux (für Windows gibts ja nen entsprechenden Port... sollte also möglich sein zu portieren). Macht aber trotzdem nicht unerheblich Arbeit. Einfacher sind kommerzielle Produkte. Da kenne ich mich aber nicht aus.
Dann mal viel Spaß.Gruß
Gustav
-
HI;
ich werde demnächst mit dem gleichen Gerät arbeiten. aber ich bin dabei das Handbuch jetzt zu lesen, leider verstehe ich nicht alles weil meine Englischkenntnisse nicht so toll sind. haben sie irgendwelche dokummentationen über das gerät auf deutsch, wenn ja, kannst du mir das schicken unter: alnourx@yahoo.de
Welche versuche hast du mit dem Gerät gemacht??
ich bin für jede hilfe dankbar