Atmega8 Thermometer mit Schrittmotoranzeige

OP #2568726
Lesenswert?

Hallo Bastler,
mein erstes, etwas aufwändigeres Projekt mit Bascom und einem Atmega8 
ist ein Thermometer. Das heißt, es sind inzwischen schon 2 Varianten 
entstanden, mit gleicher Hardware aber unterschiedlichem Design. Das 
Schieberthermometer ist fertig (aus Plastik und Birnbaummassivholz) und 
auch schon verschenkt, das Rundthermometer existiert nur als 
funktionstüchtiges Muster (aus beschichteter Spanplatte).
Bei dem Schieberthermometer werden die einzelnen Schieber durch 
Schrittmotoren über angeflanschte Gewindestäbe nacheinander so 
verschoben, dass die Temperatur in dem Sichtfenster angezeigt wird. Das 
Ganze geht langsam, da sich die Motoren nur mit ca. 2 U/sec drehen, bei 
einem Verschiebeweg von 35mm und einer Steigung von 1mm (M6) braucht das 
Teil pro Digit etwa 17 Sekunden. Beim Übergang zwischen 19,9° auf 20° 
ist's fast abendfüllend (bischen übertrieben). Bei einem Reset werden 
alle Schieber nach unten gefahren, bis Lichtschranken die Endstellung 
erkennen.
Beim Rundthermometer geht es deutlich flotter zu, die Zeiger für Grad 
und Zehntelgrad sitzen direkt auf den Motoren. Beim Reset werden die 
Zeiger nacheinander solange gedreht bis ein Reedkontakt schließ. Bei mir 
hier bei 0° Dann drehen die Zeiger zackig auf die gemessene Temperatur.
Die Motoren sind aus einem alten Glücksspielautomaten, unipolarisch und 
schwach, mit 48 Vollschritten. Die Ansteuerungshardware habe ich auch 
von den Automaten übernommen.
Der Messfühler ist ein DS18S20, so muß nix kalibriert werden.
Das Programm ist sicher nicht "die Königin alles Programme" aber es geht 
doch ganz gut. Außerdem soll mein Beitrag nur eine Anregung sein für 
eigene Projekte
Grüße von Tschoeatsch
OP #2574808
Lesenswert?

Hallo Stephan,
ich baue gerade an einer Edelversion des Rundthermometers (wieder ein 
Geschenk), das bis zum 23. März fertig sein muß. Davon werd' ich mal ein 
Filmchen drehn - also noch ein bischen Geduld. Das Schieberthermometer 
ist ja schon außer Haus, aber das ist ja so langsam, dass da Standbilder 
reichen.
Gruß von Tschoeatsch
#2576708
Lesenswert?

Ist ja witzig: Ich hab mir als erstes das Bild "Zeiger_mit_Magnet" 
angeschaut und gedacht "Wow, tolle Zeichen, sind die aus Marmor und 
aufgeklebt?". Nach ein paar Sekunden hat es Plopp gemacht es war 
ausgefräste Spanplatte. :-)
Hängt wohl davon ab, wo das Hirn im ersten Moment die Lichtquelle 
hindenkt. Wie bei Bildern mit Mondkratern, die manchmal falschrum sind.

Schöne Arbeit, bin gesannt auf die Edelversion.
OP #2589279
Lesenswert?

Fertig!
Ich präsentiere hier die Edelversion. Die Features sind:
Massiv Birnbaum, geschliffen und unbehandelt
Ziffern eingraviert und mit Spachtelmasse verfüllt
Zeiger aus Kunststoff (Skelettdesign)
2 Messstellen, die im Tackt umgeschaltet werden, Anzeige Grün und Orange
ein Verdrehen der Zeiger wird früher oder später erkannt und mit einem 
Reset korrigiert
Der Code ist in Basic unter unter 4k groß.
Das Youtube-Filmchen ist in Arbeit.
Grüße von Tschoeatsch
Ich hätte vielleicht die Bilder umbenennen sollen? Was soll's..
Angehängte Dateien:
OP #2589458
Lesenswert?

Nachtrag!
Das Thermometer zeigt immer nur EINE Temperatur an. Die Gradanzeige ist 
auf zwei Skalen verteilt, oben also z.B. 4, 6, 8, 10.. Grad und unten 5, 
7, 9, 11..Grad. Desswegen steht einer von den großen Zeigen immer in der 
senkrechten Position und "deutet" auf den Zeiger, der auf die Gradzahl 
zeigt. Auf dem Bild werden 20.7 Grad angezeigt. Mit der DuoLed wird 
signalisiert, welche Messstelle gerade angezeigt wird, leuchtet grün 
oder orange. Das ganze Ding ist mehr als Objekt zu verstehen als ein 
superschnell ablesbares Präzisionsthermometer für Atomkraftwerke.
Tschoeatsch
OP #2589477
Lesenswert?

Hier das Youtube-Filmchen.
Ehem, ähh, das ist ein bischen verkorkst, ich hab' das jetzt zum ersten 
mal gemacht. Mein Originalfilmchen hätte ewig für den upload gebraucht, 
so hab' ich 's ein bischen rumkonvertiert und verpfuscht. So 
hochkomplexe Internettechnik ist nix mehr für so einen alten Knacker wie 
mich.
http://www.youtube.com/watch?v=LZc3W5qxl3I&feature=youtu.be
Tschoeatsch
Gast #2589486
Lesenswert?

Nach Ansicht des "DeineRöhre"-Videos kam mir spontan der Gedanke, wie du 
es wohl anstellen würdest, wie du die Wettervorhersageinformationen á la 
MeteoData praktisch umsetzen würdest :-). Fände ich ganz spannend.
OP #2995842
Lesenswert?

Ich möchte mein aufwändigste und eines der letzten Thermometer mit 
Schrittmotoren vorstellen:
Die Anzeige wurde wieder (wie alle anderen Schrittmotoren) aus einem 
Glücksspieler ausgebaut und auf die Anzeige von Zahlen umgebaut. Das 
Ganze dann in ein skurriles Gehäuse montiert und an die Wand gehängt.
Es wird nacheinander die Innentemperatur gemessen und angezeigt, dann 
dasselbe mit der Außentemperatur, dann wird das Außenmax der lezten 12 
Stunden und das Außenmin der letzten 18 Stunden angezeigt.
Ein Filmchen gibts unter: http://www.youtube.com/watch?v=kZAoC-bkR2c
Angehängte Dateien:
OP #3173551
Lesenswert?

Hallo miteinander,
aus der Serie "Thermometer mit Schrittmotoren" möchte ich hier mein 
bislang letztes Model zeigen:
Das Gehäuse ist minimalisiert, die Schrittmotoren mit den Scheiben 
wieder einem Glücksspielgerät entrissen (und mit neuem Text beklebt). 
Die Steuerung ist nahezu unverändert vom Modell "Sabine" übernommen.
Ein Filmchen gibts auch: http://www.youtube.com/watch?v=R3PJ6E1oPC4
Ade, bis bald
Tschoeatsch
Angehängte Dateien:
#3223017
Lesenswert?

Vielen Dank für das Posten dieser tollen Schaltung!

Wie hast du die Ansteuerung der Motoren in der Scheibenmaschine gelöst?
Ich hab nämlich nahezu die gleiche mal aus einem Merkur Disc ausgebaut, 
die ist jedoch mit reinen Bipolar-Motoren bestückt.

Ich hätte da jetzt ganz spontan an einen L293D gedacht...
Gibt es von dem Scheibenthermometer auch einen Schaltplan?

Gruß Tobi
OP #3224823
Lesenswert?

Danke für die Blumen!
Hallo Tobi,
ich hatte das Glück etliche Automaten mit Unipol-Motoren zu ergattern, 
dasshalb ist mein Hardwareaufwand für die Motorsteuerung gering. Über 
die BUZ171 werden die einzelnen Motoren mit Spannung versorgt (enable) 
und der ULN2003 schaltet die einzelnen Spulen der Motoren. (Die 
Treiberschalting ist den Unterlagen der Automaten entnommen.) Mit der 
H-Brücke wird's genauso gehen. Für jeden Motor so einen L293D an Port D 
0..3 deren Eingänge dran und mit den Port D 4,5 und 6 die 
Enable-Eingänge entsprechend bedienen.
Für den Fall, dass Du einer der wenigen bis, die mit Bascom arbeiten, 
hab ich auch das Programm angehängt.
Grüße von Michael
Angehängte Dateien:
Gast #3230393
Lesenswert?

Hallo Michael,

dein Thermometer hat es mir angetan deshalb möchte ich es nachbauen.
wIE MACHE ICH AUS DER .bas-datei ein hex-file für den ATMega8?????
könnte man das hex-file von dir bekommen?

vielen dank!
matze
#3231279
Lesenswert?

Hallo Michael,

vielen Dank für die Schaltung, ich werds mal mit dem L293D versuchen, 
ich bin nur gerade am überlegen, ob da nicht das Signal vom AVR zu den 
Treiberstufen invetiert werden muß, da meines Wissens der ULN2003 auch 
alle Signale invetiert ausgibt, der L293D das aber glaub ich nicht 
macht...
Dürfte aber in der Software kein Problem sein...
Ich hab mir die Demoversion von AVR-Bascom geladen, kleine Dateien kann 
man damit bearbeiten, ein HEX hab ich zumindest schon mal 
rausgebracht...

Gruß Tobi
OP #3250684
Lesenswert?

Hallo Tobias,
ich war ein bischen verreist, desswegen schreib' ich erst jetzt.
Mach's nicht komplizierter als es ist!
Wenn du den L293D verwenden willst, brauchst du den UNL2003 nicht! Die 
Eingänge vom L293D sind kompatibel zu den Ausgängen des Atmega. Du 
brauchts für jeden Motor einen L293D, deren Eingänge "1A".."4A" werden 
jeweils miteinander verbunden und an den 4 Augängen des Atmega 
angeschlossen. Die "EN1..4" Eingänge werden chipweise verbunden und mit 
jeweils einem Ausgang des Atmega verbunden. Mit den "EN"s wird der 
gewünschte Motor ausgewählt und mit den "A"s werden dann die Spulen so 
gesteuert, dass sich der Motor dann auch dreht. Im Vergleich zu meiner 
Schaltung mit Unipolarmotoren benötigst du  zahlenmäßig 2 Chips mehr, 
sparst aber an den Dioden und den Transitoren. Wahrscheinlich verwenden 
die Spielautomatenhersteller desswegen gerne Bipolmotoren.
Die Demo von Bascom reicht, ich hab für "ThermometerGabi1.2.bas" 3924 
Bytes gebraucht.
Gast #3250811
Lesenswert?

Hallo Michael,

das hab ich schon so gemeint, anstelle des ULN2003 bzw ULN2803. Mein 
Gedankengang war, daß um am Ausgang des ULN2003 einen Highlevel zu 
bekommen der Mikrocontroller ja eine logische 0 liefern muß. Diese 
Invetierung macht der L293 ja nicht...
Wenn ich genübend Zeit habe, bau ich die Geschichte mal auf dem 
Steckbrett auf, nach dem Motto "einfach Ausprobieren"...
Notfalls packt man einfach den guten alten 74hc540n davor, wenn alle 
Stricke mit der Software reißen sollten um die Ausgangssignale des µC 
(falls nötig) zu invetieren.

Gruß Tobi
OP #3250835
Lesenswert?

Hallo Tobi,
vielleicht steh ich ja auf der Leitung, aber wie meinst du das mit der 
Invertierung?
Klar ist am Ausgang vom ULN Level high wenn der Atmega logisch 0 
liefert, dann fließt auch kein Strom durch die Motorspule: AusgangAt=0 
>> Strom durch Motor=0. Das Gleiche ist doch dann auch beim L293: 
EingangL293=0 >> AugangL293=0
Gruß Michael

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren