USB-TTL Modul mit 32/64 TTL-I/O

0 Kundenbewertungen

ab  202,30

Alternativ Artikel

Aufgrund des weltweiten Bauteilemangels für bestimmte Halbleiter, kann dieser Artikel vorerst nicht mehr nachproduziert werden. Als Alternative empfehlen wir Ihnen hier unser ETH-TTL-64.

Verfügbarkeit: Auf Lager SKU: USB-TTL-32 USB-TTL-64 Kategorie:

Das USB-TTL-32/64 verfügt über 32 oder 64 TTL Kanäle und wird über eine USB 2.0 Schnittstelle angesprochen. Der TTL Anschluss erfolgt über eine 37pol. D-SUB Buchse. Ein Kunststoffgehäuse mit Hutschienenaufnahme ermöglicht das Montieren in Verteilerschränken oder an Testplätzen.

  • 32/64 TTL-I/O über eine 37 polige D-SUB Buchse
  • TTL-Pegel von 5V bis 1,5V
  • USB 2.0 / 1.1
  • Hutschienenmodul

TTL I/Os

Das Produkt verfügt über 32 oder 64 TTL-I/O Kanäle und unterstützt TTL Pegel von 1,5V bis 5V. Die Kanäle können in 8er Blöcken sowohl als Eingang als auch als Ausgang definiert werden.

Zähler

Jeder Eingang verfügt über einen 16 Bit-Zähler. Hiermit können also bis zu 65535 Impulse gezählt werden. Beim Überschreiten des maximalen Zählerstandes beginnt der Zählvorgang wieder bei null. Mittels Software-Befehl kann der aktuelle Stand aller Eingangszähler gleichzeitig aus dem Modul gelesen werden.

 

Erfassen von Zustandsänderungen

Zustandsänderungen die zwischen den Auslesezyklen stattfinden, werden durch interne Flip-Flops sicher erfasst und können separat per Software ausgelesen werden. Zusätzlich wird solch ein Ereigniss durch eine Status LED signalisiert. Das Zurücksetzen erfolgt automatisch nach dem Auslesen der Flip-Flops.


 

Fail Safe Modus

Der Fail-Safe-Modus stellt eine Sicherheitsfunktion dar, bei der das DEDITEC Modul, im Falle eines Verbindungsabbruchs, in einen zuvor konfigurierten, sicheren Schaltzustand übergeht.
Dadurch soll verhindert werden, dass angeschlossenen Anlagen oder Systeme unkontrolliert weiter laufen.

 

Für jeden digitalen Ausgang können drei Schaltzustände definiert werden:
a) Ausgeschaltet b), Eingeschaltet oder c) Unverändert

 

Die Fail-Safe-Schaltung wird durch eine Timeout Schutzfunktion ausgelöst. Erhält die Steuerung innerhalb einer zuvor definierten Zeitspanne keine Befehle mehr seitens des Steuer PCs, tritt die Timeout Funktion in Kraft. Ursache für einen Timeout können sein, Verbindungsabbruch zwischen Steuer PC und der DEDITEC Steuerung oder Ausfall des Steuer PCs.

 

Timeout Modi

Drei Timeout-Modi stehen zur Verfügung:

 

A) Der „Normale Modus“ ist einmal gültig und muss nach jedem Timeout Ereignis manuell per Software Befehl wieder neu aktiviert werden. Die Kunden-Applikation hat weiterhin Zugriff auf alle Ausgänge der Steuerung.

 

B) Beim „Auto reactivate Modus“ wird die Timeout Funktion automatisch wieder aktiviert, nachdem die Kommunikation mit dem Steuer PC wieder hergestellt wurde. Die Kunden-Applikation hat weiterhin Zugriff auf alle Ausgänge der Steuerung.

 

C) Der „Secure outputs Modus“ sperrt den Zugriff auf die Ausgänge nach dem Timeout Ereignis. Ein Entriegeln kann nur per Softwarebefehl erfolgen. Dies ist ein wichtiger Sicherheitsaspekt im Fehlerfall.

 


Software und Ansteuerung für Programmierer

Durch unsere mitgelieferte DELIB Treiberbibliothek ist ein einfaches Ansprechen des Produkts über unsere API möglich.

 

Wir bieten Support für folgende Programmiersprachen:

  • C
  • C++
  • C#
  • VB
  • VBA
  • VB.Net
  • Java
  • Delphi
  • LabVIEW

Wir bieten Support für folgende Betriebssysteme:

  • Windows 11/10 (32bit/64bit)
  • Windows 8/8.1 (32bit/64bit)
  • Windows 7 (32bit/64bit)
  • Windows Vista (32bit/64bit)
  • Windows XP (32bit/64bit)
  • Windows Server 2003 (32bit/64bit)
  • Windows 2000
  • Linux

Entsprechende Programmierbeispiele finden Sie bei den Produkten im Bereich „Software“ oder sind als Lieferumfang auf der Treiber CD enthalten.


Allgemein

Versorgungsspannung +5V (USB-Bus)
Ein-/Ausgänge • 32/64 TTL-I/O (in 8-er Blöcken als Ein- oder Ausgang einstellbar)
• TTL Pegel: 3,3V bis 5V über Jumper einstellbar
• TTL Pegel: 1,5V bis 5V über externe Pegeleinspeisung
• Ausgangsstrom: max. 5mA / Kanal
Zugriffsgeschwindigkeit Durchschnittliche Zugriffszeit vom PC auf das Modul: 0,2 ms
(Berechnet mit 1000 Zugriffen auf das Modul über die DELIB Treiberbibliothek mit dem Befehl DapiDoSet32)
Timeout-Schutz-Funktion • Einfache und unkomplizierte Einstellung der Timeout-Schutz-Funktion per Software möglich
• Zeitlich festlegbare automatische Aktivierung der Timeout-Schutz-Funktion im
Timeout-Fall (zwischen 0,1 Sekunden und 6553 Sekunden)
• Im Timeout-Fall können digitale Ausgänge aktiviert, deaktiviert oder unverändert gelassen werden
• 3 verschiedene Timeout-Modi: „normal“, „auto reactive“ und „secure outputs“ für verschiedene Vorgehensweisen bei einem Timeout-Fall
Im „secure outputs“ Timeout-Modus wird der Zugriff auf die Ausgänge nach einem Timeout-Fall gesperrt und somit ein weiterer Zugriff auf die Ausgänge verhindert.
Ein Entsperren muss per zusätzlichem Softwarebefehl erfolgen.
API-Bibliothek Delib Treiberbibliothek für C++, C#, VB, VB.Net, Delphi und LabVIEW
LEDs • Betriebsspannung
• Betriebsstatus
• Zugriff auf die I/O Kanäle
• Interface Aktivität
Steckverbinder 37 polige D-Sub Buchse
Betriebstemperatur +10°C bis +50°C
Abmessungen 77 mm x 90 mm x 42 mm (H x B x T)

Digitale Ausgänge

Timeout-Schutz-Funktion • Einfache und unkomplizierte Einstellung der Timeout-Schutz-Funktion per Software möglich
• Zeitlich festlegbare automatische Aktivierung der Timeout-Schutz-Funktion im
Timeout-Fall (zwischen 0,1 Sekunden und 6553 Sekunden)
• Im Timeout-Fall können digitale Ausgänge aktiviert, deaktiviert oder unverändert gelassen werden
• 3 verschiedene Timeout-Modi: „normal“, „auto reactive“ und „secure outputs“ für verschiedene Vorgehensweisen bei einem Timeout-Fall
Im „secure outputs“ Timeout-Modus wird der Zugriff auf die Ausgänge nach einem Timeout-Fall gesperrt und somit ein weiterer Zugriff auf die Ausgänge verhindert.
Ein Entsperren muss per zusätzlichem Softwarebefehl erfolgen.

USB-Interface

Interface USB 2.0 mit bis zu 480 Mbit/s

Zusätzliche Informationen

Gewicht n. v.
Anzahl TTL Kanäle

32, 64

 

 

 

Übersichtsbild des ICT-Tool mit allen Funktionen. Diese werden in den folgenden Kapiteln genauer beschrieben
 

Allgemeine Informationen zum ICT-Tool

Um Ihnen die Inbetriebnahme unserer Produkte so leicht und überschaubar wie möglich zu gestalten, haben wir das neue ICT-Tool entwickelt.
Dieses Tool vereint alle wichtigen Funktionen unserer alten Programme, wie zum Beispiel die des Configuration Utilitys, Modul Demo und des DT-Flasher in einem.
Mit dem ICT-Tool können Sie unsere Produkte jetzt ganz einfach Konfigurieren, Testen, Diagnostizieren, Flashen und Debuggen.
In den folgenden Kapitel, würden wir Ihnen unsere neue All-In-One-Software gerne genauer vorstellen.

Modulauswahl

Hier können Sie Ihre Module mit einem Klick auf das „+“ Symbol ins ICT-Tool einbinden, um diese anschließend konfigurieren oder testen zu können.

ICT-Tool Modulauswahl. Darstellung des ICT-Tool bei Programmstart

Startbildschirm

Hier finden Sie einige wichtige Information zu Ihrem ausgewählten Modul.
Zudem können Sie sich hier das Handbuch des Modules als PDF oder HTML-Version anzeigen lassen.
Unter „Show module IDs“ können Sie alle verfügbaren Module IDs aufrufen. Diese ID wird benötigt, um unsere Produkte in Ihre Software-Projekte einzubinden.

ICT-Tool Modulinfo. Darstellung des ICT-Tool bei geöffnetem Modul

ICT Treeview

Im Treeview auf der linken Seite des Programmfensters, sehen Sie die jeweiligen Formen, die von Ihrem Modul unterstützt werden.
Mit einem Klick können Sie sich diese Form dann im rechten Teil des Programmes anzeigen lassen und mögliche Konfigurationen oder Tests durchführen.

ICT-Tool Treeview. Darstellung des ICT-Tool, Erklärung zum Aufbau

Konfiguration

Konfiguration von USB-Modulen

Produkte mit USB-Schnittstelle werden selbstständig von der DELIB Treiberbibliothek erkannt. Eine Konfiguration muss nur vorgenommen werden, falls mehrere identische USB-Produkte am selben System eingesetzt werden sollen.

 


Mehrere identische USB-Module an einem System

Jedes unserer USB Produkte hat im Auslieferungszustand die Modul-Nr „0“. Beim Einsatz von mehr als einem USB Modul an einem PC / System, muss zunächst jedem weiteren Modul eine neue Modul Nr. zugewiesen werden. Diese Zuweisung geschieht mit Hilfe unseres ICT-Tool. Nur so kann softwareseitig eine eindeutige Zuordnung stattfinden. Die Modul-Nr wird fest im Produkt gespeichert. Es können bis zu 255 identische Module an einem System verwendet werden.

ICT-Tool USB Config

Nähere Details zur Ansteuerung sowie einige Programmierbeispiele, finden Sie im Bereich Programmierung.

Verwaltungsfunktionen

DEDITEC ICON
DapiOpenModule
Diese Funktion öffnet ein bestimmtes Modul.

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ückgegebe Handle wird zur Identifikation des Moduls für alle anderen Funktionen benötigt.

 

Programmierbeispiel

// 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;
}

DapiCloseModule
Dieser Befehl schliesst ein geöffnetes Modul.

DapiCloseModule

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

// Modul schliessen
DapiCloseModule(handle);

DapiGetLastError
Diese Funktion liefert den letzten erfassten Fehler. Sofern ein Fehler aufgetreten ist, muss dieser mit DapiClearLastError() gelöscht werden, da sonst jeder Aufruf von DapiGetLastError() den "alten" Fehler zurückgibt. Sollen mehrere Module verwendet werden, empfielt sich die Verwendung von DapiGetLastErrorByHandle().

DapiGetLastError

 

Beschreibung

Diese Funktion liefert den letzten erfassten Fehler. Sofern ein Fehler aufgetreten ist, muss dieser mit DapiClearLastError() gelöscht werden, da sonst jeder Aufruf von DapiGetLastError() den „alten“ Fehler zurückgibt.
Sollen mehrere Module verwendet werden, empfielt sich die Verwendung von DapiGetLastErrorByHandle().

 

Definition

ULONG DapiGetLastError(void);

 

Parameter

Keine

 

Return-Wert

Fehler Code
0=kein Fehler. (siehe delib_error_codes.h)

 

Programmierbeispiel

BOOL IsError()
{
unsigned char msg[500];
unsigned long error_code = DapiGetLastError();

if (error_code != DAPI_ERR_NONE)
{
DapiGetLastErrorText((unsigned char*) msg, sizeof(msg));
printf(„Error Code = 0x%x * Message = %s\n“, error_code, msg);

DapiClearLastError();

return TRUE;
}

return FALSE;
}

DapiGetLastErrorByHandle
Diese Funktion liefert den letzten erfassten Fehler eines bestimmten Moduls (handle). Sofern ein Fehler aufgetreten ist, muss dieser mit DapiClearLastErrorByHandle() gelöscht werden, da sonst jeder Aufruf von DapiGetLastErrorByHandle() den "alten" Fehler zurückgibt.

DapiGetLastErrorByHandle

 

Beschreibung

Diese Funktion liefert den letzten erfassten Fehler eines bestimmten Moduls (handle). Sofern ein Fehler aufgetreten ist, muss dieser mit DapiClearLastErrorByHandle() gelöscht werden, da sonst jeder Aufruf von DapiGetLastErrorByHandle() den „alten“ Fehler zurückgibt.

 

Definition

ULONG DapiGetLastErrorByHandle(ULONG handle);

 

Parameter

handle=Dies ist das Handle eines geöffneten Moduls

 

Return-Wert

Fehler Code
0=kein Fehler. (siehe delib_error_codes.h)

 

Programmierbeispiel

BOOL IsError(ULONG handle)
{
unsigned long error_code = DapiGetLastErrorByHandle(handle);

if (error_code != DAPI_ERR_NONE)
{
printf(„Error detected on handle 0x%x – Error Code = 0x%x\n“, handle, error_code);

DapiClearLastErrorByHandle(handle);

return TRUE;
}

return FALSE;
}

DapiGetLastErrorText
Diese Funktion liest den Text des letzten erfassten Fehlers. Sofern ein Fehler aufgetreten ist, muss dieser mit DapiClearLastError() gelöscht werden, da sonst jeder Aufruf von DapiGetLastErrorText() den "alten" Fehler zurückgibt.

DapiGetLastErrorText

 

Beschreibung

Diese Funktion liest den Text des letzten erfassten Fehlers. Sofern ein Fehler aufgetreten ist, muss dieser mit DapiClearLastError() gelöscht werden, da sonst jeder Aufruf von DapiGetLastErrorText() den „alten“ Fehler zurückgibt.

 

Definition

ULONG 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

BOOL IsError()
{
unsigned char msg[500];
unsigned long error_code = DapiGetLastError();

if (error_code != DAPI_ERR_NONE)
{
DapiGetLastErrorText((unsigned char*) msg, sizeof(msg));
printf(„Error Code = 0x%x * Message = %s\n“, error_code, msg);

DapiClearLastError();

return TRUE;
}

return FALSE;
}

DapiClearLastError
Diese Funktion löscht den letzten Fehler, der mit DapiGetLastError() erfasst wurde.

DapiClearLastError

Beschreibung

Diese Funktion löscht den letzten mit DapiGetLastError() registrierten Fehler.

 

Definition

void DapiGetLastError(void);

 

Parameter

Keine

 

Return Wert

Keine

 

Beispiel-Programm

BOOL IsError()
{
unsigned char msg[500];
unsigned long error_code = DapiGetLastError();

if (error_code != DAPI_ERR_NONE)
{
DapiGetLastErrorText((unsigned char*) msg, sizeof(msg));
printf(„Error Code = 0x%x * Message = %s\n“, error_code, msg);

DapiClearLastError();

return TRUE;
}

return FALSE;
}

DapiClearLastErrorByHandle
Diese Funktion löscht den letzten Fehler eines bestimmten Moduls (handle), der mit DapiGetLastErrorByHandle() erfasst wurde.

DapiClearLastErrorByHandle

 

Beschreibung

Diese Funktion löscht den letzten Fehler eines bestimmten Moduls (Handle), der mit DapiGetLastErrorByHandle() registriert wurde.

 

Definition

void DapiClearLastErrorByHandle(ULONG handle);

 

Parameter

handle=Dies ist das Handle eines geöffneten Moduls.

 

Return Wert

Keine

 

Beispiel-Programm

BOOL IsError(ULONG handle)
{
unsigned long error_code = DapiGetLastErrorByHandle(handle);

if (error_code != DAPI_ERR_NONE)
{
printf(„Error detected on handle 0x%x – Error Code = 0x%x\n“, handle, error_code);

DapiClearLastErrorByHandle(handle);

return TRUE;
}

return FALSE;
}

DapiGetDELIBVersion
Diese Funktion gibt die installierte DELIB-Version zurück.

DapiGetDELIBVersion

 

Beschreibung

Diese Funktion gibt die installierte DELIB-Version zurück.

 

Definition

ULONG DapiGetDELIBVersion(ULONG mode, ULONG par);

 

Parameter

mode=Modus, mit dem die Version ausgelesen wird (muss immer 0 sein).
par=Dieser Parameter ist nicht definiert (muss immer 0 sein).

 

Return-Wert

version=Versionsnummer der installierten DELIB-Version [hex]

 

Programmierbeispiel

version = DapiGetDELIBVersion(0, 0);
//Bei installierter Version 1.32 ist version = 132(hex)

DapiOpenModuleEx
Diese Funktion öffnet gezielt ein Modul mit Ethernet-Schnittstelle. Dabei können die Parameter IP-Adresse, Portnummer und die Dauer des Timeouts bestimmt werden. Das Öffnen des Moduls geschieht dabei unabhängig von den im DELIB Configuration Utility getroffenen Einstellungen.

DapiOpenModuleEx

 

Beschreibung

Diese Funktion öffnet gezielt ein Modul mit Ethernet-Schnittstelle. Dabei können die Parameter IP-Adresse, Portnummer und die Dauer des Timeouts bestimmt werden.

 

Definition

ULONG DapiOpenModuleEx(ULONG moduleID, ULONG nr, unsigned char* exbuffer, 0);

 

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
exbuffer = Buffer für IP-Adresse, Portnummer und Dauer des Timeouts

 

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.
Dieser Befehl wird von allen Modulen mit Ethernet-Schnittstelle unterstützt.

 

Programmierbeispiel

// Open ETH-Module with parameter

DAPI_OPENMODULEEX_STRUCT open_buffer;

strcpy((char*) open_buffer.address, „192.168.1.10“);
open_buffer.portno = 0;
open_buffer.timeout = 5000;

handle = DapiOpenModuleEx(RO_ETH, 0, (unsigned char*) &open_buffer, 0);
printf(„Module handle = %x\n“, handle);

Digitale Eingabe-Funktionen

DEDITEC ICON
DapiDIGet1
Dieser Befehl liest einen einzelnen digitalen Eingang

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)

 

Anforderungen

Die folgenden SW-Feature-Bits müssen vom Modul unterstützt werden:

DAPI_SW_FEATURE_BIT_CFG_DI

Die Folgenden Bedingungen für die Übergabeparameter müssen eingehalten werden:

maxCh = DapiSpecialCommand(handle, DAPI_SPECIAL_CMD_GET_MODULE_CONFIG, DAPI_SPECIAL_GET_MODULE_CONFIG_PAR_DI, 0, 0);
maxCh > ch

DapiDIGet8
Dieser Befehl liest gleichzeitig 8 digitale Eingänge

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

 

Anforderungen

Die folgenden SW-Feature-Bits müssen vom Modul unterstützt werden:

DAPI_SW_FEATURE_BIT_CFG_DI

Die Folgenden Bedingungen für die Übergabeparameter müssen eingehalten werden:

maxCh = DapiSpecialCommand(handle, DAPI_SPECIAL_CMD_GET_MODULE_CONFIG, DAPI_SPECIAL_GET_MODULE_CONFIG_PAR_DI, 0, 0);
maxCh > ch ch must be 0, 8, 16, …

DapiDIGet16
Dieser Befehl liest gleichzeitig 16 digitale Eingänge

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

 

Anforderungen

Die folgenden SW-Feature-Bits müssen vom Modul unterstützt werden:

DAPI_SW_FEATURE_BIT_CFG_DI

Die Folgenden Bedingungen für die Übergabeparameter müssen eingehalten werden:

maxCh = DapiSpecialCommand(handle, DAPI_SPECIAL_CMD_GET_MODULE_CONFIG, DAPI_SPECIAL_GET_MODULE_CONFIG_PAR_DI, 0, 0);
maxCh > ch ch must be 0, 16, 32, …

DapiDIGet32
Dieser Befehl liest gleichzeitig 32 digitale Eingänge

DapiDIGet32

 

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

 

Anforderungen

Die folgenden SW-Feature-Bits müssen vom Modul unterstützt werden:

DAPI_SW_FEATURE_BIT_CFG_DI

Die Folgenden Bedingungen für die Übergabeparameter müssen eingehalten werden:

maxCh = DapiSpecialCommand(handle, DAPI_SPECIAL_CMD_GET_MODULE_CONFIG, DAPI_SPECIAL_GET_MODULE_CONFIG_PAR_DI, 0, 0);
maxCh > ch ch must be 0, 32, 64, …

 

Programmierbeispiel

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();

DapiDIGet64
Dieser Befehl liest gleichzeitig 64 digitale Eingänge

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

 

Anforderungen

Die folgenden SW-Feature-Bits müssen vom Modul unterstützt werden:

DAPI_SW_FEATURE_BIT_CFG_DI

Die Folgenden Bedingungen für die Übergabeparameter müssen eingehalten werden:

maxCh = DapiSpecialCommand(handle, DAPI_SPECIAL_CMD_GET_MODULE_CONFIG, DAPI_SPECIAL_GET_MODULE_CONFIG_PAR_DI, 0, 0);
maxCh > ch ch must be 0 or 64

DapiDIGetFF32
Dieser Befehl liest die Flip-Flops der Eingänge aus und setzt diese zurück (Eingangszustands-Änderung)

DapiDIGetFF32

 

Beschreibung

Dieser Befehl liest die Flip-Flops der Eingänge aus und setzt diese zurück.
(Eingangszustands-Änderung)

 

Definition

ULONG DapiDIGetFF32(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

 

Anforderungen

Die folgenden SW-Feature-Bits müssen vom Modul unterstützt werden:

DAPI_SW_FEATURE_BIT_CFG_DI_FF

Die Folgenden Bedingungen für die Übergabeparameter müssen eingehalten werden:

maxCh = DapiSpecialCommand(handle, DAPI_SPECIAL_CMD_GET_MODULE_CONFIG, DAPI_SPECIAL_GET_MODULE_CONFIG_PAR_DI_FF, 0, 0);
maxCh > ch ch must be 0, 32, 64, …

Digitale Ausgabe-Funktionen

DEDITEC ICON
DapiDOSet1
Dieser Befehl setzt einen einzelnen Ausgang.

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

 

Anforderungen

Die folgenden SW-Feature-Bits müssen vom Modul unterstützt werden:

 

DAPI_SW_FEATURE_BIT_CFG_DO

Die Folgenden Bedingungen für die Übergabeparameter müssen eingehalten werden:

maxCh = DapiSpecialCommand(handle, DAPI_SPECIAL_CMD_GET_MODULE_CONFIG, DAPI_SPECIAL_GET_MODULE_CONFIG_PAR_DO, 0, 0);
maxCh > ch

DapiDOSet8
Dieser Befehl setzt gleichzeitig 8 digitale Ausgänge.

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

DapiDOSet16
Dieser Befehl setzt gleichzeitig 16 digitale Ausgänge.

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

DapiDOSet32
Dieser Befehl setzt gleichzeitig 32 digitale Ausgänge.

DapiDOSet32

 

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

// 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();

DapiDOSet64
Dieser Befehl setzt gleichzeitig 64 digitale Ausgänge.

DapiDOSet64

 

Beschreibung

Dieser Befehl setzt gleichzeitig 64 digitale Ausgänge.

 

Definition

void DapiDOSet64(ULONG handle, ULONG ch, ULONGLONG 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

DapiDOClrBit32
Mit diesem Befehl können Ausgänge gezielt auf 0 geschaltet werden, ohne die Zustände der benachbarten Ausgänge zu ändern.

DapiDOClrBit32

 

Beschreibung

Mit diesem Befehl können Ausgänge gezielt auf 0 geschaltet werden, ohne die Zustände der benachbarten Ausgänge zu ändern.

 

Definition

void DapiDOClrBit32(uint handle, uint ch, uint data);

 

Parameter

handle = Dies ist das Handle eines geöffneten Moduls
ch = Gibt die Nummer des Ausgangs an, ab dem geschrieben werden soll
data = Gibt den Datenwert an, der geschrieben werden soll (bis zu 32 Bit)

 

Return-Wert

Keiner

 

Bemerkung

Nur die Bits mit einer Wertigkeit von 1 im data Parameter werden vom Befehl berücksichtigt.

 

Programmierbeispiel

data = 0x1; // Output 0 would be changed to 0. The states of outputs 1-31 won’t be changed
DapiDOSetBit32(handle, 0, data);

data = 0xf; // Outputs 0-3 would be changed to 0. The states of outputs 4-31 won’t be changed
DapiDOSetBit32(handle, 0, data);

data = 0xff; // Outputs 0-7 would be changed to 0. The states of outputs 8-31 won’t be changed
DapiDOSetBit32(handle, 0, data);

data = 0xff000000; // Outputs 23-31 would be changed to 0. The states of outputs 0-21 won’t be changed
DapiDOSetBit32(handle, 0, data);

DapiDOSet1_WithTimer
Diese Funktion setzt einen Digitalausgang (ch) auf einen Wert (data - 0 oder 1) für eine bestimmte Zeit in ms.

DapiDOSet1_WithTimer

 

Beschreibung

Diese Funktion setzt einen Digitalausgang (ch) auf einen Wert (data – 0 oder 1) für eine bestimmte Zeit in ms.

 

Definition

void DapiDOSet1_WithTimer(ULONG handle, ULONG ch, ULONG data, ULONG time_ms);

 

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)
time_ms=Gibt die Zeit an, in der der Ausgang gesetzt wird [ms]

 

Return-Wert

Keiner

 

Bemerkung

Dieser Befehl wird von allen Ausgangsmodulen der NET-Serie, sowie von unserem RO-O8-R8 Modul unterstützt.
Dieser Befehl verliert seine Gültigkeit, sofern er mit anderen Werten überschrieben wird.
Möchte man den Befehl deaktivieren, dann muss er mit time_ms=0 überschrieben werden.

 

Programmierbeispiel

DapiDOSet1_WithTimer(handle, 2, 1, 1000);
//Setting channel 2 for 1000msec to 1

DapiDOSetBit32
Mit diesem Befehl können Ausgänge gezielt auf 1 geschaltet werden, ohne die Zustände der benachbarten Ausgänge zu ändern.

DapiDOSetBit32

 

Beschreibung

Mit diesem Befehl können Ausgänge gezielt auf 1 geschaltet werden, ohne die Zustände der benachbarten Ausgänge zu ändern.

 

Definition

void DapiDOSetBit32(uint handle, uint ch, uint data);

 

Parameter

handle = Dies ist das Handle eines geöffneten Moduls
ch = Gibt die Nummer des Ausgangs an, ab dem geschrieben werden soll
data = Gibt den Datenwert an, der geschrieben werden soll (bis zu 32 Bit)

 

Return-Wert

Keiner

 

Bemerkung

Nur die Bits mit einer Wertigkeit von 1 im data Parameter werden vom Befehl berücksichtigt.

 

Programmierbeispiel

data = 0x1; // Output 0 would be changed to 1. The states of outputs 1-31 won’t be changed
DapiDOSetBit32(handle, 0, data);

data = 0xf; // Outputs 0-3 would be changed to 1. The states of outputs 4-31 won’t be changed
DapiDOSetBit32(handle, 0, data);

data = 0xff; // Outputs 0-7 would be changed to 1. The states of outputs 8-31 won’t be changed
DapiDOSetBit32(handle, 0, data);

data = 0xff000000; // Outputs 23-31 would be changed to 1. The states of outputs 0-21 won’t be changed
DapiDOSetBit32(handle, 0, data);

DapiDOReadback32
Dieser Befehl liest die 32 digitalen Ausgänge zurück.

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.

DapiDOReadback64
Dieser Befehl liest die 64 digitalen Ausgänge zurück.

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.

Timeout-Schutz-Funktion

DEDITEC ICON
DapiSpecialCommand - DapiSpecialCMDTimeout
Dieser Befehl dient zum Einstellen der Timeout-Schutz-Funktion

DapiSpecialCommand-DapiSpecialCMDTimeout

 

Beschreibung
Dieser Befehl dient zum Einstellen der Timeout-Schutz-Funktion.

Es gibt seit 2021 drei unterschiedliche Timeout-Methoden.

 

„normalen“ Timeout
Dies ist der Timeout, den unsere Module schon seit 2009 besitzen.
Vorgehensweise für den Timeout-Befehl:
Der Timeout wird per Befehl aktiviert.
Findet dann ein sogenanntes Timeout-Ereignis statt(Pause zwischen zwei Zugriffen auf das Modul ist grösser, als die erlaubte Timeout-Zeit) passiert folgendes:
– Alle Ausgänge werden ausgeschaltet.
– Der Timeout-Status geht auf „2“.
– Die Timeout-LED geht an (bei Modulen, die solch einen Status haben)
Weitere Zugriffe auf die Ausgänge sind dann weiterhin möglich, aber der Timeout ist nicht weiter aktiv. Erst wieder, wenn er wieder aktiviert wurde.

 

„auto reactivate“ Timeout
Dies ist ein seit 2021 implementierter Timeout-Modus, der nach Auftreten des Timeout-Ereignisses den Timeout automatisch wieder aktiviert.
Vorgehensweise für den Timeout-Befehl:
Der Timeout wird per Befehl aktiviert.
Findet dann ein sogenanntes Timeout-Ereignis statt(Pause zwischen zwei Zugriffen auf das Modul ist grösser, als die erlaubte Timeout-Zeit) passiert folgendes:
– Alle Ausgänge werden ausgeschaltet.
– Der Timeout-Status geht auf „4“.
– Die Timeout-LED geht an (bei Modulen, die solch einen Status haben)
Weitere Zugriffe auf die Ausgänge sind dann weiterhin möglich. UND der Timeout ist weiter aktiv. Bei erneuter Zeitüberschreitung der Timeout-Zeit werden die Ausgänge wieder ausgeschaltet.

 

„secure outputs“ Timeout
Dies ist ein seit 2021 implementierter Timeout-Modus, der nach Auftreten des Timeout-Ereignisses einen Schreibenden Zugriff auf die Ausgänge verhindert.Somit wird sichergestellt, dass die Software erst einmal einen „sicheren“ Zustand der Ausgänge wiederherstellen muss, da der Timeout-Mechanismus des Moduls die Ausgänge auf vordefinierte Werte verändert hat.
Vorgehensweise für den Timeout-Befehl:
Der Timeout wird per Befehl aktiviert.
Findet dann ein sogenanntes Timeout-Ereignis statt(Pause zwischen zwei Zugriffen auf das Modul ist grösser, als die erlaubte Timeout-Zeit) passiert folgendes:
– Alle Ausgänge werden ausgeschaltet.
– Der Timeout-Status geht auf „6“.
– Die Timeout-LED geht an (bei Modulen, die solch einen Status haben)
Weitere Zugriffe auf die Ausgänge sind NICHT möglich. Erst nach erneutem Aktivieren des Timeouts oder Deaktivieren des Timeouts können die Ausgänge beschrieben werden.

 

Definition
DapiSpecialCommand(handle, DAPI_SPECIAL_CMD_TIMEOUT, cmd, par1, par2);

 

Parameter
handle = Dies ist das Handle eines geöffneten Moduls
cmd = auszuführende Funktion
par1 = Wert, der an die Funktion übergeben wird
par2 = Wert, der an die Funktion übergeben wird

DapiSpecialCommand - DapiSpecialTimeoutSetValueSec
Dieser Befehl dient zum Setzen der Timeout-Zeit

DapiSpecialCommand – DapiSpecialTimeoutSetValueSec

 

Beschreibung
Dieser Befehl dient zum Setzen der Timeout-Zeit.

 

Definition
DapiSpecialCommand(handle, DAPI_SPECIAL_CMD_TIMEOUT, cmd, par1, par2);

 

Parameter
cmd = DAPI_SPECIAL_TIMEOUT_SET_VALUE_SEC
par1 = Sekunden [s]
par2 = Millisekunden [100ms] (Wert 6 = 600ms)

 

Bemerkung

Der zulässige Wertebereich der Zeitangabe liegt zwischen 0,1 Sekunden und 6553 Sekunden

 

Programmierbeispiel

DapiSpecialCommand(handle, DAPI_SPECIAL_CMD_TIMEOUT,
DAPI_SPECIAL_TIMEOUT_SET_VALUE_SEC, 3, 7);
//Die Zeit des Timeouts wird auf 3,7sek gesetzt.

DapiSpecialCommand - DapiSpecialTimeoutActivate
Dieser Befehl aktiviert den "normalen" Timeout

DapiSpecialCommand – DapiSpecialTimeoutActivate

 

Beschreibung

Dieser Befehl aktiviert den „normalen“ Timeout.
Nach dem Timeout-Ereignis werden..
– ..alle Ausgänge ausgeschaltet
– ..der Timeout-Status auf „2“ gesetzt
– ..die Timeout-LED angeschaltet (bei Modulen, die solch einen Status haben)
Weitere Zugriffe auf die Ausgänge sind dann weiterhin möglich, aber der Timeout ist nicht weiter aktiv.
Erst wieder, wenn er wieder aktiviert wurde.

 

Definition

DapiSpecialCommand(handle, DAPI_SPECIAL_CMD_TIMEOUT, cmd, 0, 0);

 

Parameter
cmd = DAPI_SPECIAL_TIMEOUT_ACTIVATE

 

Programmierbeispiel

DapiSpecialCommand(handle, DAPI_SPECIAL_CMD_TIMEOUT,
DAPI_SPECIAL_TIMEOUT_ACTIVATE, 0, 0);
//Der „normale“ Timeout wird aktiviert.

DapiSpecialCommand - DapiSpecialTimeoutActivateAutoReactivate
Dieser Befehl aktiviert den "auto reactivate" Timeout

DapiSpecialCommand – DapiSpecialTimeoutActivateAutoReactivate

 

Beschreibung

Dieser Befehl aktiviert den „auto reactivate“ Timeout.
In diesem Modus wird der Timeout nach dem Timeout-Ereignis automatisch wieder aktiviert.
Nach dem Timeout-Ereignis werden..
– ..alle Ausgänge ausgeschaltet
– ..der Timeout-Status auf „4“ gesetzt
– ..die Timeout-LED angeschaltet (bei Modulen, die solch einen Status haben)
Weitere Zugriffe auf die Ausgänge sind dann weiterhin möglich UND der Timeout ist weiter aktiv.
Bei erneuter Zeitüberschreitung der Timeout-Zeit werden die Ausgänge weider ausgeschaltet.

 

Definition

DapiSpecialCommand(handle, DAPI_SPECIAL_CMD_TIMEOUT, cmd, 0, 0);

 

Parameter
cmd = DAPI_SPECIAL_TIMEOUT_ACTIVATE_AUTO_REACTIVATE

 

Programmierbeispiel

DapiSpecialCommand(handle, DAPI_SPECIAL_CMD_TIMEOUT,
DAPI_SPECIAL_TIMEOUT_ACTIVATE_AUTO_REACTIVATE, 0, 0);
//Der „auto reactivate“ Timeout wird aktiviert.

DapiSpecialCommand - DapiSpecialTimeoutActivateSecureOutputs
Dieser Befehl aktiviert den "secure outputs" Timeout

DapiSpecialCommand – DapiSpecialTimeoutActivateSecureOutputs

 

Beschreibung

Dieser Befehl aktiviert den „secure outputs“ Timeout.
In diesem Modus wird ein schreibender Zugriff auf die Ausgänge nach einem Timeout-Ereignis verhindert.
Somit wird sichergestellt, dass die Software erst einmal einen „sicheren“ Zustand der Ausgänge wiederherstellen muss,
da der Timeout-Mechanismus des Moduls die Ausgänge auf vordefinierte Werte verändert hat.
Nach dem Timeout-Ereignis werden..
– ..alle Ausgänge ausgeschaltet
– ..der Timeout-Status auf „6“ gesetzt
– ..die Timeout-LED angeschaltet (bei Modulen, die solch einen Status haben)
Weitere Zugriffe auf die Ausgänge sind NICHT möglich. Erst nach erneutem Aktivieren des
Timeouts oder Deaktivieren des Timeouts können die Ausgänge beschrieben werden.

 

Definition

DapiSpecialCommand(handle, DAPI_SPECIAL_CMD_TIMEOUT, cmd, 0, 0);

 

Parameter
cmd = DAPI_SPECIAL_TIMEOUT_ACTIVATE_SECURE_OUTPUTS

 

Programmierbeispiel

DapiSpecialCommand(handle, DAPI_SPECIAL_CMD_TIMEOUT,
DAPI_SPECIAL_TIMEOUT_ACTIVATE_SECURE_OUTPUTS, 0, 0);
//Der „secure outputs“ Timeout wird aktiviert.

DapiSpecialCommand - DapiSpecialTimeoutDeactivate
Dieser Befehl deaktiviert den Timeout

DapiSpecialCommand – DapiSpecialTimeoutDeactivate

 

Beschreibung

Dieser Befehl deaktiviert den Timeout.

 

Definition

DapiSpecialCommand(handle, DAPI_SPECIAL_CMD_TIMEOUT, cmd, 0, 0);

 

Parameter

cmd = DAPI_SPECIAL_TIMEOUT_DEACTIVATE

 

Programmierbeispiel

DapiSpecialCommand(handle, DAPI_SPECIAL_CMD_TIMEOUT,
DAPI_SPECIAL_TIMEOUT_DEACTIVATE, 0, 0);
//Der Timeout wird deaktiviert.

DapiSpecialCommand - DapiSpecialTimeoutGetStatus
Dieser Befehl dient zum Auslesen des Timeout-Status

DapiSpecialCommand – DapiSpecialTimeoutGetStatus

 

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

cmd = DAPI_SPECIAL_TIMEOUT_GET_STATUS

 

Return-Wert

Return = 0 (Timeout ist deaktiviert)

 

Werte für den „normalen“ Timeout
Return = 1 (Timeout „normal“ ist aktiviert)
Return = 2 (Timeout „normal“ hat stattgefunden)

 

Werte für den „auto reactivate“ Timeout
Return = 3 (Timeout „auto reactivate“ ist aktiviert)
Return = 4 (Timeout „auto reactivate“ hat ein oder mehrmals stattgefunden)

 

Werte für den „secure“ Timeout
Return = 5 (Timeout „secure“ ist aktiviert)
Return = 6 (Timout „secure“ hat stattgefunden. In diesem Status wird ein Schreiben auf die Outputs verhindert)

 

Programmierbeispiel

unsigned long status = DapiSpecialCommand(handle, DAPI_SPECIAL_CMD_TIMEOUT,
DAPI_SPECIAL_TIMEOUT_GET_STATUS, 0, 0);
printf(„Status = %ul\n“, status);
//Abfrage des Timeout-Status mit Ausgabe.

DapiSpecialCommand - DapiSpecialTimeoutDoValueMaskWRSet32
Dieser Befehl aktiviert Relais bei einem Timeout

DapiSpecialCommand – DapiSpecialTimeoutDoValueMaskWRSet32

 

Beschreibung

Dieser Befehl bestimmt die Ausgänge, die bei einem Timeout gesetzt werden sollen.

 

Definition

DapiSpecialCommand(handle, DAPI_SPECIAL_CMD_TIMEOUT, cmd, ch, par2);

 

Parameter

cmd = DAPI_SPECIAL_TIMEOUT_DO_VALUE_MASK_WR_SET32
ch = Gibt die Nummer des Ausgangs an, ab dem geschrieben werden soll (0, 32, 64, ..)
par2 = [32 Bit] Gibt die Ausgänge an, welche bei einem Timeout aktiviert werden sollen

 

Programmierbeispiel

DapiSpecialCommand(handle, DAPI_SPECIAL_CMD_TIMEOUT,
DAPI_SPECIAL_TIMEOUT_DO_VALUE_MASK_WR_SET32, 0, 0xff);
//Die ersten 8 Relais werden im Timeout Fall eingeschaltet.

DapiSpecialCommand - DapiSpecialTimeoutDoValueMaskRDSet32
Dieser Befehl dient zum Auslesen der übergebenen Werte

DapiSpecialCommand – DapiSpecialTimeoutDoValueMaskRDSet32

 

Beschreibung

Dieser Befehl dient zum Auslesen der übergebenen Werte

 

Definition

ULONG DapiSpecialCommand(handle, DAPI_SPECIAL_CMD_TIMEOUT, cmd, 0, 0);

 

Parameter

cmd = DAPI_SPECIAL_TIMEOUT_DO_VALUE_MASK_RD_SET32

 

Return-Wert

[32 Bit] Wert der dem SET-Befehl übergeben wird

 

Programmierbeispiel

unsigned long value = DapiSpecialCommand(handle, DAPI_SPECIAL_CMD_TIMEOUT,
DAPI_SPECIAL_TIMEOUT_DO_VALUE_MASK_RD_SET32, 0, 0);
printf(„%0x\n“, value);
//Der Wert der dem SET-Befehl übergeben wurde, wird ausgelesen und dargestellt.

DapiSpecialCommand - DapiSpecialTimeoutDoValueMaskWRClr32
Dieser Befehl deaktiviert Relais bei einem Timeout

DapiSpecialCommand – DapiSpecialTimeoutDoValueMaskWRClr32

 

Beschreibung

Dieser Befehl bestimmt die Ausgänge, die bei einem Timeout ausgeschaltet werden sollen.

 

Definition

DapiSpecialCommand(handle, DAPI_SPECIAL_CMD_TIMEOUT, cmd, ch, par2);

 

Parameter

cmd = DAPI_SPECIAL_TIMEOUT_DO_VALUE_MASK_WR_CLR32
ch = Gibt die Nummer des Ausgangs an, ab dem geschrieben werden soll (0, 32, 64, ..)
par2 = [32 Bit] Gibt die Ausgänge an, welche bei einem Timeout deaktiviert werden sollen

 

Programmierbeispiel

DapiSpecialCommand(handle, DAPI_SPECIAL_CMD_TIMEOUT,
DAPI_SPECIAL_TIMEOUT_DO_VALUE_MASK_WR_CLR32, 0, 0xff);
//Die ersten 8 Relais werden im Timeout Fall ausgeschaltet.

DapiSpecialCommand - DapiSpecialTimeoutDoValueMaskRDClr32
Dieser Befehl dient zum Auslesen der übergebenen Werte

DapiSpecialCommand – DapiSpecialTimeoutDoValueMaskRDClr32

 

Beschreibung

Dieser Befehl dient zum Auslesen der übergebenen Werte.

 

Definition

LONG DapiSpecialCommand(handle, DAPI_SPECIAL_CMD_TIMEOUT, cmd, 0, 0);

 

Parameter

cmd = DAPI_SPECIAL_TIMEOUT_DO_VALUE_MASK_RD_CLR32

 

Return-Wert

[32 Bit] Wert der dem CLR-Befehl übergeben wird

 

Programmierbeispiel

unsigned long value = DapiSpecialCommand(handle, DAPI_SPECIAL_CMD_TIMEOUT,
DAPI_SPECIAL_TIMEOUT_DO_VALUE_MASK_RD_CLR32, 0, 0);
printf(„%0x\n“, value);
//Der Wert der dem CLR-Befehl übergeben wurde, wird ausgelesen und dargestellt.

DapiSpecialCommand - DapiSpecialTimeoutDoValueLoadDefault
Setzt die SET- und CLR-Werte auf den Ursprungswert zurück

DapiSpecialCommand – DapiSpecialTimeoutDoValueLoadDefault

 

Beschreibung

Setzt die SET- und CLR-Werte auf den Default-Wert zurück.
(SET-Wert = 0, CLR-Wert = FFFFFFFF)

 

Definition

DapiSpecialCommand(handle, DAPI_SPECIAL_CMD_TIMEOUT, cmd, 0, 0);

 

Parameter

cmd = DAPI_SPECIAL_TIMEOUT_DO_VALUE_LOAD_DEFAULT

 

Programmierbeispiel

DapiSpecialCommand(handle, DAPI_SPECIAL_CMD_TIMEOUT,
DAPI_SPECIAL_TIMEOUT_DO_VALUE_LOAD_DEFAULT, 0, 0);
//SET- und CRL-Werte werden auf den Default-Wert gesetzt.

TTL-Funktionen

DEDITEC ICON
DapiSpecialCommand - DapiSpecialCMDSetDirDX_1
Dieser Befehl setzt die Richtung von 8 hintereinanderliegenden TTL-Ein/Ausgängen (1-Bit weise).

DapiSpecialCommand – DapiSpecialCMDSetDirDX_1

 

Beschreibung

Dieser Befehl setzt die Richtung von 8 hintereinanderliegenden TTL-Ein/Ausgängen (1-Bit weise).

 

Definition

void DapiSpecialCommand(ULONG handle, DAPI_SPECIAL_CMD_SET_DIR_DX_1, ULONG ch, ULONG dir, 0);

 

Parameter

handle = Dies ist das Handle eines geöffneten Moduls
ch = Muss immer 0 sein!
dir = Gibt die Richtung für 8 Kanäle an (1=output / 0=input) / Bit 0 steht für Kanal 0, Bit 1 für Kanal 1 …

 

Return-Wert

Keiner

 

Bemerkung

Nicht kompatibel mit USB-TTL-32/64.
Verwenden Sie für diese Module den DAPI_SPECIAL_CMD_SET_DIR_DX_8 Befehl.

 

Programmierbeispiel

DapiSpecialCommand(handle, DAPI_SPECIAL_CMD_SET_DIR_DX_1, 0, 0x01 , 0);
// Set Dir of TTL-I/O CH0 to output, others to input
DapiSpecialCommand(handle, DAPI_SPECIAL_CMD_SET_DIR_DX_1, 0, 0x02 , 0);
// Set Dir of TTL-I/O CH1 to output, others to input
DapiSpecialCommand(handle, DAPI_SPECIAL_CMD_SET_DIR_DX_1, 0, 0x04 , 0);
// Set Dir of TTL-I/O CH2 to output, others to input
DapiSpecialCommand(handle, DAPI_SPECIAL_CMD_SET_DIR_DX_1, 0, 0x08 , 0);
// Set Dir of TTL-I/O CH3 to output, others to input
DapiSpecialCommand(handle, DAPI_SPECIAL_CMD_SET_DIR_DX_1, 0, 0x10 , 0);
// Set Dir of TTL-I/O CH4 to output, others to input
DapiSpecialCommand(handle, DAPI_SPECIAL_CMD_SET_DIR_DX_1, 0, 0x20 , 0);
// Set Dir of TTL-I/O CH5 to output, others to input
DapiSpecialCommand(handle, DAPI_SPECIAL_CMD_SET_DIR_DX_1, 0, 0x40 , 0);
// Set Dir of TTL-I/O CH6 to output, others to input
DapiSpecialCommand(handle, DAPI_SPECIAL_CMD_SET_DIR_DX_1, 0, 0x80 , 0);
// Set Dir of TTL-I/O CH7 to output, others to input

DapiSpecialCommand(handle, DAPI_SPECIAL_CMD_SET_DIR_DX_1, 0, 0x0f , 0);
// Set Dir of TTL-I/O CH0-3 to output, others to input
DapiSpecialCommand(handle, DAPI_SPECIAL_CMD_SET_DIR_DX_1, 0, 0xff , 0);
// Set Dir of TTL-I/O CH0-7 to output, others to input

DapiSpecialCommand - DapiSpecialCMDSetDirDX_8
Dieser Befehl setzt die Richtung von bis zu 64 hintereinanderliegenden TTL-Ein/Ausgängen (8-Bit weise). 1-Bit repräsentiert dabei 8 TTL-Ein/Ausgänge.

DapiSpecialCommand – DapiSpecialCMDSetDirDX_8

 

Beschreibung

Dieser Befehl setzt die Richtung von bis zu 64 hintereinanderliegenden TTL-Ein/Ausgängen (8-Bit weise).
1-Bit repräsentiert dabei 8 TTL-Ein/Ausgänge.

 

Definition

void DapiSpecialCommand(ULONG handle, DAPI_SPECIAL_CMD_SET_DIR_DX_8, ULONG ch, ULONG dir, 0);

 

Parameter

handle = Dies ist das Handle eines geöffneten Moduls
ch = Muss immer 0 sein!
dir = (8-Bit) gibt die Richtung für bis zu 64 hintereinanderliegende TTL-Ein/Ausgänge an. (1=output / 0=input)

 

Return-Wert

Keiner

 

Bemerkung

Nur kompatibel mit USB-TTL-32/64.
Verwenden Sie für andere TTL-Produkte den DAPI_SPECIAL_CMD_SET_DIR_DX_1 Befehl.

 

Programmierbeispiel

DapiSpecialCommand(handle, DAPI_SPECIAL_CMD_SET_DIR_DX_8, 0, 0x1 , 0);
// Set Dir of TTL-I/O CH0-7 to output, others to input
DapiSpecialCommand(handle, DAPI_SPECIAL_CMD_SET_DIR_DX_8, 0, 0x3 , 0);
// Set Dir of TTL-I/O CH0-15 to output, others to input
DapiSpecialCommand(handle, DAPI_SPECIAL_CMD_SET_DIR_DX_8, 0, 0xc , 0);
// Set Dir of TTL-I/O CH16-31 to output, others to input
DapiSpecialCommand(handle, DAPI_SPECIAL_CMD_SET_DIR_DX_8, 0, 0x33 , 0);
// Set Dir of TTL-I/O CH0-15 and CH32-47 to output, others to input
DapiSpecialCommand(handle, DAPI_SPECIAL_CMD_SET_DIR_DX_8, 0, 0xff , 0);
// Set Dir of TTL-I/O CH0-63 to output, others to input

DapiSpecialCommand - DapiSpecialCMDGetDirDX_8
Dieser liest die Richtung von bis zu 64 hintereinanderliegenden TTL-Ein/Ausgängen (8-Bit weise). 1-Bit repräsentiert dabei 8 TTL-Ein/Ausgänge.

DapiSpecialCommand – DapiSpecialCMDGetDirDX_8

 

Beschreibung

Dieser Befehl liest die Richtung von bis zu 64 hintereinanderliegenden TTL-Ein/Ausgängen (8-Bit weise).
1-Bit repräsentiert dabei 8 TTL-Ein/Ausgänge.

 

Definition

ULONG DapiSpecialCommand(ULONG handle, DAPI_SPECIAL_CMD_GET_DIR_DX_8, ULONG ch, ULONG dir, 0);

 

Parameter

handle = Dies ist das Handle eines geöffneten Moduls
ch = Muss immer 0 sein!
dir = Muss immer 0 sein!

 

Return-Wert

Richtungszustand von 64 Kanälen.

Bit 0: Richtung von TTL 0-7       / 1=Output, 0=Input
Bit 1: Richtung von TTL 8-15     / 1=Output, 0=Input
Bit 2: Richtung von TTL 16-23   / 1=Output, 0=Input
Bit 3: Richtung von TTL 24-31   / 1=Output, 0=Input
Bit 4: Richtung von TTL 32-39   / 1=Output, 0=Input
Bit 5: Richtung von TTL 40-47   / 1=Output, 0=Input
Bit 6: Richtung von TTL 48-55   / 1=Output, 0=Input
Bit 7: Richtung von TTL 56-63   / 1=Output, 0=Input

 

Bemerkung

Nur kompatibel mit USB-TTL-32/64.

 

Programmierbeispiel

ULONG ret = DapiSpecialCommand(handle, DAPI_SPECIAL_CMD_GET_DIR_DX_8, 0, 0, 0);
// Liest die Richtung von 64 Kanälen aus

CNT48-Funktionen

DEDITEC ICON
DapiCnt48ModeSet
Dieser Befehl setzt einen Zählmodus (optional auch Submodus) und Eingangsfilter für einen bestimmten Eingangszählerkanal.

DapiCnt48ModeSet

 

Beschreibung

Dieser Befehl setzt einen Zählmodus (optional auch Submodus) und Eingangsfilter für einen bestimmten Eingangszählerkanal.

 

Definition

void DapiCnt48ModeSet(ULONG handle, ULONG ch, ULONG mode);

 

Parameter

handle=Dies ist das Handle eines geöffneten Moduls
ch=Nummer des Eingangszählerkanals, dessen Modus gesetzt werden soll (0, 1, 2, 3, .. )
mode=Gibt den Modus an

 

Mögliche Werte für mode

mode=DAPI_CNT48_MODE_COUNT_RISING_EDGE | DAPI_CNT48_SUBMODE_NO_RESET
In diesem Modus wird bei steigender Flanke gezählt.

 

mode=DAPI_CNT48_MODE_COUNT_RISING_EDGE | DAPI_CNT48_SUBMODE_RESET_WITH_READ
In diesem Modus wird bei steigender Flanke gezählt. Zusätzlich wird bei jedem Lesevorgang der Zähler resettet.

 

mode=DAPI_CNT48_MODE_COUNT_RISING_EDGE | DAPI_CNT48_SUBMODE_RESET_ON_CH_7
In diesem Modus wird bei steigender Flanke gezählt. Zusätzlich kann der Zähler über ein externes Signal (letzer Kanal des Moduls = 1) resettet werden.

 

mode=DAPI_CNT48_MODE_COUNT_RISING_EDGE | DAPI_CNT48_SUBMODE_LATCH_COMMON
Mit dem Befehl „DapiSpecialCommand(handle, DAPI_SPECIAL_CMD_CNT48, DAPI_SPECIAL_CNT48_LATCH_GROUP8, 0, 0)“ werden alle 8 Zählerstände der Eingangszähler gleichzeitig in einen Zwischenspeicher (Latch) geschrieben. Mit diesem Modus kann dann der gelatchte Zählerstand ausgelesen werden.

 

mode=DAPI_CNT48_MODE_T
Mit diesem Modus wird die Periodendauer T gemessen. Als Basis hierbei dient ein 100 MHz Zähler.

 

mode=DAPI_CNT48_MODE_FREQUENCY
Bei diesem Modus lässt sich die Anzahl der steigenden Flanken innerhalb einer Sekunde (=Frequenz) messen.

 

mode=DAPI_CNT48_MODE_PWM
Mit diesem Modus werden die „high“ und „low“ Zeit eines Signals gemessen. Dadurch kann anschließend das Verhältnis bestimmt werden (PWM).

 

Zusätzlich können alle Eingangszähler mit einem Eingangsfilter (mit einer oder-Verknüpfung) kombiniert werden. Hierzu stehen folgende Eingangsfilter zur Verfügung:

 

DAPI_CNT48_FILTER_20ns
DAPI_CNT48_FILTER_100ns
DAPI_CNT48_FILTER_250ns
DAPI_CNT48_FILTER_500ns
DAPI_CNT48_FILTER_1us
DAPI_CNT48_FILTER_2_5us
DAPI_CNT48_FILTER_5us
DAPI_CNT48_FILTER_10us
DAPI_CNT48_FILTER_25us
DAPI_CNT48_FILTER_50us
DAPI_CNT48_FILTER_100us
DAPI_CNT48_FILTER_250us
DAPI_CNT48_FILTER_500us
DAPI_CNT48_FILTER_1ms
DAPI_CNT48_FILTER_2_5ms
DAPI_CNT48_FILTER_5ms

 

Bemerkung

Dieser Befehl wird nur von unserem Modul RO-CNT8 unterstützt.

 

Programmierbeispiel

DapiCnt48ModeSet(handle, 0, DAPI_CNT48_MODE_COUNT_RISING_EDGE | DAPI_CNT48_SUBMODE_RESET_WITH_READ | DAPI_CNT48_FILTER_20ns);
//Eingangszählerkanal 0 zählt alle Impulse <= 20ns bei steigender Flanke. Zusätzlich wird der Zähler nach Abfrage resettet.
DapiCnt48ModeSet(handle, 1, DAPI_CNT48_MODE_COUNT_RISING_EDGE | DAPI_CNT48_SUBMODE_RESET_ON_CH_7 | DAPI_CNT48_FILTER_500us);
//Eingangszählerkanal 1 zählt alle Impulse <= 500us bei steigender Flanke. Dieser Zähler kann mit einem externen Signal (ch7 = 1) resettet werden.
DapiCnt48ModeSet(handle, 2, DAPI_CNT48_MODE_PWM | DAPI_CNT48_FILTER_5ms);
//Eingangszählerkanal 2 misst alle low-/high Zeiten <= 5ms. Anschließend wird das Verhältnis bestimmt (PWM).

DapiCnt48ModeGet
Dieser Befehl liest den Zählmodus eines bestimmten Eingangszählerkanals zurück.

DapiCnt48ModeGet

 

Beschreibung

Dieser Befehl liest den Zählmodus eines bestimmten Eingangszählerkanals zurück.

 

Definition

ULONG DapiCnt48ModeGet(ULONG handle, ULONG ch);

 

Parameter

handle=Dies ist das Handle eines geöffneten Moduls
ch=Nummer des Eingangszählerkanals, dessen Modus ausgegeben werden soll (0, 1, 2, 3, .. )

 

Return-Wert

Zählmodus des Eingangszählerkanals.
(Nähere Informationen / Beschreibung der Bits -> siehe delib.h oder Manual „RO-Registerbelegung“)

 

Bemerkung

Dieser Befehl wird nur von unserem Modul RO-CNT8 unterstützt.

 

Programmierbeispiel

value = DapiCnt48ModeGet(handle, 0)
//Gibt den Zählmodus von Eingangszählerkanal 0 zurück
value = DapiCnt48ModeGet(handle, 3)
//Gibt den Zählmodus von Eingangszählerkanal 3 zurück

DapiCnt48CounterGet32
Dieser Befehl liest die ersten 32 Bit eines 48 Bit Eingangszählers.

DapiCnt48CounterGet32

 

Beschreibung

Dieser Befehl liest die ersten 32 Bit eines 48 Bit Eingangszählers.

 

Definition

ULONG DapiCnt48CounterGet32(ULONG handle, ULONG ch);

 

Parameter

handle=Dies ist das Handle eines geöffneten Moduls
ch=Gibt die Nummer des Eingangszählerkanals an, der gelesen werden soll (0, 1, 2, 3, .. )

 

Return-Wert

Ausgabe des Zählerwertes.

 

Bemerkung

Dieser Befehl wird nur von unseren Modulen RO-CNT8 und RO-CNT/IGR unterstützt.

 

Programmierbeispiel

value = DapiCnt48CounterGet32(handle, 0);
//gibt den Wert von Eingangszählerkanal 0 aus
value = DapiCnt48CounterGet32(handle, 3);
//gibt den Wert von Eingangszählerkanal 3 aus

DapiCnt48CounterGet48
Dieser Befehl liest einen 48 Bit Zähler eines Eingangszählerkanals.

DapiCnt48CounterGet48

 

Beschreibung

Dieser Befehl liest einen 48 Bit Zähler eines Eingangszählerkanals.

 

Definition

ULONGLONG DapiCnt48CounterGet48(ULONG handle, ULONG ch);

 

Parameter

handle=Dies ist das Handle eines geöffneten Moduls
ch=Gibt die Nummer des Eingangszählerkanals an, der gelesen werden soll (0, 1, 2, 3, .. )

 

Return-Wert

Ausgabe des Zählerwertes.

 

Bemerkung

Dieser Befehl wird nur von unseren Modulen RO-CNT8 und RO-CNT/IGR unterstützt.

 

Programmierbeispiel

value = DapiCnt48CounterGet48(handle, 0);
//gibt den Wert von Eingangszählerkanal 0 aus
value = DapiCnt48CounterGet48(handle, 3);
//gibt den Wert von Eingangszählerkanal 3 aus

DapiSpecialCommand - DapiSpecialDIFilterValueSet
Dieser Befehl setzt einen Filter [ms], in welchem Zeitintervall digitale Eingangskanäle abgetastet werden

DapiSpecialCommand – Dapi_Special_DI_Filter_Value_Set

 

Beschreibung

Dieser Befehl setzt einen Filter [ms], in welchem Zeitintervall digitale Eingangskanäle abgetastet werden.

 

Definition

DapiSpecialCommand(handle, DAPI_SPECIAL_CMD_DI, DAPI_SPECIAL_DI_FILTER_VALUE_SET, ULONG time_ms, 0);

 

Parameter

handle=Dies ist das Handle eines geöffneten Moduls
time_ms=Zeitintervall [ms], indem digitale Eingangskanäle abgetastet werden.

 

Bemerkung

Dieser Befehl unterstützt nur Impulszeiten zwischen 5ms und 255ms.
Wird keine Zeit gesetzt, ist der Default-Wert 100ms.
Dieser Befehl wird nicht von unseren Modulen mit Ethernet-Schnittstelle unterstützt

 

Programmierbeispiel

DapiSpecialCommand(handle, DAPI_SPECIAL_CMD_DI, DAPI_SPECIAL_DI_FILTER_VALUE_SET, 5, 0);
// Setzt das Zeitintervall auf 5ms
DapiSpecialCommand(handle, DAPI_SPECIAL_CMD_DI, DAPI_SPECIAL_DI_FILTER_VALUE_SET, 150, 0);
// Setzt das Zeitintervall auf 150ms

DapiSpecialCommand - DapiSpecialDIFilterValueGet
Dieser Befehl gibt den vorher festgelegten Wert des Zeitintervalls zur Abtastung der digitalen Eingangskanäle in [ms] zurück

DapiSpecialCommand – Dapi_Special_DI_Filter_Value_Get

 

Beschreibung

Dieser Befehl gibt den vorher festgelegten Wert des Zeitintervalls zur Abtastung der digitalen Eingangskanäle in [ms] zurück.

 

Definition

ULONG DapiSpecialCommand(handle, DAPI_SPECIAL_CMD_DI, DAPI_SPECIAL_DI_FILTER_VALUE_GET, 0, 0);

 

Parameter

handle=Dies ist das Handle eines geöffneten Moduls

 

Return-Wert

Zeit [ms]

 

Bemerkung

Dieser Befehl wird nicht von unseren Modulen mit Ethernet-Schnittstelle unterstützt.

 

Programmierbeispiel

value = DapiSpecialCommand(handle, DAPI_SPECIAL_CMD_DI, DAPI_SPECIAL_DI_FILTER_VALUE_GET, 0, 0);
//Gibt das Zeitintervall zum Abtasten der digitalen Eingangskanäle zurück.

DapiSpecialCommand - Dapi_Special_DI_FF_Filter_Value_Set
Dieser Befehl setzt einen Filter [ms], in welchem Zeitintervall die Eingangs-Flip-Flops und die Eingangs-Zähler abgefragt werden

DapiSpecialCommand – Dapi_Special_DI_FF_Filter_Value_Set

 

Beschreibung

Dieser Befehl setzt einen Filter [ms], in welchem Zeitintervall die Eingangs-Flip-Flops und die Eingangs-Zähler abgefragt werden.

 

Definition

void DapiSpecialCommand(handle, DAPI_SPECIAL_CMD_DI, DAPI_SPECIAL_DI_FF_FILTER_VALUE_SET, ULONG time_ms, 0);

 

Parameter

handle=Dies ist das Handle eines geöffneten Moduls
time_ms=Zeitintervall [ms], indem digitale Eingangskanäle abgetastet werden.

 

Bemerkung

Dieser Befehl unterstützt nur Impulszeiten zwischen 5ms und 255ms.
Wird keine Zeit gesetzt, ist der Default-Wert 100ms.

 

Dieser Befehl wird nicht von unseren Modulen mit Ethernet-Schnittstelle unterstützt.

 

Programmierbeispiel

DapiSpecialCommand(handle, DAPI_SPECIAL_CMD_DI, DAPI_SPECIAL_DI_FF_FILTER_VALUE_SET, 5, 0);
// Setzt das Zeitintervall auf 5ms
DapiSpecialCommand(handle, DAPI_SPECIAL_CMD_DI,
DAPI_SPECIAL_DI_FF_FILTER_VALUE_SET, 150, 0);
// Setzt das Zeitintervall auf 150ms

DapiSpecialCommand - Dapi_Special_DI_FF_Filter_Value_Get
Dieser Befehl gibt den vorher festgelegten Wert des Zeitintervalls zur Abtastung der Eingangs-Flip-Flops und der Eingangs-Zähler in [ms] zurück

DapiSpecialCommand – Dapi_Special_DI_FF_Filter_Value_Get

 

Beschreibung

Dieser Befehl gibt den vorher festgelegten Wert des Zeitintervalls zur Abtastung der Eingangs-Flip-Flops und der Eingangs-Zähler in [ms] zurück.

 

Definition

ULONG DapiSpecialCommand(handle, DAPI_SPECIAL_CMD_DI, DAPI_SPECIAL_DI_FF_FILTER_VALUE_GET, 0, 0);

 

Parameter

handle=Dies ist das Handle eines geöffneten Moduls

 

Return-Wert

Zeit [ms]

 

Bemerkung

Dieser Befehl wird nicht von unseren Modulen mit Ethernet-Schnittstelle unterstützt.

 

Programmierbeispiel

value = DapiSpecialCommand(handle, DAPI_SPECIAL_CMD_DI, DAPI_SPECIAL_DI_FF_FILTER_VALUE_GET, 0, 0);
//Gibt das Zeitintervall zum Abtasten der digitalen Eingangskanäle zurück.

DapiSpecialCommand - DapiSpecialCNT48LatchGroup8
Dieser Befehl speichert die Zählerstände von 8 Eingangszähler gleichzeitig in ein Zwischenspeicher (Latch). So können anschließend alle Zählerstände des Latches nacheinander ausgelesen werden. Besonderheit hierbei ist, dass ein gleichzeitiges "Einfrieren" der Zählerstände möglich ist und die eingefrorenen Stände (Latch) dann (langsam) einzeln nacheinander ausgelesen werden können.

DapiSpecialCommand – DapiSpecialCNT48LatchGroup8

 

Beschreibung

Dieser Befehl speichert die Zählerstände von 8 Eingangszähler gleichzeitig in ein Zwischenspeicher (Latch).
So können anschließend alle Zählerstände des Latches nacheinander ausgelesen werden.
Besonderheit hierbei ist, dass ein gleichzeitiges „Einfrieren“ der Zählerstände möglich ist und die eingefrorenen Stände (Latch) dann (langsam) einzeln nacheinander ausgelesen werden können.

 

Definition

void DapiSpecialCommand(ULONG handle, DAPI_SPECIAL_CMD_CNT48, DAPI_SPECIAL_CNT48_LATCH_GROUP8, ULONG ch, 0)

 

Parameter

handle=Dies ist das Handle eines geöffneten Moduls
ch=Gibt die Nummer des Eingangszählers an, ab dem die Zählerstande von 8 Eingangszählern gelatched werden (0, 8, 16, …)

 

Bemerkung

Dieser Befehl wird nur von unserem Modul RO-CNT8 unterstützt.

Bitte beachten Sie, dass nur die Zählerstände der Eingangszähler gelatched werden, bei denen zuvor der Modus

„DAPI_CNT48_SUBMODE_LATCH_COMMON“ gesetzt wurde. (-> DapiCnt48ModeSet)

 

Programmierbeispiel

DapiSpecialCommand(handle, DAPI_SPECIAL_CMD_CNT48, DAPI_SPECIAL_CNT48_LATCH_GROUP8, 0, 0)
// Zählerstände der Eingangszähler 0-7 werden gelatched
DapiSpecialCommand(handle, DAPI_SPECIAL_CMD_CNT48, DAPI_SPECIAL_CNT48_LATCH_GROUP8, 8, 0)
// Zählerstände der Eingangszähler 8-15 werden gelatched

DapiSpecialCommand - DapiSpecialCNT48ResetGroup8
Dieser Befehl resettet gleichzeitig die Zählerstände von 8 Eingangszählern.

DapiSpecialCommand – DapiSpecialCNT48ResetGroup8

 

Beschreibung

Dieser Befehl resettet gleichzeitig die Zählerstände von 8 Eingangszählern.

 

Definition

void DapiSpecialCommand(ULONG handle, DAPI_SPECIAL_CMD_CNT48, DAPI_SPECIAL_CNT48_RESET_GROUP8, ULONG ch, 0)

 

Parameter

handle=Dies ist das Handle eines geöffneten Moduls
ch=Gibt die Nummer des Eingangszählers an, ab dem die Zählerstande von 8 Eingangszählern resettet werden (0, 8, 16, …)

 

Bemerkung

Dieser Befehl wird nur von unserem Modul RO-CNT8 unterstützt.

 

Programmierbeispiel

DapiSpecialCommand(handle, DAPI_SPECIAL_CMD_CNT48, DAPI_SPECIAL_CNT48_RESET_GROUP8, 0, 0)
// Zählerstände der Eingangszähler 0-7 werden resettet
DapiSpecialCommand(handle, DAPI_SPECIAL_CMD_CNT48, DAPI_SPECIAL_CNT48_RESET_GROUP8, 8, 0)
// Zählerstände der Eingangszähler 8-15 werden resettet

DapiSpecialCommand - DapiSpecialCNT48ResetSingle
Dieser Befehl resettet den Zählerstand eines einzelnen Eingangszählers.

DapiSpecialCommand – DapiSpecialCNT48ResetSingle

 

Beschreibung

Dieser Befehl resettet den Zählerstand eines einzelnen Eingangszählers.

 

Definition

void DapiSpecialCommand(ULONG handle, DAPI_SPECIAL_CMD_CNT48, DAPI_SPECIAL_CNT48_RESET_SINGLE, ULONG ch, 0)

 

Parameter

handle=Dies ist das Handle eines geöffneten Moduls
ch=Gibt die Nummer des Eingangszählers an, dessen Zählerstand resettet werden soll (0, 1, 2, ..)

 

Bemerkung

Dieser Befehl wird nur von unserem Modul RO-CNT8 unterstützt.

 

Programmierbeispiel

DapiSpecialCommand(handle, DAPI_SPECIAL_CMD_CNT48, DAPI_SPECIAL_CNT48_RESET_SINGLE, 0, 0)
// Zählerstand von Eingangszähler 0 wird resettet
DapiSpecialCommand(handle, DAPI_SPECIAL_CMD_CNT48, DAPI_SPECIAL_CNT48_RESET_SINGLE, 1, 0)
// Zählerstand von Eingangszähler 1 wird resettet

DapiSpecialCommand - DapiSpecialCNT48DIGet1
Dieser Befehl liest den Eingangszustand (0/1) eines digitalen Eingangszählerkanals.

DapiSpecialCommand – DapiSpecialCNT48DIGet1

 

Beschreibung

Dieser Befehl liest den Eingangszustand (0/1) eines digitalen Eingangszählerkanals.

 

Definition

ULONG DapiSpecialCommand(ULONG handle, DAPI_SPECIAL_CMD_CNT48, DAPI_SPECIAL_CNT48_DI_GET1, ULONG ch, 0);

 

Parameter

handle=Dies ist das Handle eines geöffneten Moduls
ch=Gibt die Nummer des Eingangszählerkanals an, dessen Eingangszustand gelesen werden soll (0, 1, 2, 3, .. )

 

Return-Wert

Zustand des Eingangszählers (0/1)

 

Bemerkung

Dieser Befehl wird nur von unserem Modul RO-CNT8 unterstützt.

 

Programmierbeispiel

value = DapiSpecialCommand(handle, DAPI_SPECIAL_CMD_CNT48, DAPI_SPECIAL_CNT48_DI_GET1, 0, 0)
// Liest Eingangszustand von Eingangszählerkanal 1
value = DapiSpecialCommand(handle, DAPI_SPECIAL_CMD_CNT48, DAPI_SPECIAL_CNT48_DI_GET1, 1, 0)
// Liest Eingangszustand von Eingangszählerkanal 2

In dem Blockschaltbild wird deutlich, wie das Modul an den PC angeschlossen wird.

USB-TTL-32

Anschlussbeispiel TTL Input

Anschlussbeispiel

Anschlussbeispiel TTL Output

Anschlussbeispiel

Manual

Handbuch USB-TTL-32 / USB-TTL-64
Hardware- und Software-Beschreibung
Download

Softwarepakete ICT-Tool / DELIB-Treiberbibliothek

Manual des Softwarepakets (ICT-Tool + DELIB)
Dokumentation des ICT-Tools und aller Befehle der Treiberbibliothek
Download
  • Windows 11/10, 8, Vista, 7, XP, 2000 und Linux
  • Modul open/close Funktionen
  • Digitale Eingänge: Lesen von 1 / 8 / 16 / 32 / 64 bit
  • Digitale Ausgänge: Schreiben von 1 / 8 / 16 / 32 / 64 bit
  • A/D Lesen: read, read_volt, read_mA, set A/D mode
  • D/A schreiben: write, write_volt, write_mA, set D/A mode
64-Bit Softwarepaket (ICT-Tool + DELIB) für Windows
Für Windows 11/10, Windows 7, Windows 8, Vista, XP und 2000
Download

Softwarepaket für die 64-Bit Version des ICT-Tools und der DELIB Treiberbibliothek.

Die folgenden Betriebssysteme sind kompatibel:
64-Bit

  • Windows 11/10 x64
  • Windows 7 x64
  • Windows 8 x64
  • Windows Server 2012 x64
  • Windows Server 2008 x64
  • Windows Vista x64
  • Windows XP x64
  • Windows Server 2003 x64

Mitgelieferte Software

ICT-Tool x64

  • Software um DEDITEC Modul auf den neusten Stand zu bringen
  • Konfiguration von Moduladressen einstellen
  • Konfiguration von Moduladressen einstellen
  • Konfiguration von modulspezifischen Einstellungen
  • Konfiguration von CAN Modulen einstellen
  • Ermöglicht manuelles Schalten eines Moduls
  • Konfiguration eines Watchdog-Sticks einstellen

ersetzt folgende Software

  • Watchdog Configuration Utility x64
  • DT-Flasher x64
  • DELIB Module Demo x64
  • CAN Configuration Utility x64
  • DELIB Module Config x64
  • DELIB Configuration Utility x64

DELIB Command Line Interface x64
Ermöglicht das Ausführen von DELIB-Befehlen in der Kommandozeile

32-Bit Softwarepaket (ICT-Tool + DELIB) für Windows
Für Windows 11/10, Windows 7, Windows 8, Vista, XP und 2000
Download

Softwarepaket für die 32-Bit Version des ICT-Tools und der DELIB Treiberbibliothek.

Die folgenden Betriebssysteme sind kompatibel:
32-Bit

    • Windows 11/10
    • Windows 7
    • Windows 8
    • Windows Server 2012
    • Windows Server 2008
    • Windows Vista
    • Windows XP
    • Windows Server 2003

64-Bit

  • Windows 11/10 x64
  • Windows 7 x64
  • Windows 8 x64
  • Windows Server 2012 x64
  • Windows Server 2008 x64
  • Windows Vista x64
  • Windows XP x64
  • Windows Server 2003 x64

Mitgelieferte Software

ICT-Tool x32

  • Software um DEDITEC Modul auf den neusten Stand zu bringen
  • Konfiguration von Moduladressen einstellen
  • Konfiguration von Moduladressen einstellen
  • Konfiguration von modulspezifischen Einstellungen
  • Konfiguration von CAN Modulen einstellen
  • Ermöglicht manuelles Schalten eines Moduls
  • Konfiguration eines Watchdog-Sticks einstellen

ersetzt folgende Software

  • Watchdog Configuration Utility
  • DT-Flasher
  • DELIB Module Demo
  • CAN Configuration Utility
  • DELIB Module Config
  • DELIB Configuration Utility

Achtung:

Mit dieser Version der Treiberbibliothek können nur 32-Bit Anwendungen erstellt werden, die dann auf 32- und 64-Bit Systemen ausgeführt werden können.

DELIB Treiberbibliothek für Linux (32/64-Bit)
Für 32/64-Bit Linux-Distributionen ab Kernel 2.6.x
Download

DELIB Treiberbibliothek für Linux-Distributionen (32/64-Bit) ab Kernel 2.6.x

Dieses Treiberpaket beinhaltet folgende Komponenten

  • DELIB USB Treiber
  • DELIB Ethernet Treiber
  • DELIB CLI

DELIB USB Treiber

Unterstützung für folgende Produkte:

  • NET-Serie (über USB Schnittstelle)
  • RO-USB-Serie
  • BS-USB-Serie
  • USB-Mini-Sticks
  • USB-Watchdog
  • USB-OPTION-8 / USB-RELAIS-8
  • USB-TTL-32 / USB-TTL-64

Hinweis:

Mit der Standard Ausführung des USB Treibers können mehrere USB Produkte mit unterschiedlichen Modul-IDs (z.B. ein RO-USB und ein USB-OPTOIN-8) angesprochen werden. Hierbei ist keine weitere Treiberinstallation erforderlich.

Wenn mehrere USB Produkte mit gleicher Modul-ID (z.B. ein USB-OPTOIN-8 und ein USB-RELAIS-8) angesprochen werden sollen, muss zusätzlich der Linux FTDI-Treiber installiert sein. Den FTDI-Treiber finden Sie unter http://www.ftdichip.com.

DELIB Ethernet Treiber

Unterstützung für folgende Produkte:

  • NET-Serie (über Ethernet Schnittstelle)
  • RO-ETH-Serie
  • RO-ETH/LC-Serie
  • BS-ETH-Serie
  • ETH-OPTION-8 / ETH-RELAIS-8
  • ETH-TTL-64

DELIB CLI

Mit dem DELIB CLI (Command Line Interface) für Linux können alle Befehle für digitale und analoge I/Os direkt über die Kommando-Zeile gesetzt werden

Download

Hardware-Updates (Firmware-Flashfile-Paket)
Firmware-Flashfile-Paket für das ICT-Tool
Download

Das Firmware-Flashfile-Paket kann auch direkt im ICT-Tool heruntergeladen werden.

Dieses Paket enthält Firmware Dateien für die folgenden Serien:

  • STARTER-Serie
  • BS-Serie
  • RO-Serie
  • NET-Serie
  • UC-Serie
  • CAN-IO-Box
  • Entwicklungszubehör

Privat: DEDITEC Treiber CD

DEDITEC Treiber CD mit vielen hilfreichen Tools und Handbüchern zur Inbetriebnahme Ihrer DEDITEC Produkte.

  • DELIB Treiberbibliothek für Windows
  • Test- und Konfigurationssoftware
  • Handbücher
  • Datenblätter
  • Beispielprogramme für C++, C#, VB, VB.Net, Delphi, LabVIEW

USB Kabel

  • Typ: Stecker A auf Stecker B
  • Länge: 1,8m

USB-Watchdog-Stick mit 2 Relais für Schaltvorgänge

[ref type="prod-group-kurzbeschr-converter"]

Dieser USB-WATCHDOG-STICK überwacht Ihren Steuerungs PC oder Server und kann im Falle eines Programmabsturzes selbstständig einen Reset der Hardware durchführen. Integrieren Sie einfach die Funktion des Watchdog Sticks in Ihre Applikation. Sobald eine Zeitüberschreitung auftritt und der Watchdog Stick nicht mehr periodisch zurückgesetzt wird, werden die beiden Relaisausgänge durchgeschaltet. Mit einer entsprechenden Anschlussverkabelung könnte bspw. der PC-Reset betätigt werden, ein externes SMS-Modem kann Warnungen versenden oder eine angeschlossene Sirene signalisiert einen Alarm. Mit Hilfe unseres kostenlosen Konfigurationstools können Sie definieren, auf welche Art und Weise die Relais im Fehlerfall schalten sollen.

  • USB 2.0 / USB 1.1 Interface
  • Watchdog Funktion
  • Überwachung Ihres Steuer PCs oder Servers
  • Timeoutzeiten von 10ms bis 10h einstellbar
  • Windows Watchdog API
  • 2 Schließer Relais (NO)
  • Anschlusskabel mit DSUB9 Buchse (ca. 1,8m)

Netzteil 24V/2A für Hutschienenmontage

Das DR-4524 von Mean Well ist ein 48W Netzteil zur Hutschienenmontage für industrielle Anwendungen. Es bietet Schutz vor Kurzschluss, Überlast, Überspannung und Überhitzung.

  • Eingangsspannungsbereich: 85V.. 264V AC / 120V DC .. 370V DC
  • Ausgangsspannung: 24V DC
  • Ausgangsstrom: 2A
  • Nennleistung: 48W

Hutschiene

Hutschiene zur Montage unserer Steuer/Regeltechnik-Module.

  • Hutschiene nach DIN EN 50022
  • Typ: Phoenix Contact / 1208131
  • Abmessungen in mm: 450 x 35 x 7,5 (L x B x H)

Bewertungen

Es gibt noch keine Bewertungen.

Schreibe die erste Bewertung für „USB-TTL Modul mit 32/64 TTL-I/O“

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert

Nutzen Sie unsere Vorteile

DEDITEC Logo

Lebenslange
Updates

Kostenlose Soft- & Hardware(Firmware)-Updates.
Genießen Sie unseren lebenslangen Update-Service.

DEDITEC Logo

5 Jahre
Lieferverfügbarkeit

Wir bieten für unsere Produkte mindestens 5 Jahre Lieferverfügbarkeit.
Unsere Erfahrung zeigt dass es sogar ungefähr 10 Jahre sind.

DEDITEC Logo

Fragen zum Produkt? Produktberatung

Haben Sie vor dem Kauf noch technische oder kaufmännische Fragen zum Produkt?
Kontaktieren Sie uns dazu gerne vorab.

DEDITEC Logo

Kunden-
Modifikationen

Unsere Produkte dienen oft als Basis für Kundenspeziallösungen.
Sprechen Sie uns einfach an.

DEDITEC Logo

Wir sind
Immer für Sie da!

Seit der Gründung 2008 ist Dipl. Ing. Jürgen Siebert Geschäftsführer der DEDITEC GmbH. Gerne berät er Sie auch persönlich.

DEDITEC LogoProdukt- & Service-Hotline: +49 (0) 22 32 / 50 40 8 – 40 DEDITEC LogoFragen zum Produkt oder zur Bestellung: support@deditec.de