Heute ist der PC das zentrale Instrument für Aufgaben in der Mess-, Steuer- und Regelungstechnik. In diesem Workshop lernen Sie ganz konkret und praktisch, wie man mit einem Standard-PC und einer über die USB-Schnittstelle angeschlossenen Hardware verschiedenste Steuer-, Mess- und Regelaufgaben erledigt.
Dabei wird die Programmiersprache Visual Basic verwendet. Diese weit verbreitete Programmiersprache bietet die Vorteile der schnellen Erlernbarkeit und der leichten Lesbarkeit des erstellten Codes. Es wird von vorne herein zielorientiert gearbeitet. Es werden die für die Erreichung eines bestimmten Zieles (z.B. wie kann ich vom PC aus eine Lampe ein und ausschalten?) notwendigen Sachverhalte vorgestellt und dann auch praktisch umgesetzt. Das Programmieren lernt man dann so nebenher mit.
Der Workshop beinhaltet:
Programmieren mit Visual Basic .NET
Schalten von elektrischen Verbrauchern (Lampen, Ventilatoren, etc.)
Steuern von Verbrauchern (Helligkeit, Drehzahl, etc.)
Erfassen von Schalterstellungen und Pegelzuständen
Erfassen von elektrischen und nichtelektrischen Größen (Strom, Spannung, Temperatur, Helligkeit, etc.)
Signalerfassung
der PC als Regler (Spannungsregler, Stromregler, Temperaturregler, etc.)
Inhaltsverzeichnis
1. Einführung
1.1 Die verwendete Hardware
1.1.1 Platine "Testaufbau V3SD"
1.2 Grundsätzliches zum Programmieren und zu VisualBasic
1.2.1 Das .NET-Framework
1.2.2 Installation
1.3 Die Entwicklungsumgebung
1.3.1 Projekte anlegen, speichern und öffnen
1.3.2 Programmcode eingeben
1.3.2.1 Regeln zur Syntax
1.3.3 Hello World! und MessageBox
1.3.4 Kommentare einfügen
1.3.5 Objektorientierte Programmierung
1.3.6 Debugging
1.3.6.1 Das Immediate Window
1.3.6.2 Die Error-Liste
1.3.7 Option Explicit und Option Strict
2. Ein- und Ausschalten von LED oder Lampen
2.1 Ressourcen einbinden
2.2 Die Programmoberfläche
2.3 Programmcode zur Ansteuerung des USB-Prozessors
2.3.1 Variablen und Datentypen
2.3.2 Chip anmelden und abmelden
2.3.2.1 Programm beenden
2.3.3 Digitale Ausgänge und Arrays
2.3.4 Gültigkeitsbereiche
2.4 Externe Verbraucher schalten
2.4.1 Der Transistor als Schalter
2.5 Abschaltautomat, Blinker und Summer
2.5.1 Timing aus dem .NET-Framework
2.5.2 Die Do-Loop-Schleife
2.5.2.1 Summer
2.5.3 Bedingtes Ausführen von Codeabschnitten
2.5.3.1 Die IF-Anweisung
2.5.3.2 Sicherheitsabfragen
2.5.4 Timer mit Interrupt/Event
2.5.4.1 Verwendung des Timer-Control-Objektes
2.6 Bitmanipulationen
2.6.1 Funktionen
2.6.2 Bit auf 1 setzen
2.6.3 Bit auf 0 setzen
2.6.4 Bit toggeln (umkehren)
2.6.5 Bits verschieben
2.6.6 Bitmanipulationsroutinen im Modul
2.7 Schalten von 230-V-Netz-Verbrauchern
2.7.1 Schalten mit Relais
2.7.2 Schalten per Funk
2.7.3 Zeitschaltuhr
3. Steuerung von Lampen, Motoren, Heizungen, etc.
3.1 Linear Steuerung
3.1.1 Emitterfolger
3.1.2 Digital-Analog-Umsetzer (DAU)
3.1.2.1 Parallele Wertvorgabe
3.1.2.2 Datenübergabe mit externem DAU
3.1.2.3 UShort zerlegen in High-Byte und Low-Byte
3.1.3 Serielle Busse
3.1.3.1 Der SPI-Bus
3.1.3.2 Der I²C-Bus
3.1.4 Programmierung
3.1.4.1 Programmoberfläche und Entgegennahme des Eingabewertes
3.1.4.1.1 Casting
3.1.4.2 Konfiguration des DAU
3.1.4.3 Daten senden via SPI
3.2 Steuerung mit PWM
4. Erfassen von Schalterzuständen und analogen Werten
4.1 Erfassen der Zustände von I/O-Ports
4.1.1 Portzustände lesen im Standardmodus
4.1.1.1 Code "Bit abfragen"
4.1.2 Portzustände lesen im Spezialmodus
4.1.3 Schalterabfrage und Erfassung physikalischer Größen
4.1.3.1 Magnetismus
4.1.3.2 Licht
4.1.3.3 Temperatur
4.1.3.4 Spannung
4.2 Analogwerte erfassen mit serieller Datenübertragung
4.2.1 Analog-Digital-Wandlung
4.2.1.1 Temperaturmessung
5. Regelung
5.1 Analoge Regelung
5.1.1 Linear-Netzteil
5.1.2 Unterschiedliche Stellglieder
5.2 Regelung in der Software
6. SD-Karte
7. Anhang
7.1 Lebenszeichen in separatem Thread (Multithreading)
7.2 Zwischenablage nutzen
7.3 Beenden von laufenden Prozessen
7.4 Ein Programm mit Administratorrechten versehen
7.5 Position der Bildschirmausgabe
7.6 Code von Fremdprojekten übernehmen
7.7 Ergänzungen zu Funktionen
7.7.1 Parameterübergabe
7.8 Ergänzungen zur Steuern des Programmablaufs
7.8.1 Fallunterscheidungen
7.8.2 Schleife mit fest vorgegebener Zahl der Durchläufe
7.8.3 Vorzeitiger Abbruch einer Schleife, Prozedur oder Funktion
7.8.4 Sprünge
7.8.5 Fehlerbehandlung während der Laufzeit
7.8.5.1 Laufzeitfehler während der Programmentwicklung
7.8.5.2 Laufzeitfehler während der Programmnutzung
7.9 Ergänzungen zum USB-Prozessor "IO-Warrior56"
7.10 Mikrocontroller-Programm
Zielsetzung und Themen
Das Buch vermittelt praxisnah, wie PC-Anwender ihre Hardware über USB-Schnittstellen steuern, messen und regeln können, wobei der Fokus auf dem "IO-Warrior56" und der Programmiersprache VisualBasic liegt.
- Hardware-Grundlagen und USB-Anbindung
- Programmierung mit VisualBasic und .NET-Framework
- Bitmanipulation und Ansteuerung von I/O-Ports
- Realisierung von Regelkreisen in der Software
Auszug aus dem Buch
1. Einführung
Szenario: Auf einem PC erscheint eine Oberfläche mit Buttons, die man anklicken kann oder mit Feldern in denen man einen Wert eintragen kann. Der Computer ist mit einem Interface verbunden an dem verschiedene elektrische Verbraucher angeschlossen sind. Klickt man auf einen Button wird ein Verbraucher z.B. ein- oder ausgeschaltet.
Um das zu ermöglichen wird folgendes benötigt: - ein Standard-PC/Notebook/Tablet - eine Entwicklungsumgebung mit der man Oberflächen erzeugen (programmieren) kann - eine Interface-Elektronik (Karte) die über eine PC-Schnittstelle (USB) mit dem PC verbunden ist - Geräte (Verbraucher) die gesteuert werden
An Hilfsmitteln sollte ein Multimeter (Spannungsmesser) zur Verfügung stehen. Standard-PCs mit USB-Schnittstelle (USB = Universal Serial Bus) sind allgemeinwärtig.
Für das Programmieren wird im Rahmen dieses Buches VisualBasic eingesetzt. Diese weit verbreitete Programmiersprache bietet die Vorteile der schnellen Erlernbarkeit und der leichten Lesbarkeit des erzeugten Codes.
Zusammenfassung der Kapitel
1. Einführung: Grundlagen zur Hardware-Ansteuerung über USB sowie eine Einführung in die Entwicklungsumgebung und VisualBasic.
2. Ein- und Ausschalten von LED oder Lampen: Anleitung zur digitalen Ansteuerung von Ports, Bitmanipulationen und Schaltvorgängen für externe Verbraucher.
3. Steuerung von Lampen, Motoren, Heizungen, etc.: Methoden zur stufenlosen Steuerung mittels DAU, SPI-Bus Kommunikation und Pulsweitenmodulation.
4. Erfassen von Schalterzuständen und analogen Werten: Methoden zum Einlesen von Signalen, Schalterabfragen und die Verarbeitung analoger Messgrößen.
5. Regelung: Konzepte zur Umsetzung analoger und softwarebasierter Regelkreise wie P- und PI-Regler.
6. SD-Karte: Kurze Erläuterung zur physischen Anbindung einer SD-Karte an das Interface.
7. Anhang: Ergänzende Themen wie Multithreading, Fehlerbehandlung, Administratorrechte und spezielle Funktionen für den USB-Prozessor.
Schlüsselwörter
VisualBasic, USB-Schnittstelle, IO-Warrior56, Hardware-Programmierung, Bitmanipulation, SPI-Bus, Digital-Analog-Wandler, Regelungstechnik, Automatisierung, Mikrocontroller, .NET-Framework, Debugging, Schaltlogik, I/O-Ports, Sensortechnik
Häufig gestellte Fragen
Worum geht es in dieser Arbeit grundsätzlich?
Das Buch bietet einen praxisorientierten Workshop zur Steuerung, Messung und Regelung externer Hardware durch einen Standard-PC über eine USB-Schnittstelle.
Was sind die zentralen Themenfelder?
Die Schwerpunkte liegen auf der Softwareentwicklung mit VisualBasic, der Ansteuerung des IO-Warrior56-Moduls, digitaler und analoger Signalverarbeitung sowie grundlegenden Regelungsstrategien.
Was ist das primäre Ziel der Arbeit?
Das Ziel ist es, technikbegeisterten Lesern zu ermöglichen, eigene Projekte wie das Steuern von Lampen, Motoren oder das Erfassen von Umweltdaten per PC zu realisieren.
Welche wissenschaftliche Methode wird verwendet?
Es wird ein projektorientierter Ansatz gewählt, der direkt von den Grundlagen der Programmierung zu praktischen Schaltungsbeispielen und deren Umsetzung führt.
Was wird im Hauptteil behandelt?
Der Hauptteil gliedert sich in die Einführung in das .NET-Framework, das Schalten von Verbrauchern, die analoge Leistungssteuerung mittels Bus-Kommunikation sowie die Messtechnik und Regelungstechnik.
Welche Schlüsselwörter charakterisieren die Arbeit?
VisualBasic, USB-Steuerung, IO-Warrior, Hardware-Programmierung, Regelungstechnik, SPI, Bitmanipulation, I/O-Ports.
Warum ist das Verständnis von "Option Explicit" wichtig?
Es hilft, Programmierfehler durch nicht deklarierte Variablen zu vermeiden und erzwingt eine saubere Strukturierung des Codes während der Entwicklung.
Was unterscheidet den P-Regler vom I-Regler?
Der P-Regler reagiert proportional zur Regelabweichung, während der I-Regler zusätzlich die zeitliche Summe der Abweichungen integriert, um bleibende Regelfehler zu eliminieren.
- Quote paper
- Dipl.-Ing.(TU) Franz Peter Zantis (Author), 2018, Steuern, Messen, Regeln mit dem PC. Ein praktischer Workshop, Munich, GRIN Verlag, https://www.grin.com/document/334908