Skocz do zawartości

Tablica liderów


Popularna zawartość

Pokazuje zawartość z najwyższą reputacją od 26.04.2019 we wszystkich miejscach

  1. 4 punkty
    Z innych (dość nietypowych) oznaczeń wnioskuję, że płytka jest produkcji polskiej: US to układ scalony, "E" to elektrolit, MS to mostek prostowniczy a "TR" to zapewne triak. Idąc tym dropem DL to dlawik. Z resztą z układu widać, że strefa izolowana (za tym białym optotriakiem) ma obok głównego triaka specjalne, wysokonapięciowe kondensatory filtra przeciwzakłóceniowego. Tam dławik musiał się znaleźć obowiązkowo.
  2. 4 punkty
    Jestem zwolennikiem podejścia, w którym po zaobserwowaniu dużej liczby tematów na dany temat wyodrębnia się je do osobnej kategorii, aby utrzymać większy porządek. Tak stało się chociażby w przypadku Arduino. Pierwotnie tematy na temat tej platformy były w dziale Mikrokontrolery, a później powstała osobna kategoria tylko dla Arduino. Samo utworzenie kategorii na dany temat nie spowoduje raczej wysypu projektów i tematów dotyczących danego tematu. Przykładem są tutaj na przykład tematy związane z drukiem 3D. Przez ~2 lata na Forbocie były działy dotyczące drukarek 3D, skanerów, oprogramowanie itd. Panowały tam jednak pustki, ostatecznie całość została "zwinięta" do jednej kategorii "Druk 3D", która też nie jest zbyt popularna. Nie wiem czy jest sens tworzenia nowych kategorii tylko dlatego, aby były. Ktoś musiałby się takim działem zajmować, tworzyć poradniki związane z audio, opisywać własne projekty itd. Bez takiej osoby raczej będą tam pustki. Może lepiej na początku tworzyć takie tematy w dziale Elektronika i tagować je jako Audio? Dzięki temu będzie jasno widać jakie jest zainteresowanie taką tematyką
  3. 3 punkty
    To mój pierwszy post na tym forum ale od razu chciałbym przedstawić zbudowanego przeze mnie robota. Mimo że to pierwszy post to odwiedzałem to i inne fora wielokrotnie w poszukiwaniu przydatnych informacji i wykorzystując jedynie „magiczny” guzik szukaj udało mi się rozwiązać większość problemów z budową. To dla tych którzy nie chcą i nie lubią szukać… Wracając jednak do robota to został on nazwany X-walker i jest czteronożnym robotem kroczącym o symetrycznej konstrukcji. Został zaprojektowany jako robot którego zadaniem będzie przejście po nieznanym terenie przy jednoczesnym zachowaniu równowagi i odpowiednim położeniu korpusu. Prace nad robotem aktualnie się zakończyły, aczkolwiek temat jest obszerny i wiele można jeszcze ulepszyć albo dodać, więc w przyszłości robot zostanie poddany kolejnym modyfikacją. 1.Budowa mechaniczna Konstrukcja mechaniczna robota została zaprojektowana przy użyciu programu Autodesk Inventor 2010. Program ten umożliwił stworzenie wirtualnego modelu robota oraz przetestowanie zależności mechanicznych występujących pomiędzy jego elementami. Dzięki temu wybrano optymalne wymiary poszczególnych części. Poniżej na rysunku 1 zaprezentowano projekt robota z programu Inventor (bez elektroniki oraz okablowania): Na materiał konstrukcyjny wybrano aluminium jako, iż posiada odpowiednią wytrzymałość, jest przy tym lekkie i nadaje się do obróbki za pomocą prostych narzędzi. Zaprojektowane elementy wycięto przy pomocy lasera z 1.5mm i 2mm arkuszy aluminium. Poniżej przedstawiono wycięte elementy: Dalszy etap prac polegał na odpowiednim ukształtowaniu niektórych części. Proces ten odbywał się ręcznie przy udziale odpowiednich kopyt wykonanych z drewna bukowego i stali. Następnie dokonano montażu elementów przy pomocy różnego rodzaju łączników śrubowych o średnicach od 2 do 4mm. Dodano także inne elementy, takie jak tulejki dystansowe czy części składowe stóp ze zintegrowanymi czujnikami stykowymi. Na kolejnym rysunku przedstawiono złożonego robota: Poniżej przedstawiono szczegóły budowy stopy: Napęd robota stanowi 12 serwomechanizmów Power HD 1201 o parametrach przedstawionych poniżej (dane producenta): - moment 12.2/13.2 kg/cm - prędkość 0.16/0.14 sec/60° - napięcia 4.8/6.0 V - waga 60 g - wymiary 40.7 x 20.5 x 39.5 mm Niestety niektóre dane obiegają od wartości rzeczywistych, szczególnie wartość momentu, ale co ciekawe nawet wymiary nie są zgodne z rzeczywistymi. Podsumowując, konstrukcja mechaniczna robota posiada kilka charakterystycznych cech: - zwarta i solidna konstrukcja - podwójne łożyskowanie wszystkich stawów - zintegrowane czujniki stykowe w stopach - całkowita rozbieralność konstrukcji – tylko połączenia śrubowe - możliwie najmniejsze wymiary przy zastosowaniu danych elementów wyposażenia robota - liczne otwory odciążające konstrukcję 2. Elektronika Część elektroniczna robota posiada budowę modułową. Każdy moduł zawiera mikrokontroler AVR i pełni odpowiednie dla siebie funkcje. Każdy posiada także odpowiednio multipleksowane wyprowadzenie ISP, co pozwala programować moduły podczas ich działania. Moduły stanowią odrębne jednostki elektroniczne i można ich używać oddzielnie nie koniecznie w robocie X-walker. Do komunikacji między sobą wykorzystują SPI. Takie rozwiązanie nie ogranicza w dalszej rozbudowie robota i pozwala stale dodawać nowe elementy i funkcje. Poniżej scharakteryzowano poszczególne moduły. 2.1. Moduł sterujący „BRAIN” Jest głównym modułem w robocie, zawiaduje działaniem pozostałych. Został oparty na mikrokontrolerze ATmega 16A z kwarcem 16MHz. Posiada wyprowadzone piny z magistralą I2C i SPI, wyświetlacz LCD oraz 2 dodatkowe przyciski na potrzeby przyszłych funkcji. Poniżej krótka charakterystyka: - arbiter magistrali SPI - komunikacja z akcelerometrem i żyroskopem poprzez I2C - Realizacja filtru Kalmana w celu wyznaczenia aktualnego pochylenia robota - obsługa wyświetlacza LCD - nadzorowanie pracy innych modułów - formowanie odpowiednich ramek danych do komunikacji z PC 2.2. Moduły sterowników serw Robot posiada dwa takie same moduły sterowników serw, każdy obsługuje 6 serwomechanizmów, czyli 2 nogi robota. Moduły także oparte są o mikrokontroler ATmega 16A na kwarcu 16MHz. Najważniejszymi funkcjami tych modułów jest oczywiście generowanie odpowiedniego sygnału PWM dla serwomechanizmów, ale także obsługa czujników stykowych i pomiar napięć na potencjometrach serw (dodatkowy przewód wychodzący z każdego serwa). Ta ostatnia cecha służy sprawdzeniu czy serwomechanizm jest rzeczywiście wychylony od taką wartość jaką wyznacza sterowanie, co jest przydatne w pracy przy dużym obciążeniu. Należy dodać, że sygnały analogowe z potencjometrów przed dotarciem do tych modułów przechodzą przez filtr analogowy. 2.3 Moduł nadawczo odbiorczy „BT_RX_TX” Moduł ten jest odpowiedzialny za obsługę dwóch modułów bluetooth, jednego wysyłającego a drugiego obierającego dane z komputera. Dane przychodzące są odpowiednio filtrowane. W module zastosowano mikrokontroler ATmega 8A oraz kwarc 14.745MHz odpowiedni do transmisji szeregowej. Standardowo w module instaluje się dwa moduły bluetooth BTM-222. Poniżej zdjęcie przedstawiające moduł zamontowany w robocie: 2.4. Moduł zasilający "POWER" Robot jest zasilany dwoma zestawami akumulatorów. Pierwszy większy zestaw (2x LiPo 1850 mAh 7.4V) zasila serwomechanizmy, drugi mniejszy (LiPo 850 mAh 7.4V) zasila układy elektroniczne. Moduł zasilający monitoruje wartości napięć poszczególnych akumulatorów a także mierzy prąd jaki zużywają napędy robota. Zajmuje się także stabilizacją napięć – 5V dla elektroniki i poprzez stabilizator impulsowy (niewidoczny na zdjęciach) 5.3V lub 6V dla serwomechanizmów. Moduł zasilający posiada budowany układ dźwiękowy sygnalizujący niski stan napięcia w akumulatorach. Zajmuje się także monitorowaniem temperatury w istotnych miejscach robota za pomocą magistrali 1-wire oraz czujników DS18b20. Te miejsca to: stabilizator impulsowy dla serw, stabilizator liniowy dla elektroniki, temperatura w serwomechanizmie „udowym”, temperatura otoczenia. Zdjęcie użytego zasilacza impulsowego oraz zdjęcie robota po zamontowaniu modułu "POWER". Widoczny radiator stabilizatora liniowego elektroniki: 2.5 Pozostałe moduły Moduł żyroskopu Zawiera żyroskop cyfrowy L3G4200D oraz kilka elementów elektronicznych niezbędnych do jego działania . Na zdjęciu widać poprawiony błąd na PCB. Praktyczniej było to zrobić w ten sposób niż zmieniać całą płytkę bo wiązałoby się to z ponownym lutowaniem obudowy LGA żyroskopu. Moduł akcelerometru Zawiera akcelerometr (i magnetometr) cyfrowy LSM303DLH oraz tak jak moduł żyroskopu kilka elementów elektronicznych niezbędnych do jego działania. IMU - interial measurmet unit Moduł IMU czyli tzw. interial measurmet unit złożony i zamontowany w całości wraz z konwerterami napięć dla sygnałów magistrali I2C Moduł filtrów analogowych RC (2 sztuki) Filtruje napięcia na potencjometrach serw aby można było je prawidłowo zmierzyć poprzez wbudowane w mikrokontrolerach przetworniki ADC 3. Sterowanie X-walker jest sterowany za pomocą komputera PC i odpowiedniej aplikacji. Zastosowanie dwóch modułów Bluetooth pozwoliło na szybkie przekazywanie danych w obu kierunkach i uzyskanie kroku sterowania na poziomie 40ms. Czas ten nie jest niestety gwarantowany z racji zastosowania protokołu Bluetooth, aczkolwiek robot porusza się płynnie i reaguje błyskawicznie na zmiany sterowania. W jednym cyklu sterowania od robota odbierane są odpowiednie dane, wyliczane jest sterowanie i dane ponownie wysyłane są do robota. Na ekranie komputera możemy obserwować dane generowane przez wszystkie moduły robota jak również aktualne położenie środka ciężkości robota względem jego stóp z naniesionym wielokątem podparcia (obraz poniżej) Po wybraniu odpowiednich ustawień chodu robota oraz prędkości poruszania się następuję połączenie z robotem. O tej pory możemy nim sterować: chód przód, tył, na boki oraz obroty w lewo prawo. Wszystkie inne „akcje” związane z chodzeniem po trudnym terenie robot podejmuje sam. Na filmach poniżej można więc zaobserwować jak przekłada nogę w celu znalezienia odpowiedniego miejsca do położenia jej bądź też ratuje się przed wywrotką po obsunięciu się którejś z nóg. Innych elementów prawdopodobnie nie widać na filmach a mianowicie robot dba cały czas o odpowiednie usytuowanie środka ciężkości tym samym zapewniając sobie stabilność. Każdorazowo dobiera odpowiednie przemieszczenia nóg wzdłuż wszystkich osi oraz przemieszczenie korpusu. Korpus robota jest pozycjonowany automatycznie za sprawa sterowników PID które wyliczają sterowanie na podstawie danych z żyroskopu i akcelerometru przetworzonych przez filtr Kalmana. Wysokość korpusu nad ziemią także jest ustalana przez odpowiedni algorytm. Dodatkowo robot pilnuje aby każda noga która w danej fazie chodu ma spoczywać, w przypadku utraty podłoża „znalazła” nowe poprzez systematyczne obniżanie jej. Opis powyżej przedstawia pokrótce sposób w jaki sterowany jest robot, aczkolwiek nie zawiera wszystkich szczegółów. Zostały wymienione tylko główne funkcje algorytmów sterujących. Zdaje sobie sprawę że opis ten może być ciężki do zrozumienia, ale nigdy nie miałem talentu do opisywania tego co robie, więc śmiało można pytać i będę się starał rozwiewać wątpliwości oraz uzupełnić opis w miarę możliwości. Na koniec jeszcze kilka zdjęć i filmy: Kinematyka odwrotna: Kontrola przechyłu korpusu: Chodzenie po nierównym terenie: Chodzenie po ruchomej równoważni: I jeszcze coś w HD, łażenie po kamyczkach:
  4. 3 punkty
    To proste. Najpierw musisz wiedzieć jaki rezonator kwarcowy (bo chyba o tym elemencie myślisz pisząc "oscylator") masz lub potencjalnie możesz mieć. Oscylatorem/genratorem jest cały układ, czyli rezonator i wzmacniacz wbudowany w strukturę procesora. W tego typu generatorze (tzw. Pierce'a) kwarc pracuje w rezonansie równoległym (czyli elektrycznie pełni rolę cewki) a kondensatory obciążenia tworzą wraz z nim filtr przesuwający fazę w pętli sprzężenia wzmacniacza dokładnie o 180 stopni tylko dla częstotlwości rezonansu. Dlatego to działa Jeśli już znasz specyfikowany przez producenta C_load swojego kwarcu, to: Cx = 2 * (C_load - C_stray) gdzie: Cx to pojemność każdego z kondensatorów przy kwarcu, C_load no to oczywiście to co wyczytałeś z danych katalogowych rezonatora, C_stray to pojemności pasożytnicze nóżek/obudowy scalaka i ścieżek. Jeśli nie zrobiłeś wyjątkowo głupiej płytki z długimi ścieżkami to możesz tu przyjąć 2-4pF. Zatem dla typowego kwarcu wymagającego C_load = 15pF dostajesz Cx = 24pF więc typowo montujesz 22pF. Dla kwarcu 10pF możesz zamontować 2 x 15pF. I pamiętaj: od tych kondensatorów zależy także częstotlwość drgań rezonatora a więc i dokładność mierzonych przez procesor czasów czy generowanych przebiegów na wyjściach timerów.
  5. 3 punkty
    Nie ma czegoś takiego jak zasilacz halogenowy. Co to ma na wyjściu? Prąd stały czy zmienny? Podasz jakieś konkretne parametry? Być może zasilacz musi być obciążony jakimś minimum, i wtedy metr paska to za mało i albo drugi zasilacz, albo sztuczne obciążenie może byc potrzebne. Ale tych byćmożów to jest mnóstwo wielce za dużo
  6. 3 punkty
    Zobaczmy: 100mm/s to jest 6000mm/minutę, przy 1000 obrotach na minutę i przełożeniu 30:1 musiałbyś mieć koła o obwodzie 180mm, czyli o promieniu mniej więcej 2.86cm. Przy masie 200g (100g to same dwa ogniwa 18650 ważą) i takich kołach, potrzebujesz moment obrotowy 0.2*2.86=0.572kg*cm żeby podjechać na przykład pod próg albo inną przeszkodę. Te silniki dają ci 0.6kg*cm każdy, więc wydaje się, że masz zapas. Powinno działać. Update: Oczywiście zapomniałem o przekładni. Te 0.6kg*cm po przełożeniu będzie 30 razy więcej, więc spokojnie powinno dać radę, chyba, że moment podają już za przkładnią...
  7. 3 punkty
    Klonujesz repo BMP, budujesz dla stlink, wgrywasz bootloader USB blackmagic_dfu.bin przez UART (lub SWD), podłączasz USB, wgrywasz firmware blackmagic.bin, sprawdzasz czy arm-none-eabi-gdb widzi GDB na porcie szeregowym.Tu jest gotowa instrukcja: https://medium.com/@paramaggarwal/converting-an-stm32f103-board-to-a-black-magic-probe-c013cf2cc38c Aha, firmware Black Magic Probe którego użyłem do niebieskich/czarnych płytek STM32F103 to build stlink. Więc oczywiście można go użyć do tych tanich gwizdków USB ST Link w metalowej obudowie, jeżeli komuś nie zależy na porcie szeregowym (PA9, PA10 nie są ładnie wyprowadzone na zewnątrz)
  8. 3 punkty
    Cześć, mam jedno pytanie: a nie boisz się, że zwierzakom w terrarium mogłoby się coś stać, gdyby w układzie wystąpił jakiś błąd (np. ustawienie zbyt wysokiej temperatury)? Szczerze mówiąc nie wiem, czy bym zaryzykował używanie własnego układu do obsługi terrarium, wolałbym chyba kupić profesjonalny termostat. Wiele lat temu miałem duże akwarium z ciekawymi okazami rybek (byłem wtedy w podstawówce) i wysiadł termostat sterujący grzałką. Gdy przyszedłem ze szkoły wszystkie rybki w tym akwarium były już ugotowane - uwierz mi to nie było przyjemne. Chodzi oto, że zbudowanie działającego niezawodnie urządzenia jest bardzo trudne (trudno przewidzieć wszystkie możliwe czynniki wpływające na pracę układu). Musiałbyś najpierw długo testować takie urządzenia, aby być pewnym, że w każdej sytuacji zadziała poprawnie. Komercyjne termostaty do terrarium mają takie testy za sobą (szczególnie gdy wyrób jest długo na rynku), więc ja wybrałbym sprawdzone urządzenie ze sklepu zoologicznego. Ale decyzja należy oczywiście do Ciebie. Pozdrawiam
  9. 3 punkty
    Generalnie to chyba rozpoczęcie transmisji się sygnalizuje stanem niskim na nóżce chip select — wtedy nie musisz szukać żadnych magicznych wartości.
  10. 3 punkty
    Jeszcze chce dodać, że napisał do mnie jeden kolega z Rosji, który jak okazało się, również produkuje w dokładnie taki sam sposób domowy filament na takiej samej maszynce. Przysłał do mnie zdjęcia przykładu swoich wyrobów z własnego filamentu. Pozwolił mnie na pokazanie tych swoich wyrobów z druku 3D. Bardzo mi się spodobało. Umieszczam te zdjęcia z pozwolenia ich właściciela. Teraz wymieniamy się zdobytym doświadczeniem. Powiedział mi, że już wypracował kilka kilogramów własnego filamentu, ponieważ tak jak i ja, zużywa sporo napojów i wody, tak że butelek nie brakuje. Swoją maszynkę zrobił sam na wzorzec z tego wideo: Na minucie 8:40 pokazuje jaki kawałek łańcucha z 4 ogniw wydrukował z takiego filamentu, wydrukowana od razu całość. Tak, że jeszcze raz udowadniam wszystkim przeciwnikom domowej produkcji filamentu z zużytych butelek, że jednak można robić własny filament i nadaje się on do druku 3D. A to, co piszecie, że nie warto w to się bawić, że to tylko marnowanie czasu, to już to sprawa każdego osobno. Jak człowiek ma chęć coś zrobić swoimi rękami i zobaczyć efekt swojej pracy, to jest jego sprawa osobista i nikt nie powinien mu tego zabraniać.
  11. 2 punkty
  12. 2 punkty
    Cześć, temat znalazłem dopiero teraz. Wiem że odkopuję ale myślę że warto, mało jest informacji o Black Magic Probe po polsku. Ja zrobiłem swoje BPM sam - wgrałem firmware na tą niebieską płytkę z STM32 F103 za 2$ - i używam w obecnym projekcie zamiast ST Link. Rzeczywiście BMPzawiera serwer GDB na pokładzie. Wystarczy podłączyć i otworzyć port szeregowy. Pierwsze wrażenie było takie że wgrywanie programu działa mi zauważalnie szybciej niż na ST Link, podejrzanie szybko musiałem dać dla pewności jakiegoś blinka czy tam hello world po serialu żeby mieć jakieś obserwowalne zmiany. Może to kwestia jakichś przesadnie zachowawczych domyślnych ustawień ST Link które można sobie zmienić, nie szukałem więcej. Debugowanie działa stabilnie, jeszcze mi się nie wywaliło ani razu. Do tego jest dodatkowy port szeregowy po tym samym kablu. Korzystałem tylko z programowania i debugowania STM32 po SWD, jest jeszcze JTAG i wspierane jest więcej rodzin MCU od kilku innych firm, choćby Nordic nRF51 i 52. Podsumowując jestem zadowolony. Mam oskryptowane flashowanie firmware BMP, jak komuś się przyda mogę udostępnić repozytorium.
  13. 2 punkty
    Warto zacząć od ujednolicenia nazewnictwa, jest to strasznie namieszane. Silnik BLDC ma trapezoidalny przebieg BEMF, natomiast sinusoidalny przebieg ma silnik PMSM (czasem nazywany BLAC). Optymalny sposób sterowania jest zgodny z przebiegiem BEMF, tzn. dla BLDC będzie to sterowanie 6-step, a dla PMSM sterowanie z wykorzystaniem FOC. W sterowaniu 6-step można bez problemu wykorzystać obserwację BEMF i na tej podstawie ustalać moment przełączenia. Świetnie to Dondu opisał na swojej stronie. W sterowaniu FOC wykorzystuje się obserwację przebiegów prądów fazowych na podstawie których ustala się położenie wirnika i oblicza wysterowanie wyjść sterujących na kolejny cykl. Sygnały sinusoidalne uzyskuje się poprzez odpowiednie wysterowanie wyjść PWM.
  14. 2 punkty
    Do strony internetowej jeszcze wrócę. Napiszę tylko, że jestem zmuszony rozbudować mój system o monitoring poziomu paliwa w zasobniku pieca przy pomocy kursowego czujnika ultradźwiękowego, oraz uruchomić regulator pokojowy tegoż pieca na moim systemie. Regulator już działa... tak jak standardowy prosty regulator pokojowy, porównuje temperaturę zadaną z pokojową, bierze poprawkę na histetezę i steruje wejściem zwarciowym w sterowniku kotła, obniżając w razie potrzeby temperaturę wody w instalacji. Do czujnika poziomu paliwa i temperatur "około piecowych" zrobiona kabelkologia, zostało programowanie;). No i zrobiłem też sterowanie bramą wjazdową, plus krańcówkaz z powiadomieniem o otwarciu, plus Google Assistant.
  15. 2 punkty
    Cześć, a jakie stany są na pinach sterownika: RESET i DIR oraz MS1,MS2,MS3? Przeczytałeś instrukcję do sterownika? Tą spod linku: https://botland.com.pl/pl/sterowniki-silnikow-krokowych/148-pololu-a4988-sterownik-silnika-krokowego-reprap-35v2a.html Pozdrawiam
  16. 2 punkty
    No i niestety będę musiał przeprojektować tego robota. Okazało się, że w wersji CircuitPythona której używałem żeby wszystko sprawdzić był błąd w module pulseio w tym jak wybierane był timery i ich kanały przy tworzeniu nowych obiektów PWMOut. Przez to niektóre z nich używały tego samego timera i kanału, dzięki czemu zawsze miały ten sam duty cycle, więc serwa poruszały się razem — nie zauważyłem tego, bo przy testach ustawiałem wszystkie serwa w tej samej pozycji — that było najłatwiej napisać program. W nowej wersji CircuitPythona błąd jest poprawiony i pulseio rzuca wyjątek jak się próbuje stworzyć PWMOut dla wielu pinów, a nie ma już wolnego kanału timera. No i oczywiście dostaję taki błąd teraz z moim robotem. Będę musiał usiąść i z naleźć taką kombinację nóżek, dla których da się utworzyć PWMOut jednocześnie, a to niestety oznacza przeprojektowanie płytki. Ale nie ma tego złego co by na dobre nie wyszło: przy okazji wyrzucę akcelerometr (okazał się bezużyteczny), dodam pamięć flash (miejsce w systemie plików się przyda), przeprojektuję układ ładowania baterii (żeby się ładowała przy wyłączonym robocie) i przeniosę wszystko na górę płytki (komponenty schowane pod pojemnikiem baterii wglądają fajnie, ale są strasznie uciążliwe do debugowania). Przy okazji też dorzucę wyłączniki krańcowe na końcach stóp. Jak nie znajdę działającego zestawu 12 pinów, to będę musiał zmienić mikrokontroler na większy.
  17. 2 punkty
    @nigraS Nie wiem do końca, co ma Kolega na myśli, ale wydaje mi się, że chodzi o "schowanie" zasilacza do taśmy LED? Jeżeli tak, dobrym rozwiązaniem jest wykorzystanie urządzenia, które sklepach internetowych znaleźć można pod hasłem "zasilacz taśmy LED do puszki". Wówczas takie coś "chowa" się do otworu w ścianie
  18. 2 punkty
    Mały update dla zainteresowanych, aktualnie jestem na takim etapie: Niestety kula okazała się dość gruba, i zakupione magnesy są w stanie ledwo utrzymać się na wzajem, więc do środka prawdopodobnie będę musiał dokupić jakieś większe(o ile nie zmienię w przyszłości sfery). Teraz mam pytanie, jakie sterowniki polecacie do silników 12V, 2A(pik 3.8A) z czujnikiem Halla? Oraz jeżeli zdecydowałbym się nie korzystać z czujników czy 2 sterowniki L298 z oddzielnymi źródłami zasilania to dobry pomysł? Ogólnie planuję mieć 1 lub 2 źródła zasilania na silniki i oddzielne na arduino z sensorami.
  19. 2 punkty
    coś mi się zdaje, że pokręciłeś i tam gdzie wyliczasz VAL podstawiłeś VOLT. dla 0° C spodziewałbym się wartości z ADC na poziomie 102 (przy 5v nap. referencyjnego), dla 50° C : 204 z ADC (dla 5V)
  20. 2 punkty
    Albo sprzedawać poza UNIE. Ja sprzedaje do Rosji, Białorusi, Ukrainy, Kazachstanu. Tam nie trzeba żadnych certyfikatów. A to CE również nić nie daje, to tylko znaczek. 90% to, co kupuje się w sklepach jest zrobiono w Chinach, a oni stawią znaczek CE tak po prostu. Kto to w Chinach ubiega się o certyfikację na CE??? Kompletny bezsens tak myśleć. Kupowałem tuby laserowe, zasilacze, wszędzie jest znaczek CE, tylko jak prosiłem o przesłanie kopii certyfikatu, to nić w odpowiedzi.
  21. 2 punkty
    Cześć, niedawno był wątek bardzo podobny i użytkownik forum chciał kupić jako swój pierwszy multimetr - multimetr wzorcowy Brynera za 2K PLN (taki jaki jest używany w mojej firmie do sprawdzania dokładności innych mierników). Watek według mnie trochę podobny. Ja osobiście używam Bitscope mini (BS10) i nie zamienił bym go na Hantek'a czy Rigol'a z 2 do 3 K PLN. Powody: 1) Jest dużo bardziej uniwersalnym narzędziem pomiarowym od taniego oscyloskopu stacjonarnego (takiego z 2K PLN) 2) Zajmuje dużo mniej miejsca 3) Software ma bardzo wymyślne funkcje i jest bardzo często aktualizowany 4) Wyświetlacz jest dużo większy 5) Jest tańszy Przedtem używałem przez 2 lata Bitscope micro: http://bitscope.com/product/BS05/ i byłem też zadowolony, ale od czasu gdy zacząłem zajmować si,ę układami FPGA to pasmo 20 MHz przestało mi wystarczać. W firmie dla której robiłem zlecenie przez kilka miesięcy używałem Hantek'a za właśnie gdzieś około 2 K PLN. Gdybym miał wybór wybrałbym Bistcope Mini ze względu na dużo większy zakres funkcjonalności i większy wyświetlacz. W pracy mam oscyloskop za około 20 K PLN i analizator widma za około 40 K PLN i razem mają zbliżoną do niego BS10 funkcjonalność (oprócz oczywiście od szerszego pasma częstotliwości). Oczywiście masz pełne prawo mieć odmienne zdanie i właśnie po to jest forum. Ja też kiedyś uważałem, że osobny oscyloskop jest lepszy, niestety praktyka tego nie potwierdziła. Stacjonarnego oscyloskopu nie wsadzisz do niedużego plecaka, czy torby, zajmuje sporo miejsca a często dostęp do zabudowanych urządzeń jest utrudniony (np. na jakichś wyjazdach serwisowych). Funkcje software'u są bardzo rozbudowane co często bardzo się przydaje i dość często aktualizowane. Nie obraź się, ale nie uważam, żeby zakup oscyloskopu analogowego miał większy sens niż cyfrowego Pozdrawiam
  22. 2 punkty
    Cześć, wrzucam jeszcze kilka linków dot. szczegółów budowy pamięci SDRAM i budowy ich kontrolerów (z naciskiem na budowę kontrolera w układzie FPGA): https://en.wikipedia.org/wiki/Synchronous_dynamic_random-access_memory#Generations_of_SDRAM https://www.fpga4fun.com/SDRAM.html https://www.design-reuse.com/articles/13805/the-love-hate-relationship-with-ddr-sdram-controllers.html https://www.eetimes.com/document.asp?doc_id=1279726# https://www.eetimes.com/document.asp?doc_id=1274722 https://www.design-reuse.com/articles/20146/ddr-sdram-controller-ip.html https://www.eetimes.com/document.asp?doc_id=1274609&page_number=1 https://www.eevblog.com/forum/projects/anyone-designed-a-ddr-ram-controller/ https://opencores.org/projects/ddr_sdr https://opencores.org/projects/ddr2_sdram https://github.com/alonsorb/ddr-ram-controller-mig http://hamsterworks.co.nz/mediawiki/index.php/MCB_Frame_Buffer Myślę, że te linki będą pomocne, gdyby ktoś musiał obsłużyć pamięć SDRAM z poziomu układu FPGA. Pozdrawiam
  23. 2 punkty
    Z tego co pamiętam założyłem że skoro projekt jest sprawdzony to wszystko powinno działać Na płytce DE1-SoC pamięć DDR działa na pewno, używałem jej jako pamięci dla wbudowanego Cortex-A9 do uruchamiania linuksa i problemów nie było. Miałem za to mnóstwo problemów z jtag-iem i kiedy się w końcu połączyłem właściwie odechciało mi się tym bawić.
  24. 2 punkty
    Cześć! Zakładam, że skoro czytasz ten wpis to zapewne interesuje Ciebie elektronika/robotyka/majsterkowanie i zastanawiasz się jak skonstruować swojego robota. A może szukasz inspiracji? Motywacji do dalszego działania? Jeżeli odpowiedź brzmi tak, to zapraszam Ciebie do przeczytania mojego wpisu. Traktuje on o moim pierwszym elektronicznym projekcie - linefollowerze o wdzięcznym imieniu Ianush88. Wpis podzieliłem na poszczególne fragmenty tak, abyś łatwo trafił do sekcji które Ciebie interesują najbardziej. Początek każdego z nich będzie oznaczony pogrubionym tekstem. To tyle jeżeli chodzi o wstęp, zapraszam do lektury! Ważna uwaga: Ze względu na fakt, że jest to mój pierwszy projekt i ma dla mnie głównie charakter edukacyjny w wielu przypadkach zdecydowałem się na wybór prostych rozwiązań, które o wiele łatwiej zaimplementować i ewentualnie naprawić. Nad optymalizacją konstrukcji postanowiłem się skupić w ewentualnej przyszłej ewolucji tego projektu. Konstrukcja & mechanika Ianush88 to klasyczny przedstawiciel rodziny linefollower - składa się z dwóch płytek PCB połączonych ze sobą dwoma kątownikami z tworzywa sztucznego. Do głównej (większej) płytki PCB przymocowane są silniki prądu stałego Pololu HP z przekładnią 10:1 - standardowy wybór zdecydowanej większości konstruktorów linefollowerów ze względu na optymalny balans między maksymalną prędkością obrotową (3000 obr/min) a generowanym momentem (0,22 kg*cm). Do wałów silników zamocowane są koła Solarbotics RW2 - wybrałem je głównie ze względu na ich bezproblemową dostępność i łatwość w połączeniu z całą konstrukcją. Muszę przyznać, że odpowiednio wyczyszczone generują całkiem sporo przyczepności. Niestety nie mam porównania z oponami mini-z czy odlewanymi z silikonu, ale jestem z nich zadowolony. Przednia płytka PCB zawierająca czujniki linii opiera się na podłożu przy pomocy dwóch tranzystorów THT w obudowie TO-92. Ich nóżki przylutowałem do płytki a obudowy przetarłem lekko papierem ściernym tak, by swoimi krawędziami nie zahaczały o nierówności trasy. Elektronika Robot zasilany jest z akumulatora 2S 7.4V (korzystam z trzech o różnych wartościach pojemności: 150mAh, 250mAh i 800mAh). Napięcie z akumulatora jest stabilizowane i obniżane do 5V przez stabilizator napięcia LM1117. Mózgiem całej konstrukcji jest Atmega16A - wybrana przeze mnie ze względu na moją znajomość tej rodziny mikrokontrolerów. Taktowana jest przez sygnał z kwarcu o częstotliwości 16MHz. Posiada istotne ze względu na projekt peryferia: ośmiokanałowy, 10 - bitowy przetwornik ADC, UART do komunikacji z zewnętrznym urządzeniem oraz trzy timery. Każdy z ośmiu kanałów przetwornika został wykorzystany do pomiarów napięcia z kolektorów czujników odbiciowych KTIR0711S. Znajdują się one na wysuniętej z przodu płytce PCB, umiejscowione symetrycznie po obu stronach. Sygnały między płytkami przekazywane są przy pomocy taśmy i złącz FFC. Timer 1 wykorzystałem do generowania dwóch sygnałów PWM sterujących prędkością każdego z silników. Doprowadzone są one do sterownika silników TB6612FNG, który jest układem z dwoma klasycznymi mostkami H. Do wejść UARTu mikrokontrolera poprowadzone są ścieżki ze złącza goldpin, do którego podłączony jest moduł bluetooth HC-05. Wraz z UART wykorzystuje go do komunikacji między robotem a telefonem lub komputerem. Na głównej płytce znajduje się także 6 - pinowe złącze ISP służące do programowania mikrokontrolera oraz przycisk który można dowolnie zaprogramować (ja używam go do ręcznego startowania/zatrzymywania robota). Dodatkowo na głównej płytce PCB umieściłem 8 LEDów prezentujących wskazania poszczególnych czujników odbiciowych. Całość została zaprojektowana przy użyciu oprogramowania Altium Designer. Obie płytki PCB są jednostronne i rozstawienie wszystkich elementów wraz z ich połączeniem było ogromnym wyzwaniem, co jednak udało się osiągnąć (ostatecznie skorzystałem z tylko jednej "przelotki"). Na płytce z czujnikami widoczne są przeróbki w postaci dolutowanych przewodów - jest to efekt złego zaprojektowania płytki i pośpiechu w przygotowaniach do zawodów... Program Do sterowania robotem zaimplementowałem regulator PD. Wartością zadaną jest w tym przypadku położenie czarnej linii względem robota, a sterowaniem wartości wypełnienia sygnału PWM dla poszczególnych silników. Uchyb wyliczany jest na podstawie pomiarów napięcia na kolektorach poszczególnych czujników odbiciowych. Gdy napięcie przekroczy pewną wartość graniczną, przy której uznajemy, że pod czujnikiem znajduje się już czarna linia do uchybu dodawana jest konkretna wartość błędu. Każdy czujnik ma przypisaną swoją "wagę" i przy każdej iteracji regulatora wyznaczany jest średni błąd, a następnie uchyb i sterowanie. Do regulatora PD dorzuciłem pewne wyjątki, które obsługują takie przypadki jak np. zgubienie linii tak, by robot potrafił na nią z powrotem trafić. Mogę tutaj polecić artykuł "Algorytm linefollowera w C – dla początkujących i nie tylko" , który całkiem dobrze opisuje jak zaimplementować regulator pd do robota typu linefollower. Do zmiany ustawień robota, w tym nastaw regulatora przygotowałem aplikację przy pomocy narzędzia MIT App Inventor. Dobrze jego obsługę prezentuje artykuł: "Tworzenie aplikacji Android". Do komunikacji przygotowałem swój własny protokół o określonej ramce danych. Wprowadzanie danych i naciśnięcie odpowiedniego przycisku powoduje wysłanie wiadomości o konkretnej budowie i zawartości do mikrokontrolera, który ją przetwarza i zmienia wartości odpowiednich parametrów. Przemyślenia Już zaprojektowałem nową płytkę czujników, tym razem mam nadzieję że poprawnie. Teraz będą ustawione zdecydowanie bliżej siebie, ponieważ chcę żeby robot szybciej mógł reagować na zmiany trasy. W przyszłym projekcie na pewno skorzystam już z płytek dwustronnych, co pozwoli na gęstsze upakowanie elektroniki, a co za tym idzie zmniejszenie gabarytów i masy robota. A mniejsza masa = lepsze osiągi. Plus brak problemów z połączeniem wszystkich komponentów. Dostrzegłem także, że kluczową sprawą jest przyczepność mechaniczna - nawet gdy silniki mają duży moment i prędkość obrotową bez przyczepności nie przekłada się to na lepsze wyniki. Dlatego planuję w przyszłości wykorzystanie opon mini-z lub odlewanych z silikonu. Na pewno dojdzie także wykorzystanie enkoderów do pomiarów prędkości obrotowych silników i implementacja regualtorów PID dla silników. Pozwoli to na płynną regulację prędkościami i w konsekwencji mniejszą ilością uślizgów kół. Myślę także o ulepszeniu regulatora dla całego robota, sprawdzeniu kilku ciekawych rozwiązań. To już koniec! Jeżeli masz pytania lub zainteresował Ciebie jakiś temat poruszony w tym wpisie to daj mi znać w komentarzu! Powodzenia przy tworzeniu nowych konstrukcji!
  25. 2 punkty
    Chciałbym zaprezentować konstrukcję malutkiego robota o nazwie Quatro. Budowa przebiegała etapami i trwała łącznie ok. 6 miesięcy. Pierwszym etapem było zbudowanie robota klasy Nanosumo. Prace w tym kierunku zakończyły się sukcesem w niespodziewanie szybkim czasie, dlatego powstał pomysł rozbudowy robota. Z racji, że robot od spodu posiada 3 optyczne czujniki odbiciowe, postanowiłem napisać program do linefollower’a. Od tej pory robot spełniał już 2 zadania. Widząc ogromny potencjał, który posiada malutka platforma, postanowiłem wykorzystać ją w jeszcze jeden sposób. Nad ogniwem zasilającym umieściłem transceiver i zbudowałem nadajnik. Za jego pomocą, dzięki wykorzystaniu potencjometrów oraz przycisków, można było zdalnie sterować robotem na kilka różnych sposobów. Miesiąc później Quatro był już sterowany z klawiatury telefonu z wybieraniem tonowym DTMF i posiadał kolejny moduł nad transceiver’em. Jego zadanie było stricte pokazowe i miało na celu przypominać pojazd uprzywilejowany. W maju br. roku do robota wprowadziłem komunikację dwukierunkową, a nadajnik radiowy został wyposażony w graficzny wyświetlacz LCD. Następnie wymieniłem silniki i dalmierze oraz płytkę PCB, na której znajduje się ogniwo zasilające. Kolejną funkcją jest sterowanie robotem za pomocą bezprzewodowej myszki optycznej. Reasumując robot posiada następujące funkcje: Nanosumo Linefollower Zdalnie sterowany za pomocą nadajnika radiowego Zdalnie sterowany z wykorzystaniem telefonu komórkowego Zdalnie sterowany przez zmodyfikowaną komputerową mysz optyczną Robot jak również pozostałe elementy są przystosowane do rozbudowy i tworzą zestaw dydaktyczny. Nanosumo Robot tej klasy musi spełniać kilka zasad. Jego wymiary nie mogą przekraczać 25mm*25mm*25mm. Quatro mieści się oczywiście w tych granicach, jednak bez PCB z modułem radiowym, który jest mu zupełnie niepotrzebny podczas walki na ringu, a jego obecność mogłaby stwarzać pewne kontrowersje. Waga robota nie powinna przekraczać 25g. Ten warunek także jest spełniony. Pozostałe zasady są takie same jak w większych klasach sumo i nie widzę potrzeby ich tu wymieniać. Orientację na ringu robotowi zapewniają trzy optyczne dalmierze. Ich elementem wykonawczym są HSDL-9100 współpracujące z układami APDS-9700. Oba te komponenty zawdzięczam firmie WObit i chcę je polecić wszystkim szukającym miniaturowego dalmierza o zasięgu nawet do 20cm . Elementy te znajdują się na PCB pod ogniwem li-ion. Od spodu umieszczone są trzy optyczne odbiciowe czujniki linii. Dwa z przodu i jeden z tyłu. Algorytm jest standardowy, tu nie wymyśliłem nic specjalnego. Linefollower Do wykrywania linii robocik wykorzystuje dwa przednie czujniki. Ze względów konstrukcyjnych robot jeździ po czarnym podłożu wzdłuż białej linii. Jest to spowodowane sposobem wykonania układu przerwań, który jest przystosowany do walk na dohyo. Oczywiście można nie wykorzystywać przerwań , jednak spowolni to przejazd po linii. Nadajnik Zdjęcie przedstawia obecną wersję nadajnika. Zielonym kolorem zaznaczone są guziki, za pomocą których można sterować robotem oraz po wybraniu odpowiedniej kombinacji, jego funkcjami. Czerwony kolor wskazuje gałki potencjometrów suwakowych. Lewy potencjometr służy do proporcjonalnego sterowania lewym kołem, prawy potencjometr analogicznie. W prawym, dolnym rogu, żółtym kolorem zaznaczony jest mikrofon, który odbiera sygnał DTMF. Diody LED zaznaczone jasnoniebieską obwódkami pokazują kierunek obrotu kół. Srebrna gałka potencjometru, na środku, służy do sterowania prędkością robota podczas używania guzików. Wartość jaką wybraliśmy za jej pomocą, można kontrolować na wyświetlaczu. Jest zaznaczona kolorem zielonym. Kolor czerwony i fioletowy pokazują odpowiednio stany czujników linii oraz dalmierza. Kolorem żółtym zaznaczone jest dwadzieścia dziewięć strzałek. Są to wskaźniki funkcji, o której wcześniej nie wspomniałem. Mianowicie robot może wykonywać cyklicznie wcześniej zaprogramowane ruchy. Ich kierunek wskazują właśnie te strzałki. Wykonywany aktualnie ruch jest negowany na wyświetlaczu. Mysz komputerowa Nie będę umieszczał jej zdjęcia, gdyż niczym się ona nie różni od zwykłej myszy komputerowej na USB. Modyfikacje polegały jedynie na usunięciu jednego z układów scalonych, umieszczeniu wewnątrz transceiver’a, akumulatora i oczywiście mikrokontrolera jakim jest ATmega8l. Do kontroli przemieszczenia użyłem sensora PAN3101. Wykorzystałem także trzy przyciski. Jeden do zatrzymania i dwa do kontroli prędkości robota. DTMF Sterowanie za pomocą telefonu odbywa się w najprostszy sposób. Należy przyłożyć słuchawkę telefonu do mikrofonu umieszczonego na nadajniku i wybrać odpowiedni klawisz. 2-przód 4-lewo 6-prawo 8-tył 1,3,7,9-po skosie *-szybciej #-wolniej 5,0-inne rzadko używane funkcje Dekodowaniem sygnału DTMF zajmuje się układ CM8870. Konstrukcja Robot zbudowany jest w formie „kanapki”. Obecnie składa się z czterech dwustronnych płytek PCB. Na dolnej płycie umieszczone są czujniki linii i napęd oraz niezbędne podzespoły takie jak sterownik silników. Płytka druga mieści procesor ATMEGA8L, złącze do programowania i komunikacji z modułem radiowym. Dalmierze, kontrola zasilania, gniazdo na ogniwo zasilające oraz układ resetu znajdują się na trzeciej płycie PCB. Ostatnia, umieszczona na samej górze płytka PCB, mieści moduł radiowy i jest przystosowana do rozbudowy robota o kolejne płytki. 1-dalmierz 2-silnik 3-złącze do programatora 4-moduł radiowy 5-ogniwo zasilające 6-czujnik linii 7-reset 8-koło i przekładnia 9-połączenie modułu radiowego z mikrokontrolerem
Tablica liderów jest ustawiona na Warszawa/GMT+02:00
×