Angewandte Informationstechnologie

Größe: px
Ab Seite anzeigen:

Download "Angewandte Informationstechnologie"

Transkript

1 Angewandte Informationstechnologie IO rojekte mit der USB Schnittstelle Einführung in die Elektronik Dr. Leander Brandl 29 it.brgkepler.at

2 IO rojekte mit der USB Schnittstelle Inhalt Die USB Schnittstelle...3 Kommunikation zwischen Computern und USB Geräten...3 Verbindung zwischen USB Geräten... 3 Steckverbindungen...3 Serielle Übertragung...4 Selbstbau von Schaltungen mit einer USB Schnittstelle... 5 Der IO Warrior...6 Funktionsumfang und Eigenschaften... 6 Anschlussbelegung... 7 Grundschaltung... 8 Bauplan und Materialliste... 8 Erstellung eigener Software für den IO Warrior... Anwendung Erste Verbindung mit dem IO Warrior IOW_Verbindung... 3 Einlesen von Schaltzuständen rinzip einer Halbleiterdiode Grundschaltung zum Schutz der Eingänge... 3 Seite 2

3 IO rojekte mit der USB Schnittstelle Die USB Schnittstelle. Kommunikation zwischen Computern und USB Geräten Der USB (Universal Serial Bus) ist ein Bus mit nur einem Master, von dem alle Aktivitäten ausgehen. Der Master (Computer) kann Daten zu einem USB Gerät senden oder Daten von einem solchen anfordern. Kein USB Gerät kann Daten von sich aus an den Master oder andere USB Geräte absenden!.2 Verbindung zwischen USB Geräten Die Verbindung zwischen dem Master und einem USB Gerät erfolgt durch ein 4 poliges, geschirmtes Kabel. Darin befinden sich zwei Leitungen für die Spannungsversorgung (Vcc +5V und GND) und zwei Datenleitungen (Data+ und Data ). Die beiden Datenleitungen sind verdrillt um eingestrahlte Störungen weitestgehend zu eliminieren. In der folgenden Abbildung ist der Aufbau einer USB Kabelverbindung grafisch dargestellt: Vcc +5V Data Data + GND Schirm Abbildung.2. Aufbau einer USB Kabelverbindung.3 Steckverbindungen Für die Verbindung von USB Geräten kommen genormte Steckverbindungen zum Einsatz. Diese sind verpolungs und vertauschungssicher gestaltet. Es wird zwischen zwei unterschiedlichen Bauarten unterschieden: in Richtung eines Hostcontrollers (meist der USB Anschluss eines Computers) werden Stecker mit der Bezeichnung Typ A verwendet, verbundene Geräte werden mit einem Stecker der Bezeichnung Typ B angeschlossen Stecker Typ A Data (WEISS) 3 4 Buchse Typ A Buchse Typ B Stecker Typ B Vcc +5V (ROT) 2 3 Data + (GRÜN) 4 GND (SCHWARZ) Abbildung.3. Typen und Anschlussbelegung von USB Steckern und Buchsen Seite 3

4 IO rojekte mit der USB Schnittstelle.4 Serielle Übertragung Datenpakete Daten werden in aketen zu 8 Bytes oder bis zu 256 Bytes versandt und empfangen. Der gesamte Datenverkehr erfolgt in einem Rahmen von exakt einer Millisekunde. Innerhalb eines Rahmens können Datenpakete für mehrere Geräte verarbeitet werden. Datenpaket Datenpaket Datenpaket ms Abbildung.4. Datenpakete bei der Datenübertragung über den Universal Serial Bus Lowspeed und Highspeed Übertragung Die übertragenen Datenpakete können als Lowspeed oder Fullspeed Signale übertragen werden. Die Datenrate bei einer Lowspeed Verbindung beträgt,5 MBit/s daraus ergibt sich die Länge für ein Bit von 666,7 ns. Bei einer Fullspeed Verbindung erhält man eine Datenrate von 2 MBit/s, woraus sich eine Länge von 83,33 ns für ein Bit ergibt. Schnittstellen nach dem USB 2. Standard bieten weiters eine Highspeed Verbindung mit 48 MBit/s an. Spannung U Data + + 3,3 V V 666,7 ns Zeit t Data Spannung U Data + + 3,3 V V 83,33 ns Zeit t Data Abbildung.4.2 Datensignale einer Lowspeed und einer Fullspeed Verbindung Seite 4

5 IO rojekte mit der USB Schnittstelle Datenübertragung über das USB rotokoll Im Gegensatz zu früher verwendeten Schnittstellen werden die Daten nicht mehr direkt über die Schnittstellenelektronik an das angeschlossene Gerät übermittelt, sondern mit Hilfe eines speziellen rotokolls übertragen. Dazu wird beim Sender (Computer), wie auch beim Empfänger (z. B. Drucker) ein Mikroprozessor benötigt, der die zu übertragenden Daten "einpackt" und nach der Übertragung wieder "auspackt". Dies macht es nicht möglich, entsprechende Baugruppen, wie Relais, Leuchtdioden,... direkt über eine Steuerleitung mit einem Computer zu verbinden, wie dies zum Beispiel bei der parallelen Schnittstelle der Fall war. Auf der Seite eines USB Geräts ist zunächst immer ein Decoder von Nöten, der die übermittelten Daten rückübersetzt und die daraus resultierenden elektrischen Signale der weiteren Elektronik zur Verfügung stellt. Data + Dokument, das in einem rogramm erstellt wurde Daten Daten USB ROTOKOLL USB Sender Data Steuerelektronik für Motoren und Druckdüsen USB Empfänger Abbildung.4.3 Datenübertragung über das USB rotokoll.5 Selbstbau von Schaltungen mit einer USB Schnittstelle Für den Selbstbau von elektronischen Schaltungen, die man in Verbindung mit einem Computer betreiben möchte, stellt diese Art der Signalübertragung eine große Hürde dar. Möchte man eigene Schaltungen realisieren, die man über die USB Schnittstelle an einen Computer anschließen möchte, könnte man Mikroprozessoren verwenden, die bereits über USB Anschlüsse verfügen z. B. IC6C745 oder IC6C765 der Firma Microchip. Neben dem Aufbau der zusätzlich benötigten Elektronik für den Empfänger Teil ist in diesen Mikrocontrollern auch noch entsprechende Software zu implementieren, die das USB rotokoll interpretieren kann, die übertragenen Daten aus diesem ausliest und für die angeschlossene Elektronik aufbereitet. Der IO Warrior der Firma Code Mercenaries Eine sehr interessante und kompfortable Lösung stellen die von der Firma Code Mercenaries hergestellten Bauteile mit der Bezeichnung IO Warrior dar. Bei diesen handelt es sich um Mikrocontroller, die bereits vorprogrammiert sind und auf denen die Software zur Auswertung des USB rotokolls bereits implementiert ist. Ein weiteres großes lus dieser Mikrocontroller ist, das für den Betrieb dieser USB Bauteile auf dem jeweiligen Computer keine Treiber installiert werden müssen und diese direkt von der erstellten Applikation heraus angesprochen werden können. Ohne über Administrations Rechte zu verfügen um Treiber installieren zu können, lassen sich selbst entwickelte Schaltungen umgehend in Betrieb nehmen. Weiter Informationen zu diesen Mikrocontrollern sind unter folgender Adresse zu finden: Seite 5

6 IO rojekte mit der USB Schnittstelle 2. Der IO Warrior Einfache Bauteile wie Relais oder Schalter an einen Computer anschließen? Dies ist seit dem seriellen und parallelen Schnittstellen alles andere als einfach. Als Standard für die Verbindung zu hat sich der USB (Universal Serial Bus) durchgesetzt. Diesen für einfache Selbstbau rojekte zu großen Aufwand dar und setzt umfangreiches Wissen in der rogrammierung von Mikrocontrollern sich der eigentlichen Aufgabe der selbstgebauten IO Schaltung zuwenden kann. Verschwinden von externer Hardware nutzen stellt einen voraus, bevor man USB zu Seriell oder USB zu arallel Adapter stellen auch keine gute Alternative dar, da diese meist über Treiber in das System als virtuelle Geräte eingebunden werden und nicht direkt über die entsprechenden Hardware Adressen angesprochen werden können, wie es bei einer "echten" seriellen oder parallelen Schnittstelle der Fall war. Vor einigen Jahren hat die Firma Code Mercenaries als Lösung all dieser robleme vorprogrammierte Mikrocontroller mit der Bezeichnung IOWarrior auf den Markt gebracht. Diese sind in drei unterschiedlichen Varianten mit unterschiedlichem Funktionsumfang erhältlich: IOWarrior24, IOWarrior4 und IOWarrior56 Nicht zuletzt stellen diese Bauteile eine gute Variante für den Selbstbau von elektronischen Schaltungen aufgrund der traditionellen Bauform dar in der diese erhältlich sind. Durch die Miniaturisierung und industrielle Fertigung von Leiterplatten sind die meisten Mikrocontroller mit USB Schnittstelle nur in SMD Bauform erhältlich, was den Einsatz bei Selbstbau Schaltungen zum Beispiel auf Lochrasterplatinen so gut wie unmöglich macht. Betrieb ohne die Installation von Treibern Werden die IOWarrior über die USB Schnittstelle an einen Computer angeschlossen, so können diese ohne die Installation von Software Treibern in Betrieb genommen werden. Diese Mikrocontroller melden sich am Betriebssystem als HID (Human Interface Device z. B. Tastatur oder Joystick) an die entsprechenden Treiber sind bereits standardmäßig in allen Betriebssystemen vorhanden. Einfache Implementierung bei der rogrammierung eigener Anwendungen Begleitend zu der Software, die auf den Mikrocontrollern installiert ist, bietet Code Mercenaries eine Funktionsbibliothek (iowkit.dll) an, die Funktionen für die Ansteuerung der IO Warrior Chips zur Verfügung stellt und in allen gängigen Entwicklungsumgebungen mit den rogrammiersprachen C++, Delphi, VisualBasic oder C# verwendet werden kann. Weiters wurde bei der Entwicklung auf die Betriebssystem Unabhängigkeit geachtet und so stehen diese Funktionsbibliothek, wie einige rogrammierbeispiele auch für MacOS und Linux zur Verfügung. Testanwendung AllInOne Zum Testen eigener Schaltungen steht ein frei erhältliches rogamm zur Verfügung, das den vollen Funktionsumfang aller drei Varianten des IOWarriors unterstützt. Dieses steht unter folgender Adresse zum Donwload bereit: dud.de Abbildung 2.. Screenshot der Testanwendung AllInOne 2. Funktionsumfang und Eigenschaften Bei den hier vorgestellten rojekten kommt der IOWarrior24 zum Einsatz. Dieser besitzt 6 als Ein oder Ausgang programmierbare ins und benötigt in der Grundschaltung nur drei zusätzliche Bauteile um in Betrieb genommen zu werden. Hier der Funktionsumfang des IOWarrior24: 6 Ein oder Ausgänge mit 25Hz Leserate Stromversorgung bis 5mA aus dem USB vollständig implementiertes USB rotokoll keine Treiberinstallation erforderlich Funktionsbibliothek für einfache Integration in eigene Software Detaillierte Informationen, Datenblätter und rogrammierbeispiele werden unter folgender Adresse zum Download zur Verfügung gestellt: Seite 6

7 IO rojekte mit der USB Schnittstelle 2.2 Anschlussbelegung Der IOWarrior24 wird in einem 24 poligen Gehäuse mit der Bezeichnung DIL24 ausgeliefert. Die Nummerierung der ins eines solchen Bausteins beginnt in der Draufsicht links neben der Einkerbung und setzt sich gegen den Uhrzeigersinn bis zum letzten in fort (siehe Darstellung). Ein und Ausgänge Deutlich erkennbar sind die 6 ins, die als Ein oder Ausgang konfiguriert werden können. Diese sind zu zwei orts (ort und ort ) zusammengefasst, von denen jeder 8 Bits umfasst, welche den 8 ins eines orts entsprechen (ort. ort.7). USB Anschluss Die vier Leitungen des USB können direkt an den IO Warrior angeschlossen werden: in 4 Vcc +5V (rot), in 9 GND (schwarz), in 5 Data (weiß) und in 6 Data + (grün). ull To GND in wird nur bei der rogrammierung des Microcontrollers benötigt und ist im laufenden Betrieb auf GND zu legen er ist auf kürzestem Weg mit in 9 zu verbinden. Vreg in stellt eine regulierte Spannung von 3V zur Verfügung. Diese wird benötigt um den ullup Widerstand der Datenleitung Data (weiß) mit Spannung zu versorgen (siehe 2.3 Grundschaltung). ower Mit Hilfe von in 2 wird festgelegt, ob es sich bei diesem USB Gerät um ein Lowower oder um ein Highower Gerät handelt. Meldet sich dieses Gerät am USB Anschluss eines Computers an, so wird dabei festgelegt, wie viel Strom dieses von der USB Schittstelle des Computers maximal entnehmen darf. Wird dieser in mit +5V verbunden (Zustand HIGH), so meldet sich der IO Warrior als Highower Gerät an und darf bis zu 5mA an Strom aus der USB Schnittstelle entnehmen. Setzt man diesen in auf den Zustand LOW (Verbindung mit GND), so wird der IOWarrior als Lowower Gerät erkannt, was bedeutet, dass maximal ma aus der USB Schnittstelle entnommen werden dürfen! Abbildung 2.2. Anschlussbelegung und Bauform des IO Warrior24 Seite 7

8 IO rojekte mit der USB Schnittstelle 2.3 Grundschaltung Um den IOWarrior24 in Betrieb zu nehmen, muss dieser mit nur drei externen Bauteilen beschaltet werden. Zum Verhindern undefinierter Zustände wird die Datenleitung Data (weiß) über einen sogennanten ullup Widerstand mit dem in Vreg verbunden, der eine Spannung von 3V liefert. Die Kondensatoren dienen dazu um vom IOWarrior24 erzeugte Störungen abzufangen. Da elektronische Bauteile dieser Art die unangenehme Eigenschaft haben bei Schaltvorgängen hohe Stromspitzen zu ziehen, muss die Versorgungsspannung gut entkoppelt werden. Wird dies nicht gemacht, so kann es zur Abstrahlung von Störungen oder zu Funktionsstörungen des IOWarrior24 kommen. C nf 4 Vcc J USB +5V 2 D 3 D+ 4 GND IO WARRIOR24 2 ower Vreg R,3kΩ 5 D 6 D+ 3 NC ulltognd GND C2 μf Abbildung 2.3. Schaltplan für die Grundschaltung des IOWarrior Bauplan und Materialliste Der Aufbau der hier vorgestellten Schaltungen erfolgt auf einer Lochrasterplatine. Für den Anschluss an einen Computer kommt eine USB Buchse Typ B zum Einsatz. Der IOWarrior24 wird nicht direkt auf der latine verlötet, sondern nach Fertigstellung der Lötarbeiten in einen Sockel eingesetzt. Materialliste: Lochrasterplatine cm x 6cm IC Sockel 24 polig USB Buchse Typ B printbar Steckleiste 3 polig Jumper J Widerstand,3kΏ R Kondensator nf C Elektrolyt Kondensator μf C2 IOWarrior24 Abbildung 2.4. Bestückungs und Leiterbahnansicht der Grundschaltung des IOWarrior24 Seite 8

9 IO rojekte mit der USB Schnittstelle C nf J R,3kΩ C2 μf Abbildung Gesamtansicht der Lochrasterplatine mit der Grundschaltung des IOWarrior24 C nf J R,3kΩ C2 μf Ansicht oben Bauteilseite Ansicht unten Kupferseite Abbildung Bauplan Gundschaltung Bauteilseite und Kupferseite Seite 9

10 IO rojekte mit der USB Schnittstelle 2.5 Erstellung eigener Software für den IOWarrior Entwicklungsumgebung SharpDevelop 3 Die Erstellung der Software für die jeweiligen Schaltungen erfolgt mit der rogrammiersprache C#. Diese ist für die Erstellung von Windows Anwendungen weit verbreitet und ist nicht zuletzt deshalb interessant, weil es dafür die kostenfreie Entwicklungsumgebung SharpDevelop gibt. Die hier erstellten Beispiel rojekte wurden mit SharpDevelop Version 3 erstellt. Diese kann unter der folgenden Adresse aus dem Internet bezogen werden: framework 3.5 Für die Erstellung von Windows Anwendungen mit SharpDevelop, wie auch für die spätere Nutzung der fertigen rogramme ist die Installation des.net framework Version 3.5 Voraussetzung. Dabei handelt es sich um eine Laufzeit Umgebung für Anwendungen, die mit einer.net Entwicklungsumgebung programmiert wurden. Diese steht auf den meisten Windows Cs zur Verfügung. Sollte dies nicht der Fall sein, so kann das.net framework von der Microsoft Webseite heruntergeladen und nachinstalliert werden: iowkit.dll Für die Kommunikation zwischen dem IOWarrior und einer Anwendung bietet die Herstellerfirma dieser Microcontroller die fertige DLL iowkit.dll (Dynamic Link Library Dynamische Laufzeitbibliothek) an, die es sehr einfach macht, die Funktionen dieses Bauteils in eigene rogramme zu implementieren. Die USB Kommunikation wird vollständig von dieser DLL übernommen und man kann sich sofort den eigentlichen rogrammieraufgaben widmen. Diese DLL, wie auch einige Beispielanwendungen für verschiedene Entwicklungsumgebungen und rogrammiersprachen stehen auf der Web Seite von Code Mercenaries zum Download bereit: Zusammengefasset benötigt man:.net framework Version 3.5 (www.microsoft.com) SharpDevelop 3 (www.icsharpcode.net) iowkit.dll (www.codemercs.com) 2.6 Anwendung Erste Verbindung mit dem IO Warrior IOW_Verbindung Das erste rogramm soll die Kommunikation mit einem am Computer angeschlossenen IOWarrior testen und die beiden am IOWarrior gespeicherten Werte roduktid und Seriennummer auslesen. Verwendete Komponenten roduktidlabel (Label) SeriennummerLabel (Label) IdSnButton (Button) Abbildung 2.6. Screenshot der Anwendung IOW_Verbindung Speicherort der iowkit.dll DLLs werden grundsätzlich im Ordner Laufwerk:\Windows\System32 abgelegt. Somit kann ein und dieselbe DLL auch von verschiedenen Anwendungen genutzt werden, die diese benötigen. Alle Anwendungen, die auf eine DLL zugreifen, suchen diese automatisch in dem oben angeführten Verzeichnis. Wenn es nicht möglich ist (weil man zum Beispiel nicht über die notwendigen Rechte verfügt), eine DLL in diesen Ordner zu speichern, so kann eine DLL auch im gleichen Ordner liegen, in dem sich die lauffähige Anwendung (die.exe Datei) befindet. Dieser Weg soll hier eingeschlagen werden. Wird eine fertige Anwendung weitergegeben, so ist natürlich auch die iowkit.dll mitzugeben. Diese muss sich beim Ausführen der Anwenung im selben Ordner wie die Anwendung befinden! Bei der Entwicklung mit SharpDevelop befindet sich die lauffähige Anwendung während der Entwicklungszeit im Ordner Laufwerk:\Anwendung\bin\Debug bzw. im Ornder Laufwerk:\Anwendung\bin\Release. In diesen Ordner muss die iowkit.dll kopiert werden, wenn eine neue Anwendung erstellt wird. Seite

11 IO rojekte mit der USB Schnittstelle Einbinden der Funktionen aus der iowkit.dll Um Funktionen aus einer externen DLL einbinden zu können muss zuerst eine Referenz auf die Klasse System.Runtime.InteropServices hinzugefügt werden. Das Einbinden der Funktionen aus der iowkit.dll erfolgt in der Definition der Klasse des Formulars. Zusätzlich wird noch ein Handle (Englisch für Griff oder Henkel ) definiert. Über diesen Handle jeweiligen Funktionen in der Folge auf den IOWarrior zugreiffen. können die using System; using System. Collections. Generic; using System. Drawing; using System. Windows. Forms; using System. Runtime. InteropServices; namespace IOW_Verbindung /// <summary> /// Description of MainForm. /// </summary> public partial class MainForm : Form // Definition der global verfügbaren Variablen int IowHandle; // Import der benötigten Funktionen aus der iowkit. dll [DllImport("iowkit", SetLastError=true) ] public static extern int IowKitOpenDevice() ; [DllImport("iowkit", SetLastError=true) ] public static extern void IowKitCloseDevice(int iowhandle) ; [DllImport("iowkit", SetLastError=true) ] public static extern short IowKitGetroductId(int iowhandle) ; [DllImport("iowkit", SetLastError=true) ] public static extern bool IowKitGetSerialNumber(int iowhandle, ref short serialnumber) ; public MainForm( ) // The InitializeComponent( ) call is required for Windows Forms designer support. InitializeComponent( ) ; // TODO: Add constructor code after the InitializeComponent( ) call. Quellcode 2.6. Import der benötigten Funktionen aus der iowkit.dll Herstellen der Verbindung zum IOWarrior Die Anwendung soll beim Starten überprüfen, ob ein IOWarrior am Computer angeschlossen wurde. Ist dies der Fall, so wird der Handle dieses IOWarriors ermittelt und in der Variable IowHandle abgelegt. Wurde kein IOWarrior gefunden, so soll dies mit einem entsprechenden Hinweis in einer MessageBox angezeigt werden. Diese Aufgaben sollen als Reaktion auf das Event Load der Klasse MainForm ausgeführt werden. void MainFormLoad( obj ect sender, EventArgs e) // Verbindung zu IOWarrior herstellen IowHandle = IowKitOpenDevice() ; if (IowHandle==) MessageBox. Show("Kein IO-Warrior gefunden! ") ; Quellcode Herstellen der Verbindung zu einem IOWarrior beim Start der Anwendung Seite

12 IO rojekte mit der USB Schnittstelle Ermitteln der roduktid und der Seriennummer des angeschlossen IOWarriors Die iowkit.dll stellt dazu die beiden Funktionen IowKitGetroductId() und IowKitGetSerialNumber() zur Verfügung. Die roduktid ist im IOWarrior mit 2 Byte gespeichert, die Seriennummer ist eine Zahl, die aus 4 Byte besteht. Als roduktids wurden von Code Mercenaries die drei Werte x5 (IOWarrior4), x5 (IOWarrior24) und x53 (IOWarrior56) vergeben. Für die Seriennummer ergeben sich 4256 verschiedene Möglichkeiten, wodurch gewährleistet ist, dass es nie zwei IOWarrior mit der selben Seriennummer geben wird und auch mehrere IOWarrior gleichzeitig an einen Computer angeschlossen werden können. Die Funktion IowKitGetroductId() liefert einen ganzzahligen Wert zurück, der mit der gewünschten roduktid (hier x5 in hexadezimaler Schreibweise für den IOWarrior24) verglichen werden kann. Für den Aufruf der Funktion IowKitGetSerialNumber() muss zuvor bereits ein Array definiert werden in das die Werte beim Auslesen aus dem IOWarrior geschrieben werden. Zur Ausgabe müssen diese Werte aus dem Array noch zu einem String zusammengefasst werden. void IdSnButtonClick( obj ect sender, EventArgs e) // Variablendefinition int roduktid = ; short[] SerienNummer = new short[8] ; string SerienNummerString = ""; // roduktid ermitteln und ausgebem roduktid = IowKitGetroductId(IowHandle) ; if (roduktid==x5) roduktidlabel. Text = "rodukt ID: IOWarrior24"; roduktidlabel. Text = "rodukt ID: unbekannt"; // Seriennummer ermitteln und ausgeben if (IowKitGetSerialNumber(IowHandle, ref SerienNummer[] ) ) foreach (char c in SerienNummer) SerienNummerString = SerienNummerString + c; SeriennummerLabel. Text = "Seriennummer: " + SerienNummerString; SeriennummerLabel. Text = "Seriennummer: unbekannt"; Quellcode Auslesen und Anzeigen der roduktid und der Seriennummer eines angeschlossenen IOWarrior24 Trennen der Verbindung zum IOWarrior Vor dem Schließen einer Anwendung muss die Verbindung zum IOWarrior unbedingt getrennt werden. Dies sollte nicht dem Benutzer zum Beispiel durch den Klick auf einen Button überlassen werden, sondern automatisch durch die Anwendung selbst geschehen. Dazu ruft man als Reaktion auf das Event FormClosing die Funktion IowKitCloseDevice() auf und übergibt dieser den Handle des IOWarriors. void MainFormFormClosing( obj ect sender, FormClosingEventArgs e) // Verbindung zum IOWarrior trennen IowKitCloseDevice(IowHandle) ; Quellcode Automatisches Trennen der Verbindung zum IOWarrior beim Beenden der Anwendung Seite 2

13 IO rojekte mit der USB Schnittstelle 3. Einlesen von Schaltzuständen Alle 6 IO ins des IOWarrior24 können als Ein oder Ausgänge dienen. Wenn diese als Eingänge genutzt werden, kommt die, für Microcontroller übliche, inverse Logik zur Anwendung: ist ein Eingang offen, so liefert der Microcontroller der Wert zurück, ist ein Eingang geschlossen (zum Beispiel über einen Taster oder Schalter mit GND verbunden), so wird der Wert zurückgeliefert. Dieser Zusammenhang muss also bei der Erstellung der Software berücksichtigt werden, wenn die vom IOWarrior24 übermittelten Daten der beiden orts ausgewertet werden. 3. rinzip einer Halbleiterdiode Eine Diode besteht im rinzip aus zwei Halbleiterschichten (meist Silizium), die Strom in nur einer Richtung durchlässt. Diese können in elektronischen Schaltungen unter anderem dazu verwendet werden um zu verhindern, das Strom in der falschen Richtung durch den Stromkreis fließt, wodurch zum Beispiel andere Bauteile zerstört werden können. Das Schaltsymbol veranschaulicht deutlich die beiden Richtungen, die als Durchlassrichtung und als Sperrrichtung bezeichnet werden. Damit durch eine Diode Strom in Durchlassrichtung fließen kann, muss eine gewisse Durchlasspannung erreicht werden bei einer Silizium Diode beträgt diese,7v. Dies bedeutet aber auch, dass diese,7v den anderen in Serie geschalteten Verbrauchern in diesem Stromkreis nicht mehr zur Verfügung stehen und sich die Spannung entsprechend um diesen Betrag reduziert. In dem gezeigten Beispiel liegt an der Glühbirne also nur mehr eine Spannung von,3v an, da,7v an der vorgeschalteten Diode abfallen. Durchlassrichtung Schaltsymbol und Bauformen Sperrrichtung Abbildung 3.. Bauformen Sperr und Durchlassirchtung einer Diode in einem einfachen Stromkreis 3.2 Grundschaltung zum Schutz der Eingänge Damit ein Mikrocontroller durch das Anlegen falscher Spannungen oder falscher olung an den Eingängen nicht beschädigt wird, können diese durch eine einfache Schaltung mit zwei Dioden geschützt werden. Diese Dioden verhindern, dass Spannungen kleiner als V (negative Spannungen) oder Spannungen größer als 5V an einem Eingang anliegen. 4 Vcc IO WARRIOR24 GND Abbildung 3.2. Schutzschaltung für die Eingänge des IOWarrior24 Seite 3

14 IO rojekte mit der USB Schnittstelle 3.3 Bauplan und Materialliste Für das Einlesen von Schaltzuständen werden zwei Taster verwendet. Diese beiden Taster werden mit je einem in des IOWarriors24 und dem Ground GND verbunden. Zwei Dioden dienen pro Taster zum Schutz der Eingänge gegen negative Spannungen und gegen Spannungen, die +5V übersteigen. Materialliste: 2 Taster 4 Dioden N448 Abbildung 3.3. Materialliste und Bauplan Bauteilseite Abbildung Bestückungs und Leiterbahnansicht der Schaltung Seite 4

15 IO rojekte mit der USB Schnittstelle 3.4 Anwendung 2 Einlesen von Schaltzuständen IOW_Taster Die zweite Anwendung soll die Zustände der beiden Taster ermitteln und diese in zwei anels grafisch darstellen. Zusätzlich zur Anzeige der rodukt ID und der Seriennummer des angeschlossenen IOWarriors sollen auch noch die Werte des Arrays Data[] angezeigt werden. Verwendete Komponenten roduktidlabel (Label) SeriennummerLabel (Label) DataLabel, DataLabel, Data2Label (Label) TasterLinksanel, TasterRechtsanel (anel) ReadTimer (Timer, Interval 2) Abbildung 3.4. Screenshot der Anwendung IOW_Taster Einbinden der Funktionen aus der iowkit.dll Zum Einbinden der Funktionen aus der DLL muss die Klasse System.Runtime.InteropServices mit einer using Anweisung hinzugefügt werden. Zum Austausch von Daten zwischen der Anwendung und dem IOWarrior werden die beiden Funktionen IowKitWrite() und IowKitRead() verwendet. Zusätzlich zum Handle wird noch ein Byte Array definiert. Dieses dient zum Datenaustauch zwischen der Anwendung und dem IOWarrior. namespace IOW_Taster /// <summary> /// Description of MainForm. /// </summary> public partial class MainForm : Form int IowHandle; byte[] Data; [ DllImport( "iowkit", SetLastError=true) ] public static extern int IowKitOpenDevice( ) ; [ DllImport( "iowkit", SetLastError=true) ] public static extern void IowKitCloseDevice( int iowhandle) ; [ DllImport( "iowkit", SetLastError=true) ] public static extern short IowKitGetroductId( int iowhandle) ; [ DllImport( "iowkit", SetLastError=true) ] public static extern bool IowKitGetSerialNumber( int iowhandle, ref short serialnumber) ; [DllImport("iowkit", SetLastError=true) ] public static extern int IowKitWrite(int iowhandle, int numipe, ref byte buffer, int length) ; [DllImport("iowkit", SetLastError=true) ] public static extern int IowKitReadNonBlocking(int iowhandle, int numipe, ref byte buffer, int length) ; public MainForm( ) // The InitializeComponent( ) call is required for Windows Forms designer support. InitializeComponent( ) ; // TODO: Add constructor code after the InitializeComponent( ) call. Quellcode 3.4. Import der benötigten Funktionen aus der iowkit.dll und Definiton der globalen Variablen Seite 5

16 IO rojekte mit der USB Scnittstelle Herstellen der Verbindung zum IOWarrior Der Aufbau der Verbindung zum IOWarrior soll wie in der Anwendung zuvor als Reaktion auf das Event Load der Klasse MainForm ausgeführt werden. Ergänzend sollen nun auch an dieser Stelle die rodukt ID und die Seriennummer bestimmt und angezeigt werden. Das Einlesen der Zustände der beiden orts des IOWarrior erfolgt alle 5ms. Dazu wird der Anwendung ein Timer hinzugefügt, der beim Start der Anwendung deaktiviert ist und dessen Zeitintervall auf den Wert 5 gesetzt ist. Wurde ein IOWarrior gefunden, dann soll dieser Timer aktiviert und das Array Data[] mit entsprechenden Werten initialisiert werden: Data[] dient zur Übergabe von Werten an den IOWarrior Data[] beinhaltet den Zustand des orts, wenn der IOWarrior Daten an die Anwendung sendet oder empfängt Data[2] beinhaltet den Zustand des orts, wenn der IOWarrior Daten an die Anwendung sendet oder empfängt Data[] = x... der IOWarrior liefert in den Werten Data[] und Data[2] die Zustände der beiden orts zurück Data[] = x... alle ins dieses orts sind Ausgänge und erhalten den Wert Data[2] = xa... die ins.6 und.8 werden als Eingänge verwendet und auf gesetzt () void MainFormLoad( obj ect sender, EventArgs e) // Variablendefinition int roduktid = ; short[ ] SerienNummer = new short[ 8] ; string SerienNummerString = ""; // Verbindung zu IOWarrior herstellen IowHandle = IowKitOpenDevice( ) ; if ( IowHandle==) MessageBox. Show( "Kein IO-Warrior gefunden! ") ; // roduktid ermitteln und anzeigen roduktid = IowKitGetroductId( IowHandle) ; if ( roduktid==x5) roduktidlabel. Text = "rodukt ID: IOWarrior24"; roduktidlabel. Text = "rodukt ID: unbekannt"; // Seriennummer ermitteln und anzeigen if ( IowKitGetSerialNumber( IowHandle, ref SerienNummer[ ] ) ) foreach( char c in SerienNummer) SerienNummerString = SerienNummerString + c; SeriennummerLabel. Text = "Seriennummer: " + SerienNummerString; SeriennummerLabel. Text = "Seriennummer: unbekannt"; // Byte-Array für den Datenaustausch initialisieren Data = new byte[3] ; Data[] = x; Data[] = x; Data[2] = xa; IowKitWrite(IowHandle,, ref Data[], 3) ; Quellcode Herstellen der Verbindung zum IOWarrior24 und Initialisieren der Anwendung Dr. Leander Brandl 29 Anhang

17 IO rojekte mit der USB Scnittstelle // Timer zum Einlesen der inzustände aktivieren ReadTimer. Enabled = true; Quellcode Fortsetzung Herstellen der Verbindung zum IOWarrior24 und Initialisieren der Anwendung Auslesen der Zustände der orts aus dem IOWarrior Mit der Funktion IowKitReadNonBlocking() können die Zustände der einzelnen ins der beiden orts bestimmt werden. Dieser Funktion werden der Handle des IOWarriors, ein Buffer Array und die Anzahl der übertragenen Bytes (hier 3) übergeben. Nach dem Aufruf dieser Funktion können die Zustände der ins aus den Werten von Data[] und Data[2] bestimmt werden. Die Überprüfung, ob ein Bit auf oder gesetzt ist, kann nur über einen "Umweg" der entsprechenden Dezimal bzw. Hexadezimalzahlen erfolgen, da ein direkter Zugriff auf die einzelnen Bits in diesen Byte Werten nicht möglich ist. Aufgrund der inversen Logik der Eingänge eines Mikroprozessors liefert der IOWarrior den Wert, wenn ein Eingang geöffnet ist, bzw. der jeweilige in nicht mit GND verbunden ist. Wird ein Eingang geschlossen, so ist die logische Entsprechung dieses ins der Wert. Die tabellarische Darstellung Seite soll diesen Zusammenhang verdeutlichen. Möchte man überprüfen, ob ein Taster geschlossen ist, muss man bei den vom IOWarrior gelieferten Werten der beiden orts herausfinden, ob an der Stelle des entsprechenden Bits eine steht. Dies geschieht mit dem Operator & für logische Verknüpfungen zweier Bytes. Dabei werden die einzelnen Bits mit einander nach der Vorschrift für das logische UND miteinander verglichen. Um zu ermitteln, ob der Zustand des ins geschlossen ist, wird die logische Verknüpfung xfd & x2 durchgeführt und überprüft, ob das Ergebnis x ist. Ist dies der Fall, dann ist der Eingang in am IOWarrior geschlossen.. ( xfd) & ( x2) Ergebnis ( x) ( der vom IOWarrior zurückgeliferte Wert) in Binär Hexadezimal Dezimal. FD und.3.2 und.6 FE FB F7 EF DF BF 7F F6 BB Abbildung Werteübersicht für Eingangspins des IOWarrior in binärer, hexadezimaler und dezimaler Schreibweise Sind alle Eingangspins offen, so wird für diesen ort der Wert 255 bzw. xff6 (alle Bits auf gesetzt) zurückgeliefert. Zusammenfassend kann man festhalten: Will man überprüfen, welche Eingänge geschlossen sind, so ist der entsprechende Wert darauf zu überprüfen, an welchen Stellen (Bits) eine gesetzt ist. Das Auslesen der ort Zustände aus dem IOWarrior, die Ausgabe der Werte und das Setzen der Farben der beiden anels erfolgt in der Behandlung des vom Timer ausgelösten Events Tick. Dieses wird basierend auf der Einstellung für den Timer alle 5 Millisekunden ausgelöst somit wird die Anzeige der Anwendung 2 mal pro Sekunde mit den aktuellen Werten des IOWarrior aktualisiert. Dr. Leander Brandl 29 Anhang

18 IO rojekte mit der USB Schnittstelle void ReadTimerTick( obj ect sender, EventArgs e) int TasterLinksStatus; int TasterRechtsStatus; IowKitReadNonBlocking(IowHandle,, ref Data[], 3) ; DataLabel. Text = "Data[ ] = " + String. Format( " : X2 ", Data[ ] ) + " ( " + Data[ ]. ToString( ) + ") "; DataLabel. Text = "Data[ ] = " + String. Format( " : X2 ", Data[ ] ) + " ( " + Data[ ]. ToString( ) + ") "; Data2Label. Text = "Data[ 2] = " + String. Format( " : X2 ", Data[ 2] ) + " ( " + Data[ 2]. ToString( ) + ") "; TasterLinksStatus = Data[2] & x2; TasterRechtsStatus = Data[2] & x8; if ( TasterLinksStatus==x ) TasterLinksanel. BackColor = Color. Red; TasterLinksanel. BackColor = Color. Black; if ( TasterRechtsStatus==x ) TasterRechtsanel. BackColor = Color. Red; TasterRechtsanel. BackColor = Color. Black; Quellcode Ermitteln der Zustände der ins Beenden der Anwendung Wird die Anwendung geschlossen, muss zuerst der Timer deaktiviert und dann die Verbindung zum IOWarrior getrennt werden. Dies geschieht wie im ersten Beispiel als Reaktion auf das Event FormClosing des Formulars. void MainFormFormClosing( obj ect sender, FormClosingEventArgs e) // Timer zum Einlesen der inzustände deaktivieren ReadTimer. Enabled = false; // Verbindung zum IOWarrior trennen IowKitCloseDevice( IowHandle) ; Quellcode Trennen der Verbindung zum IOWarrior beim Schließen der Anwendung Seite 8

19 IO rojekte mit der USB Schnittstelle 4. Setzen von in Zuständen Ansteuerung von Leuchtdioden Die 6 IO ins des IOWarriors können als Ein oder Ausgänge genutzt werden. Wenn diese als Ausgänge verwendet werden, kann jeder in den Schaltzustand +5V oder V annehmen. Der maximale Strom, der einem Ausgangspin entnommen werden darf ist aber so gering (max 2mA), dass Verbraucher nicht direkt an einen in angeschlossen werden dürfen. Die Entnahme eines zu hohen Stroms führt zur Zerstörung des IOWarrior. Zum Steuern oder Schalten von Verbrauchen kommt ein Transistor zum Einsatz. Dieser fungiert dabei als eine Art Schalter, der aufgrund eines geringen Stoms (Ausgangspin des IOWarriors) eine höheren Strom schaltet. Mit Hilfe eines Transistors kann man somit eine Leuchtdiode ein und ausschalten. Die Betriebsspannung von Leuchtdioden liegt je nach Bauart bei ca. 2V. Da die Spannung, die die USB Schnittstelle zur Verfügung stellt 5V beträgt, muss vor die Leuchtdiode noch ein entsprechender Vorwiderstand geschaltet werden. 4. rinzip eines Transistors Ein Transistor besteht aus drei Halbleiterschichten (meist Silizium). Die drei Anschlüsse werden als Basis, Kollektor und Emitter bezeichnet. Daraus ergeben sich zwei Stromkreise, zwischen denen der Transistor als eine Art "Bindeglied" darstellt. Der Strom im Basisstromkreis (Basis Emitter) entscheidet über das Verhalten eines Transistors. Der Strom im Kollektorstromkreis (Kollektor Emitter) ist abhängig von der Größe des Stroms im Basisstromkreis. Vereinfacht kann man sagen: Fließt bei einem Transistor Strom von der Basis zum Emitter, dann gibt der Transistor den Weg Kollektor Emitter frei und es kann Strom vom Kollektor zum Emitter fließen. Bei der lanung von elektronischen Schaltungen mit einem Transistor ist im Basis und Kollektorstromkreis zu berücksichtigen, dass es wie bei der Diode einen Spannungsabfall an den Halbleiterschichten gibt. Für die Berechnung der Spannungsverteilung auf die einzelnen Verbraucher im Kollektorstromkreis ist somit auch der Typen spezifische Spannungsabfall am Transistor zu berücksichtigen! Bauformen TO 92 TO 26 KEIN Strom Basis Emitter > Transistor "sperrt" > KEIN Strom Kollektor Emitter TO 22 TO 3 Strom Basis Emitter > Strom Kollektor Emitter Abbildung 4.. Bauformen Verhalten eines Transistors bezogen auf den Basisstrom Seite 9

20 IO rojekte mit der USB Schnittstelle 4.2 Elektrische Widerstände das Ohm sche Gesetz Elektrische Widerstände werden eingesetzt um die Spannung zu reduzieren oder den Strom in einem Stromkreis zu begrenzen. Da die überschüssige elektrische Energie dabei von einem Widerstand in Wärme umgesetzt wird, müssen diese je nach Anforderung entsprechend groß dimensioniert sein. Der Zusammenhang zwischen elektrischer Spannung, Strom und Widerstand wird durch das Ohm sche Gesetz beschrieben. Sind zwei der drei Größen bekannt, so lässt sich rechnerisch die dritte Größe bestimmen. U R = = = = = R... Widerstand [Ohm] U... Spannung [Volt] I... Strom [Ampere] 5 Ω Hier wird an einen Widerstand mit 5Ω eine Spannung von 2V angelegt. Mit Hilfe des Ohm schen Gesetzes lässt sich der Strom (roter feil) berechnen, der über diesen Widerstand fließt: I = U / R = 2V / 5Ω =,8A Abbildung 4.2. Ohm sches Gesetz Zusammenhang zwischen Strom, Spannung und Widerstand in einem einfachen Stromkreis Für die Angabe von Widerstandswerten wurde eine international gültige Farbkodierung eingeführt. Diese kann aus vier oder fünf Farbringen bestehen. Zu den Zahlenwerten der ersten Ringe kommt ein Multiplikator und ein Ring für die mögliche Toleranz der Abweichung des tatsächlichen vom angegebenen Wert dazu. Abbildung Farbkodierung von Widerständen Seite 2

21 IO rojekte mit der USB Schnittstelle 4.3 Die Leuchtdiode LED Leuchtdioden wandeln elektrische Energie in Licht um. Sie funktionieren wie Halbleiterdioden, die in Durchlassrichtung Licht emittieren. Die Kurzbezeichnung LED steht für "Light Emitting Diode". Es gibt Leuchtdioden in verschiedenen Farben, Größen und Bauformen die gebräuchlichsten Bauformen haben einen Durchmesser von 5 mm. Leuchtdioden müssen je nach Farbe exakt mit der vorgegebenen Spannung betrieben werden. Ist die Spannung zu niedrig, emittiert die LED kein Licht, wird eine zu hohe Spannung angelegt, so wird die Halbleiterschicht und somit die Leuchtdiode zerstört. Weiters ist beim Anschluss einer Leuchtdiode auf die richtige olung zu achten: Kathode (abgeflachte Seite) Minus, Anode lus Schaltsymbol und Bauform Abbildung 4.3. Leuchtdiode Schaltsymbol und Bauform Wenn man eine Leuchtdiode in einem Stromkreis mit einer höheren als der für den jeweiligen Typ vorgesehenen Spannung betreiben will, so muss ein Vorwiderstand verwendet werden, an dem die Differenzspannung abfällt. Standard LEDs werden mit einem Strom von ma betrieben. Möchte man eine rote Leuchtdiode in einem Stromkreis mit einer Spannung von 2V verwenden, so muss am Vorwiderstand eine Spannung von 9,9V (2V 2,V) abfallen. Mit Hilfe des Ohm schen Gesetzes lässt sich die Größe des benötigten Vorwiderstandes berechnen. 2,9V ROT 2,V / ma GRÜN 2,5V / ma GELB 2,5V / ma 5V UWiderstand = Uges ULED LED rot: LED gelb: UWiderstand = 5V 2,V = 2,9V UWiderstand = 5V 2,5V = 2,5V 2,V Betriebsspannung / Stom R = UWiderstand / I R = 2,9V /,A = 29Ω R = 2,5V /,A = 25Ω Abbildung Berechnung des Vorwiderstands für Leuchtdioden Seite 2

22 IO rojekte mit der USB Schnittstelle 4.4 Schaltplan Möchte man mit einem Ausgang des IOWarriors eine LED ein und ausschalten, so kommen ein Transistor und ein Vorwiderstand zum Einsatz. Der Ausgang des IOWarriors wird mit der Basis des Transistors verbunden. Die LED und der Vorwiderstand befinden sich im Kollektor Stromkreis. Zwischen einem in des IOWarriors und GND liegt je nach Zustand eine Spannung von V oder 5V an. Bei V fließt kein Strom über die Basis des Transistors und somit auch kein Strom vom Kollektor zum Emitter. Die LED bleibt dunkel. Beträgt die Spannung am entsprechenden in 5V, so fließt Strom über die Basis des Transistors. Dieser schaltet nun den Weg "Kollektor Emitter" durch und es fließt Strom über den Vorwiderstand und die Leuchtdiode. Durch den Vorwiderstand ist gewährleistet, dass an der Leuchtdiode exakt die Spannung anliegt, die für den jeweiligen Typ vorgegeben ist. 4 Vcc IO WARRIOR24 GND Abbildung 4.4. Schaltplan zum Schalten einer LED mit dem IOWarrior 4.5 Materialliste und Bauplan Beim Aufbau dieser Schaltung kommen Standard Leuchtdioden in den Farben rot, gelb und grün zum Einsatz. Diese kann dann zum Beispiel bei der rogrammierung einer Ampelsteuerung verwendet werden. Zum Schalten der Leuchtdioden wird ein Transistor vom Typ BC548 verwendet. Der Spannungsabfall zwischen Kollektor und Emitter beträgt bei diesem Typ,2V. Zum Berechnen der Vorwiderstände muss von der Betriebsspannung der Schaltung (5V) der Spannungsabfall am Transistor (,2V) und die Spannung der Leuchtdiode (2,V bei rot bzw. 2,5V bei gelb und grün) abgezogen werden, bevor diese mit dem Ohm schen Gesetz bestimmt werden können. Berechnung der Vorwiderstände für die Leuchtdioden: LED rot: LED gelb: UWiderstand = Uges UKollektorEmitter ULED R = UWiderstand / I UWiderstand = 5V,2V 2,V = 2,7V R = 2,7V /,A = 27Ω UWiderstand = 5V,2V 2,5V = 2,3V R = 2,3V /,A = 23Ω Abbildung 4.5. Berechnung der Vorwiderstände für die LEDs Materialliste: 3 Leuchtdioden (rot, gelb, grün) 5mm Anschlussbelegung BC548 3 Transistoren BC548 2 Widerstände 22Ω (LED gelb, grün) Widerstand 27Ω (LED rot) EBC Abbildung Materialliste und Anschlussbelegung des BC548 Seite 22

23 IO rojekte mit der USB Schnittstelle Abbildung Bauplan Bauteilseite Abbildung Bestückungs und Leiterbahnseite Seite 23

24 IO rojekte mit der USB Schnittstelle 4.6 Anwendung 3 Schalten von LEDs IOW_Leds Aufbauend auf dem rogramm zum Einlesen der Zustände von Tastern sollen mit dieser Anwendung die drei Leuchtdioden ein und ausgeschaltet werden können. Das Herstellen der Verbindung zum IOWarrior und die Anzeige der Inhalte der drei Werte im Array Data werden aus dem rojekt IOW_Taster übernommen. Das Ein und Ausschalten der LEDs soll mit drei Checkboxen auf der rogrammoberfläche umgesetzt werden. Dieses rogramm könnte dann in der Folge noch zu einer automatisch ablaufenden, Zeit gesteuerten Ampelsteuerung erweitert werden. Verwendete Komponenten roduktidlabel (Label) SeriennummerLabel (Label) DataLabel, DataLabel, Data2Label (Label) WertBar (TrackBar, Minimum 4, Maximum 4) RotCheckBox (CheckBox) GelbCheckBox (CheckBox) GruenCheckBox (CheckBox) Rotanel, Gelbanel, Gruenanel (anel) Abbildung 4.6. Screenshot der Anwendung IOW_Leds Einbinden der Funktionen aus der iowkit.dll Zum Einbinden der Funktionen aus der DLL und der Definiton der globalen Variablen kommt Quellcode 3.4. zur Anwendung. Herstellen der Verbindung zum IOWarrior Wenn die ins des IOWarriors als Ausgänge genutzt werden, setzt man diese auf den Zustand oder, um eine Ausgangsspannung von V (LO) oder 5V (HI) zwischen dem jeweiligen in und GND zu erhalten. Nach dem Herstellen der Verbindung und dem Einlesen der roduktid und der Seriennummer wird das Data Array initialisiert. Das Byte Data[] erhält den Wert x. Data[] und Data[2] beschreiben die Zustände der 8 Bits der beiden orts. Damit die LEDs beim Starten der Anwendung ausgeschaltet sind, werden alle Bits auf und beide orts somit auf x () gesetzt. Nach dem Setzen der Werte im Data Array werden diese mit der Funktion IowKitWrite() an den IOWarrior übermittelt. void MainFormLoad( obj ect sender, EventArgs e) // Variablendefinition int roduktid = ; short[ ] SerienNummer = new short[ 8] ; string SerienNummerString = ""; // Verbindung zu IOWarrior herstellen IowHandle = IowKitOpenDevice( ) ; if ( IowHandle==) MessageBox. Show( "Kein IO-Warrior gefunden! ") ; // roduktid ermitteln und anzeigen roduktid = IowKitGetroductId( IowHandle) ; Quellcode 4.6. Initialisieren des Data Arrays und des IOWarrior Seite 24

25 IO rojekte mit der USB Schnittstelle if ( roduktid==x5) roduktidlabel. Text = "rodukt ID: IOWarrior24"; roduktidlabel. Text = "rodukt ID: unbekannt"; // Seriennummer ermitteln und anzeigen if ( IowKitGetSerialNumber( IowHandle, ref SerienNummer[ ] ) ) foreach( char c in SerienNummer) SerienNummerString = SerienNummerString + c; SeriennummerLabel. Text = "Seriennummer: " + SerienNummerString; SeriennummerLabel. Text = "Seriennummer: unbekannt"; // Byte-Array für den Datenaustausch initialisieren Data = new byte[ 3] ; Data[ ] = x; Data[] = x; Data[2] = x; IowKitWrite( IowHandle,, ref Data[ ], 3) ; Quellcode 4.6. Fortsetzung Initialisieren des Data Arrays und des IOWarrior Übertragen der Zustände an die Ausgangspins Klickt man auf eine Checkbox, so wird deren Eigenschaft Checked entweder auf true oder false gesetzt. Als Reaktion auf das Event CheckedChanged soll der entsprechende in des IOWarriors auf HI bzw. LO gesetzt werden. Da bei der Übertragung der in Zustände zum IOWarrior immer die Zustände aller 8 ins beider orts gesendet werden, müssen auch die zuvor gültigen Werte für alle anderen ins berücksichtigt werden. Möchte man ein Bit auf setzen, so muss der ursprüngliche Zustand der Bits mit Hilfe einer logischen ODER Verknüpfung erweitert werden. ( x4) ursprünglicher Zustand ort Ergebnis ursprünglicher Zustand und zweites Bit auf ( x2) zweites Bit auf ( x43) Soll ein Bit auf gesetzt werden, so muss der ursprüngliche Zustand der Bits mit Hilfe einer logischen UND Verknüpfung und des inversen Wertes des gewünschten Bits berechnet werden. ort ( x43) & ( xfd) ursprünglicher Zustand zweites Bit auf Seite 25

26 IO rojekte mit der USB Schnittstelle Anschluss der LEDs an den IOWarrior in der augebauten Schaltung LED rot ort Bit 3 x8 Data[2] LED grün ort Bit 7 x8 Data[] LED gelb ort Bit x2 Data[2] Abbildung Anschluss der LEDs an den IOWarrior und entsprechende Bits der jeweiligen orts void RotCheckBoxCheckedChanged( obj ect sender, EventArgs e) int WertNeu; if ( RotCheckBox. Checked==true) Rotanel. BackColor = Color. Red; WertNeu = Data[2] x8; Data[ 2] = ( byte) WertNeu; IowKitWrite( IowHandle,, ref Data[ ], 3) ; Rotanel. BackColor = Color. Black; WertNeu = Data[2] & xf7; Data[ 2] = ( byte) WertNeu; IowKitWrite( IowHandle,, ref Data[ ], 3) ; DataLabel. Text = "Data[ ] = " + String. Format( " : X2 ", Data[ ] ) + " ( " + Data[ ]. ToString( ) + ") "; DataLabel. Text = "Data[ ] = " + String. Format( " : X2 ", Data[ ] ) + " ( " + Data[ ]. ToString( ) + ") "; Data2Label. Text = "Data[ 2] = " + String. Format( " : X2 ", Data[ 2] ) + " ( " + Data[ 2]. ToString( ) + ") "; void GelbCheckBoxCheckedChanged( obj ect sender, EventArgs e) int WertNeu; if ( GelbCheckBox. Checked==true) Gelbanel. BackColor = Color. Yellow; WertNeu = Data[2] x2; Data[ 2] = ( byte) WertNeu; IowKitWrite( IowHandle,, ref Data[ ], 3) ; Gelbanel. BackColor = Color. Black; WertNeu = Data[2] & xfd; Data[ 2] = ( byte) WertNeu; IowKitWrite( IowHandle,, ref Data[ ], 3) ; DataLabel. Text = "Data[ ] = " + String. Format( " : X2 ", Data[ ] ) + " ( " + Data[ ]. ToString( ) + ") "; DataLabel. Text = "Data[ ] = " + String. Format( " : X2 ", Data[ ] ) + " ( " + Data[ ]. ToString( ) + ") "; Data2Label. Text = "Data[ 2] = " + String. Format( " : X2 ", Data[ 2] ) + " ( " + Data[ 2]. ToString( ) + ") "; Quellcode Senden der Zustände der Ausgangspins an den IOWarrior als Reaktion auf die Änderung einer Checkbox Seite 26

27 IO rojekte mit der USB Schnittstelle void GruenCheckBoxCheckedChanged( obj ect sender, EventArgs e) int WertNeu; if ( GruenCheckBox. Checked==true) Gruenanel. BackColor = Color. Green; WertNeu = Data[] x8; Data[ ] = ( byte) WertNeu; IowKitWrite( IowHandle,, ref Data[ ], 3) ; Gruenanel. BackColor = Color. Black; WertNeu = Data[] & x7f; Data[ ] = ( byte) WertNeu; IowKitWrite( IowHandle,, ref Data[ ], 3) ; DataLabel. Text = "Data[ ] = " + String. Format( " : X2 ", Data[ ] ) + " ( " + Data[ ]. ToString( ) + ") "; DataLabel. Text = "Data[ ] = " + String. Format( " : X2 ", Data[ ] ) + " ( " + Data[ ]. ToString( ) + ") "; Data2Label. Text = "Data[ 2] = " + String. Format( " : X2 ", Data[ 2] ) + " ( " + Data[ 2]. ToString( ) + ") "; Quellcode Fortsetzung Senden der Zustände der Ausgangspins an den IOWarrior als Reaktion auf die Änderung einer Checkbox Beenden der Anwendung Beim Schließen der Anwendung wird die Verbindung zum IOWarrior getrennt. Dies geschieht wie in den beiden vorangegangenen Beispielen als Reaktion auf das Event FormClosing des Formulars. void MainFormFormClosing( obj ect sender, FormClosingEventArgs e) // Verbindung zum IOWarrior trennen IowKitCloseDevice( IowHandle) ; Quellcode Trennen der Verbindung zum IOWarrior beim Schließen der Anwendung Seite 27

28 IO rojekte mit der USB Schnittstelle 5. Erweiterung der Ausgänge mit einem Schieberegister Der IOWarrior24 stellt 6 Ausgänge zur Verfügung. Benötigt man eine größere Anzahl von Ausgängen um zum Beispiel eine LED Anzeigetafel anzusteuern, so kommen spezielle Bauteile zur orterweiterung sogenannte Schieberegister zum Einsatz. Zur Übertragung von Daten an ein Schieberegister werden nur drei Datenleitungen benötigt. Die meisten Schieberegister verfügen über ein Auffangregister. Damit wird erreicht, dass Daten in das Register eingegeben werden können ohne, dass sich die tatsächlichen Ausgangszustände ändern. Erst wenn alle Zustände in das Auffangregister geschrieben wurden, werden diese an die einzelnen Ausgänge durch einen Impuls am in mit der Bezeichnung STROBE weitergegeben. 5. Der IC 494 Der am häufigsten eingesetzte Schieberegister Bauteil trägt die Bezeichnung 494. Dieser verfügt über drei Eingänge (DATA, CLOCK und STROBE) und über 8 Ausgänge. Diese müssen je nach Anwendung (zum Beispiel beim Anschluss von LEDs) mit Widerständen versehen werden und sollten pro Ausgang mit maximal 25mA belastet werden. 6 Strobe Data Clock A Vcc +5V Vcc +5V A4 A5 A6 A A2 A7 A3 GND 9 8 Data OUT Abbildung 5.. Anschlussbelegung des 494 Zusätzlich verfügt dieser integrierte Schaltkreis über einen Daten Ausgang. Über diesen können weitere Bauteile angeschlossen und mit Daten befüllt werden. Somit lassen sich mehrere Bauteile vom Typ 494 hintereinander schalten wodurch man die Anzahl der Ausgänge beliebig erweitern kann. 3 Clock 2 Data 3 Strobe Data OUT 494 A A A2 A3 A4 A5 A6 A Clock 2 Data Strobe Data OUT 494 A A A2 A3 A4 A5 A6 A Abbildung 5..2 Schaltplan und Umsetzung der Kaskadierung mehrerer Schieberegister Bauteile Seite 28

29 IO rojekte mit der USB Schnittstelle Das Setzen der Zustände der Ausgänge geschieht in zwei Schritten: Zuerst werden die gewünschten Zustände der 8 Ausgänge als 8 Bits nacheinander in das Auffangregister geschoben. Der Zustand des Eingangs DATA entspricht dabei dem Zustand den der jeweilige Ausgang haben soll. Mit einem Impuls am Eingang CLOCK werden alle Bits im Auffangregister um eine Stelle weitergeschoben. Sind alle 8 Bits im Auffangregister, werden diese mit einem Impuls am Eingang STROBE an die Ausgänge übergeben. Auffangregister Ausgänge CLOCK DATA Auffangregister Ausgänge Auffangregister Ausgänge STROBE Auffangregister Ausgänge Abbildung 5..3 Schematische Darstellung des Befüllen des Schieberegisters 494 Um das Schieberegister 494 einmal vollständig zu befüllen, müssen die Eingänge wie folgt gesetzt werden: Data HI oder LO (. Bit) Clock HI LO Data HI oder LO (2. Bit) Clock HI LO Data HI oder LO (3. Bit) Clock HI LO Data HI oder LO (4. Bit) Clock HI LO Data HI oder LO (5. Bit) Clock HI LO Data HI oder LO (6. Bit) Clock HI LO Data HI oder LO (7. Bit) Clock HI LO Data HI oder LO (8. Bit) Clock HI LO Strobe HI LO (Auffangregister Ausgänge) Abbildung 5..4 Abfolge der Zustände von DATA, CLOCK und STROBE beim Befüllen des Schieberegisters 494 Seite 29

30 IO rojekte mit der USB Schnittstelle 5.2 Schaltplan Der IOWarrior24 bietet sich optimal für die Ansteuerung von Schieberegister Bauteilen mit einem Computer an. Dabei werden nur drei Ausgänge des IOWarrior24 benötigt, die als Datenleitungen für das Schieberegister dienen. Da die Ausgänge des IOWarrior entweder +5V (HI) oder V (LO) liefern, können diese direkt mit dem Schieberegister 494 verbunden werden, da dieses an den Eingängen DATA, CLOCK und STROBE genau diese egel erwartet. Werden an den Ausgängen des Schieberegisters Leuchtdioden angeschlossen, müssen entsprechende Vorwiderstände zum Einsatz kommen, da die Spannung an den Ausgängen beim Zustand HI +5V beträgt. 4 Vcc IO WARRIOR24 GND Clock 2 Data Strobe GND 6 Vcc A A A2 A3 A4 A5 A6 A Abbildung 5.2. Schaltplan zur Ansteuerung eines Schieberegisters 494 mit dem IOWarrior Anschluss der Datenleitungen des Schieberegisters 494 an den IOWarrior Clock ort Bit x Data[] Strobe ort Bit 2 x4 Data[] Data ort Bit x2 Data[] Abbildung Anschlussbelegung und entsprechende Bits am ort des IOWarrior Materialliste und Bauplan Beim Anschluss der Leuchtdioden ist besonders auf die in Belegung des Schieberegisters zu achten damit diese in derselben Reihenfolge der Bits im Schieberegister richtig auf der latine platziert werden (siehe Abbildung 5..). Materialliste: 8 Leuchtdioden rot 5mm 8 Widerstände 27Ω IC Sockel 6 polig Schieberegister 494 Abbildung 5.3. Materialliste Seite 3

31 IO rojekte mit der USB Schnittstelle Abbildung Bauplan 5.4 Anwendung 4 Ansteuern von LEDs mit einem Schieberegister IOW_Schieberegister Bei dieser Anwendung werden die LEDs nicht direkt mit dem IOWarrior ein und ausgeschaltet. Das Schalten der LEDs übernimmt das Schieberegister 494. Der IOWarrior stellt das Bindeglied zwischen der Anwendung und dem Schieberegister dar. Mit Hilfe von 8 Checkboxen soll der gewünschte Zustand der LEDs festgelegt werden. Beim Klick auf den Send Button erfolgt die Übertragung des gewählten Bit Musters an das Schieberegister. In der Folge könnte an Stelle eines Buttons zum Senden auch ein Timer zum Einsatz kommen, der in regelmäßigen Abständen den mit den Checkboxen festgelegten Zustand der LEDs automatisch überträgt. Verwendete Komponenten roduktidlabel (Label) SeriennummerLabel (Label) SendButton (Button) ABox... A7Box (CheckBox) Abbildung 5.4. Screenshot der Anwendung IOW_Schieberegister Seite 3

32 IO rojekte mit der USB Schnittstelle Definition globaler Variablen und Import der benötigten Funktionen aus der iowkit.dll Zu Beginn werden die globale Variable IowHandle und das Array Data[] definiert. Zum Import der benötigten Funktionen aus der iowkit.dll muss die Klasse System.Runtime.InteropServices mit einer using Anweisung eingebunden werden. public partial class MainForm : Form // Definition der global benötigten Variablen int IowHandle; byte[ ] Data; // Import der benötigten Funktionen aus der iowkit. dll [ DllImport( "iowkit", SetLastError=true) ] public static extern int IowKitOpenDevice( ) ; [ DllImport( "iowkit", SetLastError=true) ] public static extern void IowKitCloseDevice( int iowhandle) ; [ DllImport( "iowkit", SetLastError=true) ] public static extern int IowKitWrite( int iowhandle, int numipe, ref byte buffer, int length) ; [ DllImport( "iowkit", SetLastError=true) ] public static extern int IowKitReadNonBlocking( int iowhandle, int numipe, ref byte buffer, int length) ; [ DllImport( "iowkit", SetLastError=true) ] public static extern short IowKitGetroductId( int iowhandle) ; [ DllImport( "iowkit", SetLastError=true) ] public static extern bool IowKitGetSerialNumber( int iowhandle, ref short serialnumber) ;... Quelltext 5.4. Definition globaler Variablen und Import der benötigten Funktionen aus der iowkit.dll Herstellen der Verbindung zum IOWarrior Das Herstellen der Verbindung, das Initialisieren der Anwendung und des IOWarrior erfolgt beim Öffnen der Anwendung in der Ereignisbehanldung des Events Load der Klasse MainForm. Nach dem Herstellen der Verbindung angeschlossenen IOWarriors eingelesen. zum IOWarrior werden die roduktid und die Seriennummer des Die verwendeten ins.,. und.2 werden als Ausgänge eingesetzt. Das Byte Data[] ist auf x zu setzen und alle Bits beider orts werden auf gesetzt Data[] und Data[2] bekommen den Wert x (). void MainFormLoad( obj ect sender, EventArgs e) // Variablendefinition int roduktid = ; short[ ] SerienNummer = new short[ 8] ; string SerienNummerString = " " ; // Verbindung zu IOWarrior herstellen IowHandle = IowKitOpenDevice( ) ; if ( IowHandle==) MessageBox. Show( " Kein IO-Warrior gefunden! " ) ; // roduktid ermitteln und anzeigen roduktid = IowKitGetroductId( IowHandle) ; Quelltext Herstellen der Verbindung zum IOWarrior und Initialisieren des Data Arrays Seite 32

33 IO rojekte mit der USB Schnittstelle if ( roduktid==x5) roduktidlabel. Text = " rodukt ID: IOWarrior2 4 " ; roduktidlabel. Text = " rodukt ID: unbekannt" ; // Seriennummer ermitteln und anzeigen if ( IowKitGetSerialNumber( IowHandle, ref SerienNummer[ ] ) ) foreach( char c in SerienNummer) SerienNummerString = SerienNummerString + c; SeriennummerLabel. Text = " Seriennummer: " + SerienNummerString; SeriennummerLabel. Text = " Seriennummer: unbekannt" ; // Byte-Array für den Datenaustausch initialisieren Data = new byte[ 3] ; Data[ ] = x; Data[ ] = x; Data[ 2 ] = x; IowKitWrite( IowHandle,, ref Data[ ], 3) ; Quelltext Fortsetzung Herstellen der Verbindung zum IOWarrior und Initialisieren des Data Arrays Übertragen der Information aus den Checkboxen an das Schieberegister Soll die Information bestehend aus 8 Bit an das Schieberegister übertragen werden, so ist das in 5..3 und 5..4 dargestellte Verfahren anzuwenden. Die drei Datenleitungen DATA, CLOCK und STROBE können nicht direkt geschaltet werden, deren Zustand entspricht je einem Bit des orts des IOWarrior. Bei jedem Aufruf der Funktion IowKitWrite() werden die Zustände aller drei Datenleitungen neu übergeben und müssen deshalb sinngemäß richtig gesetzt sein. Bei der programmiertechnischen Umsetzung ist somit besonders darauf zu achten, dass das Setzen des Zustands des DATA Eingangs am Schieberegister zu erfolgen hat, bevor der CLOCK Eingang auf HI und wieder auf LO gesetzt wird. void SendButtonClick( obj ect sender, System. EventArgs e) if ( A7Box. Checked==true) Data[ ] = x2; // Data HI IowKitWrite( IowHandle,, ref Data[ ], 3) ; Data[ ] = x3; // Clock HI ( Data bleibt HI) IowKitWrite( IowHandle,, ref Data[ ], 3) ; Data[ ] = x2; // Clock LO ( Data bleibt HI) IowKitWrite( IowHandle,, ref Data[ ], 3) ; Data[ ] = x; // Data LO IowKitWrite( IowHandle,, ref Data[ ], 3) ; Data[ ] = x; // Clock HI ( Data blcibt LO) IowKitWrite( IowHandle,, ref Data[ ], 3) ; Data[ ] = x; // Clock LO ( Data bleibt LO) IowKitWrite( IowHandle,, ref Data[ ], 3) ; Quelltext Übertragen der Information aus den Checkboxen an das Schieberegister Seite 33

34 IO rojekte mit der USB Schnittstelle void SendButtonClick( obj ect sender, System. EventArgs e) if ( A6Box. Checked==true) Data[ ] = x2; // Data HI IowKitWrite( IowHandle,, ref Data[ ], 3) ; Data[ ] = x3; // Clock HI ( Data bleibt HI) IowKitWrite( IowHandle,, ref Data[ ], 3) ; Data[ ] = x2; // Clock LO ( Data bleibt HI) IowKitWrite( IowHandle,, ref Data[ ], 3) ; Data[ ] = x; // Data LO IowKitWrite( IowHandle,, ref Data[ ], 3) ; Data[ ] = x; // Clock HI ( Data blcibt LO) IowKitWrite( IowHandle,, ref Data[ ], 3) ; Data[ ] = x; // Clock LO ( Data bleibt LO) IowKitWrite( IowHandle,, ref Data[ ], 3) ; // dieselbe IF-Abfrage sinngemäß für die Checkboxen A5Box - ABox if ( ABox. Checked==true) Data[ ] = x2; // IowKitWrite( IowHandle, Data[ ] = x3; // IowKitWrite( IowHandle, Data[ ] = x2; // IowKitWrite( IowHandle, Data[ ] = x; // IowKitWrite( IowHandle, Data[ ] = x; // IowKitWrite( IowHandle, Data[ ] = x; // IowKitWrite( IowHandle, Data[ ] = x4; // Strobe IowKitWrite( IowHandle,, Data[ ] = x; // Strobe IowKitWrite( IowHandle,, Data HI, ref Data[ ], 3) ; Clock HI ( Data bleibt HI), ref Data[ ], 3) ; Clock LO ( Data bleibt HI), ref Data[ ], 3) ; Data LO, ref Data[ ], 3) ; Clock HI ( Data blcibt LO), ref Data[ ], 3) ; Clock LO ( Data bleibt LO), ref Data[ ], 3) ; HI ref Data[ ], 3) ; LO ref Data[ ], 3) ; Quelltext Fortsetzung Übertragen der Information aus den Checkboxen an das Schieberegister Beenden der Anwendung Beim Schließen der Anwendung wird die Verbindung zum IOWarrior getrennt. Dies geschieht wie in den vorangegangenen Anwendungen als Reaktion auf das Event FormClosing des Formulars. void MainFormFormClosing( obj ect sender, FormClosingEventArgs e) // Verbindung zum IOWarrior trennen IowKitCloseDevice( IowHandle) ; Quelltext Trennen der Verbindung zum IOWarrior beim Beenden der Anwendung Seite 34

35 IO rojekte mit der USB Schnittstelle 6. Eingabe variabler Werte mit einem Drehimpulsgeber Immer mehr ersetzen Drehimpulsgeber herkömmliche otentiometer und Stufenschalter. Diese arbeiten gegenüber mechanischen otentiometern nahezu verschleißfrei und sind auch gegenüber der Störung durch hochfrequente Signale unempfindlich. Ein Drehimpulsgeber ist ein Bauteil, der beim Drehen Impulse erzeugt. Diese Impulse sind von der Drehrichtung abhängig und können mit einer entsprechenden, zusätzlich benötigten Elektronik ausgewertet werden. Oft sind Drehimpulsgeber noch mit einer zusätzlichen Druck Taster Funktion ausgerüstet. Mit einem Drehimpulsgeber kann daher eine einfache Werteingabe oder Menüauswahl erfolgen. Durch Drehen kann ein Wert geändert oder ein Menüpunkt ausgewählt werden und mit einem Druck auf die Achse erfolgt die Bestätigung dieses Werts oder des Menüpunkts. 6. Aufbau und Signalschema eines Drehimpulsgebers Der hier dargestellte Drehimpulsgeber besitzt 5 ins: 3 ins für die Drehimpulse (A, B und GND) und 2 ins für die Taster Funktion. Dreht man die Achse, so entsteht an den ins A und B ein Taktmuster. Diese beiden ins dienen dabei als Schalter, welche je nach Stellung der Achse entweder geöffnet oder geschlossen sind. B GND Taster A Abbildung 6.. Aufbau eines Drehimpulsgebers Die Drehachse besitzt bei den in elektronischen Geräten zur Eingabe von Werten verwendeten Drehimpulsgebern pro Umdrehung meist 3 leichte Rastpositionen. ro Umdrehung erzeugen beide "Schalter" 5 Rechteckimpulse, welche um etwa 6ms zueinander verschoben sind. Bei einer Drehung im Uhrzeigersinn ergibt sich für AB die folgende Bitabfolge: Bei einer Drehung gegen den Uhrzeigersinn ergeben sich für AB die Bitzustände: Daraus lässt sich die Richtung bestimmen in welche die Achse des Drehimpulsgebers bewegt wurde. Zu beachten ist dabei, dass die Frequenz der Bestimmung der Schaltzustände von A und B hoch genug sein muss um die Verschiebung von 6 ms auflösen zu können. Rasterpositionen Drehung im Uhrzeigersinn Drehung gegen den Uhrzeigersinn A B A B Abbildung 6..2 Signalschema an den beiden ins A und B bei unterschiedlicher Drehrichtung Analyse der Signale Eine Software zur Auswertung der Signale muss die Zustände der beiden Schalter in einem entsprechend kleinen Zeitintervall abfragen und auf eine Änderung der Schaltzustände reagieren. Eine solche Änderung kann entweder das Erreichen einer Rastposition oder das Wechseln in eine osition zwischen den Rasten sein. Eine Analyse der Drehrichtung wird nur bei Erreichen einer Rastposition durchgeführt. An den Rastpositionen sind beide Schalter geschlossen (AB = ) oder beide Schalter geöffnet (AB = ). Aufgrund des Zustands vor Erreichen einer dieser Rastpositionen kann die Richtung der Drehung bestimmt werden, die zu diesem Zustand geführt hat. Die Software muss die Werte vor einer Änderung zwischenspeichern, da diese zur Bestimmung der Drehrichtung bei Erreichen einer Rastposition benötigt werden. Aus dem Taktmuster ergibt sich: Rastposition : zuvor Drehung im Uhrzeigersinn, zuvor Drehung gegen den Uhrzeigersinn Rastposition : zuvor Drehung im Uhrzeigersinn, zuvor Drehung gegen den Uhrzeigersinn Seite 35

36 IO rojekte mit der USB Schnittstelle 6.2 Schaltplan Der Anschluss eines Drehimpulsgebers an den IOWarrior ist verhältnismäßig einfach. Die beiden ins A und B können direkt mit je einem in des IOWarrior verbunden werden. Der mittlere Anschluss des Drehimpulsgebers GND wird mit der Masse des IOWarrior verbunden. Ein in des Druck Tasters wird mit einem in des IOWarrior verbunden, der zweite mit GND. IO WARRIOR24 GND B GND A 9 Abbildung 6.2. Schaltplan Anschluss eines Drehimpulsgebers an den IOWarrior 6.3 Bauplan Abbildung 6.3. Bauplan Anschluss eines Drehimpulsgebers an den IOWarrior Seite 36

37 IO rojekte mit der USB Schnittstelle 6.4 Anwendung 5 Auswertung der Daten eines Drehimpulsgebers IOW_Drehimpulsgeber Diese Anwendung soll die Drehbewegung und den Zustand des Druck Tasters des Drehimpulsgebers auswerten und grafisch darstellen. Der einzustellende Wert soll im Bereich zwischen 4 und +4 liegen, in einem Label angezeigt werden und zusätzlich einen Schieberegler bewegen. Dabei ist zu berücksichtigen, dass auch eine Änderung des Schiebereglers mit der Maus den Wert verändern kann. Ein anel soll den gedrückten Zustand des Druck Tasters signalisieren. Verwendete Komponenten roduktidlabel (Label) SeriennummerLabel (Label) WertLabel (Label) WertBar (TrackBar, Minimum 4, Maximum 4) Tasteranel (anel) ReadTimer (Timer, Interval 2) Abbildung 6.4. Screenshot der Anwendung IOW_Drehimpulsgeber Definition globaler Variablen und Import der benötigten Funktionen aus der iowkit.dll Zu Beginn werden die globale Variable IowHandle und das Array Data[] definiert. Zusätzlich werden in dieser Anwendung noch die globalen Variablen A, B, Aold und Bold (Zustand der Schalter im Drehimpulsgeber) und die Variable Wert (der mit dem Drehimpulsgeber veränderbare Zahlenwert) verwendet. Zum Import der benötigten Funktionen aus der iowkit.dll muss die Klasse System.Runtime.InteropServices mit einer using Anweisung eingebunden werden. public partial class MainForm : Form // Definition der global benötigten Variablen int IowHandle; byte[ ] Data; int A, Aold; int B, Bold; int Wert; // Import der benötigten Funktionen aus der iowkit. dll [ DllImport( "iowkit", SetLastError=true) ] public static extern int IowKitOpenDevice( ) ; [ DllImport( "iowkit", SetLastError=true) ] public static extern void IowKitCloseDevice( int iowhandle) ; [ DllImport( "iowkit", SetLastError=true) ] public static extern int IowKitWrite( int iowhandle, int numipe, ref byte buffer, int length) ; [ DllImport( "iowkit", SetLastError=true) ] public static extern int IowKitReadNonBlocking( int iowhandle, int numipe, ref byte buffer, int length) ; [ DllImport( "iowkit", SetLastError=true) ] public static extern short IowKitGetroductId( int iowhandle) ; [ DllImport( "iowkit", SetLastError=true) ] public static extern bool IowKitGetSerialNumber( int iowhandle, ref short serialnumber) ;... Quelltext 6.4. Definition globaler Variablen und Import der benötigten Funktionen aus der iowkit.dll Seite 37

Hardwarehandbuch USB - RS232 - Mediacontroller - Translator

Hardwarehandbuch USB - RS232 - Mediacontroller - Translator Hardwarehandbuch USB - RS232 - Mediacontroller - Translator Version 2013.02 EG-Konformitätserklärung Für folgende Erzeugnisse IRTrans USB IRTrans RS232 IRTrans IR Busmodul IRTrans Translator / XL IRTrans

Mehr

Bestückte Leiterplatte für drahtlose digitale Teilkreise

Bestückte Leiterplatte für drahtlose digitale Teilkreise Bestückte Leiterplatte für drahtlose digitale Teilkreise Stark miniaturisierte Leiterplatte mit zum Projekt von Dave Ek und Craig Combes kompatibler Schaltung Geringe Stromaufnahme, weiter Eingangsspannungsbereich,

Mehr

Einfache Computersteuerung für Modellbahnen

Einfache Computersteuerung für Modellbahnen Einfache Computersteuerung für Modellbahnen Was soll eigentlich mit einem Computer gesteuert werden? Diese Frage muss man sich als erstes stellen: - Man braucht für Ausstellungen einen kompletten automatischen

Mehr

Schalten mittels Transistor

Schalten mittels Transistor Manfred Kämmerer Technische Informatik Seite 1 Schalten mittels Transistor Der Transistor, der in Abbildung 1 gezeigten Schaltung (BC 237), arbeitet als elektronischer Schalter in Emitterschaltung. Die

Mehr

guloprog S mk II von guloshop.de

guloprog S mk II von guloshop.de guloprog S mk II USBasp für Steckplatinen Seite 1 Version 2.0 2014-10-08 guloprog S mk II von guloshop.de Willkommen bei guloprog S dem Mikrocontroller-Programmer für Steckplatinen! Mit dem guloprog S

Mehr

Projekt Nr. 15: Einen elektronischen Würfel erstellen

Projekt Nr. 15: Einen elektronischen Würfel erstellen Nun wissen Sie, wie Sie Zufallszahlen erzeugen können. Als Nächstes wollen wir diese neuen Kenntnisse gleich in die Tat umsetzen, indem wir einen elektronischen Würfel konstruieren. Projekt Nr. 15: Einen

Mehr

Sprachausgabe. Die Steuerung des Interfaces kann, abhängig von der Besückung über I2C, RS232 oder USB erfolgen

Sprachausgabe. Die Steuerung des Interfaces kann, abhängig von der Besückung über I2C, RS232 oder USB erfolgen Sprachausgabe Einleitung Dieses Interface ist bindet das Sprachausgabe Modul MSM2 von ELV in da MYC System ein. Das Interface arbeitet als Slave am I2C Bus oder kann über RS232 /USB gesteuert werden. Dieses

Mehr

Microcontroller Kurs. 08.07.11 Microcontroller Kurs/Johannes Fuchs 1

Microcontroller Kurs. 08.07.11 Microcontroller Kurs/Johannes Fuchs 1 Microcontroller Kurs 08.07.11 Microcontroller Kurs/Johannes Fuchs 1 Was ist ein Microcontroller Wikipedia: A microcontroller (sometimes abbreviated µc, uc or MCU) is a small computer on a single integrated

Mehr

799 000 684 / Rev. 1 / 21.5.2013. Quick Guide für FDT Basic-Tool und Backup-Tool SERIE P40T

799 000 684 / Rev. 1 / 21.5.2013. Quick Guide für FDT Basic-Tool und Backup-Tool SERIE P40T 799 000 684 / Rev. 1 / 21.5.2013 Quick Guide für FDT Basic-Tool und Backup-Tool SERIE P40T Herausgeber ELGO Electronic GmbH & Co. KG Carl-Benz-Straße1 DE-78239 Rielasingen Technischer Support +49 (0) 7731

Mehr

AVR Net-IO. Der originale von Pollin vertriebene Bausatz hat folgende Eckdaten:

AVR Net-IO. Der originale von Pollin vertriebene Bausatz hat folgende Eckdaten: AVR Net-IO 2013 DL2USR Bitte alles sorgfältig lesen. Weitere Hinweise enthält die Readme.txt im Softwareordner. Keine Garantie für Vollständigkeit und Fehlerfreiheit, kein Support in irgendeiner Art! Ein

Mehr

4 DIGITALE SCHALTUNGSTECHNIK

4 DIGITALE SCHALTUNGSTECHNIK Digitale Schaltungstechnik 59 4 DIGITALE SCHALTUNGSTECHNIK Um Daten zu verarbeiten, verwenden Computer als grundlegende Größen logische Variablen, die genau zwei Zustände annehmen können, nämlich den Wert

Mehr

Adressbeispiele Binär Schalterbild

Adressbeispiele Binär Schalterbild Datenblatt Features Controller kann DMX 512 empfangen oder senden Bis zu 360W Schaltleistung (3x 5A bei 24V) 3 PWM Kanäle Onboard, 7-24V DMX 512 zu WS2801 fähig Bequem programmierbar über Fernbedienung

Mehr

Einführung in das Microsoft.NET-Framework. Programmiersprache C# MEF Das Managed Extensibility Framework. André Kunz

Einführung in das Microsoft.NET-Framework. Programmiersprache C# MEF Das Managed Extensibility Framework. André Kunz Einführung in das Microsoft.NET-Framework Programmiersprache C# MEF Das Managed Extensibility Framework André Kunz 21.09.2010 1 In dieser Einführung bekommen Sie einen kurzen Einstieg in das.net-framework

Mehr

Relaismodul L 208/R Ausgabemodul L 208/A

Relaismodul L 208/R Ausgabemodul L 208/A Technische Daten Sicherheitstechnik Relaismodul L 208/R Ausgabemodul L 208/A Inhalt Seite 1 Beschreibung........................................ 2 1.1 L208/R..............................................

Mehr

System-Update. 3. In diesem Ordner müssen nun folgende vier Dateien vorhanden sein:

System-Update. 3. In diesem Ordner müssen nun folgende vier Dateien vorhanden sein: System-Update 3. In diesem Ordner müssen nun folgende vier Dateien vorhanden sein: Um den internen Speicher Ihres Tablets vollständig nutzbar zu machen, können Sie ein Update installieren, das Sie über

Mehr

für POSIDRIVE FDS 4000

für POSIDRIVE FDS 4000 AS-Interface Ankopplung für Frequenzumrichter POSIDRIVE FDS 4000 Dokumentation Vor der Inbetriebnahme unbedingt diese Dokumentation, sowie die Montage- und Inbetriebnahmeanleitung für POSIDRIVE FDS 4000

Mehr

Elektrische Schnittstelle 21MTC

Elektrische Schnittstelle 21MTC Normen Europäischer Modellbahnen Elektrische Schnittstelle MTC NEM 660 Seite von 5 Empfehlung Maße in mm Ausgabe 0 (ersetzt Ausgabe 0). Zweck der Norm Diese Norm legt eine einheitliche Schnittstelle zum

Mehr

Starthilfe für C# Inhaltsverzeichnis. Medien- und Kommunikationsinformatik (B.Sc.) Alexander Paharukov. Informatik 3 Praktikum

Starthilfe für C# Inhaltsverzeichnis. Medien- und Kommunikationsinformatik (B.Sc.) Alexander Paharukov. Informatik 3 Praktikum Starthilfe für C# Inhaltsverzeichnis Allgemeines... 2 Bezugsquellen... 2 SharpDevelop... 2.NET Runtime... 2.NET SDK... 2 Installation... 2 Reihenfolge... 2 Vorschlag für eine Ordnerstruktur... 3 Arbeit

Mehr

KidTime Order. Seite 1

KidTime Order. Seite 1 KidTime Order Download der Bestelldateien... 2 Bestellung erstellen, persönliche Daten eingeben... 3 Fertiges Paket mit USB-Sticks bestellen... 3 Lizenzen bestellen... 4 Bestellung senden und bezahlen...

Mehr

Wissenswertes zu LEuchtdioden

Wissenswertes zu LEuchtdioden Wissenswertes zu LEuchtdioden LEDs (Lichtemmittierende Dioden) nehmen ständig an Bedeutung zu. Auf Grund ihrer einfachen Handhaben und der extrem langen Lebensdauer von ca. 100 000 Betriebs-stunden lösen

Mehr

Hardware und Software engineering Industrielle Steuer- und Regeltechnik. Hardwarebeschreibung CBOX V0113

Hardware und Software engineering Industrielle Steuer- und Regeltechnik. Hardwarebeschreibung CBOX V0113 Hardwarebeschreibung CBOX V0113 Serielles Kasseninterface für Kaffeemaschinen mit OP1-Interface Version vom: 10.04.2001 Update: 05.11.2008 Hardware CBOX V0113 Industriestrasse 49 Seite 1/9 1. Anwendung

Mehr

Installation des Bondruckers TM-T88xx, der mittels eines USB-Adapters (COM-to-USB) an der USB-Schnittstelle angeschlossen ist.

Installation des Bondruckers TM-T88xx, der mittels eines USB-Adapters (COM-to-USB) an der USB-Schnittstelle angeschlossen ist. Installation des Bondruckers TM-T88xx, der mittels eines USB-Adapters (COM-to-USB) an der USB-Schnittstelle angeschlossen ist. Wichtige Hinweise: - Schließen Sie den Drucker und den USB-Adapter noch NICHT

Mehr

Tapps mit XP-Mode unter Windows 7 64 bit (V2.0)

Tapps mit XP-Mode unter Windows 7 64 bit (V2.0) Tapps mit XP-Mode unter Windows 7 64 bit (V2.0) 1 Einleitung... 2 2 Download und Installation... 3 2.1 Installation von WindowsXPMode_de-de.exe... 4 2.2 Installation von Windows6.1-KB958559-x64.msu...

Mehr

Technische Hinweise zu den Geräten der JAP-Serie

Technische Hinweise zu den Geräten der JAP-Serie Technische Hinweise zu den Geräten der JAP-Serie Inhalt: Sicherheitshinweise Systembeschreibung Softwareinstallation Inbetriebnahme Bedienung Fragen/Antworten Sicherheitshinweise: Die Antennensteckdosen

Mehr

Ein Mikrocontroller ist ein Mikrochip, der alle benötigten Komponenten (sozusagen das Zubehör) bereits in sich trägt. Er sieht genauso aus wie 11

Ein Mikrocontroller ist ein Mikrochip, der alle benötigten Komponenten (sozusagen das Zubehör) bereits in sich trägt. Er sieht genauso aus wie 11 Einleitung Du wolltest schon immer programmieren oder mit den Bestandteilen eines Computers arbeiten? Du wirst zwar nach diesem Buch keinen Computer bauen können, aber die Einleitung erklärt einiges, was

Mehr

Anleitung zum Firmware-Update für das 8 INTENSOTAB

Anleitung zum Firmware-Update für das 8 INTENSOTAB Anleitung zum Firmware-Update für das 8 INTENSOTAB Dieses Update bringt Ihnen die Vorteile von Android 4.0 Ice Cream Sandwich auf Ihr 8 INTENSOTAB. Wichtig: - Bitte beachten Sie, dass es durch den Updatevorgang

Mehr

SX3 PC Software rev. 0.99c

SX3 PC Software rev. 0.99c SX3 PC Software rev. 0.99c SX3 ist ein Programm zur Steuerung einer Selectrix Digitalzentrale unter Linux bzw. Windows. Mit SX3 haben Sie die Möglichkeit Selectrix -Loks zu fahren, Weichen zu Schalten

Mehr

MB-Diplom (4. Sem.) / MB-Bachelor (Schwerpunkt Mechatronik, 5. Sem.) Seite 1 von 8. Wintersemester 2014/15 Elektronik

MB-Diplom (4. Sem.) / MB-Bachelor (Schwerpunkt Mechatronik, 5. Sem.) Seite 1 von 8. Wintersemester 2014/15 Elektronik MB-Diplom (4. Sem.) / MB-Bachelor (Schwerpunkt Mechatronik, 5. Sem.) Seite 1 von 8 Hochschule München Fakultät 03 Zugelassene Hilfsmittel: alle eigenen, Taschenrechner Matr.-Nr.: Hörsaal: Wintersemester

Mehr

TCP/IP Programmierung. C# TimeServer Java6 TimeClient

TCP/IP Programmierung. C# TimeServer Java6 TimeClient TCP/IP Programmierung C# TimeServer Java6 TimeClient Stand 19.10.11 21:24:32 Seite 1 von 16 Inhaltsverzeichnis Erläuterung...3 Software...3 C#TimeServer...4 Klasse ServerThread...6 Starten und Beenden...7

Mehr

B-Speech MiniPad Anleitung zur Schnellinstallation. Anleitung zur Schnellinstallation. Seite 1 von 12

B-Speech MiniPad Anleitung zur Schnellinstallation. Anleitung zur Schnellinstallation. Seite 1 von 12 Anleitung zur Schnellinstallation Seite 1 von 12 Inhaltsverzeichnis B-Speech MiniPad Anleitung zur Schnellinstallation BK300 Anleitung zur Schnellinstalltion.. 3 Pocket PC / Microsoft Smartphone.. 4 Systemanforderungen....

Mehr

Whitepaper. Produkt: combit List & Label 16. List & Label Windows Azure. combit GmbH Untere Laube 30 78462 Konstanz

Whitepaper. Produkt: combit List & Label 16. List & Label Windows Azure. combit GmbH Untere Laube 30 78462 Konstanz combit GmbH Untere Laube 30 78462 Konstanz Whitepaper Produkt: combit List & Label 16 List & Label Windows Azure List & Label Windows Azure - 2 - Inhalt Softwarevoraussetzungen 3 Schritt 1: Neues Projekt

Mehr

1. Download. 2. Installation

1. Download. 2. Installation 1. Download Klicken Sie auf den Link, den Sie per Email erhalten haben und laden Sie die Installationsdatei auf Ihre Festplatte herunter. Wichtig: Bitte merken Sie sich gut, wo auf Ihrer Festplatte Sie

Mehr

SMART CD PROGRAMMIERGERÄT

SMART CD PROGRAMMIERGERÄT Stand: Dezember 2014 Inhaltsverzeichnis 1.0 SICHERHEITSHINWEISE 3 2.0 EINFÜHRUNG 3 3.0 ANSCHLUSS AN EINEN PC/LAPTOP 4 3.1 Laden der Akkus 4 4.0 KONFIGURATION DER BLUETOOTH VERBINDUNG 5 4.1 Erstmalige Installation

Mehr

TREIBER INSTALLATIONSPROZESS WINDOWS 7 (32 oder 64 BIT)

TREIBER INSTALLATIONSPROZESS WINDOWS 7 (32 oder 64 BIT) TREIBER INSTALLATIONSPROZESS WINDOWS 7 (32 oder 64 BIT) N-Com Wizard 2.0 (und folgenden) VORAUSSETZUNG: ART DES BETRIEBSSYSTEM DES JEWEILIGEN PC 1. Klicken Sie auf Start und dann auf Arbeitsplatz. 2. Klicken

Mehr

\ / _\_/_ @ @ ( @ @ ) ooo0o_( )_o0oo --ooo--(_o_)--ooo------- BBBBB BBBBB BB BB BB BB BBBBB BBBBB BB BB BB BB BBBBB asti und BBBBB enny's Ampelanlage

\ / _\_/_ @ @ ( @ @ ) ooo0o_( )_o0oo --ooo--(_o_)--ooo------- BBBBB BBBBB BB BB BB BB BBBBB BBBBB BB BB BB BB BBBBB asti und BBBBB enny's Ampelanlage \ / _\_/_ @ @ ( @ @ ) ooo0o_( )_o0oo --ooo--(_o_)--ooo------- BBBBB BBBBB BB BB BB BB BBBBB BBBBB BB BB BB BB BBBBB asti und BBBBB enny's Ampelanlage Inhaltsverzeichnis (neue Seite) 1 Ampelanlage.......................................

Mehr

Übertragung von MoData2 Dateien mit dem mobilen Gerätecenter unter Windows 7

Übertragung von MoData2 Dateien mit dem mobilen Gerätecenter unter Windows 7 Übertragung von MoData2 Dateien mit dem mobilen Gerätecenter unter Windows 7 1. Für die Verbindung zur MoData2 wird am PC eine freie serielle Schnittstelle benötigt. Wir empfehlen einen USB-Seriell Adapter

Mehr

QuadroPPM - Summensignalencoder für Modellbauempfänger

QuadroPPM - Summensignalencoder für Modellbauempfänger QuadroPPM - Summensignalencoder für Modellbauempfänger Nachbauanleitung 1. Allgemeines Verschiedene Quadrocoptersteuerungen (z.b. die QuadroControl II) verwenden als Eingangssignal von der Fernbedienungsanlage

Mehr

BUSSYSTEME und Interfaces

BUSSYSTEME und Interfaces MIKROPROZESSOR PROGRAMMIERUNG 6. VORLESUNG BIT LV-Nr. 439.026 SS2007 1 I²C Bus I²C (für Inter-Integrated Circuit, gesprochen I-Quadrat-C bzw. I-square-C) ist ein von Philips Semiconductors entwickelter

Mehr

LEGO-Mindstorms-Roboter im Informatikunterricht 1 - mit Java-

LEGO-Mindstorms-Roboter im Informatikunterricht 1 - mit Java- Eckart Modrow LEGO-Mindstorms-Roboter S. 1 LEGO-Mindstorms-Roboter im Informatikunterricht 1 - mit Java- Benutzung in einer Programmierumgebung Für die LEGO-Roboter stehen unter allen gängigen Betriebssystemen

Mehr

TREIBER INSTALLATIONSPROZESS WINDOWS 8 (32 oder 64 BIT)

TREIBER INSTALLATIONSPROZESS WINDOWS 8 (32 oder 64 BIT) TREIBER INSTALLATIONSPROZESS WINDOWS 8 (32 oder 64 BIT) N-Com Wizard 2.0 (und folgenden) IDENTIFIZIEREN SIE IHR BETRIEBSSYSTEM: 1. Als erstes müssen Sie herausfinden ob Sie ein 32 Bit oder ein 64 Bit System

Mehr

TC-GEN Parametrierung via PC-Software

TC-GEN Parametrierung via PC-Software TC-GEN Parametrierung via PC-Software Die Notstromautomatik TC-GEN lässt sich sehr komfortabel über die TCGen Konfigurationssoftware parametrieren. Verdrahtung der TCGEN (Visualisierungs-Modul, Mess-Modul

Mehr

Encoder 1.60. Encoder 1 aus 15. bei Displays, die auf Binärcode ausgelegt sind. Der Encoder wandelt 1 aus n in Dual-Code um.

Encoder 1.60. Encoder 1 aus 15. bei Displays, die auf Binärcode ausgelegt sind. Der Encoder wandelt 1 aus n in Dual-Code um. Displays ZUBEHÖR DISPLAYS Encoder Encoder 1 aus 1 Der Encoder wird benötigt für Ansteuerung 1 aus n bei Displays, die auf Binärcode ausgelegt sind. Der Encoder wandelt 1 aus n in Dual-Code um. 1 aus n-ansteuerung

Mehr

I 2 C. ANALYTICA GmbH

I 2 C. ANALYTICA GmbH HANDBUCH ANAGATE I 2 C ANALYTICA GmbH Vorholzstraße 36 Tel. +49 721 35043-0 email: info@analytica-gmbh.de D-76137 Karlsruhe Fax: +49 721 35043-20 WWW: http://www.analytica-gmbh.de 1 2004-2006, Analytica

Mehr

Ankopplung GSM Interface an FAT2002 (GSM-Option)

Ankopplung GSM Interface an FAT2002 (GSM-Option) Ankopplung GSM Interface an FAT2002 (GSM-Option) ab Firmware-Version 4.24.10.1 Allgemeines Das FAT2002 stellt eine Übermittlung von Meldungen per SMS bereit. Die Meldungen aus der BMZ werden im FAT gemäß

Mehr

Installieren und Einrichten von VirtualBox für TAPPS (V1.0)

Installieren und Einrichten von VirtualBox für TAPPS (V1.0) Installieren und Einrichten von VirtualBox für TAPPS (V1.0) 1 Einleitung... 2 2 Download und Installation... 2 3 Einrichten von VirtualBox am Beispiel Windows XP... 7 4 Einrichten von Windows XP... 26

Mehr

Bausatz Roulette. Best.Nr. 810 163. Sicherheitshinweise:

Bausatz Roulette. Best.Nr. 810 163. Sicherheitshinweise: Bausatz Roulette Best.Nr. 810 163 Sicherheitshinweise:! Bei allen Geräten, die zu ihrem Betrieb eine elektrische Spannung benötigen, müssen die gültigen VDE- Vorschriften beachtet werden. Besonders relevant

Mehr

USB-DMX STAGE-PROFI MK3. Bedienungsanleitung

USB-DMX STAGE-PROFI MK3. Bedienungsanleitung USB-DMX STAGE-PROFI MK3 Bedienungsanleitung USB-DMX STAGE-PROFI MK3 2 Beschreibung Das USB-DMX STAGE-PROFI MK3 Interface ist für die raue Bühnenumgebung ausgelegt. Untergebracht in einem Aluminiumgehäuse

Mehr

instabus EIB System Sensor/Aktor

instabus EIB System Sensor/Aktor Produktname: Binäreingang 1fach / Binärausgang 3fach, 3phasig Bauform: Aufputz Artikel-Nr.: 0598 00 ETS-Suchpfad: Gira Giersiepen, Ein/Ausgabe, Binär/binär, Binärein-/ausgang 1/3fach 3Phasen AP Funktionsbeschreibung:

Mehr

Erste Schritte. Das Arduino-Board. Ihr Fundino-Board. Programmieren für Ingenieure Sommer 2015. Andreas Zeller, Universität des Saarlandes

Erste Schritte. Das Arduino-Board. Ihr Fundino-Board. Programmieren für Ingenieure Sommer 2015. Andreas Zeller, Universität des Saarlandes Erste Schritte Programmieren für Ingenieure Sommer 2015 Andreas Zeller, Universität des Saarlandes Das Arduino-Board Ihr Fundino-Board Anschluss über USB Anschluss über USB Programmierumgebung Download

Mehr

Installationsanleitung Motorola Cablemodem

Installationsanleitung Motorola Cablemodem 1. Anschliessen des Cablemodems Installieren Sie Ihr Cablemodem an einem vor Sonneneinstrahlung geschütztem, sauberen und gut belüftetem Ort. Verbinden Sie Ihr Cablemodem gemäss dem folgenden Bild mit

Mehr

Installation und Benutzung AD.NAV.ZipTools

Installation und Benutzung AD.NAV.ZipTools Installation und Benutzung AD.NAV.ZipTools Version 1.0.0.0 ALTENBRAND Datentechnik GmbH Am Gelicht 5 35279 Neustadt (Hessen) Tel: 06692/202 290 Fax: 06692/204 741 email: support@altenbrand.de Die Komponente

Mehr

Kurzanleitung cyberjack go

Kurzanleitung cyberjack go Kurzanleitung cyberjack go ZN 2054 Kurzanleitung 002-100 cyberjack go 1 Ausführliche Bedienungsanleitung Unter www.reiner-sct.com/manuals finden Sie die ausführlichen Bedienungsanleitungen für alle cyberjack

Mehr

VS NetCom. Kurzanleitung zur Installation

VS NetCom. Kurzanleitung zur Installation VS NetCom Kurzanleitung zur Installation Inhaltsverzeichnis EINLEITUNG...1 HARDWARE KONFIGURATION...1 STROMVERSORGUNG...1 ETHERNET...1 SERIELLER ANSCHLUß...2 TREIBER INSTALLATION...4 START DES INSTALLATION

Mehr

Kurzanleitung Visualisierungssoftware Easywave CCsoft

Kurzanleitung Visualisierungssoftware Easywave CCsoft ELDAT GmbH Im Gewerbepark 14 D-15711 Königs Wusterhausen Tel. + 49 (0) 33 75 / 90 37-0 Fax: + 49 (0) 33 75 / 90 37-90 Internet: www.eldat.de E-Mail: info@eldat.de Titel: Kurzanleitung Visualisierungssoftware

Mehr

Prozess-rechner. auch im Büro. Automation und Prozessrechentechnik. Prozessrechner. Sommersemester 2011. Prozess I/O. zu und von anderen Rechnern

Prozess-rechner. auch im Büro. Automation und Prozessrechentechnik. Prozessrechner. Sommersemester 2011. Prozess I/O. zu und von anderen Rechnern Automation und Prozessrechentechnik Sommersemester 20 Prozess I/O Prozessrechner Selbstüberwachung zu und von anderen Rechnern Prozessrechner speziell Prozessrechner auch im Büro D A D A binäre I/O (Kontakte,

Mehr

Montage. Montage. Auf DIN-Hutschiene 35 mm (EN50022) Einbaulage beliebig Betriebsspannung Un Stromaufnahme Leistungsaufnahme.

Montage. Montage. Auf DIN-Hutschiene 35 mm (EN50022) Einbaulage beliebig Betriebsspannung Un Stromaufnahme Leistungsaufnahme. Datenblatt www.sbc-support.com S-Puls Zähler mit S-Bus Schnittstelle Das S S-Bus Kopplermodul ist ein Gerät zur Erfassung von S-Pulsen. Mit diesem Modul können Verbrauchsdaten jeglicher Messgeräte mit

Mehr

Objektorientiertes Programmieren für Ingenieure

Objektorientiertes Programmieren für Ingenieure Uwe Probst Objektorientiertes Programmieren für Ingenieure Anwendungen und Beispiele in C++ 18 2 Von C zu C++ 2.2.2 Referenzen und Funktionen Referenzen als Funktionsparameter Liefert eine Funktion einen

Mehr

Spannungen und Ströme

Spannungen und Ströme niversität Koblenz Landau Name:..... Institut für Physik orname:..... Hardwarepraktikum für Informatiker Matr. Nr.:..... Spannungen und Ströme ersuch Nr. 1 orkenntnisse: Stromkreis, Knotenregel, Maschenregel,

Mehr

CompuLok Zentrale. Software Interface. Digitalzentrale für DCC und Motorola Format

CompuLok Zentrale. Software Interface. Digitalzentrale für DCC und Motorola Format CompuLok Zentrale Software Interface Digitalzentrale für DCC und Motorola Format Inhalt CompuLok Software Interface... 3 Das Software Interface... 3 Installation... 3 Treiber installieren.... 3 Hinweis

Mehr

Powernet EIB System. Aktor. C D Technische Daten: Versorgung extern

Powernet EIB System. Aktor. C D Technische Daten: Versorgung extern Produktname: Binärein-/ausgang 2/2fach 16 A REG Bauform: Reiheneinbau Artikel-Nr.: 0439 00 ETS-Suchpfad: Gira Giersiepen, Ein/Ausgabe, Binär/binär, Binärein-/ausgang 2/2fach REG Funktionsbeschreibung:

Mehr

Anweisungen zur Installation und Entfernung von Windows PostScript- und PCL-Druckertreibern Version 8

Anweisungen zur Installation und Entfernung von Windows PostScript- und PCL-Druckertreibern Version 8 Anweisungen zur Installation und Entfernung von Windows PostScript- und PCL-Druckertreibern Version 8 Diese README-Datei enthält Anweisungen zum Installieren des Custom PostScript- und PCL- Druckertreibers

Mehr

DKS-Didakt 2012 Installation und Konfiguration

DKS-Didakt 2012 Installation und Konfiguration Dr. Kaiser Systemhaus GmbH Köpenicker Straße 325 12555 Berlin Telefon: (0 30) 65 76 22 36 Telefax: (0 30) 65 76 22 38 E-Mail: info@dr-kaiser.de Internet: www.dr-kaiser.de Einleitung DKS-Didakt 2012 Installation

Mehr

Quanton Manual (de) Datum: 20.06.2013 URL: http://wiki:8090/pages/viewpage.action?pageid=9928792 )

Quanton Manual (de) Datum: 20.06.2013 URL: http://wiki:8090/pages/viewpage.action?pageid=9928792 ) Datum: 20.06.2013 URL: http://wiki:8090/pages/viewpage.action?pageid=9928792 ) Inhaltsverzeichnis 1 quanton flight control rev. 1 3 1.1 Anschlüsse für Peripheriegeräte 3 1.1.1 Eingänge / Ausgänge 3 1.1.2

Mehr

2 USBundLinuxhotplug. 2.1 Eigenschaften von USB. In diesem Kapitel lernen Sie. das USB-Schichtenmodell kennen.

2 USBundLinuxhotplug. 2.1 Eigenschaften von USB. In diesem Kapitel lernen Sie. das USB-Schichtenmodell kennen. 2 USBundLinuxhotplug In diesem Kapitel lernen Sie das USB-Schichtenmodell kennen. die Kernelmodule für USB-Treiber kennen. wie Sie USB-Geräte unter Linux verwenden. dashotplug-system von Linux kennen.

Mehr

Embedded Systems Engineering LU WS2006

Embedded Systems Engineering LU WS2006 Embedded Systems Engineering LU WS2006 Angaben zum Bonusbeispiel Hardware-Design Allgemeines In diesem Projekt sollen Sie eine Leiterplatte sowie Fertigungsdaten für eine kleine elektronische Schaltung

Mehr

AMB8460 und AMB2560 Schnell Start

AMB8460 und AMB2560 Schnell Start AMB8460 und AMB2560 Schnell Start Version 1.1 AMBER wireless GmbH Albin-Köbis-Straße 18 51147 Köln Tel. 02203-6991950 Fax 02203-459883 email info@amber-wireless.de Internet http://www.amber-wireless.de

Mehr

PARALLELE PCI-SCHNITTSTELLENKARTE

PARALLELE PCI-SCHNITTSTELLENKARTE PARALLELE PCI-SCHNITTSTELLENKARTE Schnellinstallationsanleitung Einleitung Vielen Dank für den Kauf dieser IEEE 1284 PCI-Schnittstellenkarte. Diese Karte ermöglicht es dem Anwender, sein PC-System um zwei

Mehr

2-PORT USB, VGA UND AUDIO POCKET DATA LINK KVM BEDIENUNGSANLEITUNG (DS-11404)

2-PORT USB, VGA UND AUDIO POCKET DATA LINK KVM BEDIENUNGSANLEITUNG (DS-11404) 2-PORT USB, VGA UND AUDIO POCKET DATA LINK KVM BEDIENUNGSANLEITUNG (DS-11404) Inhalt Einleitung..3 Spezifikationen....4 Installation der Hardware...5 AP-Installation des Pocket Data Link KVM........6 Statussymbole...

Mehr

Jetzt sollt ihr von der Vorlage der Grundversion 1.0 ein eigenes Textadventure erstellen.

Jetzt sollt ihr von der Vorlage der Grundversion 1.0 ein eigenes Textadventure erstellen. Teil B: Erweiterungen Jetzt sollt ihr von der Vorlage der Grundversion 1.0 ein eigenes Textadventure erstellen. Die folgenden Aufgaben und Ausführungen geben einige Hilfestellungen, welche (mindestens

Mehr

Leitfaden zur Installation von Bitbyters.WinShutdown

Leitfaden zur Installation von Bitbyters.WinShutdown Leitfaden zur Installation von Bitbyters.WinShutdown für Windows 32 Bit 98/NT/2000/XP/2003/2008 Der BitByters.WinShutDown ist ein Tool mit dem Sie Programme beim Herunterfahren Ihres Systems ausführen

Mehr

Update Anleitung I-STAT unter Windows 7 WICHTIG. > Version A30 Die Aktivierung der Barcodefunktion muß vor dem Update aktiviert werden

Update Anleitung I-STAT unter Windows 7 WICHTIG. > Version A30 Die Aktivierung der Barcodefunktion muß vor dem Update aktiviert werden Update Anleitung I-STAT unter Windows 7 WICHTIG > Version A30 Die Aktivierung der Barcodefunktion muß vor dem Update aktiviert werden Aktivierung der Barcodelesefunktion am VetScan I-STAT 1 1. VetScan

Mehr

Installationsanleitung MS SQL Server 2005. für Sage 50 Ablage & Auftragsbearbeitung. Sage Schweiz AG D4 Platz 10 CH-6039 Root Längenbold

Installationsanleitung MS SQL Server 2005. für Sage 50 Ablage & Auftragsbearbeitung. Sage Schweiz AG D4 Platz 10 CH-6039 Root Längenbold Installationsanleitung MS SQL Server 2005 für Sage 50 Ablage & Auftragsbearbeitung Sage Schweiz AG D4 Platz 10 CH-6039 Root Längenbold Inhaltsverzeichnis 1. GRUNDSÄTZLICHES... 3 2. SQLExpress Installationsanleitung

Mehr

Die Software "Cherry SmartDevice Setup" unterstützt das Lesen und Schreiben von Chipkarten für folgende Cherry Produkte:

Die Software Cherry SmartDevice Setup unterstützt das Lesen und Schreiben von Chipkarten für folgende Cherry Produkte: Sie haben sich für Cherry entschieden - eine gute Wahl. Die Software "" unterstützt das Lesen und Schreiben von Chipkarten für folgende Cherry Produkte: - SmartBoard G83-6644 - SmartBoard G83-6744 - SmartReader

Mehr

METTLER TOLEDO USB-Option Installation der Treiber unter Windows XP

METTLER TOLEDO USB-Option Installation der Treiber unter Windows XP Diese Anleitung beschreibt den Ablauf bei der Installation und Deinstallation der Treiber für die METTLER TOLEDO USB-Option unter Windows XP. Die USB-Option wird als zusätzliche serielle Schnittstelle

Mehr

Mini-Controller für den Philips Desktop TV-Tuner FI1216MK2

Mini-Controller für den Philips Desktop TV-Tuner FI1216MK2 Robert Tyrakowski, DK7NT 14.04.98, tuner.doc Mini-Controller für den Philips Desktop TV-Tuner FI1216MK2 Zur Referenzfrequenzerzeugung aus dem ZDF Fernsehbild wird ein TV-Empfänger und eine Impulsabtrennbaugruppe

Mehr

Die ActiveX-Komponente COM_V3

Die ActiveX-Komponente COM_V3 Comx3-handbuch Die ActiveX-Komponente COM_V3 1. Einführung COM_V3 ist eine ActiveX-Komponente, welche einige Funktionen zum Programmieren der seriellen Schnittstelle zur Verfügung stellt. COM_V3 kann nicht

Mehr

Inhalt. Pegelumsetzer USB/MP Interface zwischen einer USBund einer MP-Schnittstelle

Inhalt. Pegelumsetzer USB/MP Interface zwischen einer USBund einer MP-Schnittstelle ZIP-USB- Pegelumsetzer USB/ Interface zwischen einer USBund einer -Schnittstelle Inhalt Technische Daten 2 Sicherheitshinweise 2 Produktmerkmale 2 Lokaler Anschluss an Servicebuchse 4 Lokaler Anschluss

Mehr

Einführung in Automation Studio

Einführung in Automation Studio Einführung in Automation Studio Übungsziel: Der links abgebildete Stromlaufplan soll mit einer SPS realisiert werden und mit Automation Studio programmiert werden. Es soll ein Softwareobjekt Logik_1 in

Mehr

Montage- und Bedienungsanleitung

Montage- und Bedienungsanleitung Montage- und Bedienungsanleitung EloStar 7215 - EloXT - 1 - Inhaltsverzeichnis - 1. SYSTEMDARSTELLUNG ELOSTAR 7215...3 2. TECHNISCHE DATEN...4 3. ANSCHLUSSBELEGUNG...5 4. MONTAGE...6 5. KONFIGURATION...8

Mehr

SATA HDD-FESTPLATTE 3.5 USB 3.0 Externes Gehäuse

SATA HDD-FESTPLATTE 3.5 USB 3.0 Externes Gehäuse SATA HDD-FESTPLATTE 3.5 USB 3.0 Externes Gehäuse Bedienungsanleitung (DA-70577) I. Systemanforderung Grundvoraussetzungen für die Installation dieses Gerätes: Hardware-Voraussetzungen: ein PC oder Notebook

Mehr

Userhandbuch. Version B-1-0-2 M

Userhandbuch. Version B-1-0-2 M Userhandbuch Version B-1-0-2 M Inhaltsverzeichnis 1.0 Was bietet mir SERVRACK?... 3 1.1 Anmeldung... 3 1.2 Passwort vergessen?... 3 1.3 Einstellungen werden in Realtime übernommen... 4 2.0 Die SERVRACK

Mehr

SafeRun-Modus: Die Sichere Umgebung für die Ausführung von Programmen

SafeRun-Modus: Die Sichere Umgebung für die Ausführung von Programmen SafeRun-Modus: Die Sichere Umgebung für die Ausführung von Programmen Um die maximale Sicherheit für das Betriebssystem und Ihre persönlichen Daten zu gewährleisten, können Sie Programme von Drittherstellern

Mehr

USB 2.0 Faxmodem. CM3 Computer ohg Schinderstr. 7 84030 Ergolding

USB 2.0 Faxmodem. CM3 Computer ohg Schinderstr. 7 84030 Ergolding USB 2.0 Faxmodem CM3 Computer ohg Schinderstr. 7 84030 Ergolding Bestimmungsgemäße Verwendung Das USB 2.0 Faxmodem ist geeignet einen Computer über einen Standard Telefonanschluss mit dem Internet zu verbinden

Mehr

Klausur vom 14. Juni 2004. Informatik 4

Klausur vom 14. Juni 2004. Informatik 4 Berner Fachhochschule Hochschule für Technik und Informatik, HTI Fachbereich Elektro- und Kommunikationstechnik Labor für Technische Informatik, Burgdorf Klasse: EV02-1 Name, Vorname: Klausur vom 14. Juni

Mehr

bnsyncservice Installation und Konfiguration bnnetserverdienst Voraussetzungen: KWP Informationssysteme GmbH Technische Dokumentation

bnsyncservice Installation und Konfiguration bnnetserverdienst Voraussetzungen: KWP Informationssysteme GmbH Technische Dokumentation bnsyncservice Voraussetzungen: Tobit DAVID Version 12, DVWIN32: 12.00a.4147, DVAPI: 12.00a.0363 Exchange Server (Microsoft Online Services) Grundsätzlich wird von Seiten KWP ausschließlich die CLOUD-Lösung

Mehr

EyeCheck Smart Cameras

EyeCheck Smart Cameras EyeCheck Smart Cameras 2 3 EyeCheck 9xx & 1xxx Serie Technische Daten Speicher: DDR RAM 128 MB FLASH 128 MB Schnittstellen: Ethernet (LAN) RS422, RS232 (nicht EC900, EC910, EC1000, EC1010) EtherNet / IP

Mehr

PC-Software für Verbundwaage

PC-Software für Verbundwaage Dipl.-Ing., Ökonom Tel.: 05601 / 968891 Artur Kurhofer Fax : 05601 / 968892 Bayernstr. 11 Mobil : 0175 / 2742756 www.autese.de 34225 Baunatal a.kurhofer@autese.de PC-Software für Verbundwaage Die hier

Mehr

C# - PROGRAMME MIT PLUGINS ERWEITERN

C# - PROGRAMME MIT PLUGINS ERWEITERN C# - PROGRAMME MIT PLUGINS ERWEITERN Schreibt man ein Programm welches erweiterbar sein soll, dann gibt es häufig mehrere Möglichkeiten dies umzusetzen. Die Objektorientierung ist dabei der erste Schritt,

Mehr

Stromverbrauch messen mit dem Gnublin

Stromverbrauch messen mit dem Gnublin Stromverbrauch messen mit dem Gnublin Autor: Michael Schäferling Datum: 2015 03 12 1. Hardware Der Hardware-Aufbau besteht aus zwei Hauptkomponenten, die aus Sicherheitsgründen (es liegen dort u.a. 230Volt

Mehr

KURZANLEITUNG FÜR DIE. Installation von Nokia Connectivity Cable Drivers

KURZANLEITUNG FÜR DIE. Installation von Nokia Connectivity Cable Drivers KURZANLEITUNG FÜR DIE Installation von Nokia Connectivity Cable Drivers Inhalt 1. Einführung...1 2. Voraussetzungen...1 3. Installation von Nokia Connectivity Cable Drivers...2 3.1 Vor der Installation...2

Mehr

ONE Technologies AluDISC 3.0

ONE Technologies AluDISC 3.0 ONE Technologies AluDISC 3.0 SuperSpeed Desktop Kit USB 3.0 Externe 3.5 Festplatte mit PCIe Controller Karte Benutzerhandbuch Inhaltsverzeichnis: I. Packungsinhalt II. Eigenschaften III. Technische Spezifikationen

Mehr

Handbuch DrahtexLabelwriter 3.0

Handbuch DrahtexLabelwriter 3.0 Handbuch DrahtexLabelwriter 3.0 Inhaltsverzeichnis INSTALLATION 3 DER PROGRAMMSTART 7 DIE PROGRAMMOBERFLÄCHE 8 DIE STARTSEITE DES PROGRAMMES 8 DIE PROGRAMMSYMBOLLEISTE 9 EIN NEUES PROJEKT ERSTELLEN 10

Mehr

SOFTWARE. ekey TOCAhome pc. Herausgeber: ekey biometric systems GmbH Lunzerstraße 64 A-4030 Linz office@ekey.net n www.ekey.net

SOFTWARE. ekey TOCAhome pc. Herausgeber: ekey biometric systems GmbH Lunzerstraße 64 A-4030 Linz office@ekey.net n www.ekey.net SOFTWARE ekey TOCAhome pc Herausgeber: ekey biometric systems GmbH Lunzerstraße 64 A-4030 Linz office@ekey.net n www.ekey.net Ihr Finger ist der Schlüssel Inhaltsverzeichnis 1. ZWECK DIESES DOKUMENTS 3

Mehr

Installationsanleitung OpenVPN

Installationsanleitung OpenVPN Installationsanleitung OpenVPN Einleitung: Über dieses Dokument: Diese Bedienungsanleitung soll Ihnen helfen, OpenVPN als sicheren VPN-Zugang zu benutzen. Beachten Sie bitte, dass diese Anleitung von tops.net

Mehr

Leica DISTO Transfer Wie verbinde ich meinen Leica DISTO mit meinem PC

Leica DISTO Transfer Wie verbinde ich meinen Leica DISTO mit meinem PC Wie verbinde ich meinen Leica DISTO mit meinem PC PC, Labtop 2 Tablet PC, UMPC Installation 1. Bitte laden Sie die aktuellste Version der Leica DISTO Transfer Software auf unserer Homepage herunter: http://ptd.leica-geosystems.com/en/support-downloads_6598.htm?cid=11104

Mehr

Produktinformation USB AVR Lab

Produktinformation USB AVR Lab 1 Produktinformation USB AVR Lab Experimentierplattform Version 3.0 2 Inhaltsverzeichnis Lieferumfang...3 Geräteübersicht...3 Steckerbelegung...4 ISP Stecker...4 Inbetriebnahme...5 Installation unter Windows...5

Mehr

USB 2.0 Sharing Switch

USB 2.0 Sharing Switch USB 2.0 Sharing Switch Benutzerhandbuch Modell: DA-70135-1 & DA-70136-1 Erste Schritte mit dem USB 2.0 Sharing Switch Vielen Dank für den Kauf des USB 2.0 Sharing Switch. Heutzutage können USB-Anschlüsse

Mehr

Anleitung DSL über Satellit für Hama DVB-S PCI Karten 049028 und 049029

Anleitung DSL über Satellit für Hama DVB-S PCI Karten 049028 und 049029 Anleitung DSL über Satellit für Hama DVB-S PCI Karten 049028 und 049029 Vorbereitung: Zuerst müssen folgende Vorraussetzungen sichergestellt sein. Ihr analoges Modem ist korrekt auf Ihren Computer installiert

Mehr