Arduino gecontroleerd Sunrise wekker


dit is een update aan de microcontroller voor mijn blauwe LED Dawn Simulator wekker.  Eerder, het gebruikt een Atmel ATMEGA8-16PI die een Atmel programer vereist.  Hier, heb ik bijgewerkt voor het gebruik van een Arduino Uno.  Aangezien de Uno is gebaseerd op een soortgelijke chip, kon ik hergebruik code voor toegang tot interrupts om te rijden een 16-bits PWM controller.  Zelfs als je niet geïnteresseerd in het bouwen van een zonsopgang simulator, zou u de 16-bits PWM code nuttig vinden.

Waarop enkel de Atmetl, dat de simulator van de zonsopgang begonnen met het krijgen van intermitterende fouten, wat resulteerde in felle lichtflitsen tijdens de cyclus van de zonsopgang in plaats van een geleidelijke toename.  Dit was vermoedelijk van extra ruis van de wekker van de Soleil.  Ik had niet meer gemakkelijke toegang tot een Atmel-programmer, dus besloten om te werken aan een Arduino voor gemakkelijker toekomstige veranderingen.

De bedrading is dat grotendeels dezelfde als voorheen, behalve het signaal van de Soleil wordt gelezen door een analoge ingang in plaats van een digitale ingang.  Heb ik besloten dat de domeincontroller beter bestand tegen lawaai dan via de analoge ingang zou maken de mijn vorige oplossing met behulp van interrupts.   Arduino code is hieronder:


lange previousMillis = 0;        laatste keer LED werd bijgewerkt zal slaan
lange interval = 1000;           interval waartegen bijwerken (milliseconden)

VOID Setup {}
Initialiseer de digitale pin als uitgang.
pinMode (9, OUTPUT);

uitschakelen van de LED op de Arduino board
pinMode (13, OUTPUT);
digitalWrite (13, laag);

Timer1 doet ~ 16-bits PWM
TCCR1A = _BV (COM1B1) | _BV (WGM11) | _BV (COM1A1);
TCCR1B = _BV (WGM13) | _BV (WGM12) | _BV (CS10);

ICR1 = 65535;
Start de taakcyclus van de PWM op 100%
OCR1A = 65535;

dit voor foutopsporing inschakelen
Serial.begin(9600);

}

void loop {}
unsigned long currentMillis = millis();
lange y = 0;
lang uitgang [100], u;
int i;

Neem 1000 lezingen op de analoge ingang
voor (ik = 0; ik < 1000; i ++) {}
y = y + analogRead(A0);
}

uitgang [0] = 65535 / (1 + exp(-1*0.00002275*(y-500000)));

gemiddelde van de uitvoer, zodat het niet rond springen
voor (ik = 9; Ik > 0; ik--) {}
uitgang [i] = output [i-1];
}
u = 0;
voor (ik = 0; ik < 10; i ++) {}
u = u + uitgang [i];
}

Zorg ervoor dat de waarde van de output hierboven 65535 niet gaan
Als u (u/10 > 65535) = 655350;
instellen van de PWM-taakcyclus
OCR1A = u/10;

Als (currentMillis - previousMillis > interval) {}
opslaan van de laatste keer dat het resultaat was afgedrukt
previousMillis = currentMillis;
uitgang what's going on voor foutopsporing
Serial.println(OCR1A);
Serial.println(y);
}
}
Ik vastbesloten de exponentiële functie die overeenkomen met de output van de LED's om de gloeiende lichten door oog en trial and error.  Een grafiek met de exponentiële stijging in vergelijking tot een lineaire verhoging is gekoppeld.  

Labels: Arduino, LED, Blauw, Wekker

Gerelateerde Artikelen

Galvo - Laser Arduino gecontroleerd

Galvo - Laser Arduino gecontroleerd

Arduino gecontroleerd galvo laser. De servo aangedreven spiegels sturen de verlaten een fosforescerende parcours op het blad van de glow-in-the-dark vinyl UV-laser.Oorspronkelijk Gepost op notes.robives.comStap 1:Beginnen met een blad van lichtgevend
Arduino gecontroleerd CNC / 3D Printer hybride

Arduino gecontroleerd CNC / 3D Printer hybride

Moeder natuur maakt... Wij bouwen.BuildersBot zekeringen 3D printen & CNC frezen in één Builder's droom "3dprintingindustry.com"De BuilderBot is een Open ontwerp machine, die gebruik maakt van OpenSoftware en Open Hardware. Het is een produc
Arduino gecontroleerd kookwekker

Arduino gecontroleerd kookwekker

U allen moet heb meegemaakt dat je iets wordt gekookt op uw gasfornuis terwijl aan de andere kant u get drukke TV kijken of krijgen een diepe gesprek hebt dat je je realiseert op het opsporen van een geur die het was volledig verwend alleen vanwege u
Arduino-gecontroleerde Wolf staart

Arduino-gecontroleerde Wolf staart

groeten, of moet ik zeggen, "Aaaaaooooooooooooh!" Maken van uw bekende collega wolf liefhebber graag. Je hebt een innerlijke wolf geest dat zo graag bekend maken dat u mij om te leren hoe om uw zeer eigen animatronic wolf staart, zodat u kunt ec
Arduino-gecontroleerde gordijn

Arduino-gecontroleerde gordijn

In dit nieuwe project, we gecombineerd van elektronica en mechanica, en maakte een Arduino-gecontroleerde gordijn roller.Veel plezier met maken!Stap 1: Planning van het CircuitVoor dit circuit u hebt nodig:1. de roterende Potentiometer2. de Arduino U
Draadloos Arduino gecontroleerde Tank (nRF24L01)

Draadloos Arduino gecontroleerde Tank (nRF24L01)

Hallo!Vandaag zal ik u tonen how to build een Arduino gecontroleerde tank en een afstandsbediening. De 3d afgedrukt delen van de tank (met uitzondering van de controller, bijhouden gids en tank cover) werden ontworpen door timmiclark en kan worden ge
Huisdier Curfew: Een Arduino gecontroleerde huisdier deur

Huisdier Curfew: Een Arduino gecontroleerde huisdier deur

Het probleem: U wilt beperken van de tijd wanneer uw huisdier mee mag naar buiten te gaan. Dit kan zijn omdat de buurt niet veilig voor uw kat of kleine hond in de nacht is (plunderende coyotes voor de geest komt). Maar u wilt uw huisdier te kunnen t
Arduino gecontroleerd licht dimmer

Arduino gecontroleerd licht dimmer

Waarschuwing: Sommige mensen proberen om dit met een optocoupler met zerocrossing coz rechts "dat is beter"? Sommigen horen zelfs in elektronicawinkels, het is beter om te gebruiken dergelijke een optocoupler. VERKEERDE. Dit werkt alleen met een
Arduino gecontroleerd Servo Robot (SERVISCH)

Arduino gecontroleerd Servo Robot (SERVISCH)

wat een betere manier om te experimenteren met opensource micro-controllers ( Arduino ) dan door het bouwen van uw eigen bron robot open ( CC (SA-door))?Wat te doen met uw Servische?(hier) - hoe uw Servische verbinden met het internet en het rijden o
Arduino gecontroleerde auto volgsysteem op basis van SMS

Arduino gecontroleerde auto volgsysteem op basis van SMS

Hi ik een Arduino gecontroleerde auto volgsysteem op basis van SMS voor mijn vaders auto maakte.De gebruikte modules zijn;Arduino nano V3.0SkyLab GPS-moduleWaveCom GSM moduleDe SoftwareSerial bibliotheek, TinyGPS worden gebruikt om te communiceren me
Arduino-gecontroleerde Smart Home

Arduino-gecontroleerde Smart Home

Dit Instructable werd geschreven door PubNub Evangelist Ian Jennings . Ian's verhaal doorloopt zijn proces van het opbouwen van een Arduino-gecontroleerde smart home model van kras.--Terug in September, onze stichter Stephen en ik spraken over manier
Digitale venster Sticker (Arduino gecontroleerde)

Digitale venster Sticker (Arduino gecontroleerde)

een bumpersticker formaat L.E.D. matrix waarin afbeeldingen worden weergegeven in volgorde van een SD-kaart, voor de productie van een geanimeerde teken of "venster sticker." Arduino gecontroleerd! Ook bevat Windows, Mac en Linux code voor .xbm
Arduino gecontroleerd vuurtoren

Arduino gecontroleerd vuurtoren

Overzicht:Ik heb vaak gedacht dat een vuurtoren zou een groot project voor een Arduino, en dus heb ik besloten om het eens te proberen met behulp van een van de lokale vuurtorens hier in Erie, Pennsylvania als inspiratie. Ik koos voor de North Pierhe
Sunrise wekker LED

Sunrise wekker LED

De mogelijkheid om te begrijpen en controle LED matrices is een belangrijke vaardigheid voor iedereen die hoopt te worden goed berijmd in de elektronica. Het begrip van shift registers en rij scanning technieken die nodig zijn voor dergelijke prestat