Changes between Version 7 and Version 8 of 2011/Programmierung


Ignore:
Timestamp:
Apr 1, 2011, 1:17:31 PM (14 years ago)
Author:
Jürgen Berwein
Comment:

--

Legend:

Unmodified
Added
Removed
Modified
  • 2011/Programmierung

    v7 v8  
    6868'''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]]
    6969
    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.).
    7171
    7272[[Image(VerbundenMitFormel1.jpg, 70%)]]
     
    8282[[Image(UploadButton.png)]]
    8383
    84 Ca. 10s Sekunden nach dem Hochladen faengt der Formel1 Wagen an zu fahren. Herzlichen Glueckwunsch fuer dein erstes Arduinoprogramm.
     84Nachdem das Programm hochgeladen wurde, ziehst Du den USB Stecker vom Fahrzeug ab und schaltest '''dann''' den Batteriepack ein bzw. steckst den Stecker wieder drauf.
     85Ca. 10s Sekunden danach, faengt der Formel1 Wagen an zu fahren. Herzlichen Glueckwunsch fuer dein erstes Arduinoprogramm.
    8586
    8687Weitere 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.
     
    9394{{{
    9495robo.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.
    10299}}}
    103100=== Befehle fuer Licht ===
    104101{{{
    105 robo.rechtesLicht( 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 Ruecklicht AN oder AUS.
     102robo.ruecklichtrechts( AN/AUS );  //Schaltet das rechte Licht vorn AN oder AUS.
     103robo.ruecklichtLinks( AN/AUS );    //Schaltet das linke Licht vorn AN oder AUS.
     104robo.ledVorn( AN/AUS );    //Schaltet die vorderen Lichter AN oder AUS.
    108105}}}
    109106=== Steuer Befehle ===
     
    116113{{{
    117114robo.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.
    120117}}}
    121118=== Warte Befehl ===
     
    127124}}}
    128125=== 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 "'''FALL LINKS'''" dann soll ber Befehl fahreRechts() ausgefuert werden.
     126Der 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.
    130127
    131128{{{