Skocz do zawartości

Jak AI radzi sobie z elektroniką? Schematy blokowe, ideowe i projektowanie PCB


Pomocna odpowiedź

Napisano (edytowany)

Sztuczna inteligencja na dobre zagościła w naszym codziennym życiu, szczególnie tam, gdzie pracujemy z tekstem lub kodem. Moje artykuły również przechodzą wstępną redakcję z pomocą AI, a dopiero później poprawiam je ręcznie. Pozwala to szybciej uporządkować myśli i przygotować tekst, który nadaje się do dalszej pracy.

W elektronice oczekiwania są jednak większe. Ładny opis działania urządzenia to jedno, a schemat, na podstawie którego zamówimy płytkę i przylutujemy elementy, to zupełnie inna sprawa. Czy AI potrafi pomóc w diagnostyce błędów, doborze komponentów i projektowaniu PCB? A może oszczędzony czas oddamy później podczas uruchamiania niedziałającego układu? Artykuł powstał we współpracy ze sklepem Botland.

cover.thumb.png.496f66afe4bfc153683e8b04fe9b277f.png
Obrazki generowane za pomocą AI dalej są nielogiczne

Poniżej opisuję swoje obserwacje i ograniczenia, na które warto zwrócić uwagę. Nie jest to ranking modeli ani porównanie wszystkich dostępnych narzędzi. Możliwości poszczególnych rozwiązań szybko się zmieniają, natomiast konieczność sprawdzania projektu pozostaje aktualna.

Od pomysłu do schematu blokowego

Na początek warto rozdzielić kilka etapów projektowania. Ustalenie, że urządzenie potrzebuje mikrokontrolera, czujnika, wyświetlacza i zasilacza, nie jest jeszcze zaprojektowaniem całej elektroniki. To architektura systemu, określana również jako system-level design.

Na tym poziomie AI potrafi być bardzo pomocne. Możemy opisać, co urządzenie ma robić, a następnie poprosić o podział na bloki funkcjonalne, wskazanie interfejsów i przygotowanie diagramu połączeń. Szczególnie wygodne są narzędzia takie jak PlantUML, w których diagram powstaje z opisu tekstowego. Łatwo wtedy dopisać kolejny moduł, zmienić interfejs albo uporządkować strukturę projektu.

Trzeba tylko pamiętać, że poprawnie narysowany diagram nie potwierdza jeszcze poprawności założeń. Strzałka opisana jako „I²C” nie informuje, czy oba urządzenia pracują z właściwymi poziomami napięć, mają różne adresy i mogą korzystać z tej samej magistrali.

Obok modeli ogólnego przeznaczenia powstają też rozwiązania dedykowane elektronice, takie jak SpeedUp. Narzędzie pozwala przejść od wymagań zapisanych zwykłym językiem przez architekturę urządzenia do edytowalnego projektu schematu w KiCadzie (niestety pobranie tego schematu jest płatne). To interesujący kierunek, ponieważ otrzymujemy pliki, które można dalej sprawdzać i poprawiać w programie projektowym. Oby powstało więcej takich narzędzi.

firefox_54eY7D9QHw.thumb.png.7b8d15979e698acfe61f56d919e44a09.png

Najwięcej sensu widzę tutaj w szybkim przygotowaniu pierwszej koncepcji. Zamiast zaczynać od pustego arkusza, dostajemy punkt wyjścia do dyskusji i dalszej pracy.

Dobór komponentów – cena też jest parametrem

Jednym z mankamentów, które zauważyłem, jest skłonność AI do proponowania drogich komponentów znanych producentów. Czasami wygląda to tak, jakby rozpoznawalna marka była ważniejsza od wymagań projektu. Tymczasem prosty układ hobbystyczny nie zawsze potrzebuje elementów dobranych z takim zapasem, jak urządzenie przeznaczone do wymagających zastosowań przemysłowych.

Podobnie bywa z zamiennikami. Zdarza się, że model z góry odradza układy chińskich producentów, choć sama informacja o kraju pochodzenia niewiele mówi o przydatności konkretnego elementu. Własny produkt innego producenta nie jest też tym samym co podróbka oznaczona cudzym logo.

Cytat

Nie oznacza to oczywiście, że każdy tańszy zamiennik będzie równie dobry. Nawet przy tak znanej rodzinie jak 555 trzeba sprawdzić dokumentację konkretnego układu, jego parametry i warunki pracy. Podobna nazwa oraz zgodny układ wyprowadzeń nie wystarczają, aby uznać dwa elementy za identyczne.

-- AI redagujące ten artykuł 🙂

Bardzo często jednak zdarza się, że zamienniki oferują lepsze parametry pracy np. układ CH32F103C8T6 działa z napięciem 5V, gdy układy STM32F103C8T6 działają maksymalnie z 3.3V. Warto jednak mieć na uwadze, że STM ma dużo lepszą kontrolę jakości (chociaż CH32 wcale jej nie odbiegają).

Dlatego już w poleceniu warto podać budżet, liczbę planowanych egzemplarzy, dostępne sklepy i preferowane obudowy. Dobrze również poprosić o uzasadnienie doboru oraz tańszą alternatywę. Jeżeli model nie potrafi wskazać, który parametr wymusza użycie droższego elementu, jego propozycję warto sprawdzić szczególnie uważnie.

Gotowe moduły – tutaj widzę duży potencjał

Moim zdaniem jednym z najbardziej praktycznych zastosowań AI jest planowanie urządzeń z gotowych modułów, na przykład dostępnych w Botlandzie zestawów M5Stack. W takim projekcie duża część elektroniki została już opracowana przez producenta. Nie musimy od początku projektować zasilania mikrokontrolera czy obwodów współpracujących z czujnikiem. Naszym zadaniem jest przede wszystkim dobrać moduły, połączyć je i przygotować oprogramowanie.

AI może pomóc rozpisać połączenia, przygotować listę elementów oraz uporządkować sposób działania urządzenia. Nadal trzeba sprawdzić napięcia, pobór prądu, przypisanie wyprowadzeń i ewentualne konflikty interfejsów. Sam fakt, że dwa moduły mają pasujące złącza, nie gwarantuje jeszcze ich zgodności.

To jednak znacznie bardziej przewidywalne zadanie niż projektowanie kompletnej elektroniki od podstaw. Dla hobbysty albo firmy potrzebującej jednej czy dwóch sztuk urządzenia takie podejście może być bardzo rozsądne. Wyższy koszt samych modułów często łatwiej zaakceptować niż czas potrzebny na wykonanie i uruchomienie własnej płytki. Szczególnie, że koszt projektowania elektroniki od zera nie należy do najniższych.

A co z właściwym schematem?

Tutaj jestem już znacznie ostrożniejszy. Schemat wygenerowany przez AI może wyglądać przekonująco: zawierać czytelne opisy, sensowny podział na sekcje i prawidłowo wyglądające połączenia. Problem w tym, że do unieruchomienia urządzenia czasami wystarczy jeden pominięty element.

W jednym z analizowanych projektów zatrzymałem się przy brakującym rezystorze podciągającym linię USB D+. Chodzi o rezystor 1,5 kΩ, w typowej aplikacji zewnętrznej o tolerancji 1%, podłączony do odpowiedniego napięcia około 3,3 V. Taki szczegół łatwo przeoczyć, gdy pozostała część schematu wygląda poprawnie. Na szczęście w drugiej iteracji AI się poprawiło. Warto też zaznaczyć, że narzędzia dedykowane elektronice praktycznie robiły schematy bezbłędnie.

power_usb.thumb.png.f105928354e2e9eba0e93fb8923ae4cd.pngcontrol.thumb.png.0a06bc59fb057be42f98de3dc1095cf9.png
Schematy "klona" BlackMagicProbe zaprojektowane przez SpeedUp

W urządzeniu USB Full Speed podciąganie D+ pozwala hostowi wykryć podłączenie urządzenia i rozpoznać jego prędkość. Jeżeli wymaganego podciągania zabraknie, komputer może w ogóle nie zauważyć sprzętu. Nie należy też podciągać tej linii do 5 V z USB. Przykłady właściwego rozwiązania można znaleźć w nocie aplikacyjnej STMicroelectronics AN4879.

To właśnie dokumentacja konkretnego elementu powinna rozstrzygać podobne wątpliwości. AI może przygotować propozycję i pomóc ją przeanalizować, ale odpowiedź „tak, ten schemat jest poprawny” nie zastępuje sprawdzenia zasilania, konfiguracji pinów, elementów wymaganych przez producenta i warunków pracy. Nie wystarczy też samo uruchomienie kontroli reguł elektrycznych w programie EDA. Taki test może wykryć część problemów z połączeniami, ale nie odpowie na każde pytanie o działanie układu. Schemat może przejść kontrolę i nadal wymagać poprawek.

Projektowanie PCB – połączenia to dopiero początek

W przypadku płytek drukowanych moja ostrożność jest jeszcze większa. Na schemacie przewód oznacza połączenie elektryczne. Na PCB znaczenie mają dodatkowo jego długość, szerokość, położenie względem innych ścieżek oraz droga, którą wraca prąd. Automatyczne prowadzenie ścieżek, z którego AI uwielbia korzystać, może być użyteczne - jeśli dostanie właściwe reguły i dobrze przygotowane rozmieszczenie elementów. Kłopot zaczyna się wtedy, gdy połączenie wszystkich punktów zostaje uznane za zakończenie projektowania.

Dobrym przykładem są przetwornice impulsowe. Szczególnie istotne są w nich pętle, w których prąd zmienia się gwałtownie. Zbyt duża powierzchnia takiej pętli i niewłaściwe rozmieszczenie elementów mogą zwiększać zakłócenia oraz pogarszać działanie zasilacza. Kondensator umieszczony „gdzieś w pobliżu” nie zawsze spełni swoje zadanie tak samo dobrze jak element połączony zgodnie z zaleceniami producenta. .

Ma to również znaczenie dla kompatybilności elektromagnetycznej. Dyrektywa EMC 2014/30/UE dotyczy między innymi ograniczania wytwarzanych zaburzeń oraz odporności urządzeń na zaburzenia z otoczenia. Oczywiście źle poprowadzona płytka znacznie zwiększa ryzyko problemów, ale sam jej wygląd nie wystarcza, aby orzec niezgodność urządzenia z wymaganiami. Taką niezgodność można jedynie ustalić za pomocą pomiarów.

obraz.thumb.png.a694f0dbb435a6888a992b71c46d2271.png
Przykład odgałęzień ścieżek na PCB - SierraCircuits

Kolejna kwestia to zbędne odgałęzienia szybkich linii sygnałowych. Mogą one powodować odbicia i zniekształcenia przebiegu. Znaczenie ma przy tym nie tylko częstotliwość przesyłania danych, lecz także szybkość zboczy i długość odgałęzienia. Nie każda krótka odnoga będzie problemem, ale nie powinno się jej dodawać bez zastanowienia. Więcej przykładów zawierają wytyczne TI dotyczące szybkich sygnałów na PCB.

Do tego dochodzą odprowadzanie ciepła, ciągłość płaszczyzny masy, rozmieszczenie zabezpieczeń czy dostęp do punktów pomiarowych. Nie wszystkie te wymagania zostaną automatycznie wykryte przez kontrolę reguł projektu.

Dlatego na razie nie powierzyłbym AI samodzielnego przygotowania płytki do produkcji bez dokładnego przeglądu. Widzę natomiast zastosowanie w opracowaniu listy wymagań, wyszukiwaniu zaleceń producenta i wskazywaniu fragmentów, które trzeba sprawdzić.

Diagnostyka błędów – przydatne drugie spojrzenie

Nieco inaczej wygląda wykorzystanie AI do szukania przyczyny usterki. Tutaj nie musimy od razu oczekiwać gotowej diagnozy. Przydatna może być już uporządkowana lista hipotez oraz propozycja pomiarów, które pozwolą je sprawdzić.

Załóżmy, że komputer nie wykrywa urządzenia USB. Przyczyną może być zarówno problem ze sprzętem, jak i konfiguracją oprogramowania. Zamiast od razu zmieniać kilka rzeczy naraz, lepiej ustalić kolejność sprawdzania zasilania, połączeń, wymaganego podciągania, zegara i uruchamiania interfejsu. Im więcej konkretnych informacji przekażemy, tym łatwiej otrzymać użyteczną odpowiedź. Schemat, dokładne oznaczenie układu, napięcia zmierzone w określonych punktach czy komunikat błędu dają znacznie więcej niż samo stwierdzenie „nie działa”.

Najbardziej wartościowa odpowiedź powinna wyjaśniać, co sprawdzić i jak interpretować wynik. Samo wyliczenie kilkunastu możliwych usterek niewiele daje. Potrzebujemy sposobu na zawężenie problemu.

Trzeba również uważać na sugestie zgodne z naszym własnym podejrzeniem. Jeśli od początku napiszemy, że „na pewno uszkodzony jest mikrokontroler”, łatwo skierować całą rozmowę na potwierdzanie tej tezy. Lepiej opisać objawy i oddzielić wykonane pomiary od przypuszczeń.

obraz.thumb.png.e933e4e83f7d292d11fcdf3e30ccc520.png
Przykładowy schemat z błędem, który znalazło AI

Sam miałem kiedyś problem z czujnikiem dotyku, który w warunkach terenowych zachowywał się nieprzewidywalnie. Podczas testów na biurku wszystko działało poprawnie, ale po przekazaniu urządzenia do użytkowania szybko wróciło ono na reklamację. Przyczyną okazał się brak rezystorów podciągających na dwóch wyprowadzeniach, które nie powinny pozostawać niepodłączone, czyli „wisieć w powietrzu”.

W warunkach warsztatowych ich nieustalony stan nie powodował zauważalnych problemów, przez co błąd umknął podczas testów. Zanim urządzenie do mnie dotarło, próbowałem znaleźć przyczynę na schemacie. Był weekend, a ponieważ miałem wykupiony abonament ChatGPT, z ciekawości poprosiłem AI o pomoc. Model zwrócił uwagę na zapis ukryty w chińskojęzycznej nocie katalogowej producenta: oba piny wymagały podciągnięcia. To dobry przykład sytuacji, w której AI może pomóc wychwycić przeoczony szczegół.

Podsumowanie

Sztuczna inteligencja ma już swoje miejsce w warsztacie elektronika. Na ten moment największą wartość widzę w przygotowywaniu schematów z gotowych modułów oraz diagnostyce.

Wraz z przechodzeniem do bardziej skomplikowanych schematów czy projektowania PCB rośnie jednak znaczenie samodzielnej weryfikacji. Dobrze sformułowane polecenie może poprawić wynik, ale nie zastąpi dokumentacji, pomiarów ani uruchomienia prototypu. Pewny ton odpowiedzi również nie jest dowodem, że układ zadziała.

Będę więc nadal korzystać z AI, podobnie jak przy redagowaniu artykułów: jako pomocy w przygotowaniu materiału bazowego do dalszej obróbki. W elektronice końcowa korekta oznacza jednak coś więcej niż poprawienie kilku zdań. Czasami oznacza znalezienie jednego rezystora, bez którego całe urządzenie pozostanie niewidoczne dla komputera.

A jakie są Wasze doświadczenia? Udało Wam się dzięki AI szybciej uruchomić projekt, czy więcej czasu zajęło poprawianie jej pomysłów?

Edytowano przez H1M4W4R1
  • Lubię! 1

Bądź aktywny - zaloguj się lub utwórz konto!

Tylko zarejestrowani użytkownicy mogą komentować zawartość tej strony

Utwórz konto w ~20 sekund!

Zarejestruj nowe konto, to proste!

Zarejestruj się »

Zaloguj się

Posiadasz własne konto? Użyj go!

Zaloguj się »
×
×
  • Utwórz nowe...