Eenvoudige Arduino Sunrise Lamp (2 / 4 stap)

Stap 2: Software, deel 1

De software bestaat uit twee geneste lussen-één de werkelijke inschakelen en uit (PWM) uit te voeren en een om te gaan door de toenemende niveaus van helderheid.  Ik schreef een lus om de PWM door hand doen omdat de ingebouwde PWM van de Arduino slechts 255 beschikbare niveaus van helderheid, wat betekende heeft dat de lichten in helderheid springen zou als eerst ingeschakeld.  Ik schreef een eenvoudige PWM-lus met 1000 mogelijk niveaus van helderheid, waardoor het meer glad.

 int duty = 0; int steps = 64; int sunrisespeed = 5000; int i; int j; int pulsepin = 11; int lookup[64] = {1,2,4,6,9,12,16,20,25,30,36, 42,49,56,64,72,81,90,100,110,121,132, 144,156,169,182,196,210,225,240,256,272,289, 306,324,342,361,380,400,420,441,462,484,506, 529,552,576,600,625,650,676,702,729,756,784, 812,841,870,900,930,961,992,992,992}; // there are freq steps in the phasing void setup() { pinMode(pulsepin, OUTPUT); } 

De initialisatie code worden twee constanten gedeclareerd: stappen en sunrisespeedstappen vertegenwoordigt het aantal verschillende lichtniveaus die de controller zal gebruiken.  Ik gebruikte 64 als een willekeurige keuze, en omdat het de wiskunde vergemakkelijkt.  Sunrisespeed bepaalt hoe lang het programma zal doorbrengen op elk licht niveau-specifiek, hoeveel pulsen het voor een bepaalde pulsbreedte output zal.  Elke puls aan-uit in de PWM is 5 milliseconden lang, dus een sunrisespeed van 200 1 seconde (200 pulsen van 5ms) van elk licht niveau zal produceren.  Met 64 stappen, dit betekent dat de hele zonsopgang zou duren ongeveer één minuut, dus om de zonsopgang duren voor een meer realistische half uurtje wij zou sunrisespeed ingesteld op 200 * 30 = 6000.

int lookup [64] is een array een lijst met getallen die individueel kunnen worden benaderd door het geven van een positie in de lijst.  Liever dan schrijf een programma met de nodige wiskunde in het berekenen van een groeiende lijst van nummers dat zou goed zijn voor het menselijk oog niet-lineaire respons, was het makkelijker om gewoon werken uit de lijst en sla het op in het programma.  Dit is een programmering techniek die bekend staat als een opzoektabel, vaak gebruikt wanneer een programma wil toegang tot een korte lijst van nummers die lang duren om te berekenen maar niet kunnen wijzigen.

plicht, ik en j zijn variabelen die wordt gebruikt tijdens het genereren van de pulsen.

Gerelateerde Artikelen

Eenvoudige Arduino Arm (Pan/Tilt)

Eenvoudige Arduino Arm (Pan/Tilt)

Catapult spelen op kantoor inspireerde mij om te bouwen van deze Arduino Arm om de druk op de liniaal en de release om te schieten. Hoewel het niet mijn eerste intentie vervullen, denk ik dat deze eenvoudige Arduino Arm zal leiden tot andere koeler p
Een eenvoudige Arduino Bluetooth auto

Een eenvoudige Arduino Bluetooth auto

Hoi, dit is mijn eerste instructable.Dit is een eenvoudige arduino bluetooth auto voor beginners.Ik ben met behulp van twee continue rotatie servos in plaats van motoren.Dus, laten we beginnen. :)Stap 1: Wat moet je1) Arduino (im ' using een Mega-256
Zeer eenvoudige Arduino elektrische Lock

Zeer eenvoudige Arduino elektrische Lock

dit is een instructable voor een zeer eenvoudige Arduino elektrische lock gecontroleerde.Het belangrijkste idee is hier is heel eenvoudig als dit meer van een proof of concept prototype soort ding was.De Arduino wordt gebruikt als schakelaar voor con
Eenvoudige Arduino Laserharp

Eenvoudige Arduino Laserharp

hier beschrijf ik een manier om een eenvoudige Arduino laserharp, een muziekinstrument dat wordt muziek afgespeeld wanneer u een bundel van laserlicht van het raken van een fototransistor blokkeren. Dit project werd gedaan als onderdeel van de PHYC 3
Kleur veranderende nachtlampje / lamp LED eenvoudig Arduino project

Kleur veranderende nachtlampje / lamp LED eenvoudig Arduino project

dit was één van de eerste codes die ik ooit heeft geschreven om te begrijpen hoe met variabele analoge uitgangen te dimmen van LEDs.Ik heb een paar tri-color LEDs in mijn Arduino-kit, en zodra ik ze besefte gemeenschappelijk anode in plaats van gemee
Arduino Mood Lamp

Arduino Mood Lamp

Hallo Instructables gebruikers!!! Dit is een eenvoudig, leuk en nuttig project voor arduino beginners. Jullie zullen opbouwen van de lamp en vervolgens uploaden van de code om het licht van de lamp tot een kleur van uw wens. De kleur is glad en licht
Arduino muur Lamp

Arduino muur Lamp

Dus, ik heb altijd al een mooie lamp langs de kant van mijn bed, iets simpels met alle knoppen.Dit zou natuurlijk betekenen moest worden draadloze. Ik wilde ook het gebruiken van mijn bed, maar krijgt niet uit mijn bed voor zwenking op vandoor. Dus h
Eenvoudige Arduino Dot-Matrix beeldscherm

Eenvoudige Arduino Dot-Matrix beeldscherm

tegenwoordig zijn er vele Dot-matrix displays op de top van winkels of dit soort plaatsen.Dot-matrix heeft een eenvoudige idee achter, voor het maken en weergeven met LED of lamp puntjes.In deze handleiding wil ik u laten zien hoe een beginner en een
Eenvoudige Arduino Monome

Eenvoudige Arduino Monome

OverzichtDit Instructable is de eenvoudige versie van de MaKey MaKey Monome, een instrument van de elektronische muziek gemakkelijk voor kinderen en beginners te reproduceren (sequentieel op!). Voel je vrij om check out mijn websitevoor meer informat
Eenvoudige Arduino verkeerslichten

Eenvoudige Arduino verkeerslichten

u een stad uit Legos ooit heb gedaan? Ik weet ik velen van hen hebben gebouwd, maar ze allemaal iets gemist... Verkeerslichten!Dus besloten heb ik om mijn eigen verkeerslicht setup uit mijn arduino board.Stap 1: U moet: u nodig:Een arduino boardRood,
Eenvoudige minimalistisch design lamp

Eenvoudige minimalistisch design lamp

Hallo ben ik Thomas Van den Langenbergh. Ik ben een student van Belgisch design en samen met Pauline en Katrijn, we ontwierpen een minimalistische lamp. We maken het eenvoudig om te bouwen van een minimalistische lamp met hout en plexi (PMMA).Stap 1:
Eenvoudige Arduino LCD-spel!

Eenvoudige Arduino LCD-spel!

Hallo mensen! Pure koolstof hier en vandaag ik zal je laten zien hoe maak je een uiterst eenvoudig spel dat kan worden afgespeeld op een LCD-knop Shield voor Arduino. Helaas zijn niet daadwerkelijk een spel omdat alles wat je zal kunnen doen is maken
Voorbeeld van de HC-SR04 en eenvoudige Arduino

Voorbeeld van de HC-SR04 en eenvoudige Arduino

na een HC-SR04 kopen bij Amazon, ik kon niet krijgen om te werken uit de doos. Niet willen toegeven dat ik had een DOA-sensor op mijn handen, zocht ik naar een eenvoudig voorbeeld setup. Na veel te lang op dit dan ik voelde dat ik moest, besloten heb
Eenvoudige Arduino PIR Motion Detector Module Demo

Eenvoudige Arduino PIR Motion Detector Module Demo

Ik weet dat er zijn tal van Instructables en tutorials over dit al. Mijn doel is om alles tot in de kale botten minimum vereist zodat een beginner (zoals ik) kan het werken voordat ze gefrustreerd en geven krijgen vereenvoudigen.Hopelijk dit zelfs om