Skocz do zawartości

Robot sterowany za pomocą Bluetooth


takinijaki

Pomocna odpowiedź

Często wykorzystuje w swoich projektach bluetooth który przynajmniej dla mnie jest najprostszą i najlepszą formą komunikacji na małe odległości. Stąd też wpadłem na pomysł wykonania małego pilota bluetooth mniej więcej takiej wielkości żeby zmieścił się w całości w ręce i można go było obsłużyć jedną ręką. A że lubię nowości to postanowiłem wykorzystać moduł digispark z mikrokontrolerem Attiny85 które wydawało mi się najlepsze pod względem wielkości jednak nie wiedziałem wtedy jeszcze że nie posiada ona uartu który był nie zbędny do komunikacji przy pomocy modułu hc-05. Po za tym do budowy pilota wykorzystałem jeszcze obudowę kradex z47u, przyciski, joystick, akumulator Li-pol, oraz przetwornicę step-up.

Zdjęcia:

IMG_20201020_102811.thumb.jpg.ff0ac7d5a285ff965995825907820905.jpgIMG_20201020_102801.thumb.jpg.efdc7291c0246f70a4ceec91be6f9623.jpgIMG_20201014_204045.thumb.jpg.d6235d9945f5a4c50dfcd106410c0710.jpgIMG_20201014_203847.thumb.jpg.7c8cc3deb895eb92ed3732b18b52f28a.jpgIMG_20201020_102819.thumb.jpg.5cc7ed97245b31ea67d1d7544a857b04.jpgIMG_20201020_102829.thumb.jpg.f910b8692b15be176cff2a12a0290ceb.jpg

Trudnością którą napotkałem w trakcie budowy okazał się brak pinów portu szeregowego na szczęście rozwiązanie okazało się proste a była nim biblioteka SoftwareSerial która pozwala na symulowanie portu szeregowego na dowolnych pinach. Po za tym problemem okazał się brak miejsca który zmusił mnie do wystawienia akumulatora na zewnątrz konstrukcji a nie tak jak początkowo planowałem ukryć go wewnątrz .

Kod:

#include <SoftwareSerial.h>//RX, TX
SoftwareSerial sserial(0,1);

int a1 = 0;
int a2 = 0;
int a3 = 0;
int a4 = 0;

void setup() {
  sserial.begin(9600);
  sserial.println("test");
}
void loop() {
  a1 = analogRead(A2);//2 od góry
  a2 = analogRead(A3);//3 od góry
  a3 = digitalRead(2);//3 od dołu
  a4 = digitalRead(0);// 1 od dołu
  if((a1 > 250)&&(a1<850)){
    if((a2 > 250)&&(a2<800)){
      sserial.println("u");
      delay(100);
    }
  }
  if(a1 > 850){
    sserial.println("q");
    delay(100);
  }if(a1 < 250){
    sserial.println("w");
    delay(100);
  }if(a2 > 800){
    sserial.println("e");
    delay(200);
  }if(a2 < 250){
    sserial.println("r");
    delay(100);
  }if(a3 == HIGH){
    sserial.println("t");
    delay(100);
  }if(a4 == LOW){
    sserial.println("y");
    delay(100);
  }
}

Film:

Przepraszam za słabą jakość filmu ale niestety aparat w telefonie nie pozwala na nagrywanie w lepszej jakości. Po za tym na filmie widać to że robot nie zawsze reaguje na polecanie ale to już było wynikiem wyładowującego się akumulatora. Starałem się by pilot był jak najmniejszy, możliwy do obsługi za pomocą jednej ręki a przy tym w miarę wygodny by dłuższa obsługa nie męczyła ręki .To rozwiązanie ma też jednak swoje wady na przykład nie ma możliwości by obsługiwać nim coś bardziej skomplikowanego niż coś co wymagało by więcej niż jednego joysticka(np. robot z chwytakiem, dron)

 

  • Lubię! 1
Link do komentarza
Share on other sites

Podoba Ci się ten projekt? Zostaw pozytywny komentarz i daj znać autorowi, że zbudował coś fajnego!

Masz uwagi? Napisz kulturalnie co warto zmienić. Doceń pracę autora nad konstrukcją oraz opisem.

Pomysł na robota przyszedł w najmniej spodziewanym momencie mianowicie podczas rozbiórki starego laptopa a dokładnie w momencie wymontowywania dysku który był do całości przymocowany przy pomocy metalowej ramki. I właśnie podczas demontażu uzmysłowiłem sobie że ta ramka idealnie nadaje się jako podstawa do robota. Jest całkiem wytrzymała aczkolwiek słabo odporna na zginanie i tak oto zabrałem się do roboty. Do budowy wykorzystałem cztery silniki dc z przekładnią 1:48, najzwyklejsze koła z oponami, mnóstwo śrub, nakrętek i dystansów M3, sklejkę o wymiarach 9cm na 14cm, do sterowania silnikami użyłem l293d, do komunikacji zastosowałem moduł bluetooth hc-05, po za tym wykorzystałem jeszcze arduino pro mini w wersji 3.3V/8Mhz, oraz stabilizator 5V do zasilania modułu bluetooth, trzy złącza ark, płytkę prototypową 5cm na 7 cm. Do zasilania całości używam dwóch akumulatorów litowo-jonowych.

Zdjęcia:

IMG_20201020_103641.thumb.jpg.75eebb7f8e33319b34c27c05b38fdc7c.jpgIMG_20201020_103438.thumb.jpg.0fd391a5b15fdb4b2b135d2119d6add1.jpgIMG_20201020_103229.thumb.jpg.62e929f76e4a273de146fb1d29ae223a.jpgIMG_20201020_103219.thumb.jpg.ca893c174786cb691891c00eb3f3a3d0.jpgIMG_20201020_103133.thumb.jpg.4dc617081c94d4ecfc2d30ece035bfc7.jpgIMG_20201020_103101.thumb.jpg.0180e78b01f69a0a37e8538dd9ae4f01.jpg

Jak widać wszystko opiera się na na tej ramce do której przykręciłem silnik i płytkę ze sklejki resztę elementów przykręciłem do sklejki. Wszędzie wykorzystałem te same śruby - M3 dla ułatwienia sobie życia. Płytka prototypowa jest zamocowana z 1cm nad sklejką dla lepszego wyglądu. Sterownik do silnika ukryty jest pod arduino.

Film:

W tym filmie pokazałem jak steruje nim za pomocą pilota bluetooth który utrzymuje komunikacje za pomocą dwóch modułów hc-05(jeden w pilocie i drugi w robocie) ustawionych odpowiednio jako master i slave. Wybrałem te moduły ponieważ jako jedyne mają możliwość połączenia ich ze sobą nawzajem. Sam robot powstawał w wolnych chwilach przez prawie miesiąc z powodu użycia w pierwszej wersji podstawki dip do sterownika silnika która z nieznanych powodów dawała o wiele mniejsze napięcia na pinach wyjściowych niż powinna co doprowadzało do tego że choć sam mostek h był dobry to układ nie działał.

Link do komentarza
Share on other sites

O, super. Jeżeli pozwolisz to spróbuję powielić, a może rozwinąć Twój projekt. Micro:bit to moja ulubiona platforma. Pozdrawiam

  • Lubię! 1
Link do komentarza
Share on other sites

Zarejestruj się lub zaloguj, aby ukryć tę reklamę.
Zarejestruj się lub zaloguj, aby ukryć tę reklamę.

jlcpcb.jpg

jlcpcb.jpg

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

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ę »
×
×
  • Utwórz nowe...

Ważne informacje

Ta strona używa ciasteczek (cookies), dzięki którym może działać lepiej. Więcej na ten temat znajdziesz w Polityce Prywatności.