Frage:
Was entspricht einem täglichen Bau (und Rauchtest) für schematische Entwürfe?
Brian Carlton
2011-01-21 22:49:36 UTC
view on stackexchange narkive permalink

Tägliches Erstellen in Software nimmt den Quellcode, kompiliert ihn und generiert die ausführbaren Dateien. Anschließend wird er jede Nacht ausgeführt. Dies wird als bewährte Methode angesehen, da Fehler abgefangen werden, die den Build eher früher als später verhindern, wodurch die Behebung einfacher wird. Und wenn der Build funktioniert, können andere sicherstellen, dass sie keine Fehler einführen.

Was wäre das Äquivalent für einen schematischen Entwurf? Natürlich kann ich die Leiterplatte nicht bauen, aber es gibt möglicherweise mehr als das Generieren der Netzliste.

Bearbeiten 21.01.11: Auch bei einem Rauchtest werden einige Tests durchgeführt der Build. Wieder nicht möglich. Ich mag die DRC-Idee (Design Rule Check), ich denke an solche Prüfungen.

Edit 24.01.11: Ich habe an den Schaltplan gedacht, da ich das mache und nicht an den PCB.

Von der Verwendung von [Meta-Tags] (http://meta.electronics.stackexchange.com/questions/115/what-meta-tags-on-er-should-be-axed) wie [Best Practices] wird abgeraten .
Ermöglicht Ihnen Ihr Schaltplanerfassungsprogramm (möglicherweise durch Export oder Import) die Ausführung einer Simulation? gEDA verfügt über viele Tools, die leicht automatisiert werden können, um Spice- oder Verilog-Simulationen auszuführen.
Beziehen Sie sich auch auf den Schaltplan oder das Leiterplattenlayout? Das Erstellen der Leiterplatte (auch wenn dies machbar war) ist eher von Fehlern getrennt, die ich auf einem Schaltplan erwarten würde. Leiterplatten haben ihre eigenen Probleme.
Es gibt Echtzeit-DRCs ... nah genug?
Eine Simulation aus dem tatsächlichen Schaltplan ist für die meisten realen Konstruktionen jeglicher Komplexität nicht wirklich möglich. Es ist besser, das Brett früh zu drehen und das erste wegzuwerfen. http://c2.com/cgi/wiki?PlanToThrowOneAway
@markrages: Überall, wo ich gearbeitet habe, ist es politisch unmöglich, einen wegzuwerfen. Vielleicht eine Pause machen, aber nicht von vorne anfangen.
Fünf antworten:
AngryEE
2011-01-21 22:57:10 UTC
view on stackexchange narkive permalink

Ich glaube nicht, dass es ein Analogon zum täglichen Build für Hardware gibt. Es kann möglich sein, das Einchecken eines Schaltplans nicht zuzulassen, wenn er DRC (oder möglicherweise Simulation) nicht besteht, aber das ist ungefähr alles, was mir einfällt. Software-Leute haben den Vorteil, dass sie das fertige Produkt (größtenteils) sofort ausführen können und viele automatisierte Tools erhalten. Schematische Erfassungsprogramme und Simulatoren sind in Bezug auf Automatisierung, Versionierung usw. größtenteils nicht auf dem neuesten Stand, und es ist wirklich eine Schande. Ich würde gerne sehen, dass der Software-Design-Prozess für Hardware so gut wie möglich nachgeahmt wird, aber ich bezweifle, dass dies durchaus möglich sein wird.

dren.dk
2011-01-22 01:47:29 UTC
view on stackexchange narkive permalink

Ein kleiner Fehler: Nur wirklich schlampige Entwickler verwenden tägliche Builds, da ein Build pro Tag bedeutet, dass Sie bis zu einem Tag warten müssen, um herauszufinden, ob Sie den Build gebrochen haben.

Die beste Lösung ist das Erstellen von und Testen Sie jede einzelne Änderung einzeln, bevor sie in den öffentlichen Zweig gelangt, und setzen Sie die Änderung zurück, wenn der Build in irgendeiner Weise beschädigt wird.

Es kann sehr schwierig sein, automatische Tests an einem Schaltplan oder einem Board-Layout durchzuführen unmöglich, aber alles, was Sie automatisieren können, sollte über etwas wie Hudson automatisiert werden. Dinge, die Ihnen in den Sinn kommen, sind:

  • ERC
  • DRC
  • Stücklistenaktualisierung (Überprüfen Sie, ob die Teile vorhanden sind, verfügbar sind, und berechnen Sie die Gesamtkosten.)
  • Generieren Sie Gerbers und andere Herstellungsdateien.
  • Generieren Sie PDFs der Schaltplan- und Leiterplattenebenen sowie 3D-Renderings der PDB, Stücklistendifferenz und andere Dokumentationen.
  • Legen Sie eine E-Mail mit der Festschreibungsnachricht und den Links zu den Ausgabedateien an die Entwickler-Mailingliste, damit Entwickler die Änderung problemlos überprüfen können. L. i>

Die Anzahl der Fehler, die automatisch abgefangen werden können, ist möglicherweise nicht besonders hoch. Wenn das CI-System jedoch die Ausgabedateien generiert, bedeutet dies, dass dies jedes Mal korrekt geschieht und Sie einige dumme Fehler nicht vergessen Einstellung bei manueller Ausführung.

Tägliche Builds sind jetzt weniger wichtig, da ein Build normalerweise in weniger als 30 Sekunden ausgeführt werden kann. Ein Master-Build einmal am Tag als Doppelprüfung tut jedoch nicht weh.
In KiCAD wird der schematische ERC als "Schematic Electric Rules Check" bezeichnet - im Schaltplanfenster befindet sich eine Schaltfläche dafür. In [gEDA] heißt der schematische ERC (http://www.geda.seul.org/wiki/geda:faq-gnetlist#how_do_i_check_my_schematics) "drc2" - es gibt ein Befehlszeilentool zum Ausführen der Prüfung.
Dr. Watson
2011-01-22 01:53:27 UTC
view on stackexchange narkive permalink

Ich nehme an, wenn Ihre Tools dies unterstützen, können Sie Netzlisten exportieren und etwas damit tun, das Sie als sehr repetitiv und banal empfinden.

Eine nützliche Sache, die ich mir vorstellen kann, ist die Erstellung der Stückliste. Ich habe in einer kleinen Firma gearbeitet, die die Hardware-Schaltpläne und Netzlisten entworfen und die Teile spezifiziert hat, und dann haben wir das Layout an PCB-Design-Experten ausgelagert.

Wir hatten ein sehr hilfreiches Excel VBA-Programm zum Einlesen die Netzliste und generieren Sie die Teileliste aus einer Datenbank von Teilen.

Toby Jaffey
2011-01-21 23:18:22 UTC
view on stackexchange narkive permalink

Die Idee eines täglichen Software-Builds besteht darin, Probleme zu erkennen, die durch Änderungen verursacht werden.

Wenn Sie den Schaltplan ändern, müssen Sie die Leiterplatte vor der Herstellung testen. Sie können die Risiken durch reduzieren Protokollieren und Überprüfen aller Änderungen.

markrages
2011-01-25 03:20:55 UTC
view on stackexchange narkive permalink

Ich denke, das nächste Äquivalent besteht darin, das Produktionstestgerät und das Testskript für Ihre Schaltung so schnell wie möglich zu entwickeln. Stellen Sie sicher, dass Sie alle wichtigen Funktionen testen. Die Testvorrichtung emuliert, welche Benutzeroberfläche und Sensorhardware an der Schaltung angebracht sind. Das Testskript "Design Verification" wird wahrscheinlich mehr Tests haben und länger dauern als das Produktionstestskript, bei dem Sie hauptsächlich testen, ob die Teile ordnungsgemäß miteinander verbunden sind.

Wenn Sie also Änderungen an der Firmware oder vornehmen Auf der Schaltung selbst können Sie gelegentlich den Entwurfsüberprüfungstest durchführen, um sicherzustellen, dass Sie keine Regressionen verursacht haben. Es ist auch hilfreich, reduzierte Testskripte zu erstellen, um einen Aspekt der Leistung der Schaltung zu testen, z. B. das Testen der Reaktion über Liefervariationen hinweg oder eine besonders knifflige Zustandsmaschine, für deren Versuch ein Mensch zwei Seiten mit Anweisungen benötigt. Diese Kurzskripte sollen Zeit sparen und eine bessere Testabdeckung bieten als das Vollskript. Sie führen den Überprüfungstest jedoch immer durch, bevor Sie Änderungen am Schaltplan oder an der Firmware vornehmen. Führen Sie für das endgültig freigegebene Design den Verifikationstest über die Temperatur hinweg durch.



Diese Fragen und Antworten wurden automatisch aus der englischen Sprache übersetzt.Der ursprüngliche Inhalt ist auf stackexchange verfügbar. Wir danken ihm für die cc by-sa 2.0-Lizenz, unter der er vertrieben wird.
Loading...