Uso di ChatGPT per gli script di Altium

Ari Mahpour
|  Creato: luglio 21, 2023  |  Aggiornato: settembre 16, 2026
At a Glance

In questo articolo, Ari Mahpour spiega come utilizzare al meglio ChatGPT per lo scripting in Altium nel linguaggio DelphiScript.

Go Deeper with AI:
Chat GPT per lo scripting di Altium

 

Ormai sono passati alcuni mesi da quando le persone hanno iniziato a familiarizzare con la Generative AI e, soprattutto, con ChatGPT. Nel mio ultimo articolo, Using ChatGPT for Automated Testing, ho presentato il servizio ChatGPT, mostrato come prendere confidenza con esso e come usarlo per generare codice per eseguire test sul proprio hardware. In questo articolo vedremo come utilizzare al meglio ChatGPT per scrivere codice DelphiScript ed eseguire funzioni automatizzate all’interno di Altium stesso tramite Altium Scripting.

Per iniziare

Prima di addentrarci nell’implementazione, è importante capire con cosa abbiamo a che fare. Altium Scripting è supportato al meglio tramite DelphiScript (rispetto ad altri linguaggi). Sebbene una rapida ricerca online restituisca risultati come “È il 2022: non è ora che tu inizi a programmare in Delphi?” e titoli accattivanti come “Il linguaggio Pascal usato in Delphi è uno dei linguaggi di programmazione più popolari e universali”, io non ho mai visto Delphi usato al di fuori di Altium Designer. Questo non significa che sia un cattivo linguaggio: semplicemente non è diffuso quanto Python, C++ e altri. C’è molto da imparare con un nuovo linguaggio (soprattutto se non si è programmatori di professione), quindi Altium ha messo insieme molte risorse e persino strumenti dedicati alla programmazione in DelphiScript qui. Se vuoi approfondire davvero il linguaggio, le risorse disponibili lì possono esserti utili.

Salvare il progetto

Quando inizi a usare Altium Scripting, ti ritroverai molto rapidamente con un ampio repository di script che potresti voler salvare e/o condividere. Per creare un nuovo progetto di Scripting in Altium Designer, vai su File > New > Script > Script Project. Fai clic con il tasto destro sul progetto appena creato e vai su Add New to Project > Script Unit. Verrà così creato un nuovo file .pas che sarà il tuo script:





Chat GPT

Figura 1: Aggiunta di un file di script al progetto esistente

Vorremo salvarlo nel nostro workspace Altium 365. Per prima cosa assicurati di aver salvato il progetto in locale. Dopodiché fai nuovamente clic con il tasto destro sul progetto e vai su History & Version Control > Add Project to Version Control…





Chat GPT

Figura 2: Aggiunta del progetto al Workspace Altium 365

 

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

Generative AI completa

Ora che è tutto pronto, possiamo iniziare. ChatGPT ha il “potenziale” di scrivere completamente del codice DelphiScript dall’inizio alla fine. Uso “potenziale” invece di “capacità” perché non sempre fa tutto correttamente. Prendiamo un esempio semplice in cui chiediamo a ChatGPT di generare uno script in DelphiScript per elencare tutte le net del mio progetto. Ho iniziato con un prompt che era, a dire il vero, piuttosto vago:





ChatGPT

Figura 3: Risposta iniziale di ChatGPT

Ha capito automaticamente che volevo elencare tutte le net da un PcbDoc. In realtà le volevo dallo schematico, 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 quello che è successo dopo è che ho eseguito il codice più volte, ottenendo da Altium Designer errori come “Undeclared Identifier: eNet” oppure “Expected: in For Pin in Component. Pins Do.” Tutto ciò che ho fatto è stato riportare più volte questi errori a ChatGPT e, al quinto tentativo, ha generato il codice che stavo cercando.

È chiaro che non è eccezionale nel generare DelphiScript da zero, ma è in grado di farlo. Tienilo a mente prima di scagliare la tastiera contro il muro per la frustrazione.

Assistente AI

ChatGPT può anche essere usato più come una spalla o un programmatore alla pari. Puoi usarlo per analizzare il tuo codice, trovare bug o aiutarti a ritoccare funzioni specifiche. Possiamo prendere un esempio esistente di Altium Scripting e chiedere a ChatGPT di modificarlo in base alle nostre esigenze.

Esistono risorse online (soprattutto ospitate su GitHub) che forniscono esempi di Altium Scripting. Io utilizzerò quelli forniti ufficialmente da Altium. Si trovano qui.

Parto dall’esempio PlaceAPort che si trova in \DelphiScript Scripts\SCH\Sch_Scripts.PrjScr. Ho assegnato a ChatGPT un compito molto banale:





ChatGPT

ChatGPT mi ha fornito il codice che soddisfaceva esattamente questa richiesta. A dire il vero è piuttosto semplice se si ha una minima dimestichezza con la programmazione. Rendiamolo un po’ più difficile, in modo da richiedere una conoscenza contestuale di Altium Scripting.

Ecco il mio prompt aggiornato per ChatGPT:





Using ChatGPT for Altium Scripting

 

Al primo tentativo fallisce con un Undeclared Identifier:





ChatGPT

Figura 5: Errore del debugger di Altium Designer

Glielo faccio presente e lui si scusa, naturalmente. Fallisce di nuovo con un errore “Undeclared identifier: Name” ma, al terzo tentativo, ottengo la mia net label esattamente dove dovrebbe essere:





ChatGPT

Figura 6: Nuova net label e porta generate dagli script modificati

È evidente che, con l’aumentare della complessità, diminuiscono le probabilità che ChatGPT produca lo script corretto al primo colpo. Ho però constatato che, con un po’ di perseveranza, alla fine riesce a fare le cose correttamente, soprattutto se lo si aiuta un po’ (supponendo di comprendere il codice che sta generando). 

Conclusione

In questo articolo abbiamo iniziato con un’introduzione ad Altium Scripting, visto come creare un progetto e salvarlo nel proprio workspace Altium 365. Abbiamo poi analizzato esempi con ChatGPT in cui ha generato completamente script da zero e anche modificato script che gli avevamo fornito. Abbiamo mostrato le sue capacità e il fatto che non sempre fa tutto correttamente. Pur non essendo perfetto, può certamente fungere da guida lungo il tuo percorso con Altium Scripting. E soprattutto, è decisamente 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.

Related Technical Documentation

Risorse correlate

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