Arduino

Aus dem Land der aufgehenden Sonne bekommt man mit etwas Wartezeit relativ günstig Elektronikkomponenten, wie den Temperatur- und Luftfeuchtesensor DHT22.
Zum Auslesen des DHT22 benötigen wird den Arduino (In unserem Beispiel der Arduino UNO), ein paar Jumper Kabel und ein Vorwiderstand mit ca. 10kΩ. Der Aufbau kann auf einem Steckboard schnell umgesetzt werden.

Die Pinbelegung des DHT22 sieht wie folgt aus.
Pin1 ist der Pluspol (VCC), ausgelegt für 3V bis 5.5V. Pin2 ist der Data-Out. Pin3 ist nicht belegt. Pin4 ist der Minuspol (GND bzw. Ground).

dht22Der Vorwiderstand von ~10kΩ wird mit dem 5V-Pin des Arduino und dem Pin2 des DHT22 verbunden, anschließend führen wir vom selbem Pin ein Kabel ab, welches auf den Pin8 des Arduino gesteckt wird. Über diesen Pin lesen wir nachher die Daten aus.
Wer Verständnisprobleme hat: Am Ende des Beitrags habe ich ein Bild über die Verkabelung angefügt.
Wenn alles fertig verkabelt ist, kommt der Code-Teil.

Wir benötigen die Arduino library “Arduino-DHT” von GitHub. Dieser Ordner wird in euren Arduino Unterordner /libraries/ verschoben. Unter examples findet sich eine DHL_Test Datei die bereits den kurzen Code von Mark Ruys enthält.
Es muss im Code nur noch der Datapin von 2 auf 8 geändert werden. Die Werte müssen nun auf dem Seriellen Monitor angezeigt werden (Tools -> Serial Monitor).

#include "DHT.h" //Einbindung der Bibliothek

DHT dht; //Variable wird benannt

void setup()
{
  Serial.begin(9600);

  dht.setup(8); // data pin 8 festlegen
}

void loop()
{
  delay(dht.getMinimumSamplingPeriod()); //kuerzester Abfragerhytmus

  Serial.print(dht.getHumidity()); //Luftfeuchte auslesen und ausgeben
  Serial.print("\t");
  Serial.print(dht.getTemperature()); //Temperatur auslesen und ausgeben
}

Die doppelten Querstriche // sind Kommentare um euch die Befehle kurz zu verdeutlichen, sie können auch entfernt werden.

Der Steckboard Aufbau:

DHT22-Aufbau2

Vor einiger Zeit bin ich auf das Buch “Roboter bauen mit Arduino” von Markus Knapp aufmerksam geworden. Dadurch habe ich mein erstes Roboter-Projekt realisiert, über welches ihr im folgenden mehr lesen werdet. Relativ einfach erklärt er im Buch, neben der Programmierung, den Bau eines autonomen Roboters. Im Vorfeld wird auf die Syntax so wie Funktionen von C eingegangen und anschließend, im Bezug auf den Roboter, alles praktisch angewendet.

Markus erklärt im Buch die nötigen Bauteile und verweist auf einen Fertig-Bausatz. Wer es günstig und einfach haben möchte, sollte diesem Weg wählen. Da ich gerne bastel und nicht zwei linke Hände besitze, habe ich für mich die Variante des “selber-bauens” gewählt. Die im Buch erwähnten Bauteile, habe ich mir über Shops, den Baumarkt so wie in Eigenregie selber zusammengesucht und gebaut. Außerdem lernt man durch solche Prozesse am meisten. Selbstständiges Suchen nach passenden Bauteilen, vergleichen, in Erfahrung bringen von fehlenden Informationen und Angaben, Überprüfungen zur Machbarkeit seiner Konstruktion, und natürlich-> neue Inspirationen.
Viele Fragen tauchen auf: Wie hält das Rad auf der Motorwelle? Welche Motoren eignen sich für den Roboter und welche Spannung kann verwendet werden? Wie soll der Roboter aussehen und wie hält alles zusammen? Reicht der Strom? – Man wächst mit seinen Aufgaben – Also auf geht’s!

Meine Teileliste sieht folgendermaßen aus:

Chassi aus Rest-Plastik, Arduino, Motor-Shield, 2x RC-Reifen, Stützrad/Möbelrolle, 2x Getriebemotoren 6V, Servo, Infrarot-Sensor + Kabel, Gewindestange, Schrauben und Muttern in M4+M5 so wie ein Alu-Rohr passend für den M4-Stangen Durchmesser. Und eine Plastikleiste im L-Profil (Nicht auf dem Bild).

phobos teileliste

Eine Info zum Motor-Shield: Wer später einmal vier Motoren ansteuern möchte, sollte gleich zum sog. L293D Motor/Stepper/Servo Shield greifen, anstatt das Arduino Motor-Shield zu kaufen. Über das Arduino Motor-Shield können nur insg. zwei DC-Motoren betrieben werden, das L293D wiederum vier.

Das Chassi besteht aus einem zurecht gesägten Deckel eines alten Druckers vom Sperrmüll. Die plane Oberfläche bietet eine gute Voraussetzung und hat nichts gekostet. Bei den Motoren handelt es sich um 6V Getriebemotoren der Marke Micro Motors vom Typ HL149. Der Motor bietet 110 bis 160 UpM, was flott genug für unseren Roboter ist.
Beim Servo habe ich zu einem Thunder Tiger Microservo gegriffen und mich gewundert, wie “Micro” er in Wirklichkeit ist (Er kam im Maxi-Brief an). Die Bezeichnung ist C0915. Es ist ein analoger Servo. Im Buch wurde ein digitaler verwendet. Durch einen kleinen Workaround (Nur die Belegung ändern – Dazu später mehr) stellt das jedoch kein Problem dar. Der Sensor ist ein Sharp GP2Y0A21YK. Es wird zum Anschluss ein spezielles Kabel von Sharp benötigt. Das war bei Reichelt nicht lieferbar und zudem für ein einfaches Kabel m.M. nach zu teuer. Ich habe ein Molex 3-Pin Verlängerungskabel genommen und es angelötet. Litze und/oder jedes andere Kabel funktionieren natürlich auch.

Die Gewindestäbe sind praktisch, da sie sich mit einer Metallsäge in die benötigten Längen kürzen lassen. So müssen nicht unzählige Schrauben in verschiedenen Längen gekauft werden. Für Teile auf dem Chassi, das Stützrad und das L-Profils habe ich die M5 Gewinde genutzt. Für die Räder M4 + zwei Stücke Aluminiumrohr, um sie mit der Motorwelle zu verbinden.

In Teil 2 gehe ich etwas mehr auf das Zusammenbauen von “Phobos” ein.

*Update* Zum Einstimmen ein kleines Video (in dem der Roboter allerdings von mir per Keyboard gesteuert wird).