Ik haal mogelijk een project binnen waarvoor ik enkele 100'den LEDjes moet aan/uit laten schakelen op bepaalde tijdstippen – te programmeren via PC op een eenvoudige manier (de klant heeft een hekel aan computers). Het bouwwerk zou meer dan 15m lang zijn, dus kan ik ook niet alles naar een centraal punt bekabelen maar moet er in groepjes worden gewerkt.
Hoe begin ik er aan? Waar zoek ik naar wat?
bedankt alvast!
Dirk, 1 kleur ledjes of moet er ook nog dag nacht cyclus bij?
ter verduidelijking > 100'den verschillende kanalen... ;)
check eens Google en zoek naar NEOPIXEL
Dat zijn RGB LED modulekes die je allemaal aan elkaar kan koppelen en elke LEDje individueel kan aansturen vanuit 1 enkele microcontroller....
Alles op 1 ENKEL kanaal, gewoon een "daisy chain" met adressen
bedankt Dani maar ik ben nog te onduidelijk geweest... of te weinig info gegeven! :( Die NEOPIXEL is in alle geval een wijs product!
Als het project doorgaat heb ik dorp met een 100-tal huizen te bouwen. Elk huis zal meerdere kamers moeten hebben die verlichting hebben. Dan de gebruikelijk zaken zoals straatverlichting, rode lichten,... Random aansturen voor de huisverlichting zou ik interessant vinden maar die (potentiële) klant wil alles kunnen programmeren. En ja, is de klant niet koning? :)
Dat is het grotere werk, ook omdat je een PC-user-interface moet schrijven...
Je hebt verschillende problemen.
Eerst en vooral de omvang van het project. Verschillende huizen, heel dorp, honderden leds... dat veronderstelt dat dit een behoorlijke afmetingen heeft. Dus hoe ga je dat bekabelen, power en data? Alles centraal brengen heeft als voordeel dat je gemakkelijk kan foutzoeken, in groepen ga je moeten zien hoe je opsplitst om het realistisch te houden bij fouten. Als je data over grote afstanden wil sturen moet je een interface hebben die tegen een stoot kan en je moet voldoende adressen hebben.
Dan is er de ui. Begin niet met dat zelf te ontwikkelen. Zoek iets dat bruikbaar is en vooral waar anderen ook support kunnen geven.
Op de beurs in Houten stond er iemand een demo te geven van een module die 32 ios had. Elk te in te stellen voor leds, knipperen, dimmem etc. Hoorde bij een systeem voor treinbesturing. Zit hier op de trein en heb niet de folder bij. Misschien weet iemand anders het. Anders deze avond.
wel... voor zover ik de beschrijving van "meer detail" lees, Dirk, des te meer ben ik overtuigd dat iets als neoPixel toch een relatief eenvoudige oplossing kan bieden. Maar niet goedkoop natuurlijk, daarvoor zijn "gewone" LEDs wel beter dan.
Je hebt 1 enkele kleien microcontroller (arduino nano of zp) nodig , een flinke 5V voeding, en 3 draden die helemaal rond gaan, een soort 'ringleiding' waarvan 1 draad(je) de data lijn is en die loopt van pixel naar pixel. Je kan ELKE led apart aan, uit, kleur kiezen en dimmen . De controller (met de juiste driver ) zorgt voor de aansturing van al die adressen.
Wat de user interface en zelf "programmeren" betreft, dat kan op een PC gebeuren en dan via USB naar de controller de programma's door sturen. Eens aangepast, bewaar je ze in EEPROM en je hebt de pc niet meer nodig. De U.I. kan bvb in een VB , Visual C++ of andere taal. Ik zie het al voor me (ik heb namelijk als hte op programmeren en ontwerpen van die dingen aan komeneen levendige fantasie en redelijk wat ervaring).
Ideaal (en dat is ooit bij mij ook de bedoeling) maak eje een programma met als achtergrond echte foto's van de baan, en daarop nummertjes bij elk LEDje, die je kan aan klikken en als je klikt krijg je een pop up dat vraagt om "aanuit" - "random" (met tijd) - kleur - intensiteit. Zo heel erg moeilijk is dat niet.
Het "datamodel" is vrij simpel. Elke pixel krijgt een nummer, en in het (EEPROM) geheugen bewaar je op dat adres een aantal waarden (kleur in 3 waarden R,G,B -- modus -- random ... etc.)
Gevonden: interface is de OC32 van VPEB.
Is besturing met DCC geen optie? Daar zijn ook honderden adressen mogelijk.
Gezien de omvang van het project kan je dan beter de voeding en de datastroom gescheiden houden.
Als je eerder een kant-en-klare oplossing zoekt, dan is Night@Day van Littfinski (https://www.ldt-infocenter.com/dokuwiki/doku.php?id=nl:lightatnight) misschien een optie? Ik ken het niet, heb er geen ervaring mee, maar het bestaan ervan was me ooit eens opgevallen.
Citaat van: Klaas Zondervan op 16 december 2016, 10:53:54 AM
Is besturing met DCC geen optie? Daar zijn ook honderden adressen mogelijk.
Gezien de omvang van het project kan je dan beter de voeding en de datastroom gescheiden houden.
dat is inderdaad ook een haalbare oplossing, zeker als je zelf DCC decoders maakt met verschillende uitgangen die je dan via je programma (koploper, iTrain, RocRail of andere) kan sturen.
Denk ook eens aan multiplexen. Met 64(8x8) x 8 kom je al aan 512. centraal regelen en "lokaal" latchen om de leds te laten branden. Dat scheelt een boel bekabeling.
Met een Arduino Uno kan je 20 kanalen besturen, als je de Chinese Arduino koopt dan heb je zo'n kaart voor een 3 a 4€
Met een Mega heb je direct 70 kanalen dat je kan besturen voor een 7€.
Led besturing met een Arduino is vrij simpel te besturen. Je kan eventueel verschillende Arduino's samen laten communiceren zodat alles mooi op elkaar is afgestemd.
Dit lijkt mij een van de simpelste oplossingen.
Een uno is zelfs niet nodig. Een nano kost nog geen 2€ en heeft evenveel io's
En een dcc library is er ook al
Citaat van: dani op 16 december 2016, 13:11:10 PM
zeker als je zelf DCC decoders maakt met verschillende uitgangen die je dan via je programma (koploper, iTrain, RocRail of andere) kan sturen.
kijk in dat verband eens naar MARDEC
http://forum.modelspoormagazine.be/index.php/topic,15835.msg362065.html#msg362065
grt Piet.
Wil je echt zelf software beginnen schrijven en updaten en aanpassen iedere keer als de klant een "brilliant" idee heeft? Dit is echt anders dan als je zelf iets schrijft voor jezelf en niemand anders.
Citaat van: Havoc op 18 december 2016, 21:49:33 PM
Wil je echt zelf software beginnen schrijven en updaten en aanpassen iedere keer als de klant een "brilliant" idee heeft? Dit is echt anders dan als je zelf iets schrijft voor jezelf en niemand anders.
Bij Mardec geldt 'take it as it is' of pas zelf de software aan.
grt Piet.
Citaat van: Havoc op 18 december 2016, 21:49:33 PM
Wil je echt zelf software beginnen schrijven en updaten en aanpassen iedere keer als de klant een "brilliant" idee heeft? Dit is echt anders dan als je zelf iets schrijft voor jezelf en niemand anders.
Soms wel ja, als dat het totaal concept is dat je met je klant overeenkomt en als hij bereid is daar flink voor te betalen dan doe je dat als leverancier, zolang het binnen je mogelijkheden ligt. It si all about the money, dude !
En als je dan een beetje creatief en vooruitziend vant, dan schrijf je je software zodanig dat je modules of het geheel kan hergebruiken en verder verdelen. Doe ik trouwens zelfs ook als het voor mezelf is. In deze dagen van "the interwebs", open source en code sharing is dat gewoon zo.
Voor giannova http://forum.modelspoormagazine.be/index.php/topic,20031.135.html (http://forum.modelspoormagazine.be/index.php/topic,20031.135.html) hebben we 3 arduino's gebruikt.
Nu hier waren er maar 10 kanalen (en 4 voor de algemene verlichting). Ik kan getuigen dan daar vele weken tijd zijn ingekropen in bekabelen, solderen, programmeren en troubleshooting. Ik kan me best voorstellen dat met 10x meer kanalen het aantal mogelijke hinderpalen (en dus vertragingen) ook een veelvoud zal zijn. En daar werd zelf nog geen PC interface gemaakt, dat maakt het complexer.
Best eerst is goed nadenken over hoeveel tijd er mag inkruipen, wat het mag kosten en hoe zelfstandig het moet werken(zonder dat de bouwer altijd ter plaatse is)
Denk aan de driehoek:
Kies 2...