Mi sto solo occupando della progettazione di PCB e generalmente ho difficoltà a imparare a utilizzare le GUI con i menu e il clic del mouse. Alcuni ingegneri usano qualcosa di più simile al codice per generare PCB?
Mi sto solo occupando della progettazione di PCB e generalmente ho difficoltà a imparare a utilizzare le GUI con i menu e il clic del mouse. Alcuni ingegneri usano qualcosa di più simile al codice per generare PCB?
Risposte:
Altium ha in effetti un linguaggio di scripting, diverse lingue diverse. In alcuni casi può essere logico utilizzare algoritmi, ad esempio per creare layout o parti ripetitivi posizionati esattamente in determinate posizioni.
Ad esempio, l'ho visto usato per posizionare le parti (LED) in un modello circolare, anche se con la loro introduzione di griglie a scatto con coordinate polari è molto meno probabile che valga la pena.
Abbiamo usato algoritmi per creare forme (pensate alle antenne e quel genere di cose) direttamente in formato .dxf che possono quindi essere importati in uno strato di rame.
In generale, il codice non è adatto per scopi di layout PCB, in particolare per l'attività di routing.
In EAGLE CAD, tutto ciò che puoi fare con un mouse puoi farlo dalla riga di comando. Ha anche una lingua utente in cui puoi essenzialmente programmare.
Uso il codice per generare la netlist per i miei PCB. (È molto, molto più veloce scrivere un for-loop per costruire un multiplexer N-bit piuttosto che disegnare faticosamente tutta quella roba in uno schema.) Fortunatamente, i file della netlist KiCAD sono solo testo, in un formato non documentato ma ragionevolmente facile da invertire -ingegnere.
Ho scritto una piccola libreria C # che mi permette di digitare ciò che voglio connesso a ciò (in termini di blocchi parametrici riutilizzabili di circuiti) e sputa automaticamente una netlist. Ora posso semplicemente importarlo direttamente in KiCAD e iniziare a costruire il PCB, senza dover perdere un'ora o così inutilmente disegnandone uno schema. (La biblioteca fa anche alcuni controlli molto basilari per assicurarsi che le mie istruzioni non siano completamente fasulle, anche se sospetto che KiCAD stesso farebbe meglio quel lavoro.)
Lime del PWB Kicad, d'altra parte, sono anche il testo, ma sembrano essere di gran lunga troppo complesso per generare a livello di codice. È un peccato, perché KiCAD ha come impostazione predefinita lo scaricamento di tutti i componenti direttamente uno sopra l'altro, il che mi richiede di dedicare più di 20 minuti noiosamente a separarli di nuovo in modo da poter vedere cosa diavolo sto facendo. (KiCAD ha la brutta abitudine di provare a spostare il testo anziché il componente a cui è collegato , presumibilmente solo per rendere i PCB più difficili da progettare?)
Forse un giorno riuscirò anche ad automatizzare il layout del componente iniziale; Sospetto, come altri hanno già detto, che l'attuale bit di "progettazione PCB" coinvolgerà sempre la GUI.
Non lo consiglierei, ma se lo desideri davvero puoi scrivere tu stesso la grafica del PCB, senza alcun programma PCB. Il codice è simile al seguente:
G90 *
1 G70 *
2 G54D10 *
3 G01X0Y0D02 *
4 X450Y330D01 *
5 X455Y300D03 *
6 G54D11 *
7 Y250D03 *
8 Y200D03 *
9 Y150D03 *
10 X0Y0D02 *
11 M02 *
12I numeri di riga all'estrema destra non fanno parte del file. Esaminando questo file senza alcuna conoscenza preliminare di Gerber si dedurrebbe correttamente che ogni riga rappresenta un comando macchina particolare e che l'asterisco (*) è la fine del carattere di comando. Sembra che ci siano diversi tipi di comandi: istruzioni che iniziano con G, D, M e x, y coordinate dei dati.
Fonte: https://www.artwork.com/gerber/appl2.htm
Ecco una specifica che mostra i diversi comandi
Se stai usando Kicad, guarda alcuni dei video dei colloqui al primo KiCon (2019) su Youtube. Un paio di discorsi riguardavano esplicitamente gli strumenti di scrittura dei presentatori per generare le parti, uno anche sulle connessioni. Almeno un pitone usato, che è citato come linguaggio di scripting.