Агуулгын хүснэгт:

Arduino 3D хэвлэсэн сумогийн бот: 6 алхам
Arduino 3D хэвлэсэн сумогийн бот: 6 алхам

Видео: Arduino 3D хэвлэсэн сумогийн бот: 6 алхам

Видео: Arduino 3D хэвлэсэн сумогийн бот: 6 алхам
Видео: Настройка 3D-принтера с помощью MKS sGen L v1.0 Часть 3 2024, Арваннэгдүгээр
Anonim
Arduino 3D хэвлэсэн сумогийн бот
Arduino 3D хэвлэсэн сумогийн бот

Тиймээс би байшингийнхаа эргэн тойронд хэд хэдэн эд анги байрлуулсан байв. Хэдхэн сарын дараа болох сүмогийн тэмцээнд оролцохыг хүссэн боловч надад бот байгаагүй. Бот худалдаж авах эсвэл одоо байгаа загварыг ашиглахын тулд надад хэрэгтэй зүйл худалдаж авахыг хүсч байсан бөгөөд би өөрийн хийсэн хэсгээс өөрийн загвараар өөрийн бот хийсэн. Энэхүү гарын авлагад танд дараах зүйлс хэрэгтэй болно.

  1. 3D хэвлэсэн хэсэг бүрийн нэгийг эндээс олж болно.
  2. 7.4 вольтын батерей эсвэл 18650 хэмжээтэй хоёр батерей.
  3. Шаардлагатай бол зай эзэмшигч.
  4. Ардуино нэгдээрэй.
  5. Arduino uno хагарлын бамбай.
  6. Arduino -д зориулсан USB кабель.
  7. Ширээний цахилгаан хангамж (заавал биш).
  8. Цэнэглэгч (заавал биш).
  9. Утас ба тэдгээрийн олонх.
  10. Стандарт хэмжээтэй металл арааны тасралтгүй эргүүлэх серво.
  11. Хоёр унтраалга мэдрэгч.
  12. 7 см хэмжээтэй servo дугуй.
  13. Асаах, унтраах унтраалга.

Энэ кодыг байнга өөрчилж байдаг. Энэ роботын кодыг эндээс олж болно. Энэ бол энэхүү төслийн кодын хамгийн сүүлийн үеийн хувилбар юм. Зугаацаарай!

Алхам 1: угсрах

Чуулган
Чуулган
Чуулган
Чуулган
Чуулган
Чуулган
  1. Робот нь хоёр төмөр арааны servo ашигладаг. Та м3 боолт, самар ашиглан явах эд анги доторх servo -ийг хоёр тийш харсан байдлаар шургуулахыг хүсч байна. Серво нь робот руу орох цорын ганц арга зам байдаг тул энэ нь урагшаа урагшлах болно.
  2. Серво дугуйг холбоно уу.
  3. Цахилгаан мэдрэгчийг залга, ингэснээр тэд роботын өмнө доошоо харсан байна. Тэд роботын урд талын M3 нүхээр хоёр боолтоор бэхлэгддэг. Роботын ёроолд тэднийг анзаарахаар ангархай нүхнүүд байдаг. Мэдрэгч нь явах эд ангиудыг авдаггүй бөгөөд ан цавыг бүхэлд нь харж чаддаг тул болгоомжтой байхыг хүсч байна. Бид дараа нь роботыг туршиж үзэхэд энэ талаар илүү ихийг мэдэх болно.
  4. HC-SR04 мэдрэгчийг роботын гадна талаас харсан хоёр нүхний дотор талд байрлуулна. Нүхнүүд нь явах эд ангийн урд талд байрладаг.
  5. Arduino Uno -ийг бамбайтай явах эд анги дотор оруулна уу.
  6. Доорх сумны жагсаалтын дагуу бүх зүйлийг холбоно.

    1. Таны сонгосон тэжээлийн эх үүсвэрээс цахилгаан унтраалга хүртэлх хүч. Та шилжүүлэгч рүү эерэг эсвэл сөрөг утсыг холбоно. Хэрэв та сөрөг тугалгыг сонгосон бол энэ нь таны үндэс байх болно, хэрэв та эерэг утсыг сонговол таны тэжээлийн эх үүсвэр болно. Эерэг эсвэл сөрөг эсэхээс хамаарч нөгөө утас нь таны эерэг эсвэл сөрөг байх болно.
    2. Эерэг утсыг Arduino дээрх vin руу холбоно уу.
    3. Servo болон Arduino дээр газартай холбоно уу.
    4. Arduino дээрх 5 вольтын зохицуулагчаас 5v -ийг мэдрэгч тус бүрийн бүх эерэг терминал руу холбоно уу.
    5. Мэдрэгчийг Arduino дээр залгаарай.
    6. Эцэст нь Arduino дээрх 7 -р зүүг баруун тийш мэдрэгч рүү, 6 -р зүүн IR мэдрэгч рүү, 8 -р зүүг servo -ийн аль нэгэнд, 9 -р зүүг сүүлчийн servo руу залгаарай.

Анхааруулга: Роботыг зөв залгахгүй байх нь робот тамхи татаж, электроникийг устгахад хүргэж болзошгүй юм

Алхам 2: Амьдралын анхны шинж тэмдэг

Анхааруулга: Роботыг асаалттай үед эсвэл servos -ийг холбосон үед компьютерт бүү холбоорой. Үүнийг хийхгүй бол таны компьютер гэмтэх аюултай

int горим = 3;

Дээрх кодын мөр нь роботын хувьд маш чухал хувьсагч юм. Энэ нь доор жагсаасан тоо тус бүртэй тэнцүү бол дараахь зүйлийг хийдэг.

  1. Тэгтэй тэнцүү байхад робот тодорхой хэв маягаар хөдөлдөг.
  2. Хэрэв горим нь нэгтэй тэнцүү бол робот нь мэдрэгч бүрийн уншилтын гаралтыг компьютерт хэвлэдэг.
  3. Хоёртой тэнцүү байх үед робот ирмэг, саад бэрхшээлээс зайлсхийдэг.
  4. Робот бусад ботуудтай тулалддаг.

Эдгээр нь роботыг туршиж үзэхэд туслах өөр өөр горимууд юм. Энэ хичээлийн эхний алхамд та "3" -ыг тэг болгож өөрчлөх шаардлагатай болно.

Одоо кодыг робот руу байршуулна уу. Та энэ дарааллаар урагш, хойш, зүүн, баруун тийш хөдөлж байгааг харах болно.

Алхам 3: Үүнийг харж болно

int горим = 0;

Хэрэв өмнөх алхам дууссан бол дараах хувьсагчийг "1" болгон өөрчилнө үү. Одоо Arduino дээрх сериал монитортойгоо холбогдоход таны робот юу харж байгааг хэвлэх болно. "0" гэдэг нь зах мэдрэгчийг ямар нэгэн зүйл харж байгааг илэрхийлдэг. "1" гэдэг нь ямар ч ирмэг харагдахгүй байна гэсэн үг юм. Хэрэв та логик нь урвуу байгааг анзаарсан бол цаашдын алхмуудыг анхаарч үзээрэй.

Ping мэдрэгчийн талаар санаа зовох хэрэггүй. Надад одоохондоо энэ ажил хийгдээгүй байна. Энэ роботыг маш эрчимтэй хөгжүүлж байна.

Алхам 4: Энэ нь хүснэгтийн ирмэгээс зайлсхийх боломжтой

void зайлсхийх () {

int sensorStateLeft = digitalRead (leftSensor);

int sensorStateRight = digitalRead (rightSensor);

саатал (50);

хэрэв (Ping.ping_cm ()> = 15 && sensorStateLeft == 0 && sensorStateRight == 0) {

зүүн. бичих (0); зөв. бичих (90);

}

if (Ping.ping_cm () <= 15 && Ping.ping_cm ()! = 0 || sensorStateLeft == 1 || sensorStateRight == 1) {

зүүн. бичих (90);

баруун. бичих (0); }

}

Дээрх код нь горим хоёртой тэнцэх үед дуудагдсан код юм. Хэрэв өмнөх алхам дууссан бол горимыг "2" болгон өөрчилнө үү.

Хэрэв мэдрэгчид урвуу байвал "if" гэсэн мэдэгдэл тус бүрт "sensorStateLeft" ба "sensorStateRight" -ийг урвуулж өгснөөсөө өөр тоотой тэнцүүлж болно. Энэ нь "1" эсвэл "0" гэсэн утгатай байна.

Одоо робот сүмогийн талбайн ирмэгээс зайлсхийж чадна. Энэ нь тулалдахад бараг бэлэн болсон байна. Үүнийг туршиж үзээд үр дүнгээ өгч байгаа эсэхийг шалгаарай.

Алхам 5: BATTLE

Танай сумо хэдхэн кодын өөрчлөлтөөр тулалдахад бэлэн боллоо. "3" -тай тэнцэх горимыг өөрчилж, хоосон "Сумо" -д шаардлагатай бол логикийг эргүүлнэ үү. Одоо таны робот талбайн ирмэгээс зайлсхийх ёстой боловч бусад роботыг илрүүлж чадахгүй байна. Энэ нь үндсэндээ талбайн ирмэгээс зайлсхийж, хангалттай хурдан хөдөлдөг тул роботыг ширээний ирмэгээс түлхэж чадна гэж найдаж байна. Зугаацаарай!

Алхам 6: Дүгнэлт

Таны робот одоо бэлэн боллоо. Хэрэв энэ төслийн талаар ямар нэгэн асуудал, санал байвал надад чөлөөтэй мэдэгдээрэй. Би итгэмээргүй байгаа тул санал хүсэлт өгөхөд бэлэн байна, учир нь энэ нь сайн хийгдсэн хичээл байсан эсэх талаар би мэдэхгүй байна. Зугаацаарай!

Зөвлөмж болгож буй: