![Robotsko ročno upravljanje z EMG: 7 korakov Robotsko ročno upravljanje z EMG: 7 korakov](https://i.howwhatproduce.com/images/002/image-4591-15-j.webp)
Kazalo:
2025 Avtor: John Day | [email protected]. Nazadnje spremenjeno: 2025-01-23 15:08
![Image Image](https://i.howwhatproduce.com/images/002/image-4591-17-j.webp)
![](https://i.ytimg.com/vi/T8uoPuy4ol4/hqdefault.jpg)
![Pridobitev signala Pridobitev signala](https://i.howwhatproduce.com/images/002/image-4591-18-j.webp)
Ta projekt prikazuje nadzor nad robotsko roko (z uporabo odprte roke v Moovu) s tremi napravami UECG z odprtim virom, ki se uporabljajo za merjenje in obdelavo mišične aktivnosti (elektromiogram, EMG). Naša ekipa ima dolgo zgodbo z rokami in njihovim nadzorom, kar je dober korak v pravo smer:)
Zaloge
3x naprave UECG 1x Arduino (uporabljam Nano, vendar bi večina drugih delovala) 1x modul nRF24 (kateri koli generični), 1x PCA9685 ali podoben gonilnik servo 1x ročni inMoov 5x veliki servomotorji (glejte navodila inMoov za združljive vrste) 1x 5V napajalnik 5A ali več toka
Korak: Pridobitev signala
Nadzor temelji na EMG - električni aktivnosti mišic. EMG signal pridobivajo tri naprave za UECG (vem, naj bi bil to EKG monitor, a ker temelji na generičnem ADC, lahko meri vse biosignale - tudi EMG). Za obdelavo EMG ima uECG poseben način, v katerem pošilja podatke o spektru 32-bin in povprečje "mišičnega okna" (povprečna spektralna intenzivnost med 75 in 440 Hz). Slike spektra so videti kot modro-zeleni vzorci, ki se sčasoma spreminjajo. Tukaj je frekvenca na navpični osi (na vsakem od treh ploskev, nizka frekvenca na dnu, visoka na vrhu - od 0 do 488 Hz s koraki ~ 15 Hz), čas je na vodoravni strani (stari podatki na levi strani tukaj na splošno je na zaslonu približno 10 sekund). Intenzivnost je kodirana z barvo: modra - nizka, zelena - srednja, rumena - visoka, rdeča - še višja.
2. korak: poenostavljen signal
![Poenostavljen signal Poenostavljen signal](https://i.howwhatproduce.com/images/002/image-4591-19-j.webp)
Za zanesljivo prepoznavanje kretenj je potrebna ustrezna računalniška obdelava teh spektralnih slik. Toda za preprosto aktiviranje robotskih ročnih prstov je dovolj, da uporabite povprečno vrednost na treh kanalih - uECG jo priročno zagotovi pri določenih paketnih bajtih, tako da jo lahko Arduino skica razčleni. Te vrednosti so videti veliko enostavnejše - priložil sem grafikon surovih vrednosti iz Arduinovega serijskega ploterja. Rdeči, zeleni in modri grafikoni so surove vrednosti iz 3 aparatov UECG na različnih mišičnih skupinah, ko ustrezno stisnem palec, prstan in srednji prst. Za naše oko so ti primeri očitno drugačni, vendar moramo te vrednosti nekako spremeniti v "oceno prsta", da lahko program odda vrednosti na ročne servomotorje. Težava je v tem, da so signali mišičnih skupin "mešani": v prvem in tretjem primeru je intenzivnost modrega signala približno enaka - vendar sta rdeča in zelena različna. V 2. in 3. primeru sta zelena signala enaka, modra in rdeča pa različna.
3. korak: Obdelava signala
![Obdelava signala Obdelava signala](https://i.howwhatproduce.com/images/002/image-4591-20-j.webp)
Za "odstranitev" teh signalov sem uporabil relativno preprosto formulo:
S0 = V0^2 / ((V1 * a0 +b0) (V2 * c0 +d0)), kjer je S0 - rezultat za kanal 0, V0, V1, V2 - surove vrednosti za kanale 0, 1, 2 in a, b, c, d - koeficiente, ki sem jih nastavil ročno (a in c sta bila od 0,3 do 2,0, b in d sta bila 15 in 20, vseeno bi jih morali spremeniti, da se vseeno prilagodijo vaši posebni postavitvi senzorja). Ista ocena je bila izračunana za kanala 1 in 2. Po tem so se grafikoni skoraj popolnoma ločili. Za iste kretnje (tokrat prstan, srednji in nato palec) so signali jasni in jih je mogoče preprosto prevesti v servo gibe samo s primerjavo s pragom
4. korak: Sheme
![Sheme Sheme](https://i.howwhatproduce.com/images/002/image-4591-21-j.webp)
Sheme so precej preproste, potrebujete le modul nRF24, PCA9685 ali podoben krmilnik I2C PWM in napajalnik z visokim ojačevalnikom 5 V, ki bi zadostoval za premikanje vseh teh servomotorjev hkrati (zato za stabilno delovanje potrebuje vsaj 5 A nazivne moči).
Seznam povezav: nRF24 pin 1 (GND) - Arduino's GNDnRF24 pin 2 (Vcc) - Arduino 3.3vnRF24 pin 3 (Chip Enable) - Arduino D9nRF24 pin 4 (SPI: CS) - Arduino's D8nRF24 pin 5 (SPI: SCK) - Arduino's D13nRF24 zatič 6 (SPI: mosi) - Arduino je D11nRF24 zatič 7 (SPI: MISO) - Arduino je D12PCA9685 SDA - Arduino je A4PCA9685 SCL - Arduino je A5PCA9685 Vcc - Arduino je 5vPCA9685 GND - Arduino je GNDPCA9685 V + - visoka amp 5VPCA9685 GND - visoka amp GNDFinger servomotorji: do PCA kanali 0-4, v mojem zapisu palec - kanal 0, kazalec - kanal 1 itd.
5. korak: Namestitev senzorjev EMG
![Namestitev EMG senzorjev Namestitev EMG senzorjev](https://i.howwhatproduce.com/images/002/image-4591-22-j.webp)
![Namestitev EMG senzorjev Namestitev EMG senzorjev](https://i.howwhatproduce.com/images/002/image-4591-23-j.webp)
Da bi dobili razumne odčitke, je pomembno, da naprave UECG, ki beležijo mišično aktivnost, postavite na prava mesta. Čeprav je tukaj možnih veliko različnih možnosti, vsaka zahteva drugačen pristop pri obdelavi signala - zato je pri moji kodi najbolje uporabiti umestitev, podobno mojim fotografijam. Morda je kontra -intuitivno, vendar je signal mišice palca bolje viden na nasprotni strani roke, zato je tam nameščen eden od senzorjev in vsi so postavljeni blizu komolca (mišice imajo večino telesa na tem področju, vendar želite preveriti, kje točno se nahaja vaš - obstaja velika individualna razlika)
6. korak: Koda
Preden zaženete glavni program, boste morali ugotoviti ID -je enot vaših določenih naprav UECG (to storite tako, da razkomentirate vrstico 101 in vklopite eno za drugo, med drugim boste videli ID trenutne naprave) in jih izpolnite unit_ids niz (vrstica 37). Razen tega se želite igrati s koeficienti formule (vrstice 129-131) in preveriti, kako izgleda na serijskem ploterju, preden ga pritrdite na robotsko roko.
7. korak: Rezultati
![](https://i.ytimg.com/vi/T8uoPuy4ol4/hqdefault.jpg)
Z nekaterimi poskusi, ki so trajali približno 2 uri, sem lahko dobil precej zanesljivo delovanje (video prikazuje tipičen primer). Ne obnaša se popolnoma in s to obdelavo lahko prepozna le odprte in zaprte prste (in niti vsakega od petih, zazna le 3 mišične skupine: palec, kazalec in sredino skupaj, prstan in mezinec skupaj). Toda "AI", ki analizira signal, vzame 3 vrstice kode in uporablja eno vrednost iz vsakega kanala. Menim, da bi z analizo 32-plastnih spektralnih slik na osebnem računalniku ali pametnem telefonu lahko naredili veliko več. Ta različica uporablja tudi samo 3 naprave UECG (kanali EMG). Z več kanali bi moralo biti mogoče prepoznati res zapletene vzorce - ampak to je bistvo projekta, da bi vsem, ki jih zanima, zagotovilo izhodišče:) Ročni nadzor zagotovo ni edina aplikacija za tak sistem.
Priporočena:
Pripomoček za dinozavra za Chrome s krmiljenjem z ročno kretnjo / Kako to narediti / #smartcreativity: 14 korakov
![Pripomoček za dinozavra za Chrome s krmiljenjem z ročno kretnjo / Kako to narediti / #smartcreativity: 14 korakov Pripomoček za dinozavra za Chrome s krmiljenjem z ročno kretnjo / Kako to narediti / #smartcreativity: 14 korakov](https://i.howwhatproduce.com/images/001/image-698-14-j.webp)
S pripomočkom za dinozavra Chrome, ki ga nadzira ročna kretnja / Kako to narediti / #smartcreativity: Pozdravljeni prijatelji, v tej vadnici vam bom pokazal zelo ekskluziven projekt. Torej, danes vam bom pokazal, kako z gesto roke upravljate igro Chrome Dinozaver zelo enostavno. Če boste s to tehnologijo uporabljali za nadzor kroma DINO, boste padli
Ročno izdelana zlitina z nizko stopnjo tališča: 5 korakov
![Ročno izdelana zlitina z nizko stopnjo tališča: 5 korakov Ročno izdelana zlitina z nizko stopnjo tališča: 5 korakov](https://i.howwhatproduce.com/images/001/image-2324-5-j.webp)
Ročno izdelana spajkalna zlitina z nizko tališčem: naredite spajkalno zlitino z nizko tališčem za enostavno razpakiranje.Prosimo, obiščite moj blog.MaterialiBizumutna kovina 2,5g63/37 kolofonijsko jedro 2,5 g
Ročno spajkanje Smešni zlikovec iz odpadnega vezja Elektronske komponente: 7 korakov
![Ročno spajkanje Smešni zlikovec iz odpadnega vezja Elektronske komponente: 7 korakov Ročno spajkanje Smešni zlikovec iz odpadnega vezja Elektronske komponente: 7 korakov](https://i.howwhatproduce.com/images/002/image-5319-21-j.webp)
Ročno spajkanje Smešni zlikovec iz odpadnih vezij Elektronske komponente: Odpadna elektronska vezja (stari računalniki ali odpadni gospodinjski aparati) spajkalnik, spajkalna pinceta, klešče, škarje
Časovnik za ročno pranje; Čistejša različica: 6 korakov
![Časovnik za ročno pranje; Čistejša različica: 6 korakov Časovnik za ročno pranje; Čistejša različica: 6 korakov](https://i.howwhatproduce.com/images/002/image-5785-j.webp)
Časovnik za ročno pranje; Čistejša različica: Ne samo korona virusa je treba preprečiti, ampak vse bolezni. Po podatkih centrov za bolezni in preprečevanje je 2,8 milijona okužb in 35000 smrti zaradi bakterij in gliv. To kaže, da si morajo ljudje umiti roke skupaj
Robotsko orodje za ročno rezanje vroče žice: 8 korakov (s slikami)
![Robotsko orodje za ročno rezanje vroče žice: 8 korakov (s slikami) Robotsko orodje za ročno rezanje vroče žice: 8 korakov (s slikami)](https://i.howwhatproduce.com/images/002/image-5578-48-j.webp)
Ročno orodje za rezanje vroče žice: Kot del svojega diplomskega dela na KADK v Københavnu sem raziskal rezanje vroče žice in robotsko izdelavo. Za preizkus te metode izdelave sem izdelal vročo žico za robotsko roko. Žica je morala obsegati 700 mm, vendar material