Ich brauche Hilfe oder vielleicht eine Erklärung zu einem bestimmten Problem, das ich beim Portieren einer kleinen und relativ einfachen Schaltung von einem Steckbrett auf eine Leiterplatte habe. Die Schaltung wird für ein Schulprojekt verwendet, um Infrarotimpulse mit einer Frequenz von 4 Hz zu empfangen. Die Schaltung besteht aus etwa 5 oder 6 Logik-ICs, sie funktioniert einwandfrei auf einem Steckbrett. Sobald ich diese Schaltung jedoch auf eine Platine übertrage, tritt ein Problem auf. Ich habe mein Problem auf einen einzelnen IC beschränkt, der ein 74LS93 4-Bit-Binärzähler ist.
Ich beschloss, das Problem mit so wenig Komponenten wie möglich zu reproduzieren, und es stellte sich als ziemlich einfach heraus. Ich habe einfach einen 555-Timer-IC in einer stabilen Konfiguration eingerichtet, um eine Rechteckwelle mit einer Frequenz von 4 Hz zu erzeugen (um den Signaleingang zu simulieren) und den Ausgang direkt in den Eingang des Zählers eingespeist:
Simulieren Sie diese Schaltung – Mit CircuitLab erstellter Schaltplan
Auch diese Schaltung verhält sich wie auf einem Steckbrett; der Zähler zählt bei jeder fallenden Flanke jedes empfangenen Impulses von 0000 bis 1111 und setzt sich dann auf 0000 zurück. das erste Flip-Flop des Zählers. Es scheint, als ob der Zähler sowohl steigende als auch fallende Flanken zählt.
Die gute Nachricht ist, dass ich dieses Problem beheben kann, indem ich eine 100-nF-Obergrenze zwischen VCC meines Zählers und GND hinzufüge. Ich habe es mit einem Oszilloskop auf dem Bild unten untersucht. Links von der mittleren Zeile sehen Sie das Verhalten des Zählers ohne Kappe und rechts davon den „festen“ Zähler mit Kappe zwischen VCC und GND. (Gelb ist das Eingangssignal, Blau ist QA. Bitte beachten Sie die Eingangsschwankungen, da ich mit meinem Arduino betrieben habe, das gleiche passiert, wenn ich eine konstante Spannungsquelle verwende.)
Die schlechte Nachricht ist, wenn ich die Schaltung als Ganzes auf einer Leiterplatte zusammenbaue, tritt das Problem erneut auf. Ich habe versucht, Entkopplungskappen auf jeden IC zu setzen, es scheint zu helfen, aber die Ausgabe ist konstant ... na ja, unvorhersehbar. Manchmal zählt es so, wie es sollte, aber meistens ist es zufällig. Ich weiß, dass sich Steckbretter an manchen Stellen wie sehr kleine Kondensatoren verhalten, aber es fällt mir schwer, die Ursache meines Problems hier zu verstehen und herauszufinden.
Ich weiß, es mag wie Grundlagen erscheinen, aber entschuldigen Sie bitte, da ich mich umgesehen habe und nicht sicher bin, wonach ich suchen soll, ich bin auch ein Neuling in Sachen Elektronik als Ganzes. Alles würde helfen!
Auf den ersten Blick scheint dies ein Stromproblem zu sein. Es scheint, dass Ihre "5 V"-Stromversorgung im Betrieb auf weniger als 4 V abfällt.
Vielleicht reicht die Stromversorgung nicht aus. Versorgen Sie Ihre Schaltung also mit einer anderen Steckdose oder einem anderen Netzteil, das mindestens 10-mal so viel Strom liefern kann, wie Sie glauben, dass Sie es benötigen (mindestens 10-mal so viel Strom bei 5 V). (Eine weitere mögliche Erklärung: Vielleicht haben die Drähte und Anschlüsse und Leiterbahnen zwischen Ihrem Netzteil und den GND- und Stromanschlüssen des Chips einen zu hohen Widerstand; ersetzen Sie sie daher durch dickere Drähte und weniger oxidierte Anschlüsse).
Egal wie gut die Wandwarze ist, sie kann nichts gegen die Induktivität in den Drähten zwischen der Wandwarze und Ihrer Leiterplatte tun. Diese Induktivität erzeugt eine Impedanz, die erheblich größer ist, als die Messung des Widerstands dieser Drähte vermuten lässt. Sie benötigen einen Kondensator mit "Massenkapazität" auf Ihrer Platine. Es gibt Möglichkeiten, zu berechnen, wie viel Sie brauchen, aber viele Leute werfen einfach einen 1000-uF-Kondensator auf ihren ersten Prototyp - normalerweise übertrieben, aber es lohnt sich nicht, herauszufinden, wie viel weniger wir tatsächlich "brauchen". „Techniken zur Entkopplung von Logikversorgungen“ , „Allgemeiner PCB-Designleitfaden“ , „Entkopplungskapazitäts-Designregeln“ , „
Egal wie gut ein Bulk-Kondensator ist, er kann nichts gegen die Induktivität in den Spuren zwischen diesem Kondensator und jedem IC tun. Diese Induktivität erzeugt eine Impedanz, die erheblich größer ist, als es die Messung des Widerstands dieser Spuren vermuten lässt. Legen Sie einen 100-nF-Entkopplungskondensator über den GND- und Stromanschluss jedes ICs. „Entkopplungskondensatoren erklärt – oder – Wenn es Ihnen gefällt, sollten Sie es nicht so klingeln lassen“ , „Was ist ein Entkopplungskondensator und woher weiß ich, ob ich einen brauche?“ , „Beispielhafte Entkopplung“ usw.
Leider beißen diese 3 Probleme extrem oft und verursachen alle möglichen seltsamen und nicht ganz richtig funktionierenden Verhaltensweisen.
(Wie fügen wir „Entkopplung und Massenkapazität“ zu den häufig gestellten Fragen auf der Elektrotechnik-Website hinzu?)
Ich habe einige Jahre lang einen Mechatronik-Kurs unterrichtet und mehrere Studenten sahen Probleme bei der Migration von Steckbrettern zu Leiterplatten. Die meisten Probleme wurden durch Hinzufügen von Kapazität behoben.
Was wahrscheinlich passiert, ist, dass Ihr Steckbrett eine ziemliche parasitäre Kapazität hat, die davon abhängt, wie die Leiterbahnen auf der Platine aufgebaut sind. Infolgedessen kann das Steckbrett für Anfängerschaltungen fehlerverzeihender sein. Das Gegenteil ist auch wahr, Steckbrett wird fortgeschrittene Hochgeschwindigkeitsschaltkreise töten.
Es empfiehlt sich immer, eine 100-nF-Kappe zwischen VCC und GND so nah wie möglich am IC zu platzieren. Sie möchten eine möglichst kleine Schleife, da eine größere Schleife eine Induktivität erzeugt. Versuchen Sie, die Kappe auf der gleichen Seite wie der IC zu halten, Durchkontaktierungen führen zu Induktivität. Schließlich zählt auch die Verpackungsgröße, versuchen Sie, eine physisch kleine Kappe zu verwenden. Sie bemerken, dass einige Kappen mit niedrigem ESL gekennzeichnet sind und ihre Spuren möglicherweise an den langen Seiten des Chips haben, alles im Namen der Bereitstellung einer sauberen Spannungsquelle für Ihren IC.
Tom L.
pjc50
Benutzer28910
Joe Hass
Benutzer33355
Benutzer33355
Tom L.