Bedankt voor de tips.Verwijderd schreef op donderdag 17 juni 2010 @ 10:20:
En wat als er nou per ongeluk '1' wordt verstuurd zonder dat het de bedoeling was?Je zou een checksum achter de reeks bytes kunnen plakken, bijvoorbeeld dat er 25 bytes achter de '1' aankomen: voor ieder uur eentje en dan not een extra byte die de som is van de 24 voorgaande waarden (modulo 256, want het mag niet groter zijn dan 255). Zo heb je een extra vangnet om te voorkomen dat er per ongeluk gereageerd wordt als er een '1' voorbij komt die niet bedoeld was.
Houdt er bij je transistors rekening mee dat een normale transistor nog steeds ongeveer 1/200 van de stroom uit de arduino trekt. Als je dus een buis hebt die 200mA nodig heeft zal je arduino met 1mA belast worden. Bij grote stromen kan dit problemen geven, met een FET i.p.v. een BJT transistor kan je dit voorkomen (een FET trekt nooit stroom uit je arduino, iig niet een stroom afhankelijk van de belasting)
Het was gisteren nog mogelijk om zelf iets in te vullen en per ongeluk een 1 te verzenden, maar nu niet meer.
De string die nu verzonden word kan er zo uitzien: 1aaaaaabcdeeeeeeeedcbaaaa voor lamp twee is dat 2aaaabcdeeeeeeeeeedcbaaaa, etc In principe kan er niet meer per ongeluk een 1 verzonden worden. Maar als er nog ruimte over is kan er altijd nog een check uitgevoerd worden op de string.
De nieuwe versie met combibox.

Ben nog wat aan het zoeken naar welke transistors goed zijn. Maar de buis die eraan moet komen te hangen trekken sowieso niet meer dan 1A, maar zal denk ik iets minder zijn. Heb nu twee transistor uit de DB serie (240 en 242) in de bestelling zitten met wat koellichamen. Om daar wat testen mee uit te voeren, twijfel namelijk beetje over de versterking van deze transistors. Ik ga dit maken rond een ATmega88 die voorzien word van een arduino bootloader, zal dan op een los printje komen.
heb overigens ook twee roboduino's binnen gekregen vorige week, ze zijn niet zo goed gemaakt als de arduino zelf, de kristal zit er niet helemaal recht, zit wel goed vast gesoldeerd, steekt gewoon aan de ene kant paar mm van het bord af, staat omhoog. Is bij alle twee de bordje. Zal de werking verder niet belemmeren maar ziet er wel wat slordig uit. Verder zijn er andere onderdelen gebruikt, wat op zich ook niks moet uitmaken. Verder ziet het er prima uit, en een voordeel, de X3 pads zijn gewoon open je kan er dus gemakkelijk een header erop solderen, bij de arduino zit er tin in en moet je dus eerst eruit halen wat bij mij dus fout is gegaan en is een pad los gekomen, wat overigens de werking van de arduino niet verstoord, maar kan er geen header meer opzetten.
Ik hoef het niet meer aan te passen, opmerking was meer bedoel voor als andere mensen(of ik zelfs voor andere project) de code willen gebruiken voor een andere string. En het zou ook klein beetje meer geheugen kosten, iets van 50 bytes meer en denk dat ik elke byte nodig heb, de ATmega heeft 8 KB flash waarvan 2KB weg valt door de bootloader, heb dus 6KB over.stef-o schreef op donderdag 17 juni 2010 @ 09:51:
Interessant
Is het niet handiger om je 24 in een var te proppen zodat je het maar 1x hoeft aan te passen?
Edit/
Heb de buis net ontvangen en zijn 216mA (2.59w 12v) dus dat val me reuze mee, als ik dan 1A per kanaal aanhoud dan is het zelfs mogelijk om 2 of 3 buizen per kanaal aan te sturen, ze zijn namelijk aan elkaar te koppelen.
Edit/2
En het werkt!
Heb de buis nu via een 2n3904 transistor lopen, helaas zijn dat TO-39 behuizingen die kan je niet zo gemakkelijk koelen. Al word de transistor op dit moment niet heet, maar dat zal komen omdat de buis niet constant op volle strekte brand.
[ Voor 15% gewijzigd door mad_max234 op 17-06-2010 17:13 ]