Skip to content
This repository has been archived by the owner on Mar 4, 2022. It is now read-only.

Latest commit

 

History

History

actors

Aktoren


Home

Aktoren (Wandler; Antriebselemente) setzen die elektronischen Signale in mechanische Bewegung oder andere physikalische Grössen um und greifen damit aktiv in die Umgebung des eingebetteten Systems ein.

Beispiele:

  • Dioden, 7-Segement-Anzeigen, Displays
  • Ventile (Pneumatik, Hydraulik)
  • Motoren (Gleichstrom/Wechselstrom)
  • Magnete (Manipulatoren, Lautsprecher)

Anwendungen:

  • In vielen Robotern kommen Standard Boards mit individuellen Shield's zum Einsatz.
  • Der Siegeszug der DIY (Do-it-yourself) 3D Druckern, wäre ohne die Arduino Mega Boards nicht denkbar gewesen.
  • LED Strips eröffnen neue Möglichkeiten für die Dekorative Beleuchtungen von Gegenständen und Räumen.

Beispiele

Servo


Nach oben

http://wiki.rc-network.de/Servo


Der Servo (auch Rudermaschine) hat die Aufgabe, entsprechend dem Signal, dass er vom Empfänger erhält, die Ruder (oder andere Komponenten am Modell) zu stellen.

Servo lassen sich, in der Regel, von 0 - 180° bewegen. Der entsprechende Stellwinkel wird mittels eines Wert von 0.0 bis 1.0 angegeben.

Es gibt analoge und digitale Servos. Der Unterschied liegt darin, dass digitale Servo erst anfangen den Stellwinkel zu wechseln, wenn ein sauberes Signal anliegt.

Weitere Informationen und eine Ausführliche Einführung in Englisch An Introduction to RC Servos

Anwendungen

  • Steuerung von Roboterarmen
  • Modellflugzeuge
  • Schalten von Weichen auf der Modelleisenbahn

Anschlussbelegung (Servo - Shield)

Der Servo wird mit 5V betrieben und kann direkt auf einen der GND/+5V/S Header gesteckt werden. Das orange Kabel des Servo kommt auf S (Signal).

Beispiel(e)

Das Beispiel bewegt 4 Servos.

Compilieren

Umgebung/Board Link/Befehl
Online Compiler Servos
CLI (IoTKit K64F) mbed compile -m K64F --source . --source ../IoTKitV3/actors/Servos;
cp BUILD/K64F/GCC_ARM/template.bin $DAPLINK
CLI (DISCO_L475VG_IOT01A) mbed compile -m DISCO_L475VG_IOT01A -f --source . --source ../IoTKitV3/actors/Servos
CLI (nucleo_f303re) mbed compile -m nucleo_f303re -f --source . --source ../IoTKitV3/actors/Servos

Gleichstrom Motor


Nach oben

Motoren


Elektromotor bezeichnet einen elektromechanischen Wandler (elektrische Maschine), der elektrische Energie in mechanische Energie umwandelt. In herkömmlichen Elektromotoren wird die Kraft, die von einem Magnetfeld auf die stromdurchflossenen Leiter einer Spule ausgeübt wird, in Bewegung umgesetzt.

Der Motor wird mittels eines float Wertes von full Speed rueckwärts (-1.0) nach full Speed vorwärts (1.0) angesprochen.

Ein ruhiger und schonender Motorlauf wird durch die Anpassung der PWM Periode (in Motor.cpp) erreicht. Diese PWM Periode bezieht sich auf die Motor Frequenz (siehe Datenblatt Motor) und wird wie folgt berechnet:

  • Periode (s) = 1 / Frequenz (Hz = 1/s)

Sourcecode aus Motor.cpp

// Set initial condition of PWM
_pwm.period( 1.0f / 50000 );

Ein Motor benötigt die Motor Library und eine Verstärkerschaltung, wie z.B. eine H-Brücke. Eine H-Brücke braucht einen PWM Pin und zwei beliebige Digital Pins pro Motor. Es können zwei Motoren an die H-Bridge M1 und M2 Header angeschlossen werden.

Anwendungen

  • Antrieb von Bahnen, Elektrokarren, Gabelstabel, Funkgesteuerte Modellautos (RC-Car), Robotern etc.

Beispiel(e)

Das Beispiel bewegt 2 DC Motoren vorwärts und rückwärts.

Compilieren

Umgebung/Board Link/Befehl
Online Compiler Motors
CLI (IoTKit K64F) mbed compile -m K64F --source . --source ../IoTKitV3/actors/Motors;
cp BUILD/K64F/GCC_ARM/template.bin $DAPLINK
CLI (DISCO_L475VG_IOT01A) mbed compile -m DISCO_L475VG_IOT01A -f --source . --source ../IoTKitV3/actors/Motors
CLI (nucleo_f303re) mbed compile -m nucleo_f303re -f --source . --source ../IoTKitV3/actors/Motors

Schrittmotor


Nach oben

Schrittmotor


Ansteuerung Schrittmotor


Ein Schrittmotor ist ein Synchronmotor, bei dem der Rotor (drehbares Motorteil mit Welle) durch ein gesteuertes, schrittweise rotierendes, elektromagnetisches Feld der Statorspulen (nicht drehbarer Motorteil) um einen minimalen Winkel (Schritt) oder sein Vielfaches gedreht werden kann.

Ein Schrittmotor hat eine fixe Schrittanzahl pro Umdrehung. Beim verwendeten 28BYJ-48 sind es 2048 Schritte.

Zur erstmaligen Positionierung wird, in der Regel, ein Endstop Schalter verwendet. CNC Maschinen besitzen zusätzlich, wegen der Verletzungsgefahr einen Notstopp Schalter mit Einrastfunktion.

Ein unipolarer Schrittmotor benötigt einen IC Treiber (wie ULN2803N) und 4 Digitale Pins. Es kann je ein Schrittmotore an den Header Stepper1 oder Stepper2 angeschlossen werden.

Ein bipolarer Schrittmotor kann mittels der H-Brücke angesprochen werden, siehe Gleichstrom Motor und Stepper bipolar

Anwendungen

  • Typische Anwendungsgebiete sind Drucker oder der Antrieb des Schreib-/Lesekopfes in einem CDROM Laufwerken. Aufgrund ihrer hohen Genauigkeit werden sie auch in computergesteuerten Werkzeugmaschinen zur Positionierung der Werkzeuge verwendet. Durch die ständig sinkenden Kosten für die Ansteuerelektronik werden sie auch zunehmend im Konsumgüterbereich verwendet. So sind in Kraftfahrzeugen der mittleren und gehobenen Kategorie heute bis über 50 Schrittmotoren im Einsatz, die Betätigung der vielen Klappen einer automatischen Heizungs- und Klimaanlage ist dafür ein Beispiel.

Beispiel(e)

Das Beispiel bewegt 2 Schrittmotoren vorwärts und rückwärts.

Compilieren

Umgebung/Board Link/Befehl
Online Compiler Steppers
CLI (IoTKit K64F) mbed compile -m K64F --source . --source ../IoTKitV3/actors/Steppers;
cp BUILD/K64F/GCC_ARM/template.bin $DAPLINK
CLI (DISCO_L475VG_IOT01A) mbed compile -m DISCO_L475VG_IOT01A -f --source . --source ../IoTKitV3/actors/Steppers
CLI (nucleo_f303re) -

Türöffner


Nach oben

Elektromagnetischer Türöffner


Leistungsstufe (MOSFET o.ä.)


Türöffner gibt es auch als elektrisches Bauteil. Der Riegel wird durch einen elektromagnetischen Magnet geöffnet.

Damit genug Leistung vorhanden ist, wird eine Leistungsstufe, z.B. MOSFET, vorgeschaltet.

Der Türöffner wird an den MOSFET (Header MOSFETs) oder Schrittmotor Leistungsstufe (Header STEPPER1 beim DISCO_L475VG_IOT01A Shield) angeschlossen und mittels DigitalOut angesprochen.

Anwendungen

  • Elektrische Türöffner
  • Schliesssysstem, z.B. in Verbindung mit RFID Reader

Beispiel(e)

Das Beispiel öffnet den Türschliesser beim Druck auf den Button.

Compilieren

Umgebung/Board Link/Befehl
Online Compiler DoorOpener
CLI (IoTKit K64F) mbed compile -m K64F --source . --source ../IoTKitV3/actors/DoorOpener;
cp BUILD/K64F/GCC_ARM/template.bin $DAPLINK
CLI (DISCO_L475VG_IOT01A) mbed compile -m DISCO_L475VG_IOT01A -f --source . --source ../IoTKitV3/actors/DoorOpener
CLI (nucleo_f303re) -

RGB LED Streifen


Nach oben

Beispiel Treppenbeleuchtung


|

RGB LED Strip, siehe Wiki LadyAda


LED Strips (RGB LED Streifen) eröffnen neue Möglichkeiten für die Dekorative Beleuchtungen von Gegenständen und Räumen.

LED Strips werden in Laufmetern mit einer definierten Anzahl von RGB LEDs pro Meter verkauft.

Es gibt unterschiedliche Arten der Ansteuerung, alle LED einer Farbe, jedes RGB LED einzeln.

Im aktuellen Beispiel verwenden wird ein 5V LED Strip mit einem Anschluss pro Farbe. Diese brauchen einen Verstärker, z.B. MOSFET.

Die LED Strip wird an den MOSFETs Header (+ ist oben) oder an die Stepper Leistungsstufe (Header STEPPER1 beim DISCO_L475VG_IOT01A Shield) angeschlossen und benötigen für jede Farbe ein DigitalOut (An/Aus) oder PwmOut (Dimming).

Anwendungen

  • Raumbeleuchtung
  • Dekorative Ausleuchtung von Gegenständen

Beispiel(e)

Das Beispiel bringt die 3 Farben (grün, rot, blau) nacheinnander und gemeinsam (= weiss) zum leuchten.

Compilieren

Umgebung/Board Link/Befehl
Online Compiler RGBLEDStrip
CLI (IoTKit K64F) mbed compile -m K64F --source . --source ../IoTKitV3/actors/RGBLEDStrip;
cp BUILD/K64F/GCC_ARM/template.bin $DAPLINK
CLI (DISCO_L475VG_IOT01A) mbed compile -m DISCO_L475VG_IOT01A -f --source . --source ../IoTKitV3/actors/RGBLEDStrip
CLI (nucleo_f303re) -

Links

Fernseh Simulator


Nach oben

Mittels eine paar farbigen LEDs kann ein einfacher Fernseh Simulator erzeugt werden. Durch das Abwechslungsweise aufblicken der Farben Rot, Grün und Blau wird ein Fernseh ähnliches Lichtspiel erzeugt.

Solche Geräte werden, z.B. von Pearl verkauft.

Beispiel(e)

Das Beispiel verwendet die Verbauten LEDs und den Zufallsgenerator vom Board.

Compilieren

Umgebung/Board Link/Befehl
Online Compiler template Importieren und Inhalt von main.cpp mit Beispielcode überschreiben
CLI (IoTKit K64F) mbed compile -m K64F --source . --source ../IoTKitV3/actors/FernsehSimulatorLED;
cp BUILD/K64F/GCC_ARM/template.bin $DAPLINK
CLI (DISCO_L475VG_IOT01A) mbed compile -m DISCO_L475VG_IOT01A -f --source . --source ../IoTKitV3/actors/FernsehSimulatorLED
CLI (nucleo_f303re) -

Links

Übungen


Nach oben

Ein paar der Übungen funktionieren nur mit dem IoTKitV3 K64F, weil der Encoder benötigt wird.

Übung Lösung
Servo nach links oder rechts bewegen mittels Encoder.
Anwendung: Roboterarm bewegen.
Lösung
Motor mittels Encoder vor-, rückwärts Laufen lassen und zu stoppen. Lösung
Kombiniert den Motor mit Abstandsmesser (Ultraschall Sensor), damit der Motor vor einen Hindernis abstellt.
Schrittmotor jeweils um 90° vor- und zurück bewegen.

Compilieren

Umgebung/Board Link/Befehl
Online Compiler template Importieren und Inhalt von main.cpp Übungscode überschreiben
CLI (IoTKit K64F) mbed compile -m K64F --source . --source ../IoTKitV3/actors/01-Uebung;
cp BUILD/K64F/GCC_ARM/template.bin $DAPLINK
CLI (DISCO_L475VG_IOT01A) mbed compile -m DISCO_L475VG_IOT01A -f --source . --source ../IoTKitV3/actors/01-Uebung
CLI (nucleo_f303re) -
  • 01-Uebung durch entsprechendes Übung Verzeichnis 02-Uebung etc. ersetzen.