Hilfe bei der Überprüfung meiner ersten Arduino-Leiterplatte: Was habe ich falsch gemacht? [geschlossen]

BEARBEITEN: Nachdem ich alles berücksichtigt habe, was ihr gesagt habt, habe ich die Platine wie folgt bearbeitet. Ich habe den FTDI geändert, während ich die Masseschleifen unterbrochen und ein wenig an den Leiterbahnen gearbeitet habe, die Größe des 100-uF-Kondensators geändert und hoffentlich das neue Routing besser ist. Geben Sie mir Ihre Gedanken zu dieser nahezu identischen Schaltung, die gerade den ISP hinzugefügt und FTDI entfernt hatGeben Sie hier die Bildbeschreibung einGeben Sie hier die Bildbeschreibung einGeben Sie hier die Bildbeschreibung ein

Geben Sie hier die Bildbeschreibung ein

Geben Sie hier die Bildbeschreibung einAlso habe ich eine Arduino-basierte Platine mit dem Zweck gezeichnet, eine ds3231-temperaturkompensierte RTC zu verwenden, um einen atmega328p-au aufzuwecken und in den Ruhezustand zu versetzen, der dann einen MOSFET steuert, der mit der Masseseite eines Mikroservos verbunden ist, um ihn einzuschalten /aus. Es ist mein erstes Design, also möchte ich, bevor ich einen Prototyp mache, Ihre Meinung dazu einholen (anbei ein Online-Gerber-Viewer, den Sie sich hier ansehen können ). Plattengröße: 45 mm * 16 mm

So sendet die RTC Signale von ihren digitalen und analogen Pins an das Arduino, die damit das MOSFET-Gate ein- und ausschalten. Abgesehen vom Motor, der eine Spitze von 1 A bei 5 V hat, ist alles andere relativ schwach (mit maximal 40-50 mA). Worüber ich mir Sorgen mache, sind Störungen, die den Trigger des ds3231 auf die MCU auslösen oder verhindern könnten. Hier sind weitere Bilder, wenn Sie das Gerber nicht überprüfen möchten:

Entschuldigung für meine schlechte Formatierung: Ich bin zum ersten Mal hier. Ich danke Ihnen für Ihre Hilfe! Der Servo (mg90s-Mikroservo) wird jede Stunde etwa 59 Minuten lang ausgeschaltet sein und wenn er eingeschaltet wird, nur für ein paar Minuten. Ich begann mit den offiziellen Pro-Mini-Zeichnungen und ging von dort aus. Ich benutzte den Steckbrett-Prototyp, den ich als Referenz für Verbindungen gemacht habe. Ich verstehe, dass ich viel lernen muss. Das Shipset befindet sich fast die ganze Zeit im Schlafmodus.

Ich habe Angst vor unerwünschtem Rauschen auf den digitalen Pins oder A4 A5, das zu unerwünschtem Verhalten führen könnte (frühes Aufwachen). Es wird mit Batterien betrieben. riskiere ich viel Rauschen über die lange D2-Leitung aufgrund der Masseebene unter dem IC1? Besteht bei A4/A5 ein Risiko, durch Lärm beeinträchtigt zu werden? wie kann ich das in dem fall beheben?

Werden Sie abgeschirmte verdrillte Adernpaare für die Schnittstelle verwenden? Was sind die Spezifikationen für den Motor 5V/DCR? vs FET RdsOn Wärmeanstieg? Interessieren Sie sich dafür, dass Gnd-Rauschen in Agnd eindringt? Abschirmung? Abnahmekriterien für alle Schnittstellen?
Das an SER angeschlossene NMOS ist für den Motor, denke ich? Welcher Typ ist das NMOS? Ich sehe keine Flyback-Diode, das NMOS hat eine Diode in seinem Symbol, die gut genug sein könnte. Sicherheitshalber würde ich trotzdem eine Flyback-Diode über dem NMOS hinzufügen. Sie können es immer nicht montieren, wenn es nicht benötigt wird. Stellen Sie nur sicher, dass die Spuren, die den Motorstrom führen, breit sind. Sie haben keine empfindlichen Punkte in Ihrem Design, die meisten Signale sind digital, daher würde ich nicht erwarten, dass Störungen durch den Motor ein Problem darstellen.
Ich würde mir die Entkopplung des Atmega noch einmal ansehen, soweit ich im Schaltplan sehen kann. Sie haben nur eine Kappe für den Atmega-VCC-Pin, während es üblich ist, an jedem Vcc-Pin einen Kondensator so nahe am Pin zu haben wie möglich ... Außerdem sehe ich die I2C-Leitungen nicht, die tatsächlich mit dem Mikrocontroller verbunden sind, ich sehe A5- und A4-Etiketten am RTC-IC, aber ich sehe nicht die gleichen Etiketten auf den A5- und A4-Atmega-Pins.
Mein Feedback ist, dass Sie etwas lernen müssen, um anständige Schaltpläne zu zeichnen. Was Sie hier zeigen, würde in keinem Konstruktionsbüro bestehen.
Die A4- und A5-Netze werden nicht mit den A4- und A5-Pins des ATmega328 verbunden. Netznamen werden nicht automatisch vergeben. Ohne ein Offpage-Flag (wie bei A0-A3 und A6-A7) sind die U1-Pins 27 und 28 nur mit den Pullup-Widerständen verbunden, sie verbinden sich nicht mit den A6/A7-Netzen. Wenn der Netzname implizit gesetzt ist (wie auf den IC1-Pins 16 und 15), ohne Verwendung von Offpage-Flag-Symbolen, ist es sehr einfach, die Verbindung oder deren Fehlen zu übersehen. (Arduino Pro Mini-Schaltplan hat einige ähnliche Stilprobleme, z. B. das Reset-Netz ... Ich habe mich vor einigen Jahren daran verbrannt.)
Ihr Instinkt, dieses Design zu überprüfen, bevor Sie Platinen herstellen, ist sehr gut, das ist eine gute Angewohnheit. Sichern Sie Ihren Schaltplan (ich nehme an, Sie bewahren ihn bereits in einem Git-Repo auf), überprüfen Sie electronic.stackexchange.com/a/28255/41856 und verbringen Sie einige Zeit damit, die Dinge neu zu arrangieren, um den Signalfluss offensichtlicher zu machen. Dabei überprüfen Sie auch, ob es keine anderen verwaisten Netze gibt (wie A4 vs. U1 Pin 27). Fügen Sie dem Schaltplan auch Notizentext hinzu, der beschreibt, wo der mg90s-Servomotor angeschlossen ist und wo Batteriestrom eingespeist wird.
Vielen Dank für Ihr Feedback. Ich werde die Schaltpläne heute reparieren und den Thread aktualisieren
Sie sollten wirklich keine Low-Side-Leistung an ein RC-Hobby-Servo schalten, an das Sie vermutlich (?) Ein massebezogenes PWM-Signal ansteuern. Sie sollten einen High-Side-Schalter verwenden. Wenn Sie darauf bestehen, es wie geplant zu machen, sollten Sie sorgfältig untersuchen, was während des Einschaltens und während des Ausschaltens passiert.
Du meinst also, ich sollte stattdessen den Mosfet auf seine VCC-Leitung legen? Darf ich fragen warum (zumindest Neugier auf Wissen :))? Ich habe dieselbe Konfiguration auf dem Steckbrett ausprobiert und das Verhalten war wie beabsichtigt (außer Rauschen, aber das Hinzufügen des Kondensators hat das behoben)
Sie sollten versuchen, die Stromschleife zum Servo und vielleicht auch zum Mikro zu verfolgen. Es ist schwer zu sagen, ob Sie Bodenspuren haben, über die Sie nur einen fleckigen Bodenguss gelegt haben, oder ob Ihr Erdungspfad wirklich so verschlungen ist, wie es aussieht.
Tatsächlich habe ich diese Schleifen absichtlich gemacht, weil ich dachte, dass dies den kürzestmöglichen Weg für den Strom ermöglichen würde ... Aber wenn ich es mir noch einmal ansehe, scheint es, dass es problematisch sein könnte und dazu führen könnte, dass Strom zurückfließt. Vielen Dank für Ihr Feedback
Es gibt keine Möglichkeit, Ihre MCU zu programmieren! Es ist möglich, die seriellen Leitungen zum Programmieren zu verwenden, nachdem ein geeigneter Bootloader bereits auf die MCU programmiert wurde, der Chip jedoch zunächst leer ist. Sie müssen die SPI-Leitungen (MOSI, MISO, SCK) und RESET für die In-Circuit-Programmierung herausbringen.
Nachdem ich durchgesehen habe, kann ich FTDI alle zusammen entfernen und nur ISP mit kleineren Löchern verwenden, und die gleichen Verbindungen können für den Bootloader verwendet werden

Antworten (1)

Wenn Sie sich Sorgen über Rauschen machen, achten Sie darauf, dass Sie sich die Rückstrompfade ansehen. Der Boden sollte fest sein und einen klaren Weg bieten, um zur Quelle zurückzulaufen (Pin 6 auf dem 0,1-Zoll-Header).

Die Durchkontaktierungen, die zwischen den diskontinuierlichen Erdungsebenen verlaufen, fügen eine Induktivität von 5–10 nh und einen Widerstand von einigen Milliohm hinzu. Der Schlüssel ist, sich dessen bewusst zu sein, wenn Sie Probleme haben, die die Ursache sein könnten. Drucken Sie den Schaltplan aus und zeichnen Sie die Durchkontaktierungen als Induktoren/Widerstände ein und prüfen Sie, ob dies ein Problem für das Design darstellt.

Die orange Linie zeigt ungefähr den Weg des Rückstroms von IC1, es sieht nicht gut aus, da es nur eine Durchkontaktierung auf der Rückleitung gibt.

Machen Sie mindestens die linke Seite der Platine zu einem durchgehenden Boden.

Geben Sie hier die Bildbeschreibung ein

Die Grundebene sieht nicht gut aus, es spielt vielleicht keine Rolle, aber wenn es ein Problem gibt, kann es schwierig sein, es aufzuspüren.