Taschenlampe Marke Eigenbau

  • Hi!


    Will mir mal selbst ne "kleine" Taschenlampe bauen, bestehend aus ca. 10-15 Seoul P4 in kaltweiß. Komplette Lampe wird in Eigenregie angefertigt. Nun will ich aber gern ein paar programmierbare Modi miteinbauen, dazu ich natürlich nen Microcontroller brauche.


    Modi sollten wie folgt sein:


    0 -> Aus
    1 -> Low Mode
    2 -> Mid Mode
    3 -> High Mode
    4 -> SOS Mode (Taschenlampe blinkt im internationalen Morsecode ^^)
    5 -> Strobe Mode (Taschenlampe blinkt in willkürlich gewählten Abständen [mittels Zufallsgenerator o.ä.])


    Alle Modi greifen auf ALLE LED's zu, heist also ich brauch NUR folgendes:
    1 Eingang für Taster
    1 Eingang für Temperaturüberwachung
    1 Ausgang für die LED's


    Welchen Microcontroller jetzt also verwenden?
    Gedacht hätte ich an nen Attiny11 bzw Attiny12 . Muss ich da zwingend nen externen Quarz verwenden`? Lt. Datenblatt haben die Dinger max 8MHZ, das sollte doch allemal reichen für PWM oder?
    Wichtig ist halt nur, dass die Elektronik so klein als möglich bleibt.....


    Kann ich bei den o.ä. Microcontrollern direkt ein Analogsignal anlegen oder brauch der nen ext. ADC?


    Hier noch 2 Bilder wie das ganze in Etwa aussehen sollte, hier mit 9 P4's ^^
    [Blockierte Grafik: http://i399.photobucket.com/albums/pp80/DjTommyB_1985/LED/1.jpg]


    [Blockierte Grafik: http://i399.photobucket.com/albums/pp80/DjTommyB_1985/LED/2.jpg]

  • Bedenke bitte, dass nicht alles mit Basom programmierbar ist und soweit ich weiss haben die Tinys kein SRAM. Das kann schon ziemlich nervig sein. Wenn Du eine richtige Regelung der Leistung nach Temperatur willst musst Du zusätzlich extern einen ADC hinzufügen. Kannst aber ja auch einen reinen Temperaturschalter nehmen welcher die ganze Leuchte nur abschaltet.


    Würde Dir also empfehlen eher was größeres an Controllern zu nutzen. Ich persönlich arbeite auch mindestens mit Atmega8 (zur Not in SMD) und meist ist man da preislich nicht viel höher als bei anderen mit den externen Bauteilen die man noch benötigt.


    Ausserdem gäbe es für deine Anwendung sicher auch günstige fertige KSQs bei DX denke ich. Man muss nicht immer alles selbst basteln finde ich.

  • Bedenke bitte, dass nicht alles mit Basom programmierbar ist und soweit ich weiss haben die Tinys kein SRAM. Das kann schon ziemlich nervig sein. Wenn Du eine richtige Regelung der Leistung nach Temperatur willst musst Du zusätzlich extern einen ADC hinzufügen. Kannst aber ja auch einen reinen Temperaturschalter nehmen welcher die ganze Leuchte nur abschaltet.


    Würde Dir also empfehlen eher was größeres an Controllern zu nutzen. Ich persönlich arbeite auch mindestens mit Atmega8 (zur Not in SMD) und meist ist man da preislich nicht viel höher als bei anderen mit den externen Bauteilen die man noch benötigt.


    Ausserdem gäbe es für deine Anwendung sicher auch günstige fertige KSQs bei DX denke ich. Man muss nicht immer alles selbst basteln finde ich.

    Die Tiny sind NICHT in Bascom programmierbar? Wieso das denn? Unterstützt Bascom den nicht?


    OK, dann eben Atmega8 SMD, is auch nicht riesig... geht sich also denk ich mal aus.


    An welche KSQ's hast du denn gedacht?



    Andere Frage: Bestromen will ich die LED's ja mit 2 LiPos die ich im Modellflug verwende... jeder von denen hat 11,1V und 3200mAh... Nun dachte ich, die 2 Akkus parallel zu betreiben hätte ja wenig Sinn oder? Wollte damit den Strom verdoppeln, ob das aber so wird?
    Wenn ich die 2 aber in Serie schalte hab ich mind. 20V DC an denen ich gut 5-6 LED's betreiben kann mal 2... heißt also 2 Stränge à 5 LED's ergibt 2 A (+ ein bisschen für electronic usw...).
    Rechne ich dann richtig, dass die Akkus dann ca. (3200 / 2000 = ...) 1,6 Stunden halten sollten? Kann mir das irgendwie schwer vorstellen, aber Erfahrungen haben gezeigt, dass die LiPo's erst bei 12,6V voll und aber dafür bei 10,8V schon wieder "leer" sind, und das reicht für die LED's sicher allemal....

  • Die Tiny sind NICHT in Bascom programmierbar? Wieso das denn? Unterstützt Bascom den nicht?

    Quatsch

    Bedenke bitte, dass nicht alles mit Basom programmierbar ist

    Ebenso quatsch. Bascom, C und ASM haben alle die selbe Mächtigkeit, man muss nur wissen wie es geht, dann geht alles was du in anderen Sprachen auch kennst. Die Mächtigkeit ist die selbe. Ich wäre aber durchaus an einer Erweiterung der Turingmächtigkeit interessiert, wenn du da einen Vorschlag für mich hättest.

    soweit ich weiss haben die Tinys kein SRAM

    Und wo soll er sich dann globale Variablen hinschreiben? Mit Kuli auf die Hand? Mit weißer Farbe aufs Gehäuse?
    "128 Bytes Internal SRAM" Ist nicht viel, aber für kleine Zwecke durchaus akzeptabel.

  • Das Tinys NICHT programmierbar sind hat TommyB daraus freifliegend abgeleitet. ;) Es gab mal eine Mitteilung von MCSelec direkt (also von Marc selbst), dass Attinys unter einer bestimmten Größe SRAM nicht unterstützt werden. Wie hoch/niedrig dieser Wer war kann ich euch nicht sagen.


    Fakt ist aber, dass die Tinys nicht den vollen Befehlssatz und teils auch andere Befehle als die Megas erwarten, was manchmal zu Verwirrung (insbesondere bei mir) geführt hat.


    Fightclub: Was meinst Du mit Turingmächtigkeit??

  • moin,


    bevor du dich auf die spielereien mit der programierung einläßt prüfe erstmal wo der strom dafür herkommen soll. 10 - 15 P4, hast du deine Autobatterie dann auch dabei? Die wird bestromt mit 350 mA bis 1A, besser 1A und dann evtl. Dimmen. Das sind dann 5,25 - 15 A. schon ordentlich. Die LED hat eine Spannung von 3,2 - 3,8 V (3,5V) das macht dann 18,4 - 52,5 W. Das mußt du dann erstmal Wegkühlen können, denn das meiste ist Abwärme. Deine Lipo Akkus haben 11,1 V und 3,2A, das mal zwei bedeutet 71,04 W, rein rechnerisch. Wenn du die dann da anklemmst wird deine Powerlampe 10 min an sein und danach tot. Einen Akku entläd man mit ca. 0,2 * Kapazität, bei Lipos wird es nicht anders sein, und dann hält er seine Zeit die Spannung. Sprich in deinem Fall 0,64 A. Das entspricht dann 14,2 W. Damit bekommst du dann aber keine 15 Lampen mehr zum leuchten. Das reicht wenn man die Wirkungsgrade der Elektronik dazurechnet gerade mal für 3 LED's. Sollen sie nicht so lange leuchten vielleicht 4 oder 5 aber mehr ist nicht drinne. und Merke: Lieber eine mit dem max Strom bestromen als 3 mit geringem Strom (spart platz und leuchtet besser)


    tino

  • Das Tinys NICHT programmierbar sind hat TommyB daraus freifliegend abgeleitet. ;)

    Habe ich auch nie anders behauptet ;)

    Es gab mal eine Mitteilung von MCSelec direkt (also von Marc selbst), dass Attinys unter einer bestimmten Größe SRAM nicht unterstützt werden. Wie hoch/niedrig dieser Wer war kann ich euch nicht sagen.

    Also geht es darum, dass Bascom Tinys nur ab einer bestimmten Ramgröße unterstütz? Beim Tiny2313 gehts auf jeden Fall und der hat ja immer die selbe Ramgröße. Vermute mal dass Bascom halt etwas verschwenderischer mit dem Ram umgeht, ist aber nur eine Vermutung. Aber SRAM hat das Teil auf jeden Fall, ohne ginge ja garnicht, selbst wenn er noch so klein ist.

    Fakt ist aber, dass die Tinys nicht den vollen Befehlssatz und teils auch andere Befehle als die Megas erwarten, was manchmal zu Verwirrung (insbesondere bei mir) geführt hat.

    Das ist dann aber eine Problem des Tinys und nicht von Bascom, denn mit C oder ASM könntest du dann auch nicht mehr anfangen. Allerdings ist der Umfang des Tiny tatsächlich beschränkt, aber für kleinere Projekte die keinen großen Code- oder Beschaltungsumfang haben ist er trotzdem ganz gut zu gebrauchen. So fehlt dem Tiny z.b. der komplette PortA, einige Teile der anderen Ports, eine TWI-Schnittstelle und durch den PortA auch der angesprochene ADC. Wenns dadrum ging hab ich das wohl etwas falsch verstanden.

    Fightclub: Was meinst Du mit Turingmächtigkeit??

    Zitat

    Turing-Vollständigkeit bezeichnet in der Berechenbarkeitstheorie die Eigenschaft einer Programmiersprache oder eines anderen logischen Systems, sämtliche Funktionen berechnen zu können, die eine universelle Turingmaschine berechnen kann.

    Aussage die Church zur Church-Turing-These veranlasste:
    "Kein jemals bisher vorgeschlagenes ”vernünftiges“ Rechnermodellhat eine größere Mächtigkeit als die TM"


    Kurz gefasst: Es gibt keine Programmiersprache mit der man Sachen machen kann, die man mit anderen Programmiersprachen nicht machen kann (da Sprachen wie C, etc. turingmächtig oder turingvollständig sind)

  • Hallo DjTommyB,
    das was du vorhast habe ich mit einem attiny25 gelöst. Der reicht für das Vorhaben vollkommen aus.
    Dazu steuert der tiny noch eine spule mit 250kHz PWM Frequenz und bildet damit eine konstantstromquelle. Das ganze auf 20mm durchmesser :) Möglich ist es also.


    Versuch das ganze in C zu programmieren. Oder Assembler. Bascom hat zu schnell zu viele Beschränkungen. Für das entprellen der Tasten kann ich dir peter danegger's code aus mikrocontroller.net ans Herz legen. Einen externen Quarz oder ADC brauchst du nicht (Datenblatt gelesen?). Der attiny hat einen internen temperatursensor.



    Mit welcher Konstantstromquelle möchtest du 50W regulieren? Was ist deine Energiequelle? Wohin leitest du die wärme ab und wie schaffst du den Übergang?

  • @the_lamp: Deine Rechnung geht meines Erachtens nicht auf....
    wo sollen da 5-15A fließen? 2 LED Stränge à 5 LED's verbrauchen genau 2 A.


    @avion: Dass der Tiny aber nen Temp Sensor hat wusste ich nicht, wird mir aber nicht viel bringen da die Elektronik nicht an den LED's sein wird vermutlich. Also muss ich auf nen Externen zurück greifen. Das mit den Taster entprellen hab ich schon gesehen und gemacht danke ;)


    tauruz: Ich habe nie abgeleitet, dass Tiny's NICHT programmierbar sind. Ich habe nach deinem Post lediglich vermutet, dass Tiny's NICHT IN BASCOM programmieren gehen (wieso auch immer, am schluss is es ja sowieso hex...).


    Was ich noch "haben will" ist ne Spannungskontrolle der Akku's. Die lös ich aber nicht über den Microcontroller sondern mit ner Z-Diode vermutlich.


    Wie gesagt, noch is das alles Theorie.. Mal sehen was draus wird, wollt ja auch nur wissen, welcher Microcontroller und welcher PTC (oder NTC) dafür brauchbar wäre.

  • es kommt drauf an.. 15 LED's x je 1 A * 3,5 V = 52,5 W A. Bei 10 LED's dann nur 35 W. Die müssen aus deinen Lipos kommen, sonst geht egale ob parallel oder in reihe nix. Bei 11,1 Nennspannung und 12,6 - 10,8 V Klemmenspannung bei Entladung brauchst du eine Regelung. In Reine der Akkus verdoppelt sich das ganze: 25,2 - 21,6 V. Dann zwei Stränge zu je 5 LED's macht schon sinn, aber das wären dann immernoch 35 Watt die deine Akkus zur Verfügung stellen müssen. Entladestrom von 2A bedeutet du entlädst deinen Akku mit 0,6 x Kapazität. Das ist ordentlich und der hält dann keine 1,6 Stunden. Eher 45 min oder weniger -> probier es aus!!. Die angegebene Kapazität gilt immer nur bei 0,2 - 0,1 x Kapazität. In deinem Fall ist sie deutlich höher und damit verliert der Akku seine Klemmenspannung. Weiterhin mußt du auf deine Entladespannung bei Lipo achten, sonst ist der am Arsch. Und übrigens: 35 W mußt du erstmal wegkühlen, im Ernst das ist das viel größere Problem!!
    Aber du hattest recht, 2 Stränge sind je Strang 2 A.


    noch Fragen?

  • Aber SRAM hat das Teil auf jeden Fall, ohne ginge ja garnicht, selbst wenn er noch so klein ist.

    Tiny11 und 12 haben in der Tat kein Ram - nur die 32 Register, aber das reicht ja oft auch (auch mein RGB-Fader mit Zusatzfunktionen, der Cube oder diese 5x8-Matrix z.B. laufen ohne auch nur ein Byte RAM zu benutzen*... eigentlich ist der DMX-Receiver bis jetzt das einzige Teil, bei dem ich das Ram verwende...) - nur Bascom setzt eben Ram voraus (für seine interne Verwaltung), daher geht das hier wohl nicht.... die Teile sind übrigens eh' schon abgekündigt...


    *halt, stimmt nicht - ich habe den Stack vergessen! ;) - aber das liesse sich bestimmt auch irgendwie anders machen, dann halt ohne ISR und Subroutinen...


    Tiny13 hätte dann schon 64 Byte, k.A. ob das für Bascom reicht - aber der bereits vorgeschlagene Tiny25 sollte auf jeden Fall reichen, 128 Byte Ram und 2 kB Flash (bzw. 256/4 oder 512/8 beim Tiny 45 / 85), und hat auch nicht mehr Pins (wenn's um die Größe geht) - dafür aber auch nen 10 Bit-ADC, also eigentlich ideal für Dich!


    Die Unterschiede im Befehlssatz sind nicht sooo arg, der Tiny kann z.B. keine HW-Multiplikation, also wenn man viel multiplizieren muss, dann lieber nen Mega nehmen...


    Lieber eine mit dem max Strom bestromen als 3 mit geringem Strom (spart platz und leuchtet besser)

    Eigentlich ist es genau andersrum - die Effizienz einer LED sinkt mit steigendem Strom, d.H. 3 LEDs des selben Typs auf je 333,333... mA sind effizienter/heller als 1 LED dieses Typs auf 1000 mA.... oder was meintest Du jetzt mit "leuchtet besser"...?

    It's only light - but we like it!


    Da es sich in letzter Zeit häuft: Ich beantworte keine PNs mit Fragen, die sich auch im Forum beantworten lassen!
    Insbesondere solche von Mitgliedern mit 0 Beiträgen, die dann meist auch noch Sachen fragen, die bereits im entsprechenden Thread beantwortet wurden.
    Ich bin keine private Bastler-Hotline, technische Tipps etc. sollen möglichst vielen Lesern im Forum helfen!

  • danke erstmal für die antworten, besonders was den Microcontroller anbelangt.


    Mein warscheinlich größtes Problem wird aber die Kühlung sein. Da muss ein massiver Kupfer KK rein um das auch nur annähernd zu bewältigen. Werde die Tage mal ein paar P4 auf Kupfer montieren und schauen wie sich das Ganze verhält, dann mal weiter schaun was jetzt wirklich aus dem Projekt wird ;)

  • Tiny11 und 12 haben in der Tat kein Ram - nur die 32 Register, aber das reicht ja oft auch

    hm sehr interessant, mit diesen kleinen Typen habe ich mich nocht nicht so wirklich befasst.

    - nur Bascom setzt eben Ram voraus (für seine interne Verwaltung

    Stimmt, die Benutzung des RAM wird wohl eher von der Sprache abhängen. In ASM z.b. kann man ja komplett ohne Ram auskommen, in C weiß ich, dass er globale Variablen an den Anfang des RAM schreibt, daher meine anfängliche Meinung, dass dann keine globalen Var gingen

  • Hi!


    Nachdem ja mein Projekt schön langsam rollen beginnt, und ich mich momentan in der Experimentier-Phase befinde, wollte ich heute den Reflektor der Lampe planen.


    Nun weiß ich aber nicht wie ich den Winkel von dem berechnen muss, hab schon einiges durchgeschaut aber nix passendes gefunden.


    Das Ganze ist hier am Bild ersichtlich:
    [Blockierte Grafik: http://i399.photobucket.com/albums/pp80/DjTommyB_1985/LED/WinkelReflektor.jpg]


    Hier sieht man a) den Winkel der P4 (125°) und b) den gewünschten Winkel des Lichtkegels am Austritt der Lampe (~15-20°). Wie berechne ich jetzt aber den Winkel des Reflektors (am Besten den Winkel zur Längsachse der Lampe, oder aber den gesamten Winkel des Reflektors)?


    mfg
    Tommy

  • So. Nächstes Problem. Hab heute erst gemerkt, dass die P4 an der Heatsink Anode-Potential haben. Wollte die 9 LED's aber auf nen Kupfer KK direkt auflöten um den bestmöglichen Wärmeleitwert hinzukriegen. Kann ich das jetzt getrost vergessen oder spielt das keine Rolle wenn alle LED's da rauf kommen? Ist ja alles das selbe Potential oder nicht?