Die evaluierungs Version des Modbus Treibers habe ich mir zum Testen organisiert (30-Tage Testversion gibts zum Downloaden).
Das Auslesen der Werte ging ohne große Probleme und nach wenigen Minuten!
Allerdings den Zählerwert dann wieder auf 0 setzen war eine etwas härtere Nuß…
Nach eine Funktion in der Art „resetCounter“ oder „resetRegisters“ habe ich vergeblich gesucht bzw. mit allem was irgendwie in der Art vielversprechend geklungen hat, hat es halt nicht funktoniert.
Nach langem Suchen und Probieren habe ich mit der Funktion „writeCoil“ das Passende gefunden! Allerdings hatte ich erst Erfolg nachdem ich per Zufall mit verschiedenen Funktionen die Register bzw. Coils von 1 bis 100 mit dem Wert 1 versorgt und anschließend quergecheckt habe ob denn die Werte auch auf 0 stehen.
Bei der Funktion „writeCoil“ hatte ich dann Erfolg und anschließend ging es daran heraus zu finden welche Nummer denn die passende ist.
Langer Rede kurzer Sinn die Zuordnung ist wie folgt:
DI-0 == 34
DI-1 == 38
DI-2 == 42
DI-3 == 46
DI-4 == 50
DI-5 == 54
Der Funktionsaufruf lautete dann wie folgt:
mbusProtocol.writeCoil(1, 34, 1);
Und schon wird DI-0 auf 0 gesetzt.
Wer sich jetzt fragt wozu das Ganze? -> Maschinen-/Betriebsdatenerfassung!
Das ADAM-6051 Modul bekommt an den 6 Anschlüssen von verschiedenen Sensoren die an der Maschine befestigt sind entsprechende Signale und zählt einfach mit. Die Register DI-6 bis DI-11 arbeiten nicht als Counter sonder als Frequenz Anzeige – liefern also die Stk/Sekunde.
Ein Steuerrechner liest diese Werte permanent vom ADAM’s Modul aus und schreibt sie in eine lokale MySQL Datenbank. Am Steuerrechner kann via Webinterface ein Auftrag an-/abgemeldet und der aktuelle Auftragsstand abgelesen werden.
Sobald ein Auftrag beendet wird, wird dieser dann an unseren Datenbank Server übertragen. Dadurch kann die ganze Erfassung auch unabhängig vom restlichen Netzwerk laufen. Lediglich die Auftragsdetails werden dann nicht oder nur unvollständig angezeigt – aber die braucht man in dem Fall nicht zwingend zum Produzieren.
Zusätzlich werden dann noch Störungen automatisch erkannt und protokolliert, die Rüstzeiten erfaßt und entsprechend die jeweilige Ursache mit protokolliert. Und noch ein paar Kleinigkeiten, aber Details dazu die würden den Rahmen hier wirklich sprengen 🙂
Das Foto zeigt übrigens meine Teststellung – herzlichen Dank noch einmal an unsere Betriebselektriker, funktioniert perfekt das Ding!!!
Man macht es nicht jeden Tag, darum schadet es nicht sich's kurz zu notieren... Hier…
Meine Suche bei Google hatte mal wieder keinen vernünftigen Treffer gelandet, das Problem - ich…
Ich muss mal eben etwas Druck ablassen, ein Kunde von mir setzt einen Drucker von…
Wer beim Server bestellen vergessen hat die erweiterte IRMC Lizenz zu ordern, der steht vor…
Ich nutze seit langer Zeit ein System für meine Backups welches in der Nacht von…
Es scheint wohl eine noch nicht so häufig genutzte Kombination zu sein - Apache Guacamole…