Deditec RO-INTERFACE-SER Hardware-Description [de]

RO-INTERFACE-SER
Hardware-Beschreibung
2010
September
INDEX
1. Einleitung 5
1.1. Vorwort 5
1.2. Kundenzufriedenheit 5
1.3. Kundenresonanz 5
2. Hardware Beschreibung 7
2.1. Übersichtsbild 7
2.2. Technische Daten 8
2.3. Wählen der Schnittstellenvariante RS-232 oder RS-485 9
2.4. Steckverbinder auf dem Modul 11
2.4.1. Spannungsversorgung
2.4.2. RS-232/RS-485 Interface
2.4.2.1. RS-232 Pinbelegung
2.4.2.2. RS-485 Pinbelegung
12 12
2.5. Kontroll LED’s 13
2.5.1. Definition der LEDs
3. Konfiguration des Moduls 15
3.1. DIP- Schalter 15
3.2. Der Vorzugsmodus 16
3.3. Echo aktivieren 17
3.4. Einstellen der Baudrate 17
3.5. Einstellen der Moduladresse (nur bei RS-485) 18
4. Software 20
4.1. Benutzung unserer Produkte 20
4.1.1. Ansteuerung über grafische Anwendungen
20
Index | 2Seite
INDEX
4.1.2. Ansteuerung über unsere DELIB Treiberbibliothek
4.1.3. Ansteuerung auf Protokollebene
4.1.4. Ansteuerung über mitgelieferte Testprogramme
20 20
21
4.2. DELIB Treiberbibliothek 22
4.2.1. Übersicht
4.2.2. Unterstützte Betriebssysteme
4.2.3. Unterstützte Programmiersprachen
4.2.4. Installation DELIB-Treiberbibliothek
4.2.5. DELIB Configuration Utility
22
24 24
25
27
4.3. Testprogramme 28
4.3.1. Digital Input-Output Demo
4.3.2. Analog Input-Output Demo
4.3.3. Stepper Demo
28 29 30
5. Anhang 32
5.1. Revisionen 32
5.2. Urheberrechte und Marken 33
Index | 3Seite
Einleitung
I
Einleitung | Seite 4
1. Einleitung
1.1. Vorwort
Wir beglückwünschen Sie zum Kauf eines hochwertigen DEDITEC Produktes!
Unsere Produkte werden von unseren Ingenieuren nach den heutigen geforderten Qualitätsanforderungen entwickelt. Wir achten bereits bei der Entwicklung auf flexible Erweiterbarkeit und lange Verfügbarkeit.
Wir entwickeln modular!
Durch eine modulare Entwicklung verkürzt sich bei uns die Entwicklungszeit und - was natürlich dem Kunden zu Gute kommt - ein fairer Preis!
Wir sorgen für eine lange Lieferverfügbarkeit!
Sollten verwendete Halbleiter nicht mehr verfügbar sein, so können wir schneller reagieren. Bei uns müssen meistens nur Module redesigned werden und nicht das gesamte Produkt. Dies erhöht die Lieferverfügbarkeit.
1.2. Kundenzufriedenheit
Ein zufriedener Kunde steht bei uns an erster Stelle! Sollte mal etwas nicht zu Ihrer Zufriedenheit sein, wenden Sie sich einfach per
Telefon oder mail an uns. Wir kümmern uns darum!
1.3. Kundenresonanz
Die besten Produkte wachsen mit unseren Kunden. Für Anregungen oder Vorschläge sind wir jederzeit dankbar.
Einleitung | Seite 5
Hardware Beschreibung
II
Hardware Beschreibung |Seite 6
2. Hardware Beschreibung
2.1. Übersichtsbild
Die Abbildung zeigt das Steuermodul mit RS-232/RS-485 Interface (links) in Kombination mit einem Ein- /Ausgabemodul (rechts).
Die Abbildung zeigt das Steuermodul mit RS-232/RS-485 Interface (links) in Kombination mit einem I/O-Modul des flexiblen Steckverbindersystems (rechts).
Hardware Beschreibung |Seite 7
2.2. Technische Daten
Single Spannungsversorgung +7V..+24V DC 7 Kontroll LED‘s RS-232/RS-485 Schnittstelle Über DIP Schalter einfach konfigurierbar Galvanische Trennung über Optokoppler Anschluss über 9 pol. D-SUB Stecker Timeout Funktion: Die Timeout Funktion bietet die Möglichkeit, die Ausgänge
z.B. aus Sicherheitsgründen abzuschalten. Komfortables Steckverbindersystem mit Auswerfmechanik In 16 facher Abstufung erweiterbar Kann problemlos mit anderen Modulen der RO Serie kombiniert werden
Hardware Beschreibung |Seite 8
2.3. Wählen der Schnittstellenvariante RS-232 oder RS-485
Bei Auslieferung befindet sich das Schnittstellenmodul standardmäßig im RS­232 Modus. Nachfolgend wird beschrieben wie man das Modul sehr einfach auf RS-485 Betrieb umstellen kann.
Hinweis! Vor Öffnen des Gerätes bitte folgendes beachten:
Netzstecker ziehen! Elektronische Bauteile nicht berühren, da diese durch elektrostatische
Entladung zerstört werden können! Vor dem Arbeiten ggf. geerdete Gehäuse oder Heizkörper berühren. Ein Seitenelement des Moduls entfernen, dazu die drei Kreuzschrauben an der
Seite lösen Leiterplatte samt Frontplatte seitlich aus dem Gehäuse herausziehen Frontplatte abheben
Hardware Beschreibung |Seite 9
Links neben dem Seriellen Interface (D-SUB Stecker) befindet sich eine 10pol.
Stiftleiste
Schnittstelle
Jumper setzen
RS-232
Pin1 & Pin3
Pin2 & Pin4
RS-485
Abschlusswiderstand
Pin3 & Pin5
Pin4 & Pin6
Pin7 & Pin8
Pin9 & Pin10
Stiftleiste mit den dazugehörigen Jumpern. In der nachfolgenden Tabelle wird gezeigt, welche Jumper gesteckt werden müssen.
Der Einbau erfolgt anschließend in umgekehrter Reihenfolge.
Hardware Beschreibung |Seite 10
2.4. Steckverbinder auf dem Modul
2.4.1. Spannungsversorgung
Der Eingangsspannungsbereich kann zwischen +7V und +24V DC gewählt werden. Der Anschluss kann über ein handelsübliches Steckernetzteil mit 1A Stromausgang erfolgen. Ein passender Steckverbinder liegt jedem Modul bei.
2.4.2. RS-232/RS-485 Interface
Der Anschluss an den seriellen Bus erfolgt über eine 9poligen D-SUB Stecker und wird mittels Optokoppler galvanisch vom Modul getrennt.
Hardware Beschreibung |Seite 11
2.4.2.1. RS-232 Pinbelegung
Pin2TX3RX5GND
Pin2RS-485 B
7
RS-485 A
5
GND
2.4.2.2. RS-485 Pinbelegung
Hardware Beschreibung |Seite 12
2.5. Kontroll LED’s
Bezeichnung
Erklärung
3,3V
Interne 3,3V Versorgungsspannung vorhanden.
5V
Interne 5V Versorgungsspannung vorhanden.
RS-232/RS-485 Activity
Kommunikation über den seriellen Bus aktiv.
ERROR
Fehler bei der seriellen Übertragung (näheres siehe Dokument “Serielles Protokoll”).
Inputs: Change
Zustandswechsel zwischen 2 Auslesetakten wurde erfasst.
Outputs: Auto-Off
Sämtliche Ausgänge wurden auf Grund des Timeout sicherheitshalber abgeschaltet.
I/O Access
Zugriff der CPU auf Ein- und Ausgänge der angeschlossenen Module.
Auf dem RS-232/RS-485 Modul befinden sich eine Reihe von Kontroll LED’s. Sie dienen zur einfach optischen Zustandsanzeige von diversen Funktionen.
Im Normalbetrieb sollte nach dem Einschalten des Moduls folgende Blinksequenz auftreten:
alle fünf LEDs blinken kurz auf rechte LED (I/O Access) blinkt kurz auf
Im ”Vorzugsmodus” sollte nach dem Einschalten des Moduls folgende Blinksequenz auftreten:
alle fünf LEDs blinken kurz auf rechte LED (I/O Access) blinkt kurz auf alle fünf LEDs blinken kurz auf
2.5.1. Definition der LEDs
Hardware Beschreibung |Seite 13
Konfiguration des Moduls
III
Konfiguration des Moduls |Seite 14
3. Konfiguration des Moduls
DIP Schalter A8
DIP Schalter A7
Erklärung
ONONVorzugsmodus (115K Baudrate, Modul-Adresse = 0, Echo = OFF)
ON
OFF
Nur für SERVICE-Zwecke: Applikation wird nicht gestartet. Zwangsweise im Bootloader bleiben
OFF
ON
Einstellung von DIP A4..A1und B8..B1 benutzen
OFF
OFF
Einstellung von DIP A4..A1und B8..B1 benutzen
DIP Schalter A6
Erklärung
ON
Echo = ON, serielle empfangene Zeichen werden zurückgegeben (Echo = OFF, wenn DIP A8 und A7 = ON)
OFF
Echo = OFF
DIP Schalter
Erklärung
A5
Reserviert
A4 bis A1
Einstellen der Baudrate
B8 bis B1
Einstellen der seriellen Modulnummer
3.1. DIP- Schalter
Einige Einstellungen lassen sich einfach mit Hilfe von DIP Schaltern konfigurieren. Es lassen sich die Moduladresse, die Baudrate, der ”Vorzugsmodus” oder schnittstellenspezifische Einstellungen vornehmen.
Konfiguration des Moduls |Seite 15
3.2. Der Vorzugsmodus
Der Vorzugsmodus dient dazu, das Gerät schnell und einfach auf festgelegte Standardwerte zu setzen. Dies ist hilfreich bei einer schnellen und einfachen Inbetriebnahme des Moduls. Eine Fehleranalyse oder erste Inbetriebnahme wird somit erleichtert.
Werden der Schalter DIP A8 und A7 auf ”on” gesetzt, gelangt man in diesen Vorzugsmodus. Alle anderen DIP-Schalter sind nun deaktiviert.
Das Modul kommuniziert jetzt mit einer Baudrate von 115Kbauds, die Moduladresse und “Echo” sind deaktiviert.
Konfiguration des Moduls |Seite 16
3.3. Echo aktivieren
Baudrate
DIP A4
DIP A3
DIP A2
DIP A1
1,25 Mbit
OnOnOnOn625 Kbit
OnOnOn
Off
250 Kbit
OnOnOffOn125 Kbit
OnOnOff
Off
115200 Bit
On
OffOnOn
57600 Bit
On
OffOnOff
50000 Bit
On
Off
OffOn38400 Bit
On
Off
Off
Off
19200 Bit
OffOnOnOn9600 Bit
OffOnOn
Off
4800 Bit
OffOnOffOn2400 Bit
OffOnOff
Off
1200 Bit
Off
OffOnOn
600 Bit
Off
OffOnOff
300 Bit
Off
Off
Off
On
Serielle empfangene Zeichen sollen auf den Bildschirm zurückgegeben werden (ON=ja, OFF=nein).
3.4. Einstellen der Baudrate
Die untere Tabelle zeigt, welche Baudraten mit den 4 DIP Schaltern (A1 bis A4) eingestellt werden können.
Konfiguration des Moduls |Seite 17
3.5. Einstellen der Moduladresse (nur bei RS-485)
Baudrate
BIt
Wertigkeit ON
Wertigkeit OFF
DIP Schalter B8
Bit 7
128
0
DIP Schalter B7
Bit 6
640DIP Schalter B6
Bit 5
320DIP Schalter B5
Bit 4
160DIP Schalter B4
Bit 3
80DIP Schalter B3
Bit 2
40DIP Schalter B2
Bit 1
20DIP Schalter B1
Bit 0
1
0
Baudrate
Adresse 0
Adresse 25
Adresse 237
DIP Schalter B8
Off
OffOnDIP Schalter B7
Off
OffOnDIP Schalter B6
Off
OffOnDIP Schalter B5
OffOnOff
DIP Schalter B4
OffOnOn
DIP Schalter B3
Off
OffOnDIP Schalter B2
Off
Off
Off
DIP Schalter B1
OffOnOn
Da im RS-485 Betrieb mehrere Module an einem BUS System angeschlossen werden können, ist es erforderlich jedem Modul eine eigene Adresse zuzuweisen. Diese kann mit den DIP Schaltern B1 bis B8 zwischen 0 und 255 eingestellt werden. Bei Modulnummer 0 wird die Modulnummer ignoriert.
Beispiele:
Konfiguration des Moduls |Seite 18
Software
IV
Software | Seite 19
4. Software
4.1. Benutzung unserer Produkte
4.1.1. Ansteuerung über grafische Anwendungen
Wir stellen Treiberinterfaces z.B. für LabVIEW und ProfiLab zur Verfügung. Als Basis dient die DELIB Treiberbibliothek, die von ProfiLab direkt angesteuert werden kann.
Für LabVIEW bieten wir eine einfache Treiberanbindung mit Beispielen an!
4.1.2. Ansteuerung über unsere DELIB Treiberbibliothek
Im Anhang befindet sich die komplette Funktionsreferenz für das Integrieren unserer API-Funktionen in Ihre Software. Des Weiteren bieten wir passende Beispiele für folgende Programmiersprachen:
C C++ C# Delphi VisualBasic VB.NET MS-Office
4.1.3. Ansteuerung auf Protokollebene
Das Protokoll für die Ansteuerung unserer Produkte legen wir komplett offen. So können Sie auch auf Systemen ohne Windows oder Linux unsere Produkte einsetzen!
Software | Seite 20
4.1.4. Ansteuerung über mitgelieferte Testprogramme
Für die wichtigsten Funktionen unserer Produkte stellen wir einfach zu bedienende Testprogramme zur Verfügung,. Diese werden bei der Installation der DELIB Treiberbibliothek direkt mit installiert.
So können z.B. Relais direkt getestet werden oder Spannungen am A/D Wandler direkt überprüft werden.
Software | Seite 21
4.2. DELIB Treiberbibliothek
4.2.1. Übersicht
Die folgende Abbildung erläutert den Aufbau der DELIB Treiberbibliothek
Die DELIB Treiberbibliothek ermöglicht ein einheitliches Ansprechen von DEDITEC Hardware, mit der besonderen Berücksichtigung folgender Gesichtspunkte:
Betriebssystem unabhängig Programmiersprachen unabhängig Produkt unabhängig
Programmieren unter diversen Betriebssystemen
Die DELIB Treiberbibliothek ermöglicht ein einheitliches Ansprechen unserer Produkte auf diversen Betriebssystemen. Wir haben dafür gesorgt, dass mit wenigen Befehlen alle unsere Produkte angesprochen werden können. Dabei spielt es keine Rolle, welches Betriebssystem Sie verwenden. - Dafür sorgt die DELIB !
Software | Seite 22
Programmieren mit diversen Programmiersprachen
Für das Erstellen eigener Anwendungen stellen wir Ihnen einheitliche Befehle zur Verfügung. Dies wird über die DELIB Treiberbibliothek gelöst.
Sie wählen die Programmiersprache !
So können leicht Anwendung unter C++, C, Visual Basic, Delphi oder LabVIEW® entwickelt werden.
Schnittstellenunabhängiges programmieren
Schreiben Sie Ihre Anwendung schnittstellenunabhängig ! Programmieren Sie eine Anwendung für ein USB-Produkt von uns. - Es wird auch mit einem Ethernet oder RS-232 Produkt von uns laufen !
SDK-Kit für Programmierer
Integrieren Sie die DELIB in Ihre Anwendung. Auf Anfrage erhalten Sie von uns kostenlos Installationsskripte, die es ermöglichen, die DELIB Installation in Ihre Anwendung mit einzubinden.
Software | Seite 23
4.2.2. Unterstützte Betriebssysteme
Unsere Produkte unterstützen folgende Betriebssysteme:
Windows 2000 Windows XP Windows Vista Windows 7 Linux
4.2.3. Unterstützte Programmiersprachen
Unsere Produkte sind über folgende Programmiersprachen ansprechbar:
C C++ C# Delphi VisualBasic VB.NET MS-Office
Software | Seite 24
4.2.4. Installation DELIB-Treiberbibliothek
Legen Sie die DEDITEC driver CD in das Laufwerk und starten Sie “delib_install.exe”. Die DELIB-Treiberbibliothek ist auch unter http://www.
deditec.de/delib erhältlich.
Drücken Sie auf “Install”.
Software | Seite 25
Die Treiber werden nun installiert.
Die DELIB Treiberbibliothek wurde nun Installiert. Drücken sie auf “Close” um die Installation zu beenden.
Mit dem “DELIB Configuration Utility” (nächstes Kapitel) können Sie Ihr Modul konfigurieren (dies ist nur nötig, wenn Sie mehr als ein Modul ansprechen möchten).
Software | Seite 26
4.2.5. DELIB Configuration Utility
“DELIB Configuration Utility” wird auf dem folgendem Weg gestartet: Start Programme DEDITEC DELIB DELIB Configuration Utility.
Das “DELIB Configuration Utility” ist ein Programm zur Konfiguration und Unterteilung Identischer USB-Module im System. Dies ist aber nicht nötig falls nur ein Modul vorhanden ist.
Weiteres zum Inhalt der “DELIB Installation”, siehe “Manual für DELIB
Treiberbibliothek”
Software | Seite 27
4.3. Testprogramme
4.3.1. Digital Input-Output Demo
“Digital Input-Output Demo” wird auf dem folgendem Weg gestartet: Start Programme DEDITEC DELIB Digital Input-Output Demo.
Diese Grafik zeigt einen Test des RO-USB-O64-R64. Oben links kann man die Konfiguration des Moduls ablesen (64 Eingänge und 64 Ausgänge).
Software | Seite 28
4.3.2. Analog Input-Output Demo
“Analog Input-Output Demo” wird auf dem folgendem Weg gestartet: Start Programme DEDITEC DELIB Analog Input-Output Demo.
Diese Grafik zeigt einen Test des RO-USB-AD16-DA4. Oben links kann man die Konfiguration des Moduls ablesen (16 A/D-Eingänge und 4 D/A-Ausgänge).
Software | Seite 29
4.3.3. Stepper Demo
“Stepper Demo” wird auf dem folgendem Weg gestartet: Start Programme DEDITEC DELIB Stepper Demo.
Diese Grafik zeigt einen Test des RO-USB-STEPPER2. Oben links kann man die Konfiguration des Moduls ablesen (2 Stepper).
Software | Seite 30
Anhang
V
Anhang | Seite 31
5. Anhang
5.1. Revisionen
Rev 1.00 Erste DEDITEC Anleitung Rev 2.00 Designänderung
Anhang | Seite 32
5.2. Urheberrechte und Marken
Linux ist eine registrierte Marke von Linus Torvalds.
Windows CE ist eine registrierte Marke von Microsoft Corporation.
USB ist eine registrierte Marke von USB Implementers Forum Inc.
LabVIEW ist eine registrierte Marke von National Instruments.
Intel ist eine registrierte Marke von Intel Corporation
AMD ist eine registrierte Marke von Advanced Micro Devices, Inc.
Anhang | Seite 33
RO-DIGITAL-IN-OUT
Hardware-Beschreibung
2010
September
INDEX
1. Einleitung 6
1.1. Vorwort 6
1.2. Kundenzufriedenheit 6
1.3. Kundenresonanz 6
2. Hardware Beschreibung 8
2.1. Optokoppler Eingänge 9
2.1.1. Übersichtsbild
2.1.2. Technische Daten
2.1.3. 16-Bit Zähler
2.1.4. Erfassen von schnellen Eingangsimpulsen
2.1.5. Galvanische Trennung durch Optokoppler
2.1.6. Steckverbinder auf dem Modul
2.1.6.1. Leitungsanschluss
2.1.6.2. Visuelle Kontrolle der Eingänge
2.1.6.3. Pinbelegung
2.1.7. Eingangsspannungsbereich variierbar
2.1.7.1. Ändern der Eingangsspannung
12
13 13
14
2.2. Relais Ausgänge 15
2.2.1. Übersichtsbild
2.2.2. Technische Daten
2.2.3. Timeout-Schutz
2.2.4. Steckverbinder auf dem Modul
2.2.4.1. Relais Ausgänge (galvanisch getrennt, max 1A)
2.2.4.2. Leitungsanschluss
2.2.4.3. Visuelle Kontrolle der Ausgänge
2.2.4.4. Pinbelegung
17 18 18 18
9
2.3. MOSFET Ausgänge 19
2.3.1. Übersichtsbild
2.3.2. Technische Daten
2.3.3. Timeout-Schutz
2.3.4. Steckverbinder auf dem Modul
2.3.4.1. Optokoppler Ausgänge (galvanisch getrennt, max 2A DC)
20
21 21
21
Index | 2Seite
INDEX
2.3.4.2. Leitungsanschluss
2.3.4.3. Pinbelegung
22 22
3. Software 24
3.1. Benutzung unserer Produkte 24
3.1.1. Ansteuerung über grafische Anwendungen
3.1.2. Ansteuerung über unsere DELIB Treiberbibliothek
3.1.3. Ansteuerung auf Protokollebene
3.1.4. Ansteuerung über mitgelieferte Testprogramme
24 24 24
25
3.2. DELIB Treiberbibliothek 26
3.2.1. Übersicht
3.2.2. Unterstützte Betriebssysteme
3.2.3. Unterstützte Programmiersprachen
3.2.4. Installation DELIB-Treiberbibliothek
3.2.5. DELIB Configuration Utility
26 28 28 29
31
3.3. Testprogramme 32
3.3.1. Digital Input-Output Demo
32
4. DELIB API Referenz 35
4.1. Verwaltungsfunktionen 35
4.1.1. DapiOpenModule
4.1.2. DapiCloseModule
35 36
4.2. Fehlerbehandlung 37
4.2.1. DapiGetLastError
4.2.2. DapiGetLastErrorText
37
38
4.3. Digitale Eingänge lesen 39
4.3.1. DapiDIGet1
4.3.2. DapiDIGet8
4.3.3. DapiDIGet16
4.3.4. DapiDIGet32
4.3.5. DapiDIGet64
4.3.6. DapiDIGetFF32
4.3.7. DapiDIGetCounter
39
4.4. Digitale Ausgänge verwalten 46
Index | 3Seite
INDEX
4.4.1. DapiDOSet1
4.4.2. DapiDOSet8
4.4.3. DapiDOSet16
4.4.4. DapiDOSet32
4.4.5. DapiDOSet64
4.4.6. DapiDOReadback32
4.4.7. DapiDOReadback64
50
51
52
4.5. Ausgabe-Timeout verwalten 53
4.5.1. DapiSpecialCMDTimeout
4.5.2. DapiSpecialCMDTimeoutGetStatus
53
54
4.6. Testfunktionen 55
4.6.1. DapiPing
55
4.7. Programmier-Beispiel 56
5. Anhang 59
5.1. Revisionen 59
5.2. Urheberrechte und Marken 60
Index | 4Seite
Einleitung
I
Einleitung | Seite 5
1. Einleitung
1.1. Vorwort
Wir beglückwünschen Sie zum Kauf eines hochwertigen DEDITEC Produktes!
Unsere Produkte werden von unseren Ingenieuren nach den heutigen geforderten Qualitätsanforderungen entwickelt. Wir achten bereits bei der Entwicklung auf flexible Erweiterbarkeit und lange Verfügbarkeit.
Wir entwickeln modular!
Durch eine modulare Entwicklung verkürzt sich bei uns die Entwicklungszeit und - was natürlich dem Kunden zu Gute kommt - ein fairer Preis!
Wir sorgen für eine lange Lieferverfügbarkeit!
Sollten verwendete Halbleiter nicht mehr verfügbar sein, so können wir schneller reagieren. Bei uns müssen meistens nur Module redesigned werden und nicht das gesamte Produkt. Dies erhöht die Lieferverfügbarkeit.
1.2. Kundenzufriedenheit
Ein zufriedener Kunde steht bei uns an erster Stelle! Sollte mal etwas nicht zu Ihrer Zufriedenheit sein, wenden Sie sich einfach per
Telefon oder mail an uns. Wir kümmern uns darum!
1.3. Kundenresonanz
Die besten Produkte wachsen mit unseren Kunden. Für Anregungen oder Vorschläge sind wir jederzeit dankbar.
Einleitung | Seite 6
Hardware Beschreibung
II
Hardware Beschreibung |Seite 7
2. Hardware Beschreibung
Die Ein-/Ausgangsmodule basieren auf der Verwendung von zwei 16pol. Steckverbindern mit jeweils 8 unterschiedlichen Schaltkreisen. Jeder Zustand dieser insgesamt 16 Schaltkreise wird durch eine LED signalisiert. Die Durchnummerierung jedes Moduls erfolgt immer von links oben nach rechts unten (siehe Übersichtsbild).
Hardware Beschreibung |Seite 8
2.1. Optokoppler Eingänge
2.1.1. Übersichtsbild
Die Abbildung zeigt zwei Module nebeneinander mit entsprechender Durchnummerierung der Anschlussklemmen.
Untere Abbildung zeigt ein I/O-Modul des flexiblen Steckverbindersystems mit 32 Eingängen und entsprechender Durchnummerierung der Anschlussklemmen. An den äußeren Enden des Moduls befindet sich jeweils eine 26pol. Wannenstiftleiste mit Verriegelungshebeln. Somit können mehrere Moduleinheiten mit Hilfe eines Flachbandkabels miteinander verbunden werden.
Hardware Beschreibung |Seite 9
2.1.2. Technische Daten
Variabler Eingangsspannungsbereich min. 5V, max. 30V AC 16 Bit-Zähler für die ersten 16 Eingangskanäle
Erfassung von Impulsen zwischen 2 Auslesetakten LED Zustandsanzeige der Eingänge Galvanische Trennung über Optokoppler Komfortables Steckverbindersystem mit Auswerfmechanik In 16 facher Abstufung erweiterbar Kann problemlos mit anderen Modulen der RO Serie kombiniert werden
Hardware Beschreibung |Seite 10
2.1.3. 16-Bit Zähler
Die ersten 16 Eingangskanäle verfügen über je einen 16 Bit-Zähler. Hiermit können Ereignisse wie z.B. Lichtschranken, Drehkreuze oder Taster vom Modul gezählt werden. Somit lassen sich auch einfache Logische Schaltungen realisieren, die nach erreichen eines Sollwertes einen oder mehrere Ausgänge schalten können. Die Softwaremäßige Umsetzung solcher Logikschaltungen entnehmen Sie bitte dem Handbuch “RO-Serie”.
2.1.4. Erfassen von schnellen Eingangsimpulsen
Schnelle Zustandswechsel an den Eingängen, die innerhalb von größeren Auslesezyklen auftreten, werden durch eine zusätzliche Logik erfasst und können separat per Software ausgelesen werden. Ein solcher "Zustandswechsel" wird (für alle Eingänge gemeinsam) mit der LED “Inputs: Change”, auf dem Steuermodul signalisiert. Die LED erlischt erst wieder, wenn die Softwareregister für die Eingangszustandsänderung vom Anwender ausgelesen wurden. Näheres siehe Handbuch “Registerbelegung”.
2.1.5. Galvanische Trennung durch Optokoppler
Wechselspannungs geeignete Eingangs-Optokoppler sorgen zum einem für eine galvanische Trennung des Moduls zu den angeschlossenen Anlagen und zum anderen verhindert man eine Beschädigung des Moduls bei verpoltem Anschluss oder auftretenden Spannungspitzen o.ä. im Steuerstromkreis.
Hardware Beschreibung |Seite 11
2.1.6. Steckverbinder auf dem Modul
Als Anschlussklemmen kommen servicefreundliche Steckleisten mit Verriegelungsschutz und Auswerfmechanik zum Einsatz. Diese sind fehlsteckgeschützt und ermöglichen ein schnelles, nachträgliches Umstecken der angeschlossenen Anlagen. Der Leitungsanschluss selbst erfolgt über ein schraubenloses Stecksystem. Hierfür benötigtes Betätigungswerkzeug wird bei jedem Modul mitgeliefert.
2.1.6.1. Leitungsanschluss
Der Leitungsanschluss erfolgt jeweils an den Ports mit gleicher Nummerierung. z.B.: 1a & 1b usw.. Die Optokopplereingänge sind für Wechselspannung geeignet. Auf korrekte
Polarität der Eingangsbeschaltung muss deshalb nicht geachtet werden.
Die Abbildung zeigt zwei Klemmleisten mit entsprechender Nummerierung der Anschluss-Ports.
Hardware Beschreibung |Seite 12
2.1.6.2. Visuelle Kontrolle der Eingänge
Port
Pin
Port
Pin11a & 1b
9
9a & 9b
2
2a & 2b
10
10a & 10b
3
3a & 3b
11
11a & 11b
4
4a & 4b
12
12a & 12b
5
5a & 5b
13
13a & 13b
6
6a & 6b
14
14a & 14b
7
7a & 7b
15
15a & 15b
8
8a & 8b
16
16a & 16b
Eingangsspannungsbereich
5V 15V
15V 30V
Widerstandswert
1K
2K2
Über eine LED wird der Zustand jedes Eingangs direkt angezeigt. Signale an den Eingängen sind somit einfacher zu erkennen und Fehler in der Verdrahtung lassen sich dadurch schneller beheben.
2.1.6.3. Pinbelegung
2.1.7. Eingangsspannungsbereich variierbar
Die Eingänge sind standardmäßig für einen Spannungsbereich von 15V bis 30V ausgelegt. Diese kann (auch nachträglich) für einen Bereich von 5V bis 15V angepasst werden.
Hardware Beschreibung |Seite 13
2.1.7.1. Ändern der Eingangsspannung
Um den Eingangsspannungsbereich anzupassen, müssen pro Steckverbinder 2 Vorwiderstände ausgetauscht werden. D.h., man kann jeweils 4 Eingangskanäle (1-4, 5-8, 9-12 und 13-16) mit unterschiedlicher Spannung einspeisen. Die einzelnen Schritte hierfür werden im Folgenden erläutert.
Hinweis! Vor Öffnen des Gerätes bitte folgendes beachten:
Netzstecker ziehen! Elektronische Bauteile nicht berühren, da diese durch elektrostatische
Entladung zerstört werden können! Vor dem Arbeiten ggf. geerdete Gehäuse oder Heizkörper berühren.
Seitenelement des Moduls entfernen, dazu die drei Kreuzschrauben lösen Leiterplatte samt Frontplatte seitlich aus dem Gehäuse herausziehen Frontplatte abheben Die Eingangsmodule verfügen alle über einreihige Sockelleisten, in denen die
Eingangswiderstände für den Spannungsbereich eingesteckt sind Widerstände nun vorsichtig aus den Sockelstreifen herausziehen Neue Widerstände einsetzen
Einbau erfolgt in umgekehrter Reihenfolge
Hardware Beschreibung |Seite 14
2.2. Relais Ausgänge
2.2.1. Übersichtsbild
Die Abbildung zeigt zwei Module nebeneinander mit entsprechender Durchnummerierung der Anschlussklemmen.
Untere Abbildung zeigt ein I/O-Modul des flexiblen Steckverbindersystems mit 32 Ausgängen und entsprechender Durchnummerierung der Anschlussklemmen. An den äußeren Enden des Moduls befindet sich jeweils eine 26pol. Wannenstiftleiste mit Verriegelungshebeln. Somit können mehrere Moduleinheiten mit Hilfe eines Flachbandkabels miteinander verbunden werden.
Hardware Beschreibung |Seite 15
2.2.2. Technische Daten
Timeout-Schutz LED Zustandsanzeige der Ausgänge
Galvanische Trennung über Optokoppler Komfortables Steckverbindersystem mit Auswerfmechanik In 16 facher Abstufung erweiterbar Kann problemlos mit anderen Modulen der RO Serie kombiniert werden Max. Schaltspannung: 36V Max. Schaltstrom: 1A Max. Schaltleistung: 20W Schaltzyklen laut Hersteller: 10 Mio.
Hardware Beschreibung |Seite 16
2.2.3. Timeout-Schutz
Der Timeout-Schutz bietet die Möglichkeit die Ausgänge selbstständig abzuschalten. Dies geschieht immer dann, wenn in einem vorher definierten Zeitfenster keine Nachrichten mehr vom Modul empfangen werden. Gründe können sein: Leitungsunterbrechung, PC / Serverabsturz usw. Dadurch können Steuerungsschäden, Überlastung der angeschlossenen Anlagen und Unfallgefahren verhindert werden. Das Abschalten der Ausgänge wird durch eine LED signalisiert.
2.2.4. Steckverbinder auf dem Modul
Als Anschlussklemmen kommen, servicefreundliche Steckleisten mit Verriegelungsschutz und Auswerfmechanik zum Einsatz. Diese sind fehlsteckgeschützt und ermöglichen ein schnelles, nachträgliches Umstecken der angeschlossenen Anlagen. Der Leitungsanschluss selbst erfolgt über ein schraubenloses Stecksystem. Hierfür benötigtes Betätigungswerkzeug wird bei jedem Modul mitgeliefert.
2.2.4.1. Relais Ausgänge (galvanisch getrennt, max 1A)
Durch den Einsatz von Relais lassen sich Spannungen von bis zu 36V schalten. Die maximale Strombelastbarkeit beträgt 1A bei einer maximalen Schaltleistung von 20W.
Außerdem sorgen die Relais für eine sichere galvanische Trennung des Moduls von den angeschlossenen Anlagen.
Hardware Beschreibung |Seite 17
2.2.4.2. Leitungsanschluss
Port
Pin
Port
Pin11a & 1b
9
9a & 9b
2
2a & 2b
10
10a & 10b
3
3a & 3b
11
11a & 11b
4
4a & 4b
12
12a & 12b
5
5a & 5b
13
13a & 13b
6
6a & 6b
14
14a & 14b
7
7a & 7b
15
15a & 15b
8
8a & 8b
16
16a & 16b
Der Leitungsanschluß erfolgt jeweils an den Ports mit gleicher Nummerierung. z.B.: 1a & 1b usw..
Auf korrekte Polarität muß bei den Relaisausgängen nicht geachtet werden.
2.2.4.3. Visuelle Kontrolle der Ausgänge
Über eine LED wird der Zustand jedes Ausgangs direkt angezeigt. Signale an den Ausgängen sind somit einfacher zu erkennen und Fehler in der Verdrahtung lassen sich dadurch schneller beheben.
2.2.4.4. Pinbelegung
Hardware Beschreibung |Seite 18
2.3. MOSFET Ausgänge
2.3.1. Übersichtsbild
Die Abbildung zeigt zwei Module nebeneinander mit entsprechender Durchnummerierung der Anschlussklemmen.
Untere Abbildung zeigt ein I/O-Modul des flexiblen Steckverbindersystems mit 32 Ausgängen und entsprechender Durchnummerierung der Anschlussklemmen. An den äußeren Enden des Moduls befindet sich jeweils eine 26pol. Wannenstiftleiste mit Verriegelungshebeln. Somit können mehrere Moduleinheiten mit Hilfe eines Flachbandkabels miteinander verbunden werden.
Hardware Beschreibung |Seite 19
2.3.2. Technische Daten
Timeout-Schutz LED Zustandsanzeige der Ausgänge
Galvanische Trennung über Optokoppler Komfortables Steckverbindersystem mit Auswerfmechanik In 16 facher Abstufung erweiterbar Kann problemlos mit anderen Modulen der RO Serie kombiniert werden Max. Schaltstrom: 2A DC Max. Schaltspannung: 30V DC Max. Schaltleistung: 40W
Hardware Beschreibung |Seite 20
2.3.3. Timeout-Schutz
Der Timeout-Schutz bietet die Möglichkeit die Ausgänge selbstständig abzuschalten. Dies geschieht immer dann, wenn in einem vorher definierten Zeitfenster keine Nachrichten mehr vom Modul empfangen werden. Gründe können sein: Leitungsunterbrechung, PC / Serverabsturz usw. Dadurch können Steuerungsschäden, Überlastung der angeschlossenen Anlagen und Unfallgefahren verhindert werden. Das Abschalten der Ausgänge wird durch eine LED signalisiert.
2.3.4. Steckverbinder auf dem Modul
Als Anschlussklemmen kommen, servicefreundliche Steckleisten mit Verriegelungsschutz und Auswerfmechanik zum Einsatz. Diese sind fehlsteckgeschützt und ermöglichen ein schnelles, nachträgliches Umstecken der angeschlossenen Anlagen. Der Leitungsanschluss selbst erfolgt über ein schraubenloses Stecksystem. Hierfür benötigtes Betätigungswerkzeug wird bei jedem Modul mitgeliefert.
2.3.4.1. Optokoppler Ausgänge (galvanisch getrennt, max 2A DC)
Sämtliche Ausgänge werden mittels Hochstromoptokoppler realisiert. Die Ansteuerung über Optokoppler sorgt für eine sichere galvanische Trennung des Moduls von den angeschlossenen Anlagen.
Bei den Optokopplerausgängen muss auf die richtige Polarität beim Anschluss geachtet werden (siehe Bild unten)!
Hardware Beschreibung |Seite 21
2.3.4.2. Leitungsanschluss
Port
Pin
Port
Pin11a & 1b
9
9a & 9b
2
2a & 2b
10
10a & 10b
3
3a & 3b
11
11a & 11b
4
4a & 4b
12
12a & 12b
5
5a & 5b
13
13a & 13b
6
6a & 6b
14
14a & 14b
7
7a & 7b
15
15a & 15b
8
8a & 8b
16
16a & 16b
Der Leitungsanschluss erfolgt jeweils an den Ports mit gleicher Nummerierung. z.B.: 1a & 1b usw.. Bei den Optokopplerausgängen muss auf die korrekte Polarität der Beschaltung
geachtet werden, da der Ausgangsport sonst beschädigt wird! An Port “a” wird die positive Spannung angelegt und an Port ”b” die geschaltete
positive Spannung.
2.3.4.3. Pinbelegung
Hardware Beschreibung |Seite 22
Software
III
Software | Seite 23
3. Software
3.1. Benutzung unserer Produkte
3.1.1. Ansteuerung über grafische Anwendungen
Wir stellen Treiberinterfaces z.B. für LabVIEW und ProfiLab zur Verfügung. Als Basis dient die DELIB Treiberbibliothek, die von ProfiLab direkt angesteuert werden kann.
Für LabVIEW bieten wir eine einfache Treiberanbindung mit Beispielen an!
3.1.2. Ansteuerung über unsere DELIB Treiberbibliothek
Im Anhang befindet sich die komplette Funktionsreferenz für das Integrieren unserer API-Funktionen in Ihre Software. Des Weiteren bieten wir passende Beispiele für folgende Programmiersprachen:
C C++ C# Delphi VisualBasic VB.NET MS-Office
3.1.3. Ansteuerung auf Protokollebene
Das Protokoll für die Ansteuerung unserer Produkte legen wir komplett offen. So können Sie auch auf Systemen ohne Windows oder Linux unsere Produkte einsetzen!
Software | Seite 24
3.1.4. Ansteuerung über mitgelieferte Testprogramme
Für die wichtigsten Funktionen unserer Produkte stellen wir einfach zu bedienende Testprogramme zur Verfügung,. Diese werden bei der Installation der DELIB Treiberbibliothek direkt mit installiert.
So können z.B. Relais direkt getestet werden oder Spannungen am A/D Wandler direkt überprüft werden.
Software | Seite 25
3.2. DELIB Treiberbibliothek
3.2.1. Übersicht
Die folgende Abbildung erläutert den Aufbau der DELIB Treiberbibliothek
Die DELIB Treiberbibliothek ermöglicht ein einheitliches Ansprechen von DEDITEC Hardware, mit der besonderen Berücksichtigung folgender Gesichtspunkte:
Betriebssystem unabhängig Programmiersprachen unabhängig Produkt unabhängig
Programmieren unter diversen Betriebssystemen
Die DELIB Treiberbibliothek ermöglicht ein einheitliches Ansprechen unserer Produkte auf diversen Betriebssystemen. Wir haben dafür gesorgt, dass mit wenigen Befehlen alle unsere Produkte angesprochen werden können. Dabei spielt es keine Rolle, welches Betriebssystem Sie verwenden. - Dafür sorgt die DELIB !
Software | Seite 26
Programmieren mit diversen Programmiersprachen
Für das Erstellen eigener Anwendungen stellen wir Ihnen einheitliche Befehle zur Verfügung. Dies wird über die DELIB Treiberbibliothek gelöst.
Sie wählen die Programmiersprache !
So können leicht Anwendung unter C++, C, Visual Basic, Delphi oder LabVIEW® entwickelt werden.
Schnittstellenunabhängiges programmieren
Schreiben Sie Ihre Anwendung schnittstellenunabhängig ! Programmieren Sie eine Anwendung für ein USB-Produkt von uns. - Es wird auch mit einem Ethernet oder RS-232 Produkt von uns laufen !
SDK-Kit für Programmierer
Integrieren Sie die DELIB in Ihre Anwendung. Auf Anfrage erhalten Sie von uns kostenlos Installationsskripte, die es ermöglichen, die DELIB Installation in Ihre Anwendung mit einzubinden.
Software | Seite 27
3.2.2. Unterstützte Betriebssysteme
Unsere Produkte unterstützen folgende Betriebssysteme:
Windows 2000 Windows XP Windows Vista Windows 7 Linux
3.2.3. Unterstützte Programmiersprachen
Unsere Produkte sind über folgende Programmiersprachen ansprechbar:
C C++ C# Delphi VisualBasic VB.NET MS-Office
Software | Seite 28
3.2.4. Installation DELIB-Treiberbibliothek
Legen Sie die DEDITEC driver CD in das Laufwerk und starten Sie “delib_install.exe”. Die DELIB-Treiberbibliothek ist auch unter http://www.
deditec.de/delib erhältlich.
Drücken Sie auf “Install”.
Software | Seite 29
Die Treiber werden nun installiert.
Die DELIB Treiberbibliothek wurde nun Installiert. Drücken sie auf “Close” um die Installation zu beenden.
Mit dem “DELIB Configuration Utility” (nächstes Kapitel) können Sie Ihr Modul konfigurieren (dies ist nur nötig, wenn Sie mehr als ein Modul ansprechen möchten).
Software | Seite 30
3.2.5. DELIB Configuration Utility
“DELIB Configuration Utility” wird auf dem folgendem Weg gestartet: Start Programme DEDITEC DELIB DELIB Configuration Utility.
Das “DELIB Configuration Utility” ist ein Programm zur Konfiguration und Unterteilung Identischer USB-Module im System. Dies ist aber nicht nötig falls nur ein Modul vorhanden ist.
Weiteres zum Inhalt der “DELIB Installation”, siehe “Manual für DELIB
Treiberbibliothek”
Software | Seite 31
3.3. Testprogramme
3.3.1. Digital Input-Output Demo
“Digital Input-Output Demo” wird auf dem folgendem Weg gestartet: Start Programme DEDITEC DELIB Digital Input-Output Demo.
Diese Grafik zeigt einen Test des RO-USB-O64-R64. Oben links kann man die Konfiguration des Moduls ablesen (64 Eingänge und 64 Ausgänge).
Software | Seite 32
Software | Seite 33
DELIB API Referenz
IV
DELIB API Referenz | Seite 34
4. DELIB API Referenz
// USB-Modul öffnen handle = DapiOpenModule(RO_USB1, 0); printf("handle = %x\n", handle); if (handle==0) { // USB Modul wurde nicht gefunden printf("Modul konnte nicht geöffnet werden\n"); return; }
4.1. Verwaltungsfunktionen
4.1.1. DapiOpenModule
Beschreibung
Diese Funktion öffnet ein bestimmtes Modul.
Definition
ULONG DapiOpenModule(ULONG moduleID, ULONG nr);
Parameter
moduleID=Gibt das Modul an, welches geöffnet werden soll (siehe delib.h) nr=Gibt an, welches (bei mehreren Modulen) geöffnet werden soll. nr=0 -> 1. Modul nr=1 -> 2. Modul
Return-Wert
handle=Entsprechender Handle für das Modul handle=0 -> Modul wurde nicht gefunden
Bemerkung
Der von dieser Funktion zurückgegebene Handle wird zur Identifikation des Moduls für alle anderen Funktionen benötigt.
Programmierbeispiel
DELIB API Referenz | Seite 35
4.1.2. DapiCloseModule
// Modul schliessen DapiCloseModule(handle);
Beschreibung
Dieser Befehl schliesst ein geöffnetes Modul.
Definition
ULONG DapiCloseModule(ULONG handle);
Parameter
handle=Dies ist das Handle eines geöffneten Moduls
Return-Wert
Keiner
Programmierbeispiel
DELIB API Referenz | Seite 36
4.2. Fehlerbehandlung
ULONG error; error=DapiGetLastError(); if(error==0) return FALSE; printf("ERROR = %d”, error);
4.2.1. DapiGetLastError
Beschreibung
Diese Funktion liefert den letzten erfassten Fehler.
Definition
ULONG DapiGetLastError();
Parameter
Keine
Return-Wert
Fehler Code 0=kein Fehler. (siehe delib.h)
Programmierbeispiel
DELIB API Referenz | Seite 37
4.2.2. DapiGetLastErrorText
BOOL IsError () { if (DapiGetLastError () != DAPI_ERR_NONE)
{ unsigned char msg[500];
DapiGetLastErrorText((unsigned char*) msg, sizeof(msg)); printf ("Error Code = %x * Message = %s\n", 0, msg); return TRUE;
} return FALSE; }
Beschreibung
Diese Funktion liest den Text des letzten erfassten Fehlers.
Definition
extern ULONG __stdcall DapiGetLastErrorText(unsigned char * msg, unsigned long msg_length);
Parameter
msg = Buffer für den zu empfangenden Text msg_length = Länge des Text Buffers
Programmierbeispiel
DELIB API Referenz | Seite 38
4.3. Digitale Eingänge lesen
4.3.1. DapiDIGet1
Beschreibung
Dieser Befehl liest einen einzelnen digitalen Eingang.
Definition
ULONG DapiDIGet1(ULONG handle, ULONG ch);
Parameter
handle=Dies ist das Handle eines geöffneten Moduls ch=Gibt die Nummer des Eingangs an, der gelesen werden soll (0, 1, 2, 3, .. )
Return-Wert
Zustand des Eingangs (0/1)
DELIB API Referenz | Seite 39
4.3.2. DapiDIGet8
Beschreibung
Dieser Befehl liest gleichzeitig 8 digitale Eingänge.
Definition
ULONG DapiDIGet8(ULONG handle, ULONG ch);
Parameter
handle=Dies ist das Handle eines geöffneten Moduls ch=Gibt die Nummer des Eingangs an, ab dem gelesen werden soll (0, 8, 16, 24,
.. )
Return-Wert
Zustand der gelesen Eingänge
DELIB API Referenz | Seite 40
4.3.3. DapiDIGet16
Beschreibung
Dieser Befehl liest gleichzeitig 16 digitale Eingänge.
Definition
ULONG DapiDIGet16(ULONG handle, ULONG ch);
Parameter
handle=Dies ist das Handle eines geöffneten Moduls ch=Gibt die Nummer des Eingangs an, ab dem gelesen werden soll (0, 16, 32,
...)
Return-Wert
Zustand der gelesen Eingänge
DELIB API Referenz | Seite 41
4.3.4. DapiDIGet32
unsigned long data; // ---------------------------------------------------­// Einen Wert von den Eingängen lesen (Eingang 1-31) data = (unsigned long) DapiDIGet32(handle, 0); // Chan Start = 0 printf("Eingang 0-31 : 0x%x\n", data); printf("Taste für weiter\n"); getch(); // ---------------------------------------------------­// Einen Wert von den Eingängen lesen (Eingang 32-64) data = (unsigned long) DapiDIGet32(handle, 32); // Chan Start = 32 printf("Eingang 32-64 : 0x%x\n", data); printf("Taste für weiter\n"); getch();
Beschreibung
Dieser Befehl liest gleichzeitig 32 digitale Eingänge.
Definition
ULONG DapiDIGet32(ULONG handle, ULONG ch);
Parameter
handle=Dies ist das Handle eines geöffneten Moduls ch=Gibt die Nummer des Eingangs an, ab dem gelesen werden soll (0, 32, 64, ..)
Return-Wert
Zustand der gelesen Eingänge
Programmierbeispiel
DELIB API Referenz | Seite 42
4.3.5. DapiDIGet64
Beschreibung
Dieser Befehl liest gleichzeitig 64 digitale Eingänge.
Definition
ULONGLONG DapiDIGet64(ULONG handle, ULONG ch);
Parameter
handle=Dies ist das Handle eines geöffneten Moduls ch=Gibt die Nummer des Eingangs an, ab dem gelesen werden soll (0, 64, ..)
Return-Wert
Zustand der gelesen Eingänge
DELIB API Referenz | Seite 43
4.3.6. DapiDIGetFF32
Beschreibung
Dieser Befehl liest die Flip-Flops der Eingänge aus und setzt diese zurück (Eingangszustands-Änderung).
Definition
ULONGLONG DapiDIGet64(ULONG handle, ULONG ch);
Parameter
handle=Dies ist das Handle eines geöffneten Moduls ch=Gibt die Nummer des Eingangs an, ab dem gelesen werden soll (0, 32, 64,
..)
Return-Wert
Zustand von 32 Eingangszustandsänderungen
DELIB API Referenz | Seite 44
4.3.7. DapiDIGetCounter
value = DapiDIGetCounter(handle, 0 ,0); // Zähler von DI Chan 0 wird gelesen
value = DapiDIGetCounter(handle, 1 ,0); // Zähler von DI Chan 1 wird gelesen
value = DapiDIGetCounter(handle, 8 ,0); // Zähler von DI Chan 8 wird gelesen
value = DapiDIGetCounter(handle, 0 ,DAPI_CNT_MODE_READ_WITH_RESET); // Zähler von DI Chan 0 wird gelesen UND resettet
Beschreibung
Dieser Befehl liest den Eingangszähler eines digitalen Eingangs.
Definition
ULONG DapiDIGetCounter(handle, ch, par1);
Parameter
handle=Dies ist das Handle eines geöffneten Moduls ch=Gibt die Nummer des Eingangs an, ab dem gelesen werden soll par1=0 (Normale Zählfunktion) par1=DAPI_CNT_MODE_READ_WITH_RESET (Zähler auslesen und direktes
Counter resetten)
Return-Wert
Angabe des Zählerwertes
Programmierbeispiel
DELIB API Referenz | Seite 45
4.4. Digitale Ausgänge verwalten
4.4.1. DapiDOSet1
Beschreibung
Dieser Befehl setzt einen einzelnen Ausgang.
Definition
void DapiDOSet1(ULONG handle, ULONG ch, ULONG data);
Parameter
handle=Dies ist das Handle eines geöffneten Moduls ch=Gibt die Nummer des zu setzenden Ausgangs an (0 .. ) data=Gibt den Datenwert an, der geschrieben wird (0 / 1)
Return-Wert
Keiner
DELIB API Referenz | Seite 46
4.4.2. DapiDOSet8
Beschreibung
Dieser Befehl setzt gleichzeitig 8 digitale Ausgänge.
Definition
void DapiDOSet8(ULONG handle, ULONG ch, ULONG data);
Parameter
handle=Dies ist das Handle eines geöffneten Moduls ch=Gibt die Nummer des Ausgangs an, ab dem geschrieben werden soll (0, 8,
16, 24, 32, ..) data=Gibt die Datenwerte an, die geschrieben werden
Return-Wert
Keiner
DELIB API Referenz | Seite 47
4.4.3. DapiDOSet16
Beschreibung
Dieser Befehl setzt gleichzeitig 16 digitale Ausgänge.
Definition
void DapiDOSet16(ULONG handle, ULONG ch, ULONG data);
Parameter
handle=Dies ist das Handle eines geöffneten Moduls ch=Gibt die Nummer des Ausgangs an, ab dem geschrieben werden soll (0, 16,
32, ..) data=Gibt die Datenwerte an, die geschrieben werden
Return-Wert
Keiner
DELIB API Referenz | Seite 48
4.4.4. DapiDOSet32
// Einen Wert auf die Ausgänge schreiben data = 0x0000ff00; // Ausgänge 9-16 werden auf 1 gesetzt DapiDOSet32(handle, 0, data); // Chan Start = 0 printf("Schreibe auf Ausgänge Daten=0x%x\n", data); printf("Taste für weiter\n"); getch(); // ---------------------------------------------------­// Einen Wert auf die Ausgänge schreiben data = 0x80000000; // Ausgang 32 wird auf 1 gesetzt DapiDOSet32(handle, 0, data); // Chan Start = 0 printf("Schreibe auf Ausgänge Daten=0x%x\n", data); printf("Taste für weiter\n"); getch(); // ---------------------------------------------------­// Einen Wert auf die Ausgänge schreiben data = 0x80000000; // Ausgang 64 wird auf 1 gesetzt DapiDOSet32(handle, 32, data); // Chan Start = 32 printf("Schreibe auf Ausgänge Daten=0x%x\n", data); printf("Taste für weiter\n"); getch();
Beschreibung
Dieser Befehl setzt gleichzeitig 32 digitale Ausgänge.
Definition
void DapiDOSet32(ULONG handle, ULONG ch, ULONG data);
Parameter
handle=Dies ist das Handle eines geöffneten Moduls ch=Gibt die Nummer des Ausgangs an, ab dem geschrieben werden soll (0, 32,
64, ..) data=Gibt die Datenwerte an, die geschrieben werden
Return-Wert
Keiner
Programmierbeispiel
DELIB API Referenz | Seite 49
4.4.5. DapiDOSet64
Beschreibung
Dieser Befehl setzt gleichzeitig 64 digitale Ausgänge.
Definition
void DapiDOSet64(ULONG handle, ULONG ch, ULONG data);
Parameter
handle=Dies ist das Handle eines geöffneten Moduls ch=Gibt die Nummer des Ausgangs an, ab dem geschrieben werden soll (0, 64,
..) data=Gibt die Datenwerte an, die geschrieben werden
Return-Wert
Keiner
DELIB API Referenz | Seite 50
4.4.6. DapiDOReadback32
Beschreibung
Dieser Befehl liest die 32 digitalen Ausgänge zurück.
Definition
ULONG DapiDOReadback32(ULONG handle, ULONG ch);
Parameter
handle=Dies ist das Handle eines geöffneten Moduls ch=Gibt die Nummer des Ausgangs an, ab dem zurückgelesen werden soll (0,
32, 64, ..)
Return-Wert
Zustand von 32 Ausgängen.
DELIB API Referenz | Seite 51
4.4.7. DapiDOReadback64
Beschreibung
Dieser Befehl liest die 64 digitalen Ausgänge zurück.
Definition
ULONGLONG DapiDOReadback64(ULONG handle, ULONG ch);
Parameter
handle=Dies ist das Handle eines geöffneten Moduls ch=Gibt die Nummer des Ausgangs an, ab dem zurückgelesen werden soll (0,
64, ..)
Return-Wert
Zustand von 64 Ausgängen.
DELIB API Referenz | Seite 52
4.5. Ausgabe-Timeout verwalten
DapiSpecialCommand(handle, DAPI_SPECIAL_CMD_TIMEOUT, DAPI_SPECIAL_TIMEOUT_SET_VALUE_SEC, 3, 7); //Die Zeit des Timeouts wird auf 3,7sek gesetzt.
DapiSpecialCommand(handle, DAPI_SPECIAL_CMD_TIMEOUT, DAPI_SPECIAL_TIMEOUT_ACTIVATE, 0, 0); //Der Timeout wird aktiviert.
DapiSpecialCommand(handle, DAPI_SPECIAL_CMD_TIMEOUT, DAPI_SPECIAL_TIMEOUT_DEACTIVATE, 0, 0); //Der Timeout wird deaktiviert.
4.5.1. DapiSpecialCMDTimeout
Beschreibung
Dieser Befehl dient zum Setzen der Timeout-Zeit
Definition
DapiSpecialCommand(handle, DAPI_SPECIAL_CMD_TIMEOUT, cmd, par1, par2);
Parameter
handle=Dies ist das Handle eines geöffneten Moduls
Timeout-Zeit setzen
cmd=DAPI_SPECIAL_CMD_TIMEOUT_SET_VALUE_SEC par1=Sekunden [s] par2=Millisekunden [100ms] (Wert 6 bedeutet 600ms)
Timeout aktivieren setzen
cmd=DAPI_SPECIAL_CMD_TIMEOUT_ACTIVATE
Timeout deaktivieren setzen
cmd=DAPI_SPECIAL_CMD_TIMEOUT_DEACTIVATE
Return-Wert
Keiner
Programmierbeispiel
DELIB API Referenz | Seite 53
4.5.2. DapiSpecialCMDTimeoutGetStatus
status = DapiSpecialCommand(handle, DAPI_SPECIAL_CMD_TIMEOUT, DAPI_SPECIAL_TIMEOUT_GET_STATUS, 0, 0); //Abfrage des Timeout-Status.
Beschreibung
Dieser Befehl dient zum Auslesen des Timeout-Status.
Definition
ULONG DapiSpecialCommand(handle, DAPI_SPECIAL_CMD_TIMEOUT, DAPI_SPECIAL_TIMEOUT_GET_STATUS, 0, 0);
Parameter
handle=Dies ist das Handle eines geöffneten Moduls
Return-Wert
Return=0 (Timeout ist deaktivert) Return=1 (Timeout ist aktiviert) Return=2 (Timeout hat stattgefunden)
Programmierbeispiel
DELIB API Referenz | Seite 54
4.6. Testfunktionen
4.6.1. DapiPing
Beschreibung
Dieser Befehl prüft die Verbindung zu einem geöffneten Modul.
Definition
ULONG DapiPing(ULONG handle, ULONG value);
Parameter
handle=Dies ist das Handle eines geöffneten Moduls value=Übergebener Testwert an das Modul
Return-Wert Hier muß der mit value übergebene Testwert zurückkommen
DELIB API Referenz | Seite 55
4.7. Programmier-Beispiel
// **************************************************************************** // **************************************************************************** // **************************************************************************** // **************************************************************************** // **************************************************************************** // // (c) DEDITEC GmbH, 2009 // // web: http://www.deditec.de // // mail: vertrieb@deditec.de // // // // dtapi_prog_beispiel_input_output.cpp // // // **************************************************************************** // **************************************************************************** // **************************************************************************** // **************************************************************************** // **************************************************************************** // // // Folgende Bibliotheken beim Linken mit einbinden: delib.lib // Dies bitte in den Projekteinstellungen (Projekt/Einstellungen/Linker(Objekt­Bibliothek-Module) .. letzter Eintrag konfigurieren #include <windows.h> #include <stdio.h> #include "conio.h" #include "delib.h" // ---------------------------------------------------------------------------­// ---------------------------------------------------------------------------­// ---------------------------------------------------------------------------­// ---------------------------------------------------------------------------­// ----------------------------------------------------------------------------
void main(void) { unsigned long handle; unsigned long data; unsigned long anz; unsigned long i; unsigned long chan; // ---------------------------------------------------­// USB-Modul öffnen handle = DapiOpenModule(USB_Interface8,0); printf("USB_Interface8 handle = %x\n", handle); if (handle==0) { // USB Modul wurde nicht gefunden printf("Modul konnte nicht geöffnet werden\n"); printf("TASTE für weiter\n"); getch();
DELIB API Referenz | Seite 56
return; } // Zum Testen - ein Ping senden // ---------------------------------------------------­printf("PING\n"); anz=10; for(i=0;i!=anz;++i) { data=DapiPing(handle, i); if(i==data) { // OK printf("."); } else { // No answer printf("E"); } } printf("\n");
// ---------------------------------------------------­// Einen Wert auf die Ausgänge schreiben data = 255; DapiWriteByte(handle, 0, data); printf("Schreibe auf Adresse=0 daten=0x%x\n", data); // ---------------------------------------------------­// Einen Wert auf die Ausgänge schreiben data = 255; DapiWriteByte(handle, 1, data); printf("Schreibe auf Adresse=0 daten=0x%x\n", data); // ---------------------------------------------------­// Einen Wert auf die Ausgänge schreiben data = 255; DapiWriteByte(handle, 2, data); printf("Schreibe auf Adresse=2 daten=0x%x\n", data); // ---------------------------------------------------­// Einen Wert von den Eingängen lesen data = (unsigned long) DapiReadByte(handle, 0); printf("Gelesene Daten = 0x%x\n", data); // ---------------------------------------------------­// Einen A/D Wert lesen chan=11; // read chan. 11 data = DapiReadWord(handle, 0xff010000 + chan*2); printf("Adress=%x, ret=%x volt=%f\n", chan, data, ((float) data) / 1024*5);// Bei 5 Volt Ref // ---------------------------------------------------­// Modul wieder schliessen DapiCloseModule(handle); printf("TASTE für weiter\n"); getch(); return ; }
DELIB API Referenz | Seite 57
Anhang
V
Anhang | Seite 58
5. Anhang
5.1. Revisionen
Rev 1.00 Erste DEDITEC Anleitung Rev 2.00 Designänderung
Anhang | Seite 59
5.2. Urheberrechte und Marken
Linux ist eine registrierte Marke von Linus Torvalds.
Windows CE ist eine registrierte Marke von Microsoft Corporation.
USB ist eine registrierte Marke von USB Implementers Forum Inc.
LabVIEW ist eine registrierte Marke von National Instruments.
Intel ist eine registrierte Marke von Intel Corporation
AMD ist eine registrierte Marke von Advanced Micro Devices, Inc.
Anhang | Seite 60
RO-SERIE
Hardware-Beschreibung
2010
November
INDEX
1. Einleitung 10
1.1. Vorwort 10
1.2. Kundenzufriedenheit 10
1.3. Kundenresonanz 10
2. Hardware Beschreibung 12
2.1. Ethernet Interface 12
2.1.1. Hardware Beschreibung
2.1.1.1. Übersichtsbild
2.1.1.2. Technische Daten
2.1.1.3. Steckverbinder auf dem Modul
2.1.1.3.1. Spannungsversorgung
2.1.1.3.2. Ethernet Interface
2.1.1.4. Taster auf dem Modul
2.1.1.5. Kontroll LED’s
2.1.1.5.1. Definition der LEDs
2.1.2. Konfiguration des Moduls
2.1.2.1. Konfiguration über das DELIB Configuration Utility
2.1.2.2. Konfiguration über den internen Web-Server des Moduls
2.1.2.3. Auslieferungszustand
2.1.3. Firmware Update
2.1.3.1. DEDITEC Flasher
2.1.3.2. WEB-Oberfläche
2.1.4. Grundkonfiguration wiederherstellen
2.1.4.1. IP Adresse zurücksetzen
2.1.4.2. Firmware zurücksetzen
12
14 15 15 15 16
17
17
18
23 24
25
25 26
28
28 28
2.2. CAN Interface 29
2.2.1. Hardware Beschreibung
2.2.1.1. Übersichtsbild
2.2.1.2. Technische Daten
2.2.1.3. Steckverbinder auf dem Modul
2.2.1.3.1. Spannungsversorgung
2.2.1.3.2. CAN Interface
29
29
30
31
31
31
Index |
2Seite
INDEX
2.2.1.4. Kontroll LED’s
2.2.1.4.1. Definition der LEDs
2.2.2. Konfiguration des Moduls
2.2.2.1. DIP-Schalter
2.2.2.2. Der Vorzugsmodus
2.2.2.3. Software-Modus
2.2.2.4. DIP-Schalter-Modus
2.2.2.4.1. Einstellen der Übertragungsgeschwindigkeit (Bitrate)
2.2.2.4.2. Einstellen der CAN-Moduladresse
32 32
33
33
34 35
37
37 38
2.3. RS-232/RS-485 Interface 40
2.3.1. Hardware Beschreibung
2.3.1.1. Übersichtsbild
2.3.1.2. Technische Daten
2.3.1.3. Wählen der Schnittstellenvariante RS-232 oder RS-485
2.3.1.4. Steckverbinder auf dem Modul
2.3.1.4.1. Spannungsversorgung
2.3.1.4.2. RS-232/RS-485 Interface
2.3.1.4.2.1RS-232 Pinbelegung
2.3.1.4.2.2RS-485 Pinbelegung
2.3.1.5. Kontroll LED’s
2.3.1.5.1. Definition der LEDs
2.3.2. Konfiguration des Moduls
2.3.2.1. DIP-Schalter
2.3.2.2. Der Vorzugsmodus
2.3.2.3. Echo aktivieren
2.3.2.4. Einstellen der Baudrate
2.3.2.5. Einstellen der Moduladresse (nur bei RS-485)
40
41
42
44
44
44 45
45 46 46
47 48 49 49
50
2.4. USB Interface 51
2.4.1. Hardware Beschreibung
2.4.1.1. Übersichtsbild
2.4.1.2. Technische Daten
2.4.1.3. Steckverbinder auf dem Modul
2.4.1.3.1. Spannungsversorgung
2.4.1.3.2. USB Interface
2.4.1.4. Kontroll LED’s
2.4.1.4.1. Definition der LEDs
51
51 53 54 54 54
55 55
Index |
3Seite
INDEX
2.5. Digitale Ein-/Ausgabemodule 56
2.5.1. Hardware Beschreibung
2.5.1.1. Optokoppler Eingänge
2.5.1.1.1. Übersichtsbild
2.5.1.1.2. Technische Daten
2.5.1.1.3. 16-Bit Zähler
2.5.1.1.4. Erfassen von schnellen Eingangsimpulsen
2.5.1.1.5. Galvanische Trennung durch Optokoppler
2.5.1.1.6. Steckverbinder auf dem Modul
2.5.1.1.6.1Leitungsanschluss
2.5.1.1.6.2Visuelle Kontrolle der Eingänge
2.5.1.1.6.3Pinbelegung
2.5.1.1.7. Eingangsspannungsbereich variierbar
2.5.1.1.7.1Ändern der Eingangsspannung
2.5.1.2. Relais Ausgänge
2.5.1.2.1. Übersichtsbild
2.5.1.2.2. Technische Daten
2.5.1.2.3. Timeout-Schutz
2.5.1.2.4. Steckverbinder auf dem Modul
2.5.1.2.4.1Relais Ausgänge (galvanisch getrennt, max 1A)
2.5.1.2.4.2Leitungsanschluss
2.5.1.2.4.3Visuelle Kontrolle der Ausgänge
2.5.1.2.4.4Pinbelegung
2.5.1.3. MOSFET Ausgänge
2.5.1.3.1. Übersichtsbild
2.5.1.3.2. Technische Daten
2.5.1.3.3. Timeout-Schutz
2.5.1.3.4. Steckverbinder auf dem Modul
2.5.1.3.4.1Optokoppler Ausgänge (galvanisch getrennt, max 2A DC)
2.5.1.3.4.2Leitungsanschluss
2.5.1.3.4.3Pinbelegung
56
57 57
58 59 59 59 60
60
61 61
61
62
63 63 64
65 65
65 66 66 66
67 67
68 69 69
69
70 70
2.6. Analoge Ein-/Ausgabemodule 71
2.6.1. Hardware Beschreibung
2.6.1.1. RO-AD16-DA4
2.6.1.1.1. Übersichtsbild
2.6.1.1.2. Technische Daten
2.6.1.1.3. Timeout-Schutz
2.6.1.1.4. Pinbelegung
71 72
73
74 75
Index |
4Seite
INDEX
2.6.1.1.4.1A/D Steckverbinder (18pol)
2.6.1.1.4.2D/A Steckverbinder (10pol)
2.6.1.2. RO-AD16
2.6.1.2.1. Übersichtsbild
2.6.1.2.2. Technische Daten
2.6.1.2.3. Pinbelegung
2.6.1.2.3.1A/D Steckverbinder (18pol)
2.6.1.3. RO-AD16_ISO
2.6.1.3.1. Übersichtsbild
2.6.1.3.2. Technische Daten
2.6.1.3.3. Pinbelegung
2.6.1.3.3.1A/D Steckverbinder (18pol)
2.6.1.4. RO-DA4
2.6.1.4.1. Übersichtsbild
2.6.1.4.2. Technische Daten
2.6.1.4.3. Timeout-Schutz
2.6.1.4.4. Pinbelegung
2.6.1.4.4.1D/A Steckverbinder (10pol)
2.6.1.5. RO-DA2_ISO
2.6.1.5.1. Übersichtsbild
2.6.1.5.2. Technische Daten
2.6.1.5.3. Timeout-Schutz
2.6.1.5.4. Pinbelegung
2.6.1.5.4.1D/A Steckverbinder (10pol)
75 75 76 76
77 78
78 79 79
80
81 81
82 82
83 84 84
84
85 85 86
87
88 88
2.7. Stepper Modul 89
2.7.1. Hardware Beschreibung
2.7.1.1. Übersichtsbild
2.7.1.2. Technische Daten
2.7.1.3. Ansteuerung
2.7.1.4. Pinbelegung
2.7.1.4.1. Stepper Steckverbinder (10pol)
89
89 90 90
91 91
3. Software 93
3.1. Benutzung unserer Produkte 93
3.1.1. Ansteuerung über grafische Anwendungen
3.1.2. Ansteuerung über unsere DELIB Treiberbibliothek
3.1.3. Ansteuerung auf Protokollebene
3.1.4. Ansteuerung über mitgelieferte Testprogramme
93 93 93
94
Index |
5Seite
INDEX
3.2. DELIB Treiberbibliothek 95
3.2.1. Übersicht
3.2.2. Unterstützte Betriebssysteme
3.2.3. Unterstützte Programmiersprachen
3.2.4. Installation DELIB-Treiberbibliothek
3.2.5. DELIB Configuration Utility
95
97 97
98
100
3.3. Testprogramme 101
3.3.1. Digital Input-Output Demo
3.3.2. Analog Input-Output Demo
3.3.3. Stepper Demo
101 102 103
4. DELIB API Referenz 105
4.1. Verwaltungsfunktionen 105
4.1.1. DapiOpenModule
4.1.2. DapiCloseModule
4.2. Fehlerbehandlung 107
4.2.1. DapiGetLastError
4.2.2. DapiGetLastErrorText
4.3. Digitale Eingänge lesen 109
105 106
107 108
4.3.1. DapiDIGet1
4.3.2. DapiDIGet8
4.3.3. DapiDIGet16
4.3.4. DapiDIGet32
4.3.5. DapiDIGet64
4.3.6. DapiDIGetFF32
4.3.7. DapiDIGetCounter
109
110
111 112 113
114 115
4.4. Digitale Ausgänge verwalten 116
4.4.1. DapiDOSet1
4.4.2. DapiDOSet8
4.4.3. DapiDOSet16
4.4.4. DapiDOSet32
4.4.5. DapiDOSet64
4.4.6. DapiDOReadback32
4.4.7. DapiDOReadback64
116
117 118 119
120
121
122
Index |
6Seite
INDEX
4.5. A/D Wandler Funktionen 123
4.5.1. DapiADSetMode
4.5.2. DapiADGetMode
4.5.3. DapiADGet
4.5.4. DapiADGetVolt
4.5.5. DapiADGetmA
123 125 126
127
128
4.6. D/A Ausgänge verwalten 129
4.6.1. DapiDASetMode
4.6.2. DapiDAGetMode
4.6.3. DapiDASet
4.6.4. DapiDASetVolt
4.6.5. DapiDASetmA
4.6.6. DapiSpecialCmd_DA
129 130
131
132 133
134
4.7. Schrittmotoren Funktionen 136
4.7.1. Befehle mit DapiStepperCommand
4.7.1.1. DAPI_STEPPER_CMD_GO_POSITION
4.7.1.2. DAPI_STEPPER_CMD_GO_POSITION_RELATIVE
4.7.1.3. DAPI_STEPPER_CMD_SET_POSITION
4.7.1.4. DAPI_STEPPER_CMD_SET_FREQUENCY
4.7.1.5. DAPI_STEPPER_CMD_GET_FREQUENCY
4.7.1.6. DAPI_STEPPER_CMD_SET_FREQUENCY_DIRECTLY
4.7.1.7. DAPI_STEPPER_CMD_STOP
4.7.1.8. DAPI_STEPPER_CMD_FULLSTOP
4.7.1.9. DAPI_STEPPER_CMD_DISABLE
4.7.1.10. DAPI_STEPPER_CMD_SET_MOTORCHARACTERISTIC
4.7.1.11. DAPI_STEPPER_CMD_GET_MOTORCHARACTERISTIC
4.7.1.12. DAPI_STEPPER_CMD_MOTORCHARACTERISTIC_EEP ROM_SAVE
4.7.1.13. DAPI_STEPPER_CMD_MOTORCHARACTERISTIC_EEP ROM_LOAD
136
136
137 138 139 140
141 142
143
144
145
150
158
159
Index |
7Seite
Loading...