Changes between Version 7 and Version 8 of 2011/Programmierung
- Timestamp:
- Apr 1, 2011, 1:17:31 PM (14 years ago)
Legend:
- Unmodified
- Added
- Removed
- Modified
-
2011/Programmierung
v7 v8 68 68 '''Benoetigtes Zubehoer''' [[BR]] Zum Programmieren des Formel1 Autos wird ein USB Kabel [http://www.pollin.de/shop/dt/NDA2ODcyOTk-/Computer_und_Zubehoer/Hardware/Kabel_Stecker_Adapter/USB2_0_Anschlusskabel_A_zu_Mini_B_B5_.html www.pollin.de Bestellnummer: 721 395] mit einem USB Adapter [http://www.watterott.com/de/FTDI-Basic-Breakout-5V www.watterott.com Art.Nr.: 2008438] benoetigt. [[BR]] [[Image(USBKabel.jpg, 200)]] [[Image(FTDI.jpg, 200)]] [[BR]] 69 69 70 '''Anschliessen des !BristelBots mit dem PC''' [[BR]] Verbinde das USB Kabel mit dem USB Adapter und schliesse es an deinem PC an. Stecke jetzt den Adapter an die Platine vom Formel1 Wagen so wie es auf dem Bild zu sehen ist (Die Bauteile des Adapters muessen in Fahrtrichtung zeigen.).70 '''Anschliessen des !BristelBots mit dem PC''' [[BR]] Verbinde das USB Kabel mit dem USB Adapter und schliesse es an deinem PC an. '''Ziehe erst den Stecker des Batteriepacks ab oder schalte mindestens die Batterien aus'''. Stecke jetzt den Adapter an die Platine vom Formel1 Wagen so wie es auf dem Bild zu sehen ist (Die Bauteile des Adapters muessen in Fahrtrichtung zeigen.). 71 71 72 72 [[Image(VerbundenMitFormel1.jpg, 70%)]] … … 82 82 [[Image(UploadButton.png)]] 83 83 84 Ca. 10s Sekunden nach dem Hochladen faengt der Formel1 Wagen an zu fahren. Herzlichen Glueckwunsch fuer dein erstes Arduinoprogramm. 84 Nachdem das Programm hochgeladen wurde, ziehst Du den USB Stecker vom Fahrzeug ab und schaltest '''dann''' den Batteriepack ein bzw. steckst den Stecker wieder drauf. 85 Ca. 10s Sekunden danach, faengt der Formel1 Wagen an zu fahren. Herzlichen Glueckwunsch fuer dein erstes Arduinoprogramm. 85 86 86 87 Weitere Informationen findest du auf der deutschsprachige Homepage http://www.freeduino.de/books/arduino-tutorial-lady-ada oder auf der englischsprachigen Herstellerseite http://arduino.cc/en/Guide/Windows. … … 93 94 {{{ 94 95 robo.init(180); 95 //Der erste Wert (180) setzt die Spannung, die an einem eingeschalteten Motor anliegt. Der Wert muss zwischen 0 und 255 liegen. 0 96 //entspricht 0 Volt, 255 wuerde bei einer 4.5 Volt Spannungsversorgung 4.5 Volt betragen. Da die Motoren nur 3 Volt vertragen, sollte 97 //der Wert nicht viel hoeher als 180 sein. Der zweite Wert definiert den Schwellwert, bei dem die Fototransitoren zwischen Links und 98 //Rechts unterscheiden koennen. Je nach Beleuchtungsituation, kannst du mit diesem Wert experimentieren. Ein hoeherer Wert bedeutet, 99 //dass der Helligkeitsunterschied zwischen den Fototransistoren (weisser Untergrund und schwarzer Untergrund) groesser sein muss. Ein 100 //kleiner Wert laesst den Roboter sensibler auf Helligkeitsunterschiede reagieren. Dies hat zur Folge, dass der Roboter sehr haeufig 101 //die Fahrtrichtung waechselt. 96 //Der Uebergabewert (180) setzt die maximale Spannung, die an einem eingeschalteten Motor anliegt. Der Wert muss zwischen 0 und 255 liegen. 0 97 //entspricht 0 Volt (Motor dreht gar nicht), 255 wuerde bei einer 4.5 Volt Spannungsversorgung 4.5 Volt betragen (voll Stoff). Da die 98 //Motoren nur 3 Volt vertragen, sollte der Wert nicht viel hoeher als 180 sein. 102 99 }}} 103 100 === Befehle fuer Licht === 104 101 {{{ 105 robo.r echtesLicht( AN/AUS ); //Schaltet das rechte Licht vorn AN oder AUS.106 robo. linkesLicht( AN/AUS ); //Schaltet das linke Licht vorn AN oder AUS.107 robo. ruecklicht( AN/AUS ); //Schaltet das RuecklichtAN oder AUS.102 robo.ruecklichtrechts( AN/AUS ); //Schaltet das rechte Licht vorn AN oder AUS. 103 robo.ruecklichtLinks( AN/AUS ); //Schaltet das linke Licht vorn AN oder AUS. 104 robo.ledVorn( AN/AUS ); //Schaltet die vorderen Lichter AN oder AUS. 108 105 }}} 109 106 === Steuer Befehle === … … 116 113 {{{ 117 114 robo.leseSensor(); //Die Fototransistoren werden ausgelesen. Es wird entschieden, welcher der beiden Fototransistoren 118 //mehr Licht empfaengt. Entweder RECHTS, LINKS oder BEIDE empfangen in etwa gleich viel Licht.119 //Der Befehl gibt daher als Ergebnis entweder LINKS, RECHTS oder BEIDE zurueck.115 //mehr Licht empfaengt. Entweder ZU_WEIT_RECHTS, ZU_WEIT_LINKS oder AUF_DER_LINIE empfangen in etwa gleich viel Licht. 116 //Der Befehl gibt daher als Ergebnis entweder ZU_WEIT_LINKS, ZU_WEIT_RECHTS oder AUF_DER_LINIE zurueck. 120 117 }}} 121 118 === Warte Befehl === … … 127 124 }}} 128 125 === Bedingte Ausfuehrung von Befehlen === 129 Der Befehl '''SCHALTE''' fragt den Roboter nach einer bestimmten Situation. Mit '''FALLS''' werden, abhaengig von der Antwort, bestimmte Befehle bis zum break ausgefuert. Waerend des Girlsdays fragen wir den Roboter mit den Befehl leseSensor() nach der Beleuchtungssituation der Fototransistoren. Je nachdem welche Antworten uns der Befehl zurueck gibt (''' LINKS''', '''RECHT''' oder '''BEIDE'''), entscheiden wir was der Roboter tun soll, also "'''FALLLINKS'''" dann soll ber Befehl fahreRechts() ausgefuert werden.126 Der Befehl '''SCHALTE''' fragt den Roboter nach einer bestimmten Situation. Mit '''FALLS''' werden, abhaengig von der Antwort, bestimmte Befehle bis zum break ausgefuert. Waerend des Girlsdays fragen wir den Roboter mit den Befehl leseSensor() nach der Beleuchtungssituation der Fototransistoren. Je nachdem welche Antworten uns der Befehl zurueck gibt (''' ZU_WEIT_RECHTS''', '''ZU_WEIT_LINKS''' oder '''AUF_DER_LINIE '''), entscheiden wir was der Roboter tun soll, also "'''FALL ZU_WEIT_LINKS'''" dann soll ber Befehl fahreRechts() ausgefuert werden. 130 127 131 128 {{{