COI - Party belysning
Hårdvara:
- Intellekten Edison
- Statisk matta
- Dator
- 2 mini USB-kablar
- 2 startkablar
- 3 LED-lampor (1 blå, 1 grön och 1 röd)
- 3 1000 OHM resistor bröd styrelse
- 4-pin kablar
- Seeed RGB bakgrundsbelysning LCD-
- Seeed Rotary vinkelgivare
Setup:
- Koppla in Grove bas sköld i din Edison (behöver inte vara en Intel Edison, det kan vara en Arduino ombord)
- Sätt bygeln kabeln i porten I2C (ingen spelar roll vilket som). Anslut den andra änden till RGB baklyst LCD.
- Anslut 1 på startkablar till 5V porten på Edison. Ansluta till bröd styrelsen. (Se bild som referens. Det är den blå kabeln närmast 12 C sladd du bara inkopplad.)
- Anslut andra bygeln kabeln till porten A0. Anslut andra änden till Rotary vinkelgivare.
- Anslut andra 3 startkablar till portar ~ 3 ~ 5 och ~ 6. Vi kommer att ansluta dessa till de röda, gröna och blå lamporna respektive.
- Se diagram av bröd för detaljer på vilka kablar gå där.
- Hämta koden i slutet av sidan.
- Ladda upp koden till Arduino IDE.
- Ladda upp koden till Edison.
- Spela med roterande vinkel sensorn. Njut av de vackra ljusen!
Programvara:
Öppna Arduino Edison IDE och använda följande kod:
#include
#include
#include
rgb_lcd lcd;
int bluePinNum = 6;
int greenPinNum = 5;
int redPinNum = 3;
int potentiometer = 0;
int minPotValue = 0;
int maxPotValue = 1024;
ANTECKNINGAR: STIFT MED ETT TILDE ÄR ANALOG, OCH ANDRA ÄR DIGITAL.
UTGÅNGAR ÄR INVERTERAD I VÅR INSTÄLLNING. DVS. 0 ÄR FULL LJUSSTYRKA, 255 ÄR LÅG.
void setup() {
LCD.BEGIN (16, 2);
lcd.setRGB (255, 255, 255);
pinMode (potentiometer, ingång);
}
void loop() {
lcd.setCursor(0,0);
LCD.Print(analogRead(potentiometer));
lcd.setCursor(0,1);
dubbla Läs = analogRead(potentiometer);
dubbel bråkdel = (Läs - minPotValue) / (maxPotValue - minPotValue);
fraktion = bråkdel - floor(fraction);
LCD.Print(Fraction);
dubbla sjätte = 1,0/6.0;
int r = 0;
int g = 0;
int b = 0;
IF(Fraction < sixth) {
r = 255;
g = (int) ((fraktion) / sjätte * 255);
} else om (bråkdel < 2 * sjätte) {
r = (int) ((2 * sixth-fraction)/sjätte * 255);
g = 255;
} else om (bråkdel < 3 * sjätte) {
g = 255;
b = (int) ((fraction-2*sixth)/sjätte * 255);
} else om (bråkdel < 4 * sjätte) {
g = (int) ((4 * sixth-fraction)/sjätte * 255);
b = 255;
} else om (bråkdel < 5 * sjätte) {
b = 255;
r = (int) ((fraction-4*sixth)/sjätte * 255);
} annat {
r = 255;
b = (int) ((6 * sixth-fraction)/sjätte * 255);
}
analogWrite (redPinNum, 255 - r); grund av inverterade värden
analogWrite (greenPinNum, 255-g);
analogWrite (bluePinNum, 255-b);
lcd.setRGB(r,g,b);
}
Kontrollera och ladda upp koden.
Resultat:
Din färdiga produkten är en "part ljus". Det ändrar färg på LCD-skärmen. Denna samma teknik kan användas av personer med funktionshinder för att signalera om hjälp, eller det kan användas på arbetsplatsen som en signal mellan arbetstagare eller i en fabrik.
Erfarenhet:
Det finns ett antal fallgropar som bör undvikas när man gör detta projekt.
- Alltid använda statiska mattan, avgifter kan ackumuleras på elektroniken eller din kropp om inte jordat, och detta kan skada elektroniken.
- Se till att portarna på Grove Starter Kit Plus Base skölden är desamma som de som används i bilden. Om inte, den adress som används i koden kommer inte att kunna komma åt knappen.
- Kontrollera anslutningarna på komponenter för misslyckande inte är på grund av ett maskinvaruproblem.