Come documentate le vostre decisioni di progettazione hardware?


43

Come documentate le vostre decisioni hardware in fase di progettazione? Come evitare di porsi le seguenti domande durante la revisione di un progetto hardware realizzato in passato:

  • Perché ho scelto questo componente?
  • Perché / come ho scelto questi parametri particolari per questo componente?
  • Cosa fa questa parte del circuito?
  • Qual è la dissipazione di potenza attraverso questo componente?
  • Qual è il consumo totale di energia di questo circuito?
  • Posso sostituire questo componente con questo altro? Ci sono componenti equivalenti a questo componente? eccetera.

Qual è un buon modo per documentare le tue decisioni e i tuoi calcoli durante la fase di progettazione di un circuito? Come posso ottenere risposte alle domande precedenti senza passare di nuovo attraverso centinaia di pagine di schede tecniche?

Un modo a cui potrei pensare è quello di aggiungere note nei file schematici (se il tuo EDA lo supporta), ma non vorrei ingombrare lo schema con troppe informazioni.


1
Chi vedrà questi dettagli? Sono solo per riferimento o saranno visti da altri?
Stanari,

@Stacey La documentazione è destinata a me e agli altri designer da leggere. Mi piacerebbe rendere la maggior parte dei miei progetti futuri open source ed è molto importante che siano adeguatamente documentati.
fino al

9
@Stacey Ma davvero .. qual è la differenza? Dopo un po 'guarderai il tuo design come se fosse la prima volta che lo vedi ...
m.,

2
La differenza sta nel modo in cui le informazioni sono presentate. Un documento formale che spiega ogni decisione che hai preso in tono professionale sarà molto più lavoro che annotare rapidamente una formula e annotare i valori che hai scelto. Inoltre, se qualcun altro vedrà le note, è importante il fatto che siano digitali.
Stanari,

4
OMG Adoro questa domanda. (mi dispiace, so che non mi sta davvero aiutando, ma questo è qualcosa su cui sto lavorando in questo momento, quindi è fantastico). Proseguire.
efox29,

Risposte:


15

Personalmente seguo il percorso vecchio stile: ho un quaderno di design in cui scrivo assolutamente tutto sulle decisioni di design che prendo. Soprattutto le scelte di componenti e valori, i calcoli attuali, i calcoli dell'alimentazione, tutto. Documento anche decisioni su software / firmware e note su tempistica e utilizzo delle risorse.

Ogni notebook ha una pagina di contenuti per fare riferimento a una parte specifica del progetto (alimentatore, ecc.) E tutte le pagine sono numerate.

Ho preso in considerazione l'idea di passare al digitale diverse volte, ma è bello avere il mio taccuino davanti a me mentre lavoro e trovo che scrivere formule in formato digitale sia abbastanza imbarazzante. È molto più semplice scrivere calcoli a mano.

Quando preparo una specifica o una documentazione formale per la progettazione di una scheda, di solito mi riferisco al mio taccuino come un aggiornamento di ciò che ho fatto (o scrivo la documentazione digitale allo stesso tempo). Anche se questo può sembrare che sto facendo la stessa cosa due volte, trovo che i miei quaderni sono praticamente tutti calcoli e spiegazioni per me stesso, in cui la documentazione è molto meno dettagliata e molto più formale e esplicativa per gli altri. Come tale, non trovo spesso che sto scrivendo la stessa cosa due volte.


Concordo completamente sulla questione delle formule, ma ho smesso di usare le note di carta circa 5 anni fa. La digitazione è molto più semplice della scrittura e presenta tutti i consueti vantaggi del testo elettronico: ricercabile, inviabile, eseguibile come backup, ecc.
markt

2
Alcuni dei notebook di design più impressionanti / importanti dei nostri tempi: computerhistory.org/collections/fairchild . Un vantaggio significativo per un diario di bordo / quaderno è il disegno. Ci vuole uno sforzo significativamente maggiore per disegnare / disegnare cose sul mio laptop (anche se è più facile su un iPad - mia moglie ad esempio tiene le sue note di design sul suo iPad). Tendo a pensare graficamente, quindi faccio molto della mia progettazione disegnando diagrammi a blocchi.
Slebetman,

11

È possibile tornare indietro e aggiornare le specifiche di progettazione con queste informazioni. Oppure prendi la specifica e crea una specifica di livello inferiore in cui descrivi in ​​dettaglio cosa farai e perché, idealmente prima di iniziare gli schemi :). Quindi aggiorna mentre procedi e archivia con gli schemi.


Risposte alle domande seguenti: Bene, ciò che facciamo di solito è iniziare con le esigenze di marketing, quindi forse una risposta ingegneristica formale o solo una discussione informale. Questo è seguito da un MRD (documento sui requisiti di marketing), in parole, usando il nostro modello. Ciò include requisiti, analisi della concorrenza, dimensioni del mercato, opportunità, costi di sviluppo stimati ecc. Di solito questo è scritto da un addetto al marketing (o da qualcuno al di sopra del mio grado di remunerazione).

Questo è seguito dal PRD (documento sui requisiti del prodotto) scritto di solito dall'ingegneria, anche in un modello di parola. Questo descrive in modo più dettagliato ciò che il prodotto farà, quali pezzi sono richiesti e ad alto livello come ciascuno di essi funzionerà. Spesso includeremo qui prestazioni target, prezzo, potenza, dimensioni e altre metriche.

Questo è seguito da specifiche funzionali dettagliate per ciascuna delle sezioni. Alcuni lavori di progettazione vengono effettivamente svolti qui ben prima di essere inseriti nello schema. Ad esempio, verrà calcolata la potenza, verranno selezionate le parti e verranno condotte molte ricerche. Questo è il posto dove documenteremmo qualsiasi decisione di progetto non ovvia.

Finalmente arriveremo agli schemi, che è la parte facile a questo punto perché gran parte del duro lavoro di progettazione è stato fatto nella fase delle specifiche. Dove dovrebbe essere fatto secondo me :) Se qualcosa cambia durante la fase schematica, per esempio scopriamo che qualcosa non funzionerà o che un addetto al marketing corre correndo nella hall dicendo che ora deve essere rosso anziché blu, quindi noi tornerà indietro e aggiornerà le specifiche.

Tutte le specifiche, PRD, MRD sono conservate in SVN con collegamenti ai documenti su un wiki interno. Una modifica alle specifiche comporterà un aggiornamento di SVN e una notifica alle parti interessate. Ovviamente potresti semplicemente tenerlo manualmente in una cartella condivisa da qualche parte.

Questo è più o meno il mio processo, sento che potresti voler documentare ogni piccola decisione presa su un design e sicuramente non lo facciamo. Non dicendo che non dovresti, ho potuto vedere dove sarebbe stato utile. Immagino che di solito documentiamo sempre il come e non il perché.


Ok forse avrei dovuto anche affrontare ogni domanda :)

Se stai facendo calcoli, in Excel forse? O sulla carta e pensi che i risultati e il metodo siano importanti per la comprensione e la progettazione del tuo circuito, quindi dovresti includerli nella sezione appropriata delle specifiche di progettazione. Anche se ciò significa scattare una foto del tuo disegno a mano :)

Perché ho scelto questo componente? Penso che le specifiche funzionali siano un buon posto per questo, non c'è bisogno di impazzire, ma solo una linea o due su quali siano i suoi vantaggi. Lo riserverei per componenti critici, non penso che tu voglia descrivere perché hai scelto un resistore pull-up per esempio.

Perché / come ho scelto questi parametri particolari per questo componente? Combina questo con sopra.

Cosa fa questa parte del circuito? Questo farebbe parte delle tue specifiche funzionali, se il circuito è abbastanza importante da giustificare questa domanda dovrebbe avere una sua sezione delle specifiche.

Qual è la dissipazione di potenza attraverso questo componente? Se stai parlando dell'alimentatore, inseriscilo nella sezione di alimentazione, anche a me piace notare questo negli schemi. In realtà tutte le mie parti provengono da un database e lo schema è direttamente collegato ad esse in modo da poter vedere facilmente i parametri, la scheda tecnica ecc. Ma se hai solo una stampa è bello conoscerne alcune.

Qual è il consumo totale di energia di questo circuito? Penso che questo appartenga alla sezione alimentatore della tua specifica.

Posso sostituire questo componente con questo altro? Ci sono componenti equivalenti a questo componente? ecc. Questo penso che appartenga alla tua DBA o qualunque processo tu usi per la produzione. Le parti alternative facilitano l'approvvigionamento. Ancora una volta per noi tutto questo sta uscendo da un database delle parti.


Mi sono reso conto che devo documentare il mio progetto (da qui la domanda), ma non conosco un buon metodo per farlo. Scrivo le mie note in un file di testo, inserisco le note direttamente nello schema, scrivo le note su carta e le scannerizzo? Come posso mantenere sincronizzate le note di decisione del progetto con il progetto e cosa dovrebbero contenere realmente le note? Qual è il metodo di documentazione che funziona per te?
fino al

1
@ m.Alin SHG sembra funzionare come me e ha un documento di specifiche che viene fatto prima di lavorare su uno schema. Questo documento dovrebbe avere requisiti dettagliati per il circuito, informazioni sul sistema generale, ragionamento alla base delle decisioni più importanti, ecc. Questo documento documenta il processo di pensiero ed elenca i requisiti che è quindi possibile prendere per progettare lo schema. Questa è la strada da percorrere in un ambiente professionale, ma puoi scappare con notebook e simili se stai facendo il design a casa. Di solito tengo una cartella sul mio server di lavoro con
I. Wolfe,

1
Esaurito lo spazio ... -con il documento delle specifiche, la documentazione di prova, gli schemi a blocchi dell'intero sistema, i fogli dati per eventuali parti critiche, ecc. Tutto in una sottocartella (la cartella pianificazione / specifica) nella cartella del progetto. In una cartella separata avrei lo schema, il layout del pcb e tutta la documentazione relativa all'assemblaggio / produzione. Idealmente, vorresti che qualcuno fosse in grado di ottenere tutte le informazioni di cui ha bisogno da un unico documento, ma a volte non c'è bisogno di spostarsi in cerca di un foglio dati o di informazioni / calcoli di test dettagliati.
I. Wolfe,

aggiunto alcuni commenti sul nostro processo in linea
Some Hardware Guy

4
+1 per l'utilizzo del controllo versione per documenti critici. Tutti dovrebbero usarlo, anche un singolo ingegnere autonomo.
Lior Bilia,

5

Faccio molto design a rotazione rapida e devo dire: annotare lo schema è di gran lunga la cosa più conveniente. È raro che uno qualsiasi dei miei progetti sia più di 2 o 3 fogli A4, quindi la quantità di decisioni progettuali è limitata. Molte decisioni di progettazione sono praticamente automatiche; Non ho bisogno di elencare i motivi per ogni singola parte. Solo una o due parti principali e forse un filtro o un dimensionamento passivo di rilevamento. Il resto è immediatamente evidente a qualsiasi ingegnere progettista esperto.

Per quanto riguarda la tua ultima domanda: le parti alternative non sono generalmente una decisione di progettazione ma una decisione di approvvigionamento e come tale fanno parte del flusso di lavoro di approvvigionamento. Nel mio caso, le parti alternative sono nelle proprietà delle mie parti e vengono acquistate automaticamente se lo stock si esaurisce sulla parte principale o sull'origine.

Per progetti più grandi e per la progettazione di sistemi, tendo a utilizzare Google Documenti con un modello di documento di progettazione.

In sintesi; Personalmente sono dell'opinione che un flusso di lavoro compatto alla fine ripagherà. Avere molti file separati con informazioni di progettazione (progettazione di sistema separata, documenti di decisione di progettazione, documenti di provenienza, tutti separati dai file di schema e layout di base) provoca un sacco di disordine (mentale) e richiede il cambio di contesto ogni volta che si desidera rivedere un progetto decisione. Avere tutto in un unico posto funziona bene. Se il tuo schema inizia a sembrare ingombra, questo non è un problema con questo flusso di lavoro, ma piuttosto significa che dovresti probabilmente compartimentare meglio il tuo design, usare più fogli o usare fogli più grandi.


3
Di solito è meglio avere un documento di specifica, almeno in un ambiente professionale. Ad esempio, se voglio sapere perché ho scelto un valore di fusibile, sarebbe bene sapere che la mia uscita consuma 700 mA per 50 uS e quindi 300 mA per 3 s. Queste informazioni ingombrano solo uno schema in cui tutto ciò che è necessario inserire è la classificazione dei fusibili, ma potrebbe essere necessario ad un certo punto. Ci sono anche circostanze in cui ho avuto 6 servi che scappano da un regolatore e ho bisogno di sapere quanti motori funzioneranno contemporaneamente. Ancora una volta qualcosa di necessario, ma non sullo schema.
I. Wolfe,

1
Certo, le opinioni varieranno. Tutto quello che sto dicendo è che con oltre 200 disegni sotto la cintura trovo che funzioni davvero bene. "Professionista" non deve necessariamente indicare un protocollo e una metodologia rigorosi; per progetti relativamente piccoli (che è la maggior parte di quello che faccio) funziona bene. I progetti più grandi e in particolare il design collaborativo (che è molto raro ai giorni nostri, anche cose come Raspberry Pi sono progettate e disposte dallo stesso ragazzo) richiedono tuttavia un po 'più di piastra.
user36129

4

Per molti dei miei progetti più piccoli, ho generalmente posizionato una semplice etichetta verde e un bordo attorno ai sotto-circuiti. Per progetti più grandi, alcuni software eCAD consentono di creare da uno schema a blocchi verso il basso, in cui ogni foglio descrive ulteriormente un singolo blocco. C'è un'arte nel decomporre qualsiasi problema e gestire i compromessi (che è ingegneria IMHO). Dove c'è chiaramente qualche analisi per la scelta di componenti come il filtro analogico, noterò la frequenza di taglio e il tipo di filtro (ad es. Filtro passa-basso (f_c = 100Hz))

I blocchi comuni in cui mi imbatto e di nuovo includono:

  • Gestione dell'alimentazione (regolatori di tensione, protezione da inversione di polarità, diodi TVS, interruttore di alimentazione, cappucci di bypass, ecc.)
  • MCU (microcontrollore, header o pad di programmazione, cappucci di bypass del chip)
  • Indicatori (ad es. LED, filo EL, display a 7 seg, motore vib)
  • Rilevamento per una particolare funzione (ad es. Rilevamento corrente, rilevamento tocco, GSR, attività, rilevamento ambientale, ecc.)
  • Comunicazioni di debug (tallone di ferrite, USB, I2C, UART, SPI, in qualche modo per ottenere informazioni)
  • Radio (tutti i componenti di supporto per molte radio)
  • Video (tutti i componenti di supporto e i chip per una fotocamera)
  • Memoria esterna (ad esempio Flash esterno, chip EEPROM per memorizzare le impostazioni, ecc.)
  • Qualsiasi altra caratteristica unica per il tuo design

Con questi sottoblocchi chiaramente organizzati ed etichettati, posso consumare uno schema in genere in meno di un paio di minuti.


3

Tengo un quaderno di design e documento attentamente i bisogni / desideri. Per i primi prototipi, passerò alla selezione delle parti, prendendo appunti su tutte le decisioni reali. Per le successive modifiche, utilizzo un processo FMEA abbastanza formale, che documenta quali esigenze non vengono soddisfatte in modo da giustificare un cambiamento - perché ovviamente, se non vi è necessità insoddisfatta, non è necessario un cambiamento!

Se sono abbastanza rigoroso al riguardo, posso tenere traccia di ogni cambiamento di progettazione (hardware, software, meccanica) in base alle necessità.

Tutte le versioni di tutte le cose sono tracciate usando la sovversione.

Questo può essere un componente sostanziale di un file di cronologia del design, che è un must per la FDA.


3

Ho usato spesso keynote (puoi anche scegliere di usare PowerPoint). Ciò ha il vantaggio di consentire le protezioni dello schermo di software di simulazione come GUI SPICE e simili.

La chiave per me è davvero la possibilità di inserire frammenti dalle schede tecniche e contrassegnarli in modo da mostrare le relative importanza nelle mie decisioni di progettazione. Posso anche includere foto di circuiti stampati o breadboard e collegamenti ad articoli che ho usato per fare scelte di design.

Trovo anche che tendo a voler fare matematica e disegni usando la matita su carta. Quindi faccio una foto con il mio telefono e la inserisco nel keynote senza dover riscrivere. A volte per brevi equazioni posso usare LaTeX e rilasciarlo.

Posso anche includere grafici disegnati da software scientifici come l'ottava.

Al giorno d'oggi, in particolare per le attività ad alta intensità computazionale, potrei scegliere di fare un po 'di questo lavoro nei notebook IPython, ma non l'ho fatto specificamente per la progettazione di circuiti, solo per il calcolo della fisica.

Infine, Keynotes / Powerpoint sono facili da individuare per gli altri ed esportarli come pdf per la distribuzione a persone non / meno tecniche.


3

Inserire le note tecniche sugli schemi e, se necessario, creare più fogli. Metto sempre note di ingegneria su tutti i miei schemi perché nel mio mondo potrei dover visitare di nuovo 1/2 disegni al forno per un certo periodo di tempo, quindi rimetterlo sul back-burner mentre raccolgo un altro disegno; flusso di progettazione molto fluido. Queste note EE aiutano me e altri a riabbracciare l'intento progettuale con poco sforzo. Uso anche diversi colori di testo / grafica per indicare l'importanza o il contesto. Esempio sotto ...inserisci qui la descrizione dell'immagine

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.