Arduino BlinkyBall Projekt


ich häufig einen Blog namens hackaday.com, die ein Projekt vorgestellt von "Nikolai", es war ein 10cm LED-Ball, die Schieberegister verwendet. Es scheint wie ein wirklich lustiges Projekt versucht, aber die Kosten für die Bretter gemacht mit & ohne Vorkenntnisse senden Adler Zeichnungen zu Fab Shops zunächst hielt mich ab.  Nach einiger Planung beschloss ich, meine eigenen Platten von hand zu machen, obwohl wegen dieser Wahl ich müsste scale-up der Design-Dimension klug & reduzieren Sie die Anzahl der "Scheiben".

Ich begann mit rechteckigen 2200 Loch PCBs von RadioShack und mit schneiden Deiche machte ich eine halbe Kreis Bretter mit einem Ausschnitt in der Mitte, Bearbeitungsmodule, Lipo-Akku & Ladegerät passen.  Jede Scheibe besteht aus 2 - 8-Bit Schieberegister, 16 LED's & 16 Widerstände.   Auf sparkfun.com gibt es 8 Scheiben insgesamt ist es 128 geführt werden, ich benutze und Arduino Nano 3.1 von makershed.com zusammen mit einem Lipo Teig & Ladegerät.  Um diese Scheiben zusammen, um eine Kugel zu bilden passen habe ich kreisförmige PCB, die ich gefunden bei Radioshack.  Ich habe einen Dremel, Schnitt Schlitze alle 45 Grad für die einzelnen Segmente in schieben, das Paket kommt mit 3 Größen & 2 jeder, ich habe die mittlere Größe.  Ich habe einen Parallaxe Mesmic 2125 Beschleunigungsmesser zur Hauptplatine in der Mitte zur Orientierung auf den Bereich.  Sie berechnen den LiPo Teig durch ein USB-Mini-Anschluss befindet sich im Zentrum, laden dauert ca. 1 Stunde und dauert 45 Minuten.

Ich wollte Nikolai für Insperation & Null Space Labs HackerSpace für ihre Sicht auf das Projekt bedanken.  Ich schrieb auch Charlie drüben, seine Eingabe auf der Spirale-Animation zu bekommen und er war sehr nett und hilfsbereit.  Ich werde alle den Code Posten, die ich verwendet, für den Fall, dass jemand interessiert ist.  Ich würde nicht sagen, dass ich die fähigsten Programmierer & bin noch am lernen, so freundlich zu sein.

Links: www.hackaday.com/2011/10/16/we-want-this-led-ball/ //Original
http://charliex2.WordPress.com/2012/02/11/The-Blinky-Ball-nullspacelabs/ //Null Raum Labs In LA gemacht eine wirklich coole version

Code:

Int ClockPin = 13; IC-Pin 11, gelbe Pullover
Int DataPin = 11; IC-Pin 14, blauen Pullover
Int LatchPin = 8; IC-Pin 12, grünen Pullover

const Int xPin = 2;     X Ausgang des Beschleunigungsmessers
const Int yPin = 3;     Y-Ausgang des Beschleunigungsmessers

Word-Muster [176] = {}
0b1100000000000000,
0b0110000000000000,
0b0011000000000000,
0b0001100000000000,
0b0000110000000000,
0b0000011000000000,
0b0000001100000000,
0b0000000110000000,
0b0000000011000000,
0b0000000001100000,
0b0000000000110000,
0b0000000000011000,
0b0000000000001100,
0b0000000000000110,
0b0000000000000011,
0b0000000000000001,

0b0000000000000000,
0b0000000000000000,
0b0000000000000000,
0b0000000000000000,
0b0000000000000000,
0b0000000000000000,
0b1010111010001101,
0b0110101010011010,
0b0101010010011100,
0b0000000000000000,
0b0000000000000000,
0b0000000000000000,
0b0000000000000000,
0b0000000000000000,
0b0000000000000000,
0b0000000000000000,
0b0000000000000000,
0b0000000000000000,
0b0000000000000000,
0b0000000000000000,
0b0000000000000000,
0b0000000000000000,
0b0000000000000000,
0b0000000000000000,
0b0000000000000000,
0b0000000000000000,
0b0000000000000000,
0b0000000000000000,
0b0000000000000000,
0b0000000000000000,
0b0000000000000000,
0b0000000000000000,

0b0000000000000000,
0b0000000000000000,
0b0000000000000000,
0b0000000000000000,
0b0000000000000000,
0b0000000000000000,
0b1010111010001101,
0b0110101010011010,
0b0101010010011100,
0b0000000000000000,
0b0000000000000000,
0b0000000000000000,
0b0000000000000000,
0b0000000000000000,
0b0000000000000000,
0b0000000000000000,
0b0000000000000000,
0b0000000000000000,
0b0000000000000000,
0b0000000000000000,
0b0000000000000000,
0b0000000000000000,
0b0000000000000000,
0b0000000000000000,
0b0000000000000000,
0b0000000000000000,
0b0000000000000000,
0b0000000000000000,
0b0000000000000000,
0b0000000000000000,
0b0000000000000000,
0b0000000000000000,

0b1100000000000000,
0b0110000000000000,
0b0011000000000000,
0b0001100000000000,
0b0000110000000000,
0b0000011000000000,
0b0000001100000000,
0b0000000110000000,
0b0000000011000000,
0b0000000001100000,
0b0000000000110000,
0b0000000000011000,
0b0000000000001100,
0b0000000000000110,
0b0000000000000011,
0b0000000000000001,
0b0000000000000001,
0b0000000000000011,
0b0000000000000110,
0b0000000000001100,
0b0000000000011000,
0b0000000000110000,
0b0000000001100000,
0b0000000011000000,
0b0000000110000000,
0b0000001100000000,
0b0000011000000000,
0b0000110000000000,
0b0001100000000000,
0b0011000000000000,
0b0110000000000000,
0b1100000000000000,

0b1100000000000000,
0b0110000000000000,
0b0011000000000000,
0b0001100000000000,
0b0000110000000000,
0b0000011000000000,
0b0000001100000000,
0b0000000110000000,
0b0000000011000000,
0b0000000001100000,
0b0000000000110000,
0b0000000000011000,
0b0000000000001100,
0b0000000000000110,
0b0000000000000011,
0b0000000000000001,
0b0000000000000001,
0b0000000000000011,
0b0000000000000110,
0b0000000000001100,
0b0000000000011000,
0b0000000000110000,
0b0000000001100000,
0b0000000011000000,
0b0000000110000000,
0b0000001100000000,
0b0000011000000000,
0b0000110000000000,
0b0001100000000000,
0b0011000000000000,
0b0110000000000000,
0b1100000000000000,

0b0000000000000000,
0b0000000000000000,
0b0000000000000000,
0b0000000000000000,
0b0000000000000000,
0b0000000000000000,
0b0000000000000000,
0b0000000000000000,
0b0000000000000000,
0b0000000000000000,
0b0000000000000000,
0b1010100100111110,
0b1010110100100101,
0b1010101001101111,
0b1100101111010101,
0b1111011010101010,
0b0000000000000000,
0b0000000000000000,
0b0000000000000000,
0b0000000000000000,
0b0000000000000000,
0b0000000000000000,
0b0000000000000000,
0b0000000000000000,
0b0000000000000000,
0b0000000000000000,
0b0000000000000000,
0b0000000000000000,
0b0000000000000000,
0b0000000000000000,
0b0000000000000000,
0b0000000000000000

};

Int Index = 17;
Int Count = Sizeof (Muster) / 2;
oldy unsigned Int = 0;

void setup()
{

serielle Kommunikation zu initialisieren:
Serial.Begin(9600);
initialisieren Sie die Pins verbunden mit dem Beschleunigungssensor
als Eingänge:
PinMode (xPin, Eingabe);
PinMode (yPin, Eingabe);

PinMode (LatchPin, Ausgang);
PinMode (ClockPin, Ausgang);
PinMode (DataPin, Ausgang);

}

void loop()
{

accelorometer();

}

void accelorometer()
{

Variablen der Impulsbreiten zu lesen:
Int PulseX, pulseY;
Variablen, die daraus resultierenden Beschleunigungen enthalten
Int AccelerationX, accelerationY;

Lesen Sie Puls von x- und y-Achse:
PulseX = pulseIn(xPin,HIGH);
pulseY = pulseIn(yPin,HIGH);

die Impulsbreite in Beschleunigung umwandeln
AccelerationX und accelerationY sind in Milli-g:
die Erdanziehungskraft ist 1000 Milli-g oder 1 g.
AccelerationX = ((pulseX / 10) - 500) * 8;
accelerationY = ((pulseY / 10) - 500) * 8;

Drucken Sie die Beschleunigung
Serial.Print ("X:");
Serial.Print(accelerationX);
Drucken Sie einen Tabulator-Zeichen:
Serial.Print("\t");
Serial.Print ("Y:");
Serial.Print(accelerationY);
Serial.println();

If(accelerationY == Oldy) {}
Count = Count + 1;
Wenn (Count > = 500) {}
für (Int Zeiten = 0; Mal < = 160; mal ++) {}
idleTime();
}
Count = Count - 50;
}
} else {}
Count = Count - 1;
Wenn (Graf < = 0) {}
Count = 0;
}
}

Int YwordPos = Karte (accelerationY,-1023, 1023, 0, 16);

Byte-RegisterOne = highByte(patterns[ywordPos]);
Byte-RegisterTwo = lowByte(patterns[ywordPos]);

DigitalWrite (LatchPin, LOW);
ShiftOut (DataPin, ClockPin, MSBFIRST, RegisterOne);
ShiftOut (DataPin, ClockPin, MSBFIRST, RegisterTwo);
DigitalWrite (LatchPin, HIGH);

Oldy = accelerationY;

}

void idleTime()
{
Byte-RegisterOne = highByte(patterns[index]);
Byte-RegisterTwo = lowByte(patterns[index]);

DigitalWrite (LatchPin, LOW);
ShiftOut (DataPin, ClockPin, MSBFIRST, RegisterOne);
ShiftOut (DataPin, ClockPin, MSBFIRST, RegisterTwo);
DigitalWrite (LatchPin, HIGH);
Delay(65);
Index ++;
Wenn (Index > = Count) {}
Index = 17;

}
}

http://www.YouTube.com/watch?v=r2yADpGnyyc
Stichworte: Arduino, Kugel, LED-Kugel

In Verbindung stehende Artikel

Spannungsanpassung geregelten Netzteil für Arduino/Mikrocontroller Projekte

Spannungsanpassung geregelten Netzteil für Arduino/Mikrocontroller Projekte

über ein paar Monate her, als ich zuerst hatte meine Hände auf Arduino Uno, ich hatte keine Ahnung, wo diese 3,3V lässt neben dem Einschalten die 5V Pin stammt, oder genauer gesagt, ich nicht wirklich darüber nachdenken, bis ich meine eigenen Version
Arduino-Mikrocontroller-Projekte

Arduino-Mikrocontroller-Projekte

nach mehreren Jahren Erfahrung mit Arduino beschlossen, Projekte in ein E-Book zusammengefasst:http://85.254.232.222/Arduino/Sie können eine ZIP-Datei herunterladen, die enthält:Arduino-ReferenzGrundlegende ProjekteGroße LED-Display 16 ZiffernSpy-Cam
Arduino LCD-Projekt zur Messung der Entfernung

Arduino LCD-Projekt zur Messung der Entfernung

Hallo :)Möglicherweise werden Sie nicht wissen, wie man einen Ultraschall-Sensoren messen den Abstand mit einem LCD-Display, also in diesem instructable beschloss ich, Sie glücklich zu machen und Ihnen erste Schritte. Dieser Sensor ist sehr beliebt b
Arduino-Mikrocontroller-Projekt

Arduino-Mikrocontroller-Projekt

Mikroprozessor-ProjektWie Sie wissen basiert auf einfachen Elektronik Projekt Schaltung unserer Website. Sondern zu erreichen höheren Leistung (Engineering Projekt) und für qualitativ hochwertige Ausgabe, die Konkurrenz zu schlagen, musst du Mikropro
Arduino Uhr Projekt für Ahmed

Arduino Uhr Projekt für Ahmed

Dies ist kein Instructable wie man die Uhr Projekt neu, das im September 2015 Ahmed Mohamed in Schwierigkeiten bekam, noch will ich dies ist eine Diskussion über das Geschehene. Was ich will ist eine einfache Uhr-Projekt mit einem Arduino um zu helfe
Schalter für Arduino (Sugru Projekt)

Schalter für Arduino (Sugru Projekt)

Dies ist ein sehr einfaches Sugru-Projekt zu Formen und die Umstellung auf ein Brot-Brett zu sichern. Ich baute Blaulicht und Sirene mit einem Arduino Uno, LEDs und einen Piezo-Summer. Drehen den Summer ein- und ausschalten, aber halten die Lichter a
DIY Arduino Wordclock-Projekt

DIY Arduino Wordclock-Projekt

Diese instructable ist auf den Bau von mein Arduino Wordclock. Diese instructable vereint ein paar meiner vorherigen Teilprojekte, die auf Instructables veröffentlicht worden sind, wie ich bis zur Fertigstellung der Wordclock vorangekommen sind.Was i
Xtreme-Buzzwire-4-2 (Arduino Jam Projekt)

Xtreme-Buzzwire-4-2 (Arduino Jam Projekt)

dieses Projekt ist Teil der Arduino Jam 2012.Zunächst einmal, die möchten wir danken der Organisation und vor allem dem Hauptsponsor, Capgemini, die all dies möglich gemacht.Während der Brainstormsession an den Arduino-Marmelade kamen wir mit der Ide
TV-Fernbedienung-Handschuh mit Arduino, Summative Projekt TEJ3

TV-Fernbedienung-Handschuh mit Arduino, Summative Projekt TEJ3

Heute lernen wir wie angegossen Fernbedienung für Ihr Fernsehgerät mit einem Arduino erstellt werden. Ich habe einen Handschuh, der nur drei Finger benutzt, um alle haben fünf brauchst du flex-Sensor (5), Widerstand (5), Stecker-Stecker-Jumper Kabel
Sichern Sie Ihr Arduino/Elektronik-Projekt mit Sugru

Sichern Sie Ihr Arduino/Elektronik-Projekt mit Sugru

[diese instructable ergibt sich aus der 2013 Sugru bauen nachts Warschau Hackerspace]Sugru macht für große elektrische Isolierung und es ist so einfacher in der Anwendung als Wärme-Schrumpfschlauch oder heiße Kleber.Hier ist ein Beispiel für Lötverbi
10 LED Chaser mit Arduino Mini Projekt

10 LED Chaser mit Arduino Mini Projekt

VERWENDETEN KOMPONENTEN1 - Arduino(i am using a uno, but you can use any) 1 - Brot-Board 10 - 220 Ohm Widerstände (rote, rote und braune Bänder) 10 - LEDs (jede Farbe... Ich benutze 5 mm rot) Misc. Hook-Up Draht - siehe mehr bei:Zu den Kabeljau
Arduino-Thermostat-Projekt

Arduino-Thermostat-Projekt

Eine Möglichkeit, einen Thermostat mit Arduino simulierenSchritt 1: MaterialienDas sind die Materialien das Thermostat machen müsst1 LCD-Bildschirm2 PotentiometerTaste "1"1 LED (jede Farbe ist in Ordnung)25 DrähteArduino UnoSteckbrettSchritt 2:
Einfache Schrittmotor-Treiber für Arduino CNC Projekte

Einfache Schrittmotor-Treiber für Arduino CNC Projekte

Dies ist eine einfache H-Brücke Doppellaufwerk machte ich seinerzeit einige Chips habe ich außerhalb von eBay verwenden. Pic Mikrocontroller verwendet, um den Schritt Richtung Eingänge um Laufwerk Logik Spule. Ich habe die billigste Bilder hatte ich
Gewusst wie: verwenden Sie Inkscape für Arduino Etiketten und Projekte

Gewusst wie: verwenden Sie Inkscape für Arduino Etiketten und Projekte

Vor einem Jahr ich auf einen Artikel in Nüssen und Volt Magazin stieß über professionell aussehende Platten für Projekte zu machen. Der Artikel ist online und es viel besser als ich es, mit sehr viel ausführlicher kann erklärt. Ich fordere Sie auf, d