Talaan ng mga Nilalaman:
- Hakbang 1: Ano ang Kailangan mo sa Project na Ito:
- Hakbang 2: Diagram ng Circuit
- Hakbang 3: Programming Arduino UNO
- Hakbang 4: Mahusay
Video: Paano Gumawa ng DIY Arduino Obstacle na Pag-iwas sa Robot sa Bahay: 4 na Hakbang
2024 May -akda: John Day | [email protected]. Huling binago: 2024-01-30 13:11
Hello Guys, Sa Instructable na ito, gagawa ka ng isang balakid sa pag-iwas sa robot. Ang Instructable na ito ay nagsasangkot ng pagbuo ng isang robot na may isang ultrasonic sensor na makakakita ng kalapit na mga bagay at baguhin ang kanilang direksyon upang maiwasan ang mga bagay na ito. Ang sensor ng ultrasonic ay ikakabit sa isang servo motor na kung saan ay patuloy na pag-scan ng kaliwa at kanan na naghahanap ng mga bagay sa kanyang paraan.
Kaya, nang walang karagdagang pagtatalo, Magsimula tayo!
Hakbang 1: Ano ang Kailangan mo sa Project na Ito:
Narito ang Listahan ng Mga Bahagi:
1) Arduino Uno
2) Motor Driver Shield
3) Itakda ang Gear Motor, Frame at gulong
4) Servo Motor
5) Ultrasonic Sensor
6) Li-ion Battery (2x)
7) May-hawak ng Baterya
8) Lalaki at Babae Jumper wire
9) Panghinang na Bakal
10) Charger
Hakbang 2: Diagram ng Circuit
Nagtatrabaho:
Bago magtrabaho sa proyekto, mahalagang maunawaan kung paano gumagana ang ultrasonic sensor. Ang pangunahing prinsipyo sa likod ng pagtatrabaho ng ultrasonic sensor ay ang mga sumusunod:
Gamit ang isang panlabas na signal ng pag-trigger, ang Trig pin sa ultrasonic sensor ay ginawang mataas ang lohika nang hindi bababa sa 10µs. Ang isang sonik na pagsabog mula sa module ng transmitter ay ipinadala. Binubuo ito ng 8 pulso ng 40KHz.
Ang mga signal ay bumalik pabalik pagkatapos ng pagpindot sa isang ibabaw at nakita ng tatanggap ang signal na ito. Ang Echo pin ay mataas mula sa oras ng pagpapadala ng signal at pagtanggap nito. Ang oras na ito ay maaaring mai-convert sa distansya gamit ang naaangkop na mga kalkulasyon.
Ang layunin ng proyektong ito ay upang ipatupad ang isang balakid sa pag-iwas sa robot gamit ang ultrasonic sensor at Arduino. Ang lahat ng mga koneksyon ay ginawa ayon sa diagram ng circuit. Ang pagtatrabaho ng proyekto ay ipinaliwanag sa ibaba.
Kapag ang robot ay pinapagana, ang parehong mga motor ng robot ay tatakbo nang normal at ang robot ay sumusulong. Sa oras na ito, patuloy na kinakalkula ng sensor ng ultrasonic ang distansya sa pagitan ng robot at ng mapanimdim na ibabaw.
Ang impormasyong ito ay naproseso ng Arduino. Kung ang distansya sa pagitan ng robot at ng balakid ay mas mababa sa 15cm, ang Robot ay tumitigil at ini-scan sa kaliwa at kanang direksyon para sa bagong distansya gamit ang Servo Motor at Ultrasonic Sensor. Kung ang distansya patungo sa kaliwang bahagi ay higit pa sa kanang bahagi, maghahanda ang robot para sa isang kaliwang pagliko. Ngunit una, ito ay back up ng kaunti at pagkatapos ay buhayin ang Left Wheel Motor sa baligtad sa direksyon.
Katulad nito, kung ang tamang distansya ay higit pa sa kaliwang distansya, ang Robot ay naghahanda ng tamang pag-ikot. Ang prosesong ito ay magpapatuloy magpakailanman at ang robot ay patuloy na gumagalaw nang hindi tumatama sa anumang balakid.
Hakbang 3: Programming Arduino UNO
# isama
# isama
# isama
# tukuyin ang TRIG_PIN A1
# tukuyin ang ECHO_PIN A0
# tukuyin ang MAX_DISTANCE 200
# tukuyin ang MAX_SPEED 255 // nagtatakda ng bilis ng mga DC motor
# tukuyin ang MAX_SPEED_OFFSET 20
NewPing sonar (TRIG_PIN, ECHO_PIN, MAX_DISTANCE);
AF_DCMotor motor3 (3, MOTOR34_1KHZ);
AF_DCMotor motor4 (4, MOTOR34_1KHZ); Servo MyServo;
boolean goesForward = false;
int distansya = 100; int speedSet = 0;
walang bisa ang pag-setup () {
myservo.attach (10);
myservo.write (115); pagkaantala (2000); distansya = readPing (); pagkaantala (100); distansya = readPing (); pagkaantala (100); distansya = readPing (); pagkaantala (100); distansya = readPing (); pagkaantala (100); }
void loop () {
int distansyaR = 0; int distansyaL = 0; pagkaantala (40);
kung (distansya <= 15) {moveStop (); pagkaantala (100); ilipatBackward (); pagkaantala (300); ilipatStop (); pagkaantala (200); distanceR = lookRight (); pagkaantala (200); distansyaL = lookLeft (); pagkaantala (200);
kung (distansyaR> = distansyaL) {
lumiko pakanan(); ilipatStop (); } iba pa {turnLeft (); ilipatStop (); }} iba pa {moveForward (); } distansya = readPing (); }
int lookRight () {
myservo.write (50); pagkaantala (500); int distansya = readPing (); pagkaantala (100); myservo.write (115); distansya ng pagbabalik; }
int lookLeft () {
myservo.write (170); pagkaantala (500); int distansya = readPing (); pagkaantala (100); myservo.write (115); distansya ng pagbabalik; pagkaantala (100); }
int readPing () {
pagkaantala (70); int cm = sonar.ping_cm (); kung (cm == 0) {cm = 250; } bumalik cm; }
walang bisa moveStop () {
motor3.run (RELEASE);
motor4.run (RELEASE); }
walang bisa moveForward () {
kung (! goesForward) {
goesForward = totoo;
motor3.run (FORWARD);
motor4.run (FORWARD); para sa (speedSet = 0; speedSet <MAX_SPEED; speedSet + = 2) // dahan-dahang dalhin ang bilis upang maiwasan ang pag-load ng masyadong mabilis sa mga baterya {
motor3.setSpeed (speedSet);
motor4.setSpeed (speedSet); antala (5); }}}
walang bisa moveBackward () {
goesForward = false;
motor3.run (BACKWARD);
motor4.run (BACKWARD); para sa (speedSet = 0; speedSet <MAX_SPEED; speedSet + = 2) // dahan-dahang dalhin ang bilis upang maiwasan ang pag-load ng masyadong mabilis sa mga baterya {
motor3.setSpeed (speedSet);
motor4.setSpeed (speedSet); antala (5); }}
void turnRight () {
motor3.run (FORWARD);
motor4.run (BACKWARD); pagkaantala (500);
motor3.run (FORWARD);
motor4.run (FORWARD); }
void turnLeft () {
motor3.run (BACKWARD);
motor4.run (FORWARD); pagkaantala (500);
motor3.run (FORWARD);
motor4.run (FORWARD); }
1) I-download at I-install ang Arduino Desktop IDE
- windows -
- Mac OS X -
- Linux -
2) I-download at i-paste ang NewPing library (Ultrasonic sensor function library) na file sa folder ng Arduino libraries.
- I-download ang NewPing.rar sa ibaba
- I-extract ito sa path - C: / Arduino / mga aklatan
3) I-upload ang code sa Arduino board sa pamamagitan ng isang USB cable
I-download ang Code:
Hakbang 4: Mahusay
Handa na ang iyong robot upang maiwasan ang anumang balakid …
Masaya akong sasagot sa anumang mga katanungan mo
Emailme: [email protected]
Website:
Mag-subscribe sa aking Channel sa YouTube:
Instagram:
Facebook:
Salamat:)
Inirerekumendang:
Paano Gumawa ng IoT Batay sa Pag-aautomat ng Bahay Sa NodeMCU Sensors Control Relay: 14 Mga Hakbang (na may Mga Larawan)
Paano Gumawa ng IoT Batay sa Pag-aautomat sa Bahay Sa NodeMCU Sensors Control Relay: Sa proyektong ito na batay sa IoT, gumawa ako ng Home Automation kasama ang Blynk at NodeMCU control relay module na may real-time na feedback. Sa Manual Mode, ang module ng relay na ito ay maaaring makontrol mula sa Mobile o smartphone at, Manu-manong switch. Sa Auto Mode, ang smar na ito
Paano Gumawa ng Smart Home Gamit ang Arduino Control Relay Module - Mga Ideya sa Pag-aautomat ng Bahay: 15 Hakbang (na may Mga Larawan)
Paano Gumawa ng Smart Home Gamit ang Arduino Control Relay Module | Mga Ideya sa Pag-aautomat ng Bahay: Sa proyekto sa automation ng bahay na ito, magdidisenyo kami ng isang matalinong module ng relay sa bahay na makokontrol ang 5 mga gamit sa bahay. Ang module ng relay na ito ay maaaring makontrol mula sa Mobile o smartphone, IR remote o TV remote, Manu-manong switch. Ang matalinong relay na ito ay maaari ding maunawaan ang r
Paano Gumawa ng isang Wifi System Na Kinokontrol ang Iyong Pag-iilaw at Pag-init ng Aquarium: 5 Hakbang
Paano Gumawa ng isang Wifi System Na Kinokontrol ang Iyong Pag-iilaw at Pag-init ng Aquarium: Ano ang ginagawa nito? Isang system na awtomatikong isinasara / patayin ang iyong aquarium ayon sa isang pag-iiskedyul o manu-mano na may isang pindutan ng push o isang kahilingan sa internet. Isang system na sinusubaybayan ang temperatura ng tubig at nagpapadala ng email at mga alerto sakaling ma-under
Pag-abiso sa doorbell para sa kapansanan sa pandinig sa pamamagitan ng pag-aautomat sa bahay (ESP-ngayon, MQTT, Openhab): 3 Hakbang
Pag-abiso sa doorbell para sa kapansanan sa pandinig sa pamamagitan ng pag-aautomat sa bahay (ESP-ngayon, MQTT, Openhab): Sa Instructable na ito ipinapakita ko sa iyo kung paano ko isinama ang aking normal na doorbell sa aking pag-aautomat sa bahay. Ang solusyon na ito ay angkop para sa mga taong may kapansanan sa pandinig. Sa aking kaso ginagamit ko ito upang maabisuhan kung ang silid ay abala at maingay sa isang pagdiriwang ng kaarawan ng mga bata. Ako
Turuan Ka Kung Paano Gumawa ng Mga Robot sa Bahay: 11 Hakbang
Turuan Ka Kung Paano Gumawa ng Mga Robot sa Bahay: Ang Robotic lover na si Steve Norris ay 51 taong gulang. Dinisenyo niya ang maraming mga robot at pinamamahalaan ang mga ito gamit ang kanyang sariling mga awtomatikong gamit sa bahay at webcam. Nais mo rin bang malaman kung paano gumawa ng iyong sariling robot? Sa katunayan, ang pamamaraan ng DIY robot ay napaka-simple at nagkakahalaga ng