Svenska ElektronikForumet
http://elektronikforumet.com/forum/

Tidsstyrda lysdioder: (96st)
http://elektronikforumet.com/forum/viewtopic.php?f=4&t=87925

Författare:  Granisthn [ 19.58 2017-06-28 ]
Inläggsrubrik:  Tidsstyrda lysdioder: (96st)

Hej!

Kort sammanfattning:
Jag vill testa att bygga en "diod-klocka" med en diod för varje kvart på dygnet (24x4=96).
Klockan 00:00 skall alla dioder vara tända och därefter skall dioderna släckas en åt gången med 15 minuters mellanrum. Klockan 00:00 nästa dygn skall alla dioder tändas på nytt och nedräkningen börjar en ny cykel.

Kriterier:
Dioderna behöver "sitta på rad". En kvadratisk diodplatta med exempelvis 10x10 dioder fungerar alltså inte. Möjligtvis kan diodslingan delas upp i två delar, en för "dagtid" och en för "nattid".
Då diodklockan bara ändras var femtonde minut krävs ingen exakt tidsmätning, men jag vill att den ändå skall kunna användas åtminstone ett år eller två utan att den visade tiden ballar ur.

Användningsområde:
Produkten kommer att vara avstängd under vissa perioder av året.
Användning av nätadapter är möjlig (men möjlighet till batteritid ett par dagar vore grymt, detta är dock inget krav).
Personen som använder elektroniken är inte kunnig inom elektronik och kan därför inte programmera om klockan via dator, däremot skulle en knapp för att "hoppa fram tiden en kvart" fungera bra för att ställa in tiden någorlunda om produkten varit avstängd ett tag eller vid t.ex. vinter/sommar-tid.

Mina tankegångar hittills:
Min första tanke är en arduino uno i kombination med nätadapter, RTC och en programmerbar ledslinga. Det är inget krav på arduino men det känns som en bra start för att få grejerna att fungera innan man börjar köpa på sig andra delar. Tankegångar som är "outside of the box" uppskattas väldigt mycket då jag själv har fastnad lite i ledslinge-tänket.
Jag har 7,5hp programmering i ryggen och en del "youtube-kunskap" gällande arduino. Inget proffs med andra ord, men ändå lite grundkoll.

Bild på liknande produkt som säljs på marknaden idag:
LÄNK

Vad tror ni?
Alla tankar och idéer uppskattas. :)

Mvh.

Författare:  FormerMazda [ 20.21 2017-06-28 ]
Inläggsrubrik:  Re: Tidsstyrda dioder: (96st)

Finns wifi i hemmet? I så fall finna färdiga Shields för wifi med färdig exempelkod som går och hämtar tiden på nätet.
Sen tycker jag som du säger att en remsa med "styrda" leds vore en enkel väg att gå.

Författare:  Granisthn [ 08.04 2017-06-29 ]
Inläggsrubrik:  Re: Tidsstyrda dioder: (96st)

FormerMazda skrev:
Finns wifi i hemmet? I så fall finna färdiga Shields för wifi med färdig exempelkod som går och hämtar tiden på nätet.
Sen tycker jag som du säger att en remsa med "styrda" leds vore en enkel väg att gå.


Hej!
Tack för snabbt svar :)
Nej, inget wifi tyvärr.

Författare:  hawkan [ 08.17 2017-06-29 ]
Inläggsrubrik:  Re: Tidsstyrda dioder: (96st)

Det går att få processorn (328) att dra så lite ström att den klarar sej i dagar på ett litet batteri, Plus att en billig RTC håller tiden mycket bra i flera månader på ett knappcellsbatteri. Men sedan drar ledarna ström och om man tänker 48 x 20 mA i medel så drar det snart ur ett batteri. Så för ledarnas skull är det nog bra att börja med nätanslutning.

Exakt tid går det att få från en gps-modul t ex en sån här för under 40 kr.

Edit: Med "ledarna" menar jag LED-arna och inte kablarna.

Författare:  larky [ 09.32 2017-06-29 ]
Inläggsrubrik:  Re: Tidsstyrda dioder: (96st)

WS2812-ledslinga finns med olika antal dioder per meter, (30,60,74,96,144 st) och är enkel att styra med en arduino. Du kan ha olika färg på olika delar av slingan.
Det går att tända och släcka varje enskilld diod, ändra ljusstyrka och färg.
Kallas även neopixel

GPS är nog enklast för att få exakt tid, med en knapp eller vippbrytare för att ändra mellan sommar och vintertid.

Författare:  TomasL [ 09.51 2017-06-29 ]
Inläggsrubrik:  Re: Tidsstyrda dioder: (96st)

96 LEDar som lyser, då får du ha ett rätt stort batteri om du skall klara detta ett par dagar.
Går synnerligen enkelt att fixa till med några räknare och skiftregister, finns inget behov att krångla till det med en massa processorer.

Författare:  Gimbal [ 10.03 2017-06-29 ]
Inläggsrubrik:  Re: Tidsstyrda dioder: (96st)

larky skrev:
GPS är nog enklast för att få exakt tid, med en knapp eller vippbrytare för att ändra mellan sommar och vintertid.


Det förutsätter förstås att mottagaren sitter någonstans där den kan ta emot GPS signaler. Batteribackade RTC'er finns som tillbehör till Arduino och de lär vara tillräckligt noggranna för en klocka med display upplösningen 15minuter.

Författare:  Castor [ 11.14 2017-06-29 ]
Inläggsrubrik:  Re: Tidsstyrda dioder: (96st)

Det kan ju vara enklast att använda processor för att multiplexa och spara batteri. Inte lika enkelt med HW.

Författare:  E Kafeman [ 12.01 2017-06-29 ]
Inläggsrubrik:  Re: Tidsstyrda dioder: (96st)

20mA per diod * snitt 48 tända*3V ger 3Wh. Ett laptop-batteri borde räcka några dagar.

Mitt förslag är ESP8266 som enkelt kan driva WS2812 eller något liknande.
ESP'n kan agera web-server även utan tillgång till trådlöst nätverk vilket gör det enkelt att skapa trådlöst kontroll-interface även om inte annat nätverk finns i närheten.
En RTC-krets kan användas för tidssynkning men det finns många andra enkla möjligheter.

En ESP8266 innehåller ett realtids räkneverk som jag använt som klocka i ett projekt på plats helt utan nätverk.
Varje gång kretsen kontaktas så får den en tidsstämpel från mobiltelefonen som ansluter och kan uppdatera inre klockan.
Den kontaktas var 3:e dag och tidsdiffen då brukar vara några sekunder.
Tidsdriften är säkert temperatur-beroende och annat så om det är en bra lösning beror på vilken precision som krävs.

Jag liksom många andra köpte billiga sonoff's fjärrbrytare som innehåller en ESP8266. De är enkla att mata in egen programvara i.
I min programvara, timerns tider för av och påslag, just för att de inte ska vara beroende av konstant tillgång till trådlös wifi sparas inställda tiderna lokalt och den klarar sej sedan med den interna klockan. Gör här på liknande sätt, finns trådlöst nätverk kontaktar den en NTP-server en gång i veckan och vid varje uppstart och synkar klockan. Finns inget nätverk så klarar den sej ändå i månader då kravet på precision är måttligt. Önskemålet är att de ska tändas en timme kring solens upp och nedgång så det tillkommer även en beräkning om när solen väntas stiga upp och ibland missar solen en kvart eller stiger inte upp alls.
En snabb sökning gav denna programkod: https://github.com/cnlohr/esp8266ws2812i2s

Författare:  hawkan [ 12.20 2017-06-29 ]
Inläggsrubrik:  Re: Tidsstyrda dioder: (96st)

E, det verkar görbart. Men vilken utvecklingsmiljö hamnar man i då? Och är det rimligt att någon med 7,5hp programmering går iland med detta? Uhhm 7,5hp är det 7,5 högskolepoäng? Då borde det inte vara några problem eller?

Författare:  E Kafeman [ 16.47 2017-06-29 ]
Inläggsrubrik:  Re: Tidsstyrda dioder: (96st)

Vad jag kan komma ihåg, mina enda högskole-poäng i programmmering var nog 10p i ADA-programmering. Dom poängen gjorde inte så mycket till eller ifrån på mina programmeringsfärdigheter.
Tror mera på att finns intresset lär man sej det som behövs.

Arduino-miljön är väldigt avskalad. Dåligt debug-stöd och inte särskilt konfigurerbar editor. Är mest som Notepad med inbyggd FTP.
Men just därför är instegs-tröskeln låg och någonstans ska man börja, varför jag rekommenderar den som nybörjar-insteg.

Arduino nybörjar-instruktionerna brukar första exemplet vara att blinka en lysdiod. Därmed så är 1/96:e del av lysdiod-slingan redan klar. :)
Det är långt ifrån att gräva på djupet mha assembler men duger som start.
Återigen en snabb sökning och detta verkar vara en bra nybörjar-start: http://www.whatimade.today/esp8266-easi ... am-so-far/

Rekommenderad hårdvara är en ESP-12. den pluggas direkt i datorn och man bör klara att köra sin första kod på denna efter en timme även som nybörjare.
Mängden med färdiga programexempel gör att man sällan behöver börja från grunden utan det mesta kan klippa och klistras.
Efter lite mindre justeringar av det som man klipper in och allt är klart.

ESP-12 är väldigt enkel att ge användarinterface som kan styras via en mobiltelefon, och är fart-raket jämfört med konventionella Arduino/Atmel-kretsar.
ESP-12 har mer minne än en del andra varianter där man lättare blir begränsad samt att det utökade minnet ger möjlighet till fjärruppdatering av hela programvaran. Behändigt, i synnerhet när man är i debug-stadiet.
Nackdelarna är högre strömförbrukning och mer begränsat antal GPIO. I detta fallet så drar lysdioderna förmodligen mest ström så det spelar ingen roll och det är få projekt som kräver stort antal GPIO men skulle det behövas så går det lösa.
På den mer avancerade sidan är cpu med interna kringkretsar dåligt dokumenterade även om det finns en del pdf:er, på kinesiska. Existerande utvecklingsverktyg för assembler är inte att jämföra med 8051 och liknande som är kända i minsta detalj och där programmerings-verktyg finns från flera olika tillverkare.

Författare:  hawkan [ 17.38 2017-06-29 ]
Inläggsrubrik:  Re: Tidsstyrda dioder: (96st)

Så du tror på en Arduino-lösning med esp-12. Jag hade NodeMCU i tankarna eftersom du nämnde en webserver för att ställa tiden. Mest därför jag frågade.

Författare:  E Kafeman [ 18.10 2017-06-29 ]
Inläggsrubrik:  Re: Tidsstyrda dioder: (96st)

Har ingen betydelse vilket man väljer. PCB-hårdvaran och IDE't man har i botten skiljer lite mellan olika varianter men det är tycke och smak.
Rent funktionellt är pwm-implementation lite buggig i den Arduino-kompatibla IDE-versionen men är lätt att korrigera.
LUA känner jag inte till om den har några extra features eller buggar.
Det jag tycker talar för Arduino-miljön är att man direkt kan börja skriva kod om man kan lite C++.
Klistra in en webbserver är så enkelt det kan bli även i Arduino. En rad med include av ett bibliotek är allt som behövs.
Evt variabler att ange är vilket nätverk den ska ansluta till och dess password.
Tillkommer att skriva html-innehåll för en fristående server, så man ska helst kunna lite html också. Skicka html-baserade variabler kan ske på lite olika sätt.
Är man ny på detta, så kan det vara enklast att leta exempel som ligger nära det man vill göra och om det sedan är LUA eller Arduino-IDE spelar mindre roll.
Samma hårdvara kan användas till bägge och IDE't kan bytas utan problem.

Författare:  Granisthn [ 15.13 2017-06-30 ]
Inläggsrubrik:  Re: Tidsstyrda dioder: (96st)

Oj, jäklars vad många matnyttiga svar jag fått! :D
Tack så jättemycket!

Som många av er antyder så lär det krävas en del batterikapacitet för att klara av styrningen några dygn utan nätadapter, så jag skippar det tills vidare.

Om jag använder mig av arduino, rtc och en programmerbar led, kan jag då ha en knapp för att "hoppa fram tiden 15 minuter åt gången"?
Jag har ingen tidigare erfarenhet av programmerbara leds eller rtc, så jag vet inte riktigt vad de har för begränsningar.

Tack återigen för alla grymma svar! :)

Författare:  larky [ 15.40 2017-06-30 ]
Inläggsrubrik:  Re: Tidsstyrda dioder: (96st)

Absolut, läs på om ws2812 och arduino, det går att göra nästan vadsomhelst.
Första youtubeträffen:
https://www.youtube.com/watch?v=KlfhHXBz9WI

Författare:  hawkan [ 07.37 2017-07-01 ]
Inläggsrubrik:  Re: Tidsstyrda dioder: (96st)

Det kommer att gå alldeles utmärkt med en Uno, rtc och ws2812-slinga. Och en knapp då.

En ds3231 som kostar mindre än en tia har en precision på 2 ppm vilket gör att den max drar sej 1.2 sekunder per vecka eller 2 minuter på två år. Jag undersökte det lite ovetenskapligt viewtopic.php?f=2&t=80703&hilit=ds3231&start=30 och den drog sej 1 sekund på en månad i det testet. Och om du sätter på ett uppladdningsbart knappcellsbatteri klarar den hålla tiden i typ tre månader trots den är avstängd. Med det sagt så kan du skippa knappen för det blir inga kvartar som är fel. Och enklast att göra ett mini-program som enbart sätter tiden i rtc-en en gång för alla och sedan det egentliga programmet som visar LED och det.

Det finns många projekt med ds3231, bara att googla. Det är det tråkiga egentligen, för det är knappt någon idé att beskriva hur man gör för det är enklare att hänvisa till att googla upp en av alla projekt som finns på intrawebben. Inget illa menat eller pik för att man ska googla.

Författare:  Granisthn [ 14.20 2017-07-05 ]
Inläggsrubrik:  Re: Tidsstyrda dioder: (96st)

Tack allihopa!

Jag har gjort ett första utkast till en programkod nu tillsammans med en Uno, en rtc och en ws2812-slinga.
Koden är väldigt basic och till stor del baserad på "if"-satser, men den verkar göra jobbet när jag testar den här hemma. :D

23:59:55 är det ytterligare en if-sats som släcker hela slingan så den kan börja om på ny kula nästa dygn.

Nästa tankenöt att knäcka:
1. Hur kompenserar jag för sommar/vintertid? Jag ut går från att RTC:n inte har detta inbyggt?
2. Kan jag med hjälp av knapp eller liknande justera tiden "rätt" ifall knappcellsbatteriet byts ut någon gång i framtiden? (jag vill alltså inte behöva koppla in den till datorn igen)

En lösning för detta som jag klurar på är att ledslingan hela tiden visar tiden "rtc.hour + x".
x = 0 vid programmering men om en brytare sluts in blir x = x+1.
Vad tror ni om den simpla lösningen? :)

Författare:  larky [ 18.01 2017-07-05 ]
Inläggsrubrik:  Re: Tidsstyrda dioder: (96st)

En vippbrytare för sommar/vinter funkar, jag har inget bättre förslag.

Författare:  rvl [ 18.08 2017-07-05 ]
Inläggsrubrik:  Re: Tidsstyrda dioder: (96st)

Försök få EU att sluta med sommartid. :D
https://svenska.yle.fi/artikel/2017/06/ ... artid-till

Författare:  E Kafeman [ 18.41 2017-07-05 ]
Inläggsrubrik:  Re: Tidsstyrda dioder: (96st)

Nej inte ska vi sluta med sommartid, det är vintertid som ska slopas.

Sommar eller vintertid är en regel-fråga, läsa av datum och veckodag i RTC så vet man om det är sommar eller vintertid.
IF (X>sista söndagen i mars && X< sista söndagen i oktober) then sommartid
Om det fortfarande verkar krångligt är det lätt att manuellt göra en datum-tabell som täcker närmsta 10 åren.

Författare:  Granisthn [ 20.08 2018-01-02 ]
Inläggsrubrik:  Re: Tidsstyrda dioder: (96st)

Hej igen allihopa :)

Projektet har sovit ett tag då nytt jobb, resor och annat strunt kommit emellan.

Kom att tänka på en annan lösning här i veckan som gör att projektet växer lite ytterligare.
Vad tror ni om en arduino med wifi shield som ger möjlighet att via en hemsida manuellt justera rtc:n under 10 minuter varje gång klockan aktiveras (alltså när väggkontakten ansluts)? På så sätt kan klockan även användas vid resor över tidszoner.

Jag vet att vi diskuterat Wifi tidigare i tråden men det kan ha varit jag som fattat fel då. Jag trodde wifi behövdes hela tiden för att ha koll på tiden. :roll:

Vad tror ni om det förslaget? Mer jobb helt klart, men samtidigt mer "heltäckande" vid längre resor, döda batterier osv.

Författare:  säter [ 18.01 2018-01-03 ]
Inläggsrubrik:  Re: Tidsstyrda dioder: (96st)

Det vore ju bra om du förtydligade rubriken från "dioder" till "lysdioder".

Författare:  Gizmo [ 09.03 2018-01-04 ]
Inläggsrubrik:  Re: Tidsstyrda dioder: (96st)

Om jag skulle göra ett ur som går hela tiden så skulle jag synkronisera med radio mot DCF77 då får man en exakt tid plus slipper ställa tiden själv plus behöver ingen internetuppkoppling eller funktioner i klockan för att ställa tiden, det sköter sig självt.
DCF77 är ett atomur i Bern som skickar ut tidssignaler över radio som man kan ta emot. Det finns färdig elektronik respektive kod för Arduino för att ta emot det.

Författare:  mrfrenzy [ 11.57 2018-01-04 ]
Inläggsrubrik:  Re: Tidsstyrda dioder: (96st)

Jag har en väggklocka med DCF77. Här i Jönköping så fungerar den på ytterväggar men inte på innerväggar. Signalen är för svag.
Nästa gång blir det ESP8266 och synca via wifi+ntp istället.

Kör arduinokod på ESPn och använd strömsparlägena så WiFi är avstängt för det mesta. Då behövs ingen separat processor för klockan.

Det finns gott om exempel att hitta:
https://www.youtube.com/watch?v=9ISfMoC6MGk
https://www.hackster.io/thearduinoguy/e ... ock-a9cc74
http://www.instructables.com/id/ESP8266 ... rduino-ID/
http://learn.acrobotic.com/tutorials/po ... th-esp8266

Författare:  Granisthn [ 18.52 2018-01-04 ]
Inläggsrubrik:  Re: Tidsstyrda dioder: (96st)

säter skrev:
Det vore ju bra om du förtydligade rubriken från "dioder" till "lysdioder".


Done! :P

Författare:  Granisthn [ 18.57 2018-01-04 ]
Inläggsrubrik:  Re: Tidsstyrda dioder: (96st)

Gizmo skrev:
Om jag skulle göra ett ur som går hela tiden så skulle jag synkronisera med radio mot DCF77 då får man en exakt tid plus slipper ställa tiden själv plus behöver ingen internetuppkoppling eller funktioner i klockan för att ställa tiden, det sköter sig självt.
DCF77 är ett atomur i Bern som skickar ut tidssignaler över radio som man kan ta emot. Det finns färdig elektronik respektive kod för Arduino för att ta emot det.


Tack för tipset! Ska läsa på mer om detta. :)

Författare:  rvl [ 19.04 2018-01-04 ]
Inläggsrubrik:  Re: Tidsstyrda dioder: (96st)

mrfrenzy skrev:
Jag har en väggklocka med DCF77. Här i Jönköping så fungerar den på ytterväggar men inte på innerväggar. Signalen är för svag.
Kanske mer relaterat till väggens riktning, eftersom den bestämmer antennens orientering inne i klockan?
Svagt här också. Inte alla nätter den lilla Clasklockan får kontakt och dagtid är det väl mer eller mindre omöjligt. En repeater eller egen DCF77generator kan vara en intressant lösning. EF:are väljer ju inte alltid det som är enklast och billigast 8)

Författare:  Granisthn [ 19.06 2018-01-04 ]
Inläggsrubrik:  Re: Tidsstyrda dioder: (96st)

mrfrenzy skrev:
Jag har en väggklocka med DCF77. Här i Jönköping så fungerar den på ytterväggar men inte på innerväggar. Signalen är för svag.
Nästa gång blir det ESP8266 och synca via wifi+ntp istället.

Kör arduinokod på ESPn och använd strömsparlägena så WiFi är avstängt för det mesta. Då behövs ingen separat processor för klockan.

Det finns gott om exempel att hitta:
https://www.youtube.com/watch?v=9ISfMoC6MGk
https://www.hackster.io/thearduinoguy/e ... ock-a9cc74
http://www.instructables.com/id/ESP8266 ... rduino-ID/
http://learn.acrobotic.com/tutorials/po ... th-esp8266



Tack!
Hur fungerar detta vid vinter-/sommartid eller om man tar med sig klockan utomlands? Jag gissar att den inte synkar automatiskt utan att man behöver justera manuellt då via programmering?

I en senare version är det tänkt att produkten skall användas av personer utan teknikkunskap eller teknikintresse, därav funderar jag på möjligheten att programmera om tiden via hemsida och wifi. Exempelvis att man på sidan har valmöjligheter som "Centraleuropa" eller "GMT" och att det sedan i bakgrunden väljs förhållandet till NTP som sedan skickas tillbaks till arduinon :)

Författare:  Gizmo [ 15.51 2018-01-06 ]
Inläggsrubrik:  Re: Tidsstyrda lysdioder: (96st)

DCF77 går ju på tysk sommartid, som är samma som svensk dito så ja, den justerar om sig.
Om det funkar eller inte utomlands beror ju på var du är och om den får radiokontakt eller inte.
Den funkar inte i sydamerika, men väl i Tyskland och Frankrike så att säga...

Alla tidsangivelser är UTC + 1 timme
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
http://www.phpbb.com/