Гал хөөх робот: 6 алхам (зурагтай)
Гал хөөх робот: 6 алхам (зурагтай)
Anonim
Image
Image
Дөл мэдрэгчийг PICO руу холбож байна
Дөл мэдрэгчийг PICO руу холбож байна

Энэ төсөлд бид гал сөнөөгч робот бүтээж, дөл хөөж, сэнсээр агаар үлээж унтраана.

Энэхүү төслийг дуусгасны дараа та дөл мэдрэгчийг PICO ашиглан хэрхэн ашиглах, тэдгээрийн гаралтын утгыг унших, түүн дээр хэрхэн ажиллах, DC мотортой Дарлингтоны мэдрэгчийг хэрхэн ашиглах, тэдгээрийг хэрхэн удирдах талаар мэдэх болно. Мэдээжийн хэрэг гал унтраах маш сайн роботтой хамт.

Хангамж

  • PICO
  • Дөл мэдрэгч
  • Жижиг DC мотор
  • Жижиг сэнс
  • L298N H-bridge хөдөлгүүрийн жолооч
  • PCA9685 12 битийн 16 сувгийн PWM драйвер
  • 2WD робот явах эд анги
  • Мини талхны самбар
  • Холбогч утас
  • Боолт ба самар

Алхам 1: Дөл мэдрэгчийг PICO руу холбох

Дөл мэдрэгчийг PICO руу холбож байна
Дөл мэдрэгчийг PICO руу холбож байна

Гал унтраах роботынхоо хамгийн чухал хэсэг болох гал гарсан үед түүнийг илрүүлэх чадвараас эхэлье. Тиймээс бид галыг илрүүлэх үүрэгтэй бүрэлдэхүүн хэсгүүдээс эхлэх гэж байгаа боловч үүнийг хийхийн өмнө 2WD робот явах эд ангиудыг угсарч хийцгээе.

Бид энэ төсөлд 3 дөл мэдрэгч ашиглах бөгөөд роботын заалтыг ашиглан бие даан хөдөлгөж, эдгээр мэдрэгчийг роботын явах эд ангийн дунд, зүүн, баруун талд байрлуулах болно. Тэднийг дөлний эх үүсвэрийг нарийвчлан тогтоож, унтраах чадвартай байхаар байрлуулна.

Дөл мэдрэгчийг ашиглаж эхлэхээсээ өмнө тэдгээрийн хэрхэн ажилладаг талаар ярилцъя: дөл мэдрэгчийн модулиуд нь ихэвчлэн хэт улаан туяаны хүлээн авагч LED -ээр хийгдсэн байдаг бөгөөд энэ нь дөлөөс ялгарч буй хэт улаан туяаны гэрлийг илрүүлж, өгөгдлийг дижитал эсвэл аналог оролтын хэлбэрээр илгээдэг. тохиолдолд бид дижитал гаралт илгээдэг дөл мэдрэгчийг ашиглах болно.

Галын мэдрэгчийн модулийн зүү:

  • VCC: эерэг 5 вольт, PICO -ийн VCC зүүтэй холбогдсон.
  • GND: сөрөг зүү, PICO -ийн GND зүүтэй холбогдсон.
  • D0: PICO дээрх хүссэн тоон төхөөрөмжтэй холбогдсон дижитал гаралтын зүү.

Үүнийг одоо PICO -той холбож, утас, кодын логикоо шалгаж, бүх зүйл зөв ажиллаж байгаа эсэхийг шалгаарай. Галын мэдрэгчийг холбох нь маш хялбар бөгөөд мэдрэгчүүдийн VCC, GND -ийг VCC, GND -т тус тус холбож, гаралтын тээглүүрийг дараах байдлаар холбоно.

  • D0 (баруун дөл мэдрэгч) → A0 (PICO)
  • D0 (дунд дөл мэдрэгч) → A1 (PICO)
  • D0 (зүүн дөл мэдрэгч) → A2 (PICO)

Алхам 2: PICO -г дөл мэдрэгчээр кодлох

PICO -г дөл мэдрэгчээр кодлох
PICO -г дөл мэдрэгчээр кодлох
PICO -г дөл мэдрэгчээр кодлох
PICO -г дөл мэдрэгчээр кодлох

Одоо бид дөл мэдрэгчээ PICO -той холбосон тул аль дөл мэдрэгчийн урд дөл байгаа, аль нь байхгүйг мэдэхийн тулд код бичиж эхэлье.

Кодын логик:

  • PICO -ийн A0, A2, A3 тээглүүрийг INPUT зүү болгон тохируулна уу
  • Мэдрэгч бүрийн гаралтын утгыг уншина уу
  • Мэдрэгч бүрийн гаралтын утгыг цуваа дэлгэц дээр хэвлээрэй, ингэснээр бүх зүйл зөв ажиллаж байгаа эсэхийг бид оношлох боломжтой болно.

Манай мэдрэгчид гал мэдрэх үедээ "0", гал мэдрэхгүй байхдаа "1" өндөр уншдаг болохыг анхаарна уу.

Кодыг шалгахын тулд цуваа дэлгэцээ нээгээд, гал асаах үед асахтай харьцуулахад хэрхэн өөрчлөгдөж байгааг хараарай. Хавсаргасан зургууд нь огт дөлгүй байх заалтууд, дунд мэдрэгчийн урд ганц дөлийн уншилтуудтай байна.

Алхам 3: Сэнсийг холбох

Фенийг холбож байна
Фенийг холбож байна

Гал унтраах роботыг үр дүнтэй болгохын тулд гал унтраах чадвартай байх ёстой бөгөөд үүний тулд бид галыг онилж, унтраах сэнс бүтээх гэж байна. Мөн бид сэнс суурилуулсан жижиг DC мотор ашиглан энэ сэнсийг бүтээх гэж байна.

Тиймээс, DC мотороо холбож эхэлье. DC мотор нь өндөр гүйдэлтэй тул бид тэдгээрийг PICO -тойгоо шууд холбож чадахгүй, учир нь энэ нь GPIO зүү тутамд 40 мА багтаамжтай байхад хөдөлгүүрт 100 мА хэрэгтэй. Тиймээс бид үүнийг холбохын тулд транзистор ашиглах ёстой бөгөөд бид TIP122 транзисторыг ашиглах болно, учир нь бид PICO -ийн өгсөн гүйдлийг хөдөлгүүрт шаардлагатай хэмжээнд хүртэл нэмэгдүүлэх боломжтой болно.

Бид PICO -г гэмтээхгүйгээр моторыг шаардлагатай хүчээр хангахын тулд DC мотор болон гадаад "PLACE HOLDER" батерейг нэмж оруулах гэж байна.

DC моторыг дараах байдлаар холбох ёстой.

  • Үндсэн зүү (TIP122) → D0 (PICO)
  • Коллекторын зүү (TIP122) → DC моторын тугалга "DC моторт туйлшрал байхгүй тул аль тугалга хамаагүй болно"
  • Ялгаруулагч зүү (TIP122) → GND
  • DC моторын хоосон хар тугалга → Гадаад батерейны эерэг (улаан утас)

Батерейны GND -ийг PICO -ийн GND -тэй холбохоо бүү мартаарай, холбогдоогүй юм шиг хэлхээ огт ажиллахгүй болно

Сэнсний кодын логик: код нь маш энгийн, бид дунд мэдрэгчийн уншилт өндөр байх үед сэнсийг асаах ёстой кодыг өөрчилж, дунд мэдрэгчийн уншилт бага байхад сэнсийг унтраана.

Алхам 4: Робот машины моторыг холбох

Одоо манай робот галыг илрүүлж, гал шууд урд нь байх үед сэнсээр унтраах боломжтой боллоо. Роботыг хөдөлгөж, галын өмнө шууд байрлуулах чадварыг өгөх цаг болсон тул түүнийг унтрааж чадна. Бид 2WD робот явах эд ангиудыг аль хэдийн ашиглаж байгаа бөгөөд үүнийг ашиглах гэж байгаа 2 араатай DC -тэй хамт ирдэг.

Тогтмол гүйдлийн хөдөлгүүрийн гүйлтийн хурд, чиглэлийг хянах боломжтой байхын тулд та хөдөлгүүрийг тэжээх чадвартай хөдөлгүүрийн жолоодлогын модуль болох L298N H-bridge хөдөлгүүрийн драйверыг ашиглах хэрэгтэй. гадаад эрчим хүчний эх үүсвэрээс.

L298N моторын драйвер нь хөдөлгүүрийн эргэх чиглэлийг хянахад 4 дижитал оролт, хөдөлгүүрийн эргэлтийн хурдыг хянахад 2 ХОУХ -ны оролт хэрэгтэй. Харамсалтай нь PICO нь хөдөлгүүрийн эргэлтийн чиглэл, хурдыг хянах боломжгүй ганц ХОУХ -ны гаралтын зүүтэй байдаг. Энд бид PCA9685 PWM тээглүүрийн өргөтгөлийн модулийг ашиглан бидний хэрэгцээнд нийцүүлэн PICO -ийн PWM -ийг нэмэгдүүлдэг.

Бид 2 шинэ моторыг 2 модулийн хамт удирдахын тулд утсыг холбох нь арай илүү төвөгтэй болсон. Гэсэн хэдий ч, хэрэв та өгсөн схем, алхамуудыг дагаж мөрдвөл энэ нь асуудал биш болно.

PCA9685 PWM модулийг эхлүүлье

  • Vcc (PCA9685) → Vcc (PICO)
  • GND (PCA9685) → GND
  • SDA ((PCA9685) → D2 (PICO)
  • SCL (PCA9685) → D3 (PICO)

Одоо L298N мотор драйвер модулийг холбож үзье

Үүнийг эрчим хүчний эх үүсвэртэйгээ холбож эхэлье.

  • +12 (L298N модуль) → Эерэг улаан утас (зай)
  • GND (L298N модуль) → GND

Хөдөлгүүрийн эргэх чиглэлийг хянахын тулд:

  • In1 (L298N модуль) → ХОУХ 0 зүү (PCA9685)
  • In2 (L298N модуль) → PWM 1 зүү (PCA9685)
  • In3 (L298N модуль) → PWM 2 зүү (PCA9685)
  • In4 (L298N модуль) → PWM 3 зүү (PCA9685)

Моторын эргэлтийн хурдыг хянахын тулд:

  • идэвхжүүлэхA (L298N модуль) → PWM 4 зүү (PCA9685)
  • enableB (L298N модуль) → PWM 5 зүү (PCA9685)

L298N мотор драйвер нь зохицуулалттай +5 вольт гаргадаг бөгөөд үүнийг бид PICO -г асаахад ашиглах болно.

+5 (L298N модуль) → Вин (PICO)

Хэрэв PICO USB -ээр тэжээгдсэн бол энэ зүүг бүү холбоорой

Одоо бүх зүйл холбогдсон тул бид роботыг өөрөө дөл рүү чиглүүлж сэнс асаах програмчлах болно.

Алхам 5: Кодыг дуусгах

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

Хэрэв энэ нь шууд галыг мэдэрч байвал (дунд мэдрэгч нь галыг мэдэрдэг) робот тогтоосон зайд хүрч сэнсээ асаах хүртэл яг түүн рүү хөдөлнө

Хэрэв энэ нь роботыг баруун талд нь мэдэрч байвал (баруун мэдрэгч нь галыг мэдэрдэг) робот галыг роботын урд талд (дунд мэдрэгч) хүртэл эргүүлж, тогтоосон зайд хүрэх хүртэл тийш хөдөлнө. мөн сэнсийг асаана

Хэрэв роботын зүүн талд гал мэдрэгдвэл дээр дурдсантай адил ажиллах болно. Гэхдээ энэ нь баруун биш харин зүүн тийш эргэх болно.

Хэрэв гал огт мэдрэгдэхгүй бол бүх мэдрэгч нь өндөр утгыг гаргаж, роботыг зогсооно.

Алхам 6: Та дууссан

Энэхүү төсөлд бид мэдрэгчийн гаралтыг уншиж, үүнээс хамаарч арга хэмжээ авах, Дарлингтоны транзисторыг DC мотортой ашиглах, DC моторыг хэрхэн удирдах талаар сурсан. Бид бүх мэдлэгээ ашиглан гал унтраах роботыг аппликейшн болгон бүтээсэн. Ямар хөөрхөн юм бэ х)

Сэтгэгдэл эсвэл манай mellbell.cc вэбсайтаас асуух зүйлээ асуухаас бүү эргэлзээрэй. Мөн урьдын адил үргэлжлүүлэн хийцгээе:)

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