Hallo Leute, ich brauche eure Hilfe. Ich möchte ein Prüfgerät entwickeln. Dieses soll bestehen aus: 1. PC mit LabView oder C# Programm und a)Messkarte für Digital I/Os b)Messkarte für Analoge IN und OUT c)Wandler von Seriell auf RS485 (hier sitzt der 485 Master) 2. einem 19" Rack, in den viele Einschubkarten reinpassen, alle hinten verbunden über einen RS485 Bus (z.B. so: http://www.wiki.elektronik-projekt.de/_media/mikrocontroller/2wirers485bus.gif) Die Karten können folgende Messungen am Prüfling durchführen: a) Spannung b) Widerstand c) ... (Jede Karte hat ihre eigenen Aufgaben) Auf jeder dieser Karte sitzt also ein uC(PIC oder Atmel) und einem Wandler auf RS485. Der PC (oder besser gesagt, das Programm auf dem PC) soll das ganze koordinieren. Was ich kann: LabView oder C# Programm schreiben Was ich brauche: Ein Protokoll, damit die einzelnen Karten sich untereinander verständigen können. Welches Protokoll würdet ihr empfehlen? Es müsste ja ein serielles Protokoll sein, bestehend aus MSG_ID | SenderAddr | ReceiverAddr | DataLen | Data .. Data | CRC (XOR oder 16) Kennt jemand eine Implementierung von solch einem Protokoll in C? Wie würdet ihr das ganze angehen? Danke
Moin such mal nach "Modbus". Das Protokoll läuft auch über RS485. (http://de.wikipedia.org/wiki/Modbus) mfg
Wenn es so passt mach es doch so wie du es beschrieben hast. Das wäre mit Abstand am einfachsten.
Kennt jemand eine gute und zuverlässige C-Implementierung von Modbus (umschaltbar zwischen ASCII/RTU/TCP) für Slaves, die auf uC laufen sollen. Hier hab ich eine gefunden, aber ob die passt und stabil läuft? http://www.google.de/codesearch#U9-i5aKJQvM/trunk/components/net/freemodbus/modbus/rtu/mbrtu.c&type=cs D.H. Auf dem PC lasse ich Modbus dann über LabView laufen (es gibt unter http://sine.ni.com/nips/cds/view/p/lang/de/nid/201711 eine frei downloadbare Bibliothek für LabView) Jetzt brauche ich noch die Implementierung auf uC, aber es muss 1. zuverlässig sein 2. frei für kommerzielle Zwecke (oder gewisse geringe Lizenzkosten) 3. als source code vorliegen 4. in einem einfachen 8bit uC (Vorzugsweise PIC oder ATMEL, evtl STM8) verwendet werden können (es soll ja nur einfache Modbus-Befehle auswerten können: z.B. "Karte 17, Schalte die Frequenzmessung an..." oder "AN ALLE, Sofort alle Mess-Aktivitäten abbrechen" ...) Danke.
ich selbst hab schon mit Modbus gearbeitet, musst aber nur den Master auf 8bit-cpu implementieren. War eigentlich nicht weiter tragisch. Das Protokoll is wirklich leicht aufgebaut. Aber schau mal auf diese Seite da gibts sogar Implementierungen für AVR: http://www.freemodbus.org/ mfg
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.