Hallo,
ich habe geplant mir eine eigene Funk-Uhr zu bauen. Habe mir die
verschiedensten Beiträge durchgelesen.
Aus all diesen Informationen habe ich die im Anhang beigelegte Schaltung
zusammengestellt.
Meine Frage ist nun, ob das so funktionieren würde oder ich eventuell
denktechnische Fehler eingebaut habe oder so. Wo ich mir nicht ganz
sicher bin ist das mit den Widerständen vor den Transistoren (an der
Basis) ob die nicht zu klein oder so sind.
Der OSZI soll ein Oszillator mit 1 MHz werden, den ich dann bei Reichelt
kaufen würde. Leider konnte ich kein passendes Schaltsymbol in Eagle
dazu finden, deshalb der "Kasten". Auch ist der DCF77-Empfänger nicht
eingezeichnet. Es fehlen auch noch die Verbindungen zum Programmieren
des µC, die ich aber mit Absicht nicht eingezeichnet habe.
Hoffe ist alles soweit richtig und könnte dann quasi direkt einen
Schritt weiter gehen und es programmieren versuchen.
Bei Verständnisfragen etc. bitte Fragen ;)
mfg
LukasZ
- 2 Linearregler schaltet man niemals parallel! Sonst gibts ein
Wettrennen wer am schnellsten Schwingen kann...
- Verwende lieber GND+VCC Symbole im Schaltplan, dann ist es nicht so
unübersichtlich
- Versorgungsspannung von den Logik-ICs fehlt (per Invoke-Befehl in
Eagle)
- Bei Q69 fehlt am Emitter eine Junction - warscheinlich kein Kontakt
dort
- Die Basiswiderstände können ruhig 10k sein. Das reicht dicke aus.
- AREF gehört nicht an VCC wenn man man den Pin nicht als Eingang
konfiguriert. Der 100n C gegen GND ist allerdings richtig.
- Die PullUp-Widerstände an den Tastern kannst Du weglassen wenn Du die
internen PullUps des AVR verwendest.
- LED67-70 brauchen je einen eigenen Vorwiderstand. Oder schalte je 2
von ihnen in Reihe. (Dann sparst Du 2 Widerstände)
Setz dich dringend mal mit dem "Bus" Befehl auseinander, um das ganze
etwas übersichtlicher zu gestalten. Immer dran denken das ein Schaltplan
kein Platinenlayout darstellt :-)
Willst Du mit den LEDs heizen?
Bei 56 Ohm fließen da 52mA, also über das doppelte der erlaubten max
25mA.
Nimm einfach einige 74HC595 mit 330 Ohm je Ausgang und treibe damit die
LEDs direkt (auch die Sekunden-LEDs).
Helligkeit per PWM über den Enable-Eingang.
Das macht dann insgesamt 4 IO-Pins zum MC.
Die Zähler, Dekoder und Transistoren brauchst Du nicht.
Zählen und Dekodieren kann der MC ja selber.
Peter
Ja besten Dank an alle;
Meine Hochachtung das ihr in so kurzer Zeit auch so winzige Fehler
findet und noch Lösungs- bzw. Verbesserungsvorschläge habt.
Habe mir Gedanken über eure Kommentare gemacht und die eine Idee oder
andere aufgegriffen und bin zum Ergebnis gekommen.
Als Stromversorgung werde ich micht denke ich für ein fertiges Netzteil
entscheiden welches mir stabilisierte 5V mit ca. 2500mA liefert und
unter 10€ kostet. Da kostet der PrintTrafo bei Reichelt alleine fast
genauso viel.
Danke für den Invoke-Befehl, wunderte mich schon dass die ICs keine
Poweranschlüsse hatten. Stimmt schon mit dem "Bus" Befehl werde ich mich
noch auseinander setzen müssen.
Hatte schon vorher nachgedacht die Anzeigen zu multiplexen, fand ich
aber nicht so geeignet, da die ganzen Anzeigen noch dimmbar sein
sollten. In dem geschickten Link, stand auch dass das manchmal flimmern
könnte und wenn ich dass dann auch noch dimme... Deshalb verwende ich
die Decoder da diese ich mit PWM ansteuern kann, was meiner Meinung nach
sogar die beste und einfachste Lösung ist.
Habe die Widerstände der Anzeigen korrigiert (jede Anzeige hat: 3,3V mit
30mA pro Segment).
Ich muss zugeben, dass ich das mit dem 74HC595 nicht wirklich verstanden
habe. Werde es mir noch irgendwann mal genauer anschauen müssen, aber
werde denke ich mal vorerst diese Methode beibehalten und eventuell in
der nächsten Version optimieren.
Jedoch bleiben mir noch Fragen über:
Können die 1K-Ohm vor den Transistoren, die bei den Anzeigen bzw. auch
bei den Sekunden-LEDs sind, so bleiben oder sollte ich sie auf 10K
erhöhen?
Mir ist grad so spontan ne Idee eingefallen, ich könnte doch bestimmt
auch die Anzeige auch anders ansteuern. Indem ich einfach nach dem
Decoder einen Inverter(74LS04) einbaue und danach den ULN2803 verwende,
oder nicht??
Bzw. gibt es eventuell schon so einen ähnlichen ULN mit invertierten
Eingängen?
Denn dann könnte ich ja auf die Widerstände vor den Transistoren(vor der
Basis) und auf die Transistoren selbst verzichten.
mfg
LukasZ
Du hast nicht gesagt, welches DCF-Modul Du verwendest, aber es gibt
welche, bei denen man noch einen Eingang schalten muss, damit die
starten, und wenn Du so einen Typ verwenden solltest, würde dafür noch
die Leitung fehlen.
> Willst Du mit den LEDs heizen?> Bei 56 Ohm fließen da 52mA, also über das doppelte der erlaubten max 25mA.
Im Multiplexbetrieb ziemlich sicher erlaubt.
Da sind je nach Modell kurzzeitig bis zu 150-200mA drin.
Ich wollte den von Conrad oder Reichelt nehmen, diese müssten sich
automatisch starten.
Laut einigen Projekten, die ich auch hier gesehen hatte wurde nur der
DCF-Ausgang gebraucht.
Ach es gab noch den Hinweis wegen Aref, welches ich an Vcc geschaltet
hatte: Im Prinzip habe ich mich an die Vorlage [[DCF77-Funkwecker mit
AVR]] gehalten. Ich möchte später nämlich die Spannung an Pin33
einlesen.
Ist das trotzdem falsch oder wie muss das jetzt??
mfg
LukasZ
LukasZ schrieb:
> Als Stromversorgung werde ich micht denke ich für ein fertiges Netzteil> entscheiden welches mir stabilisierte 5V mit ca. 2500mA liefert und> unter 10€ kostet. Da kostet der PrintTrafo bei Reichelt alleine fast> genauso viel.
Wie kommst Du auf 2,5A?
Meine Uhren laufen mit max 500mA.
2,5A ist jedenfalls hoch genug, um ICs sicher zu zerstören, wenn man
irgend einen Schaltungsfehler hat oder man mit der Meßspitze abrutscht
usw.
Wie zeichnest Du eigentlich diese Monsterschaltpläne?
Auf meinem 1920*1200 LCD passen sie nicht drauf.
Ich würde da ja wahnsinnig werden, immer das Bild schieben zu müssen.
> Hatte schon vorher nachgedacht die Anzeigen zu multiplexen, fand ich> aber nicht so geeignet, da die ganzen Anzeigen noch dimmbar sein> sollten. In dem geschickten Link, stand auch dass das manchmal flimmern> könnte und wenn ich dass dann auch noch dimme.
Wenn mans falsch macht, kanns flimmern.
Ich benutze nur Multiplex, läuft astrein und spart ne Menge Bauteile und
Drähte.
>.. Deshalb verwende ich> die Decoder da diese ich mit PWM ansteuern kann, was meiner Meinung nach> sogar die beste und einfachste Lösung ist.
Ich verstehe, daß es einfacher aussieht, wenn man in der Programmierung
noch nicht so erfahren ist. Aber es sieht eben nur so aus.
Der Charme eines MCs liegt eigentlich darin, soviel wie möglich in
Software zu machen, da muß man nämlich keine Drähte ziehen und kann bei
Fehlern sofort ändern (muß keine neue Platine layouten).
> Habe die Widerstände der Anzeigen korrigiert (jede Anzeige hat: 3,3V mit> 30mA pro Segment).
Das sind immer noch 5mA zuviel (Absolute maximum ratings (Ta=25°C) =
25mA).
Auch zwingt Dich niemand, alle Bauteile an die Grenze zu fahren.
Das Auge ist logarithmisch, d.h. 5..10mA reichen in der Regel völlig.
LEDs danken es mit schneller Alterung, wenn man sie überlastet.
> Ich muss zugeben, dass ich das mit dem 74HC595 nicht wirklich verstanden> habe.
Wie ein Schieberegister funktioniert weißt Du?
> Mir ist grad so spontan ne Idee eingefallen, ich könnte doch bestimmt> auch die Anzeige auch anders ansteuern. Indem ich einfach nach dem> Decoder einen Inverter(74LS04) einbaue und danach den ULN2803 verwende,> oder nicht??
Eher nicht.
Der ULN ist nichts weiter, als ein Mehrfachtransistor mit
Basiswiderständen.
D.h. der Inverter würde es genau falschrum machen.
Der Q66 am IC2/5 ist falsch, das ist ein Ausgang!
Die CPU wird ja nicht gleich zusammenbrechen unter der Rechenlast, wenn
sie jede Minute ein Reset schickt.
Wozu sollen Q65, Q66 überhaupt gut sein?
Peter
Naja der Q66 ist auch nicht für den Ausgang von IC2 gedacht sondern
mithilfe von Q66 soll der IC2 Resetet werden können. Zudem soll sich IC2
reseten wenn IC2/5 High ist. Und das gleiche Spiel ist bei IC1. Ich
hätte ja auch ne Diode von IC2/5 nach IC2/15 (Reset) setzen oder beides
mit einem Or-Gatter verknüpfen können ist aber eigentlich ja denke ich
unnötig.
Wie Schieberegister im Prinzip funktionieren weiss ich schon. Nur ich
fange quasi mit AVR an und dann wollte ich es mit der Software nicht
übertreiben.
Der Vorteil der Decoder ist, dass diese ebenfalls einen quasi
Enableeingang haben und nebenbei alle Lampen angeschaltet werden können
(Lampentest). Deshalb diese Methode.
Werde nochmal die Widerstände dann bei den Anzeigen (ca. 82R) erhöhen ;)
Und das mit dem ULN: Wäre doch ideal, denn auf diese Weise könnte ich ja
mir die ganzen Transistoren sparen.
Hatte wahrscheinlich nen Denkfehler: Wenn beim ULN im Eingang High
ankommt, dann erst wird der Ausgang auf GND gezogen, richtig?
Naja wie ich auf 2,4 A komme: Komme ich nicht :D ; Aber wenn ich mir
88:88 anzeigen lassen will (soll bei Synchronisationsbeginn sein) wären
es schon 0,84 A dann kämmen die LEDs noch hinzu und komme dann auf 0,99A
mit den ICs dürfte es bei einem maximalen Stromverbrauch von ca. 1,23A
enden.
Aber ansonsten ist an der Schaltung alles in Ordnung?
mfg
LukasZ
So ich habe mir den Schaltplan noch ein wenig modifiziert und den ULN
verwendet so wie ich es mir halt vorstelle...
Falls jetzt nichts falsch ist was ich hoffe ;), werde ich mal das Layout
entwerfen versuchen.
Ja besten Dank für eure Hilfen ud Ratschläge...
mit besten freundlichen Grüßen
LukasZ
Selbst für einen Hobbybastler ist die Schaltung grottenschlecht.
Die Multiplexer aus dem letzten Jahrtausend.
Mach Dir lieber ein paar mehr Gedanken über PWM und Multiplexen, bevor
Du auch nur ein Bauteil kaufst und einlötest.
Du sprachst von einer 2. Version, mach sie gleich zur ersten und spar
Dir das ganze Hardwaregrab.
Also ich weiss ja nicht... soviel Bauteile, um ein paar
7-Segment-Anzeigen anzusteuern? Schau Dir mal meine Schaltung als
Vergleich an. Das ganze LED-Grab ist zwar nicht dran, aber nun gut, das
wuerde man auch noch dran bekommen. Was willst Du damit eigentlich
darstellen?
Naja, wenn er sich die Multiplexprogrammierung nicht zutraut.
Ich muß allerdings auch sagen, es sieht viel schwieriger aus, als es
ist.
Man darf nur nicht den kapitalen Fehler machen, keinen Timerinterrupt zu
verwenden, das geht sowas von in die Hose.
Also erstmal Interrupt lernen, d.h. mal ne LED per Timerinterrupt
blinken lassen. Das kann man aber probieren, bevor man das Layout macht.
Und Dekodieren heißt in MC-Sprache Tabellenzugriff.
Das ist quasi Brot und Butter fast jeder MC-Anwendung, man kommt also
nicht umhin auch das zu lernen und dann sind die Dekoder aber sowas von
überflüssig.
Peter
IC4C soll mit dem RC-Glied einen Oszillator bilden? Dann solltest Du
statt einem UND-Gatter besser ein NAND-Gatter in
Schmitt-Trigger-Ausführung einsetzen, z.B. 4093, sonst schwingt da gar
nichts. Noch besser wäre es, wenn Du Dich einfach an einen PWM-Ausgang
des Prozessors hängst. Der Piezo wird keinen Ton von sich geben. Und
zwar nicht wegen der überflüssigen Diode D9, sondern weil ein Piezo mit
einem Gegentaktausgang angesteuert werden muss. Also entweder einen
Pulldown (Entladewiderstand)parallel zum Piezo oder auch weg mit dem
Emitterfolger und direkt an den Gatterausgang. Der 4511 ist ein Dekoder
Driver, warum noch die Open-Collectors? Wobei der Vorwiderstand von 82
Ohm die Opencollectors rechtfertigen würde... Soll die Uhr das Zimmer
beleuchten?
Peter Dannegger schrieb:
> Naja, wenn er sich die Multiplexprogrammierung nicht zutraut.
Lukas, ich hab Dir mal den Code fuer obige Schaltung angehaengt,
fungiert momentan ebenfalls als Uhr ;) Das koennte Dir weiter helfen.
Mit den Anzeigen werden die Stunden und Minuten, dann ab und zu soll es
noch das Datum anzeigen.
Naja die Uhr soll ja nicht das Zimmer beleuchten aber zur Tageszeit,
auch bei Sonneneinstrahlung gut lesbar sein. In der Dämmerung bzw. Nacht
wird die Uhr automatisch mit dem PWM-Signal dann gedimmt, so dass dann
nur die Anzeigen schwach leuchten würden.
IC4C und IC4D hatte ich tatsächlich die falschen Gatter benutzt, es
sollten die 4093 sein so wie in
http://s-huehn.de/elektronik/wecker/wecker.htm.
Aber auf der Seite ist nämlich auch diese Diode, bzw habe es ein-zu-eins
übernommen, naja bis auf die Tatsache, dass ich die falschen Gatter
ausversehen eingesetzt hatte ;) Aber muss ich trotzdem dann die Diode
gegen einen Widerstand am besten tauschen?
Michael G. schrieb:
>Lukas, ich hab Dir mal den Code fuer obige Schaltung angehaengt,>fungiert momentan ebenfalls als Uhr ;) Das koennte Dir weiter helfen.
Ja vielen Dank, habe mir die Schaltung mit dem Quellcode ausgedruckt,
werde es in den Tagen mal durcharbeiten. Ne Frage hätte ich dazu schon,
wie könnte ich das dann "dimmen"? In meiner Schaltung verwende ich ja
das PWM-Signal und den 4511 Decoder dafür.
mfg
LukasZ
LukasZ schrieb:
> Michael G. schrieb:>>Lukas, ich hab Dir mal den Code fuer obige Schaltung angehaengt,>>fungiert momentan ebenfalls als Uhr ;) Das koennte Dir weiter helfen.>> Ja vielen Dank, habe mir die Schaltung mit dem Quellcode ausgedruckt,> werde es in den Tagen mal durcharbeiten. Ne Frage hätte ich dazu schon,> wie könnte ich das dann "dimmen"? In meiner Schaltung verwende ich ja> das PWM-Signal und den 4511 Decoder dafür.>> mfg> LukasZ
Hy Lukas,
die nominelle Helligkeit ergibt sich aus zwei Faktoren: Der Laenge des
Pulses und dem verwendeten Widerstand, also dem Puls-Strom. Wenn Du die
Anzeige kuerzer pulst, d.h. also das Tastverhaeltnis (duty cycle)
verringerst, wird die Anzeige automatisch dunkler. Du darfst nur die
Frequenz nicht zu weit herunterfahren, sonst faengt es an zu flackern.
Da hab ich jetzt aber fuer mich keinen Grund gesehen, das so zu machen,
so hell ist das Teil auch wieder nicht, ausserdem habe ich es nicht
direkt am Bett. Machen koennte man das allerdings schon, man muesste
lediglich die Software entsprechend erweitern.
Im Timer-Interrupt wird immer das aktuelle Display gewaehlt und (ueber
die 0), der entsprechende Wert ausgegeben. Das heisst jedes Display ist
ca. 1/200s (~ 5ms) aktiv, dann wird direkt auf das naechste
umgeschaltet. Wenn Du es nur kurz anpulst, sagen wir 1ms, wird es
dunkler, d.h. Du haettest dann ein Tastverhaeltnis von 1:5 geschaffen.
Gruss,
Michael
Schaut uebrigens so aus, das ganze ;P Das mittlere Display zeigt ein
blinkendes Minus an (Sekundentakt), ist aber zum Zeitpunkt des Bilds
gerade aus gewesen. War ein echtes Spass-Projektlein ;)
Kleine Korrektur: Bei der momentanen Implemntierung ist die
Multiplex-Frequez ca. 195Hz und die Pulslaenge betraegt ca. 1ms, dadurch
dass es 5 Displays sind, die der Reihe nach durchgeschaltet werden.
Nur mal so am Rande, mit den Dcf-77 Empfängern vom Conrad hab ich bisher
die besseren Erfahrungen gemacht, der hat eine simple
Spannungsstabilisierung und zwei fertige Transistorausgänge an Bord,
einer invertiert und einer nicht invertiert.
Pollin ist eh nur Schrott und das Exemplar bei Reichelt hat nen Ausgang
der nur ein paar µA treiben kann.
LukasZ schrieb:
> Aber auf der Seite ist nämlich auch diese Diode, bzw habe es ein-zu-eins> übernommen, naja bis auf die Tatsache, dass ich die falschen Gatter> ausversehen eingesetzt hatte ;) Aber muss ich trotzdem dann die Diode> gegen einen Widerstand am besten tauschen?
Wichtig ist, dass Du den Schaltplan richtig abmalst. Nicht einfach aus
einer Parallelschaltung eine Serienschaltung machen.
Wenn Du Piezo schreibst, geht der Betrachter davon aus, dass Du Piezo
meinst. So ein Piezo benötigt allerdings eben keine Diode, aber
andererseits den erwähnten Pushpull usw usf... Du musst Dich folglich
entscheiden, was Du da tatsächlich anschließen willst: Piezo oder einen
"echten" Lautsprecher mit einer Spule drinnen, dann können wir konkreter
werden.