Schaltungsbeschreibung der Roboter - Carl-Engler-Schule

Transcription

Schaltungsbeschreibung der Roboter - Carl-Engler-Schule
Schaltungsbeschreibung Roboter
Schaltungsbeschreibung Roboter
März 2009
StD Otto Bubbers
Carl-Engler-Schule, Karlsruhe
Inhaltsverzeichnis
1
Allgemeine Beschreibung der Roboter................................................................................3
1.1 Kennzeichen der Roboter.........................................................................................................3
1.2 Blockschaltbild.........................................................................................................................3
1.3 Bilder vom Radroboter und Raupenroboter mit je 2 Gleichstrommotoren................................4
2
Sensoren der Roboter............................................................................................................5
2.1 IR-Sensoren an der Frontseite.................................................................................................5
2.1.1Prinzip:................................................................................................................................5
2.1.2Beschreibung.......................................................................................................................5
2.2 IR-Reflexkoppler auf der Unterseite ........................................................................................6
2.2.1Schaltung ............................................................................................................................6
2.3 IR-Fernbedienung und IR-Empfänger .....................................................................................7
2.3.1Aufbau des RC5-Codes ......................................................................................................7
2.3.2Abbildung eines IR-Signals und Funktionsweise des Empfängerprogramms......................7
3
Motoransteuerung.................................................................................................................8
3.1 Ansteuerung eines Gleichstrom-Motors mit dem Brückentreiber L298.....................................8
3.1.1Prinzipieller Aufbau einer Transistorbrückenschaltung .......................................................8
3.1.2Tabelle: Motordrehung und durchgeschaltete Brücken-Transistoren...................................8
3.1.3Innenschaltung des L298.....................................................................................................9
3.2 Roboterbewegungsarten........................................................................................................10
4
Motor-Sensor-Adapter für Logik-Platine............................................................................11
4.1 Motor-Sensor-Adapter-Platine auf der 1016-Platine...............................................................11
4.2 Logik-Platine mit Adapter und Raupenroboter (mit je 2 Gleichstrom-Motoren).......................12
4.3 Schaltung der Logik-Adapter-Platine......................................................................................12
5
Motor-Sensor-Adapter für Controller-Platine.....................................................................13
5.1 Controller-Motor-Adapter-Platine (auf dem Miniboard)...........................................................13
5.2 Controllerplatine mit Radroboter und 2 Gleichstrommotoren..................................................14
5.3 Schaltung des Motor-Sensor-Adapters für die Controllerplatine.............................................14
Carl-Engler-Schule, Bub
1
Schaltungsbeschreibung der Roboter-allgemein.odt
Schaltungsbeschreibung Roboter
1 Allgemeine Beschreibung der Roboter
1.1
•
•
•
•
•
•
•
•
•
Kennzeichen der Roboter
Die Modell-Roboter wurden für Unterrichtszwecke entwickelt.
In Abhängigkeit von Sensoren werden zwei Gleichstrom-Motoren der Roboter gesteuert.
Sensoren: IR-Abstands-Sensoren, Stossstange mit Endschalter, IR-Fernbedienung, IR-FahrstraßenErkennung.
Steuerung mit
o programmierbarer Logik oder
o Mikrocontroller
Vom einfachen UND bis zur komplexen Logikschaltung lassen sich zahlreiche Steuerungen entwerfen,
an denen viele relevante Themen des Informationstechnik- und Computertechnik- Unterrichts gelernt
werden können.
Die einfachen elektronischen Schaltungen können beispielhaft erklärt werden.
Für „Anfänger“ und „Spezialisten“ geeignet!
Ideal für Schülerprojekte und Laborunterricht.
Themenbereiche
o Diode, LED, Transistor
o Infrarot-Sender und Empfänger
o Lichttaster, Reflexkoppler
o Ultraschall-Sender- und Empfänger
o Ansteuerung von Gleichstrommotoren, Transistorbrückenschaltung
o Einführung in die Digitaltechnik
o Steuerungen mit Mikrocontroller
o
1.2
Stromversorgung
Blockschaltbild
LEDs
hell
bei
Low
IR-Sensoren vorne
low-aktiv!
SL SML SMR SR
7
8
9
10
P1.3 P1.2 P1.1 P1.0
Logik oder
IR-Sensoren unten
high-aktiv
UL
UM
3
4
P1.7 P1.6
Controller
UR
LEDs
hell
bei
high
5
P1.5
P2.3 P2.2 P2.1 P2.0
41 42 44 43
5V
7,2V
Start
Motor Links
Carl-Engler-Schule, Bub
ML1 ML2 MR1 MR1
M
M1
1
0
0
M2
0 vor
1 zurück
0 stopp
Motor Rechts
M
2
Schaltungsbeschreibung der Roboter-allgemein.odt
Schaltungsbeschreibung Roboter
1.3
Bilder vom Radroboter und Raupenroboter mit je 2 Gleichstrommotoren
Carl-Engler-Schule, Bub
3
Schaltungsbeschreibung der Roboter-allgemein.odt
Schaltungsbeschreibung Roboter
2 Sensoren der Roboter
2.1
IR-Sensoren an der Frontseite
2.1.1
Prinzip:
Sender: LEDs
Die LEDs senden Infrarot-Licht aus. Der Empfänger erkennt das
vom Hindernis reflektierte Licht. Schwarze Hindernisse werden
nicht erkannt, da sie kein Licht reflektieren.
Bild eines IR-Sensors
Empfänger:
IS471F
Schaltung eines IR-Sensors
+5V
Poti zur Einstellung der Empfindlichkeit
V6
LD274
VCC
Vo
GLout
GND
R3
1k
IR-LEDs mit Reflektoren
2.1.2
IC2mr
IS471F
V8
LED leuchtet wenn
2mA Fläche erkannt (Ausgang low)
Sensorbus
K9
R2
1k
Sensor Mitte-Rechts
+5V
IS471F = modulierender IR-Empfänger
Ausgang = Low wenn Fläche erkannt
K14
C2
33OnF
K12
LED leuchtet, wenn
Objekt erkannt
V5
LD274
K13
IR-Empfänger IS471F
Beschreibung
Vier Infrarot-Sensoren erkennen Hindernisse, die sich vor dem Roboter befinden.
Die Sensoren IS471F modulieren jeweils 2 oder 3 Infrarot-LEDs vom Typ
LD271 oder LD274, die mit Reflektoren versehen sind. Die Modulation
macht die Empfänger unempfindlich gegen Streustrahlung und
gegenseitige Beeinflussung der vier Sensoren.
Die Schaltung kann je nach gewünschter Reichweite mit 3 IR-LEDs oder 2 IR-LEDs und ein Spindelpoti von
1kΩ versehen werden, mit dem sich die Reichweite der Schaltung exakt einstellen lässt. Je nach Objektfarbe
beträgt sie max. 10-20cm. Die Reihenschaltung von 3 Sende-LEDs erhöht die Reichweite auf über 15-25cm.
Der Ausgang des IS471F geht auf Low, wenn ein Objekt erkannt wurde, die LED V4 am Ausgang leuchtet
dann.
Bis maximal 8 Sensorplatinen können über ein Flachbandkabel mit dem Controller oder dem Logik-IC
verbunden werden, sobei sich die Adresse (P1.0 bis P1.7) an jedem Sensor mit Jumpern einstellen läßt.
Carl-Engler-Schule, Bub
4
Schaltungsbeschreibung der Roboter-allgemein.odt
Schaltungsbeschreibung Roboter
2.2
IR-Reflexkoppler auf der Unterseite
3 IR-Reflexkoppler vom Typ CNY70 sind auf der Unterseite angebracht. (6 Stück bei der RoboterVersion2000 oder als Sonderanfertigung) Sie ermöglichen das berührungslose Abtasten einer
Leitlinie, entlang der sich der Roboter bewegen soll. Das Reflektionsvermögen der Leitlinie muss
sich deutlich von der Umgebung unterscheiden. Der Abgleich der Reflexkoppler mit Hilfe von
Spindelpotis erfolgt auf der Platinenoberseite, ebenso die Anzeige des logischen Zustands (Linie
erkannt?) mit LEDs. Die Reflexkoppler sind auf der Platinen-Unterseite montiert. Die
Kollektorausgänge der CNY70 sind auf invertierende Schmitt-Trigger (74HC14) geführt, um
eindeutige, reproduzierbare Schaltschwellen (ein / aus) zu erhalten.
2.2.1
Schaltung
+5V
R1
15O
+5V
R4
IC1
A
C
K
E
22O
R5
IC4a
R10
D1
2mA
D2
2mA
1k5
1OOk
7414
CNY-70
R2
15O
R6
IC2
A
C
K
E
22O
R7
IC4b
R11
7414
+5V
CNY-70
R3
15O
R8
IC3
A
C
K
E
CNY-70
P1.5
P1.6
P1.7
1k5
1OOk
22O
R9
IC4c
Sensorbus
K1
R12
D3
2mA
1k5
1OOk
7414
3 IR-Sensoren unten
Die Reflexkoppler sollten deutlich vor dem Drehpunkt des Roboters montiert werden,sonst fährt der Roboter
in „Schlangenlinien“ über der Leitlinie.
Carl-Engler-Schule, Bub
5
Schaltungsbeschreibung der Roboter-allgemein.odt
Schaltungsbeschreibung Roboter
2.3
IR-Fernbedienung und IR-Empfänger
R28
Das IC TSOP1736 (0,64€ bei
Reichelt) empfängt das IR-Signal
einer Universal-Fernbedienung und
gibt ein serielles Digitalsignal an den
Mikrocontroller weiter.
In den Beispielen ist die
Fernbedienung auf den RC5-Code
programmiert. Dieser wird z.B von
Phillips-Geräten verwendet.
Der IR-Empfänger kann mit einem beliebigen Portpin
verbunden werden
2.3.1
1uF
1OO
+
+5V
TSOP1736
IC4
C94
zum
Controller
IR-Empfänger
Aufbau des RC5-Codes
2 Startbits
1 Togglebit (wechselt bei jeder Übertragung, um das Festhalten einer Taste zu erkennen)
5 Adressbits
6 Befehlsbits
Der RC5-Code verwendet ein biphasenkodiertes Format, d.h. ein Bitzustand wird
1
durch einen Bitwechsel definiert.
Am Ausgang des IR-Empfängers erhält man diese logische Zuordung:
2.3.2
0
Abbildung eines IR-Signals und Funktionsweise des Empfängerprogramms
Beispiel: Taste 1 gedrückt, Signal hat die Adresse eines Fernsehgeräts (00000)
Übertragungsdauer 14 Bit x 1,778ms = 24,889ms
2
StartLogische
0 oder 1
1
1
ToggleBit
1
5 Adress-Bits
hier Adresse 0 = TV
0
0
0
0
6 Befehl-Bits
hier Code der Taste 1
0
0
0
0
0
0
1
Signal
2) 7 Bits einlesen immer in der
Mitte der ersten Bithälfte
1) Beginn des Signals
erkannt, jetzt ¾ Bit w arten
4) 6 Bits einlesen in der
Mitte der ersten Bithälfte
3) Information in der
Speicherstelle IRempfAdr
zw ischenspeichern
6) 1 Bit w arten bis
Signal beendet
5) Information in der
Speicherstelle IRcode
zw ischenspeichern
Es stehen Programme mit und ohne Interrupt zur Verfügung, die das RC5-Signal einlesen und die enthaltene
Information in 2 Speicherstellen ablegen.
Die Steuerungsprogramme sehen dann so aus:
Wenn Taste >> gedrückt, fahre nach rechts
Wenn Taste << gedrückt, fahre nach links usw.
Abbildung rechts: unterer Teil der IR-Fernbedienung
Carl-Engler-Schule, Bub
6
Schaltungsbeschreibung der Roboter-allgemein.odt
Schaltungsbeschreibung Roboter
2.3.3
Programmierte Codes für den RC5-Code
Zur Auswahl der Adresse einfach einmal die entsprechende Geräte-Taste drücken.
Dann wird mit dem Befehl immer automatisch die entsprechende Adresse gesendet.
ProgrammierCode
Geräte-Taste
Adresse
hex
Mute funktioniert
026
TV1
00
ja
278
TV2
05
nein
552
TV3
14
ja
560
VCR1
10
nein
562
VCR2
12
ja
565
AUX1
11
ja
567
AUX2
17
nein
424
AUX3
08
ja
Die Nummerntasten belegen immer die Codes 00000000 (Taste0) bis 00001001 (Taste9)
Codes (sinnvoll für IR-Fernbedienung HeiTech)
#define IR_R
0b00010000
// 01hex IR-Code
#define IR_L
0b00010001
// 11hex IR-Code
#define IR_V
0b00100000
// 20hex IR-Code
#define IR_Z
0b00100001
// 21hex IR-Code
#define IR_S
0b00001101
// 0Dhex IR-Code
//
#define IR_S
0b00001100
// 0Chex IR-Code
Taste
Taste
Taste
Taste
Taste
Taste
Codes (sinnvoll für Fernbedienung Promo2)
#define IR_R
0b00101110
// IR-Code
#define IR_L
0b00101011
// IR-Code
#define IR_V
0b00101101
// IR-Code
#define IR_Z
0b00101100
// IR-Code
#define IR_S
0b00101111
// IR-Code
>>
<<
>
Stop
|| Pause
2.3.4
Taste
Taste
Taste
Taste
Taste
Vol+
VolCh+
ChMute
Ein/Aus
*/
Beispiel:
TV5 drücken -> Adresse 05 gewählt (nur 1x
Vol+ drücken -> Es wird Adresse 05hex und
Vol- drücken -> Es wird Adresse 05hex und
3 drücken
-> Es wird Adresse 05hex und
notwendig)
Code 10hex gesendet.
Code 21hex gesendet.
Code 03hex gesendet.
Zur Programmierung der oben aufgeführten Geräte-Codes SET und Geräte-Taste gleichzeitig drücken ->
LED leuchtet -> Code eingeben -> LED erlischt
Zum Testen das Programm rc5_int_bei_signalbeginn.c verwenden.
IR-Empfänger an P3_2, Jumper in Parkstellung!
Carl-Engler-Schule, Bub
7
Schaltungsbeschreibung der Roboter-allgemein.odt
Schaltungsbeschreibung Roboter
3
Motoransteuerung
3.1
Ansteuerung eines Gleichstrom-Motors mit dem Brückentreiber L298
Um einen Gleichstrommotor in beide Richtungen drehen zu können, muss die Stromrichtung durch den Motor
umkehrbar sein. Möchte man dies mit nur einer Spannungsversorgung erreichen, so sind vier einpolige
Schalter oder zwei Umschalter notwendig. Üblicherweise verwendet man in der Elektronik statt mechanischer
Schaltern vier Transistoren, die in einer Brückenschaltung angeordnet sind.
Der L298 besitzt zwei Brückenschaltungen aus je 4 Transistoren mit zugehöriger Ansteuerlogik.
3.1.1
•
•
•
Prinzipieller Aufbau einer Transistorbrückenschaltung
Die Transistoren sind als Schalter dargestellt.
Schalter geschlossen bedeutet: Transistor leitet
Schalter offen bedeutet: Transistor sperrt
I
I
T1
T2
T2
T1
M
M
T4
T3
T3
T1 und T4 leiten.
Der Stromfluss erfolgt gemäß den Pfeilen von
links nach rechts durch den Motor.
Es erfolgt eine Rechtsdrehung.
T4
T2 und T3 leiten.
Der Stromfluss erfolgt gemäß den Pfeilen von
rechts nach links durch den Motor.
Es erfolgt eine Linksdrehung.
Eine Ansteuerlogik muss dafür sorgen, dass nie T1 und T3 oder T2 und T4 gleichzeitig leiten, dies würde
einen Kurzschluss verursachen.
Leiten jedoch T1 und T2 gleichzeitig (und T3 und T4 sperren) oder T3 und T4 leiten (und T1 und T2 sperren),
so wird der Motor kurzgeschlossen. Ein laufender Motor kann auf diese Art abgebremst werden.
3.1.2
Tabelle: Motordrehung und durchgeschaltete Brücken-Transistoren
0 bedeutet Transistor sperrt, Schalter offen
T1
0
1
0
1
0
T2
0
0
1
1
0
Carl-Engler-Schule, Bub
T3
0
0
1
0
1
T4
0
1
0
0
1
Motor
Leerlauf
Rechtsdrehung
Linksdrehung
Bremsen
Bremsen
8
Schaltungsbeschreibung der Roboter-allgemein.odt
Schaltungsbeschreibung Roboter
3.1.3
Innenschaltung des L298
Diese Brückenschaltung ist im L298 zweimal vorhanden.
Daher können mit einem IC zwei Gleichstrom-Motoren angesteuert werden.
Die Spannungsversorgung für den Motor (Vmotor, GND A) ist getrennt von der Spannungsversorgung der
Logik (Vdig, GND) angeführt. An OutA1 und OutA2 wird der Motor angeschlossen.
Mit den Eingängen INA1, INA2, EnA wird der Motor gesteuert.
In unseren Steuerungsprogrammen benennen wir die Eingänge wie folgt:
:
Motor Links 1
ML1
(=InA1)
Motor Links 2
ML2
(=InA2
Motor Links Enable
MLE (=EnA)
Vdig
Motor
Links
Motor
Recht
ML1
MR1
EnA
ML2
MR2
InA2
T2
&
M
InA1
MRE
OutA2
T1
&
MLE
OutA1 Vmotor
1
T3
&
T4
GND
M_2 M_E M_1
InA2 EnA InA1
x
0
x
0
1
1
1
1
0
1
1
1
0
1
0
1
&
GND A
T1
T2
T3
T4
Motor
Bewegung
0
1
0
1
0
0
0
1
1
0
0
0
1
0
1
0
1
0
0
1
Leerlauf
Rechtsdrehung
Linksdrehung
Bremsen
Bremsen
Stopp,Auslaufen
Vorwärts
Rückwärts
Bremsen
Bremsen
Der Enable-Eingang ist mit dem Start-Stopp-Schalter verbunden und kann nicht von der Software geschaltet
werden.
Die Leitungen der 2 Brückentreiber im L298 sind so mit den Gleichstrom-Motoren verbunden, dass für
die Bewegungsrichtung beider Motoren folgende Tabelle gilt:
+5V
JUMPER
7,2V
+5V
Start
Vdig Vmotor L298
EnA
EnB
OutA1
InB1
InB2
OutA2
Carl-Engler-Schule, Bub
ML
M_1
InA1
x
0
1
0
1
Bewegung
Stopp wenn Schiebeschalter = 0
Bremsen
Vorwärts
Rückwärts
Bremsen
OutB1
OutB2
GND
GND A
GND B
von der
Steuerung
InA1
InA2
M_2
InA2
x
0
0
1
1
MR
Steckverbinder
9
Schaltungsbeschreibung der Roboter-allgemein.odt
Schaltungsbeschreibung Roboter
3.2
Roboterbewegungsarten
Motor
Links
halt
vor
zurück
vor
vor
halt
zurück
halt
zurück
Motor
Rechts
halt
vor
zurück
zurück
halt
zurück
vor
vor
halt
Roboterbewegung
Bild
stopp
vorwärts
zurück
auf der Stelle nach rechts
im Bogen nach rechts vorn
im Bogen nach links zurück
auf der Stelle nach links
im Bogen nach links vorn
im Bogen nach rechts zurück
1
2
3
4
5
6
7
8
mögliche Anwendungen
Hindernis in der Mitte
Hindernis links (IR-Sensor)
Hindernis links in großer Entfernung
Hindernis links vor der Stoßstange
Hindernis rechts (IR-Sensor)
Hindernis rechts in großer Entfernung
Hindernis rechts vor der Stoßstange
1
2
3
4
5
6
7
8
Carl-Engler-Schule, Bub
10
Schaltungsbeschreibung der Roboter-allgemein.odt
Schaltungsbeschreibung Roboter
4 Motor-Sensor-Adapter für Logik-Platine
o
o
o
o
o
o
o
o
4.1
Wird auf die 3 Buchsenleisten aufgesetzt.
Steuert einen bipolaren Schrittmotor oder 2 Gleichstrommotoren
Brückentreiber L298
Steuerprogramme wie für unipolare Schrittmotoren an den 4 OK-Transistor-Ausgängen
Motoren über unverpolbaren Steckverbinder anschließbar.
+5V oder „externe“ Spannung über Jumper wählbar
Start-Schiebeschalter ist mit dem Enable-Eingang des Motortreibers verbunden
d.h. man kann an den LEDs P2 zunächst die richtige Ansteuerung testen bevor sich der Motor dreht.
(Natürlich auch wenn sich der Motor dreht.)
Zusätzliche 10pol Buchsenwanne, um z.B. die IR-Sensor-Platinen für den Roboter anzuschließen.
Motor-Sensor-Adapter-Platine auf der 1016-Platine
Buchsenwanne Verbindung P1 zu
Roboter-IR-Sensoren
Jumper für Wahl +5V oder ext.
Versorgung über Lötnagel
Steckverbinder zum Motor
Schiebeschalter: Start
Carl-Engler-Schule, Bub
11
Brückentreiber L298
Wird angesteuert über
P2.0 bis P2.3
Schaltungsbeschreibung der Roboter-allgemein.odt
Schaltungsbeschreibung Roboter
4.2
Logik-Platine mit Adapter und Raupenroboter (mit je 2 Gleichstrom-Motoren)
4.3
Schaltung der Logik-Adapter-Platine
C2
1OONF
K2
+5V
K13
Sensoren
5V
3
4
5
6
7
8
9
10
+5V
K14
7,2V
+5V
V2
VdigVmotor
Start
S1
EnA
EnB
37
38
39
40
L298
OutA1
InA1
InA2
44
43
InB1
InB2
OutA2
ML
K5
OutB1
OutB2
GND
GND A
GND B
41
42
MR
K6
0V
Carl-Engler-Schule, Bub
12
Schaltungsbeschreibung der Roboter-allgemein.odt
Schaltungsbeschreibung Roboter
5 Motor-Sensor-Adapter für Controller-Platine
o
o
o
o
o
o
o
o
o
5.1
Für Controller-Platinen
Wird auf die Buchsenleisten neben dem Controller aufgesetzt.
Steuert einen bipolaren Schrittmotor oder 2 Gleichstrommotoren
Brückentreiber L298
Gleiche Steuerprogramme wie für unipolare Schrittmotoren an den 4 Transistoren von P2
verwendbar!
Motoren über unverpolbaren Steckverbinder anschließbar.
+5V oder „externe“ Spannung über Jumper wählbar
Start-Schiebeschalter ist mit dem Enable-Eingang des Motortreibers verbunden
d.h. man kann an den LEDs P2 zunächst die richtige Ansteuerung testen bevor sich der Motor dreht.
(Natürlich auch wenn sich der Motor dreht.)
Zusätzliche 10pol Buchsenwanne die zu P1 führt, um z.B. die IR-Sensor-Platinen für den Roboter
anzuschließen.
Controller-Motor-Adapter-Platine (auf dem Miniboard)
Buchsenwanne Verbindung P1 zu
Roboter-IR-Sensoren
Jumper Wahl +5V
oder ext.
Versorgung über
Lötnagel
Steckverbinder zum Motor
Schiebeschalter: Start
Carl-Engler-Schule, Bub
13
Brückentreiber L298
Wird angesteuert über
P2.0 bis P2.3
Schaltungsbeschreibung der Roboter-allgemein.odt
Schaltungsbeschreibung Roboter
5.2
Controllerplatine mit Radroboter und 2 Gleichstrommotoren
5.3
Schaltung des Motor-Sensor-Adapters für die Controllerplatine
+5V
K1
P1
+5V
P1.0
P1.1
P1.2
P1.3
P1.4
P1.5
P1.6
P1.7
+5V
C1
K4
K6
7,2V
+5V
S1
P2.3
P2.2
P2.1
P2.0
K5
100nF
V1
Vdig
EnB
EnA
Vmotor
L298-BRÜCKENTREIBER
K7
Start
InA1
OutA1
InA2
OutA2
InB1
OutB1
InB2
OutB2
M2
GND
GND A
GND B
Pfostenwanne
Verbindung
zu den
Sensoren
M1
K8
K3
Carl-Engler-Schule, Bub
14
Schaltungsbeschreibung der Roboter-allgemein.odt