Skocz do zawartości

Tablica liderów


Popularna zawartość

Pokazuje zawartość z najwyższą reputacją od 27.06.2020 w Posty

  1. 3 punkty
    Witam! Kolejny update. Eksperymentowałem trochę z obsługą wolnych obrotów. Pocztałem trochę na temat cogging torque (okazało się że po polsku nazywa się to moment zaczepowy ). Przetestowałem teorię z minimalną długością wektora i niestety nie zadziałała. Okazało się że gdy zmieniłem sposób sterowania silnika (w momencie gdy zmniejszany był kąt wyprzedzenia, a wektor miał stałą wartość), to PID sobie nie radził. Nic dziwnego w końcu był ustawiany dla sterowania silnikiem przy stałym kącie wyprzedzenia równym 90 stopni, oraz zmiennej długości wektora. Przy odwrotnej sytuacji współczynniki kp, ki, kd już nie pasowały. Musiałbym pewnie wprowadzić oddzielne współczynniki dla obu sytuacji. Na razie zarzuciłem walkę z momentem zaczepowym bo nie było to celem projektu. Wprowadziłem pomiar prądu silnika. Użyłem do pomiaru rezystora bocznikowego 0,1 ohm, oraz wzmacniacza x20 V/V (INA2181A). Wyjście wzmacniacza podłączyłem do ADC mikrokontrolera. Dodałem też prosty interfejs przez UART. Aktualnie można wydawać następujące komedy: 1. "torque [wartość]" - uruchamia tryb stałego momentu, wartość od -255 do +255 W tym trybie długość wektora jest zawsze stała i nie zależy ani od pozycji, ani od prędkości czy obciążenia 2. "speed [wartość]" - uruchamia tryb stałej prędkości, wartość to ilość obrotów/minutę ze znakiem. 3. "pos [wartość]" - uruchamia tryb stałej pozycji wału, wartość 0 do 360 stopni. 4. "current [wartość]" - ustawia makymalny prąd silnika. Ograniczenie to ma priorytet nad wszystkimi trybami pracy kontrolera. W międzyczasie spaliłem też mikrokontroler na płytce nucleo gdy przez nieuwagę do ADC zamiast wyjścia ze wzmacniacza podłączyłem jedną z linii zasilania silnika Na szczęście wlutowanie nowego układu załatwiło sprawę i płytka znów działa Poniżej filmik z działania ograniczenia prądu silnika: Pozdrawiam, Marek
  2. 3 punkty
    Cześć wszystkim, Mam na imię Marek. Przez ostatnie kilka lat byłem tylko okazjonalnym czytelnikiem forum. Teraz to pewnie się zmieni, ponieważ postawiłem przed sobą nowe wyzwanie. Jest nim zdobycie możliwie dogłębnej wiedzy o uC z rodziny STM32. Mam wykształcenie elektroniczne i długoletnie doświadczenie w projektowaniu i programowaniu układów sterowania opartych na 8 bitowych AVR. Urządzenia programuję w C, C++ oraz Delphi na PC-ta. Teraz będę przecierał nowe ścieżki związane z STM-ami. Na początek poszedł przygotowany przez Wasz zespół, kurs bardzo pomocny przy stawianiu pierwszych kroków. Pozdrawiam Marek
  3. 2 punkty
    Tak, projektujemy i produkujemy m.in. układy elektroniki bezpieczeństwa ruchu drogowego, np. sekundniki na skrzyżowaniach, sygnalizatory akustyczne na przejściach dla niewidomych, przyciski zgłoszeniowe dla pieszych, itp. Wszędzie tam siedzą 8 bitowe AVR-y lub PIC-e.
  4. 2 punkty
    Przeglądam Twoje aktualizacje i muszę Cię pochwalić za profesjonalne podejście do tematu. Są eksperymenty, wnioski i rzeczowe poprawki. Nie łapiesz się od razu za sam cel tylko pomału do niego brniesz (tu takie nawiązanie do podejścia, które ostatnio się w wielu miejscach panoszy - Chcę bibliotekę Arduino która zrobi wszystko...) Mało jest ludzi z takim podejściem, także tak trzymaj
  5. 2 punkty
    @ceiem super, rysowanie kilku wykresów działa i logika kosatki do gry też jest Możesz jeszcze popróbować zapisać program tak, żeby po przytrzymaniu przycisku nie losowało cały czas nowych liczb - w zwykłej grze pewnie by to było uciążliwe ale tak to super, fajnie że robisz zadania dodatkowe!
  6. 2 punkty
    Historyczne ceny z zakończenia dnia znajdziesz na stooq. A co to samej predykcji, w internecie jest sporo tutoriali gdzie ktoś robi to zwykle na LSTM i amerykańskiej giełdzie, albo swego czasu BTC. Na przykład https://www.kaggle.com/humamfauzi/btc-price-prediction-using-lstm Jako ciekawostka spoko, ale w ten sposób nie przewidzisz cen.
  7. 2 punkty
    Skoro cewka jest na prąd zmienny to czemu usilnie szukasz przetwornicy DC=>DC? 1. Opcja Skoro masz stycznik, z cewką na "nietypowe" napięcie, to najprostszym wyjściem z impasu jest rozebranie stycznika i wymianie cewki na nową z napięciem pracy ~230V. Oczywiście też na prąd zmienny musi być nowa cewka, jak stara była na taki prąd !! Inaczej, spalisz nową cewkę. Trochę roboty, ale notabene najmniejszy koszt, i nie zajmuje ci nic dodatkowego miejsca, jak w opcji 2. 2. Opcja Do sterowania obecną cewką, potrzebujesz 50V prądu zmiennego. No to zamiast kombinować wystarczy zdobyć transformator 230/400V (co wygodniej) na 50V i już masz potrzebne napięcie sterowania. STEROWANIE stycznikiem. dla obu opcji notabene. Można oczywiście, elektronicznie przez opto-triaka typu MOC + triak malej mocy, ale prościej zastosować sobie dodatkowy tzw. przekaźnik interfejsowy z cewką na 5V który już bez problemu wysterujesz z Arduino, i jego stykiem sterować cewkę stycznika.
  8. 2 punkty
    Niestety oba sposoby nie pomogły ale zauważyłem że taśma z przewodami od kamery była poluzowana i bez problemu wyszła z gniazda. Może mocowanie było poluzowane albo zatrzask? Czy jest możliwe że doszło do uszkodzenia kamery? EDIT: poprawiłem mocowanie taśmy i po tym zauważyłem, że nie domknąłem zatrzasku od zewnętrznej strony. Poprawiłem i już działa dobrze. Dzięki za pomoc. Specjalnie założyłeś konto, żeby pomóc innym w takiej sprawie? Szanuję
  9. 2 punkty
    Nie chodzi o X i Y, ale o dryft kąta (X i Y nie mają z tym nic wspólnego). Chciałeś aby nieruchomy miernik nie pokazywał że się kręci, prawda? Więc niestety - metodą prób i błędów. Pamiętaj tylko o jednej ważnej sprawie: żyroskop nie pokazuje jakichś tam kątów, ale prędkość kątową, a program na tej podstawie oblicza o ile "przekręcił się" miernik. Niestety - Ziemia też się kręci, i to całkiem szybko, dlatego prędkość kątowa będzie dla nieruchomego miernika zawsze różna od zera - i tę wartość musisz znaleźć. Automatyczna kalibracja nie jest niestety zbyt dokładna...
  10. 1 punkt
    Każdy kiedyś zaczynał, a jak nic jeszcze nie wiesz, to ciężko się w Internecie szuka, bo nawet nie znasz odpowiednich słów. Dlatego podpowiadam terminy, ale nie ma potrzeby zaraz się nad człowiekiem znęcać.
  11. 1 punkt
    Jestem początkująca w Arduino, ale coś tam już próbuję robić. Śmiesznego, ale jak dla mnie mimo wszystko rozwijającego moje umiejętności w zabawie z Arduino 1) Pianinko z brzęczykiem: 2) Perkusja podłączona do GarageBand: Ach i problem z ziemniakami mam taki, że zanim dotknę ziemniaka wydawany jest dźwięk i nie wiem dlaczego. Może ktoś w tej kwestii mógłby mi pomoc. Ziemniaki są podpięte pod wejścia analogowe.
  12. 1 punkt
    Niecodzienny projekcik, aż się uśmiechnąłem :D
  13. 1 punkt
    Warto zamieścić w artykule informację o ogólnym wzorze na opór zastępczy połączenia równoległego, bo obecnie podany jest trudny do rozszerzenia. O ile się nie mylę, dla n oporników mamy wzór na opór zastępczy: 1/Rz = 1/R1 + 1/R2 + ... + 1/Rn
  14. 1 punkt
    Jak to nie ma? Arduino IDE ciągnie za sobą cały avr-libc, a stdio to akurat integralna część tej zacnej biblioteki. $ find ~/arduino-1-8-13 -name "*stdio*" /home/ethanak/arduino-1.8.13/hardware/tools/avr/avr/include/stdio.h Co to jest Twoim zdaniem?
  15. 1 punkt
    Cześć wszystkim, Mam na imię Paweł. Z elektroniką mam niestety niewielkie doświadczenie (ot parę diod, przełącznik i pudełko z bateriami), jednakże bardzo chętnie dokształcę się w tym temacie (kursy z podstaw elektroniki już zaczęte). Uzyskaną wiedzę głównie chcę wykorzystać w celach hobbystycznych do włożenia trochę życia w różne modele nad którymi pracuję w wolnym czasie (obecnie na tapecie statki ze Star Treka ). Na razie chcę zacząć powoli od prostych schematów oświetlenia ale z czasem kto wie, może w ruch pójdzie Arduino lub inna platforma Pozdrawiam, Paweł.
  16. 1 punkt
    Ciekawy projekt, będę częściej tutaj zaglądać i obserwować. Myślę, że po wykonaniu założonych celów fajnie można pociągnąć dalej ten projekt i rozbudować go o różne ciekawe funkcjonalności. Chciałbym zobaczyć finalną wersję w akcji. Powodzenia!
  17. 1 punkt
    Dzień dobry, na wstępie opiszę z grubsza założenia projektu - w przyszłości pracy inżynierskiej. Priorytetowym zadaniem, jakie ma stanąć przed moim robotem jest okrążenie kampusu mojej uczelni. Teren nie jest prosty, robot będzie miał do pokonania wyboiste drogi(częściowo przejazd przez las), krawężniki, trawniki i parkingi. Sterowanie ma być ręczne, realizowane zdalnie, za pośrednictwem internetu. Okrążenie to około 3km, zakładany czas przejazdu to niecała godzina. Konstrukcja opiera się na ramie zbudowanej z profili alu, o wymiarach 400x600. Do ramy będzie przymocowane większość osprzętu robota. Zawieszenie niezależne, 4 wahacze wzdłużne zawieszone na amortyzatorach do samochodów rc. Jako napęd 4 silniki wraz z przekładniami od samochodów dla dzieci. Koła 12 cali od wózka dziecięcego Część elektroniczna składa się z: Raspberry Pi 3, ICSTATION UNO, 4xmostek H VNH2SP30, przetwornica napięcia 5v USB, czujniki odległości(jeszcze nie wybrane), kamera(prawdopodobnie internetowa usb) Tyle z założeń, robot jest już w zaawansowanej fazie budowy. Zaczęło się od projektu w semestrze zimowym 2019/2020, projekt został zaliczony, jego dokumentacja tutaj(dokumentacja), a filmik zaliczeniowy z pierwszej jazdy terenowej poniżej Na tej fazie robot całą elektronikę miał zamontowaną "na taśmę", ze względu na zamówienie niewłaściwych kołków do pcb, a termin gonił. Obecnie robot jest rozebrany z całej elektroniki, powstaje miejsce w którym pojawią się akumulatory i elektronika(puszka elektryczna), osobny wyłącznik awaryjny oraz doprowadzenie kabli do silników. Poniższe zdjęcie przedstawia obecny stan robota: Aktualnie czekam na osłony na silniki wydrukowane w 3d, po zamontowaniu wszystkiego z zewnątrz będę mógł przejść do środka. W środku planuję zrobić ramkę z kątownika alu 20x20, w której będą miejsca na akumulatory(dwa akumulatory umieszczone po bokach), a pomiędzy nimi ma zostać umieszczona elektronika w sposób warstwowy(poziom 1: mostki H, poziom 2: ICSTATION UNO, poziom 3: Raspberry Pi 3). Poza tymi warstwami muszę znaleźć jeszcze miejsce na przetwornicę napięcia i mobilny ruter wifi. Całą ramkę chcę umieścić na gąbce, która by amortyzowała wstrząsy, tak samo zabezpieczyłbym moduł od góry. Dziękuję za uwagę, postępy i pytania będę starał się wrzucać tu na bieżąco.
  18. 1 punkt
    Dzięki Yubi Wiedzę elektroniczną zdobywałem w trakcie projektowania i prototypowania, kursy Forbota dały mi na prawdę fajny start. Potem już noty katalogowe, tani oscyloskop i debugowanie problemu po problemie, aż się skończyły problemy Programowaniem zajmuję się od dzieciaka i zawodowo od 16 lat, skończyłem też studia informatyczne z (między innymi) specjalnością AI, więc sam engine szachów zajął mi mniej więcej czas oczekiwania na realizację zaprojektowanych płytek - dzięki temu też mi się tak nie dłużyło
  19. 1 punkt
    Szanowni Państwo, cieszę się, że mogę wejść w ten niezwykły świat diód i tranzystorów. Tatuś już ma dla mnie zlecenie naprawy pastucha, więc biorę się czym prędzej za zabawę. Pozdrawiam wszystkich zapalonych elektryków.
  20. 1 punkt
    Co do numeracji w tablicach od zera to wiem (czytałem to co było polecane). U mnie wiersz 0 to wszystkie diody zgaszone ( czyli miał być wykorzystany zamiast default) . A pierwszy warunek- jedna doda zapalona ( czyli wiersz numer 1 z tablicy)... Zdania z podręcznika raczej też mi nie pomogą, przeczytałem je w podręczniku kilkanaście razy. Raczej liczyłem na to, że ktoś w wolnej chwili i z dobrej woli napisze ze dwie linijki kodu, których mi brakuje do pełni szczęścia. Wtedy mógłbym je wykorzystać do wykonania zadania i przeanalizować na swój sposób i czegoś się nauczyć, bo chyba po to był stworzony dany kurs... Przecież za wykonanie zadań nikt żadnych nagród nie daje, to też i praktyczne przykłady rozwiązań nie są jakąś tajemnicą... Czytać podręcznik fajna sprawa, ale dla kogoś, kto z programowaniem spotyka się po raz pierwszy nie wszystko, tam opisane, jest takie przejrzyste oczywiste i zrozumiałe . . . Dzięki za poświęcony czas. Pozdrawiam
  21. 1 punkt
    Cześć, na początek chciałbym się przywitać. Nie pamiętam czy pisałem coś na forum, a jeżeli tak to musiało być bardzo dawno. Zaprojektowałem urządzenie serwera HTTP na bazie stm32f207 i DP83848 (PHY). Oprogramowanie wygenerowałem z użyciem najnowszego CubeMX oraz wersji biblioteki dla procesora stm32f207 v1.9. Wykorzystałem LWIP jako stos TCP/IP oraz FreeRtos-a jako system, komunikacja TCP za pomocą netconn. Wygenerowany szablon zmodyfikowałem na wzór dostarczonego przez ST. Utworzyłem wątek http_server_netconn_thread(), w którym oczekuję na informacje ze strony. Nic odkrywczego. Pierwsza linia to utworzenie nowego wątku a poniżej jest sam wątek. httpTaskHandle = sys_thread_new("HTTP", http_server_netconn_thread, NULL, 4095, osPriorityHigh); void http_server_netconn_thread(void *arg) { static struct netconn *TCPListener, *newconn; static err_t err, conn_check, deleteErr; TCPListener = netconn_new(NETCONN_TCP); if (TCPListener != NULL) { err = netconn_bind(TCPListener, IP_ADDR_ANY, PORT_60662); if (err == ERR_OK) { netconn_listen(TCPListener); while(1) { netconn_set_recvtimeout(TCPListener, TIME_DELAY_500_MS); conn_check = netconn_accept(TCPListener, &newconn); if(osOK == osTimerStart (timeOutHttpServerHandle, TIME_DELAY_60_SECONDS)) { timerHttpStatus = TIMER_RUN; } if(ERR_OK == conn_check) { http_server_serve(newconn); netconn_close(newconn); netconn_delete(newconn); } osTimerStop(timeOutHttpServerHandle); } } else { netconn_close(newconn); netconn_delete(newconn); } } } Funkcja http_server_serve(newconn)() sprawdza czy przyszło zapytanie http i na nie reaguje. Również nic odkrywczego. void http_server_serve(struct netconn *conn) { connCheck = netconn_recv(conn, &inbuf); if(connCheck == ERR_OK) { if (netconn_err(conn) == ERR_OK) { // pobranie danych do bufora netbuf_data(inbuf, (void**)&buf, &buflen); analiza_metody_GET(buf); analiza_metody_POST(buf); } } netconn_close(conn); netbuf_delete(inbuf); } Jeżeli przyszło zapytanie ze strony, program wysyła odpowiedź na to zapytanie. I mógłbym powiedzieć, że wszystko działa. Program działa dobrze do czasu gdy pracuje w sieci lokalnej. Problemy zaczęły się gdy udostępniłem stronę poza sieć lokalną. Szczególnie zauważalne to jest gdy chcę wyświetlić stronę na smartfonie poprzez sieć komórkową. Dane do przeglądarki przesyłam za pomocą funkcji netconn_write_partly(). netconnResult = netconn_write_partly(conn, buffer_send, len, NETCONN_NOCOPY, &written); Niestety po pewnym czasie program blokuje się na tej funkcji i pozostaje już tylko reset. Sytuacje taką zauważyłem przy przesyłaniu do przeglądarki pakietów danych o objętości 6,5 kB. Przy przesyłaniu pakietów o objętości poniżej 1kB takich problemów nie zauważyłem. Przeglądając internet znalazłem parę wątków o problemach z oprogramowaniem od ST. Niestety nie pomogły mi rozwiązać mojego problemu. Pytanie do osób przerabiających temat serwera www na stm32 czy przerabiały podobny problem lub czy istnieje możliwość włączenia dla tej funkcji timeout-u umożliwiającego jej opuszczenie i dalsze działanie urządzenia?
  22. 1 punkt
    Zobacz regulamin operatora. Używanie normalnych kart SIM w modułach jest zwykle zabronione. Od tego są karty M2M.
  23. 1 punkt
    Wsadź na wszelki wypadek zwykły bezpiecznik topikowy przed zasilaczem (niezależnie od tego jaki zasilacz zastosujesz) - drogo nie kosztuje, co najwyżej nigdy nie będzie miał okazji zadziałania, a Ty będziesz spać spokojnie. Jeśli zastosujesz zwykły przekaźnik to zanik zasilania spowoduje fizyczne odłączenie lampy. Bardziej prawdopodobne jest to, że jakiś błąd w programie spowoduje, że przekaźnik się nie wyłączy (albo włączy wtedy kiedy akurat nie chcesz) - ale tu już żadne zabezpieczenia nie pomogą
  24. 1 punkt
  25. 1 punkt
    @Vova tak, niestety masz tutaj racje - to moje niedopatrzenie, bo ostatecznie tablice nie zostały omówione. W nowej odsłonie kursu temat ten będzie już omówiony O wszystkich aktualizacjach będziemy informować na blogu (teraz działamy nad odświeżeniem kursu elektroniki II, później TC i RPi oraz Arduino).
  26. 1 punkt
    Niekoniecznie ten. Ja np. polecałbym podręczniki na Wikibooks - podręcznik C i podręcznik C++ (czytane w tej kolejności). Pamiętaj, że podręcznik i kurs to dwie absolutnie różne rzeczy: kurs jest po to, aby szybko i w miarę bezboleśnie opanować pewne podstawy - i jak w naszym przypadku móc zacząć (uwaga na podkreślenie) zabawę z Arduino. Absolutnie nie może omawiać wszystkich możliwości danego języka (C/C++ w naszym przypadku) bo po pierwsze jest tego za dużo jak na początek, a po drugie przestałby to być kurs Arduino z elementami języka programowania, a kurs (czy może już podręcznik) programowania w C/C++ z niektórymi przykładami zrealizowanymi na Arduino... To tak jak z kursem na prawo jazdy. Owszem, przygotuje Cię do podjechania samochodem z fasonem po panienkę - ale nie zastąpi przeczytania Kodeksu Drogowego ani nie przygotuje do Rajdu Dakar...
  27. 1 punkt
    @ceiem Choć mostek jest jeden to posiada 2 kanały. Oznacza, że z jednego układu scalonego możesz sterować 2 silnikami. które wyprowadzenia do tego służą? Jest to opisane w dokumentacji, która jest podlinkowana w kursie: Do nóżek output podłączasz silnik. Możesz wybrać pary po danej stronie układu np. 1 silnik to OUTPUT1 I OUTPUT2, a 2 silnik to pozostałe 3 i 4. Nie ma znaczenia, które podłączysz do którego kabelka z silnika, co najwyżej będzie kręcił się w drugą stronę w stosunku do sąsiedniego silnika.
  28. 1 punkt
    Zadanie 10.3 void setup() { Serial.begin(9600); pinMode(7, INPUT_PULLUP); randomSeed(analogRead(A0)); } void loop() { if(digitalRead(7) == LOW) { Serial.println(random(1,7)); delay(300); } }
  29. 1 punkt
  30. 1 punkt
    Cześć @FlyingDutch, niestety o Kerasie tylko słyszałem , więc od strony technicznej nie pomogę, ale odnośnie pobrania próbek danych giełdowych, może to się przyda: Nie wiem, czy format Excela Ci odpowiada. Nie umiem również powiedzieć, czy takie prognozowanie się sprawdzi (tzn powinno się sprawdzić, ale nie wiem z jaką dokładnością), ale zachowanie giełdy jest bardzo, bardzo losowe i dalekie od modeli matematycznych Ogólnie jest kilka projektów opisanych podobnych, możesz sprawdzić jak wyglądała ich skuteczność: Pozdrawiam
  31. 1 punkt
    No pewne - jak próbowałeś zmieścić 20 bajtów w ośmiobajtowym buforze to się nie dziwię. Tak samo - jeśli zamiast poczytać i zrozumieć jak to działa kombinujesz z jakimiś dziwactwami podatrzonymi w przykładach dotyczących czegoś zupełnie innego. Już Jonathan Swift opisywał podobne przypadki... milion małp posadzonych przy klawiaturze... w końcu któraś napisze Hamleta ok, więcej nie napiszę bo się admin doczepi że jestem niegrzeczny.
  32. 1 punkt
    @Gieneq Chętnie się zmierzę z postawionym zadaniem, tylko nie wiem czy "tablice" już były omawiane wcześniej i coś mi umknęło. Może podrzucisz jakiegoś linka, gdzie można zaczerpnąć trochę informacji o wykorzystaniu "tablic". . .
  33. 1 punkt
    Witam Wszystkich Użytkowników, mam 21 lat, studiuję na Politechnice Warszawskiej. Zainteresował mnie kurs elektroniki, ponieważ nie miałem praktycznych zajęć z tego zakresu, a uważam, że elektroniki powinno uczyć się w praktyce :) Pozdrawiam
  34. 1 punkt
    Z chęcią dam znać co i jak. Mam nadzieję, że uda mi się go zrealizować. Póki co dziękuje za polecone płytki
  35. 1 punkt
    Hej, mam na imię Krzysiek, jestem dojrzałym wiekowo informatykiem i na co dzień zajmuję się wdrażaniem "dużych" systemów klasy ERP. Programowanie interesuje mnie od zawsze, chociaż miałem kilkuletnią przerwę. Ostatnio zacząłem odkrywać otwarte rozwiązania pomagające "zautomatyzować" dom (np. openHab) i pewnie w ramach profilowania wyświetliłą mi się reklama forbot.pl. Z elektroniką nie miałem za bardzo dotychczas do czynienia (nie licząc składania sobie kolejnych PC-tów), ale zapalanie diod via PC i Arduino już mi sie podoba i mam ochotę na więcej. Do usłyszenia na forum
  36. 1 punkt
    @Piotrstrama również serdecznie witam mojego imiennika Powodzenia w nauce, pewnie śmiało pytaj
  37. 1 punkt
    Z grubsza można powiedzieć ze mam już co chciałem. Dzięki ethanak, bez Ciebie by mi sie nie udało. Jeszcze mam takie pytanie - czy duzo roboty by było żeby usunąć z kodu DISTANCE i ROLLER ? Tych funkcji nie używam, a trzeba w menu przez nie przeskakiwać
  38. 1 punkt
    Witam szanowne grono:) mam na imię Piotr, interesuje się elektroniką i astrofotografią, od niedawna również programowaniem, dopiero startuje i na pewno będę miał mnóstwo pytań do doświadczonych członków forum:))
  39. 1 punkt
    Można korygować dalej, po prostu print wyświetla liczby do dwóch miejsc po przecinku. Tyle że w pewnym momencie przestanie to być skuteczne (taki urok działań na floatach).
  40. 1 punkt
    @Gieneq aaaa teraz rozumiem. Dziękuję bardzo Zamówiłem wczoraj zestaw do drugiej części i działam dalej... Świetny kurs.
  41. 1 punkt
    @Vova Super! To teraz zadanie dodatkowe Wiesz jak wyrzucić cały switch-case? Tu podpowiem: możesz użyć tablic, zapisać do ich wyprowadzenia i wartości i poprzez odwołanie się do tego co jest w case odwołasz się do np. wiersza w tablicy, gdzie jest to zapisane. Np,: int pins[6] = {ledPin2, ledPin3, ..., ledPin7}; // ta tablica służy do odwoływania się do tych samych pinów w tej samej kolejności //teraz definiujesz tablice które służą wyświetlaniu poziomów odległości: int dists[7][6] = { {LOW, LOW, LOW, LOW, LOW, LOW}, //indeks 0 zamiast default - możesz zrobić warunek, że jak przekroczy zakres od 1 do 6 to jest 0 {}, ... //wartości dla indeksa 1 itd {} } Spróbuj zrobić w ten sposób
  42. 1 punkt
    Jeżeli zapala się przy kręceniu to raczej normalna sytuacja, ale czemu nie świeci tak po prostu? Nie masz przypadkiem rozłączonej zworki? Bo tam powinien dopływać prąd z baterii.
  43. 1 punkt
    Moje pytanie, czy już wiesz cokolwiek na temat uczenia maszynowego? Jeśli nie, polecam zacząć od podstaw - kursów z Machine Learning jest dość sporo. Sprawa numer dwa - zdecydowana większość (jak nie wszystkie) dobrych materiałów jest po angielsku, więc polecam też skupić się na rozwoju tej umiejętności Jeśli chodzi o same materiały: - kaggle: (od podstaw Pythona, przez ML, wizualizacje, inzynieria cech i trochę o deep learning), poza tym jest to portal, na którym jest sporo innych ciekawych rzeczy jak na przykład różne zadania, w których można się sprawdzić - klasyk od Andrew Ng z uczenia maszynowego: w zasadzie jest to kurs z portalu Coursera - sieci konwolucyjne, jeden z klasyków z Uniwersytetu Stanforda Powiedzmy, że to są takie podstawy. Stąd do aplikacji uczenia maszynowego do robotyki jeszcze daleko. Ale... istnieje już trochę projektów i platform, które wykorzystują te rzeczy i analizując te projekty można się sporo nauczyć. - https://f1tenth.org/learn.html - zawody autonomicznych samochodów w skali 1/10, sprzęt jest ustandaryzowany (mniej więcej), zadaniem zawodników jest praca nad algorytmami - donkeycar: autonomiczne auto na bazie RaspberryPI - DEEPDRIVE.PL sporo ciekawych postów na swoim blogu ma też Karol Majek Inne tematy, które mogą być dla Ciebie interesujące w przyszłości to np. Reinforcement Learning. Metody te pozwalają na uczenie się agenta (twojego modelu), jak sterować układem. Aczkolwiek, sensowne wyniki jak na razie możesz uzyskać tylko w symulacji (polecam, np. OpenAI gym). Z mojego doświadczenia mogę powiedzieć tyle, że warto na początek skupić się na tym (1) jak działa samo uczenie maszynowe, (2) jak działa np. TensorFlow, Keras albo PyTorch. (3) Spróbuj wytrenować sieć, która jest w stanie rozpoznać coś na obrazku i mniej więcej określić pozycję. Wówczas możesz spróbować wykonać prostego line followera poprzez prostą kontrolę silników w zależności od położenia obiektu na obrazie. AI to temat rzeka. Pytanie, czego konkretnie potrzebujesz Najprostsze rzeczy, które może zrobic każdy to integracja wizji komputerowej albo audio z jakimiś kontrolerami. Zdecydowanie wyższa szkoła jazdy to jakieś AI kontrolujące zachowania "wyższego poziomu", ale tutaj jeszcze nie doszedłem. Jak na razie to w ubiegłym roku z kolegami braliśmy udział w zawodach autonomicznych dronów (AIRR). Hardware był ustalony i należało napisać autopilota, który będzie sterować dronem wykorzystując kamery i IMU. Generalnie polegało to na tym, że brałeś obraz z kamer, szukałeś obiektów i zwracałeś jakieś liczby, a dalej to już jakieś klasyczne algorytmy, które robiły fuzję, a następnie sekcja odpowiadająca za nawigację. Mam nadzieję, że trochę pomogłem.
  44. 1 punkt
    @Tobitobiasz44 prawdopodobnie dlatego, że autorzy posługuję się tym językiem na co dzień i/lub chcieli dotrzeć z nim do większego gron odbiorców
  45. 1 punkt
    Nie ma nic lepszego od zimnego napoju, gdy za oknem upał. Szkoda tylko, że nie zawsze można mieć dostęp do lodówki. Okazuje się, że jednak można! Oto autonomiczna podstawka DIY pod turystyczną lodówkę, która będzie Was śledziła. Od teraz zimny napój będzie zawsze (dosłownie) tuż za wami! [blog]https://forbot.pl/blog/mobilna-lodowka-diy-ktora-bedzie-was-sledzic-dzieki-arduino-id36854[/blog]
  46. 1 punkt
    Z góry zaznaczam, iż projekt jest baaardzo stary, ma już blisko 3 lata. Jego celem było zbudowanie czegoś pływającego, a związku z tym, że aktualnie trwały wówczas wakacje, pomyślałem, że spróbuję swoich sił w pseudo-modelarstwie Tak powstała bardzo prosta łódka - w założeniu, miała być gabarytowo podobna do kartki A4, sterowana przez Bluetooth i pozwolić na zdalne sterowanie na odległość kilku-kilkunastu metrów - na początku może krótki film: Konstrukcja Na początku, próbowałem wyfrezować klocek drewniany w kształcie korpusu, ale okazał się zdecydowanie za ciężki - chciałem, by był lity, bez drążenia wewnątrz, gdyż nie miałem żadnego doświadczenia z uszczelnianiem i zabezpieczaniem elektroniki/mechaniki przed wodą. Wybór padł więc na wycięcie kadłuba z dużego kawałka pianki poliuretanowej, który potem odpowiednio wyszlifowałem, ściąłem przód (aby był odpowiednio wyprofilowany), a całość pomalowałem kilkukrotnie czerwonym spray'em. Napęd i ster Silnik jest umieszczony na specjalnej (drukowanej 3D) podstawce, jego oś jest skierowana 30 stopni w dół względem płaszczyzny podłoża. Następnie jest połączony z wałem - fragmentem prętu gwintowanego M3, na końcu której znajduje się 3-łopatkowa śruba napędowa. Sam pręt umieszczony jest w dwóch, wklejonych w piankę, tulejkach stalowych, które toczyłem samodzielnie. Ich podstawową funkcją jest łożyskowanie, nie musiały być idealnie wodoszczelne przez to, że całość elektroniki.mechaniki jest umieszczona na, a nie w kadłubie. Sam ster to również drukowana 3D (jak patrzę z perspektywy czasu, to daleko było tym wydrukom do doskonałości ) płytka, umieszczona na wysięgniku i poprzez popychacz (odpowiednio wygięty drucik) połączona z orczykiem serwomechanizmu modelarskiego. Elektronika i oprogramowanie Tutaj również nic wyszukanego - prosty układ składający się Arduino Pro Mini, kilku kondensatorów chroniących mikrokontroler przed spadkami napięć wywołanymi rozruchem silnika, moduł BT HC-05 oraz przekaźnik (wklejony w korpus), służący właśnie do załączania napędu. Całość zasilana jest akumulatorem Li-Pol 7,4V 700mAh. Aplikacja sterująca na system Android to oczywiście stworzona w App Inventor'ze prosty program, umożliwiający połączenie się z modułem BT oraz przyciski: silnik ON/OFF oraz te służące do regulacji kąta wychylenie serwa. Wsad dla Arduino "nasłuchuje" natomiast software'owego SerialPort'u i podejmuje odpowiednią akcję w zależności od otrzymanej literki. Kilka zdjęć Wnioski Łódka, mimo, że stosunkowo prosta, wręcz jak teraz na nią patrzę, to banalna , dostarczyła wiele radości, spełniła podstawowe założenie - pływała i to w sposób kontrolowany oraz uświadomiła mi, że jednak bardziej wolę amatorską robotykę. Odnośnie pytań, dlaczego nie zabezpieczyłem elektroniki i całość jest przyklejona "tak luzem", to zdecydowałem tak zrobić ze względu na prostotę i fakt, że powierzchnia górna kadłuba jest podwyższona względem lustra wody o jakieś kilka cm; a całość jest stabilna i wolna, związku z tym przy spokojnej wodzie żadne zalanie (czy, co gorsza, wywrócenie "do góry nogami") konstrukcji nie grozi Pozdrawiam
  47. 1 punkt
    Cześć! Jako początkujący elektronik nie zdawałem sobie początkowo zbytnio sprawy z szkodliwości wdychania dymu powstającego przy lutowaniu, dlatego przy pracy nie używałem dotychczas żadnego wentylatora, siłą rzeczy opary leciały wprost na mnie i po kilku godzinach w takich warunkach najczęściej wieczorem pojawiały się np. bóle głowy, kaszel, już nie myśląc o tym jakie skutki przyniosło by to przyszłości. Postanowiłem coś w tym kierunku w końcu zrobić i wzorując się na układzie AVT3215 chciałbym przedstawić bardzo prosty w założeniu jak i konstrukcji projekt odciągacza oparów, który można zbudować tanim kosztem: Sterowanie wentylatorem odbywa się poprzez regulowany stabilizator LM317, kręcąc potencjometrem zmieniamy napięcie dostarczane do wentylatora, możemy dzięki temu płynnie zmniejszyć lub zwiększyć jego obroty, chociaż szczerze powiedziawszy ta funkcja jest mała przydatna w moim odczuciu, ponieważ i tak zawsze lutuje przy największych obrotach. Całość jest zasilana z zewnętrznego zasilacza 12V 0,5A, który zapożyczyłem od lampki biurkowej. Dużym atutem tego układu jest to, że można go zbudować dosłownie z części znalezionych w szafie, osobiście musiałem dokupić gniazdo DC oraz stabilizator na co w sumie wydałem +/- 10 zł (gdzie kupiłem sobie od razu kilka sztuk na zapas) Wentylator nie jest przymocowany na stałe, dzięki temu można go złożyć i łatwiej przechować np. w szufladzie. Jako podstawkę wykorzystałem tą, która została mi z kursu arduino, akurat pasowały mi otwory, także uznałem, że dam jej 'drugie życie' Lista potrzebnych komponentów: gniazdo DC płytka uniwersalna 2x diody LED 2x rezystory 1k 2x rezystory 330Ω 2x kondensatory elektrolityczne 220uF 1x kondensator elektrolityczny 47uF 2x kondensatory ceramiczne 100nF potencjometr 5K regulowany stabilizator LM317 złącze ARK wentylator na 12V Schemat ideowy: Działanie w praktyce:
  48. 1 punkt
    Ja mam inny miernik, kiedy aktualizacja kursu pod mój miernik?
  49. 1 punkt
    Po wielokrotnych próbach zainstalowania opencv, różnych dziwnych błędach dopiero ten tutorial rozwiązał wszystkie problemy: Pozdro.
  50. 1 punkt
    Kondensator ma na sobie określone napięcie - i w momencie, kiedy zaczyna spadać lub rosnąć - może oddać lub przyjąć wysoki prąd (ograniczony własną rezystancją). Indukcyjność: przepływa określony prąd - i w momencie, kiedy przepływ ten zostaje zakłócony (np. przez rozwarcie obwodu) celem utrzymania prądu zostanie wytworzone na obu końcach napięcie. Niekiedy bardzo wysokiej wartości - to jest to co wypala nam styki, szczotki i czasami zabija elektronikę. Oba elementy aby podtrzymać swoje działanie oddają energię w sobie zgromadzoną (lub przyjmują jej więcej) - zmniejszając napięcie © lub prąd (L) wymuszany. Dlatego L filtruje prąd - z napięciem może wręcz robić jaja (i robi np. na szczotkach silników).
Tablica liderów jest ustawiona na Warszawa/GMT+02:00
×
×
  • Utwórz nowe...