hatchet23 Napisano Luty 3, 2010 Udostępnij Napisano Luty 3, 2010 Potrzebuje zmontować układ, polegający na bezprzewodowym sterowaniu silnikiem krokowym. Generalnie mam do zrealizowania taki układ (ogólny schemat całościowy projektu [źródło własne]: Jednak chciałbym się w tym momencie skupić tylko i wyłącznie na układzie bezprzewodowym tego projektu (schemat ogólny układu bezprzewodowego [źródło własne]: Chciałbym, abyście zaproponowali poszczególne elementy do realizacji tego projektu. Jako laik w sterowaniu bezprzewodowym nie wiem jakie podzespoły najlepiej zastosować, tzn jaki moduł nadawczo odbiorczy najlepiej przypasować, co ze sterownikiem silnika krokowego, itp. Sterownik ma sterować silnikiem w następujący sposób: w lewo, w prawo, wolniej, szybciej oraz stop. Na schemacie celowo w pozycji pilota zaznaczyłem 5 przycisków, które użytkownik miałby do dyspozycji tj: 1.Lewo- włącza obroty silnika w lewo; 2.Stop- zatrzymuje silnik; 3.Prawo-włącza obroty silnika w prawo; 4.Wolniej- zmniejsza zadaną prędkość; 5.Szybciej- zwiększa zadaną prędkość; Nie wiem jakie sygnały miałbym podać, aby uzyskać taki efekt. Oczywiście podkreślam tutaj, że owe sygnały do tego sterownika trzeba podać w sposób bezprzewodowy (najlepiej fale radiowe). Jeśli chodzi o dobór elementów do realizacji proszę kierować się skrajnościami mianowicie proszę o podanie elementów jakościowo najlepszych (czyli nie liczyć się z ceną) jak również elementów najtańszych, które zrealizują zadany problem. Licze na jakąś odpowiedź ze strony bardziej zaawansowanych forumowiczów. Serdecznie pozdrawiam:) Link do komentarza Share on other sites More sharing options...
Luko Luty 4, 2010 Udostępnij Luty 4, 2010 Jako pierwszy zapytam, a co to ma wspólnego z robotyką? Link do komentarza Share on other sites More sharing options...
sobal44 Luty 4, 2010 Udostępnij Luty 4, 2010 Polecam moduł bezprzewodowej komunikacji radiowej z mobot'u, bardzo łatwo go zastosować do komunikacji uC - uC jak i również uC -PC. 1 Link do komentarza Share on other sites More sharing options...
hatchet23 Luty 4, 2010 Autor tematu Udostępnij Luty 4, 2010 Luko - istnieje olbrzymia masa różnych rodzin mikrokontrolerów i kilka języków programowania dotyczące robotów. Mój projekt opiera się na podobnym działaniu- domniemam, iż na poziomie odbiornika znajduje się jakis mikrokontroler odpowiedzialny za sterowanie silnika krokowego w tym projekcie. Do tego dochodzi prosty program napisany w jakims języku. Chodzi o to żebyście pomogli mi to zweryfikować. Sobal44. Dzięki za zainteresowanie 🙂 Chciałbym Cię poprosić o bardziej szczegółowe instrukcje, gdyż jak podkreślam jestem kompletnym laikiem jeśli chodzi o sterowanie bezprz. i wszystkie związane z nim aspekty. Szukam po sieci różnych rozwiązań, ale nie mogę tego skleić do kupy 🙁 na temat uarta znalazłem to http://www.societyofrobot...ller_uart.shtml ale nie wiem jak mam sie do tego odnosić. Prosze o pomoc . Link do komentarza Share on other sites More sharing options...
Polecacz 101 Zarejestruj się lub zaloguj, aby ukryć tę reklamę. Zarejestruj się lub zaloguj, aby ukryć tę reklamę. Produkcja i montaż PCB - wybierz sprawdzone PCBWay! • Darmowe płytki dla studentów i projektów non-profit • Tylko 5$ za 10 prototypów PCB w 24 godziny • Usługa projektowania PCB na zlecenie • Montaż PCB od 30$ + bezpłatna dostawa i szablony • Darmowe narzędzie do podglądu plików Gerber Zobacz również » Film z fabryki PCBWay
Elvis Luty 4, 2010 Udostępnij Luty 4, 2010 Zgadzam się z sobal44, najprościej użyć układów z mobot-u. Po stronie sterowania podłączyć laptopa i moduł po usb. Do sterowania silnikiem wykorzystać gotowy moduł. Takie moduły najczęściej wymagają tylko dwóch sygnałów: kierunku i impulsu generującego ruch. Wystarcz wiec jakikolwiek mały procesorek, np. atmega8. Uart spiąć z modułem mobota, sterownik silnika krokowego podpiąć pod dowolne piny IO i napisać program. Link do komentarza Share on other sites More sharing options...
sobal44 Luty 5, 2010 Udostępnij Luty 5, 2010 "Moduł radiowy MOBOT-RCR-V2" ma 5 wyprowadzeń, ciebie interesują tylko 4(Vcc,Gnd,Rxd,Txd) Rxd podłączasz do Txd w uC, Txd modułu do Rxd uC, Vcc i gnd chyba jasne. a drugi moduł podpinasz pod usb i z Hyperterminala możesz sterować czym chcesz. poniżej kod do obsługi UART'a #define F_CPU 16000000UL // częstotliwość zegara w Hz #define UART_BAUD 57600 // prędkość transmisji bit/s #define UART_CONST 16 nsigned char fodznak = 0; //flaga odebranego znaku //%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%55% /*------------------------------------------------------------------------------ ------------------------------------- UART ------------------------------------- ------------------------------------------------------------------------------- %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%*/ //odbieranie znaku z uart na przerwaniu SIGNAL(SIG_USART_RECV) { fodznak = 1; return UDR; } // inicjalizacja portu szeregowego void UART_init(void) { UCSRA &= ~(1<<U2X); //kasuje bit u2x w rejestrze ucsra /* Ustawianie prędkości*/ UBRRH = (unsigned char)(UART_CONST >>8); UBRRL = (unsigned char)UART_CONST ; UCSRB=0x98;//załączenie odbiornika i nadajnika rxen/txen/rxcie UCSRC=0x86;//ustawienie ramki danych 8bitow brak parzystosci i 1 bit stopu } // wysyła znak void wyslij_znak(unsigned char c) { while ( !( UCSRA & (1<<UDRE)) ) ;// albo jeżeli się nie myle to loop_until_bit_is_set(UCSRA,UDRE) UDR = c; } //wyslij słowo void wyslij_slowo(char dana) { unsigned char i; for(i=0; i<8; i++) { wyslij_znak(dana & 0x80 ? '1' : '0'); dana<<=1; } } // odbiera znak z portu szeregowego i zwraca go jako wartość funkcji char odbierz(void) { loop_until_bit_is_set(UCSRA,RXC); // czekaj na zakończenie odbioru cbi(UCSRA,RXC); // skasuj bit RXC w rej. USR return UDR; // zwróć zawartość rejestru UDR } //------------------------------------------------------------------------------------ odbieranie znaku w tym wypadku jest na przerwaniu wiec nie trzeba korzystać z fukcji "odbierz()" później w pętli głównej można sprawdzać w "case'ie" odebrane znaki a w hypertermianlu ustawiasz predkośc 57600, 8bitow brak parzystosci i 1 bit stopu sterowanie przepływem brak pozdrawiam 2 Link do komentarza Share on other sites More sharing options...
hatchet23 Marzec 22, 2010 Autor tematu Udostępnij Marzec 22, 2010 Układ został zmontowany w sposób następujący: https://www.forbot.pl/forum/upload_img/obrazki/IMG_4ba7489d370f31259.jpg Tak jak napisał sobal44 układ oparto o moduły bezprzewodowe MOBOT RCR, z której jeden podłączony do komputera (USB), a drugi podłączony bezpośrednio do mC Atmegi 16 przez interfejs UART. Do mikrokontrolera należy również podłączyć sterownik silnika krokowego (w tym przypadku zalecany sterownik do SSK- B01) Za pilota posłuży nam komputer, do którego wgrywamy bezpłatny program HyperTerminal, służący nam jako komunikator z naszymi modemami... Jako, że moduły radiowe MOBOT ustawiamy w tryb pracy modem jest to idealne rozwiązanie, aby wysyłać polecenia sterujące (w ASCII) do nich właśnie za pomocą HT. Następnie odpowiednio zapisujemy program w jezyku C, dzięki czemu możemy przy użyciu tego całego zwartego układu sterować odpowiednio silnikiem krokowym w w/w sposób... To wszystko... Chciałem szczególnie podziękować użytkownikowi- sobal44, bo to On opowiedział mi konkretnie o tym jak zmontować coś takiego... Link do komentarza Share on other sites More sharing options...
człowiek Marzec 22, 2010 Udostępnij Marzec 22, 2010 Można też zrobić inaczej... Tu masz dużo opisane: https://www.forbot.pl/forum/topics20/radiowa-transmisja-danych-czyli-robot-zdalnie-sterowany-vt2207.htm#24587. Jeśli nie umiesz programiwać to będzie to trochę trudne. Tu jest jak sterować silnikami krokowymi: http://www.portalnaukowy.edu.pl/robot_jezdzik.htm. Link do komentarza Share on other sites More sharing options...
Pomocna odpowiedź
Bądź aktywny - zaloguj się lub utwórz konto!
Tylko zarejestrowani użytkownicy mogą komentować zawartość tej strony
Utwórz konto w ~20 sekund!
Zarejestruj nowe konto, to proste!
Zarejestruj się »Zaloguj się
Posiadasz własne konto? Użyj go!
Zaloguj się »