Skocz do zawartości

Nawyk

Użytkownicy
  • Zawartość

    2072
  • Rejestracja

  • Ostatnio

  • Wygrane dni

    126

Wszystko napisane przez Nawyk

  1. Jest to kolejny odcinek kursu poświęconego budowaniu robota kategorii Minisumo. W ninejszej części zajmiemy się "tym, co tygryski lubią najbardziej" - programowaniem robota. Czas, by efekt naszej wielogodzinnej pracy nareszcie zaczął przejawiać szczątkową inteligencję ameby i spełnił swoją funkcję. Zakładam, że do tego momentu wszystko poszło po Waszej myśli i nie mieliście większych trudności z montażem. Na tym etapie elektronika robota powinna być w 100% zgodna ze schematem, silniki swobodnie obracają osiami, dalmierz(e) są na stałe przytwierdzone do podwozia, pług jest uformowany i naostrzony, a akumulator naładowany do pełna. Część I - Wstęp i wykonanie PCB Część II - Lutowanie i montaż Część III - Uruchomienie i programowanie Poniższe zdjęcia przedstawiają gotowego robota: Programator Napisałem w pierwszej części artykułu, że jednym z podstawowych narzędzi niezbędnych do uruchomienia naszego robota jest programator. Wymieniłem popularny STK500v2 - jest to jeden z wielu programatorów, których miałem okazję używać i uważam, że wersja z trybem HID sprawi najmniej problemów podczas konfiguracji. Właśnie na przykładzie tego programatora, przedstawiłem poniżej proces programowania. Moja wersja wygląda dokładnie tak: Programator znajdziecie np. na znanym portalu aukcyjnym - allegro.pl. W pole wyszukiwania wystarczy wpisać "STK500v2". W opisie aukcji szukajcie informacji o zabezpieczeniach nadprądowych/bezpiecznikach polimerowych oraz trybie pracy jako human interface device - HID to słowo klucz. Gdy już będziecie trzymać sprzęt w swoich rękach, zapoznajcie się z załączoną instrukcją od sprzedawcy. Będzie ona na pewno przedstawiała proces instalowania sterowników i konfigurację związaną z najpopularniejszymi "uploaderami". Jeśli kupiliście wersję z HID, wystarczy założyć odpowiednią zworkę i podłączyć urządzenie do portu USB - Windows sam powinien znaleźć niezbędne sterowniki (testowane na Windows XP oraz Windows 7 64-bit). Posiadaczom starszych komputerów, wysposażonych w stare złącze drukarkowe LPT, mogę polecić samodzielne złożenie programatora STK200 - szczegóły w googlach. Musicie liczyć się z koniecznością włączenia odpowiednich opcji trybu pracy w BIOSie płyty głównej, ale jest to opcja najtańsza z możliwych. Dość popularnym programatorem na USB jest także USBasp, który współpracuje z wieloma programami. Próba pierwszego połączenia z mikrokontrolerem Mamy już nasz programator podłączony do USB, z zainstalowanymi sterownikami lub założoną zworką HID. Czas na "chwilę prawdy", czyli sprawdzenie, czy nasza Atmega jest wykrywana (czyt.: prawidłowo podłączona). Do tego celu można skorzystać z bardzo fajnego, małego programu o nazwie SinaProg - nakładki graficznej na popularny AVRdude. Rozprowadzana jest na licencji Open Source, posiada wszystkie niezbędne funkcje, a dodatkowo została wzbogacona o zdefiniowane przez autorów ustawienia fusebitów dla najpopularniejszych mikrokontrolerów. SinaProg w wersji 2.0 działa bez problemu z Windows 7 64-bit, więc nie powinno być problemów również pod innymi systemami operacyjnymi. Pobieramy program z załącznika na dole posta, rozpakowujemy go np. na pulpicie i uruchamiamy plik SinaProg.exe. W międzyczasie łączymy nasz programator 10-żyłową taśmą ze złączem na płytce robota, a następnie podłączamy zasilanie - na razie najlepiej zasilacz, żeby uniknąć sytuacji, gdy akumulator nam się rozładuje w trakcie programowania. Na tym etapie będziemy dość często kasować pamięć i wgrywać nowy soft, więc tak jest po prostu wygodniej. Na razie odłączamy silniki robota! Przesuwamy włącznik robota i powinna nam się zaświecić dioda przy silniku. Poszerzamy sobie okno SinaProg, klikając na odpowiedni przycisk: Wybieramy z listy rozwijanej nasz programator i ustawiamy odpowiedni port, do którego jest podłączony*. Klikamy na przycisk "Search" - nie musimy z listy obok wybierać mikrokontrolera, SinaProg sam go wykryje. Szukanie może potrwać nawet ok. minuty - wszystko zależy od programatora. Po udanej operacji, powinniśmy uzyskać odpowiednią informację w prawej części okna. Jeśli wyświetlają się komunikaty w stylu "device not found" albo "target doesn't answer", musimy sprawdzić przede wszystkim, czy zasilanie dociera do mikrokontrolera (między pinem 7 i 8 atmegi powinno być napięcie 5V). Jeśli tak, to problem jest poważniejszy - należy jeszcze raz sprawdzić, czy na płytce nie ma zwarć albo przerw. Jeśli Atmega nie jest nowa i istnieje podejrzenie, że mogła mieć przestawione fusebity, to można jeszcze przetestować inną Atmegę - najlepiej taką prosto ze sklepu. * Dla programatorów innych, niż STK500v2 HID, porty można sprawdzić wchodząc w Start, klikamy prawym przyciskiem myszy na Mój Komputer -> "Właściwości", wybieramy po lewej stronie "Menedżer urządzeń", a następnie szukamy nazwy programatora na liście. Jak wgrać oprogramowanie? Skoro mamy już skonfigurowany i gotowy do działania programator, a nasza Atmega w robocie jest prawidłowo wykrywana, to nadszedł czas na próbę wgrania oprogramowania. Pobieramy z załącznika paczkę programów - są to zarówno pliki *.bas, które można edytować (później opiszę jak) oraz *.hex, czyli skompilowane programy - te ostatnie nas w tej chwili najbardziej interesują. Paczkę rozpakowujemy np. na pulpicie. Programowanie jest banalnie proste. Wystarczy, że klikniemy przycisk z ikoną folderu, wybierzemy plik, który nas interesuje (np. test-przycisku.hex) i w sekcji Flash klikniemy przycisk "Program". W zależności od obiętości programu oraz zastosowanego programatora, będziemy musieli poczekać krótszą lub dłuższą chwilę. Po prawej stronie wyświetli się "raport" z programowania - najważniejszą informacją jest "avrdude: XYZ bytes of flash verified" - nie wgłębiając się w szczegóły oznacza to, że mikrokontroler został zaprogramowany prawidłowo. Programy uruchomieniowe W paczce z załącznika znajdziecie garść programów, które służą do testowania poszczególnych peryferiów robota. Zaczynają się one od słowa "test-". Poniżej krótkie zestawienie, jakiego efektu działania należy się spodziewać po zaprogramowaniu przy użyciu danego hex'a: test-przycisku.hex Program jest wybitnie banalny - w momencie, kiedy naciśniemy przycisk z boku robota, powinna się zaświecić dioda przy mikrokontrolerze. Gdy przycisk puścimy - dioda zgaśnie. test-czujnikow-linii.hex Program ma za zadanie sprawdzić działanie czujników linii (jeśli ktoś na to nie wpadł po przeczytaniu nazwy;)). Zaprogramowanego robota należy postawić na gładkej, białej powierzchni, na którą można nakleić np. czarną taśmę izolacyjną. W momencie, gdy jeden z transoptorów znajdzie się nad taśmą, powinna się zaświecić dioda przy mikrokontrolerze. Jeśli tak się nie dzieje, albo dioda świeci się cały czas, należy sprawdzić podłączenie CNY70 (opis sprawdzania w części II tego artykułu), a następnie zmienić w kodzie programu test-czujnikow-linii.bas wartość stałej "Linia" - o edycji programów napiszę w kolejnym punkcie. test-sharpa.hex Program testuje działanie dalmierza optycznego. Podczas zbliżania do czujnika jakiegoś obiektu, np. dłoni, w pewnym momencie powinna zaświecić się dioda przy mikrokontrolerze. test-silnikow.hex Chyba najważniejszy z testów. Podłączamy silniki, zakładamy koła, a robota ustawiamy na podwyższeniu. Chodzi o to, by koła mogły swobodnie się obracać w powietrzu. Po wgraniu programu, robot powinien okresowo zwiększać i zmniejszać obroty silników. Oba muszą obracać się do przodu. Jeśli tak się nie dzieje, to istnieją dwie możliwości. Silnik/silniki obracające się do tyłu podłączamy odwrotnie, czyli zamieniamy miejscami 2 przewody w złączu - tak, jakbyśmy obrócili wtyczkę o 180 stopni. Druga opcja, to edycja pliku test-silnikow.bas i ponowna kompilacja. Należy przypisanie Mset1b Alias Portd.0 i Mset1a Alias Portd.1 zamienić nazwami, tzn. powinno być Mset1a Alias Portd.0 i Mset1b Alias Portd.1. Analogicznie w przypadku odwrotnego działania drugiego silnika - Mset2a i Mset2b zamieniamy miejscami. Edytowanie i kompilowanie programu Mamy gotowe pliki *.hex z działającymi programami, ale w jaki sposób je stworzyć? Możliwości jest kilka, wszystko zależy od naszych preferencji programistycznych. Istnieje kilka języków programowania, najpopularniejsze z nich to język C, Basic i Assembler. O ile do C prędzej czy później dojdziecie, jeśli chcecie rozwijać się w zagadnieniach robotyki, to na początek sugeruję poznanie języka Basic. Część osób pewnie mnie zlinczuje za ten wybór, ale argumentuję go tym, że sukcesy najbardziej mobilizują do rozwoju, a z Basic'em sukcesy pojawiają się po bardzo krótkim czasie nauki. Aby napisać program, potrzebujemy tzw. środowiska programistycznego obsługującego wybrany język. Dla Basic'a jest to środowisko BASCOM-AVR. Bascoma można pobrać za darmo w wersji demonstracyjnej - jedynym jej ograniczeniem jest limit rozmiaru pliku wynikowego równy 4kB. Na początku i tak trudno będzie nam go przekroczyć, więc nie ma czym się przejmować. Śrowoisko posiada zintegrowane najważniejsze narzędzia, jak edytor tekstu z kolorowaniem składni (zmienia kolor i pobgrubienie czcionki dla słów kluczowych w programie, co bardzo ułatwia pisanie) i kompilator. Kompilator służy właśnie do tworzenia plików *.hex, które są (mówiąc w uproszczeniu) tłumaczeniem naszego kodu napisanego w języku Basic na kod zrozumiały dla mikrokontrolera. Zaczynamy od pobrania wersji demo BASCOM-AVR, a następnie jej zainstalowania. Można zostawić domyślną ściezkę dostępu albo podać własną. Po instalacji uruchamiamy odpowiednią ikonkę na pulpicie i naszym oczom ukaże się taki widok: Klikamy na ikonę folderu, a następnie wybieramy jeden z plików *.bas z naszej paczki z programami uruchomieniowymi. Polecam np. test-czujnikow-linii.bas. Możemy teraz w kodzie wprowadzić dowolne zmiany, na początek zmieńmy wartość Const Linia na 900, czyli linia powinna wyglądać tak: Const Linia = 900. Poprawiliśmy program, a teraz chcemy "zgrać" go na naszą atmegę - musimy kod skompilować, klikając na odpowiedni przycisk: Na dole okna Bascoma wyświetlą się wszystkie ewentualne błędy - nalezy je zawsze dokładnie przeczytać, bo dopóki nie poprawimy tych błędów, program się nie skompiluje. Gdy ekran z paskiem postępu zniknie i nie pojawią się żadne ostrzeżenia i negatywne komunikaty, to znaczy, że utworzyliśmy nowy plik *.hex. Możemy go już wgrać, co opisałem we wcześniejszej części artykułu. Jeśli chcecie nauczyć się programować od zera (a nie tylko poprawiać cudze programy), to mogę Wam polecić darmowy kurs Bascoma Końcowy działający program, to napisany przeze mnie prosty-program.bas. Nie jest on super optymalny i być może ma kilka błędów, ale powinien wystarczyć do tego, by Wasz robot ożył i "z grubsza" spełnił Wasze oczekiwania. Jeśli będziecie mieli chęć, by go poprawić, to zachęcam do publikacji wyników eksperymentów. Ważna sprawa! Przepisowy ring minisumo jest cały czarny i ma białą obwódkę. Niestety, byłem zmuszony zbudować własny ring z materiałów dostępnych w domu i postanowiłem "odwrócić" te kolory, aby ułatwić sobie zadanie. Robot z domyślnym programem jest dostosowany do białego ringu z czarną obwódką. Aby to zmienić, wystarczy zmienić w kodzie programu: If Linia1 > Granicalinii Then 'jesli prawy czujnik wykryje linie Gosub Jazdatyl Waitms 500 Gosub Obrotlewo Waitms 500 Set Lewo Elseif Linia2 > Granicalinii Then Gosub Jazdatyl Waitms 500 Gosub Obrotprawo Waitms 500 Reset Lewo Else na If Linia1 < Granicalinii Then 'jesli prawy czujnik wykryje linie Gosub Jazdatyl Waitms 500 Gosub Obrotlewo Waitms 500 Set Lewo Elseif Linia2 < Granicalinii Then Gosub Jazdatyl Waitms 500 Gosub Obrotprawo Waitms 500 Reset Lewo Else Krótki film, pokazujący sposób działania robota: Zachęcam do zadawania pytań, postaram się na większość odpowiedzieć. Gdy zbierze się już większa ich ilość, to pomyślę o zredagowaniu FAQ w kolejnej częsci tego "Przepisu na robota". Powodzenia! minisumo-programy.zip
  2. Nie mam dość czasu, żeby analizować teraz dokładnie działanie tej biblioteki od mqtt, ale mam pewne podejrzenia próbowałeś możliwie zmniejszyć ten delay?
  3. Domyśliłem się, że to "ulep" żeby jakoś działało Pytanie, czy wiesz dlaczego
  4. Tak z czystej ciekawości - po co Ci ten delay(250); w loop()?
  5. Myślę, że na razie są to tylko "przetarte szlaki", rozwiązania często są prototypowe, drogie i mało użyteczne, ale fajnie wiedzieć, że branża nie stoi w miejscu i szuka pomysłu na siebie Może ktoś to wszystko w sprytny sposób połączy i stworzy produkt, o którym wcześniej nawet nie myśleliśmy, że jest nam niezbędny do życia?
  6. Ja również byłem zaskoczony, do tej pory żyłem w świadomości, że ten światłoutwardzalny film po naświetleniu zabezpiecza miedź, która nie ma zostać wytrawiona (tak, jak w domowej metodzie fotochemicznej), a wszystko wskazuje na to, że on jest po to, by "niezabezpieczoną" filmem miedź zanurzyć w kadzi z cyną i później zmyć powłokę UV - to cyna zabezpiecza miedź przed trawieniem. Chyba, że naprawdę coś źle zrozumiałem... Polecam obejrzeć film od 7:30, sama pani lektorka przyznaje, że ten punkt może się wydawać ludziom dziwny...
  7. Ja zamawiałem m.in. okrągłe płytki i używałem warstwy dimension, kwestia których warstw użyjesz przy generowaniu gerberów, możesz dodatkowo wskazać milling jeżeli na nim też masz coś do frezowania... Możesz wyjaśnić jakoś inaczej z czym masz problem, bo trochę nie rozumiem?
  8. Nawyk

    Projekt kinematyki robotyka

    Ten znaleziony w google pdf wygląda sensownie jako wstęp: http://robotyka.p.lodz.pl/sites/default/files/attachments/notacja_dh_podstawy_robotyki.pdf Polecam też kultową książkę pana Sponga na temat podstaw robotyki. Będzie prościej, jeśli będziesz miał konkretny problem do rozwiązania
  9. Daję znać, bardzo fajny artykuł. Gdyby prezentowane przez Kolegę podejście było powszechne (wśród menedżerów, a nie tylko senior developerów), to za zaoszczędzony czas można by było pojechać na niejedne wakacje, i to w godzinach pracy. Przydałby się jeszcze artykuł na temat długu technologicznego, w kontekście embedded, napisany w taki sposób, żeby można go było podesłać osobom średnio albo wcale-nie-technicznym
  10. Mnie ciekawi, czy będą teraz wszystkie płytki ze zwrotów poprawiali ręcznie (wyrzucenie starych elementów, wlutowanie "piętra"), czy postawią na jakąś automatyzację A może to będzie kara dla testerów, taka bardziej produktywna niż pisanie "nie będę ignorować testów na wszystkich możliwych konfiguracjach sprzętowych" na tablicy
  11. Nawyk

    1Sheeld Text To Speech polskie znaki

    Próbowałeś zmienić język systemowy w telefonie?
  12. Pewnie, że pamiętam @miszczu18 życzę powodzenia i koniecznie podziel się efektami pracy (jakie by nie były)
  13. Jeśli znasz takie narzędzia, to chyba wszyscy tutaj skorzystamy, jeśli podzielisz się swoją wiedzą. Takie komercyjne rozwiązania są reklamowane, bo... no właśnie - ktoś zadał sobie dużo trudu, żeby je rozreklamować. Przygotował opis, rozesłał informacje, newslettery i generalnie nagłośnił sprawę na targach i konferencjach. Oczywiście, że się monitoruje dostępność na bieżąco. Chodzi mi o narzędzie do automatyzacji tych czynności. Nie zawsze części muszą być egzotyczne albo nowe, bo wystarczy jeden producent urządzenia, który zechce zabezpieczyć produkcję i jednego dnia wykupi cały światowy stock np. akurat tego konkretnego mikrokontrolera albo tego konkretnego mostka, którego chciałeś użyć. Bo z rezystorami, kondensatorami i LEDami to standard, przy czym te części łatwo można zastąpić bez zmian w projekcie. Zakładam, że Altium będzie miał na liście największych światowych dostawców, inaczej narzędziem można będzie się co najwyżej podetrzeć. Mam świadomość, że w tym równaniu jest znacznie więcej zmiennych, niż się wydaje, ale z reguły spośród wszystkich dostępnych opcji, wygrywa ta uznana przez klienta za najlepszą. Nie śledzę biznesowej strony rynku EDA, ale mam podstawy wierzyć, że Altium nie jest i nigdy nie będzie monopolistą. Jest po prostu jedną z dostępnych opcji i opcja ta wkrótce rozszerzy się o nowe, ciekawe narzędzie, co sprawi, że również inne opcje się rozszerzą albo przynajmniej dostosują odpowiednio stosunek swojej ceny do możliwości. Podsumowując - rozumiem, że nie ekscytujesz się na myśl o nowych możliwościach Altiuma i być może słusznie zakładasz, że narzędzie będzie używane do koszenia dodatkowej kasy kosztem jego użytkowników. Proponuję zmienić perspektywę. Istnieją inne program EDA, niechby chociaż najpopularniejszy chyba na forum EAGLE, czy KiCAD. EAGLE powolutku goni Altiuma, KiCAD jeszcze wolniej, ale też nie stoi w miejscu. Jest więc szansa, że i ta opcja w końcu trafi do powszechnego użytku (o ile w ogóle się sprawdzi, bo to faza eksperymentalna), może nawet w wersji Open Source w przypadku KiCAD, a więc dostaniesz dokładnie to, czego chcesz. Pozostaje czekać
  14. Nikt Cię nie zmusza do korzystania z tego narzędzia, ważne, że ono jest. Umówmy się, jeśli chcesz skorzystać ze scalaka, np. mostków H od ST i widzisz, że w digikey czy innym arrow zapasy się kończą albo czas dostawy nowej partii wzrósł do >6 miesięcy, to "wiesz, że coś się dzieje" - nawet jeśli w elektroparku czy innym lispolu jest po 100 sztuk dostępnych od ręki. Nie wiem jak u Ciebie wygląda procedura projektowania PCB, ale jeśli cały proces od schematu do gerberów trwa np. 3-4 tygodnie, to części potrafią się wyprzedać i dobrze jest mieć taką ostrzegawczą "lampkę" na etapie projektowania, bez konieczności ciągłego, ręcznego monitorowania dostępności. Altium to popularny, ale nie jedyny program EDA. Jeśli świadomie i celowo zaczną manipulować klientem w taki sposób jak opisujesz, to myślę, że klient (ten duży, dla którego 10 groszy oszczędności na 1 sztuce to kilka tysięcy zł na całej serii) prędzej czy później się ogarnie, przestanie ufać "Altium 365" i w najlepszym wypadku przestanie z tego produktu korzystać (w najgorszym - przeniesie się do konkurencji, która do tego czasu może już oferować lepsze rozwiązanie). Poza tym, to na razie są domysły. Jak będzie naprawdę - czas pokaże.
  15. Szczegóły pewnie pojawią się, jak już narzędzie będzie powszechnie dostępne, na razie to są tylko zapowiedzi i nie do końca wiadomo, jak to będzie działać w praktyce. Może rozwiążą to podobnie, jak np. Autodesk zrobił z Fusion? No i zawsze warto pamiętać, że: Mnie osobiście urzekła opcja "integracji" projektu z aktualną dostępnością podzespołów, często mieliśmy z tym problem w przypadku małych serii.
  16. Nawyk

    Problem z uruchomieniem Raspberry PI 3 B+

    Miałem kiedyś raz jeden do czynienia z konwerterem, w którym Chińczyk opisał wyprowadzenia RX i TX odwrotnie (czyli z punktu widzenia podłączanego urządzenia, a nie z punktu widzenia konwertera). Może spróbuj podłączyć te linie odwrotnie, tak na wszelki wypadek? Oprócz tego upewnij się, że masz zainstalowane najnowsze sterowniki, a najlepiej byłoby zweryfikować, czy ten adapter działa na Twoim kompie, używając "echo loop'a", czyli zwierając RX i TX w adapterze i próbując coś wysłać w terminalu - powinieneś to samo dostać w odpowiedzi.
  17. Skąd wiesz, że nie wychodzisz z TIM2_IRQHandler i co przez to rozumiesz?
  18. A nie myślałeś o użyciu RF24? One są tak jakby stworzone do tego, co próbujesz zrobić... Z HC-05 pewnie też dało by się to ogarnąć, pytanie, czy chcesz to robić w formie "sztuka dla sztuki", czy zależy Ci tylko na tanim i szybkim rozwiązaniu problemu?
  19. No to może prosty robot? Jeżdżący po linii albo omijający przeszkody
  20. Nawyk

    Kinematyka + Dynamika - Robot mobilny

    A czy to przypadkiem nie jest tak, że mobilnego robota można sprowadzić do postaci planarnego manipulatora z 2 przegubami pryzmatycznymi?
  21. W Eclipse/SW4 nazwy mogą się trochę różnić, ale generalnie chodzi o to samo: W preferencjach projektu poszukaj tej opcji (Output format) i możesz sobie zmienić Hex na Binary - będziesz miał plik *.bin
  22. Nawyk

    Prusament - nowy filament prosto od Prusa Research

    Jak kilka miesięcy temu byłem na 99% nastawiony na kupno MK3, to "kolejka" na kilka miesięcy skutecznie mnie zniechęciła... Nie jestem fanem ich podejścia z samodzielnym drukowaniem części, moim zdaniem większą jakość i przede wszystkim tempo produkcji mogli by osiągnąć zlecając produkcję na wschodzie i inwestując w ludzi od kontroli jakości, no ale Prusa sam o sobie mówi, że jest typowym "control freak". Pozostaje czekać aż zainwestuje we wtryskarki, formy i inne takie
  23. Pico bello Na przyszłość pamiętaj jeszcze, że poprawisz znacznie czytelność schematów rysując dodatnie szyny zasilania (np. +3V3) do góry, a masę i ujemne do dołu. Jak się oczywiście da.
  24. Teraz wygląda ok. Jedyne co bym zmienił, to wykorzystanie symboli z bibliotek supply1 i supply2 - są to takie znaczki, które pomogą Ci wyeliminować to spaghetti sygnałów na schemacie - w obecnej postaci bardzo łatwo o pomyłkę. Stosuje się to tak, że wstawiasz na schemacie "strzałkę" np. "+5V" przy sygnale, który ma być podpięty do +5 V. Wstawiasz kolejne takie same "strzałeczki" przy kolejnych sygnałach, które chcesz podpiąć do +5V i kolejne przy źródle tych +5 V. To samo z masą, czyli symbolem GND. To, co ten symbol robi, to tak naprawdę połączenie wszystkich tych samych "strzałeczek" ze sobą na PCB Tutaj zamiast strzałek użyłem "plusów", ale idea ta sama
  25. Symbol na schemacie nie musi się "fizycznie" pokrywać z nóżkami czujnika, schemat można narysować do góry nogami albo zamienić elementy miejscami, to Ty musisz zwrócić uwagę na to, gdzie i do czego podłączasz swoje sygnały. Zakładam, że nie robiłeś sam biblioteki i użyłeś gotowca. Możesz łatwo sprawdzić w edytorze biblioteki, czy wyprowadzenia ze schematu są poprawnie podpięte do "fizycznych" padów czujnika na PCB. Dawno, dawno temu naskrobałem krótki tutorial pomagający zrozumieć tworzenie (i edytowanie) bibliotek. Ciekawym trafem, użyłem tych właśnie czujników Stara wersja EAGLE, ale podstawy te same: https://forbot.pl/blog/cadsoft-eagle-czesc-3-tworzenie-biblioteki-id1605
×