Dokumentation MODBUS - DDE - Treiber 6 Slaves (je 2*32 Worte & 2*32 Bits) Version 1.00
1 Inhaltsverzeichnis 1 Inhaltsverzeichnis 2 2 Allgemeines zum MODBUS - DDE - Treiber 3 3 Projektverwaltung 4 4 Einstellung des Treibers 5 4.1 Update - Einstellung 5 4.2 Schnittstelleneinstellung 5 4.3 Slaveeinstellung 6 4.4 Timeout - Einstellung 7 5 Ausführen 7 5.1 Start und Stop 7 6 Ansicht 8 6.1 Statusanzeige 8 6.2 Anzeigen von Slave_A bis Slave_E 9 7 DDE Zugriff 10 7.1 Zugriff mit Microsoft Excel (Beispiel) 11 7.2 Zugriff mit InTouch (Beispiel) 11 8 Deinstallation 12 MODBUS - DDE - Treiber Dokumentation Version: ß Release / April 96 Seite 2
2 Allgemeines zum MODBUS - DDE - Treiber Besonders für Leit- und Visualisierungsaufgaben wird oft unter Windows 95 bzw. Windows NT eine Verbindung zum Prozeß benötigt. In einem solchen Fall, stellt der MODBUS eine preiswerte Alternative zu Bussystemen, welche eine eigene Hardware benötigen, dar. Mit Hilfe des vorliegenden Treibers werden bis zu sechs verschiedene Slaves, mit je 2*32 Worten und 2*32 Bits, angesprochen. Der Treiber arbeitet mit dem MODBUS - RTU - Protokoll. Er wurde mit Systemen der Firma PEP Modular Computers getestet, arbeitet aber grundsätzlich mit allen MODBUS-RTU-Systemen, welche keinen zwingenden nutzbaren Speicherbereich jenseits der Adresse 32 besitzen, zusammen. Außerdem eignet sich der Treiber durch frei einstellbare Timeout-Zeiten und Hardwarehandshake zur Kommunikation über Modem. MODBUS - DDE - Treiber Dokumentation Version: ß Release / April 96 Seite 3
3 Projektverwaltung Projektauswahl Jede Treibereinstellung wird als eigenständiges Projekt behandelt. Das Anlegen eines neuen Projektes erfolgt über den Menüpunkt Neu. Dabei kann jedem Projekt ein Paßwort zugeordnet werden um es vor unberechtigten Änderungen zu schützen. Wird das Paßwortfeld freigelassen, so wird zukünftig die Paßwortabfrage übergangen. Weiterhin kann in der Projektauswahl ein Projekt festgelegt werden, welches zukünftig beim Windowsstart automatisch in seiner Laufzeitversion gestartet wird. MODBUS - DDE - Treiber Dokumentation Version: ß Release / April 96 Seite 4
4 Einstellung des Treibers 4.1 Update - Einstellung Es gibt grundsätzlich zwei verschiedene Arten um ein Update zu erstellen. Zum einen kann der gesamte Speicherbereich neu gelesen und geschrieben werden. Diese Einstellung wird empfohlen, wenn die meisten Variablen genutzt werden. Zum anderen kann genau eingestellt werden welche Worte bzw. Bits ständig gelesen werden sollen. Das Schreiben erfolgt dann entsprechend einer Änderung. Besonders in dem Fall, daß die Änderung im Master (Windows ) selten ist, wird diese Einstellung empfohlen. Die Einstellung für die Art des Updates wird im Menü Einstellung unter dem Punkt Update vorgenommen, und kann auch während der Laufzeit geändert werden. 4.2 Schnittstelleneinstellung Im Menü Einstellung unter dem Punkt COM kann der Port ausgewählt, und die Schnittstelle parametriert werden (Abb. 1). Abbildung1: COM-Einstellung MODBUS - DDE - Treiber Dokumentation Version: ß Release / April 96 Seite 5
Zuerst muß der Port angegeben werden über welchen die MODBUS - Verbindung betrieben werden soll. Anschließend müssen Stopbit, Protokoll, Baudrate, Datenbits und Parität entsprechend der anzusprechenden Steuerungen eingestellt werden. Mit bestätigen durch OK wird die neue Einstellung übernommen. Sie wird jedoch erst beim nächsten Betätigen von Start aktiv und nicht schon während der Laufzeit. Wird ein Modem oder zum Beispiel ein RS 485 - Umsetzer über diese Schnittstelle betrieben, so ist darauf zu achten, daß Hardwarehandshake eingestellt ist. Dadurch wird das RTS-Signal zur Steuerung genutzt. 4.3 Slaveeinstellung Im Menü Einstellung werden unter dem Punkt Slave die einzelnen Slaves freigegeben und deren Slavenummer festgelegt. Dabei ist ein Slave, der sogenannte Haupt_Slave, immer aktiv. Abbildung 2: Slaveeinstellung Die Slavenummern sind entsprechend dem MODBUS - Standard (1 bis 255) einzutragen. Es ist grundsätzlich möglich, aber wenig sinnvoll, eine Slavenummer doppelt einzusetzen, da die Adressen nicht frei wählbar sind. Bei der Bestätigung mit OK wird die neue Einstellung übernommen und aktiv. MODBUS - DDE - Treiber Dokumentation Version: ß Release / April 96 Seite 6
5 Timeout - Einstellung Mit Hilfe der Timeout - Einstellung im Menü Einstellung, wird die Zeit eingestellt, welche auf eine Antwort vom Slave gewartet wird. Der Default - Wert für diese Zeit ist 700 ms. Dieser sollte aber unbedingt dem System angepaßt werden, da sonst durch große Wartezeiten die Updatezeit unnötig größer wird. Trotzdem darf die Timeoutzeit keinesfalls die Antwortzeit des langsamsten Slaves unterschreiten. 6 Ausführen 6.1 Start und Stop Wenn alle Einstellungen vorgenommen wurden, kann im Menü Ausführen durch betätigen von Start der MODBUS - DDE - Treiber gestartet werden. Anschließend kann der Treiber mit den nachfolgenden beschriebenen Methoden überwacht und bei Bedarf in den Hintergrund geschickt werden. Mit Stop, ebenfalls im Menü Einstellung, wird die Kommunikation anschließend wieder angehalten. MODBUS - DDE - Treiber Dokumentation Version: ß Release / April 96 Seite 7
7 Ansicht 7.1 Statusanzeige Nachdem der Treiber gestartet wurde, gibt es verschiedene Möglichkeiten der Visualisierung. Ein davon ist die Statusanzeige (Abb. 3). Abbildung 3: Statusanzeige Diese Anzeige signalisiert mit 3 grünen Ampeln die einwandfreie Kommunikation. Für den Fall, daß kurz auf gelb, oder nur sehr kurz auf rot geschaltet wird, ist ein einmaliger Kommunikationsfehler (CRC-, Protokollfehler oder Busstörung) aufgetreten. Wird mit gleichmäßiger Regelmäßigkeit in den Farben umgeschaltet, so antworten ein oder mehrere Slaves nicht oder nicht korrekt. Sollte die Ampel ständig auf rot stehen, so kann keine Kommunikation aufgebaut werden. In diesem Fall empfiehlt es sich die Einstellung zu überprüfen. MODBUS - DDE - Treiber Dokumentation Version: ß Release / April 96 Seite 8
7.2 Anzeigen von Slave_A bis Slave_E Eine weitere Art der Visualisierung ist die Anzeige eines gesamten Slavebereiches. Diese wird für den Hauptslave automatisch aufgerufen (Abb. 4). (Haupt_Slave) Abbildung 4: Slaveanzeige Mit Hilfe dieser Anzeige kann das gesamte Update eines einzelnen Slaves angezeigt werden, und es kann zu jedem anderen Slave (Slave_A bis Slave_E) umgeschaltet werden. Die einzelnen Bereiche sind entsprechend der MODBUS-Bereiche auf dem Bildschirm aufgeteilt. Vom PC aus sollte jeweils auf die beiden äußeren Bereiche (Bereich_0 und Bereich_4) geschrieben werden. Die inneren Bereiche (Bereich_1 und Bereich_3) werden bei Bedarf über den MODBUS eingelesen. MODBUS - DDE - Treiber Dokumentation Version: ß Release / April 96 Seite 9
8 DDE Zugriff Nachdem der Treiber gestartet wurde, kann über die DDE - Schnittstelle von Windows auf ihn zugegriffen werden. Der Treiber ist dabei immer die DDE-Quelle. Der DDE Application/Server Name des Treibers ist modbus und der DDE Topic Name ist entsprechend slave, slave_a, slave_b, slave_c, slave_d oder slave_e. Der entsprechende Item Name ist der folgenden Tabelle (Tab. 1) zu entnehmen. Bereich MODBUS Item Name Bit schreiben Bereich_0 mod1...mod32 Bit lesen Bereich_1 mod10001...mod10032 Word lesen Bereich_3 mod30001...mod30032 Word schreiben Bereich_4 mod40001...mod40032 Tabelle 1: Item Names In den folgenden zwei Abschnitten wird noch einmal am Beispiel gezeigt, wie die einzelnen Namen eingesetzt werden. Für die Beispiele wird Excel, eine Standardanwendung unter Windows, und InTouch, eines der führenden Visualisierungssysteme der Automatisierungstechnik, benutzt. Der Zugriff kann aber genauso gut von jedem beliebigen DDE Ziel aus vorgenommen werden (z.b. Visual C++ oder Visual Basic). MODBUS - DDE - Treiber Dokumentation Version: ß Release / April 96 Seite 10
8.1 Zugriff mit Microsoft Excel (Beispiel) Das folgende Beispiel zeigt wie von Excel das erste Bit in eine Zelle eingelesen wird. =modbus slave!mod10001 Um das erste Wort in eine Tabelle zu schreiben muß nach folgenden Prinzip ein Makro erstellt werden. Sub dde_1() ID_Nr = DDEInitiate("modbus", "slave") Set BereichSenden = Worksheets("Tabelle1").Range("D1") Application.DDEPoke ID_Nr, "mod40001", BereichSenden End Sub 8.2 Zugriff mit InTouch (Beispiel) Um von InTouch aus auf den DDE - Treiber zugreifen zu können, muß zuerst ein DDE-Server angelegt werden (Abb. 5). Dabei ist es auch möglich mit verschiedenen DDE Access Namen auf einen Topic Name zuzugreifen. Abbildung 5: Anlegen eines DDE-Servers MODBUS - DDE - Treiber Dokumentation Version: ß Release / April 96 Seite 11
Jetzt kann InTouch mit dem entsprechenden Item Name auf die DDE-Quelle modbus zugreifen (Abb. 6). Für den Fall, daß mehrere Slaves genutzt werden darf der Item Name nicht als Tag Name verwendet werden, da die Item Namen für jeden Slave die gleichen sind. Abbildung 6: InTouch Tagname-Einstellung 9 Deinstallation Um den MODBUS - DDE - Treiber unter Windows 95 bzw. Windows NT zu entfernen, muß lediglich in der Systemsteuerung unter Softwareeinstellung das Programm modbus angeklickt werden, und anschließend Entfernen bestätigt werden. Ein Deinstallationsprogramm ist nicht nötig, da in der Systemeinstellung von diesem Programm nichts geändert wird. MODBUS - DDE - Treiber Dokumentation Version: ß Release / April 96 Seite 12