Hallo allerseits,
ich erstelle gerade eine Prozess-Visualisierung für unsere Anlagen. Ich muss zwei Steuerungen einbinden (über CANbus/CANopen), die
Anbindung an die eigentliche Visualisierung (WinXP-Rechner) erfolgt
über einen OPC-Server, den ich auch entwickelt habe.
Nun haben wir aber beschlossen, dass der CANbus zur Visualisierung
eine Zwischenlösung ist. Wenn wir die genug getestet haben (und nach
einem HW-Neudesign) werden wir auf Ethernet umsteigen (wir habe
immerhin ca. 1000 Variablen).
Ich möchte mich nun vorab schon informieren wie denn eine solche Lösung allgemein aussieht.
Ich gehe mal davon aus, dass Ethernet in der Praxis immer TCP/IP heisst, ist das richtig? Sonst wüsste ich nämlich nicht, wie ich Ethernet 'nackt' auf unter WinXP ansprechen sollte. Und UDP kommt m.E. für diesen Fall nicht in Frage.
Mit TCP/IP-Programmierung unter Windows (MFC, .NET) kenne ich mich schon etwas aus. Allerdings weiss ich nicht so recht, was 'über' TCP/ IP so üblich ist. Ich möchte halt möglichst schon was nutzen, statt dass wir uns selbst ein Protokoll überlegen. (Ich kenne das nur von einem Sensor-Projekt, und da waren es halt String-Befehle).
Im Google fielen mir 2 Begriffe auf: Modbus/TCP und Industrial Ethernet. Mit beiden kann ich im Moment noch nicht viel anfangen, Modbus kenne ich nicht.
Ich weiß allerdings auch nicht, ob es sich lohnt, den CANopen-Stack auf dieses Protokoll zu portieren. CANopen ist auf die kleine Byte- Zahl pro Frame beim CAN von 8 Bytes zugeschnitten. Bei TCP/IP sollten es ja schon 1024 und mehr sein. D.h. ich müsste vermutlich das gesamte CANopen-Objektverzeichnis anpassen, da jetzt die Objekte deutlich länger sein können.
Natürlich wäre es auch schön, wenn wir einen OPC-Server 'von der Stange' nehmen könnten.
Vielleicht hat der eine oder andere von euch ja ein paar wertvolle Erfahrungen auf diesem Gebiet.
Ach ja: Ich will eigentlich *nicht* von Siemens-Only-Gedöhns abhängig werden.
Wie sieht es mit der 'Sicherheit' bei der Ethernet-Lösung aus? (Die CAN-Lösung ist passwortgeschützt)
Ein Kollege meinte, dass wir ein File-System implementieren sollten und dann die Nachrichten wie bei Linux mit FTP rüberschaufeln. Das scheint mir aber nicht notwendig, und es verlangsamt sicher wieder alles (vom Verschleiß zu schweigen). Wobei Echtzeit nicht unbedingt erforderlich ist.
Viele Grüße
Johannes
ich erstelle gerade eine Prozess-Visualisierung für unsere Anlagen. Ich muss zwei Steuerungen einbinden (über CANbus/CANopen), die
Ich möchte mich nun vorab schon informieren wie denn eine solche Lösung allgemein aussieht.
Ich gehe mal davon aus, dass Ethernet in der Praxis immer TCP/IP heisst, ist das richtig? Sonst wüsste ich nämlich nicht, wie ich Ethernet 'nackt' auf unter WinXP ansprechen sollte. Und UDP kommt m.E. für diesen Fall nicht in Frage.
Mit TCP/IP-Programmierung unter Windows (MFC, .NET) kenne ich mich schon etwas aus. Allerdings weiss ich nicht so recht, was 'über' TCP/ IP so üblich ist. Ich möchte halt möglichst schon was nutzen, statt dass wir uns selbst ein Protokoll überlegen. (Ich kenne das nur von einem Sensor-Projekt, und da waren es halt String-Befehle).
Im Google fielen mir 2 Begriffe auf: Modbus/TCP und Industrial Ethernet. Mit beiden kann ich im Moment noch nicht viel anfangen, Modbus kenne ich nicht.
Ich weiß allerdings auch nicht, ob es sich lohnt, den CANopen-Stack auf dieses Protokoll zu portieren. CANopen ist auf die kleine Byte- Zahl pro Frame beim CAN von 8 Bytes zugeschnitten. Bei TCP/IP sollten es ja schon 1024 und mehr sein. D.h. ich müsste vermutlich das gesamte CANopen-Objektverzeichnis anpassen, da jetzt die Objekte deutlich länger sein können.
Natürlich wäre es auch schön, wenn wir einen OPC-Server 'von der Stange' nehmen könnten.
Vielleicht hat der eine oder andere von euch ja ein paar wertvolle Erfahrungen auf diesem Gebiet.
Ach ja: Ich will eigentlich *nicht* von Siemens-Only-Gedöhns abhängig werden.
Wie sieht es mit der 'Sicherheit' bei der Ethernet-Lösung aus? (Die CAN-Lösung ist passwortgeschützt)
Ein Kollege meinte, dass wir ein File-System implementieren sollten und dann die Nachrichten wie bei Linux mit FTP rüberschaufeln. Das scheint mir aber nicht notwendig, und es verlangsamt sicher wieder alles (vom Verschleiß zu schweigen). Wobei Echtzeit nicht unbedingt erforderlich ist.
Viele Grüße
Johannes