Leider wird über das Ubuntu Software-Center nicht die neuste Version der Arduino IDE installiert. Um diesen Missstand zu beheben, kann die IDE manuell installiert werden.
Schritt 1: Download der Arduino IDE
Als erstes muss die Software heruntergeladen werden. Hier jeweils die richtige Variante wählen (Linux 32 bit, Linux 64 bit, Linux ARM).
Für eine Steuerung benötigte ich eine Porterweiterung für den Arduino UNO. Ein Schieberegister war die naheliegendste und unkomplizierteste Möglichkeit. Für die Umsetzung habe ich folgende Bauteile verwendet:
Arduino UNO
74HC595 Schieberegister
Video
Quellcode
int clockPin = 8; // SH_CP shift register clock pin
int latchPin = 9; // ST_CP storage register clock pin (latch pin)
int dataPin = 10; // DS serial data input
int data = 0;
void setup(){
pinMode(clockPin, OUTPUT);
pinMode(latchPin, OUTPUT);
pinMode(dataPin, OUTPUT);
}
void loop() {
sendBytes(data);
data++;
if(data > 255) {
data = 0;
}
}
void sendBytes(int val) {
digitalWrite(latchPin, LOW);
shiftOut(dataPin, clockPin, MSBFIRST, val);
digitalWrite(latchPin, HIGH);
delay(1000);
}
Für das Programmieren eines ATtiny45 mit einem Arduino muss doch relativ viel verkabelt werden, was schnell in einem unübersichtlichen Kabelsalat enden kann. Eine einfache Möglichkeit, das Chaos zu beherrschen, ist die Erstellung eines Arduino Shields. Mit folgenden Materialien kann ein passendes Shield erstellt werden:
Lötkolben
Kondensator
Platine
Kopfleiste
8Pin DIP IC Buchse Adapter
Die Vorderseite des Shields:
Die Rückseite des Shields:
Der Vorteil eines Shields ist die Zeitersparnis, da der Fokus ausschließlich auf der Programmierung liegt und nicht auf dem richtigen verkabeln. Die Pins: RESET, 5V, GND, 13, 12, 11 und 10 werden auf dem Arduino Board verwendet.
Für eine Schnelltest der Programmlogik habe ich eine Testplatine mit 5 Dioden eingesetzt.
Für eine separate Steuerung wollte ich einen ATtiny45 Chip programmieren.
Folgende Bauteile werden benötigt:
ATMEL ATtiny 45
Elektrolytkondensator 10uF
Arduino UNO
Vorgehensweise
1. Als erstes die Libary attiny von https://github.com/damellis/attiny/ runterladen (Download ZIP).
2. Aus dem ZIP Archiv den Ordner “attiny” in “/home/username/sketchbook/hardware” entpacken.
3. Die Arduino IDE beenden und erneut starten.
4. Schaltzeichnung ATtiny 45
6. Als nächstes das Programm ArduinoISP (In-System-Programmer) unter dem Menüpunkt “Datei | Beispiele | ArduinoISP” auf den Arduino einspielen.
7. Danach den Arduino UNO nach dem abgebildeten Schaltplan verkabeln.
8. Das eigene Programm mit der Arduino IDE öffnen und im Menüpunkt “Tools | Programmer | Arduino as ISP” wählen.
9. Weiterhin muss unter dem Menüpunkt “Tools | Boards” der “ATtiny45 (internal 8 MHz clock)” ausgewählt werden.
10. Als letzten Schritt das eigene Programm uploaden. Wenn die Dioden TX und RX Blinken wird der Upload durchgeführt.
Anmerkung
Wenn der Arduino wieder normal verwendet werden soll, muss vorher unter dem Menüpunkt “Tools | Boards” das Board “Arduino Uno” gesetzt werden.
Mit der Arduino-Plattform ist es sehr einfach, Hardware anzusteuern. Auf der Modellbahnanlage von E. Wolf wird ein Bagger, ein Kran und eine Raupe über jeweils einen Servo angesteuert. Damit der Ablauf nicht immer gleich ist, wird noch etwas “Zufall” integriert.