Einführung Arduino

31 Aufrufe

Veröffentlicht am

Kleine Einführung in die Arduino - Programmierung, mit einigen kleinen Projekten.

Veröffentlicht in: Ingenieurwesen
0 Kommentare
0 Gefällt mir
Statistik
Notizen
  • Als Erste(r) kommentieren

  • Gehören Sie zu den Ersten, denen das gefällt!

Keine Downloads
Aufrufe
Aufrufe insgesamt
31
Auf SlideShare
0
Aus Einbettungen
0
Anzahl an Einbettungen
1
Aktionen
Geteilt
0
Downloads
0
Kommentare
0
Gefällt mir
0
Einbettungen 0
Keine Einbettungen

Keine Notizen für die Folie

Einführung Arduino

  1. 1. Arduino eine Einführung Arduino - Mikrocontrollerprogrammierung
  2. 2. Der Arduino Uno ist ein Mikrocontroller Board  ATmega328  14 digitale Input/Output Pins (6 als PWM Output nutzbar), 6 analoge Inputs,  16 MHz Keramik Resonator  USB Verbindung,  Power Jack,  ICSP Header  Reset Button  Er besitzt alles Nötige um den Mikrocontroller zu betreiben Was ist der Arduino?
  3. 3. Technische Daten zum Arduino UNO  Operating Voltage 5V / 3,3 V  Input Voltage (recommended) 7-12V  Input Voltage (limits) 6-20V  DC Current per I/O Pin 40 mA  DC Current for 3.3V Pin 50 mA  Flash Memory 32 KB (ATmega328) SRAM 2 KB (ATmega328)  EEPROM 1 KB (ATmega328)  Clock Speed 16 MHz
  4. 4. Wie wird der Arduino programmiert? Entwicklungsumgebung Arduino Code  Arduino IDE  MariaMole Grafische Programmierung  Scratch for Arduino (S4A)  Ardublock  MiniBloq Alternativ  BASCOM (ISP Programmer)  Microsoft Visual C++  …
  5. 5. SCRATCH 4 Arduino http://s4a.cat/  Grafische Programmierumgebung  Visualisierungen einfach möglich  Freeware  Für Schüler ab Sekundarstufe I geeignet Anschlüsse:  6 analog inputs (analog pins)  2 digital inputs (digital pins 2 and 3)  3 analog outputs (digital pins 5, 6 and 9)  3 digital outputs (pins 10, 11 and 13)  4 special outputs for servomotors (digital pins 4, 7, 8 and 12)  Sensoren auch über Android steuerbar Nachteil: Der Arduino muss immer am Rechner angeschlossen sein! Programm bleibt nicht am Arduino gespeichert! Arduino benötigt eine neue Firmware (bei Download auf .ino ändern!)
  6. 6. Arduino IDE  Freeware  Basierend auf C  Compiler im Programm  Zahlreiche Bibliotheken vorhanden  Einfaches hinzufügen von Bibliotheken  Serial Monitor  Passable Fehlerhinweise bei fehlgeschlagenem Kompilieren http://www.arduino.cc/en/Main/Software
  7. 7. Arduino IDE COMPILE UPLOAD TO ARDUINO NEW OPEN SAVE
  8. 8. MariaMole IDE http://dalpix.com/mariamole Gleiche Eigenschaften wie die Arduino IDE Vorteile:  Programme in C/C++ schreiben  Wortvervollständigung  Mehrere Serial Monitors gleichzeitig nutzen  Umgebung kann vom Benutzer angepasst werden
  9. 9. Projekte
  10. 10. Aufgabe 1: Eine LED soll im Abstand von einer Sekunde blinken!
  11. 11. Digital Output Digital Out digitalOut(); ist eine Funktion, bei der ein digitaler Kanal des Arduino-Boards, der als Output deklariert ist, ein oder ausgeschaltet werden kann. Wir benötigen eine LED sowie den GND und den 12 Pin des Arduinos.
  12. 12. Das Skript Die grundlegende Programmstruktur eines Arduino-Programms setzt sich aus zwei Methodenblöcken zusammen. Der erste ist void setup(). Hier werden Grundeinstellungen (z.B. ob ein Kanal ein In- oder Output ist) vorgenommen. Diese Methode wird nur beim Programmstart ausgeführt. Der zweite ist void loop(). Im Gegensatz zum Setup wird dieser ständig wiederholt. Hier wird der eigentliche Programmablauf geschrieben. Die Programme laufen innerhalb der geschwungenen Klammer { … } ab!
  13. 13. In der ersten Zeile wird eine ganzzahlige Variable (int) mit dem Namen LEDPin angelegt und ihr wird der Wert 12 zugewiesen. Pin bedeutet in diesem Fall Anschluss oder Kanal. int LEDPin = 12; void setup () // alles innerhalb dieser Klammer wird beim Programmstart ausgeführt { pinMode (LEDPin, OUTPUT); // unser LEDPin ist als Output definiert und kann ein und ausgeschalten werden } void loop () // alles innerhalb dieser Klammer wird ständig wiederholt { digitalWrite (LEDPin, HIGH); // unser LEDPin ist ein delay (1000); // für 1 Sekunde (1000ms) digitalWrite (LEDPin, LOW); // unser LEDPin ist aus delay (1000); // für eine Sekunde }
  14. 14. Und so sieht ein fertiger Code aus!
  15. 15. Aufgabe 2: Eine LED soll im Abstand von einer Sekunde blinken! Die Pausen werden als Variable gesetzt!
  16. 16. Aufgabe 3: Zwei LEDs sollen im Abstand von einer Sekunde abwechselnd blinken!
  17. 17. Aufgabe 4: Programmiere eine Ampelschaltung aus 3 LEDs (rot, gelb und grün)! Phase rot: 4 Sekunden Phase rot/gelb: 2 Sekunde Phase gruen: 4 Sekunden Phase gelb: 4 Sekunde
  18. 18. Aufgabe 4/2: Programmiere eine Ampelschaltung aus 3 LEDs (rot, gelb und grün)! Erstelle Variablen für die Zeit, sowie für die rot-gelb Phase!
  19. 19. Aufgabe 5: Schriftdarstellung über den Serial Monitor!
  20. 20. Aufgabe 5-2: Schriftdarstellung über den Serial Monitor! Mit zeitlicher Verzögerung.
  21. 21. Aufgabe 5-3: Schriftdarstellung über den Serial Monitor! Zeilen nutzen und Daten einfügen!
  22. 22. Aufgabe 6: Schriftdarstellung über den Serial Monitor! Hierzu öffnen wir die Ampelschaltung. Und lassen uns die aktuelle Phase der Ampel über den Serial Monitor ausgeben.
  23. 23. Aufgabe 7: Ein Lichtabhängiger Widerstand (LDR) wird als Sensor benutzt. Der aktuelle Wert der Lichteinstrahlung wird über den Serial Monitor ausgegeben.
  24. 24. Aufgabe 7-2: Ein Lichtabhängiger Widerstand (LDR) wird als Sensor benutzt. Der aktuelle Wert der Lichteinstrahlung wird über den Serial Monitor mit VERZÖGERUNG ausgegeben.
  25. 25. Aufgabe 7-2: Ein Lichtabhängiger Widerstand (LDR) wird als Sensor benutzt. Der aktuelle Wert der Lichteinstrahlung wird über den Serial Monitor mit VERZÖGERUNG ausgegeben.
  26. 26. Aufgabe 8: Dämmerungsschalter Ein Lichtsensor wird zum Ein- und Ausschalten einer LED benutzt. Bei geringer Lichteinstrahlung soll sich die LED einschalten, bei ausreichender ausschalten.
  27. 27. Aufgabe 9: Ein 2 Zeilen LCD Display für die Schriftausgabe nutzen!
  28. 28. Aufgabe 11: Abwechselndes Blinken von zwei LEDs. Ein 2 Zeilen LCD Display ansteuern und den aktuellen Status der LEDs über das Display ausgeben.
  29. 29. Aufgabe 10: Der Dämmerungsschalter aus Aufgabe 8. Die aktuellen Helligkeitswerte werden über das LCD ausgegeben.
  30. 30. Ergänzung
  31. 31. Was es sonst noch gibt!
  32. 32. PuTTY http://www.putty.org/
  33. 33. Zubehör und Boards http://www.arduino.cc/en/Main/Products?from=Main.Hardware
  34. 34. Wo bekomme ich Ideen und Projekte her? http://playground.arduino.cc/ http://popovic.info/html/arduino/arduinoUno_1.html Arduino und Material online kaufen http://www.exp-tech.de/ https://simpledevelopment.de/ http://physicalcomputing.at/

×