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

EMG -тэй робот гар хяналт: 7 алхам
EMG -тэй робот гар хяналт: 7 алхам

Видео: EMG -тэй робот гар хяналт: 7 алхам

Видео: EMG -тэй робот гар хяналт: 7 алхам
Видео: Война на денежные средства 2024, Долдугаар сарын
Anonim
Image
Image
Дохио авах
Дохио авах

Энэ төсөл нь булчингийн үйл ажиллагааг хэмжих, боловсруулахад ашигладаг 3 opensource uECG төхөөрөмж (робот, EMG) ашиглан робот гар (opensource hand inMoov ашиглан) хяналтыг харуулж байна. Манай баг гар, хяналттай урт түүхтэй бөгөөд энэ бол зөв чиглэлд хийсэн сайн алхам юм:)

Хангамж

3x uECG төхөөрөмж1x Arduino (би Nano -г ашиглаж байгаа боловч бусад ихэнх нь ажиллах болно) 1x nRF24 модуль (ямар ч ерөнхий зүйл хийх боломжтой) 1x PCA9685 эсвэл үүнтэй төстэй servo драйвер1x inMoov hand5x том servo (нийцтэй төрлүүдийн inMoov зааврыг үзнэ үү) 1x 5V цахилгаан хангамж 5А ба түүнээс дээш гүйдэл

Алхам 1: Дохио олж авах

Хяналт нь EMG дээр суурилдаг - булчингийн цахилгаан үйл ажиллагаа. EMG дохиог гурван uECG төхөөрөмжөөр авдаг (энэ нь ЭКГ -ийн дэлгэц байх ёстой гэдгийг би мэднэ, гэхдээ энэ нь ерөнхий ADC дээр суурилсан тул ямар ч био дохиог хэмжиж чаддаг, үүнд EMG орно). EMG-ийг боловсруулахын тулд uECG нь 32 бинт спектрийн өгөгдөл дамжуулдаг тусгай горимтой бөгөөд "булчингийн цонх" дундаж (75-440 Гц-ийн хоорондох спектрийн дундаж эрчим). Спектрийн зургууд цаг хугацааны явцад өөрчлөгддөг цэнхэр ногоон өнгийн хэв маяг шиг харагддаг. Энд давтамж нь босоо тэнхлэгт байна (3 график тус бүр дээр, доод давтамж бага, дээд хэсэгт - 0 -ээс 488 Гц хүртэл ~ 15 Гц алхамтай), цаг нь хэвтээ байна (зүүн талын хуучин өгөгдөл энд байна) Дэлгэц дээр ойролцоогоор 10 секунд байна). Эрчим хүчийг өнгөөр кодлодог: цэнхэр - нам, ногоон - дунд, шар - өндөр, улаан - бүр ч өндөр.

Алхам 2: Хялбаршуулсан дохио

Хялбаршуулсан дохио
Хялбаршуулсан дохио

Дохио зангаа найдвартай танихын тулд эдгээр спектрийн дүрсийг компьютерт зохих ёсоор боловсруулах шаардлагатай. Гэхдээ робот гар хурууг хялбархан идэвхжүүлэхийн тулд 3 суваг дээр дундаж утгыг ашиглахад л хангалттай - uECG нь үүнийг тодорхой пакет байтаар өгдөг бөгөөд ингэснээр Arduino -ийн ноорог үүнийг задлах боломжтой болно. Эдгээр утгууд нь илүү энгийн харагдаж байна - Би Arduino -ийн цуваа плоттерын түүхий үнэ цэнийн хүснэгтийг хавсаргав. Улаан, ногоон, цэнхэр диаграмууд нь эрхий хуруу, цагираг, дунд хуруугаа зохих ёсоор нь шахаж байх үед булчингийн янз бүрийн бүлгүүдийн 3 uECG төхөөрөмжүүдийн түүхий утга юм. Бидний нүдний хувьд эдгээр тохиолдлууд өөр өөр байдаг, гэхдээ бид эдгээр утгыг "хурууны оноо" болгон хувиргах хэрэгтэй бөгөөд ингэснээр програм нь утгыг гар серверт дамжуулж чаддаг. Асуудал нь булчингийн бүлгүүдийн дохио "холилдсон" байдаг: 1, 3 -р тохиолдолд цэнхэр дохионы эрчим ойролцоогоор ижил байдаг боловч улаан, ногоон нь өөр өөр байдаг. 2 ба 3 дахь тохиолдолд ногоон дохио ижил боловч цэнхэр, улаан нь өөр өөр байдаг.

Алхам 3: Дохио боловсруулах

Дохио боловсруулалт
Дохио боловсруулалт

Эдгээр дохиог "холих" зорилгоор би харьцангуй энгийн томъёог ашигласан.

S0 = V0^2 / ((V1 * a0 +b0) (V2 * c0 +d0))), энд S0 - 0, V0, V1, V2 сувгийн оноо - 0, 1, 2, а сувгуудын түүхий утга b, c, d - миний гараар тохируулсан коэффициентүүд (a ба c нь 0.3 -аас 2.0 хүртэл, b ба d нь 15 ба 20 байсан тул та ямар ч байсан мэдрэгчийнхээ байршлыг тохируулахын тулд тэдгээрийг өөрчлөх хэрэгтэй болно). Үүнтэй ижил оноог 1, 2 -р суваг дээр тооцоолсон болно. Үүний дараа графикууд бараг төгс тусгаарлагдсан байв. Үүнтэй ижил дохио зангаагаар (энэ удаа хуруу, дунд, дараа нь эрхий хуруугаараа) дохио нь тодорхой бөгөөд босгыг харьцуулж үзэхэд servo хөдөлгөөнд хялбархан орчуулж болно.

Алхам 4: Схем

Схем
Схем

Схем нь маш энгийн, танд зөвхөн nRF24 модуль, PCA9685 эсвэл үүнтэй төстэй I2C PWM хянагч, 5V өндөр хүчдэлийн хангамж хэрэгтэй бөгөөд энэ нь эдгээр бүх сервог нэгэн зэрэг шилжүүлэхэд хангалттай байх болно (тиймээс тогтвортой ажиллахын тулд дор хаяж 5А нэрлэсэн хүч шаардагдана).

Холболтын жагсаалт: nRF24 зүү 1 (GND) - Arduino -ийн GNDnRF24 зүү 2 (Vcc) - Arduino -ийн 3.3vnRF24 зүү 3 (Чипийг идэвхжүүлэх) - Arduino D9nRF24 зүү 4 (SPI: CS) - Arduino -ийн D8nRF24 зүү 5 (SPI: SCK) - Arduino -ийн D13nRF24 зүү 6 (SPI: MOSI) - Arduino -ийн D11nRF24 зүү 7 (SPI: MISO) - Arduino -ийн D12PCA9685 SDA - Arduino -ийн A4PCA9685 SCL - Arduino -ийн A5PCA9685 Vcc - Arduino -ийн 5vPVPCA9685 GND -A55 GND5A55 -GD5A -G95A PCA сувгууд 0-4, миний эрхий хуруун дээр - 0 суваг, долоовор хуруу - 1 суваг гэх мэт.

Алхам 5: EMG мэдрэгчийг байрлуулах

EMG мэдрэгчийг байрлуулах
EMG мэдрэгчийг байрлуулах
EMG мэдрэгчийг байрлуулах
EMG мэдрэгчийг байрлуулах

Боломжит уншилт авахын тулд булчингийн үйл ажиллагааг бүртгэдэг uECG төхөөрөмжийг зөв газар байрлуулах нь чухал юм. Энд олон янзын сонголт хийх боломжтой боловч тус бүр нь дохио боловсруулах өөр өөр аргыг шаарддаг тул миний кодын хувьд миний зургуудтай төстэй байрлалыг ашиглах нь илүү тохиромжтой байдаг. Тиймээс нэг мэдрэгчийг тэнд байрлуулж, бүгдийг нь тохойнд ойрхон байрлуулна (булчингууд ихэнх хэсэгт нь байдаг, гэхдээ та яг хаана байрладаг болохыг шалгахыг хүсч байна - хувь хүний ялгаа их байна)

Алхам 6: Код

Үндсэн програмыг ажиллуулахын өмнө та өөрийн тусгай uECG төхөөрөмжүүдийн нэгжийн ID -г олж мэдэх хэрэгтэй (үүнийг 101 -р мөрийг тайлах, төхөөрөмжийг нэг нэгээр нь асаах замаар хийж болно, та бусад зүйлийн дотор одоогийн төхөөрөмжийн ID -г харах болно). unit_ids массив (мөр 37). Үүнээс гадна та томъёоны коэффициент (129-131 шугам) -аар тоглож, роботын гарт холбохоос өмнө цуваа плоттер дээр хэрхэн харагдаж байгааг шалгахыг хүсч байна.

Алхам 7: Үр дүн

2 цаг орчим үргэлжилсэн зарим туршилтуудын ачаар би нэлээд найдвартай ажиллагаатай болсон (видео нь ердийн тохиолдлыг харуулсан болно). Энэ нь төгс бус ажилладаг бөгөөд ийм боловсруулалтаар зөвхөн нээлттэй, хаалттай хурууг таних боломжтой (мөн 5 -уулаа ч биш, зөвхөн 3 булчингийн бүлгийг илрүүлдэг: эрхий хуруу, индекс ба дунд хэсэг, бөгж, жижиг хуруунууд хамтдаа). Гэхдээ дохиог шинжилдэг "AI" энд 3 мөр код авч суваг тус бүрээс нэг утгыг ашигладаг. Компьютер эсвэл ухаалаг гар утсан дээрх 32 бинт спектрийн зургийг шинжлэх замаар илүү их зүйлийг хийх боломжтой гэдэгт би итгэдэг. Түүнчлэн, энэ хувилбарт зөвхөн 3 uECG төхөөрөмж (EMG суваг) ашигладаг. Илүү олон сувагтай бол үнэхээр нарийн төвөгтэй хэв маягийг таних боломжтой байх ёстой - гэхдээ энэ бол төслийн гол зорилго бөгөөд сонирхсон бүх хүмүүст эхлэх цэгийг өгөх болно:) Гар хяналт нь ийм системийн цорын ганц програм биш юм.

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