Korzystanie z ChatGPT do tworzenia skryptów w Altium

Ari Mahpour
|  Utworzono: lipiec 21, 2023  |  Zaktualizowano: wrzesień 16, 2026
At a Glance

W tym artykule Ari Mahpour omawia, jak najlepiej wykorzystać ChatGPT do skryptowania w Altium w języku DelphiScript.

Go Deeper with AI:
Chat GPT dla skryptów Altium

 

Do tej pory minęło już kilka miesięcy, odkąd użytkownicy mogli zapoznać się z generatywną AI, a przede wszystkim z ChatGPT. W moim poprzednim artykule, Using ChatGPT for Automated Testing, przedstawiłem usługę ChatGPT, pokazałem, jak się z nią oswoić, i jak używać jej do generowania kodu uruchamiającego testy na Twoim sprzęcie. W tym artykule przyjrzymy się temu, jak najlepiej wykorzystać ChatGPT do pisania kodu DelphiScript do uruchamiania zautomatyzowanych funkcji wewnątrz samego Altium przy użyciu Altium Scripting.

Pierwsze kroki

Zanim przejdziemy do implementacji, ważne jest, aby zrozumieć, z czym tutaj pracujemy. Altium Scripting jest najlepiej wspierany przy użyciu DelphiScript (w porównaniu z innymi językami). Chociaż szybkie wyszukiwanie w internecie daje wyniki w rodzaju „Mamy 2022 rok — czy to nie czas, aby zacząć programować w Delphi?” oraz chwytliwe nagłówki takie jak „Język Pascal używany w Delphi jest jednym z najpopularniejszych i najbardziej uniwersalnych języków programowania”, nigdy nie spotkałem się z użyciem Delphi poza Altium Designer. Nie oznacza to, że jest to zły język — po prostu nie jest tak powszechnie używany jak Python, C++ itd. Nauka nowego języka wiąże się z wieloma wyzwaniami (zwłaszcza jeśli nie jesteś programistą z wykształcenia), dlatego Altium przygotowało wiele zasobów, a nawet narzędzi związanych z programowaniem w DelphiScript tutaj. Jeśli chcesz naprawdę zagłębić się w ten język, dostępne tam materiały mogą okazać się pomocne.

Zapisywanie projektu

Gdy zaczniesz pracę z Altium Scripting, bardzo szybko zbudujesz duże repozytorium skryptów, które możesz chcieć zapisać i/lub udostępnić. Aby utworzyć nowy projekt Scripting w Altium Designer, przejdź do File > New > Script > Script Project. Kliknij prawym przyciskiem myszy nowo utworzony projekt i przejdź do Add New to Project > Script Unit. Spowoduje to utworzenie nowego pliku .pas, który będzie Twoim skryptem:





Chat GPT

Rysunek 1: Dodawanie pliku skryptu do istniejącego projektu

Będziemy chcieli zapisać go w naszym obszarze roboczym Altium 365. Najpierw upewnij się, że projekt został zapisany lokalnie. Następnie kliknij ponownie prawym przyciskiem myszy projekt i przejdź do History & Version Control > Add Project to Version Control…





Chat GPT

Rysunek 2: Dodawanie projektu do przestrzeni roboczej Altium 365

 

Następnie postępuj zgodnie z wyświetlanymi instrukcjami, aby zapisać projekt w swojej przestrzeni roboczej Altium 365. Dalsze instrukcje dotyczące pisania, uruchamiania i debugowania kodu DelphiScript w Altium Designer znajdują się w dokumentacji Altium.

Pełna generatywna AI

Skoro wszystko jest już skonfigurowane, możemy przejść dalej. ChatGPT ma „potencjał”, aby całkowicie napisać kod DelphiScript od początku do końca. Używam tu słowa „potencjał” zamiast „możliwość”, ponieważ nie zawsze robi to poprawnie. Weźmy prosty przykład, w którym prosimy ChatGPT o wygenerowanie skryptu w DelphiScript, który wyświetli wszystkie sieci w moim projekcie. Zacząłem od polecenia, które — uczciwie mówiąc — było bardzo ogólne:





ChatGPT

Rysunek 3: Początkowa odpowiedź ChatGPT

Automatycznie zrozumiał, że chcę wyświetlić wszystkie sieci z PcbDoc. W rzeczywistości chodziło mi o schemat, więc go poprawiłem:





ChatGPT

Rysunek 4: Jedna z wielu prób ChatGPT napisania poprawnego skryptu

 

Nie pokazuję całego kodu, który dla mnie wygenerował, ale dalej wyglądało to tak, że uruchamiałem kod wielokrotnie, tylko po to, by Altium Designer zgłaszał błędy takie jak „Undeclared Identifier: eNet” albo „Expected: in For Pin in Component. Pins Do.”. Za każdym razem po prostu przekazywałem te błędy do ChatGPT, i przy piątej próbie wygenerował kod, którego szukałem.

Jasne jest więc, że nie radzi sobie znakomicie z generowaniem DelphiScript od zera, ale jest do tego zdolny. Warto o tym pamiętać, zanim w przypływie frustracji rzucisz klawiaturą o ścianę.

Pomocnik AI

ChatGPT może też pełnić rolę pomocnika lub partnerskiego programisty. Możesz używać ChatGPT do analizowania swojego kodu, znajdowania błędów albo pomocy w dostosowywaniu konkretnych funkcji. Możemy wziąć istniejący przykład Altium Scripting i poprosić ChatGPT o zmodyfikowanie go tak, aby odpowiadał naszym potrzebom.

Istnieją zasoby (szczególnie hostowane na GitHubie), które udostępniają przykłady Altium Scripting. Ja skorzystam z tych oficjalnie udostępnionych przez Altium. Można je znaleźć tutaj.

Zaczynam od przykładu PlaceAPort znajdującego się w \DelphiScript Scripts\SCH\Sch_Scripts.PrjScr. Zleciłem ChatGPT bardzo trywialne zadanie:





ChatGPT

ChatGPT zwrócił kod, który dokładnie spełniał tę prośbę. Szczerze mówiąc, to dość proste, jeśli czujesz się w miarę swobodnie z programowaniem. Podnieśmy więc nieco poprzeczkę i wybierzmy coś, co wymaga kontekstowej znajomości Altium Scripting.

Oto moje zaktualizowane polecenie dla ChatGPT:





Using ChatGPT for Altium Scripting

 

Przy pierwszej próbie pojawia się błąd Undeclared Identifier:





ChatGPT

Rysunek 5: Błąd debuggera z Altium Designer

Poinformowałem go o tym i oczywiście przeprosił. Potem znów pojawił się błąd „Undeclared identifier: Name”, ale za trzecim razem etykieta sieci znalazła się dokładnie tam, gdzie powinna:





ChatGPT

Rysunek 6: Nowa etykieta sieci i port wygenerowane przez zmodyfikowane skrypty

Nietrudno zauważyć, że wraz ze wzrostem złożoności maleje szansa, że ChatGPT od razu poprawnie wygeneruje skrypt. Zauważyłem jednak, że przy odrobinie wytrwałości ostatecznie potrafi dojść do właściwego rozwiązania, zwłaszcza jeśli trochę mu pomożesz (zakładając, że rozumiesz kod, który generuje). 

Podsumowanie

W tym artykule zaczęliśmy od wprowadzenia do Altium Scripting, omówienia sposobu tworzenia projektu i zapisywania go w przestrzeni roboczej Altium 365. Następnie przeszliśmy do przykładów z ChatGPT, w których całkowicie generował skrypty od podstaw, a także modyfikował skrypty, które mu dostarczyliśmy. Pokazaliśmy jego możliwości oraz to, że nie zawsze robi wszystko poprawnie. Choć nie jest doskonały, z pewnością może pełnić rolę przewodnika podczas Twojej pracy z Altium Scripting. Co najważniejsze, zdecydowanie lepiej go mieć, niż go nie mieć wcale.

About Author

About Author

Ari jest inżynierem z rozległym doświadczeniem w projektowaniu, produkcji, testowaniu i integracji systemów elektrycznych, mechanicznych i oprogramowania. Jego pasją jest łączenie inżynierów zajmujących się projektowaniem, weryfikacją i testowaniem, aby pracowali jako jeden zespół.

Powiązane zasoby

Related Technical Documentation

Powrót do strony głównej
Thank you, you are now subscribed to updates.