Paano Gumawa ng Isang Robot sa Paglilinis ng Palapag Gamit ang Ultrasonic Sensor?

Ang isang awtomatikong robot sa paglilinis ng sahig ay hindi isang bagong konsepto. Ngunit ang mga robot na ito ay may pangunahing isyu. Napakamahal nila. Paano kung makagawa tayo ng isang murang robot sa paglilinis ng sahig na kasing husay ng robot na magagamit sa merkado. Ang Robot na ito ay gagamit ng isang ultrasonic sensor at maiiwasan ang anumang hadlang sa paraan nito. Sa pamamagitan nito, lilinisin nito ang buong silid.



(Ang Larawan na ito ay kinuha mula sa Circuit Digest)

Paano Gumamit ng Ultrasonic Sensor Upang Makagawa ng Isang Awtomatikong Paglilinis ng Robot?

Tulad ng nalalaman natin ngayon ang abstract ng aming proyekto. Ipunin natin ang ilang karagdagang impormasyon upang magsimulang magtrabaho.



Hakbang 1: Pagkolekta ng Mga Bahagi

Ang pinakamahusay na diskarte upang simulan ang anumang proyekto ay upang gumawa ng isang listahan ng mga kumpletong bahagi sa simula at dumaan sa isang maikling pag-aaral ng bawat bahagi. Tumutulong ito sa amin sa pag-iwas sa mga abala sa gitna ng proyekto. Ang isang kumpletong listahan ng lahat ng mga sangkap na ginamit sa proyektong ito ay ibinibigay sa ibaba.



  • Car Wheel Chassis
  • Baterya
  • Ipakita ang Brush

Hakbang 2: Pag-aaral ng Mga Bahagi

Ngayon dahil mayroon kaming kumpletong listahan ng lahat ng mga bahagi, ilipat natin ang isang hakbang nang maaga at pag-aralan ang paggana ng bawat bahagi nang maikli.



Ang Arduino nano ay isang board ng microcontroller na ginagamit upang makontrol o maisakatuparan ang iba't ibang mga gawain sa isang circuit. Sinusunog namin ang a C Code sa Arduino Nano upang sabihin sa board ng microcontroller kung paano at anong mga operasyon ang dapat gumanap. Ang Arduino Nano ay may eksaktong parehong pag-andar tulad ng Arduino Uno ngunit sa medyo maliit na sukat. Ang microcontroller sa Arduino Nano board ay ATmega328p.

Arduino Nano

Ang L298N ay isang mataas na kasalukuyang at mataas na boltahe na integrated circuit. Ito ay isang dalawahang buong tulay na dinisenyo upang tanggapin ang karaniwang lohika ng TTL. Mayroon itong dalawang paganahin ang mga input na nagpapahintulot sa aparato na gumana nang nakapag-iisa. Dalawang motor ang maaaring konektado at mapatakbo nang sabay. Ang bilis ng mga motor ay iba-iba sa pamamagitan ng mga PWM na pin.



L298N Motor Driver

Ang board ng HC-SR04 ay isang sensor ng ultrasonic na ginagamit upang matukoy ang distansya sa pagitan ng dalawang mga bagay. Ito ay binubuo ng isang transmiter at isang tatanggap. Ang transmitter ay nagko-convert ng signal ng elektrikal sa isang signal ng ultrasonic at ang recepter ay binago ang signal ng ultrasonic pabalik sa electrical signal. Kapag nagpapadala ang transmitter ng isang ultrasonikong alon, sumasalamin ito pagkatapos mabangga sa isang tiyak na bagay. Ang distansya ay kinakalkula sa pamamagitan ng paggamit ng oras, tumatagal ang signal na ultrasonic upang umalis mula sa transmiter at bumalik sa tatanggap.

Ultrasonic Sensor

Hakbang 3: Pagtitipon ng Mga Bahagi

Tulad ng nalalaman natin ngayon kung paano gumagana ang lahat ng mga bahagi, ipunin natin ang lahat ng mga bahagi at simulang gumawa ng isang robot.

Kumuha ng chassis ng gulong ng kotse at i-mount ang isang show brush sa harap ng mga chass. I-mount ang Scotch Brite sa ilalim ng robot. Siguraduhin na ito ay nasa likuran ng brush ng sapatos. Ngayon maglakip ng isang maliit na tinapay sa tuktok ng mga chass at sa likod nito, ikabit ang driver ng Motor. Gumawa ng wastong mga koneksyon ng mga motor sa driver ng motor at maingat na ikonekta ang mga pin f driver ng motor sa Arduino. Mag-mount ng baterya sa likod ng chassis. Papalakasin ng baterya ang driver ng Motor na magpapagana sa mga motor. Ang Arduino ay kukuha rin ng kuryente mula sa driver ng Motor. Ang Vcc pin at ang lupa ng ultrasonic sensor ay makakonekta sa 5V at ground ng Arduino.

Diagram ng Circuit

Hakbang 4: Pagsisimula Sa Arduino

Kung hindi ka pa pamilyar sa Arduino IDE, huwag mag-alala dahil ang isang hakbang-hakbang na pamamaraan upang mai-set up at gamitin ang Arduino IDE sa isang board ng microcontroller ay ipinaliwanag sa ibaba.

  1. I-download ang pinakabagong bersyon ng Arduino IDE mula sa Arduino.
  2. Ikonekta ang iyong Arduino Nano board sa iyong laptop at buksan ang control panel. sa control panel, mag-click sa Hardware at Sound . Ngayon mag-click sa Mga devices at Printers. Dito, hanapin ang port kung saan nakakonekta ang iyong board ng microcontroller. Sa aking kaso ito ay COM14 ngunit iba ito sa iba`t ibang mga computer.

    Paghanap ng Port

  3. Mag-click sa menu ng Tool at itakda ang board sa Arduino Nano.

    Setting Board

  4. Sa parehong menu ng Tool, itakda ang port sa numero ng port na iyong naobserbahan dati sa Mga devices at Printers .

    Setting Port

  5. Sa parehong menu ng Tool, Itakda ang Proseso sa ATmega328P (Old Bootloader).

    Nagpoproseso

  6. I-download ang code na nakalakip sa ibaba at i-paste ito sa iyong Arduino IDE. Mag-click sa i-upload pindutan upang sunugin ang code sa iyong board ng microcontroller.

    I-upload

Mag-click dito upang mai-download ang code.

Hakbang 5: Pag-unawa sa Code

Ang code ay medyo mahusay na nagkomento at nagpapaliwanag sa sarili. Ngunit gayon pa man, ipinaliwanag ito nang maikli sa ibaba.

1. Sa pagsisimula, ang lahat ng mga pin ng Arduino na gagamitin namin, ay na-initialize.

int enable1pin = 8; // Pins para sa unang Motor int motor1pin1 = 2; int motor1pin2 = 3; int enable2pin = 9; // Pins para sa pangalawang Motor int motor2pin1 = 4; int motor2pin2 = 5; const int trigPin = 11; // Pins for Ultrasonic Sensor const int echoPin = 10; const int buzzPin = 6; mahabang tagal; // Mga variable para sa distansya ng float ng Ultrasonic Sensor;

2. walang bisa ang pag-setup () ay isang pagpapaandar kung saan itinakda namin ang lahat ng mga pin na gagamitin bilang INPUT o OUTPUT. Ang Baud Rate ay naka-set din sa pagpapaandar na ito. Ang rate ng baud ay ang bilis kung saan nakikipag-usap ang board ng microcontroller sa mga nakakabit na sensor.

void setup () {Serial.begin (9600); pinMode (trigPin, OUTPUT); pinMode (echoPin, INPUT); pinMode (buzzPin, OUTPUT); pinMode (paganahin1pin, OUTPUT); pinMode (paganahin ang 2pin, OUTPUT); pinMode (motor1pin1, OUTPUT); pinMode (motor1pin2, OUTPUT); pinMode (motor2pin1, OUTPUT); pinMode (motor2pin2, OUTPUT); }

3. walang bisa loop () ay isang pagpapaandar na patuloy na tumatakbo sa isang loop. Sa loop na ito, sinabi namin sa microcontroller kung kailan dapat sumulong kung walang makitang balakid sa 50cm. Ang robot ay kukuha ng isang matalim na liko sa kanan kapag natagpuan ang isang balakid.

void loop () {digitalWrite (trigPin, LOW); delayMicroseconds (2); digitalWrite (trigPin, MATAAS); delayMicroseconds (10); digitalWrite (trigPin, LOW); tagal = pulseIn (echoPin, HIGH); distansya = 0.034 * (tagal / 2); kung (distansya> 50) // Ilipat ang Pasulong kung walang makitang balakid {digitalWrite (enable1pin, HIGH); digitalWrite (paganahin ang 2pin, TAAS); digitalWrite (motor1pin1, TAAS); digitalWrite (motor1pin2, LOW); digitalWrite (motor2pin1, TAAS); digitalWrite (motor2pin2, LOW); } iba pa kung (distansya<50) // Sharp Right Turn if an obstacle found { digitalWrite(enable1pin, HIGH); digitalWrite(enable2pin, HIGH); digitalWrite(motor1pin1, HIGH); digitalWrite(motor1pin2, LOW); digitalWrite(motor2pin1, LOW); digitalWrite(motor2pin2, LOW); } delay(300); // delay }

Ngayon, dahil tinalakay namin ang lahat ng kailangan mo upang makagawa ng isang awtomatikong robot sa paglilinis ng sahig, tangkilikin ang paggawa ng iyong sariling mababang gastos at mahusay na robot sa paglilinis ng sahig.