Arduino BlinkyBall Project


ik vaak een blog genaamd hackaday.com die een project gekenmerkt door "Nikolai", het was een 10cm LED-bal waarmee shift registers. Het lijkt een erg leuk project poging, maar de kosten van de planken maakte met & niet met enige ervaring eagle tekeningen verzenden naar fab winkels aanvankelijk hield me niet kan worden gestart.  Na enige planning besloten heb ik om mijn eigen platen met de hand hoewel vanwege die keuze ik hebben zou aan schaal omhoog de verstandige ontwerp-dimensie & verminderen van het aantal "segmenten".

Ik begon met rechthoekige 2200 gat PCB's van RadioShack en het gebruik van snijden dijken maakte ik halve cirkel boards met een uitsparing in het midden aan te passen de verwerking module, lipo accu en lader.  Elk segment bestaat uit 2 - verschuiving van de 8-bits registers, 16 LED's & 16 weerstanden.   Er zijn 8 plakjes in totaal dus daar zijn 128 onder leiding van, ik gebruik en Arduino nano 3.1 van makershed.com samen met een lipo slagman & lader beschikbaar op sparkfun.com.  Om te passen deze segmenten samen om te vormen van een bol gebruikt ik circulaire PCB's die ik gevonden op radioshack.  Ik gebruikte een dremel te knippen Zijsplitjes elke 45-graden voor elk van de segmenten te glijden in het pakket wordt geleverd met 3 maten & 2 van elk, ik gebruikte de middelgroot.  Ik heb een parallax mesmic 2125 versnellingsmeter toegevoegd aan het moederbord in het midden zodat oriëntatie naar het gebied.  Je opladen de LiPo slagman via een USB-mini poort, gelegen in het centrum, opladen duurt ongeveer 1 uur en 45 minuten duurt.

Ik wilde dank aan Nikolai voor de insperation & Null ruimte Labs HackerSpace voor de te nemen over het project.  Ik schreef ook Charlie daar te krijgen zijn input op de spiraal animatie & was hij zeer leuk & nuttig.  I 'm gonna post alle code die ik gebruikte voor het geval iemand geïnteresseerd is.  Ik zou niet zeggen dat ik de meest bedreven programmeur & am nog steeds leren zo vriendelijk zijn.

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 ruimte Labs In LA maakte een echt cool versie

Code:

int clockPin = 13; IC-Pin 11, gele trui
int dataPin = 11; IC-Pin 14, blauwe trui
int latchPin = 8; IC-Pin 12, groene Jumper

Const int xPin = 2;     X output van de versnellingsmeter
Const int yPin = 3;     Y-uitgang van de versnellingsmeter

woord patronen [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 (patronen) / 2;
unsigned int oldy = 0;

VOID Setup
{

Initialiseer seriële communicatie:
Serial.begin(9600);
initialiseren van de pinnen aangesloten op de versnellingsmeter
als input:
pinMode (xPin, INPUT);
pinMode (yPin, INPUT);

pinMode (latchPin, OUTPUT);
pinMode (clockPin, OUTPUT);
pinMode (dataPin, OUTPUT);

}

void loop
{

accelorometer();

}

VOID accelorometer()
{

variabelen om te lezen van de puls breedte:
int pulseX, pulseY;
variabelen bevatten de resulterende versnellingen
int accelerationX, accelerationY;

Lees puls van x - en y - assen:
pulseX = pulseIn(xPin,HIGH);
pulseY = pulseIn(yPin,HIGH);

de pulsbreedte omzetten in versnelling
accelerationX en accelerationY zijn in milli-g's:
aardse zwaartekracht is 1000 milli-g's, of 1 g.
accelerationX = ((pulseX / 10) - 500) * 8;
accelerationY = ((pulseY / 10) - 500) * 8;

afdrukken van de versnelling
Serial.Print ("X:");
Serial.Print(accelerationX);
een tab-teken afdrukken
Serial.Print("\t");
Serial.Print ("Y:");
Serial.Print(accelerationY);
Serial.println();

if(accelerationY == oldy) {}
count = count + 1;
Als (graaf > = 500) {}
voor (int keer = 0; keer < = 160; keer ++) {}
idleTime();
}
count = count - 50;
}
} else {}
count = count - 1;
Als (graaf < = 0) {}
Graaf = 0;
}
}

int ywordPos = kaart (accelerationY,-1023, 1023, 0, 16);

byte registerOne = highByte(patterns[ywordPos]);
byte registerTwo = lowByte(patterns[ywordPos]);

digitalWrite (latchPin, laag);
shiftOut (dataPin, clockPin, MSBFIRST, registerOne);
shiftOut (dataPin, clockPin, MSBFIRST, registerTwo);
digitalWrite (latchPin, hoge);

OldY = accelerationY;

}

VOID idleTime()
{
byte registerOne = highByte(patterns[index]);
byte registerTwo = lowByte(patterns[index]);

digitalWrite (latchPin, laag);
shiftOut (dataPin, clockPin, MSBFIRST, registerOne);
shiftOut (dataPin, clockPin, MSBFIRST, registerTwo);
digitalWrite (latchPin, hoge);
delay(65);
index ++;
Als (index > count =) {}
index = 17;

}
}

http://www.YouTube.com/watch?v=r2yADpGnyyc
Labels: Arduino, Bol, LED Ball

Gerelateerde Artikelen

Arduino LCD Project voor het meten van afstand

Arduino LCD Project voor het meten van afstand

Hallo :)Mag je niet weet hoe te gebruiken een ultrasone sensor voor het meten van de afstand met een LCD-scherm, dus in dit instructable heb ik besloten om u gelukkig te maken en u aan de slag helpen. Deze sensor is erg populair bij de Arduino Geeks.
Xtreme Buzzwire-4-2 (Arduino Jam project)

Xtreme Buzzwire-4-2 (Arduino Jam project)

dit project is onderdeel van de Arduino Jam 2012.Eerst en vooral die wij willen bedanken voor de organisatie en vooral de hoofdsponsor, Capgemini, waardoor alle van dit mogelijk.Op de Arduino Jam kwamen tijdens de brainstormsession, we met het idee o
Arduino microcontroller project

Arduino microcontroller project

Microprocessor gebaseerd ProjectZoals u weet is onze site gebaseerd op eenvoudige Electronics Project Circuit. Maar aan het bereiken van betere prestaties, (-Project voor procestechniek niveau) en voor hoge kwaliteit output te verslaan de concurrente
Arduino Klok Project voor Ahmed

Arduino Klok Project voor Ahmed

Dit is niet een Instructable hoe het klok-project dat Ahmed Mohamed in de problemen kwam in September 2015 opnieuw te maken, noch wil ik dit als een discussie over wat er gebeurd is. Wat ik wil doen is lay-out van een eenvoudige klok project met behu
Schakelaar voor Arduino (Sugru Project)

Schakelaar voor Arduino (Sugru Project)

Dit is een zeer eenvoudige Sugru project schimmel en de overgang naar een brood bord kunt beveiligen. Ik bouwde politie lichten en de sirene met behulp van een Arduino Uno, LEDs en een piëzo-zoemer. Als u wilt schakelen de zoemer in- en uitschakelen,
[Arduino Etheret Project] Hey u!! Krijgen uit de buurt van mijn huis!

[Arduino Etheret Project] Hey u!! Krijgen uit de buurt van mijn huis!

[Prologue]Oneday.Het was een zeer uitgeput dag vanwege het harde werken.Maar goed terug ik naar huis na het werk de laatste tijd.Zodra ik mijn huis kwam kon ik voelen dat er een iets mis in mijn huis is.Er was geen bewijs. Het was een rechtvaardige m
Arduino windmolen project

Arduino windmolen project

In dit project, zal u een volledig functionerende windmolen. Tegen het einde, heb je een windmolen (gemaakt door een 3D-printer), een bedieningspaneel met een controle van de snelheid van de windmolen en een geprogrammeerde Arduino potentiometer. Vee
TV afstandsbediening handschoen met behulp van Arduino, summatieve Project van TEJ3

TV afstandsbediening handschoen met behulp van Arduino, summatieve Project van TEJ3

Vandaag zullen we leren hoe maak je een handschoen afstandsbediening voor uw TV met behulp van een Arduino. Ik maakte een handschoen die alleen gebruikmaakt van drie vingers, als u wilt dat alle vijf u moet flex sensor (5), weerstand (5), man-man jum
10 LED Chaser met behulp van Arduino mini Project

10 LED Chaser met behulp van Arduino mini Project

ONDERDELEN GEBRUIKT1 - Arduino(i am using a uno, but you can use any) 1 - brood-Board 10 - 220 Ohm weerstanden (rood, rode en bruine banden) 10 - LEDs (elke kleur... Im ' using 5 mm rode degenen) Misc. Hook-up Wire - Zie meer op:Om de kabeljauw
Arduino thermostaat Project

Arduino thermostaat Project

Een manier om te simuleren een thermostaat met behulp van ArduinoStap 1: materialenDit zijn de materialen die u zult moeten maken van de thermostaat1 LCD scherm2 potentiometers1 knop1 LED (elke kleur is prima)25 dradenArduino UnoBreadboardStap 2: ins
Controle van een arduino project via een aanpasbare android / Iphone app met Blynk en Wemos D1: de 2016 SUPER NOOB vriendelijke manier

Controle van een arduino project via een aanpasbare android / Iphone app met Blynk en Wemos D1: de 2016 SUPER NOOB vriendelijke manier

Het doel van dit instructable is om je te leren hoe wifi aangesloten arduino projecten de eenvoudigste en snelste manier mogelijk te maken. Als u een arduino project die u wilt vanaf beheren kunt uw smartphone en dat kostte slechts 4 eurs in hardware
Arduino lage macht Project.

Arduino lage macht Project.

Hallo dames en herenIk heb onlangs besloten dat ik zal onderzoeken van de Arduino slapen bibliotheek en hoe lang kan ik een Arduino zien uitvoeren van een interne N size1.5v batterij. Ja! van een 1, 5V batterij. Als u geïnteresseerd hier bent is wat
Arduino/App gecontroleerd Desk Light

Arduino/App gecontroleerd Desk Light

Voor dit project wilde ik iets dat zou me om te leren zelf meer over elektronica/software, iets wat ik niet echt in nog gekregen heb... Ik besloot dat een licht zou een goed platform voor dit.Het ontwerp dat ik kwam met was voor een uplighter welke f
Draadloze Wii Nunchuck gecontroleerd Arduino

Draadloze Wii Nunchuck gecontroleerd Arduino

Gebruik een volledig ongewijzigde draadloze Wii Nunchuck als een controlesysteem voor elke Arduino gebaseerd project. Geen toegevoegde radio zender/ontvanger paren enz.Dit instructable aanvaardt enige ervaring met de Arduino microcontroller.De radio-