DC Brick¶
DC Brick
Mit der DC Brick kann man DC-Elektromotoren (Gleichstrom) steuern.
Vorbereitung und Test mit dem Brick-Viewer¶
Die DC-Brick kann alleine, d.h. ohne eine Master-Brick benutzt und gesteuert werden. Wenn aber mehrere DC-Bricks oder andere Bricks miteinander gestackt werden, dann muss eine Master-Brick zuunterst im Stack dabei sein.
Die DC-Brick besitzt zwei Stecker (grün und schwarz). Der grüne Stecker ist für den Anschluss des DC-Motors. Der schwarze Stecker ist für die externe Stromversorgung, da der USB-Anschluss zuwenig Strom und Spannung liefert um einen Motor zu betreiben. Das Brick kann an eine Spannung zwischen 6 V und 28 V angeschlossen werden.
Unsere Motoren laufen mit einer Spannung von 6 V. Die DC-Brick kann dann einfach mit einer unserer Batteriehalterungen betrieben werden.
Mit dem Brick-Viewer kann dann der Motor getestet werden. Einfach die DC-Brick auswählen und auf Enable DC Motor klicken. Danach kann mit den Parameter gespielt werden. Die Parameter Velocity, Acceleration werden dann in der Initialisierung angegeben. PWM-Frequency muss nicht geändert werden.
Mehrere Motoren steuern
Man braucht für jeden Motor eine DC-Brick, welche man stappeln kann. Damit man nicht jede DC-Brick mit einer Batterie versorgen muss, kann man zuunterst im Stack eine Step-Down Power-Supply anbringen. Diese kann dann mit der Batterie verbunden werden und versorgt dann alle Bricks im Stappel mit dem benötigten Strom.
Initialisierung¶
Code um die DC-Brick anzusteuern
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 |
|
Funktionen im Hauptprogramm¶
Den Motor steuern
dcBrick.enable()
aktiviert den Motorentreiber. Dieser kann nun angesteuert werden.
dcBrick.set_velocity(velocity)
setzt die Geschwindigkeit des Motors. velocity
eine ganze Zahl ist. Hierbei sind -32767 maximale Geschwindigkeit rückwärts, 0 ist Halt und 32767 maximale Geschwindigkeit vorwärts.
dcBrick.disable()
deaktiviert den Motorentreiber.
Test
Eine Deaktivierung während der Motor sich noch dreht kann zur Beschädigung der Brick führen. Der Motor sollte durch Aufrufen von set_velocity(0)
gestoppt werden, bevor disbale()
aufgerufen wird. Die set_velocity()
Funktion wartet nicht bis der Motor wirklich zum Stillstand gekommen ist. Dazu muss nach dem Aufruf der set_velocity()
Funktion eine angemessen Zeit gewartet werden bevor die disable()
Funktion aufgerufen wird.
Beispiel-Programm¶
Beispiel
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 |
|