Wat is het TL-effect eigenlijk? In het kort komt het erop neer dat de vlamboog die in de buis getrokken wordt niet gelijk stabiel is. De lamp gaat dus even aan. Daarna moet waarschijnlijk eerst iets opgeladen worden, want het duurt even en dan zie je een volgende flits. Soms is het dan klaar, soms moet er nog een paar keer geprobeerd worden.

Een ander effect, dat ik ook heb gemaakt, is dat het licht op halve kracht lijkt te branden. De lamp is wel aan, maar niet op volle sterkte.

Hoe heb ik dit gemaakt?

Als voorbeeld de tunnel.

Ik wilde het zo maken dat ik met één druk tip de knop alle drie de lampen aan kan doen. Maar ik wil niet dat alle lampen zich precies hetzelfde gedragen. De ene TL-balk is de andere niet. Dus moeten er  drie poorten van  de OC32 gebruikt worden. Dan kan ik de balkjes afzonderlijk aansturen.
De + van de alle leds is op één punt op de 12v voeding aangesloten en de afzonderlijke -draden op respectievelijk  poort 8, 9 en 10.
Deze poorten komen bij mij overeen met DCC-adres 41, 43 en 43. De OC32 is de tweede in een reeks, De eerste heeft adres 1-32, deze dus 33-64. De 8e poort heeft dus adres 33 + 8 = 41.

Als eerste het met één knop alles aan of uit doen. Ik gebruik daarvoor de mogelijkheid om vanaf één poort, de andere poorten aan te sturen. Omdat 41 het eerste adres is heb ik daarvoor gekozen.
Nu kent DCC bij ieder adres meerdere aspecten. Binnen DCC zijn dat er twaalf. In de praktijk worden er meestal maar twee gebruikt: wissel recht, wissel gebogen. Of het rode en groene knopje op je centrale. Ik definieer daarom 41.0 (adres 41, aspect 0) als “Uit” en 41.1 als “Aan”. Van de andere twee adressen 42 en 43 laat ik de aspecten 0 en 1 leeg. Wanneer ik dus op adres 42 op het rode of groene knopje druk, gebeurt er niets.
Het daadwerkelijk aan en uit schakelen van de TL-balk zet ik bij alle adressen in aspect 2 (Aan) en 3 (Uit).
Door alle drie de poorten als één device te definieren OC32Config dat ze bij elkaar horen en worden wijzigingen steeds voor alle drie de poorten weggeschreven. Deze optie bestaat sinds de laatste versie en maakt het configureren redelijk comfortabel. Dit is te definiëren rechts bovenin het blok van de definities bij Device pin (hier 8) en Device name (hier: licht tunnel).

Voor adres 41 zien de aspecten er nu zo uit:

Aspect 0 (alle lampen uit)

  1. SetAspect 2         0        0        1        0
  2. SetAspect 2         1         0        1        0
  3. SetAspect 2         2        0        1        0

Er worden op Aspect 0 dus drie commando’s uitgevoerd die ieder weer een ander Aspect aanroepen. De  eerste gebruikt een offset van o. Dit betekent dat de Aspect nummer 2 van het huidige adres + 0 wordt aangeroepen 41.2 dus. De tweede regel heeft een offset (de eerste kolom) van 1. Die roept dus 42.2 aan. En de derde met een offset van 2,  43.2. De overige kolommen zijn 0 (geen functie) en 1 en 0. De laatste twee geven een vertraging aan. In dit geval 0,02 seconden. 0 0 Heeft tot gevolg dat er een reset van de timer wordt uitgevoerd. Dat willen we hier niet.

Aspect 1 (alle lampen aan)

  1. SetAspect 3         0        0        1        0
  2. SetAspect 3         1         0        1        0
  3. SetAspect 3         2        0        1        0

Enig verschil met Aspect 0 is hier dat Aspect 3 in plaats van 2 wordt aangeroepen

  1. Aspect 2 (licht uit)
    Off        0       0

Dit moet bij alle drie de adressen in aspect 2 worden gezet.

Aspect 3 (licht aan)

  1. SetLevel & WaitRnd        0        0        10       1
  2. SetLevel & Wait                0        31       1        0
  3. SetLevel & WaitRnd        0        0        8        1
  4. SetLevel & Wait                0        31       1        0
  5. SetLevel & WaitRnd        0        0        5        1
  6. SetLevel & Wait                31       5        9        1
  7. SetLevel                              0        31       1        0

Wat hier gebeurt is voor één lamp. Door de tijdswaarden per lamp iets anders in te stellen krijg je dat ze zich ook anders gedragen. Hiermee moet je een beetje spelen.
Als eerste SetAspect & WaitRnd. Dit commando zet het niveau van de uitgang op een bepaalde waarde en wacht daarna een random periode tussen de 20 ms en de tijd gespecificeerd met de laatste twee cijfers. Hier is dat 10 en 1 wat overeenkomt met 1,6 sec. Die tijden laten zich met OC32Config eenvoudig instellen.
De eerste twee cijfers staan voor Acceleratie, hoe lager hoe sneller de eindstatus wordt bereikt.De Eindstatus wordt met het tweede getal aangegeven. Hier 0 dus uit.

De  tweede regel SetLevel & Wait, zet onmiddellijk (acceleratie = 0) het level op 31 (lamp aan) en wacht 0,02 sec (1 en 0).

De derde regel zet de lamp weer uit en wacht tussen de 0,02 en 1,12 sec

De vierde regel zet de lamp weer aan en wacht weer 0,02 sec

Regel 5 zet het weer uit en wacht tussen 0,02 en 0,8 seconde.

Regel 6 zet de lamp langzaam (acceleratie 31) een beetje aan (level 5) en wacht 1,44 seconde.

Regel 7 tenslotte zet de lamp direct op level 31.

Het effect is dus: wacht, flits, wacht, flits, wacht, beetje half aan, vol aan. Door de andere twee poorten andere wachttijden te geven en/of minder flitsen en/of geen half aan fase. maak je het TL-effect individuele en geloofwaardig.

Hierbij nog een keer het filmpje met het effect.

 

 

 

2 gedachten over “Het TL-effect

  1. Hey Arjan, Ziet er zeer realistisch uit. Mijn complimenten. Zal toch eens echt serieus naar OC32 moeten kijken want dit is op zich al indrukwekkend (en dan te bedenken dat het maar een klein detail is op die xx vierkante meter moois… Erik(_en_kids zonder kids => deze keer 🙂 )

    Like

    1. Erik,

      Zeker de moeite waard er eens naar te kijken, Groot voordeel vind ik dat het niet een apparaat is dat maar één functie kan uitvoeren. Heb je een keer een aansluiting voor iets anders nodig dan kan dat ook. (wel binnen een paar beperkingen. Het type poort (weerstand, sink- of source-driver) moet wel geschikt zijn.)

      Echter, er is tegenwoordig ook de Arduino. Die koop je voor minder dan €2 in China en die biedt ook iets van 12 poorten en alle mogelijkheden die je maar wilt. Ik heb er een paar onderweg en ga er eens mee experimenteren. Zal hier in het blog verslag doen.

      Groeten aan de kids 😉

      Like

Plaats een reactie

Deze site gebruikt Akismet om spam te bestrijden. Ontdek hoe de data van je reactie verwerkt wordt.