Archive for the ‘Arduino’ Category.

Bücher zu Arduino & Processing

Die folgenden Buchtitel zum Thema Arduino und Processing habe ich gefunden:

  • Getting Started with Arduino von Massimo Banzi
  • Making Things Talk: Practical Methods for Connecting Physical Objects von Tom Igoe
  • Programming Interactivity: Unlock the Power of Arduino, Processing, and OpenFrameworks von Joshua Noble (erscheint August 2009)
  • Arduino- Physical Computing für Bastler, Designer und Geeks von Manuel Odendahl, Julian Finn, und Alex Wenger (erscheint August 2009)
  • Processing: A Programming Handbook for Visual Designers and Artists von Casey Reas und Ben Fry
  • Pixels, Patterns, and Processing: A Beginner’s Guide to Programming Images, Animation, and Interaction (Morgan Kaufmann Series in Computer Graphics) von Daniel Shiffman
  • Algorithms for Visual Design: Using the Processing Language von Kostas Terzidis
  • Processing: Creative Coding and Computational Art von Ira A. Greenberg

Das erste Buch hab ich selbst, von den anderen sind sicher die beiden Neuerscheinungen Pflichtkäufe.

Uwe

Uwe Ziegenhagen likes LaTeX and Python, sometimes even combined. Do you like my content and would like to thank me for it? Consider making a small donation to my local fablab, the Dingfabrik Köln. Details on how to donate can be found here Spenden für die Dingfabrik.

More Posts - Website

Die Intel Atom SGI- Teil 1

Vor geraumer Zeit hab ich bei Ebay günstig eine alte SGI Indy erstehen können, 1993 eine echte Leistungsmaschine für die 2D/3D-Bearbeitung, 15 Jahre später bietet selbst mein Gameboy mehr Rechenleistung.

Da das Gehäuse einfach nur cool ist und viel zu schade zum Wegwerfen, stellte sich nun die Frage, was tun. Als IT-affiner Computerfreak war schnell klar: Umbauen! Rein soll ein Mini-ITX Board (Zotac IONITX-A, schon bestellt) der dann vielleicht als Multimedia-Maschine oder Surf-PC dienen wird, die Rechenleistung reicht garantiert auch für eine kleine Instanz von SQL Server oder Apache.

Schritt 1 ist natürlich das Entfernen der alten SGI-Komponenten, im zweiten Schritt wird dann der Einbau des Boards geplant. Die Button-Leiste, die sich an der Frontseite des Netzteils befand, werde ich vermutlich benutzen, um das Atom Board zu schalten, in einer ruhigen Minute muss ich mir mal die Verschaltung ansehen.

[nggallery id=1]

Uwe

Uwe Ziegenhagen likes LaTeX and Python, sometimes even combined. Do you like my content and would like to thank me for it? Consider making a small donation to my local fablab, the Dingfabrik Köln. Details on how to donate can be found here Spenden für die Dingfabrik.

More Posts - Website

Arduino in der c’t

In der aktuellen c’t 16/2009 ist ein umfangreicher Artikel zur Arduino Programmierung. Außerdem enthält die aktuelle c’t extra „Programmieren“ einen Artikel zur Programmierung in Processing, der dem Arduino Projekt zugrundeliegenden Programmiersprache.

Uwe

Uwe Ziegenhagen likes LaTeX and Python, sometimes even combined. Do you like my content and would like to thank me for it? Consider making a small donation to my local fablab, the Dingfabrik Köln. Details on how to donate can be found here Spenden für die Dingfabrik.

More Posts - Website

Rainbowduino – Einfache Ansteuerung von Full-RGB LED Matrizen

Neu bei Watterott Elektronik ist das Rainbowduino Board, das direkt eine 8×8 Matrix von Full RGB LEDs ansteuern kann. Was man damit machen kann, sieht man beispielsweise in folgendem Video:

www.vimeo.com/5195768

Ich habe so’n Ding samt LED-Matrix mal bestellt, mal sehen, was sich damit anstellen lässt.

Uwe

Uwe Ziegenhagen likes LaTeX and Python, sometimes even combined. Do you like my content and would like to thank me for it? Consider making a small donation to my local fablab, the Dingfabrik Köln. Details on how to donate can be found here Spenden für die Dingfabrik.

More Posts - Website

Arduino Teil 3 – Mehrere LEDs anschließen

Es ist Zeit, dem Arduino den Umgang mit mehr als einer LED beizubringen.

Die Schaltung ist im Bild recht gut erkennbar, ich benutze die Pins 11 bis 13 um die LEDs anzusteuern. Vor die rote LED habe ich den 220 Ohm Widerstand gesetzt, vor die gelbe und grüne jeweils einen 150 Ohm Widerstand. Die Verkabelung auf dem Breadboard war etwas fummelig, bei nächstbester Gelegenheit werde ich eine entsprechende Skizze anfertigen.

Das Programm ist einfach eine Abwandlung aus dem ersten Artikel: Ich lege defines für die Ports 11 bis 13 an, setze die Pin Modi auf OUTPUT und lasse die einzelnen LEDs abwechselnd blinken.

arduino wrote:
#define LEDr 13
#define LEDg 12
#define LEDy 11
 
 
void setup()
{
  pinMode(LEDr, OUTPUT);
  pinMode(LEDg, OUTPUT);
  pinMode(LEDy, OUTPUT);
 
}
 
void loop()
{
  digitalWrite(LEDr,HIGH);
  delay(1000);
  digitalWrite(LEDr,LOW);
  delay(1000);
  digitalWrite(LEDg,HIGH);
  delay(1000);
  digitalWrite(LEDg,LOW);
  delay(1000);
  digitalWrite(LEDy,HIGH);
  delay(1000);
  digitalWrite(LEDy,LOW);
  delay(1000);
}

Arduino mit drei LEDs

Fritzing File

Fritzing Skizze:

Schaltbild, erstellt mit Fritzing

Uwe

Uwe Ziegenhagen likes LaTeX and Python, sometimes even combined. Do you like my content and would like to thank me for it? Consider making a small donation to my local fablab, the Dingfabrik Köln. Details on how to donate can be found here Spenden für die Dingfabrik.

More Posts - Website

Homebrew CPU – 18 Monate, 1000 Dollar und 1253 Drähte

Auf Chip und wired.com war eben ein interessante Artikel über eine selbstgebaute 8-Bit CPU:

Chip Bildergalerie

Wired.com

Soweit will ich mit meiner Arduino-Bastelei nicht kommen, cool isses trotzdem.

Uwe

Uwe Ziegenhagen likes LaTeX and Python, sometimes even combined. Do you like my content and would like to thank me for it? Consider making a small donation to my local fablab, the Dingfabrik Köln. Details on how to donate can be found here Spenden für die Dingfabrik.

More Posts - Website

Arduino – Das zweite Projekt

Das sich die Lebensdauer von LEDs verkürzt, wenn sie direkt an einer Stromquelle hängen, macht es Sinn, einen Widerstand vorzuschalten. Die Frage ist nur, wieviel Ohm dieser Widerstand haben soll. Mittel
LED Vorwiderstandsrechner kommen ich auf einen 220 Volt Widerstand. Die Durchlassspannung für rote LEDs wird hier mit 1.9 Volt angegeben. Aus Pin 13 kommen 5V, also müssen 3.1 Volt vernichtet werden. Den Widerstand erhält man dann mit R = U / I, also R = 3,1 / 0,02 = 155 Ohm. Da es Widerstände nicht in jeder beliebigen Größe gibt, zeigt der Rechner 220 Ohm als nächsten Wert an.

Da ich ohne Lötarbeiten den Widerstand nicht mit der LED verbinden kann, nutze ich das Breadboard, das beim Arduino Kit von Watterott beilag. Nach dem Einsetzen von Widerstand und LED bekommt man dann die folgende (funktionierende) Schaltung.

Arduino, 2. Experiment

Die rechte Drahtbrücke geht von unserem Pin 13 in Pin 30 des Steckboards, der Widerstand von Pin 30 zu Pin 22, die LED von 22 zu 21, die linke Drahtbrücke dann von Port 21 zu GND auf dem Arduino.

Uwe

Uwe Ziegenhagen likes LaTeX and Python, sometimes even combined. Do you like my content and would like to thank me for it? Consider making a small donation to my local fablab, the Dingfabrik Köln. Details on how to donate can be found here Spenden für die Dingfabrik.

More Posts - Website

Arduino – Das erste Projekt

Das erste Beispiel im Buch von Massimo Banzi ist das Blinkenlassen einer LED. Bei der Bestellung meines Arduinos hatte ich das Starterkit gleich mitbestellt, in dem neben diversen Bauteilen auch 15 LEDs enthalten waren.

Das „Projekt“ unterteilt sich in zwei Schritte: a) Setup der Hardware und b) Programmierung des Controllers.

Hardware

Eine der roten LEDs wird an das Arduino Board angeschlossen. Dazu steckt man den langen Pin der LED (die Anode) in Buchse 13, den kurzen Pin in die GND Buchse. Das war’s auch schon (wenn wir mal davon ausgehen, dass das Arduino Board am Rechner schon funktioniert).

Software

Um die Software auf den Arduino zu bekommen, schließen wir ihn per USB an den Rechner an. Als ich dies das erste Mal gemacht habe, flickerte die eingesteckte LED wie auch die kleine SMD LED (auf dem Board mit L unter Pin 13) unkontrolliert. In der Arduino Entwicklungsumgebung geben wir dann den folgenden Code ein und übertragen ihn im Anschluss auf den Controller:

#define LED 13
 
void setup(){
   pinMode(LED, OUTPUT);
}
 
void loop(){
   digitalWrite(LED, HIGH);
   delay(1000);
   digitalWrite(LED, LOW);
   delay(1000);
}

Das #define ist nur eine Definition, um bei allen weiteren Vorkommen von „LED“ dieses Wort durch die 13 zu ersetzen. In der setup() Funktion legen wir fest, dass der LED Pin, also Pin Nummer 13, ein Ausgabe-Port ist. In der loop() Funktion kommt dann der eigentliche Blink-Code, im Abstand von einer Sekunde Wartezeit wird das Signal auf HIGH bzw. LOW gesetzt.

Einige Sekunden nach der Übertragung auf das Board erhält man dann das folgende Ergebnis:

Uwe

Uwe Ziegenhagen likes LaTeX and Python, sometimes even combined. Do you like my content and would like to thank me for it? Consider making a small donation to my local fablab, the Dingfabrik Köln. Details on how to donate can be found here Spenden für die Dingfabrik.

More Posts - Website

Arduino – Einführung

Vor ein paar Tagen kam mein Arduino Duemilanove Mikrocontroller Kit an, das ich bei Watterott bestellt hatte. Der Mikrocontroller ist ein ATmega328 mit 32kb Flash, 2kb Ram und 1kb EEPROM. Programmiert wird das Board vom PC oder MAC aus, die entsprechende Software steht für Windows, Linux und Mac OS X unter www.arduino.cc

Auf dem Bild kann man links die USB-Buchse und die Buchse zur Stromversorgung erkennen (9V, Pluspol innen). Die 12 Buchsen rechts unten und die 16 Buchsen rechts oben dienen dem Anschluss von Bauteilen und dem Sockeln von „Shields“, Zusatzplatinen die z.B. den Netzwerkanschluss bereitstellen.

Arduino

Beschreibung der oberen Buchsen

AREF Referenzpin für die analogen Eingänge, momentan irrelevant.
GND Masse
13-0 Digitale Ein- und Ausgänge

Die Buchsen 10-9, 6, 5 und 3 unterstützen Pulsweitenmodulation (PWM), laut Wikipedia „eine Modulationsart, bei der eine technische Größe (z. B. elektrischer Strom) zwischen zwei Werten wechselt.“ Nutzen lässt sich dies zum Beispiel für das Dimmen von LEDs, dazu in einem späteren Artikel mehr.

Beschreibung der unteren Buchsen

RESET Reset-Pin, falls der Button auf dem Board mal durch ein Shield abgedeckt sein sollte.
3V3 3,3V Gleichspannung
5V 5V Gleichspannung
GND Masse
Vin Die vom Netzteil durchgereichte Spannung, bei mir 9V.
0-5 Analoge-Input Pins, die Werte zwischen 0 und 1023 für Werte zwischen 0 und 5 Volt zurückliefern.

Die ICSP-Pins an der rechten Seite dienen zur direkten Programmierung des Controllers, für die anfängliche Spielerei mit dem Board sind sie irrelevant. Wenn man Controller-Chips ohne Bootloader kauft, werden sie jedoch relevant.

Weitere Informationen zu Arduino finden sich auch in der Wikipedia: Arduino-Plattform, mit „Getting Started with Arduino“ von Massimo Banzi (ISBN: 978-0-596-15551-3) liegt auch ein sehr gutes Buch vor.

Uwe

Uwe Ziegenhagen likes LaTeX and Python, sometimes even combined. Do you like my content and would like to thank me for it? Consider making a small donation to my local fablab, the Dingfabrik Köln. Details on how to donate can be found here Spenden für die Dingfabrik.

More Posts - Website