Wykorzystanie ChatGPT do skryptowania w Altium

Ari Mahpour
|  Utworzono: lipiec 21, 2023  |  Zaktualizowano: lipiec 6, 2024
Chat GPT dla skryptów Altium

 

Od pewnego czasu ludzie mieli okazję zapoznać się z AI generatywnym, a najbardziej znanym ChatGPT. W moim ostatnim artykule, Używanie ChatGPT do automatycznego testowania, przedstawiłem usługę ChatGPT, pokazałem, jak się z nią zapoznać i używać jej do generowania kodu do przeprowadzania testów na twoim sprzęcie. W tym artykule przyjrzymy się, jak najlepiej wykorzystać ChatGPT do pisania kodu DelphiScript do uruchamiania automatycznych funkcji w samym Altium za pomocą Skryptowania Altium.

Rozpoczynanie

Zanim zagłębimy się w implementację, ważne jest, aby zrozumieć, z czym mamy do czynienia. Skryptowanie w Altium jest najlepiej obsługiwane przy użyciu DelphiScript (w porównaniu z innymi językami). Podczas gdy szybkie wyszukiwanie w internecie daje wyniki takie jak „To 2022—Czy nie czas, abyś zaczął programować w Delphi?” i chwytliwe nagłówki takie jak „Język Pascal, który jest używany w Delphi, jest jednym z najbardziej popularnych i uniwersalnych języków programowania”, nigdy nie widziałem użycia Delphi poza Altium Designer. To nie znaczy, że to zły język - po prostu nie jest tak powszechnie używany jak Python, C++ itp. Nauka nowego języka (szczególnie jeśli nie jesteś programistą z zawodu) może być dużym wyzwaniem, dlatego Altium przygotowało wiele zasobów i nawet narzędzia do kodowania w DelphiScript tutaj. Jeśli chcesz zgłębić ten język, zasoby te mogą być pomocne.

Zapisywanie projektu

Gdy zaczniesz pracować ze skryptowaniem w Altium, bardzo szybko zgromadzisz dużą kolekcję skryptów, które będziesz chciał zapisać i/lub udostępnić. Aby utworzyć nowy projekt skryptowania w Altium Designer, przejdź do Plik > Nowy > Skrypt > Projekt skryptu. Kliknij prawym przyciskiem myszy na nowo utworzonym projekcie i przejdź do Dodaj nowy do projektu > Jednostka skryptu. Spowoduje to utworzenie nowego pliku .pas, który będzie twoim skryptem:

Chat GPT

Rysunek 1: Dodawanie pliku skryptu do istniejącego projektu

Chcemy zapisać to w naszej przestrzeni roboczej Altium 365. Najpierw upewnij się, że zapisałeś projekt lokalnie. Następnie kliknij prawym przyciskiem myszy na projekt ponownie i przejdź do Historia & Kontrola wersji > Dodaj projekt do kontroli wersji…

Chat GPT

Rysunek 2: Dodawanie projektu do przestrzeni roboczej Altium 365

 

Postępuj zgodnie z poleceniami, aby zapisać projekt w swoim obszarze roboczym Altium 365. Aby uzyskać dalsze instrukcje dotyczące pisania, uruchamiania i debugowania kodu DelphiScript w Altium Designer, zapoznaj się z dokumentacją Altium.

Pełna generatywna AI

Teraz, gdy wszystko jest gotowe, możemy zacząć. ChatGPT ma "potencjał", aby całkowicie napisać skrypt DelphiScript od początku do końca. Używam tutaj słowa "potencjał" zamiast "zdolność", ponieważ nie zawsze wszystko robi poprawnie. Weźmy prosty przykład, w którym prosimy ChatGPT o wygenerowanie skryptu w DelphiScript, który wylistuje wszystkie sieci w moim projekcie. Zaczęłam od polecenia, które było, szczerze mówiąc, bardzo ogólne:

ChatGPT

Rysunek 3: Początkowa odpowiedź ChatGPT

Automatycznie zrozumiał, że chcę wylistować wszystkie sieci z PcbDoc. Tak naprawdę chciałem to zrobić ze schematu, więc go poprawiłem:

ChatGPT

Rysunek 4: Jedna z wielu prób ChatGPT, aby napisać poprawny skrypt

 

Nie pokazałem całego kodu, który dla mnie wygenerował, ale co się potem wydarzyło, to uruchamiałem kod wielokrotnie, tylko po to, aby Altium Designer zakończył się błędami takimi jak "Nieokreślony identyfikator: eNet" lub "Oczekiwano: in For Pin in Component. Pins Do." Wszystko, co zrobiłem, to kilkakrotnie odpowiadałem ChatGPT tymi błędami, i za piątym razem wygenerował kod, którego szukałem.

Co jest jasne, to fakt, że nie jest świetny w generowaniu DelphiScript od zera, ale jest do tego zdolny. Pamiętaj o tym, zanim rzucisz klawiaturą o ścianę z frustracji.

Pomocnik AI

ChatGPT może być również dostępny jako bardziej pomocnik lub programista współpracujący. Możesz użyć ChatGPT do analizy kodu, znajdowania błędów lub pomocy w dostosowywaniu konkretnych funkcji. Możemy wziąć istniejący przykład skryptu Altium i sprawić, by ChatGPT dostosował go do naszych potrzeb.

Istnieją zasoby (szczególnie hostowane na GitHubie), które dostarczają przykłady skryptów Altium. Skorzystam z tych oficjalnie dostarczonych przez Altium. Można je znaleźć tutaj.

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

ChatGPT

ChatGPT dał mi kod, który dokładnie odpowiadał temu żądaniu. Szczerze mówiąc, to jest dość proste, jeśli jesteś w miarę komfortowy z programowaniem. Spróbujmy czegoś trudniejszego, co wymaga kontekstowej wiedzy o skryptach Altium.

Oto moje zaktualizowane polecenie do ChatGPT:

Korzystanie z ChatGPT do skryptów w Altium

 

Na pierwszym strzale kończy się niepowodzeniem z błędem Niezadeklarowanej Identyfikacji:

ChatGPT

Rysunek 5: Błąd debuggera z Altium Designer

Informuję o tym i oczywiście otrzymuję przeprosiny. Ponownie kończy się niepowodzeniem z błędem „Niezadeklarowana identyfikacja: Nazwa”, ale za trzecim razem otrzymuję moją etykietę sieci dokładnie tam, gdzie powinna być:

ChatGPT

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

Jest oczywiste, że wraz ze wzrostem złożoności, ChatGPT ma mniejsze szanse, aby od razu poprawnie wygenerować skrypt. Odkryłem jednak, że z wytrwałością, jest w stanie ostatecznie osiągnąć zamierzony cel, szczególnie jeśli możesz mu trochę pomóc (zakładając, że rozumiesz generowany przez niego kod).

Podsumowanie

W tym artykule zaczęliśmy od wprowadzenia do skryptów w Altium, jak stworzyć projekt i zapisać go w swojej przestrzeni roboczej Altium 365. Zagłębiliśmy się w przykłady z ChatGPT, gdzie całkowicie generował skrypty od zera, a także modyfikował skrypty, które mu dostarczyliśmy. Zaprezentowaliśmy jego możliwości i jak nie zawsze wszystko wychodzi poprawnie. Chociaż nie jest doskonały, z pewnością może służyć jako przewodnik przez Twoją podróż z skryptami Altium. Co najważniejsze, zdecydowanie lepiej jest go mieć, niż w ogóle go nie posiadać.

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

Powiązana dokumentacja techniczna

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