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

Strandbeest, Java/Python болон Апп хяналттай алхах: 4 алхам (зурагтай)
Strandbeest, Java/Python болон Апп хяналттай алхах: 4 алхам (зурагтай)

Видео: Strandbeest, Java/Python болон Апп хяналттай алхах: 4 алхам (зурагтай)

Видео: Strandbeest, Java/Python болон Апп хяналттай алхах: 4 алхам (зурагтай)
Видео: НЛО: НАСТОЯЩАЯ ПРАВДА! / ПОЛНЫЙ ДОКУМЕНТАЛЬНЫЙ ФИЛЬМ 2024, Долдугаар сарын
Anonim

Зохиогчийн бусад зүйлийг дагах:

Энгийн гармоник хөдөлгөөний туршилтын судалгаа
Энгийн гармоник хөдөлгөөний туршилтын судалгаа
Энгийн гармоник хөдөлгөөний туршилтын судалгаа
Энгийн гармоник хөдөлгөөний туршилтын судалгаа

Энэхүү Strandbeest иж бүрдэл нь Тео Жансений зохион бүтээсэн Strandbeest дээр үндэслэсэн DIY ажил юм. Гайхамшигтай механик хийцэд би гайхаж, үүнийг бүрэн жолоодлоготой, дараа нь компьютерийн оюун ухаанаар тоноглохыг хүсч байна. Энэхүү зааварчилгааны хувьд бид эхний хэсэг болох маневрлах чадвар дээр ажилладаг. Бид мөн зээлийн картын хэмжээтэй компьютерийн механик бүтцийг хамардаг бөгөөд ингэснээр бид компьютерийн алсын хараа, AI боловсруулалтаар тоглох боломжтой болно. Барилга угсралтын ажлыг хөнгөвчлөхийн тулд би arduino эсвэл үүнтэй төстэй програмчлагдсан компьютер ашиглаагүй, харин bluetooth -ийн техник хангамж хянагч бүтээсэн. Робот техник хэрэгсэлтэй харилцах терминал болж ажилладаг энэхүү хянагч нь андройд утасны апп, RaspberryPi гэх мэт илүү хүчирхэг системээр хянагддаг. Удирдлага нь гар утасны интерфейсийн удирдлага эсвэл python эсвэл Java хэл дээр програмчлагдах хяналт байж болно. Програмчлалын хэл бүрийн хувьд нэг SDK нь https://github.com/xiapeiqing/m2robots.git дээр байрлуулсан нээлттэй эх сурвалж юм.

Mini Strandbeest хэрэглэгчийн гарын авлага нь барилгын үе шатыг тайлбарлахад маш тодорхой байдаг тул энэхүү зааварчилгаанд бид хэрэглэгчийн гарын авлагад ихэвчлэн тусгагдаагүй мэдээлэл, цахилгаан/электрон эд ангиуд дээр анхаарлаа хандуулах болно.

Хэрэв бидэнд энэ иж бүрдлийг механик угсрах талаар илүү ойлгомжтой санаа хэрэгтэй бол угсрах сэдвээр https://www.youtube.com/embed/6d714xmz1ZY гэх мэт хэд хэдэн сайн видеог үзэх боломжтой.

Хангамж

Механик хэсгийг барьж, энэхүү Strandbeest -ийн бүх цахилгаан холболтыг хийхийн тулд 3D хэвлэхийг хүлээх хугацааг тооцохгүй бол 1 цаг хүрэхгүй хугацаа шаардагдана. Энэ нь дараахь хэсгүүдийг шаарддаг.

(1) 1 ширхэг стандарт Strandbeest иж бүрдэл (https://webshop.strandbeest.com/ordis-parvus)

(2) Gear Box бүхий 2х DC мотор (https://www.amazon.com/Greartisan-50RPM-Torque-Re…)

(3) 1x Bluetooth хянагч (https://ebay.us/Ex61kC?cmpnId=5338273189)

(4) 1x LiPo батерей (3.7V, таны мАч багтаамжийн сонголт)

(5) 12x M2x5.6mm хэмжээтэй модон эрэг

(6) 2мм диаметртэй нүүрстөрөгч эсвэл хулсан саваа

Дараах хэсгүүдийг 3D хэвлэх.

(1) 1х робот техникийн үндсэн хэсэг

(3D хянагч дизайны файлыг зөвхөн bluetooth хянагчаар татаж авах боломжтой)

(OrangePi Nano нэмэлт татаж авах боломжтой 3D хэвлэлийн дизайны файл)

(2) 2х хөтөчийн босоо амны фланц (3D хэвлэх дизайны файл татаж авах)

(3) 2х цахилгаан системийн бэхэлгээ (3D хэвлэх дизайны файл татаж авах)

Бусад:

Android гар утас. Google playstore руу ороод M2ROBOTS -ийг хайж, хяналтын програмыг суулгана уу.

Хэрэв Google playstore -д нэвтрэхэд хэцүү байвал програмыг татаж авах өөр аргыг миний хувийн нүүр хуудаснаас үзнэ үү

Алхам 1: эд ангиудын зохион байгуулалт

Сэлбэгийн зохион байгуулалт
Сэлбэгийн зохион байгуулалт
Сэлбэгийн зохион байгуулалт
Сэлбэгийн зохион байгуулалт
Сэлбэгийн зохион байгуулалт
Сэлбэгийн зохион байгуулалт
Сэлбэгийн зохион байгуулалт
Сэлбэгийн зохион байгуулалт

Энэ үе шатанд бид угсрах бүх эд ангиудыг зохион байгуулна. Зураг 1. Strandbeest загварыг бүтээхэд ашигладаг хайрцагнаас гадуур хуванцар эд ангиудыг харуулав. Эдгээрийг 3D хэвлэх эсвэл тээрэмдэх гэх мэт бусад машин боловсруулах аргуудтай харьцуулахад маш өндөр үр ашигтай тарилгын аргаар хийдэг. Тийм ч учраас бид бөөнөөр үйлдвэрлэсэн бүтээгдэхүүнийхээ давуу талыг ашиглахыг хүсч, хамгийн бага хэсгийг нь л өөрчилж өгөхийг хүсч байна.

2 -р зурагт үзүүлсэн шиг хуванцар хавтангийн хэсэг бүр шошготой цагаан толгойтой бөгөөд тус бүр хэсэг нь шошгогүй байдаг. Тэднийг салгасны дараа хаяг шошго байхгүй болно. Энэ асуудлыг шийдэхийн тулд бид нэг төрлийн эд ангиудыг өөр хайрцганд хийж, эсвэл олон хэсгийг цаасан дээр тэмдэглээд нэг хэсэгт нэг төрлийн хэсгийг хийж болно.

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

Хөлийн хурууны материал нь резинээс бусад бүх зүйл хуванцараар хийгдсэн байдаг. Зураг 6 -г үзнэ үү. Урьдчилан хийсэн зүсэлтийн дагуу бид хайчилж болно. Резинэн материалын зөөлөн шинж чанар нь хамгийн сайн бэхэлгээний гүйцэтгэлийг өгдөг. Энэ нь ялангуяа ууланд авирах үед үнэн юм. Дараагийн сэдвүүдэд бид резин хуруутай, хуруугүй өөр өөр налуу өнцгөөр авирах чадварыг туршиж үзэх боломжтой. Гулсалт байхгүй үед үүнийг статик үрэлт гэж нэрлэдэг. Бариулаа алдсаны дараа энэ нь кинетик үрэлт болдог. Үрэлтийн коэффициент нь ашигласан материалаас хамаардаг тул резинэн хуруутай байдаг. Туршилтыг хэрхэн зохион бүтээх, гараа өргөх, дуу хоолойгоо илэрхийлэх.

Сүүлийн зурагт "ECU", "Power train", Strandbeest загварын явах эд ангиудыг оруулсан болно.

Алхам 2: Механик угсралтын явцад анхаарах ёстой цэгүүд

Механик угсралтын явцад анхаарах ёстой цэгүүд
Механик угсралтын явцад анхаарах ёстой цэгүүд
Механик угсралтын явцад анхаарах ёстой цэгүүд
Механик угсралтын явцад анхаарах ёстой цэгүүд
Механик угсралтын явцад анхаарах ёстой цэгүүд
Механик угсралтын явцад анхаарах ёстой цэгүүд

Mini-Strandbeest нь нэлээд сайн хэрэглэгчийн гарын авлагатай. Гарын авлагыг дагаж, угсралтыг дуусгах нь хялбар ажил байх ёстой. Би эдгээр агуулгыг алгасаад бидний анхаарах ёстой хэдэн сонирхолтой зүйлийг тодруулах болно.

1-р зурагт резинэн хуруу барьсан үүрний нэг тал нь 90 градусын өнцөг, нөгөө тал нь 45 градусын налуутай бөгөөд үүнийг албан ёсоор хонгор гэж нэрлэдэг. Ийм налуу нь резинэн хурууг хуванцар хөлөнд багтахаар чиглүүлдэг. Хөлийн хурууг хажуу талаас нь суулгаж, 2 -р зургийг үзээд нөгөө талыг нь туршиж үзээрэй. Ялгаа нь маш мэдэгдэхүйц юм. Зураг 3 -ийн баруун тал нь манай Stranbeest -ийн бүлүүр юм. Энэ нь хөдөлгүүр, машины хөдөлгүүр, мотоциклийн хөдөлгүүр дэх бүлүүртэй маш төстэй бөгөөд бүгд ижил бүтэцтэй. Strandbeest -ийн хувьд бүлүүр эргэхэд хөл нь хөдөлдөг. Хөдөлгүүрийн хувьд энэ нь бүлүүрийг эргүүлэх поршений хөдөлгөөн юм. Тойрог хэлбэрээр 120 градусаар тусгаарлах нь гурван фазын мотор эсвэл генератор руу хөтөлдөг бөгөөд цахилгаан хүч нь 120 градусын зайтай байдаг. Зүүн ба баруун хажуугийн механик эд ангиудыг угсарсны дараа бид Strandbeest -д нэмж оруулсан хэсгүүдийнхээ ажлыг эхлүүлж байна. Зураг 6 бол 3 хэмжээст хэвлэсэн хөдөлгүүрийн хавчаарыг ашиглан моторыг 3 хэмжээст хэвлэсэн явах эд анги руу бэхлэх алхам юм. Энэ алхамд моторын байрлалыг тохируулахаас өмнө боолтыг чангалж болохгүй бөгөөд ингэснээр явах эд ангийн хажуугийн гадаргуу нь хөдөлгүүрийн гадаргуутай ижил байх болно. Зэрэгцээ болгосны дараа бид бүх боолтыг чангалж болно. 7 -р зураг руу шилжиж, бид хөдөлгүүрийн гаралтыг бүлүүрт холбосон фланцын холболтыг суурилуулахаар ажиллаж байна. Хөдөлгүүрийн талыг бүлүүрийн хажуугийн холболтоос илүү суулгахад илүү хэцүү байдаг. Тиймээс бид эхлээд хөдөлгүүрийн хажуугийн фланцыг холбоно. Зураг 9 -д үзүүлсэн шиг хоёр моторын фланцын холболтыг суурилуулсны дараа бид явах эд анги болон зүүн/баруун алхах бүтцийг холбохын тулд 2 мм диаметртэй хоёр ширхэг карбон саваа ашигладаг. Энэ нь 10 -р зурагт болж байна. Нийтдээ эдгээр аж ахуйн нэгжүүдийг холбохын тулд бид 3 ширхэг нүүрстөрөгчийн саваа ашигладаг. Гэхдээ энэ алхам дээр бид эдгээр хоёрыг л холбодог, учир нь бид бүлүүрийг эргүүлж, фланц ба бүлүүр хоорондын холболтыг тааруулах хэрэгтэй. Хэрэв 3 ширхэг нүүрстөрөгчийн саваа байрлуулсан бол харьцангуй байрлалыг тохируулж, холбоход илүү хэцүү болно. Эцэст нь, бид эцсийн угсарсан механик системтэй байна, Зураг 11 -т. Дараагийн алхам бол электрон төхөөрөмж дээр ажиллацгаая.

Алхам 3: Цахилгаан холболт

Цахилгаан холболт
Цахилгаан холболт
Цахилгаан холболт
Цахилгаан холболт
Цахилгаан холболт
Цахилгаан холболт

Бүх электрон системд цахилгаан хангамж хэрэгтэй. Бид 1 эсийн батерейг тохиромжтой газар, жишээлбэл, Зураг 1-ийн хэлхээний самбар дор байрлуулж болно. Цахилгаан хангамжийн туйлшрал нь маш чухал тул үүнийг тусгайлан хэлэлцэх ёстой. Зураг 2 нь батерейны холболтыг онцлон харуулав. Хянагчийн самбар дээр туйлшралыг "+" ба "GND" гэж тэмдэглэв. Батерейны шүүс дуусах үед USB кабелиар зайгаа цэнэглэнэ. Зураг 4 -ийг үзнэ үү. Батерей дахин дүүрэх үед "цэнэглэж байна" гэсэн LED нь автоматаар унтрах болно. Сүүлийн алхам бол хөдөлгүүрийн гаралтыг хянагчийн самбар дээрх мотор холбогчтой холбох явдал юм. 3 -р зурагт 16 дугаараар тэмдэглэгдсэн 3 мотор холбогч байдаг. Зураг 5 -т зүүн хөдөлгүүрийг PWM12 гэж тэмдэглэсэн хамгийн зүүн талын холбогчтой, баруун моторыг дунд холбогчтой холбосон болно. Одоогийн байдлаар танкийг (дифференциал жолоодлоготой тээврийн хэрэгсэл) зүүн тийш эргүүлэх нь PWM12 мотор портод холбогдсон моторын оролтын хүчийг бууруулахад хатуу кодлогдсон байдаг. Тиймээс PWM12 порт руу холбогдсон мотор зүүн хөлийг жолоодох ёстой. Би дараа нь бүх холих функцийг хэрэглэгчийн тохиргоотой болгож хөрвүүлэх болно. Мотор холбогчийн сонголтыг солих эсвэл мотор холбогчийн чиглэлийг буцаах замаар бид урагшлахыг тушаахад буруу эргэх, буруу эргэх гэх мэт Strandbeest арагшаа хөдөлж буй асуудлыг шийдэж чадна, хэрэв оролтын утас байвал DC мотор эргэх чиглэлээ өөрчилнө гэдгийг санаарай. урвуу дарааллаар хяналтын хүчинд холбогдсон.

Алхам 4: Апп -ийн тохиргоо ба ажиллагаа

Аппликешны тохиргоо ба ажиллагаа
Аппликешны тохиргоо ба ажиллагаа
Аппликешны тохиргоо ба ажиллагаа
Аппликешны тохиргоо ба ажиллагаа
Аппликешны тохиргоо ба ажиллагаа
Аппликешны тохиргоо ба ажиллагаа
Аппликешны тохиргоо ба ажиллагаа
Аппликешны тохиргоо ба ажиллагаа

Бид эхлээд Google Play Store -оос андройд програм татаж авна уу. Энэхүү аппликейшн нь бусад олон функцуудыг багтаасан бөгөөд үүнийг бид зааж өгөх боломжгүй бөгөөд бид зөвхөн Strandbeest -тэй шууд холбоотой сэдвүүдэд анхаарлаа хандуулах болно.

Тоног төхөөрөмжийн Bluetooth хянагчийг асаана уу, энэ нь нээлт хийх төхөөрөмжийн жагсаалтад гарч ирнэ. Удаан дарах нь биднийг дараа нь "зааварчилгаа" авахын тулд агаараар татаж авах боломж руу хөтлөх болно. Бид товшоод хяналтыг эхлүүлэхийн өмнө эхлээд баруун дээд буланд байгаа "Тохиргоо" дээр дарж зарим тохиргоог хийцгээе. 2 -р зураг дээр… дүрс тэмдгийн доор нуугдсан байна. Зураг 3 -т олон тохиргооны ангиллыг харуулав. Апп -д тохируулсан эдгээр тохиргоог дараах байдлаар гурван аргаар хэрэгжүүлдэг: 1) зарим тохиргоо нь зөвхөн жолоодлого, тохируулагчийн тушаалаас хөдөлгүүр бүрийн хүчийг хянах командыг авах арифметик гэх мэт Апп -ийн ажиллагаанд нөлөөлдөг. Тэд Апп -д амьдардаг. Дараагийн зарим зааварчилгаанд бид тэдгээрийг Python/Java програмуудаар хэрхэн орлуулахыг харуулах болно. 2) агаар дахь хяналтын протоколын нэг хэсэг болох тоног төхөөрөмжид зарим тохиргоог илгээдэг, жишээлбэл шууд удирдлага (серво нь тушаасан өнцгийг яг эргүүлнэ), утсаар удирддаг (бие даасан хянагчийн функц модуль нь servo -ийг ажиллуулдаг). Хэрэглэгчийн тушаал ба одоогийн хандлагын дагуу суваг) 3) зарим тохиргоог тоног төхөөрөмжийн хянагчийн дэгдэмхий бус санах ой руу илгээх болно. Тиймээс тоног төхөөрөмж нь тохируулалгүйгээр асаах бүртээ эдгээр тохиргоог дагаж мөрдөх болно. Жишээ нь төхөөрөмжийн bluetooth өргөн нэвтрүүлгийн нэр байх болно. Энэ төрлийн тохиргоог хүчин төгөлдөр болгохын тулд цахилгаан эргэлт шаардлагатай. Бидний шумбаж буй эхний ангилал бол Зураг 4 дээрх "Ерөнхий тохиргоо" юм. 5 -р зураг дээрх "Аппликешны хяналтын функц" нь энэ програм ямар үүрэг гүйцэтгэхийг тодорхойлдог бөгөөд энэ нь шууд Bluetooth холболтоор тоног төхөөрөмжийн төхөөрөмжийн хянагч юм; телепрезентацийг хянах дотоод сүлжээ/интернет дээрх гүүр; гэх мэт. Дараа нь Зураг 6 дээрх "HW type" хуудас нь дифференциал жолоодлоготой машинтай ажиллаж байгаа аппликешны талаар мэдээлдэг тул "танк" горимыг сонгох шаардлагатай. Бидэнд ХБХ -ийн нийт 6 гаралт байдаг. Strandbeest -ийн хувьд бид 1 -ээс 4 -р сувгийг Зураг 7 -ийн дагуу тохируулах хэрэгтэй. ХОУХ -ны суваг бүр дараах горимуудын аль нэгээр ажилладаг: 1) хэвийн servo: RC servo нь 1 -ээс 2ms PWM дохиогоор удирддаг 2) servo reverse: хянагч нь хэрэглэгчийн хяналтыг гаралтын хувьд буцаана 3) DC моторын ажлын мөчлөг: DC мотор эсвэл зарим цахилгаан төхөөрөмж, ажлын мөчлөгийн горимд ажиллах боломжтой, 0% унтраасан, 100% үргэлж асаалттай байдаг. 4) DC моторын ажлын мөчлөгийг буцаах: дахин хянагч нь гаралтынхаа хэрэглэгчийн хяналтыг буцаана. Бид DC мотор ашиглаж, хөдөлгүүрийн эргэлтийн чиглэлийг тоног төхөөрөмжийн утаснуудын дарааллаар анхаарч үздэг тул 1 -р суваг дахь "DC моторын ажлын мөчлөг" -ийг сонгох болно. 4, 8 -р зургийг үзнэ үү. Хоёр чиглэлтэй хяналтыг идэвхжүүлэхийн тулд бид ХОУХ-ны 2 сувгийг 1 H гүүр болгон нэгтгэх хэрэгтэй. Энэ алхамыг 9 -р зурагт үзүүлэв. "ХОУХШ-ийн 2 суваг 1 Н-гүүр хүртэл" горимд 1, 3, 5-р сувгийг холбогдох сувгийг хянахад ашигладаг. Энэ нь тохируулагчийн тохируулга, джойстикийг дээш доош нь чиглүүлэх үндсэн суваг 2-оос 3-р суваг руу шилжүүлэх шаардлагатай байгааг танилцуулж байна. Үүнийг 10-р зурагт үзүүлэв. 11 -р зурагт үзүүлсэн шиг суваг бүр нэг дурын оролтын эх үүсвэр авахаар тохируулагдсан болно.

Bingo, одоо бид шаардлагатай хамгийн бага тохиргоог хийж дууссан бөгөөд бид харагдахуйц bluetooth төхөөрөмжийг харуулсан хуудас руу буцаж холбогдож болно. 12 -р зурагт джойстик тоглож үзээрэй, бид энэ Strandbeest -ийг хөгжилтэй өнгөрөөх болно. Налуу руу авирч үзээрэй, материалын төрлүүдийн хоорондох үрэлтийн анализыг санаж, "RPY (deg)" гэсэн мөрөнд харуулсан нислэгийн хянагчийн тооцоолсон хандлагыг уншина уу. онгоцны гироскоп ба акселерометрээр тооцоолсон; сүүлчийн оруулга нь хазайлтаар нөхөн олгосон луужингийн гаралт юм.

Ирээдүйн ажил: Дараах зааварчилгаанд бид програмчлалын интерфэйсийг аажмаар хамарч, дуртай хэлээ Java эсвэл Python -ийг сонгож, Strandbeest -тэй харилцах бөгөөд гар утасны дэлгэцээс хамгийн хэцүү байдлыг уншихаа болино. Бид RaspberryPi төрлийн линукс компьютер дээр програмчлалын илүү нарийвчилсан сэдвүүдийг програмчилж эхлэх болно, сүүлийн зургийг үзнэ үү. 3D хэвлэх механик эд ангиудыг https://xiapeiqing.github.io/doc/kits/strandbeest/roboticKits_strandbeest/, SDK болон жишээ кодын хувьд https://github.com/xiapeiqing/m2robots.git хаягаар орж шалгаарай.. Java эсвэл Python биш бол таны хүссэн програмчлалын хэл юу болохыг надад хэлээрэй, би SDK -ийн шинэ хувилбарыг нэмж болно.

Хакердахдаа хөгжилтэй байж дараах зааварчилгааг хүлээж байгаарай.

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