Skocz do zawartości

Tablica liderów


Popularna zawartość

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

  1. 5 punktów
    LiPol Charger v1.0 / v2.0 Szanowni czytelnicy forum w tym krótkim artykule przedstawię Wam projekt ładowarki do akumulatorów litowo-polimerowych 2 celowych (7,4V). Prace nad projektem rozpoczęły się bardzo dawno temu, co można było śledzić w tym wątku. Dużą rolę w trakcie projektowania samego układu odegrał kolega @marek1707. Tak naprawdę ostateczna forma pierwszej wersji ładowarki została bardzo mocno zasugerowana przez niego dzięki temu działa ona niezawodnie. Układy zostały zaprojektowane wedle następujących założeń: możliwość ładowania akumulatorów 2 celowych przy pomocy źródła zasilania o napięciu 5V i natężeniu prądu nie większym niż 1A (na tyle pozwalały zastosowane elementy elektroniczne) oraz ładowanie z wykorzystaniem 2 paneli słonecznych 6V/300mA, które aktualnie miałem pod ręką - stąd zastosowano układ przetwornicy typu boost, zastosowanie przewodowej lub bezprzewodowej komunikacji z komputerem PC, wykorzystanie diod LED do sygnalizacji stanów pracy ładowarki, (v2.0) wyświetlanie informacji na wyświetlaczu alfanumerycznym 2x16, (v2.0) dodanie przycisków do ręcznej interakcji użytkownika z urządzeniem, (v2.0) wbudowanie prototypu prostego balansera ogniw, (v2.0) wyprowadzenie padów do programowej kalibracji przetwornika ADC. LiPol charger v1.0 Wersja pierwsza ładowarki jest wersją niekombinowaną oraz dość niezawodną. Pełny cykl ładowania akumulatora obejmuje zarówno fazę CC (stałoprądową) oraz CV (stałonapięciową). Cykl ten świetnie obrazuje WYKRES, który podrzucił mi kolega @marek1707 i który zapamiętam do końca swojego życia Zasadę działania przetwornicy boost wydaje mi się, że każdy elektronik powinien znać. Jeśli jednak czytelniku nie miałeś okazji zapoznać się z tym rodzajem przetwornic podsyłam ciekawe artykuły na ten temat: LINK, LINK. W skrócie - na wejściu przetwornica otrzymuje napięcie maksymalne 6V oraz prąd maksymalny 1A. Sygnał PWM generowany przez mikrokontroler ze stałą częstotliwością, a zmiennym wypełnieniem otwiera lub zamyka tranzystor kluczujący przetwornicę, który dzięki temu reguluje napięcie lub prąd wyjściowy przetwornicy w zależności od fazy algorytmu ładowania CC/CV. Zastosowano w tym celu najzwyklejszy regulator proporcjonalny. Mikrokontroler ma możliwość pomiaru potrzebnych parametrów tj. napięcia i prądy wejściowe/wyjściowe oraz napięcie międzyogniwowe. Napięcia są mierzone poprzez dzielniki napięciowe natomiast pomiar prądów odbywa się z wykorzystaniem układów bocznikowych. Komunikacja z komputerem odbywa się poprzez moduł Bluetooth (BTM222 lub HC-05) lub z wykorzystaniem przejściówki USB-UART. Dodatkowo domowymi metodami wykonałem shield umożliwiający podłączenie wyświetlacza alfanumerycznego 2x16. Ostatecznie wykorzystując źródło napięcia stałego 5V/1A udało się uzyskać przetwornicę o sprawności ok. 65%. Całkiem niezły wynik jak na prototyp. Straty mocy są związane ze stratami na diodzie, indukcyjności oraz NIE zastosowaniu kondensatorów typu Low ESR. Wszystkie te parametry można jeszcze trochę poprawić przez co możliwe jest zwiększenie sprawności samej przetwornicy. Wykorzystanie do ładowania paneli słonecznych zmusiło do zastosowania najprostszego algorytmu MPPT - śledzenia punktu maksymalnej mocy. Panele słoneczne połączone są równolegle przez co uzyskano większy prąd wejściowy na przetwornicę. W tym połączeniu maksymalny prąd wejściowy wynosi 600 mA dla posiadanych przeze mnie paneli 6V/300mA. Biorąc pod uwagę to, że w polskich warunkach z tych paneli jestem w stanie wyciągnąć maksymalnie 70-80% całkowitej sprawności przy bezchmurnej pogodzie prąd ładowania akumulatorów jest niewielki. Dlatego ten tryb ładowania sprawdza się raczej przy niewielkich akumulatorach. Ale najważniejsze, że się sprawdza LiPol charger v2.0 Druga wersja ładowarki nie została jeszcze przetestowana!!! Natomiast wzbogaciłem ją o kilka praktycznych dodatków, których brakowało mi w poprzedniej wersji. Wersja v2.0 została wzbogacona o prototyp balansera złożonego z dwóch oporników dużej mocy oraz tranzystorów sterowanych z poziomu mikrokontrolera, który na podstawie pomiaru napięcia międzyogniwowego decyduje o tym, który obwód „strat mocy” załączyć. Jeśli któryś z tranzystorów zostaje otwarty, przez rezystor przepływa prąd, natomiast ładowanie danego ogniwa akumulatora jest pomijane. Dzięki temu możliwe jest wyrównanie poziomów napięć na obu ogniwach. Dodatkowo wyprowadzone zostały pady pomiarowe, które znacznie ułatwiają kalibrację odczytów z przetwornika ADC. Wbudowano również konwerter USB-UART na podstawie chipu FT230XQ, wyprowadzono również piny Rx i Tx w celu podłączenia np. modułu Bluetooth. W tym projekcie udało się znacząco zmniejszyć wymiary ładowarki. Kompletne schematy obu wersji ładowarki udostępniam w pdf’ach poniżej. LiPolCharger_v1_0.pdf LiPolCharger_v2_0.pdf Wykaz ważniejszych elementów wykorzystanych w układach ładowarek: mikrokontroler ATmega32 tranzystor kluczujący MOSFET-N STS12NF30L driver MOSFET MCP1402T cewka 220 uH wzmacniacze operacyjne LM358 wyświetlacz alfanumeryczny 2x16 konwerter USB-UART FT230XQ, tranzystory bipolarne NPN i PNP dowolne, pod warunkiem, że maksymalny prąd kolektor-emiter będzie większy niż 1A. Jeśli ktoś z czytelników będzie zainteresowany tematem owych ładowarek serdecznie zapraszam do zadawania pytań w komentarzach, a także ewentualnego krytykowania (oczywiście konstruktywnego) mojego projektu.
  2. 5 punktów
    Pojawiła się potrzeba wykonania prostego sterownika do bramy garażowej, który miałby powiadamiać mieszkańców czy aktualnie garaż jest zamknięty czy otwarty oraz w dowolnej chwili sprawdzić status. Tak powstało niewielkie urządzenie montowane na szynę DIN. Jest zasilane z dowolnej ładowarki od telefonu, posiada zabezpieczenie przed odwrotną polaryzacja zasilania. Sterownik ma kilka wejść/wyjść; IN1 - dolna krańcówka od zamknięcia garażu. IN2 - górna krańcówka od pełnego otwarcia garażu. wyjście przekaźnikowe NO do zdalnego otwierania/zamykania bramy. RS485 - pozwala podłączyć czujnik odległości wykrywający czy auto jest w garażu. czujnik temperatury DS18B20. przycisk do resetowania ustawień WiFi i uruchomienia ponownej konfiguracji. W sterowniku zastosowałem popularny układ ESP8266 w wersji WemosD1 mini. Jak widać za wiele rzeczy tu nie ma, oprócz ESP znajduje się przekaźnik, DS18B20 oraz transceiver RS485. Projekt miał być prosty, szybki i jednostkowy dlatego nie zastosowałem dodatkowych stopni ochrony wejść w postaci np. optoizolacji. Tradycyjnie płytka powstała na żelazku i wytrawiona w kwasie. Polutowana i zabezpieczona lakierem do PCB. Schemat ideowy: Wspomniany wcześniej czujnik odległości jest zbudowany z wykorzystaniem ultradźwiękowego czujnika HC-SR04 i Arduino Nano, które cyklicznie wysyła informacje do głównego sterownika. Schemat czujnika: Sterownik ma zaimplementowany serwer WWW co pozwala na sterowanie praktycznie dowolnym urządzeniem z przeglądarką. A panel sterowania prezentuje się tak: Dodałem obsługę powiadomień push na telefon z wykorzystaniem mechanizmu IFTTT (if this then that). Wystarczy zainstalować tą aplikacje na telefonie, a w sterowniku wprowadzić unikalny klucz aplikacji powiązany z konkretnym telefonem. Aktualizacja oprogramowanie wykorzystuje mechanizm OTA i sprowadza się do wgrania pliku przez panel www. Dodatkowo wystawione jest proste API, które pozwala na integracje z większością systemów smart home typu Domoticz, Home Assistant itp.
  3. 4 punkty
    Manipulator "Copernicus" to mój najnowszy projekt, model 4-osiowego robota przemysłowego z ssawką podciśnieniową jako efektorem. Bezpośrednim przyczyną rozpoczęcia budowy był zachwyt nad tego typu profesjonalnymi konstrukcjami, typu Kuka, ABB, Fanuc itd., a które można podziwiać między innymi na różnych targach przemysłowych Robot powstawał w ekspresowym jak dla mnie tempie, około 2 miesięcy, a jego budowa nie byłaby możliwa bez wsparcia sponsorów, którym chciałbym w tym miejscu serdecznie podziękować: Agencji Pracy MONDI Polska, która w ramach programu stypendialnego Mondi Wspiera Talenty sfinansowała większość niezbędnych elementów i części; Firmie IGUS Polska, która jako próbkę udostępniła mi przekładnię ślimakową RL-D-30; Firmie STMicroelectronics, dzięki której otrzymałem płytkę Nucleo; Zespołowi Szkół Łączności im. M. Kopernika w Poznaniu, również za pomoc finansowo-merytoryczną. Dobrze, na początek kilka zdjęć ogólnie przedstawiających robota - przepraszam za nienajlepsze tło, zdecydowanie lepiej ideę pracy robota wyjaśniają filmy Konstrukcja jest trójmodułowa, pierwsze cztery zdjęcia ilustrują właściwego robota, piąte przedstawia stację generującą podciśnienie, dwa ostatnie to sterownik robota Mechanika Podstawę robota stanowi prostokąt plexiglass'u 10mm. Pierwsza oś swobody jest pryzmatyczna, składa się z dwóch prowadnic liniowych ø10 i listwy zębatej. Następnie, na wózku z łożyskami liniowymi DryLin, również firmy Igus, znajduje się pierwsza oś obrotowa z wspomnianą już przekładnią ślimakową. Następnie, trzecią oś swobody, a drugą obrotową stanowi silnik z przekładnią planetarną oraz paskiem zębatym HTD. Ostatnią, czwartą oś, służąca ustawieniu ssawki prostopadle do powierzchni, stanowi ssawka podciśnieniowa Festo, bezpośrednio obracana przez silnik krokowy NEMA17. Taki sam silnik napędza przekładnię ślimakową, natomiast w pierwszej i trzeciej osi wykorzystałem, jak wspomniałem, silniki z wbudowaną przekładnią planetarną. Elektronika Sterownik robota jest trójpoziomowy - na pierwszym z nich znajduje się gniazdo trapezowe, sygnalizatory napięć i 2 zasilacze - 24V/8,5A oraz 12V/5A. Ten pierwszy zasila tylko silniki, natomiast drugi - pompkę podciśnieniową, elektrozawór i wszystkie pozostałe elementy, wykorzystując w tym celu przetwornicę step-down (dającą na wyjściu 5V DC - Nucleo wykorzystuje własny, znajdujący się na płytce stabilizator 3,3V). Na drugim poziomie znajdziemy wspomniane Nucleo F103 i przetwornicę, 2 przekaźniki do sterowania pompką i elektrozaworem, płytkę dystrybuującą zasilanie oraz 4 sterowniki silników krokowych TB6560. Na trzecim poziomie - przycisk bezpieczeństwa i 2 wentylatory. Płyty w sterowniku wykonane są również z plexi 5mm. Do połączeń sterownik-robot-stacja generująca podciśnienie używam w większości złącz wielopinowych dedykowanych automatyce. Robot posiada czujniki krańcowe, potrafi się zerować. Oprogramowanie Napisałem program w Arduino IDE, który zawiera kinetykę odwrotną liczoną z zależności geometrycznych oraz korzystając z biblioteki AccelStepper() steruje "na sztywno" wszystkimi czterema silnikami krokowymi. Następnie wpisałem kilkanaście punktów, i tak robot układa krążki i rozkłada, i tak w pętli... Osiągnięcia, dalsze plany i film Aktualnie, robot może pochwalić się wzięciem udziału w RoboDay 2019 (pokazy na Politechnice Poznańskiej) i II miejscem na µBot (zawody organizowane przez V LO Kraków). Projekt jest aktualnie zamknięty, ale myślę nad rozwojem konstrukcji, na przykład dodaniem kamery PixyCam2. Opis jest dość zwięzły - gdybyście mieli jakiekolwiek pytania, chętnie dopowiem szczegóły Pozdrawiam, wn2001
  4. 3 punkty
    Witam! Dzisiaj chciałbym zaprezentować Wam mój projekt wykonany w celu obrony inżynierskiej. Jest to mój pierwszy tak rozbudowany projekt, jak i za razem pierwszy wpis na Forbocie, więc od razu przepraszam wszystkich za wszelakie poważne błędy, które mogłem popełnić. Pomysł na niego zrodził się na 3 roku studiów na kierunku Inżynierii Biomedycznej za sprawą mojego promotora dr inż. Jarosława Zubrzyckiego, któremu chciałbym bardzo serdecznie podziękować za poświęcony czas oraz użyczenie drukarek 3D. Całość składa się ze zrobotyzowanego ramienia o sześciu stopniach swobody wraz z osobnym, prostym kontrolerem. Na ramię robota składa się: konstrukcja mechaniczna wykonana z materiału ABS na drukarce 3D Zortrax M200, uPrint SE Plus oraz taniej Creality 10S, małe łożyska kulkowe o średnicy zewnętrznej ∅13 mm i wewnętrznej ∅5 mm, śrubki oraz nakrętki o wielkości metrycznej od M2,5 do M5, część napędowa, na którą składają się serwomechanizmy: TowerPro MG-946R, TowerPro SG-5010, PowerHD HD-1501MG, TowerPro SG92R. Na kontroler składają się: obudowa wykonana z materiału ABS na drukarkach 3D wymienionych wyżej, płytka Arduino UNO Rev3 (klon zakupiony na Allegro), nakładkaprototypowa do Arduino Uno z przylutowanymi komponentami, takimi jak, przewody wyprowadzające potencjometry, LED'y, rezystory, kondensatory oraz stabilizator napięcia L7805CV, oraz sterownik serwomechanizmów Pololu Mini Maestro 12-kanałowy. Serwomechanizmy dobrałem biorąc pod uwagę ich specyfikację (napięcie zasilania) oraz opinię użytkowników wykorzystujących je w swoich projektach. Z racji wykorzystania platformy jaką jest Arduino, jak i tego, że na pracę magisterską planuje ulepszyć projekt , postanowiłem ograniczyć efektor ramienia do postaci prostego chwytaka. Następna wersja projektu zostanie wyposażona w płytkę Raspberry Pi 4B wykorzystującą efektor w postaci teleskopu z podstawową kamerą i diodą doświetlającą. Sterownik serwomechanizmów Pololu Mini Maestro wybrałem ze względu na bardzo prostą obsługę napędów i świetną współpracę układu z Arduino za sprawą dedykowanej biblioteki udostępnionej przez producenta. Sterowanie ramieniem postanowiłem zrealizować dzięki zastosowaniu kontrolera w fizycznej obudowie z zastosowaniem potencjometrów obrotowych, liniowych o wartości 20 kΩ. Dzięki takiemu rozwiązaniu można w prosty sposób zasymulować pracę podstawowego trenażera. Do sygnalizowania trybu pracy ramienia użyłem 2 LED'ów (zielonego i czerwonego) sygnalizujące podłączenie do zasilania (czerwona) oraz możliwość zmiany położenia wałów serwomechanizmów, czy też brak takiej możliwości (zielona). Sterowanie trybem pracy umożliwia przełącznik z zastosowaniem prostego filtru RC eliminującego drgania styków. Wszystkie komponenty zostały przylutowane do nakładki prototypowej, z zastosowaniem przewodów połączeniowych do płytek stykowych (wiem, nie najlepsze rozwiązanie, ale poganiający czas zrobił swoje ). Cały projekt zasilany jest za pomocą zasilacza impulsowego 12 V/ 2,5A CZĘŚĆ MECHANICZNA Po dobraniu wszystkich komponentów i upewnieniu się, że będę miał dostęp do drukarki, niezwłocznie przystąpiłem do projektowania części konstrukcyjnych w oprogramowaniu Autodesk Inventor 2018. Zamierzony projekt prezentował się następująco: Podczas projektowania efektora (chwytaka) zastanawiałem się nad zastosowaniem gotowego rozwiązania, lecz z uwagi na to, że większość znalezionych przeze mnie rozwiązań składało się z wielu komponentów, lub po prostu wizualnie mi nie odpowiadały zaprojektowałem swoje własne (trochę ułomnie, po mechanizm zębaty został zaprojektowany bez użycia modułu wbudowanego w program, ani bez przeprowadzenia potrzebnych obliczeń, ale jak na pierwszy raz nie jestem zawiedziony ). Podstawa ramienia składa się z dwóch części: statycznej oraz ruchomej. Pierwsza jest przymocowana do podstawy przy użyciu 4 wkrętów do drewna M4 i osadziłem w niej jeden z serwomechanizmów. Początkowo planowałem zastosowanie łożyska kulkowego wzdłużnego do wsparcia konstrukcji, ale po "dogłębnej" analizie konstrukcji (czyt. oszczędzanie pieniążków) osadziłem część ruchomą bezpośrednio na wale serwomechanizmu (przy użyciu aluminiowego orczyka). W części ruchomej umieściłem kolejne, dwa, serwomechanizmy odpowiedzialne za sterowanie odpowiednio ramieniem i przedramieniem manipulatora. Ruch z podstawy na przedramię przekazywany został dzięki zastosowaniu ogniwa łączącego "bark" z "łokciem". W "łokciu" osadziłem kolejny serwomechanizm odpowiedzialny za ruch obrotowy przedramienia wokół własnej osi. Na końcu przedramienia, w nadgarstku umieściłem mały serwomechanizm odpowiedzialny za ruch nadgarstka oraz takie same serwo sterujące efektorem (chwytakiem). Przed przystąpieniem do druku 3D elementów ramienia przeprowadziłem analizę MES konstrukcji manipulatora. Manipulator obciążyłem siłą działającą pionowo w dół o wartości 1,5 N, przymocowaną do ramion chwytnych efektora, co symbolizowało obciążenie o wadze około 150g. W efekcie uzyskałem wynik dający wskaźnik bezpieczeństwa konstrukcji w wysokości powyżej 11 (0 fatalnie, 15 max), co świadczy o tym że zaprojektowana konstrukcja jest sztywna i wytrzymała na trwałe odkształcenia. Największe naprężenia wystąpiły na ramionach chwytnych efektora i wynosiły 1,55 MPa. Obudowę kontrolera podzieliłem na 3 części, aby było łatwiej ją wydrukować na drukarce 3D. W panelu górnym umieściłem sześć otworów montażowych na potencjometry liniowe oraz dwa na kolorowe LED'y i jeden większy na przycisk. Dolna część obudowy podzielono na 2 elementy. W jednym z nich umieszczono otwory umożliwiające dostęp do złącz płytki Arduino oraz podłączenie serwomechanizmów do sterownika. UKŁAD STEROWANIA Realizację układu sterowania rozpocząłem od zaprojektowania schematu działania konstrukcji oraz schematu podłączenia wszystkich elementów: Mając gotowy schemat przystąpiłem do realizacji fizycznego układu. Całość prezentuje się następująco: Kod sterujący projektem został napisany w środowisku Arduino IDE, z wykorzystaniem dedykowanej biblioteki do sterownika serwomechanizmów Pololu Mini Maestro: #include <PololuMaestro.h> #include <SoftwareSerial.h> #define pot1 0 //podstawa #define pot2 1 //bark #define pot3 2 //staw łokciowy #define pot4 3 //przedramie #define pot5 4 //ndagarstek #define pot6 5 //chwytak #define sw1 9 //przycisk #define led_g 8 //zielona dioda SoftwareSerial sterownikSerial(10,11); //obiekt treansmisji szeregowej (pin 10 RX, pin 11 TX) MiniMaestro sterownik(sterownikSerial); //obiekt umozliwiający komunikacje ze sterownikiem int val1 = 0; int angle1 = 0; int w1 = 0; int val2 = 0; int angle2 = 0; int w2 = 0; int val3 = 0; int angle3 = 0; int w3 = 0; int val4 = 0; int angle4 = 0; int w4 = 0; int val5 = 0; int angle5 = 0; int w5 = 0; int val6 = 0; int angle6 = 0; int w6 = 0; //===================================PĘTLA KONFIGURACYJNA=================================================== void setup() { //Serial.begin(9600); //urochomienie transmisjii szeregowej w razie potrzeby komunikacji z komputerem sterownikSerial.begin(9600); //uruchomienie transmisjii szeregowej w celu komunikacji ze sterownikiem pinMode(led_g,OUTPUT); pinMode(sw1,INPUT); //brak konieczności zastosowania trybu INPUT_PULLUP ze względu na zastosowanie w układzie rezystora podciągającego digitalWrite(led_g,LOW); //dioda zielona domyślnie jest zgaszona } //========================================PĘTLA GŁÓWNA======================================================= void loop() { val1 = analogRead(pot1); //odczyt danych z potencjoetrów oraz mapowanie otrzymanych wartości angle1 = map(val1,0,1023,2000,10000); //na zakres ruchu poszczególnych serwomechanizmów (jednostka: 0,25us) val2 = analogRead(pot2); angle2 = map(val2,0,1023,2000,10000); val3 = analogRead(pot3); angle3 = map(val3,0,1023,2000,10000); val4 = analogRead(pot4); angle4 = map(val3,0,1023,2000,10000); val5 = analogRead(pot5); angle5 = map(val3,0,1023,2000,10000); val6 = analogRead(pot6); angle6 = map(val3,0,1023,2000,10000); if(digitalRead(sw1) == 0){ //Jeżeli przycisk jest wciśnięty, zielona dioda się świeci oraz digitalWrite(led_g,HIGH); //możliwe jest sterowanie serwonapędami. if(abs(angle1 - w1) < 15) //Jeżeli różnica pomiędzy dwoma kolejnymi wartościami jest mniejsza o 15 jednostek sterownik.setTarget(0,0); //to sygnał nie jest wysyłany do sterownika. else{ sterownik.setTarget(0,angle1); w1 = angle1;} if(abs(angle2 - w2) < 15) sterownik.setTarget(1,0); else{ sterownik.setTarget(1,angle2); w2 = angle2;} if(abs(angle3 - w3) < 15); //sterownik.setTarget(2,0); else{ sterownik.setTarget(2,angle3); w3 = angle3;} if(abs(angle4 - w4) < 15) sterownik.setTarget(3,0); else{ sterownik.setTarget(3,angle4); w4 = angle4;} if(abs(angle5 - w5) < 15) sterownik.setTarget(4,0); else{ sterownik.setTarget(4,angle5); w5 = angle5;} if(abs(angle6 - w6) < 15) sterownik.setTarget(5,0); else{ sterownik.setTarget(5,angle6); w6 = angle6;} } else{ //Jeżeli przycisk nie jest wciśnięty, następuje zgaszenie zielonej diody, a sterowanie digitalWrite(led_g,LOW); //serwomechanizmami jest niemożliwe. } } PREZENTACJA DZIAŁANIA Poniżej zamieszczam krótkie wideo przedstawiające działanie całej konstrukcji. PODSUMOWANIE Tak prezentuje się wykonany przeze mnie projekt. W przyszłości planuje wymienić płytkę Arduino UNO na Raspberry Pi 4, serwomechanizmy na silniki krokowe, efektor w postaci chwytaka na wysuwany teleskop z kamerą na jego końcu oraz drastyczną przebudowę konstrukcji mechanicznej . Jestem świadomy wszystkich uproszczeń jakie popełniłem i na pewno niektóre kwestie mogłem wykonać lepiej (lub po prostu inaczej), lecz z powodu małego zasobu czasowego lub pod wpływem bliżej nieokreślonych emocji postawiłem na rozwiązania zaprezentowane wyżej. Z góry dziękuję za konstruktywną krytykę i cenne uwagi i wskazówki na przyszłość. Pozdrawiam mocno!
  5. 2 punkty
    Cześć, odpowiedź jest bardzo dobra i uzasadnienie także. Raczej rzadko używa się "podwójnych" wskaźników do poruszania się po tablicy dwuwymiarowej, łatwiej jest użyć indeksów. Niemniej warto wiedzieć jak to działa na wskaźnikach (przenoszą się te zależności także na tablice o większej liczbie wymiarów - wynika to wprost z rozmieszczenia danych tablicy w pamięci. I tak dla tablic trzy wymiarowych mamy już potrójną a nie podwójną de-referencję. To może teraz kolega zada jakieś pytanie - zobaczymy, czy uda się odpowiedzieć poprawnie Pozdrawiam
  6. 2 punkty
    Podpinasz bezpośrednio, możesz oczywiście podpiąć zasilanie do czegoś mocniejszego. Nie wiem jak chcesz rozwiązać zasilanie - ja zasilam albo całość z porządnego 5V, albo serwa (w prxypadku większej ilości) z oddzielnej przetwornicy 6V. Czujniki muszą działać naprzemiennie. W przypadku przekładni owszem, będzie to ruch wahadłowy. Z tym czasem rzeczywistym to sobie dokładnie przemyśl... ile czasu trzeba, aby czujnik zwrócił dane o otoczeniu? Ile ma być odczytów na obrót czujnika? Jaki dystans przejedzie robot w tym czasie? Mój eksperyment: czujnik na wprost, po otrzymaniu informacji o przeszkodzie robot się zatrzymywał, skanował otoczenie i wybierał następny fragment trasy. Tyle, że była to dość wolna gąsienicówka... Z czujnikiem TOF wcale nie było weselej, przy 50 msec na odczyt (poniżej tej wartości dokładność pomiaru była za mała) i 9 odczytach odległości czas skanowania wynosił ok. sekundy. Pamiętaj, że serwo też potrzebuje vzasu aby się obrócić, a w czasie pomiaru musi być zatrzymane
  7. 2 punkty
    Zapraszam do zapoznania się z zaktualizowaną wersją opisu procesora Q818. Pojawiła się już dość spora sekcja poświęcona architekturze układu oraz blokom tworzącym procesor.
  8. 2 punkty
    Bardzo dobrze - o to chodziło. Od razu dwie uwagi: Przede wszystkim - trochę bez sensu jest konstrukcja z pustym ifem. Czyli zamiast: if (a > b) { } else { coś_robimy(); } powinno być if (a <= b) { coś robimy(); } Kompilator co prawda powinien dać sobie z tym radę, ale człowiek odniesie wrażenie że gdzieś tu się czai błąd. Jeśli dodajesz/odejmujesz pozycję i x zadbaj o to, aby pozycja nie wyskoczyła poza zadany zakres. Ty odejmujesz 20 od pozycji jeśli jest >= 10... czyli ile wyjdzie? Poza tym dalej nie napisałeś na czym polega niedziałanie tego czegoś... a nikomu się nie chce bawiś we wróżkę Co do programowania - co Ci się nie podoba w kursach na Forbocie? Prosto, po polsku... Możesz się wspomóc dowolną książką o C++. Poza tym na arduino.cc masz referencje i tutoriale, korzystając z takich źródeł nie potrzebujesz żadnych jutubów.
  9. 2 punkty
    Jeśli próbujesz bezmyślnie kopiować to żadna różnica , czy masz lat 15 czy 85. Masz tu bardzo fajne kursy elektroniki i Arduino.- może sobie poczytasz? My tu na forum nie jesteśmy interfejsem dla nieczytatych... I uwierz mi, 15 lat to wcale nie jest tak mało, jest na forum paru młodszych... i umieją czytać! Tak że na razie zapoznaj się z kursami, jeśli czegoś nie zrozumiesz chętnie wyjaśnimy. Powodzenia! Tak przy okazji - jeśli czegoś nie zapisałeś to nie trąb o tym na forum, bo nie jest to powód do dumy i chwały.
  10. 2 punkty
    Jak to zwykle bywa w przypadku katastrof, przyczyna opisanego zachowania nie jest jedna. Po pierwsze zwróćcie uwagę na strukturę wewnętrzną układu 4026 w okolicach wejścia zegarowego. Mamy tu pin CLOCK, który wprowadzony jest przez jakiś tam bufor na wejście bramki NAND oraz pin CLOCK_INHIBIT puszczony przez inwerter na wejście tej samej bramki. Z jej wyjścia dostajemy zegar głównego licznika. Taki schemat oznacza, że oba wspomniane wejścia nie są niezależne od siebie: 4026 zlicza na narastającym zboczu sygnału CLOCK pod warunkiem, że CLOCK_INHIBIT jest w stanie niskim, wejście CLOCK_INHIBIT działa dobrze, gdy CLOCK jest w stanie niskim. Schemat zaprezentowany w artukule nie uwzględnia pierwszego warunku tj. "parkuje" CLOCK w stanie wysokim. To jeszcze nie jest źle od warunkiem, że zwieramy CLOCK_INHIBIT do masy i tak jest to zrobione. Jeżeli można mówić o wadach tego rozwiązania to może to, że licznik zlicza podczas puszczania przycisku CLOCK tj. gdy stan linii powraca pod wpływem opornika do stanu wysokiego a nie podczas wciskania - co wydaje się bardziej naturalne. No i jeśli teraz próbujemy ro\budowac układ o dodatkową blokadę zegara za pomocą wejścia CLOCK_INHIBIT to niestety, każda jego zmiana 0->1 będzie powodowała zliczenie dodatkowego impulsu, bo przy CLOCK=1 generowane jest zbocze na wyjściu wewnętrznej bramki NAND. Aby wejście blokady działało porawnie trzeba zmienić obwód sterowania wejściem CLOCK: opornik dać do masy a przycisk musi podawać plus zasilania. Wtedy nie dość, że licznik będzie inkrementowany w chwili przyciśnięcia to jeszcze CLOCK_INHIBIT będzie bezboleśnie blokował kolejne impulsy zegara.
  11. 2 punkty
    @Tomcat witam na forum Jest to znany błąd - aktualne wersje bibliotek nie obsługują jeszcze pull-upa w nowym Raspberry Pi 4. Trzeba poczekać na aktualizację biblioteki, skorzystać z czegoś innego lub dodać rezystor podciągający ręcznie. Więcej informacji oraz przykładowe rozwiązania znajdziesz tutaj: https://forbot.pl/forum/topic/10480-kurs-raspberry-pi-12-podstawy-gpio-skrypty/?do=findComment&comment=133201
  12. 2 punkty
    A dlaczego miałbyś robić pakiet 3S skoro teraz 2S jest OK? No i co to za ładowarki masz, ja nie wiem i chyba nikt oprócz Ciebie nie wie. EDIT: Przypomnij sobie urządzenie, które kupiłeś w sklepie i które wymaga dwóch dziwnych źródeł zasilania. Trudne prawda? Bo projektuje się tak, by to użytkownikom było wygodnie a nie by schemat był prostszy (a raczej szuka się jakiegoś optimum). Czy samochodzik zdalnie sterowany albo odkurzacz bezprzewodowy wymagają dwóch źródeł? Wyjmujesz akumulator, ładujesz i jednocześnie biegniesz do kiosku po dodatkowy plauszek AA do zasilania, nie wiem, diodek LED? Dlatego proponuję, byś zarówno silniki jak i elektronikę napędzał ze wspólnego źródła. Od silników głównie zależy, czy będzie to 2S czy 3S. Jeżeli są na 6V to naturalnym jest 2S, gdy na 12V - 3S. Reszta elektroniki zawsze sobie poradzi - zrobisz jakąś małą przetwornicę albo i zwykły stabilizator i tyle. Uznałem, że skoro i tak chcesz wsadzić trzy ogniwa 18650 z tego dwa na silniki a jedno dla procesora, to masz tyle miejsca by dołożyć jeszcze czwarte i zrobić pakiet 2S2P/7.2V/5Ah co bardzo odciąży akumulatory i da spory zapas energii. Być może to nie ma sensu w przypadku, gdy praca urządzenia zamyka się np. w 5 minutowym przejeździe przez rynnę. Wtedy szukasz małego aku o dużej obciążalności (np. 2S/800mAh/45C) i korzystasz z tego trochę jak w dronie. Energii wystarcza na powiedzmy 15 minut pracy, ale całość jest megalekka a silniki nie muszą dźwigać klocka z akumulatorami, bo zasilanie waży wszystkiego 80g. Gdy zdecydujesz się na dwa osobne źródła, po kilku uźyciach (jesli nie po pierwszym) będziesz przeklinał ten dzień. A to jeden będzie rozładowany a to drugiego zapomnisz naładować itd.. Jeden pakiet to wygoda. Możesz takie zrobić sobie dwa i jeździć na zmianę. Przy dwóch różnych zestawach już robi się zagadnienie z zarządzania, bo przecież między dniami pracy powinieneś przechowywać je w stanie "storage" a więc rozładowane do połowy. Ładowarka modelarska jest w tym wypadku nieoceniona bo (zwykle) umie też rozładowywać właśnie do poziomu 3.8V. Być może jest to projekt, w którym masa się nie liczy a wręcz przeciwnie - urządzenie walczące z syfem zalegającym po zimie powinno być spore i ciężkie. Wtedy nie ma sensu oszczędność LoPolowa i być może lepszym rozwiązaniem jest jakiś mały żelowy typu 12V/3Ah z którym nie trzeba się cackać, ładujesz go sprzętem za 10zł a dodatkowo robi spory procent masy całości i zapewnia stabilność podczas pracy. Podsumowując: chcę tylko powiedzieć, że wybór zasilania to nie jest decyzja chwili i rzut oka do szuflady, bo złe pomysły położą się cieniem na cały okres użytkowania sprzętu i na jego cechy funkcjonalne. Nawet jeśli już podjąłeś decyzję (tak, bo tak mi się podoba), przemyśl ją raz jeszcze patrząc na to pod różnymi kątami, nie tylko jak najszybszego przejścia do budowy podwozia. Być może warto zainwestować teraz jakieś (niewielkie) pieniądze by potem nie jęczeć, że trzeba było zrobić inaczej.
  13. 2 punkty
    Trochę Ciężko Cię zrozumieć, nie wiem czy tylko ja mam takie wrażenie? No ale z tego co do mnie dotarło radzę: Wywal przetwornicę - jest kompletnie zbędna. Od regulacji silników masz mostki. Zasilaj je wprost z akumulatorów a jeśli naprawdę boisz się o silniki, nie steruj PWM do 100%. Nie używaj układów L29x, na nich spadają zawsze 1.5-4V więc się grzeją i są mało wydajne. To starocie, zapomnij o nich. Zapomnij także o prądach podawanych na pierwszych stronach not katalogowych. To są wyniki uzyskiwane w laboratorium dla idealnego, maksymalnego dla danego scalaka chłodzenia. Nie masz szans (albo jest to kompletnie niepraktyczne) robienie tego w swoim układzie. Jeśli chcesz gęsto pakować elementy i nie przewidujesz jakichś przemyślanych radiatorów ("doda sie jakis radiator...") to przyjmuj 50% tego co piszą w katalogu. Potrzebujesz 2A na silnik? Szukaj mostka na 4-5A - wtedy postawisz go obok drugiego takiego samego, obok jeszcze jakiś stabilizator, wszystko zamkniesz w obudowie i nadal będzie działać. Bez sensu ten trzeci akumulator. Staraj się nie kombinować z rodzajami źródeł zasilania. Jeden główny akumulator łatwiej kontrolować, mierzyć w układzie a nawet ładować i niż dwa różne. Tylko jedna ładowarka i jeden pakiet. Jeżeli masz miejsce, to już lepiej idź w pojemność i daj 2x2x18650. Masz wtedy 7.2V/5Ah na 4 ogniwach a to już jest coś. Równolegle połączone aku są też mniej obciążone i dłużej pożyją.W porównaniu z silnikami to procesor i reszta cyfrówki bierze tak mało prądu, że wystarczy moim zdaniem zwykły stabilizator liniowy typu 1117. No chyba, że wstawiasz Malinę, kamerkę (dwie, trzy?), transmisję video po WiFi, itp. Serwa raczej nie służą do pracy ciągłej pod dużym obciążeniem albo muszą być sporo przewymiarowane. Nawet jeśli wypatroszyłeś elektronikę i korzystasz z samej mechaniki, to ich małe silniczki są zapakowane w plastikowe pudełeczko i chłodzenia to raczej nie mają. Jeśli ten napęd ma robić w rynnie armageddon, to ja bym co najmniej jakieś otwory powiercił w obudowach albo dał naprawdę mega serwa. Koniecznie musisz kontrolować stan silników napędzających ten mechanizm oczyszczania - obroty lub chociaż temperaturę, bo to pierwsza rzecz która się spali przy blokadzie a jak rozumiem będzie tam miało co blokować.. Nie jestem pewien czy odróżniasz moc od momentu. Jeśli potrzebujesz momentu (czyli mocno ale może być powoli), wystarczy mały silniczek i przekładnia zwalniająca - jak w serwie. Ale jeśli oczekujesz mocy (czyli mocno i szybko jednocześnie), to ona w całości bierze się z silnika i tylko od jego wymiarów zależy to ile dostaniesz na wyjściu. Szczotkowy silniczek modelarski oddający kilkadziesiąt Watów przy chłodzeniu w powietrzu ma wymiary fi 25 i długość ze 40mm. Zaglądałeś jaki biedaczek siedzi w serwie? Myślę, że 10W to szczyt jego możliwości.
  14. 2 punkty
  15. 1 punkt
    @Davis postaraj się na przyszłość umieszczać schematy w "bardziej standardowy" sposób, każdemu będzie wtedy łatwiej Możesz mierzyć napięcie w taki sposób, ale chyba łatwiej zrozumieć to, gdy mierzy się napięcia względem masy. Anoda diody na Twoim schemacie jest podłączona (przez rezystor) do dodatniej szyny zasilania. Katoda diody jest połączona z wyjściem komparatora. W związku z tym, dioda zaświeci się, gdy na wyjściu komparatora będzie masa (0V, minus zasilania). Mam nadzieję, że to jasne Teraz możemy analizować dalej, zgodnie z kursem: jeżeli napięcie na wejściu nieodwracającym jest wyższe niż na odwracającym, to napięcie na wyjściu jest zbliżone do dodatniego bieguna zasilania, w przeciwnym razie, napięcie wyjściowe jest bliskie ujemnemu biegunowi zasilania. Aby uzyskać na wyjściu komparatora masę musimy więc doprowadzić do sytuacji, w której napięcie na wejściu nieodwracającym będzie niższe od napięcie na wejściu odwracającym. Zgadza się to więc z Twoimi wnioskami
  16. 1 punkt
    Jeżeli chodzi o temperature - niska temperature - to dobrze sie sprawdziło u mnie pozostawienie w zawsze chłodnym pomieszczeniu jakim u mnie jest garaz. Jako dodatkowa izolacje i srodek zabezpieczajacy przed ewentualnym wahaniem temperatur zastosowalem smiesznie tani sposób - stara torbe turystyczna z wszyta termoizolacja, włożyłem tez na wszelki wypadek wkład pochłaniajacy wilgoc...ale to juz chyba nie konieczne, czy kluczowe. Torba nie byla oczywiście hermetyczna. Wentylacja byla zapewniona.
  17. 1 punkt
    Dziękuję, jak tylko skończę pierwszą część zabieram się za drugą
  18. 1 punkt
    Hej, To dobra i starannie opracowana aplikacja. Działa doskonale w obie strony - zarówno jak podaję kolory, jak i kiedy wpisuję wartość. Jeżeli chcesz coś zrobić lepiej to dodaj informację, jak obrócić rezystor do odczytu i w jakiej kolejności odczytywać paski.
  19. 1 punkt
    O widzisz, wyszły ładne wyniki. Super że Ci się udało, powodzenia w dalszych eksperymentach.
  20. 1 punkt
    Dobrze może tak być, ale wydaje mi się ze 5 ms to za szybko. Zrób test obracaj powoli kołem i zobacz ile masz impulsów zliczanych przez te 5ms. Przy bardzo wolnym obracaniu dobrze miec minumum 10 impulsów. Ps. Żebyśmy sie zrozumieli masz już prędkość obrotowa dla 2 kół oddzielnie, jak obracasz w jedna to masz ze znakiem + a w druga ze znakiem -? Jak to sprawdzisz to przejdziemy dalej. Jako parametr do PID proponuje zastosować właśnie ilość impulsów w tych 5ms. Podaj mi ile masz impulsów w 5 ms przy maksymalnych obrotach i bardzo bardzo minimalnych. Musimy poznać dolny próg. Często robot balansuje i wykonuje bardzo małe ruchy musimy to wykryć.
  21. 1 punkt
    Zmierz napięcia na pinach 5V i 3.3V czy wszystko jest od tej strony w porządku. Dobrze jest mieć jakiś programator i sprawdzić czy procesor jeszcze żyje. A jak tak sobie po prostu padło to masz ten luksus, że kupiłeś w PL i masz gwarancję.
  22. 1 punkt
    A dodanie kilku mikrofonów jak to bywa w telefonach czy słuchawkach z kasowaniem tła? Możesz wtedy odjąć sygnał tła od sygnału mowy. Zawsze to coś na początek.
  23. 1 punkt
  24. 1 punkt
    Diody znajdują zastosowanie w wielu projektach. Niestety nie wszyscy potrafią dobrać rezystor do LEDa lub całkiem go pomijają. Wtedy dioda może zostać uszkodzona w ułamku sekundy!W tym poradniku przedstawiamy przepis, jak dobrać rezystor do diody. Sprawdzamy również różne sposoby zasilania LEDów. [blog]https://forbot.pl/blog/artykuly/podstawy/jak-dobrac-rezystor-do-diody-rozne-metody-zasilania-led-id14482[/blog]
  25. 1 punkt
    Zerknij jeszcze raz do linkowanego kursu elektroniki (część o stabilizatorach). Stabilizator musi być jednym z pierwszych elementów Twojego urządzenia. Gdy uzyskasz na nim 5V to dopiero wtedy możesz zasilać mikrokontroler, mostek i inne układu. Jak podłączysz zasilanie bezpośrednio do mikrokontrolera to od razu go uszkodzisz (5V to wejście, a nie wyjście) Na początek wystarczy jeden sposób komunikacji. Wszystko zależy od wybranej przesyłki. Nawet jak zamówisz "super drogim" kurierem to i tak wyjdzie taniej od produkcji w Polsce. W Chinach masz produkcję w 24h + wysyłka. W Polsce produkcja potrwa 2-3 tygodnie, a i tak wyjdzie drożej. Oczywiście wszystko zależy od projektu, ale przy takim robocie na 99% taniej i szybciej będzie, jeśli zamówisz przesyłkę w Chinach.
  26. 1 punkt
    Spróbuj zewrzeć antenki rezystorem np. 1k i sprawdź jeszcze raz (a w ogóle masz antenkę?). Być może uda się zestroić przy zwarciu ale cudów się po tym nie spodziewaj. Te moduły to największe g..o jakie można kupić. Mnie to działa tylko na ok. kilkanaście metrów mimo zastosowania anten dopasowanych najdokładniej jak się tylko dało i wielu godzin poświęconych na dokładne zestrojenie i filtrowanie. Nie polecam nikomu szarpać sobie tym nerwów. Jedyne co jest warte uwagi w tym wynalazku to ten rezonator ceramiczny jeśli komuś by się chciało na jego bazie budować własny nadajnik.
  27. 1 punkt
    Witam @Leoneq, jeśli chodzi o korpus - był to początek mojej przygody (4 lata temu?) w drukiem 3D, pierwsze projekty w SketchUp, nawet nie umiałem zrobić zaokrąglenia krawędzi itd. Teraz to 5 minut rysowania w Fusion 360 , rzeczywiście elektronikę dość mocno okroiłem, ale lepsza jedna funkcja zrealizowana porządnie niż kilka, z których żadna nie działa wtedy, kiedy powinna. Z sensorem ultradźwiękowym zgadza się, jest tam "bo może kiedyś się przyda", a ja zazwyczaj mam tak, ze jak jakiś projekt zrealizuję, to już do niego nie wracam, także stanowi ten HC-SR-04 ładną ozdobę. Również bardzo podobają mi się projekty Kolegi, szczególnie, że Kolega skończył dopiero VIII klasę (?), jedynie niech Kolega uważa przy eksperymentach z wysokim napięciem
  28. 1 punkt
    dokładnie do esp jest podpięty przycisk pod input, gdy włączysz przycisk to wtedy następuje negacja stanu na pinie output który jest podpięty do przekaźnika. W przycisku jest napięcie 3v3
  29. 1 punkt
    @stander możliwe, że coś nie styka lub wyprowadzenia w dużym przycisku są inne. Obróć go dla testu o 90 stopni i sprawdź wtedy
  30. 1 punkt
    Ja tak delikatnie to zasugerowałem ale uważałem że kolega sam na to wpadnie:) Dla tych co nie rozumieją proponuję rozszyfrowanie skrótu GIGO. Cóż - informatyka to nauka ścisła, komputer zrobi dokładnie to co od niego chcesz. Tylko trzeba nauczyć się chcieć...
  31. 1 punkt
    Witam, zauważyłem, że schemat rysunkowy i zdjęcia z wykonaniem pierwszym sposobem odbiegają od siebie. Lubię układy składać samodzielnie i powtarzać z waszą "ściągą", i akurat w tym przypadku liczyłem przewody co pozwoliło na wskazanie błędu. Mianowicie brakuje czarnego przewodu łączącego Masę stabilizatora z ( - ) układu. Wpływa to bezpośrednio na napięcie jakie odkłada się na wyjściu(OUT) i Masie(GND) stabilizatora. W moim przypadku gdy brak tego przewodu, napięcie odkładające się na Masie i wyjściu stabilizatora przy zwarciu zielonych przewodów jest ujemne (-0,531 V), natomiast przy dodaniu brakującego przewodu napięcie na wyjściu stabilizatora jest prawidłowe i wynosi (4,987 V). Zarówno w jednym jak i w drugim prezentowanym wyżej przypadku podłączenie/odłączenie przewodu nie wpływa na świecenie diody - świeci w obu przypadkach i słychać klikanie przekaźnika. Ale zauważyłem również, że bez brakującego przewodu zwieranie i rozwieranie przewodów (przełącznik byłby chyba tutaj lepszym określeniem) nie zawsze skutkuje kliknięciem i załączeniem przekaźnika - wnioskuję więc zatem(nie wiem czy poprawnie- niech mnie ktoś mądrzejszy poprawi), że układ bez dodatkowego przewodu działa tylko ze względu na ładunek zgromadzony w kondensatorach znajdujących się przy stabilizatorze. Powyższe łatwiej zaobserwować jak przepniemy przewód NO na NC - co spowoduje odwrócenie działania diody i ta będzie gasnąć po zwarciu przewodów(przełącznika). Dodatkowo jako że posiadam zasilacz laboratoryjny (Korad KA3005D) zbadałem również to jak napięcie wpływa na ten układ - i przy obniżeniu napięcia do 7V nie udało mi się bez przewodu ze stabilizatora poprawnie uruchomić układu ( dioda nie świeciła i nie klikał przekaźnik). Natychmiast po jego podłączeniu układ wracał do sprawności. Jako, że ciągle jestem świeżakiem czy mogę prosić o wytłumaczenie roli stabilizatora w tym układzie ? Bo mam wrażenie że jest on tu po to aby zasilać cewkę przekaźnika napięciem 5V, ale sprawdzając przekaźnik minimum jakie jest potrzebne aby włączyć cewkę w moim przekaźniku to 3,25V. Niestety do komponentów z kursu nie są dołączone noty katalogowe, a bardzo chciałem sprawdzić jakie Min i Max napięcie można przyłożyć na cewkę aby ta działała. Bo dziwi mnie to że przy błędnie złożonym schemacie ujemne napięcie jest w stanie uruchomić cewkę. Kończąc już ten przydługawy post - tak sobie myślę - czy dodanie odpowiednio spolaryzowanej diody pomiędzy C2, a LED1 nie zabezpieczyłoby układu cewki przed zmianą polaryzacji wynikającą z zastosowania kondensatorów przy stabilizatorze ? Pozdrawiam Bastian
  32. 1 punkt
    Zanim kupisz wyświetlacz to lepiej sprawdzić jakie biblioteki go obsługują. Bo prawie każdy do 320x240 da się uruchomić, ale nie do każdego są gotowce, a samemu to rozgryzać to zwykle nie dla kogoś, kto zaczyna z Arduino. Jak już znajdziesz bibliotekę to w niej jest opisane co do czego przy ustawieniach w szkicu, np. do ST7735 mam taki początek: #define TFT_CS 10 #define TFT_RST 9 // you can also connect this to the Arduino reset // in which case, set this #define pin to 0! #define TFT_DC 8 i nawet nie muszę wiedzieć jakie są funkcje tych pinów, po prostu je tu podłączam (reszta to SPI sprzętowe i wiadomo gdzie to podłączyć do UNO). SPI to 4 piny, MOSI, MISO, SCK i CS, I2C to CLK i DATA (dwukierunkowy). Twój być może ma opcję podłączenia jako I2C lub SPI, ale to zwykle konieczność zmiany jakiś rzeczy na płytce i jak kupiłeś go jako SPI to od prób z tym interfejsem bym zaczął. Zwykle MOSI to SDA (często w LCD DIN, data in), MISO się nie używa z LCD, chyba że coś odczytujesz, CS i CS masz to samo chip select, DC lub RS to przełącznik data/command i nie ma tego w I2C. Jak zerkniesz na grafiki przy wyszukiwaniu tutoriali do ST7735 to na pewno dojdziesz co do czego, a i do ILI9225 sporo pokazuje. Czy masz 5V czy 3.3V to widać po budowie płytki - jest jakiś bufor, regulator napięcie, tranzystory, ale ostateczny test to podłączenie na żywca i sprawdzenie czy padnie (szansę przeżycia zwiększają rezystory 100-1000om). Można podłączyć oscyloskop i popatrzeć jakie faktycznie są poziomy sygnału. To że ktoś ma wersję tego LCD kompatybilną z 5V, to nie znaczy że Ty taką masz, nie wszyscy chcą mieć 5V, jednak dużo więcej można zrobić z ekranem TFT na nowszych uC, a te zwykle są 3.3V - ESP, ARM. Bezpieczniej użyć konwertera logiki, są od 2zł.
  33. 1 punkt
    Też nad tym myślałem. Jak uda mi się ogarnąć kinematyke w Pythonie to z chęcią coś takiego zrobię
  34. 1 punkt
    No to małe nieporozumienie. Założyłem, że przetwornicę którą pokazałeś chcesz użyć na wyjściu akumulatorów, do zasilania elektroniki pokładowej a przy takich eksperymentach przyda się zarówno woltomierz jak i amperomierz do kontroli stanu zasilania. Oczywiście możesz jej użyć do ładowania, wcześniej ustawiając pożądane ograniczenia prądu i napięcia. Tak jak napisałem, o BMS myśl raczej jak o ubezpieczeniu własnego mieszkania - w czasie normalnej eksploatacji nigdy nie powinno dojść do jego zadziałania. Ten dzieciak to oczywiście żart. Chodziło mi o to, że urządzenia dedykowane do konkretnej aplikacji (np. gotowa ładowarka LiPol 2S) z wbudowanymi na stałe cechami są troszkę bezpieczniejsze niż te uniwersalne z regulacjami, bo potencjometr to zawsze jakaś węglowa ścieżka i zestyk - trochę wilgoci czy upadek z 0.5m i rezystancja jest inna lub wręcz żadna. Mając jednak gotowy chiński moduł za 25zł i konkretny akumulator (a nie wiele rodzajów i konieczność przestawiania raz dziennie) i nie budując łazika marsjańskiego nie zastanawiał bym się zbyt długo. Pakiety LiPol w odróżnieniu od żelowych w zasadzie wymagają kontroli każdej celi osobno, właśnie z powodu ich czułości na przekroczenie napięcia i to w obu kierunkach. Zwykła przetwornica - każda z obu tu wspomnianych tego nie zapewnia, BMS także z balansowaniem ogniw nie ma nic wspólnego (oprócz sytuacji ekstremalnych, ale wtedy pakiet można spokojnie uznać za uszkodzony - z BMS przynajmniej nie wybuchnie). Dlatego przy stosach od 2S w górę przydałby się mechanizm prawdziwego równoważenia napięć podczas ładowania a w tej sytuacji nawet tak liche (w sensie słabe mocowo) ładowarki jak przywołany wcześniej Imax B3 są o niebo lepsze niż o wiele silniejsze przetwornice uniwersalne. Pomyśl o tym EDIT: Choć bliska tematycznie, zrobiła się spora dyskusja trochę o czym innym - może warto wydzielić temat @ethanak do osobnego wątku?
  35. 1 punkt
    Można bez problemu większego (tylko poziom trudności trochę wysoki) niezależnie od drukarki, pod warunkiem że sam wyedytujesz g-code. Możesz ręcznie ustawić jakąś przerwę w druku, a następnie wyedytować (w sumie to wywalić większość) kod przed tą przerwą i z wyedytowanego pliku puścić dalszy druk.
  36. 1 punkt
    Cześć, ja używam do szybkiego prototypowania i rysowania schematów. Według mnie największe zalety to prosty interfejs i bardzo duża liczba modułów bibliotecznych (praktycznie można znaleźć wszystko). Nie projektowałem jeszcze PCB w tym programie. Pozdrawiam
  37. 1 punkt
    Tak rozumiem, robiłem kilka razy bo nie chciało wyjść, póżniej zastosowałem 3 diody i pomimo że było (teoretycznie) wszystko tak jak teraz to wyskakiwał błąd więc napisałem jeszcze raz i działało wiem że warto się trzymać ogólnoprzyjętych zasad ale jak poprawiałem to kolejny raz to już z lenistwa nie korygowałem tego a wiadomo najlepiej sprawdzić jak działa w praktyce Jeżeli chodzi o zdanie z wykorzystaniem algebry boolea to można to zrobić przy użyciu bramki AND ale czy jest możliwośc aby wykorzystać w kodzie zmienną np. "logika" if (odebraneDane == "green") { //Jeśli odebrano słowo "green" digitalWrite(green, logika); } czy jest szansa zrobić to tym sposobem żeby po wpisaniu słowa green zmienna logika zmieniała swoją wartośc z 1 na 0, 0 na 1?
  38. 1 punkt
    Do budowy tego projektu wystarczy praktycznie dowolny programator (np. AVR USBASP)
  39. 1 punkt
    @Treker nie przesadzaj - jest to jeden z dopuszczalnych styli formatowania kodu. Niestety - stary dobry "indent" niespecjalnie sobie radzi z C++, ale warto się z nim zapoznać (a przynajmniej przepuścić swój kod w C przez indenta i zobaczyć, co mu wyjdzie przy różnych standardowych ustawieniach).
  40. 1 punkt
    @lukiluk100 witam na forum Jeśli jesteś zainteresowany realizacją projektów, które wykorzystują łączność przez internet oraz kamerę to Arduino raczej tutaj nie będzie pomocne (ewentualnie jako element wykonawczy). Zdecydowanie lepiej będzie zainteresować się w takim przypadku Raspberry Pi.
  41. 1 punkt
    Gdzie i w jaki sposób podłączasz 9V? Ten układ powinien być zasilany z 6V, ponieważ serwomechanizmy nie są przystosowane do pracy z 9V. Najzwyczajniej mogłeś spalić swój serwomechanizm.
  42. 1 punkt
    @blazeyzem pomożemy, ale nie w tym temacie napisz swój i wtedy będziemy działać BTW. ja do projektowania płytek używam cloudowego rozwiązania easyEDA, ma dużo blibliotek, jest intuicyjny no i od razu możesz zamówić płytki u Chińczyków, 2$ za 10 sztuk
  43. 1 punkt
    Wykorzystałem bootstrapa. Frameworki są podlinkowane z cdnjs, natomiast główna zawartość jest hostowana na ESP w postaci plików htm, js, css itd. Możliwa jest bardzo prosta podmiana wyglądu strony, wchodząc na http://IP/upload mamy prosty file system. UI do aktualizowania softu (również przez www http://IP/update) jest kompilowane z kodem, takie zabezpieczenie jakby wyparowały wszystkie pliki z pamięci SPIFF
  44. 1 punkt
    Dostałem Kupon rabatowy, jak go chcesz to pisz. Mnie on sie nie przyda a szkoda aby się zmarnował. Byłem młody i promuję młodzież.
  45. 1 punkt
    Moim zdaniem schemat jest już na poziomie pozwalającym na przejście do etapu rysowania płytki. Gdybym miał jeszcze trochę podyskutować, to w temacie pomiaru napięcia akumulatora - zostawiłem go sobie na deser. Moduł alarmowy - nawet jeśli już jakiś kupiłeś - lepiej zostaw w spokoju, może przyda się do jakiegoś kolejnego projektu bo a) nie wiadomo jak tam jest sterowany buzzer i nie ma gwarancji, że będziesz mógł jego pin podciągnąć bezpośrednio pod procesor, b) wygodniej będzie dysponować informacją "analogową" z własnego źródła danych czyli lokalnego ADC. Przy tej wielkości schemacie rozszerzenie go o dwa oporniki niczego nie zmienia, a pozbywasz się dyndającego gdzieś na drutach obcego modułu alarmowego. Tak więc aby wyposażyć Twój kombajn w pomiary analogowe powinieneś zrobić dwie rzeczy: doprowadzić odpowiedni sygnał do ADC, ochronić ADC przed śmieciami na +5V. Pierwsza z tych rzeczy to prosty dzielnik z dwóch oporników, jaki wstawiasz między +12V a GND. Liczysz oporniki (oba w zakresie 10-51k) tak, by doprowadzały do któregoś pinu analogowego (ADC3?) nie więcej jak 5V przy maksymalnym napięciu akumulatora. Mając LiPol 3S możesz teoretycznie dostać 12.6V więc przyjmij, że wtedy ADC "zobaczy" nie więcej jak 4.6-4.8V. Dokładny współczynnik nie jest ważny, i tak kupujesz oporniki kilkuprocentowe a kalibracja systemu w czasie uruchamiania kodu będzie dobrym ćwiczeniem z pomiarów Oprócz dwóch oporników potrzebujesz jeszcze filtrowania tego sygnału: dajesz kondensator rzędu 1uF równolegle do dolnego opornika dzielnika. W ten sposób dostajesz filtr dolnoprzepustowy wycinający i uśredniający jeszcze po stronie analogowej "schodki" produkowane na zasilaniu przez modulator PWM i silnik. Druga ze wspomnianych spraw to zapewnienie przetwornikowi ADC spokojnej pracy. W AVRach bloki analogowe zasilane są na szczęście z osobnego pinu AVCC i na nim trzeba się skupić. Na schemacie, pomiędzy strzałkę +5V a kondensator C5 musisz wstawić element, który wytnie szpile i inne ew. zakłócenia biegające po linii +5V. Będą się one brać z samej pracy procesora, ale też w takim środowisku jak tutaj będą indukować się przez powietrze i laminat z okolic stopnia mocy. Daj więc szeregowo we wspomniane miejsce albo mały dławik 10-22uH albo opornik 10-22R. Dławik jest trochę lepszy, bo tłumi lepiej większe częstotliwości ale z kolei jest elementem czułym na pole magnetyczne i w pewnych sytuacjach może nawet pogorszyć zasilanie AVCC. Jego położenie (orientacja) zaczyna być krytyczne w okolicach dużych prądów i optymalne PCB jest nie do przewidzenia w pierwszym podejściu. Opornik w wersjach "poor-men" działa wystarczająco dobrze i nie sprawia niespodzianek. Acha, mając oba piny magistarali I2C wolne (myślę o SDA/SCL), wyciągnąłbym je na dodatkowe złącze i podciągnął opornikami 10k do +5V, bo za miesiąc, gdy już ogarniesz co najważniejsze może Ci przyjść ochota na pomiary temperatury, wilgotności czy jakiś inny ciekawy czujnik umieszczony na łodzi lub nawet podpięcie małego wyświetlacza OLED i zabawa z wyświetlaniem parametrów pracy (liczba ramek odebranych/straconych, siła sygnału radiowego, wysterowanie PWM, napięcie zasilania itp). Poza tym przecież nie jest powiedziane, że płytka będzie wyłącznie pływać. To może być dobra baza do innych projektów, dodatkowe złącze nic nie kosztuje a nie musisz lutować drutów do gołych padów procesora. Na złączu daj +5V, GND i linie I2C. Jeśłi masz jakiś wolny pin portu, możesz go wypuścic na kolejny (piąty?) pin tego złącza, nigdy nie wiadomo co tam ktoś będzie potrzebować.. Acha, odepnij wyjście OUTB od masy. To nie jest dobry zwyczaj przywieranie wyjść do czegokolwiek. Wymusiłeś stan niski na wejściu INB i OK, a OUTB jest mocno sterowane z wewnątrz czipu i niech tak zostanie. Wszystkie moje drony mają buzzer na pokładzie informujący o uzbrojeniu/gotowości kontrolera do lotu, alarmie akumulatora itp. Być może warto - jeśli płytka będzie umieszczona i zabudowana pod pokładem - wstawić podobne coś tutaj. LEDów nie widać a po załączeniu zasilania będziesz mógł zrobić biip pokazujący gotowość (i np. nawiązanie kontaktu radiowego) albo różnorodne bip-bip-bip informujące o jakimś problemie. To się przydaje. Więc jeśli nie masz jeszcze dość, wstaw jakiś mały tranzystor npn (opornik w bazie!) i biper 5V w jego kolektorze, sterowane z któregoś wolnego pinu procka. To także "nic nie kosztuje" a na płytce nie musisz nawet buzzera umieszczać tylko małe złącze. Sam głośniczek możesz wyciagnąć gdzieś na pokład żeby było lepiej słychać. Jak chcesz fizycznie zamontować moduł radiowy? Czy bedzie leżał na Twojej płytce (mocowanie?), czy na kabelkach gdzieś obok? Czy moduł ma zintegrowaną antenę czy raczej wymaga czegoś zewnętrznego na kablu? Masz już tę antenę? Jej poprawny (lub zły) montaż może kilkukrotnie zmienić zasieg. Niniejszym, po wprowadzeniu powyższych poprawek dysponujesz schematem na którym zrobiłeś wszystko co potencjalnie można było zrobić by układ działał poprawnie i stabilnie. Czeka Cię zatem PCB. Tutaj będziesz musiał procyzyjnie odróżnić część cyfrowo-sterująco-pomiarową od stopnia wyjściowego. Pogrupuj elementy zgodnie z tym podziałem, gdzie z oczywistych względeów elementem pośrednim będzie driver bramki. W podział wchodzą też kondenstaory na zasilaniach. Możesz też w celach roboczych przerysować sobie schemat tak, by było widać ten podział, bo kluczowym jest zrozumienie którędy a) będzie płynął prąd silnika, b) którędy będą płynąć impulsy zasilania bramki. Jeśli te obwody zrobisz dobrze, reszta będzie kaszką z mleczkiem. Pamiętaj, że prąd płynie w zamkniętych oczkach więc przykładowo prąd silnika wypływa z "+" akumulatora przez złącze +12V na płytce, złącze silnika (tam i z powrotem) dren tranzystora, źródło tranzystora, ścieżkę masy do pinu "-" złącza zasilania i ujemnego zacisku akumulatora. Ten obwód musisz wydzielić z całego PCB jako krytyczny. Zapomnij o zalewaniu masą wszystkiego co się rusza. Płytka będzie wymagała fizycznego odseparowania mas opisanego oczka od masy procesora i połączenia ich tylko w jednym, dobrze dobranym miejscu. Topologicznie na PCB skup blikso siebie elementy: złącze zasilania, złącze silnika, dioda i MOSFET. Niech ścieżki łączące te elementy bądą krótkie i szerokie a masa będzie jedną "wyspą" miedzi w której osadzisz źródło MOSFETa i złącze zasilania z aku. Do tej wyspy podłączysz później masy procesora i drivera. Pokaż schemat (3.1?) po ostatnich poprawkach i.. zaczynaj Wrzucając ew. rysunki PCB nie pokazuj na razie ścieżek a tylko samo rozłożenie elementów (placement). To wystarcza by ocenić (wprawnym okiem ) poprawność tego kroku i rokowania na przyszłość. Pamiętaj, że w zasadzie każda płytka jest pewnym kompromisem między wymaganiami elektrycznymi a mechanicznymi. Połączenia prądowe powinny byc krótkie i szerokie, ale wzajemne rozmieszczenie elementów, ich wymiary, mocowania lamiantu, radiatory itp rozpychają wszystko i trzeba wiele aspektów brać pod uwagę. Od razu zakładaj jakieś umieszczenie tranzystora na radiatorze (pionowy czy poziomy, jak duży, jego montaż, śruby, otwory), otwory mocujące płytkę (np. 4xM3 w rogach?) itd itp. Wprowadzanie tego później to rewolucja i ogromna strata czasu. Dobra, dość trucia, masz ciekawsze rzeczy do roboty
  46. 1 punkt
    Kozi, grzeje się, ponieważ układ jest źle złożony. Jeśli dobrze widzę, to w Twoim wypadku cały układ zasilany jest właśnie przez ten rezystor. Zerknij jeszcze raz na schemacie jak to powinno wyglądać. Zobacz np. na rezystor 1k, przez który płynie prąd do diody świecącej. Zerknij na swój układ i na schemat - coś tam nie gra Najlepiej będzie chyba złożyć całość raz jeszcze na spokojnie
  47. 0 punktów
    Trochę przy tym pokombinować i byłaby fajna zgrzewarka.. urządzenie miałoby wtedy jakieś praktyczne zastosowanie poza popełnianiem samobójstwa lub powodowaniem trwałych i nieodwracalnych uszczerbków na zdrowiu.. ot taka moja skromna opinia. Nie popieram takich eksperymentów przed ukończeniem pełnoletności i bez nadzoru osób doświadczonych i kompetentnych no chyba że masz uprawnienia SEP i osobę nadzorującą. Może się kiedyś zdarzyć, że światło zgaśnie i się więcej nie zapali :( Na odpowiedzialność rodziców tudzież opiekunów prawnych. Aż tak bardzo ich nie lubisz? Mogą mieć kłopoty gdybyś sobie coś zrobił tą spawarko-zapalarką. Nie samym hajsem żyje człowiek. Bezpieczeństwo przede wszystkim.
  48. -1 punktów
    @Faramir Można też po prostu przestać pisać, w końcu każdy ma prawo zmienić zdanie i może konto jeszcze się przyda. A to że forum nie jest dla każdego... coś w tym jest. Ja tylko zacytuję powiedzenie "Jeśli jedna osoba mówi ci że jesteś osłem to ją zignoruj, jeśli dwie osoby mówią ci ze jesteś osłem to je zignoruj. Jednak jeśli pięć osób mówi ci że jesteś osłem to idź i kup sobie siodło..." - tak do przemyślenia
  49. -1 punktów
    Wybierz mikrokontroler, który ma wymaganą liczbę GPIO i USB.Używanie kilku mikrokontrolerów, tam gdzie wystarczy jeden, jest najczęściej nieekonomiczne, komplikuje pisanie softu i zwiększa awaryjność.
  50. -2 punktów
    Też czytaj dokładnie, pisałem, że nie jest proste zbudowanie zasilacza warsztatowego na prądy 10 czy 20A. Do 1A zero problemu, takich konstrukcji są setki jak nie tysiące. Konkrety proszę bo jak na razie to brzmi jak reklama "Wiodący proszek na rynku", "Lepszy niż pozostałe" a jak pewnie wiesz, taka reklama nie oddaje rzeczywistości, bo według nich wszystkie proszki są jedyne, najlepsze, najwydajniejsze i zostawiają konkurencję daleko w tyle.
Tablica liderów jest ustawiona na Warszawa/GMT+02:00
×
×
  • Utwórz nowe...