Kommunikation Siemens S7-200 mit JAVA

Zuviel Werbung?
-> Hier kostenlos registrieren
Hallo
alles was jetzt kommt gilt nur wenn das 'Gateway' sagt: Hole Daten aus der CPU - oder 'Schreibe Daten in die CPU'. Die CPU ist da reiner 'Server' - kann folglich nicht von sich aus tätig werden !!! (so ist das eigentlich auch gedacht ...)

Unter dem Gateway verstehst Du den Rechner, auf dem in diesem Fall mein Java-Programm mit dem Libnodave läuft??

Ja genau - (bei mir eben der ARM HutschienenPC). Auf dem 'Ding' (PC) braucht nichts weiter als eine Art 'Cron-Job' ( ... jetzt sollen Daten in die CPU geschrieben werden) zu laufen sowie da irgendwie 'angebunden dann libnodave.
Ich mache das im einfachsten Fall so:
Der cron startet ein PHP-Script welches die gesuchten Daten in eine xyz.txt -Datei zwischenspeichert. Wenn das 'fertig' ist startet der cron libnodave, welches sich die Daten mit einer einfachen Erweiterung am Anfang (Datei öffnen und in Array lesen) dann 'holt' und an die CPU an gewünschte Adresse sendet.
Etwas 'professioneller' ist es, das in einen 'Prozess' zu verpacken (in Linux wäre das IPC oder Pipes, FiFos etc.) - nur vom Prinzip her dasselbe.
That's all.
Wenn die 'Frequenz' zu übertragender Daten gering ist funktioniert das im Prinzip vollständig mit dem testISO.c (bei CP243) - das ist dann nichts anderes wie im Prinzip ein CGI. (Starten - machen - beenden).
Bei höherer Frequenz ( also wenns mehr als ca.1 Telegramm/Verbindungen pro Sekunde wären) funktioniert das nicht mehr - weil der Verbindungsaufbau einige Zeit nutzlos verbraucht und sich das dann irgendwann selber überholt. Günstigenfalls liegen zwischen zwei Verbindungen dann aber garantiert immer einige Sekunden -
Deswegen wäre der erste Schritt mit dem testISO.c (testISO.exe) eine Verbindung zum CP243-1 /CPU aufzubauen. Also nur die benötigten Dateien aus der libno erstmal zum Laufen zu bekommen. In den Ordnern befindet sich zudem ein Ordner 'simplified' (ich glaube bei Java). Dort ist eine vereinfachte Version die bei mir immer auf Knopfdruck startete. Da ich bei meinen PC's immer (noch) von Windows nach Linux umbauen muss kann ichs jetzt nicht genau nachgucken - aber ich meine da war auch was in Windows/ Java (???)
Da müsstest du mal genau schreiben welches Betriebssystem der Datenbank PC hat/hätte und welche Kompiler du hättest um die Änderungen da einzukompilieren.
(ich habe das nur in Linux C' und versuchsweise mal in Visual C6 durchlaufen lassen - bei Visual C wars aber auch nicht immer erfolgreich, bei Linux flutscht das genial !)
gruss
tobias
(p.s.: wenn, kann ich erst morgen gegen eher spät-nachmittag mehr dazu sagen da erstmal unterwegs)
 
es gibt tatsächlich erste Erfolge dank DELTALOGIC!

Deltalogic ist für mich in Zukunft allererste Wahl!

Sehr freundliche, wirklich kompetente und äusserst geduldige Leute dort.
 
Zurück
Oben