• Willkommen im Geoclub - dem größten deutschsprachigen Geocaching-Forum. Registriere dich kostenlos, um alle Inhalte zu sehen und neue Beiträge zu erstellen.

Gesucht: Vereinfachter Aufbau für ATTiny13 als Morser

white_rabbit

Geocacher
Hallo.
Ich möchte einen ATTiny13(V 10PU) nicht als Reaktivlicht sondern vereinfacht als "Morsezeichengeber" einsetzen. Dabei kommt vorher ein elektronisches Zahlenschloss zum Einsatz, das dann 3 oder 5 Volt durchschaltet, sobald man die richtigie Kombi benutzt hat. Dahinter soll der ATTiny dann im Grunde genauso wie ein Reaktivlicht einen Morsecoder rüberfunken. Allerdings will ich hier keine LED sondern einen kleinen Vibrationsmotor anschließen, so dass man den Morsecode "erfühlen" muss.
Frage dazu: Wie muss ich den Code abändern, damit die ganze Lichtmessung rausfliegt und einfach nur bei Spannung direkt losgemorst wird? Wie schließe ich den Mini-Motor dazu am besten an den AtTiny an?
Danke für Ideen aller Art.
White Rabbit
 

TeamAdolzfurt

Geomaster
Das Programm so schreiben, daß der Tiny sofort bei Programmstart loslegt. Den Motor über geeigneten Transistor und Basiswiderstand anschliessen. Die Versorgungsspannung des Tiny über Zahlenschloss schalten.

MaJa
 

stonewood

Geowizard
Schaltung: Die 'ledonly'-Schaltung hier im Board. Also nur Tiny, LED und vorwiderstand an einen Portpin. Bzw. wenn's ein Vibrationsmotor sein soll per Transistor am Portpin.

Programm: Frage ist welches Grundprogramm Du nimmst. Meist gibt es einen 'gosub blinken' irgendwo im Programm, den setzt man dann einfach ganz nach oben (und wirft alles danach bis zum 'blinken:' raus).
 

-FX-

Geocacher
@stonewood
blinken != morsen ...

@white_rabbit
Frage doch lieber gleich, ob dir das jemand fertig macht.
Für jemanden, der im Code drin ist geht das schneller, als jemandem die Einzelheiten vorzubeten, dessen lernbereitschaft nicht ausgeprägt genug ist :)
 

upigors

Geowizard
es geht einfacher also ohne ändern des code.
dazu hab ich eine frage. ist der ausgang vom zahlenschloss schon ein relais? oder led?
wenn ein relais dann nimm den schließer, such dir nen widerstand der dem des ldr bei lichteinfall entspricht, hänge relaisschliesser und widerstand in reihe zwischen 3 und 8 am attiny 13. relais zieht an, zwischn 3 und 8 liegt dan der R und gut ist. ebenso kann man es auch mit nem taster statt relais z.b. machen.
variante 2 optokoppler. hast du hinter nem zahlenschloss eine led dann steck die mit dem ldr vom reaktivlicht in ein stück schrumpfschlauch. geht die led an fällt licht auf den ldr und der dudelt los.
beides nicht die eleganteste lösung aber für jemanden der nicht im code steckt das einfachste.
gruß uwe
 
OP
W

white_rabbit

Geocacher
upigors schrieb:
variante 2 optokoppler.
Ja, das ist die Idee!! Ich habe einen CNY65 hier. Also neue Idee:
elektr. Zahlenschloss ---> richtige Lösung --> Ausgang --> ATTiny13 --> CNY65 <--> andere Seite: Motor
Müssen dazwischen irgendwelche Widerstände beachtet werden?
Wieviel Strom kann denn die "andere Seite" des CNY65 vertragen/schalten? Bin ich blind oder steht das nicht im Datenblatt?
Der Motor läuft wie gesagt mit allem zwischen 3 und 9 Volt -- wobei er im letzteren Fall schon ordentlich warm wird. Ich habe eh 2x 1,5 Volt als Spannungsversorgung im Sinn...
müsste gehen, oder??
 

upigors

Geowizard
über die Ausgangsseite des Attiny13 hab ich nicht nachgedacht ;-)
Ich meinte den Optokoppler zwischen Zahlenschloss und Attiny (Reaktivlichtschaltung) für den Fall das du ein fertiges Zahlenschloß hast mit ner LED als Ausgang UND du den Code des reaktivteils nicht ändern kannst/willst. In diesem Fall wäre ja die LED vom Zahlenschloß und der LDR vom Reaktivlicht nen Optokoppler bzw. könnte zu sowas werden.
 

upigors

Geowizard
warum nicht einfach nen Transistor an den AT13 dahinter den Motor?
Ohne jetzt die Kenndaten des Motors zu kennen....
 
OP
W

white_rabbit

Geocacher
upigors schrieb:
warum nicht einfach nen Transistor an den AT13 dahinter den Motor?
Ohne jetzt die Kenndaten des Motors zu kennen....
Ja, das war auch mein "erster" Gedanke ... hier mal ein paar Daten:
Ich habe den Motor gerade mal mit 3 Volt betrieben. Da zieht der sich mal kurz locker 500mA. Zudem habe ich leider momentan nur einen BC548B, der soviel meines Wissens nicht schafft. Ansonsten wäre es so tatsächlich einfacher -- muss denn zwischen den Ausgang des ATTiny und der Basis des Transistors noch ein Widerstand? Ich bin leider kein Fachmann im Lesen von Kennlinienfeldern :(

Das Zahlenschloss besteh momentan aus dieser Schaltung:
http://www.geoclub.de/viewtopic.php?f=57&t=28899
auf der letzten Seite gibts auch eine Abbildung

Es muss offenbar ein anderer Motor her ... dieser hier könnte was sein, meine ich?
http://www.pollin.de/shop/dt/NDA2OTg2OTk-/Motoren/Gleichstrommotoren/Vibrationsmotor_LA4_432A.html
 

Brüllhamster

Geocacher
Was spricht gegen einen logic leven n-kanal FET? Zum Schalten eignen sich FETs vorzüglich. Hier auch wieder einen Pull-Down + einen Gatewiederstand 100-200 Ohm und schon ist das ganze erledigt.

Achja vergiss nicht die Versorgungsspannung ordentlich zu puffern sonst quitiert dein µC jedes Einschalten vom Motor mit einem Reset ;)

Edit: Welche Spannungsversorgung hast du angedacht? Dann könnte ich dir einen entsprechenden FET empfehlen.
 
OP
W

white_rabbit

Geocacher
Was spricht gegen einen logic leven n-kanal FET? Zum Schalten eignen sich FETs vorzüglich. Hier auch wieder einen Pull-Down + einen Gatewiederstand 100-200 Ohm und schon ist das ganze erledigt.

Edit: Welche Spannungsversorgung hast du angedacht? Dann könnte ich dir einen entsprechenden FET empfehlen.
Hi. Danke für alle weiteren Tipps.
Es spricht weder was gegen ein Reed-Relais noch gegen einen n-Kanal FET. Beides habe ich bisher noch nie verbaut, so dass ich in Sachen Beschaltung leider weiterhin auf konkrete Werte angewiesen bin. In Sachen Hardware sieht's so aus: Das Zahlenschloss läuft ab 3V (also 2 mitgebrachte Batterien). (Es gehen aber auch 4,5V, falls der ATTiny mit 3Volt nicht klar kommt??) -- die Spannungsversorgung ist damit also halbwegs klar.

Für die Transistorlösung: Ich weiß leider (weiterhin) nicht, wie hoch der Basiswiderstand am Ausgang des ATtiny sein müsste. In einer Resteteilekiste habe ich einen weiteren Motor gefunden. Der läuft ab 1,5V und zieht dabei "nur" ~200mA. Das müsste ein BC548B schaffen, oder?

Für die FET-Lösung: noch größeres Fragezeichen.

Achja vergiss nicht die Versorgungsspannung ordentlich zu puffern sonst quitiert dein µC jedes Einschalten vom Motor mit einem Reset ;)
Das heißt konkret, dass ein dicker Kondensator an die Spannungsversorgung des Attiny13 gehört, oder? Wie groß?
 

Brüllhamster

Geocacher
1. Möglicher FET der bei 3V sicher durchschalten: IRF7401 (SMD SO8)

Hier noch ein Link zum Thema FET an Mikrocontroller:
Klick mich
Punkt "Direkte Methode: N-Kanal MOSFET (NFET)"

2. Spannungspufferung: Ja grundsätzlich richtig. Du solltest zum einen einen 100nF keramik Kondensator direkt an den versorgungsbeinchen des Mikrocontrollers haben und einen "dicken" Elko der dir die Einschalttröme vom Motor puffert. Werte testest du am Besten aus.

Noch ne kleine Anmerkung: Freilaufdiode an den Motor und seperates Versorgungskabel für Mikrocontroller und Motor von der Spannungsversorgung aus. Dann solltest du keinerlei Probleme mit dem Motor haben. "Großer" Pufferkondensator dann am Motorkabel.
 
OP
W

white_rabbit

Geocacher
Also nochmal in Sachen Transistor ... brauche mal kurz etwas Nachhilfe. Ich habe diese Schaltung aufgebaut:
Ab der Mitte der Seite wird die Darlingtonstufe vorgestellt. Dort steht auch, dass man die Schaltung mit
R1=1 MOhm, R2=470 kOhm betreiben kann. Habe ich gemacht ... funktioniert völlig problemlos. Nun steht da weiter
In unserem Beispiel würde sich einem Basisvorwiderstand von 1 MOhm, ein Kollektorstrom von min. 0,4 A einstellen.
Ich dachte also, dass für meinen Motor ja mehr als genug sein müsste und habe anstelle der LED/Vorwiderstand den Motor eingebaut ....
Tja -- bis auf die Tatsache, dass der hintere Trasistor warm wurde ist nichts geschehen. Warum? Ich konnte am Motor auch nicht die Versorgunsspannung (vermindert um 1,4V) messen sondern so gut wie nichts. Woran liegt das? Wie gesagt: Der zweite Motor, den ich benutzt habe, läuft ab 1,5V und zieht sich da ca 150mA.
Danke nochmal für einen hilfreichen Tipp ...
 

chrysophylax

Geomaster
Weiter vorne im Thread wurde doch schon festgestellt, dass der BC548 & Konsorten für den Strom nicht geeignet sind. Das Ding wird bei dir warm, weil

1.) Du an der Basis von T1 mindestens 1,4V anlegen musst, damit dein Darlington auch nur ansatzweise leitend wird. Die Schaltung auf der Seite geht von 9 Volt Betriebsspannung aus. Wenn du die Schaltung mit 3V betreibst dann hast du da bestenfalls 1V, wenn du sie mit 4,5V betreibst bestenfalls 1,5V.

2.) Selbst wenn du sie mit 4,5V betreibst wird der dann resultierende Basisstrom nicht ausreichen, um den Darlington leitend zu bekommen. Da T2 weit ausserhalb seiner Spezifikation betrieben wird, bringt das Ding wahrscheinlich nur noch eine Verstärkung von deutlich kleiner 10 zustande. Das Ding hat laut auf der Webseite verlinkten Datenblatt einen Maximalstrom von 100mA, den es dauerhaft abkann, alle Diagramme enthalten als höchsten Wert für den Kollektorstrom 200mA. Da hat der BC548 noch eine Verstärkung von 10.

Wenn du unbedingt einen Darlington zum Schalten nehmen willst, dann nimm für T2 einen deutlich kräftigeren Transistor, der auch für den Strom gedacht ist, und setze R1 deutlich niedriger. Es schadet nicht, die Transistoren voll in der Sättigung zu betreiben (da sie nur als Schalter dienen sollen und nicht als Verstärker), also kann man in die Basis von T1 auch etwas Strom reindrücken. Irgendwas niedriges zwischen 1k und 3k3 dürfte glaub ich ein brauchbarer Wert sein.

chrysophylax.
 
Oben