Schematische Kritik

10

Ich habe mein erstes Elektronikprojekt entworfen und wäre Ihnen dankbar, wenn Sie mir Feedback dazu geben könnten.

Ich suche speziell nach Anfängerfehlern, irgendetwas Falschem oder Ineffizientem an meiner Schaltung und auf dem Weg, auf dem ich den Schaltplan erstellt habe.

Das Projekt ist eine Küchenuhr, die von einem Arduino gesteuert wird. Es hat drei Timer, die gleichzeitig laufen können, und es piept, wenn es Null erreicht. Es wird von der Wand mit Strom versorgt, aber wenn es nicht angeschlossen ist, muss eine Batterie davon ausgehen, ohne den Timer neu zu starten.

Das erste Schema ist die Stromversorgung. Wenn es an die Wand angeschlossen ist, sollte es keinen Strom aus der Batterie verbrauchen, aber es muss auf die Batterie umschalten, wenn es nicht angeschlossen ist.

Schema 1

Das zweite Schema enthält den Mikrocontroller sowie die Schalter und Tasten zur Steuerung des Timers.

Schema 2

Das dritte Schema enthält die Anzeige.

Schema 3

Ich verstehe, dass die Bewertung eines Schaltplans eine Menge zu fragen ist, daher bin ich für jedes Feedback sehr dankbar.

BEARBEITEN

Ich bin allen sehr dankbar, die sich die Zeit genommen haben, meinen Schaltplan zu kommentieren. Ich habe keine Freunde von Ingenieuren, daher ist Ihr Feedback sehr wertvoll.

Ich habe versucht, die Änderungen gemäß Ihren Vorschlägen vorzunehmen. Ich habe es noch nicht auf dem Steckbrett ausprobiert, daher bin ich mir nicht sicher, ob alles funktionieren wird. Ich muss noch einige Tests durchführen, um den besten Wert für R5 herauszufinden.

Hier ist das aktualisierte Schema:

Schema 1

Schema 2

Schema 3

André Wagner
quelle
3
220 Ohm für die LEDs ist etwas niedrig. Der Wert sollte von der Spannung und der Durchlassspannung der LED abhängen. Angenommen, Sie verwenden eine typische Vorwärtsspannung von 0,7 V und einen Strom von 10 mA. Für die 12-V-LED mit V = IR sollte der Widerstand (12 V - 0,7 V) / 10 mA = 1130 Ohm betragen ... Also ein 1,2-K-Widerstand. Gleiches gilt für die 5-V-LED, möglicherweise einen 470-Ohm-Widerstand. Machen Sie diese Werte etwas kleiner, wenn Sie heller wollen.
geometrisch
1
@geometrikal Danke, ich hatte kein Programm installiert, also habe ich nur von Hand gezeichnet.
André Wagner
4
Die Atmega-Rücksetzleitung ist aktiv niedrig, daher sollte sie an Vcc und nicht an Masse gebunden werden. Ich liebe das 8-Bit-Gefühl, es sieht toll aus.
S3C
2
Das Entprellen bewirkt einen sanften Übergang von niedrig nach hoch, wenn der Schalter gedrückt wird. Ist S4 ein dreipoliger Schalter? Sie brauchen den unteren Widerstand von r3 nicht, Sie müssen ihn nicht herunterziehen, wenn er nicht mit dem mcu verbunden ist
geometrikal
2
Software-Debouncing ist eine völlig gültige und weit verbreitete Lösung. vorausgesetzt, die Zyklen / der Speicher dafür wären ansonsten ungenutzt, hat es nach der Entwicklung keine Stückkosten.
Chris Stratton

Antworten:

10

Ein großes Lob für die Verwendung eines Referenzwerts (Referenzbezeichners) für (die meisten) Komponenten. Besonders wenn Sie einen Schaltplan besprechen möchten, werden sie für eine anständige Kommunikation benötigt.

Die Stromversorgung

  • Sie verwenden die Refdes "L1" und "L2" für die LEDs. Tu es nicht. "L" ist die Standardbezeichnung für Induktivitäten. Verwenden Sie "LD" oder "LED" oder wie ich "D" für die Diode.
  • der Wert von R1 ist zu niedrig. Es gibt der LED 45 mA, was für eine Anzeige-LED zu viel ist. Erhöhen Sie den Wert auf 560 Ω und Sie haben einen sicheren Wert von 18 mA. Sie sind normalerweise mit 20 mA bewertet. Überprüfen Sie das Datenblatt. Benötigen Sie diese LED übrigens wirklich? Es wird immer Strom verbrauchen.
  • C1 und C2 werden als "10 mF" angegeben, wobei ich davon ausgehe, dass sie "10 µF" sein sollten, das ist ein Unterschied von Faktor 1000. Es handelt sich höchstwahrscheinlich um Elektrolytkondensatoren, die polarisiert sind. Verwenden Sie ein Symbol, das die Polarisation anzeigt und deutlich anzeigt, welche Seite positiv ist. Auch für die Elektrolyse empfiehlt es sich, die Spannung im Schaltplan anzugeben. C1 sollte mindestens 20 V, C2 10 V betragen.
  • Platzieren Sie 100 nF parallel zu C1 und C2
  • Ziehen Sie C2 näher an den Ausgang des Reglers als an die LED. Elektrisch macht es keinen Unterschied, aber so sollten Sie sie auf der Leiterplatte platzieren. Die 100 nF sollten dem Ausgang am nächsten sein.

Der Mikrocontroller

  • Der ATmega328 hat keinen VREF-Pin. Das sollte wohl Vcc sein. Fügen Sie einen Entkopplungskondensator von 100 nF zwischen Vcc und Masse so nahe wie möglich an den Pins hinzu. Entkoppeln Sie immer die Stromversorgung eines IC.
  • Reset ist mit Masse verbunden. Das ist in Ordnung, wenn Sie die interne Rücksetzschaltung verwenden, aber vergessen Sie nicht, das RSTDISBL-Bit auf "1" zu programmieren.
  • Sie können einen Lautsprecher nicht direkt über einen E / A-Pin ansteuern. Sie benötigen dort einen Transistor.
  • Sie können einen Widerstand speichern, wenn Sie den internen Pull-up von PC0 verwenden und den Schalter mit Masse verbinden. R4 wird dann nicht benötigt. Denken Sie daran, dass die Logik invertiert wird.
  • Gleiches gilt für PB2 bis PB5 und die Schalter S2 und S4: Interne Klimmzüge und Schalter gegen Masse anstelle von +5 V.
  • Die Schalter S2 und S4 sind verwirrend. Sie haben 2 Kontakte auf der unteren Seite und 5 auf der oberen Seite. Sollen sie Wechselkontakte sein? Wenn ja, brauchen Sie das nicht: Ein Eingang ist immer komplementär zum anderen, also brauchen Sie nur einen. In jedem Fall hat der niedrigste der Pulldown-Widerstände keine Funktion.
  • Ich würde aussagekräftigere Namen für die Netze an Port D verwenden, wie "Digit1", "Digit2" usw.

Der Bildschirm

  • Entkoppeln Sie die Stromversorgung erneut mit einem 100 nF-Kondensator.
  • Die Widerstandswerte für R4 sind viel zu hoch. Tauschen Sie sie gegen 150 Ω-Typen aus.
  • Die 5 R5-Widerstände können fallengelassen werden. Sie haben keine Funktion.
  • Der Mikrocontroller kann die üblichen Kathoden des Displays nicht direkt ansteuern: Wenn alle LEDs leuchten, haben Sie 7 ×20 mA = 140 mA, das ist viel mehr als eine E / A sinken kann. Sie benötigen hier 5 NPN-Transistoren oder ein Transistorarray wie das ULN2803 .

Fazit
Dies ist eine lange Liste, aber ich denke, Sie haben gute Arbeit geleistet, wenn man bedenkt, dass es Ihr erstes Projekt ist. Ich habe viel schlechtere Schaltpläne gesehen. Erfolg!


Bearbeiten Sie das Update der Frage.
Ihre Schaltung um Q1 und D3 ist nicht ganz in Ordnung: Die Batterie speist die LED, aber nicht den Rest der Schaltung. Ich bin mir nicht sicher, ob die LED als Batterieanzeige eine gute Idee ist: Insbesondere bei Batterieleistung muss man sparsam sein und darf keine Energie für eine LED verschwenden.

Wie wäre es damit: Behalten Sie die Dioden wie in Ihrer ersten Version bei, aber steuern Sie die LED vom Mikrocontroller aus. Verwenden Sie einen der freien Pins, um das Vorhandensein der 12 V über eine 5 V-Zenerdiode und einen Vorwiderstand zu erfassen. Sie können dann die LED blinken lassen, wenn Sie mit Batteriestrom betrieben werden. Ein kurzer Blitz einmal pro Sekunde ist viel wirtschaftlicher.

stevenvh
quelle
Vielen Dank, dass Sie sich die Zeit genommen haben, den Schaltplan auszuwerten. Eine erste Frage: Sie sprechen von einer Entkopplung des Mikrocontrollers und später des Displays. Ich gehe davon aus, dass alle + 5V-Eingänge mit dem + 5V-Ausgang des Netzteils verbunden sind. Ist die Leistung nicht bereits entkoppelt? Warum sollte ich mich wieder entkoppeln müssen?
André Wagner
3
@ André - Gute Frage. Insbesondere digitale ICs können kurze Stromspitzen ziehen, wenn viele Transistoren gleichzeitig schalten. Die Anstiegszeit kann sehr hoch sein (= hohe Frequenz), und die Induktivität der Leiterplattenspuren kann ein hoher Widerstand gegenüber dem Kondensator des Netzteils sein. Sie möchten also einen zusätzlichen Energiepuffer (das ist eine Entkopplungskappe) in der Nähe der Stromanschlüsse. Nehmen Sie "in der Nähe" wörtlich: 1 mm ist besser als 5 mm. Ein Extra ist, dass die aktuellen Spikes nicht über das Board laufen, wo sie EMI verursachen können. Stellen Sie immer eine Entkopplung für alle ICs bereit . Es ist das Gesetz! :-)
Stevenvh
Eine andere Frage: Zu Ihrem letzten Kommentar, dass ich einige Transistoren benötigen würde, um die LEDs zu führen. Ich habe die Schaltung im Steckbrett ohne die Transistoren gebaut (den MC direkt in die LEDs anschließen) und sie war hell genug für meine Bedürfnisse. (Ich verwende 220R-Widerstände) Kann ich es so belassen oder besteht die Gefahr, dass der Mikrocontroller beschädigt wird?
André Wagner
2
@ André - Beschädigend. Ich habe berechnet, dass Sie bis zu 140 mA ziehen würden, während das Datenblatt besagt, dass 40 mA das absolute Maximum sind . Seite 313. Lesen Sie den Hinweis: "Spannungen, die über die unter" Absolute Maximalwerte "aufgeführten Werte hinausgehen, können das Gerät dauerhaft beschädigen ." Und letzte Zeile: "Die Exposition gegenüber absoluten maximalen Bewertungsbedingungen über längere Zeiträume kann die Zuverlässigkeit des Geräts beeinträchtigen ." Verwenden Sie besser Transistoren.
Stevenvh
In Ordnung! Dann werde ich wohl ein paar Transistoren dort platzieren! Danke für die Info.
André Wagner
4

Ich werde hier ein paar kurze Gedanken einbringen und sie später ergänzen.
Die Liste von anderen in Kommentaren wäre eine kombinierte Antwort.

Jemand sollte Olin einsperren, bis Sie einige der angesprochenen Punkte ansprechen :-).

C! & C2 sind jeweils als 10 mF gezeigt.
mF = Millifarad = 10.000 Mikrofarad.
Wenn Sie 10 microFarad meinen (wie es wahrscheinlich erscheint), dann ist dies normalerweise 10 uF geschrieben.
Sie haben dies möglicherweise als uF geschrieben und es wurde durch Ersetzen der Schriftart auf 10 mF geändert (wie es manchmal vorkommt), aber dies muss überprüft werden.

Sie verwenden einen Widerstandsnamen für eine Gruppe von Widerständen. zB R4 = 7 x 10k.
Dies ist leicht zu verstehen, macht es jedoch unmöglich, sich leicht auf einen einzelnen Widerstand oder ähnliches zu beziehen, und ist für die Automatisierung für Layoutzwecke ungeeignet (da es ungewiss ist, welche Komponente R4 ist.

Die Fähigkeit, Bezeichnungen einfach und eindeutig zu lesen, ist ein Hauptentwurfsziel eines Schaltplans.
Das unterschiedliche visuelle Erscheinungsbild von Etiketten an verschiedenen Stellen scheint keinen Zweck zu haben (kann aber einen Zweck haben), und einige sind für das Auge hart.
zB ABCD, das mit DA DB DC DD verbunden ist, sind weiß in schwarzen Quadraten. Schwer zu lesen.
Weiß auf Grau innerhalb der Komponentenkörper ist ebenso schwer zu lesen und unnötig.
Grau auf Grau ist schlimmer.

Gegenwärtig ist dieses Diagramm ein Funktionslehrer, kann jedoch ohne anderes Referenzmaterial (oder ein eidetisches Gedächtnis) nicht für die Erstellung oder Fehlerbehebung verwendet werden.
Das Hinzufügen von Pin-Nummern würde den Verwendungsbereich des Diagramms erheblich verbessern.

Allen Elektronen geht C1 aus :-).
Natürlich nicht wirklich, aber richten Sie die Zuleitungen vertikal gemäß C2 aus.
Es ist nichts Falsches daran, Kondensatoren horizontal auszurichten, wo es für die Anwendung geeignet ist, aber die normale Verwendung, wenn ein Kondensator von einer horizontalen Linie nach Masse (z. B. vor und nach dem Spannungsregler U1) gezeigt wird, entspricht C2.

In ähnlicher Weise ist die horizontale Anordnung von R2 weniger verbreitet und "sieht nicht gut aus". Dies wurde getan, um Platz zu sparen, aber z. B. wenn Sie U1 nach oben bewegen, sodass seine Eingabe horizontal von D1 gespeist wird, und wenn Sie den Text über U1 verschieben, kann derselbe Platz verwendet werden, aber L2 und R2 können beide vertikal sein.

Die SPK1-Verbindung sieht etwas seltsam aus - die Absicht ist klar.

An einer Reihe von Stellen würde die Lesbarkeit durch die Verwendung einer horizontalen Verbindung zur Erde oder eines lokalen Erdungssymbols anstelle eines langen Drahtes zur Erde verbessert.
zB Pin LE von U3,


Der Regler kann Toshiba TA4805 sein .
Der unbelastete Ruhestrom beträgt 0,85 mA und den schlimmsten Fall 1,7 mA.
ABER LED-Statusanzeige zieht ca. 3 mA. Eine PP3 9V 'Transistorbatterie' hatte eine Kapazität von ungefähr 600 mAh, so dass die Batterielebensdauer bei unbeladenem Betrieb ~ = 600/5 = 150 Stunden oder ungefähr 1 Woche 24/7 war.
Moderne LEDs können SEHR hell sein und unter 1 mA sollte ausreichen.

Die Anschlussstifte PC1 - PC5 sind wie gezeigt in Ordnung, MÜSSEN jedoch mit Pull-Up / Downs programmiert werden, wenn sie als Eingänge festgelegt sind oder als Ausgänge festgelegt werden müssen.

R4 = 7 x 10k sehen VIEL zu hoch aus, es sei denn, es handelt sich um ein intelligentes Display, das für die aktuelle Bereitstellung mit einer höheren Leistung in Kontakt steht.

Anon ...

Russell McMahon
quelle
"es sei denn, es ist ein intelligentes Display in Kontakt mit einer höheren Leistung". Gibt es diese für 7-Segmente? Ich weiß, dass sie für Matrix-Displays geeignet sind .
Stevenvh
Ah, sicher tun sie das! Wie der teure MAX7219. Aber diese sind normalerweise seriell miteinander verbunden, denke ich.
Stevenvh
Olin wurde eingesperrt und fehlt jetzt. Komm zurück Olin, wir vermissen dich.
RoyC