Tipps und Tricks aus dem Unterricht
Allgemeines
- Am LilyPad, wenn man die analogne Pins verwenden will, nicht A0, sondern nur 0 angeben!!!
- Aber: digitale Komponenten, wie z.B. eine LED lassen sich über analoge Pins nicht steuern => immer an digitale oder PWM Pins anschließen.
- Boards eventuell vom Rechner nicht erkannt, dann Hardware manuell installieren (Treiber in der Arduion Software schon enthalten).
- Wenn etwas nicht mehr geht (Programm lässt sich nicht hochladen, er findet den ComPort nicht mehr etc), dann die Kabelverbindung zum Rechner unterbrechen und neu verbinden oder den Arduino Editor schließen und neu öffnen. Eventuell mehrmals!
- Wichtig: den analogen Pin auf dem Arduino selbst anschließen, nicht auf dem Motorshield, das geht nicht.
- Wenn Motorshield mit extra Strom und mehr als 5 V, dann in Vin auf dem Shield stecken, da nur der Pin mehr als 5 V verträgt!!!!!!!!!!!!!!!!!!!!!!!!!!!!! (Beachten, sonst dampft es;-))
- Sromkabel nie frei rumhängen lassen, immer abisolieren, wenn sie gerade nicht gebraucht werden.
- die Motoren brauchen häufig Extra-Strom aus dem Akku Pack, sonst laufen sie nicht.
- Bei Licht- und Temperatursensor aufpassen – die sehen sehr ähnlich aus!!!!!!
- Vorgehen bei Fehlersuche:
- Programmablauf prüfen (mit Serial.println Werte anzeigen lassen, um zu sehen, wo im Programm der Wurm steckt)
- Hardware Stück für Stück austauschen, eventuell ist ein Sensor oder ein Kabel defekt
_________________
Bluetooth-Shield
- Bluetooth-Shield:
- Funktioniert nur auf dem UNO Board wie beschrieben.
- Beim Upload eventuell die Verbindung von Bluetooth Board zum UNO unterbrechen und erst nach dem uplaod wieder stecken, da es sonst einen Fehler beim upload gibt.
- Bautrate je nach Board richtig einstellen
_________________
Servos
- Servos am Motorshield: auf Steckplatz 5 und 6 anschließen (orange)
- Achtung: möchte man den Servo am Motorshield auf den orangenen Steckplätze (5 und 6) anschließen, so muß man das orangene und das rote Kabel tauschen (rot muss außen sein)
_______________
Kalibrierung
int sensorMin = 1023; // minimum sensor value int sensorMax = 0; // maximum sensor value
// die ersten 5 Sekunden zur Kalibrierung nutzen while (millis() < 5000) { sensorValue = analogRead(sensorPin); // maximum sensor value festhalten if (sensorValue > sensorMax) { sensorMax = sensorValue; } // minimum sensor value festhalten if (sensorValue < sensorMin) { sensorMin = sensorValue; }
_______________________________________________________________________
Anschlüsse auf Motorshield
Sensoren
- digital: 2,3
- analog: a0 – a5
Motoren:
- Servo: 8,12
- DC: 5,6,9
______________________
Achtung: Servos und Motoren brauchen zusätzlich ein Akku-Pack um zu laufen!
Kommentar verfassen