Ett tidsstyrt schema ställer relä upp till 8 kanaler.
Du kan sedan styra vad du önskar: Bilhorn som spelar en melodi,
lampor i en skylt eller bara en belysning.
Tid kan vara från 1000 delar av en sekund upp till dagar mellan att relät slår.
Om du använder ett 8 kanals relä, kan det vara bra med extern ström till detta.
Unokortets ström räcker men det hörs att de fyra sista relä inte slår kraftigt.
Ska max 4 vara slagna samtidigt så går det bra.
Mitt UNO-kort sitter monterat i durk och en automatisk växlande LED lyser under mikroprocessorn.
I detta exempel är det två relä men det går att koppla upp till 8 relä.
De moduler vi säljer på tradera är alla kompatibla.
Är det tio händelser, detta stämmer att 'NUMBER_OF_RELAY_EVENTS' också är tio.
Det är tre kolumner alltså tre variabler till varje händelse.
Du kan själv ställa de värden som passar dig.
Kolumn 1 'done':
Denna ska alltid vara 'false'.
Det är programmet som använder denna för att hålla reda på
om den gjord eller inte.
Kolumn 2 'bits':
En byte är 8 bitar, varje bit styr ett relä.
En etta betyder att relät inte är aktivt.
En nolla betyder att relät är slaget.
Kolumn 3 'when'
Detta är tiden efter startpunkten då händelse ställer alla relä.
Värdet kan vara från millisekunder upp till flera dagar
Ner till millisekund är inte helt exakt, det tar en stund för programmet att
leta upp händelsen och lite tid att att skicka den via I2C bussen.
Ex:
1000 är en sekund
60000 är en minut
3600000 är en timma
86400000 är ett dygn
50 dagar
millis() ger värdet av en timer i mikroprocessorn. Denna timer har en begränsning,
den når sitt max värde efter 50 dagar. Detta program slutar då att fungera.
För att få i gång det igen måste man bryta strömmen eller trycka på reset,
så funkar det igen i 50 dagar.
Detta går att fixa i programmet, men jag har valt att inte göra det.
Jag vill att programkoden ska vara så enkel att en nybörjare kan förstå den.
Tror att det kommer ett större program i framtiden med mera relä och då är den fixen med.