Utilizzo di ChatGPT per lo scripting di Altium

Ari Mahpour
|  Creato: luglio 21, 2023  |  Aggiornato: luglio 6, 2024
Chat GPT per lo scripting di Altium

 

Ormai sono passati alcuni mesi da quando le persone hanno iniziato a familiarizzare con l'IA Generativa e, più famosamente, con ChatGPT. Nel mio ultimo articolo, Utilizzo di ChatGPT per il Testing Automatico, ho introdotto il servizio ChatGPT, mostrato come iniziare a utilizzarlo e come usarlo per generare codice per eseguire test sul vostro hardware. In questo articolo vedremo come utilizzare al meglio ChatGPT per scrivere codice DelphiScript per eseguire funzioni automatizzate all'interno di Altium stesso utilizzando Scripting di Altium.

Primi Passi

Prima di immergerci nell'implementazione, è importante capire con cosa stiamo lavorando. Lo Scripting di Altium è meglio supportato utilizzando DelphiScript (rispetto ad altri linguaggi). Mentre una rapida ricerca online produce risultati come, "È il 2022—Non è Ora che Iniziassi a Programmare in Delphi?" e titoli accattivanti come, "Il linguaggio Pascal usato in Delphi è uno dei linguaggi di programmazione più popolari e universali", non ho mai visto Delphi usato al di fuori di Altium Designer. Questo non vuol dire che sia un cattivo linguaggio - semplicemente non è utilizzato comunemente come Python, C++, ecc. C'è molto da imparare con un nuovo linguaggio (specialmente se non si è programmatori nativi), quindi Altium ha messo insieme molte risorse e persino strumenti per la programmazione in DelphiScript qui. Se siete interessati ad approfondire il linguaggio, le risorse presenti possono essere utili.

Salvare il Vostro Progetto

Man mano che iniziate con lo Scripting di Altium, svilupperete molto rapidamente un ampio repository di script che potreste voler salvare e/o condividere. Per creare un nuovo progetto di Scripting in Altium Designer, navigate in File > Nuovo > Script > Progetto Script. Cliccate con il tasto destro sul vostro progetto appena creato e navigate in Aggiungi Nuovo al Progetto > Unità Script. Questo creerà un nuovo file .pas che sarà il vostro script:

Chat GPT

Figura 1: Aggiunta di un file script al progetto esistente

Vorremo salvare questo nel nostro workspace di Altium 365. Prima assicuratevi di aver salvato il progetto localmente. Dopo di che cliccate con il tasto destro sul progetto nuovamente e navigate in Storia & Controllo Versioni > Aggiungi Progetto al Controllo Versioni…

Chat GPT

Figura 2: Aggiunta del progetto allo Workspace di Altium 365

 

Segui le istruzioni successive per salvare il progetto nel tuo Workspace Altium 365. Per ulteriori istruzioni su come scrivere, eseguire e fare il debug del codice DelphiScript all'interno di Altium Designer consulta la documentazione di Altium.

Intelligenza Artificiale Generativa Completa

Ora che siamo tutti pronti, siamo pronti per immergerci. ChatGPT ha il "potenziale" di scrivere completamente DelphiScript dall'inizio alla fine. Uso "potenziale" invece di "capacità" qui perché non sempre ottiene le cose correttamente. Prendiamo un semplice esempio in cui chiediamo a ChatGPT di generare uno script in DelphiScript per elencare tutte le reti nel mio progetto. Ho iniziato con un prompt che era, ad essere onesti, molto vago:

ChatGPT

Figura 3: Risposta iniziale di ChatGPT

Questo ha automaticamente capito che volevo elencare tutte le reti da un PcbDoc. In realtà lo volevo dallo schema, quindi l'ho corretto:

ChatGPT

Figura 4: Uno dei tanti tentativi di ChatGPT di scrivere lo script corretto

 

Non ho mostrato tutto il codice che ha generato per me, ma ciò che è emerso dopo è stato che ho eseguito il codice più volte solo per ottenere errori da Altium Designer come "Identificatore non dichiarato: eNet," o "Previsto: in For Pin in Component. Pins Do." Tutto ciò che ho fatto è stato rispondere a ChatGPT con quegli errori più volte, e al quinto tentativo, ha generato il codice che stavo cercando.

Quello che è chiaro è che non è eccezionale nel generare DelphiScript da zero, ma ne è capace. Ricordalo prima di lanciare la tastiera contro il muro dalla frustrazione.

Assistente IA

ChatGPT può anche essere disponibile come più di un compagno o programmatore collega. Puoi usare ChatGPT per analizzare il tuo codice, trovare bug o aiutarti a modificare funzioni specifiche. Possiamo prendere un esempio di scripting Altium esistente e farlo modificare da ChatGPT per soddisfare le nostre esigenze.

Ci sono risorse là fuori (specialmente ospitate su GitHub) che forniscono esempi di scripting Altium per te. Userò quelli ufficialmente forniti da Altium. Possono essere trovati qui.

Sto iniziando con l'esempio PlaceAPort situato sotto \DelphiScript Scripts\SCH\Sch_Scripts.PrjScr. Ho dato a ChatGPT un compito molto banale:

ChatGPT

ChatGPT mi ha dato il codice che seguiva esattamente questa richiesta. Ad essere onesti, questo è piuttosto semplice se sei semi-comodo con la programmazione. Rendiamolo un po' più difficile, richiedendo una conoscenza contestuale dello scripting Altium.

Ecco il mio prompt aggiornato a ChatGPT:

Utilizzo di ChatGPT per lo scripting di Altium

 

Si blocca al primo tentativo con un Identificatore non dichiarato:

ChatGPT

Figura 5: Errore del debugger da Altium Designer

Glielo faccio sapere e si scusa, ovviamente. Fallisce di nuovo con un errore "Identificatore non dichiarato: Nome" ma, alla terza volta, ottengo la mia etichetta di rete esattamente dove dovrebbe essere:

ChatGPT

Figura 6: Nuova etichetta di rete e porta generata dagli script modificati

È ovvio che con un aumento della complessità ci sono meno possibilità che ChatGPT ottenga il tuo script corretto al primo colpo. Ho scoperto che, con persistenza, è in grado di ottenere eventualmente le cose nel modo giusto, specialmente se puoi assisterlo un po' (assumendo che tu capisca il codice che sta generando).

Conclusione

In questo articolo abbiamo iniziato con un'introduzione allo scripting di Altium, come creare un progetto e salvarlo nel tuo spazio di lavoro Altium 365. Abbiamo esplorato esempi con ChatGPT dove ha generato script completamente da zero e ha anche modificato script che gli abbiamo fornito. Abbiamo dimostrato le sue capacità e come non ottenga sempre tutto correttamente. Sebbene non sia perfetto, può certamente agire come una guida lungo il tuo percorso di scripting di Altium. Più importante, è certamente meglio averlo che non averlo affatto.

Sull'Autore

Sull'Autore

Ari è un ingegnere con una solida esperienza nei campi di progettazione, produzione, collaudo e integrazione di sistemi elettrici, meccanici e software. Ama riunire gli ingegneri addetti alla progettazione, alla verifica e al collaudo e farli lavorare insieme come un'unità affiatata.

Risorse correlate

Documentazione Tecnica Correlata

Tornare alla Pagina Iniziale
Thank you, you are now subscribed to updates.