Агуулгын хүснэгт:
- Алхам 1: Танд хэрэгтэй зүйл
- Алхам 2: Баримтжуулалт
- Алхам 3: Хэт авианы мэдрэгчийн дэмжлэгийг бэлтгэ
- Алхам 4: Бүгдийг прототип хийх самбар дээр суулгаарай
- Алхам 5: Эцсийн холболт хийх
- Алхам 6: Хөтөлбөрийг эхлүүлэх
- Алхам 7: С кодыг ойлгох
- Алхам 8: Java кодыг ойлгох
- Алхам 9: Дүгнэлт
Видео: Төсөл 3: SonarDuino: 9 алхам
2024 Зохиолч: John Day | [email protected]. Хамгийн сүүлд өөрчлөгдсөн: 2024-01-30 11:04
Эрхэм хүндэт хоббичин, Энэхүү төсөлд бид объект илрүүлэх 360 градусын радарын системтэй болох боломжийг судлах болно. Энэхүү модулийг тусад нь байрлуулснаар таны зүтгүүр робот эргэн тойрныхоо хил хязгаарыг илрүүлэх боломжтой болно. Энэ нь харанхуйд навигацийн хэрэгсэл болж чаддаг, гэхдээ хангалттай удаан алхах үед л; х
Алхам 1: Танд хэрэгтэй зүйл
Энэхүү бүтцийг бий болгохын тулд та дараахь зүйлийг худалдаж авах хэрэгтэй болно.
Arduino Nano: https://www.ebay.com/itm/USB-Nano-V3-0-ATmega328-16M-5V-Micro-controller-CH340G-board-For-Arduino/201601613488?hash=item2ef0647eb0:g:DkoAAOSwvYZZp: rk: 2: pf: 0
Прототип хийх самбар: https://www.ebay.com/itm/20pcs-set-4Size-Double-Side-Protoboard-Circuit-Universal-DIY-Prototype-PCB-Board/192076517108?epid=506557101&hash=item4cg8a70 ~ Zbl232: rk: 13: pf: 0
Servo Motors: https://www.ebay.com/itm/5pcs-POP-9G-SG90-Micro-Servo-motor-RC-Robot-Helicopter- Airplane-Control-Car-Boat/142931003420?hash=item21475a081c:rk: 16: pf: 0 & var
Хэт авианы мэдрэгч: https://www.ebay.com/itm/5PCS-Ultrasonic-Sensor-Module-HC-SR04-Distance-Measuring-Sensor-for-arduino-SR04/170897438205?epid=18020663283&hash=it27 ~ IAAOSw-xbD5Fp: rk: 2: pf: 0
Алхам 2: Баримтжуулалт
Та нарын зарим нь үүнийг мэдэж байгаа байх, энэ төслийг Дежаны хийсэн "Мехатроникийг хэрхэн яаж хийх вэ" гэсэн доорх линкээр хийсэн "Arduino Radar Project" нэртэй өөр эх сурвалжтай төслөөс санаа авсан болно: https://howtomechatronics.com/projects/arduino -радар төсөл/
Баримт бичгийг шаарддаг өөр нэг зүйл бол дараахь хоёр номын санг хөгжүүлэлтийн орчинд татаж авах явдал юм.
Adafruit-GFX-Номын сан:
Adafruit_SSD1306:
С кодыг үнэхээр ойлгохын тулд дээрх хоёр номын сангийн зарим бичиг баримтыг бүрдүүлэх шаардлагатай болно. Үүнээс гадна, миний кодонд ашигласан функцууд нь юу хийж байгааг нь харуулсан нэртэй байдаг.
Алхам 3: Хэт авианы мэдрэгчийн дэмжлэгийг бэлтгэ
Аливаа картон цаасыг аваад эхний зурагт үзүүлсэн шиг мэдрэгч дээр хавсаргасан холболтын кабелийн хэмжээг харгалзан хайчилж ав. Үүний дараа үүнийг сүүлд нь нугалаад servo моторын тулгуур дээр наа. Үүнийг хийсний дараа сүүлийн зургийн дагуу хоёр хэт авианы мэдрэгчийг наа. Мэдрэгчийн толгойг кабелийг мэдрэгчийн өмнө гадагш гаргахын тулд гагнах ёстойг анхаарна уу. Энэ нь 360 градусын эргэлтийг хэрэгжүүлэх үед мэдрэгч кабелиуд хоорондоо саад учруулахгүй байх боломжийг олгоно.
Алхам 4: Бүгдийг прототип хийх самбар дээр суулгаарай
Энэ алхамд та өмнөх шатанд бэлтгэсэн толгойг харгалзах servo моторт холбож эхэлнэ. Серво моторыг сайтар дасгасны дараа та бүх зүйлийг прототип хийх самбар дээр холбох болно. Та Arduino Nano -ийг гагнах, дараа нь servo -ийг яг хажууд нь нааж эхлүүлэх болно. Эцэст нь та жижиг OLED дэлгэцийг самбарын нөгөө ирмэг дээр гагнах болно.
Алхам 5: Эцсийн холболт хийх
Энэ алхам нь энэ төслийн тоног төхөөрөмжийн талыг дуусгах болно. Шаардлагатай бүх холболтыг бий болгохын тулд та өгсөн схемийг дагаж мөрдөх шаардлагатай болно.
Алхам 6: Хөтөлбөрийг эхлүүлэх
Та ачаалах шаардлагатай хоёр код байдаг
Arduino (C):
Боловсруулалт (java):
Кодыг ажиллуулахдаа танд хоёр сонголт байх болно:
Сонголт 1: OLED дэлгэцийг ашиглахын тулд та C код дахь MODE хувьсагчийг 0 болгож тохируулах шаардлагатай болно.
Сонголт 2: Монитороо ашиглахын тулд та C код дахь MODE хувьсагчийг 1 болгож тохируулах шаардлагатай болно. Үүнээс гадна та Processing development орчныг татаж аваад энэ линкээс радар фонтыг татаж авах хэрэгтэй болно: https:// github.com/lastralab/ArduinoRadar/blob/ma…
Мөн энэ файлыг боловсруулах кодын файл дээрээ нэмж оруулаарай, ингэснээр таны java код дуудлага хийхдээ фонтыг таних болно.
Алхам 7: С кодыг ойлгох
Код нь ихэвчлэн "for" гэсэн хоёр гогцооноос бүрдэнэ. Нэг нь урагш дамжуулалттай, нөгөө нь арын дамжуулалттай холбоотой. Тэдгээрийн аль алиных нь дотор радарын шугамыг зурах draw_scanner () функцийг олон удаа дууддаг. Олон тооны тохиргоог туршиж үзсэний дараа бид устгахын тулд t+1 үед цагаан өнгийн радар шугамыг t+1 үед хар өнгийн ижил радар шугамаар дарж бичих хэрэгтэй гэсэн дүгнэлтэд хүрсэн. Үгүй бол шинэ пикселийн сүлжээг дарахаасаа өмнө дэлгэцийг "clearDisplay ()" функцийг ашиглан цэвэрлэх бүрт анивчих болно. Дизайн зорилгоор 7 шугамтай ажиллахдаа би элемент бүрийг радарын төвийн хоорондох радиусыг илрүүлсэн объект руу байрлуулсан 7 элементийн бүхэл массивыг хадгалж, дамжуулах ёстой байв. Үүнийг харгалзан кодын үлдсэн хэсгийг ойлгоход хялбар байх ёстой.
Алхам 8: Java кодыг ойлгох
Боловсруулах явцад би зөвхөн COM нэртэй цуваа порттой ажилладаг serialEvent () функцийн дуудлагыг алгасах шаардлагатай болсон. Намайг Mac дээр ажиллаж байх үед миний цуваа портууд өөр нэртэй байсан. Үүнийг хэлэхэд би энэ функцийг "draw ()" боловсруулах үндсэн функц болгон задалсан. Бусад бүх зүйлийн хувьд би хувьсгалын бүрэн загварыг хангахын тулд програмаа шинэчилсэн. Эцэст нь би зурсан бүх хэлбэр, текстийг дэлгэцийн өргөнтэй нийцүүлэн шинэчилсэн бөгөөд ингэснээр эцсийн бүтээгдэхүүн нь өөр өөр дэлгэцийн нягтралтай нийцэх болно. Би үүнийг 1000X1000 ба 500X500 нарийвчлалтай туршиж үзсэн бөгөөд энэ нь сайн ажилласан:).
Алхам 9: Дүгнэлт
Энэ ажлыг 3 хэт авианы мэдрэгчтэй болгож, тус бүр нь 120 харах өнцөг, эсвэл бүр 4 мэдрэгчтэй (90 градус*4) -> 360 градус илүү хурдан болгох боломжтой. скан хийх.
Та мөн радарыг 40 см -ээс 60 см хүртэл, бүр 80 см хүртэл сунгаж болно. Би pulseIn функцийг биечлэн туршиж үзээд 40 см -ийн хувьд TIMEOUT хувьсагчийг тохируулсан. Энэ хувьсагч нь импульсийн урт, импульс тусах объектын гадаргуу гэх мэт олон хүчин зүйлээс хамаардаг.
Эцэст нь хэлэхэд, дараагийн алхам бол эргэн тойрныхоо периметрийг сканнердах робот бүхий radarDuino -ийг ашиглах явдал юм.
Зөвлөмж болгож буй:
Gimbal тогтворжуулагч төсөл: 9 алхам (зурагтай)
Gimbal Stabilizer Project: Gimbal хэрхэн хийх вэ? Үйл ажиллагааны камертаа 2 тэнхлэгтэй gimbal хэрхэн хийхийг сурч мэдээрэй Өнөөгийн соёл иргэншилд бид бүгд видео бичлэг хийх, тэр агшныг буулгах дуртай, ялангуяа та над шиг контент бүтээгч байхдаа ийм асуудалтай тулгарсан нь гарцаагүй. ийм чичиргээтэй видео
Автомат ЭКГ- BME 305 Эцсийн төсөл Нэмэлт зээл: 7 алхам
Автомат ЭКГ-BME 305 Эцсийн төсөл Нэмэлт зээл: Цус харвах зүрхний цохилтын цахилгаан дохиог хэмжихийн тулд электрокардиограмм (ЭКГ эсвэл ЭКГ) ашигладаг бөгөөд зүрх судасны өвчнийг оношлох, урьдчилан таамаглахад чухал үүрэг гүйцэтгэдэг. ЭКГ -аас олж авсан зарим мэдээлэлд хэмнэл орно
Гэрийн тэжээвэр амьтдын хоол хийх автомат аяга таваг төсөл: 13 алхам
Гэрийн тэжээвэр амьтдын хоол хийх автомат аяга таваг төсөл: Энэхүү зааварчилгаанд хүнсний аягатай хавсаргасан гэрийн тэжээвэр амьтдын автоматжуулагч, тэжээгчийг хэрхэн яаж хийхийг тайлбарлаж, тайлбарлах болно. Бүтээгдэхүүн хэрхэн ажилладаг, ямар харагдаж байгааг харуулсан видеог би энд хавсаргав
Эхлэгчдэд зориулсан Arduino -ийн 10 үндсэн төсөл! Нэг самбараар хамгийн багадаа 15 төсөл хий !: 6 алхам
Эхлэгчдэд зориулсан Arduino -ийн 10 үндсэн төсөл! Хамгийн багадаа 15 төслийг нэг самбараар хий !: Arduino Project & Хичээлийн зөвлөл; Arduino -ийн үндсэн 10 төслийг багтаасан болно. Бүх эх код, Gerber файл болон бусад. SMD байхгүй байна! Хүн бүрт хялбар гагнах. Зөөврийн болон сольж болох хялбар бүрэлдэхүүн хэсгүүд. Та хамгийн багадаа 15 төсөл хийх боломжтой
USB -ээр ажилладаг шарагч! Энэхүү төсөл нь хуванцар / мод / цаасаар шатаж болно (хөгжилтэй төсөл нь маш нарийн мод байх ёстой): 3 алхам
USB -ээр ажилладаг шарагч! Энэ төсөл нь хуванцар / мод / цаасаар шатаж болно (хөгжилтэй төсөл нь маш нарийн мод байх ёстой): ЭНЭ USB ашиглан бүү хий !!!! Энэ нь бүх сэтгэгдлээс таны компьютерийг гэмтээж болохыг олж мэдсэн. миний компьютер сайн байна 600ma 5V утасны цэнэглэгч ашиглана уу. Би үүнийг ашигласан бөгөөд энэ нь сайн ажилладаг бөгөөд хэрэв та цахилгаан тэжээлийг зогсоохын тулд хамгаалалтын залгуур ашиглавал юу ч гэмтээхгүй