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

Reaktives Licht mit Atmel AVR

scout-D

Geocacher
O.K. Das hört sich ja schon gut an.
Die Station wird wohl nicht ganz leicht zu finden bzw. zu lösen sein.
Es ist dann halt nicht möglich, die Reaktion der Schaltung durch so eine Art "Leuchtturmmethode" zu aktivieren.
Man muss gezielt in die richtige Richtung blinken und dann mit dem entsprechenden Gerät das IR- Licht finden.

Jens
 

Gorkde

Geocacher
:schockiert: LOL! Auf so einen "Ich reparier das hier mal..."-Freak würde ich dann aber vor Ort mit ner Schrotflinte warten...! :schockiert:

Ich habe auch schon überlegt, ob die Batteriegehaltbarkeit überhaupt so wichtig ist. Bei den Geocachegepflogenheiten die sich so neuerdings eingeschlichen haben, wird das das kleinere Übel sein. Vermutlich nimmt einer das toll blinkende Ding vorher eh mit oder analysiert es gleich vor Ort.

Ich hatte deswegen schon überlegt statt der Tarnung einen Hinweis auf dem Rohr anzubringen, aber das wäre sicher eh umsonst.
 

thomas_st

Geowizard
waste1 schrieb:
Das geht schon. Ich habe so ein RL in einen meiner Nachtcaches. Zwar nicht mit LDR sondern in der Kombination Fototransistor und IR-LED, ...
:D Warum wundert mich das jetzt nicht :D Ich habe mir jetzt allerdings auch schonmal FT besorgt - muss das Ganze nur mal ausprobieren.

waste1 schrieb:
... aber das sollte hier nichts ausmachen. Bei mir wird als Ausrüstung eine Digitalkamera verlangt. Aber auch mit Nachtsichtgerät sehe ich kein Problem.
Meine Bedenken gingen jetzt eigentlich in die Richtung, dass das Nachtsichtgerät bzw. das Display der DigiCam nach so einer Beleuchtung des RL zwecks Auslösung dessen, in Overload gehen und erstmal Zeit brauchen, bevor die IR-LEDs wieder detektiert werden können (und eventuell gilt das auch für die Augen des Cachers, der das Nachsichtgerät gerade genutzt hat :fies: )

waste1 schrieb:
Anstatt mit der Taschenlampe, kann man auch mit der IR-Leuchte des Nachtsichtgeräts auslösen.
Bei Verwendung eines FT vermutlich besser als mit einer (LED-)Lampe. Stimmt, hatte ich nicht bedacht, dass die auch eine Lichtquelle beinhalten (können?).

Gorkde schrieb:
:schockiert: LOL! Auf so einen "Ich reparier das hier mal..."-Freak würde ich dann aber vor Ort mit ner Schrotflinte warten...! :schockiert:
Na, na, na. Auch wenn ich nicht glaube, dass Du das wörtlich meinst ;) ist das dennoch übertrieben.

Gorkde schrieb:
Ich habe auch schon überlegt, ob die Batteriegehaltbarkeit überhaupt so wichtig ist. Bei den Geocachegepflogenheiten die sich so neuerdings eingeschlichen haben, wird das das kleinere Übel sein. Vermutlich nimmt einer das toll blinkende Ding vorher eh mit oder analysiert es gleich vor Ort.
Ich habe neben das RL einen Zettel geklebt, der neben dem Hinweis an Muggle, auch einen Hinweis an die Cacher beinhaltet, dass man sich besser an mich wendet, wenn man so ein RL haben möchte und es, und es nicht einfach mitnimmt - hat bisher funktioniert :D

Viele Grüße,
Thomas(_st)
 

Gorkde

Geocacher
Das mit dem Zettel hatte ich ja auch überlegt, würde nur meine Tarnung ein wenig zerstören.... Muggle finden das eh nicht, wenn nur gut genug getarnt.... Aber ich schreibe es sonst ggf. in die Cachebeschreibung.
 

chr2k

Geomaster
wenn ich das Fusebit DCBA auf 1011 setzen will "zerschieße" ich mir den Tiny und muss ihn über einen Rest wieder zum leben erwecken. wo könnte da sproblem liegen?

Danke
 

waste1

Geocacher
scout-D schrieb:
O.K. Das hört sich ja schon gut an.
Die Station wird wohl nicht ganz leicht zu finden bzw. zu lösen sein.
Es ist dann halt nicht möglich, die Reaktion der Schaltung durch so eine Art "Leuchtturmmethode" zu aktivieren.
Man muss gezielt in die richtige Richtung blinken und dann mit dem entsprechenden Gerät das IR- Licht finden.

Jens
Wie thomas_st schon geschrieben hat, geht es mit Digitalkamera nicht sehr weit. Bei einigen mit guten IR-Filtern nicht mal einen Meter weit. Deshalb sind Digitalkameras zum Suchen nicht geeignet. Bei meiner besagten Station wird man direkt hingeführt, man muss dann mit Hilfe der Kamera einen Morsecode entziffern.

Mit Nachsichtgerät geht das bestimmt auch weiter als mit Digitalkamera, aber wie weit kann ich jetzt nicht sagen, hab keins.

Gruß
Waste1
 

huzzel

Geowizard
Ich habe auch einen Blinki mit IR-Dioden.
Ich habe gleich 2 parallel genommen, damit sich die Fläche vergrößert, und es so auch aus größerer Entfernung gefunden werden kann. ca. 8 Meter gehen ohne Probleme. ich führe die Cacher aber auch bis fast an den Blinki heran.
Mit einem Fotohandy geht es aber besser, wie mit der Digi, da die Fotohandys einen sehr bescheidenen IR-Filter haben.
 

huzzel

Geowizard
scout-D schrieb:
Muss man bei zwei parallelen Dioden etwas an der Schaltung ändern oder berücksichtigen?
Ja, den doppelt so großen Stromfluss.
Geschickter ist es, die 2 IR-Dioden in Reihe zu schalten, dann muss man aber auch eine entsprechend große Spannung zur Verfügung haben.
 

kirby27b

Geocacher
Hi,

oder man geht einfach her und schaltet die zusätzliche IR-LED auf einen freien Ausgang des Atmel, so kann man die Belastbarkeit eies Port einhalten und bekommt mehr Leuchtfläche. Ich hab mir mal bei Dealextreme eine 0.5Watt IR -LED bestellt, die einer Luxeon sehr ähnelt. Mal sehen was dabei raus kommt.

Grüße Olaf
 

stonewood

Geowizard
kirby27b schrieb:
Ich hab mir mal bei Dealextreme eine 0.5Watt IR -LED bestellt, die einer Luxeon sehr ähnelt. Mal sehen was dabei raus kommt.
Öh, das wird ein Port vom Tiny aber nicht verkraften. Der darf pro Pin nur max. 40mA liefern, über alle Pins max. 60mA. Spätestens da ist also eine Schaltung mit Transistor angesagt.
 

chr2k

Geomaster
Hm,
jeder Porgrammcode der irgendwas mit dem ADC enthält ergibt bei mir beim compilen folgende fehlermeldung: "ADC_MUX entruy not found in Dat file"
ich habe bspw das programm von Windi von Seite 36 dieses thread genommen.

weiß jemand rat?

Danke
 

stonewood

Geowizard
Das hört sich so an als ob Bascom der Meinung ist einen anderen Prozessor als den Tiny13 vor sich zu haben. Hast Du das im Programm:
Code:
$regfile = "ATtiny13.DAT"
Kommt das eventuell irgendwo noch mal im Programmcode vor? (eventuell ganz am Ende - Bascom mauschelt das manchmal da rein.) Was sagt Options - Compiler - Chip? Eventuell auch mal auf attiny13.dat stellen?
 

chr2k

Geomaster
$regfile ist drin (ist ja das programm von windi ;-) )
der befehl ist auch kein weiteres mal im code

im reiter chip war tatsächlich ein anderer chip eingestellt. ich hab das auf den tiny13 umgestellt, selbes problem beim erneuten druck auf F7.

Und diesen Error hab ich bei jedem code der etwas mit dem ADC zu tun hat.
 

chr2k

Geomaster
Hallo,

ich habe genau, 1zu1, den Code von Windi kopiert und in Bascom eingefügt. Habe leider nach wie vor das ADC_MUX Problem. Als ich vor gut einem Jahr das alles zum letzten mal gemacht habe, konnte ich problemlos code compilen ohne diese fehler zu bekommen. Weiß noch jemand rat? Gibt es ein anderes basic basierenden Compiler?



Windi schrieb:
Bitteschön. Ich hab mal schnell aus meinem Dauermorser und dem Reaktivlicht einen Reaktivmorser zusammengestrickt.
Nach dem Anleuchten wird der gespeicherte Morsecode ausgegeben.
Der Morsecode muss als "dit *" bzw. "dah -" unten im Programm in die Data-Zeilen eingefügt werden. Nach jedem Zeichen muss ein " " Leerzeichen für die korrekte Pause eingefügt werden.

Code:
'============================================================
'
' ********************************************************
' ***                                                  ***
' ***    Tiny-Reaktivlicht mit LDR und A/D-Wandler     ***
' *** mit Watchdog-Energiesparmodus und Tagabschaltung ***
' *** Ausgabe von Morsesignalen beim Anleuchten        ***
' ***                                                  ***
' ***      erstellt von Windi für www.geoclub.de       ***
' ***                   04.01.2008                     ***
' ***                                                  ***
' ********************************************************
'
' µC: ATtiny13V
' +Ub: 3,00 V
' I: 17 µA im Leerlauf (Nachtbetrieb)
' I: 5 µA bei Tagabschaltung
' Reichweite: 650 m mit Maglite 5D
'
'============================================================

$hwstack = 20                                               'hardwarestack herabsetzen damit genügend variablen zur verfügung stehen
$regfile = "ATtiny13.DAT"
$crystal = 128000                                           'Frequenz des internen Oszillators




Config Adc = Single , Prescaler = Auto
Config Portb = &B00001000                                   'Pinb.3 auf 'Ausgang', Rest auf 'Eingang' schalten
Portb = 0                                                   'Ausgänge auf Low setzen
Stop Ac                                                     'Analog-Komparator abschalten, um Strom zu sparen

Wdtcr = &B11010011                                          'Watchdog definieren: 0.125 Sekunden, Interrupt auslösen, kein Reset
Enable Interrupts                                           'Interrupts freigeben

Const Schwelle = 50                                         'je größer der Schwellwert, desto unempfindlicher
Const Tagschwelle = 800                                     'Schwellwert für Schlafmodus
Const Zwangsimpuls = 8                                      'LED-Impuls tagsüber alle X Schlafyklen (á ca. 8 Sekunden)

Dim A As Byte                                               'Variablen definieren
Dim Tagzaehler As Byte
Dim Schlafzaehler As Byte
Dim Ldr As Integer                                          '0 = Dunkel, 1023 = Hell
Dim Alt As Integer
Dim Merker As Integer
Dim Zeichen As String * 1

Do
Reset Watchdog
Powerdown                                                   'prozessor bremsen da sonst lichtänderung nicht erkannt wird
Start Adc                                                   'A/D-Wandler starten
Ldr = Getadc(2)                                             'Helligkeitswert einlesen
Stop Adc                                                    'A/D-Wandler zum Stromsparen wieder stoppen
Merker = Ldr - Alt                                          'Unterschied zwischen letzter und aktueller Messung ermitteln
Alt = Ldr                                                   'letzten LDR-Wert sichern
If Merker > Schwelle Then Gosub Morsen                      'Bei großer Änderung Dunkel->Hell: Blinken
If Ldr > Tagschwelle Then                                   'prüfen ob helligkeit über tagschwelle liegt
   If Tagzaehler < 255 Then                                 'int-variable geht nur bis 255
      Tagzaehler = Tagzaehler + 1
   End If
Else
   Tagzaehler = 0                                           'wenn wieder dunkel tagzähler löschen
End If

If Tagzaehler > 200 Then Gosub Pause                        'wenn mehr als x zyklen hell dann schlafmodus

Loop


Pause:
Wdtcr = &B11110001                                          'Watchdog auf 8 Sekunden stellen
Reset Watchdog
Powerdown
Wdtcr = &B11010011                                          'Watchdog wieder auf 0,125 Sekunden zurückstellen
Schlafzaehler = Schlafzaehler + 1                           'merken wie oft Schlafmodus durchlaufen wurde
If Schlafzaehler = Zwangsimpuls Then                        'als Funktionskontrolle tagsüber LED auslösen
   Portb.3 = 1
   Reset Watchdog
   Powerdown
   Portb.3 = 0
   Schlafzaehler = 0
End If
Return

Morsen:
Restore Daten                                               'Am Beginn der Daten anfangen
Alt = 1023                                                  'Doppelauslösung verhindern
Do
 Read Zeichen
 Wdtcr = &B11010100                                         'Watchdog auf 250ms stellen
 If Zeichen = "*" Then Gosub Kurz
 If Zeichen = "-" Then Gosub Lang
 If Zeichen = " " Then Gosub Leer
 Wdtcr = &B11010011                                         'Watchdog wieder auf 125ms stellen
 If Zeichen = "X" Then Return
Loop

Kurz:
Portb.3 = 1
Reset Watchdog
Powerdown
Portb.3 = 0
Reset Watchdog
Powerdown
Return

Lang:
Portb.3 = 1
Reset Watchdog
Powerdown
Reset Watchdog
Powerdown
Reset Watchdog
Powerdown
Portb.3 = 0
Reset Watchdog
Powerdown
Return


Leer:
Reset Watchdog
Powerdown
Reset Watchdog
Powerdown
Return

End

Daten:
Data "*" , "-" , " "                                        'A
Data "-" , "-" , "*" , "*" , "*" , " "                      '7
Data "-" , "*" , "*" , "*" , " "                            'B
Data "*" , "*" , "*" , "*" , "-" , " "                      '4
Data "X"
 

huzzel

Geowizard
Habe soeben eine Reaktivlicht als Test rausgehängt. Ist eine Version mit Fototransistor und einer Schwelle von 5 und ich speichere die Anzahl der Auslösungen im EEPROM zum späteren Auswerten. Doch leider funktioniert es zu gut :D . Ausgelegt soll es auf 700 Meter werden. Heute hatte ich aber nur 650 Meter zu Verfügung und es hat auf kleiner Stufe (5 Watt) vom Handscheinwerfer perfekt ausgelöst. Mit der Stirn-LED war nach 50 Metern Schluss.
Jetzt habe ich das Luxusproblem, dass mir das Reaktivlicht in meinen anderen Nachtcache reinfunken kann. Jetzt muss ich den Fototransistor noch von einer Seite abdecken, damit nicht aus versehen die Caches vermischt werden :D .
 
Oben