
Sadržaj:
2025 Autor: John Day | [email protected]. Zadnja promjena: 2025-01-23 14:47

U ovom uputstvu ću vam objasniti kako smo dopustili Nao robotu da oponaša naše kretnje pomoću kinect senzora. Stvarni cilj projekta je obrazovna svrha: učitelj ima sposobnost snimanja određenih setova pokreta (npr. Ples) i može koristiti te snimke kako bi djeca u učionici imitirala robota. Prolazeći kroz cijeli ovaj korak po korak, trebali biste moći u potpunosti ponovno stvoriti ovaj projekt.
Ovo je projekt povezan sa školom (NMCT @ Howest, Kortrijk).
Korak 1: Osnovno znanje
Za ponovno stvaranje ovog projekta morate posjedovati osnovno znanje:
- Osnovno znanje o pythonu
- Osnovno znanje C# (WPF)
- Osnovno znanje o trigonometriji
- Znanje o tome kako postaviti MQTT na pi od maline
Korak 2: Nabava potrebnih materijala
Potrebni materijali za ovaj projekt:
- Malina Pi
- Kinect senzor v1.8 (Xbox 360)
- Nao robot ili virutalni robot (Choregraph)
Korak 3: Kako to radi



Kinect senzor spojen je na računalo koje pokreće aplikaciju WPF. WPF aplikacija šalje podatke u Python aplikaciju (robot) pomoću MQTT -a. Lokalne datoteke spremaju se ako korisnik tako odluči.
Detaljno objašnjenje:
Prije nego počnemo snimati, korisnik mora unijeti ip-adresu posrednika MQTT. Osim toga, potrebna nam je i tema o kojoj želimo objaviti podatke. Nakon pritiska na start, aplikacija će provjeriti može li se uspostaviti veza s posrednikom i dat će nam povratne informacije. Nije moguće provjeriti postoji li tema, pa ste za nju u potpunosti odgovorni. Kad su oba ulaza u redu, aplikacija će početi slati podatke (koordinate x, y & z iz svakog zgloba) sa kostura koji se prati na temu na posredniku MQTT.
Budući da je robot povezan s istim posrednikom MQTT i pretplaćen na istu temu (to se također mora unijeti u aplikaciju python), aplikacija python sada će primati podatke iz aplikacije WPF. Koristeći trigonometriju i vlastite algoritme, koordinate pretvaramo u kutove i radijane, koje koristimo za rotiranje motora unutar robota u stvarnom vremenu.
Kada korisnik završi snimanje, on pritisne gumb za zaustavljanje. Sada korisnik dobiva skočni prozor s pitanjem želi li spremiti snimku. Kad korisnik pritisne gumb za otkazivanje, sve se resetira (podaci se gube) i može se započeti novo snimanje. Ako korisnik želi spremiti snimku, trebao bi unijeti naslov i pritisnuti 'spremi'. Kada pritisnete 'spremi', svi se prikupljeni podaci upisuju u lokalnu datoteku koristeći unos naslova kao naziv datoteke. Datoteka se također dodaje u prikaz liste s desne strane zaslona. Na ovaj način, nakon dvostrukog klika na novi unos u prikazu popisa, datoteka se čita i šalje MQTT posredniku. Posljedično, robot će reproducirati snimku.
Korak 4: Postavljanje brokera MQTT

Za komunikaciju između kinecta (WPF projekt) i robota (Python projekt) koristili smo MQTT. MQTT se sastoji od posrednika (računalo na Linuxu na kojem je pokrenut softver mqtt (npr. Mosquitto)) i teme na koju se klijenti mogu pretplatiti (primaju poruku s teme) i objavljivati (objavljuju poruku na tu temu).
Za postavljanje posrednika MQTT samo preuzmite cijelu ovu sliku jessie. Ovo je čista instalacija za vas Raspberry Pi s MQTT posrednikom na njoj. Tema je "/Sandro".
Korak 5: Instalirajte Kinect SDK V1.8
Da bi kinect radio na vašem računalu, morate instalirati Microsoft Kinect SDK.
Možete ga preuzeti ovdje:
www.microsoft.com/en-us/download/details.a…
Korak 6: Instaliranje Pythona V2.7
Robot radi s okvirom NaoQi, ovaj okvir je dostupan samo za python 2.7 (NE 3.x), pa provjerite koju ste verziju pythona instalirali.
Python 2.7 možete preuzeti ovdje:
www.python.org/downloads/release/python-27…
Korak 7: Kodiranje



Github:
Bilješke:
- Kodiranje pomoću kinecta: prvo potražite povezani kinect. Nakon što smo ovo spremili unutar svojstva, omogućili smo tok boja i skeleta na kinektu. Colorstream je video zapis uživo, dok skeletonstream znači da će biti prikazan kostur osobe ispred kamere. Colorstream zapravo nije nužan za rad ovog projekta, samo smo ga omogućili jer bitmapiranje skeletonstream -a u colorstream izgleda glatko!
- U stvarnosti je to zaista skeletni tok koji obavlja posao. Omogućavanje skeletonstream -a znači da se prati kostur osobe. Iz ovog kostura primate sve vrste informacija, npr. orijentacije kostiju, zajedničke informacije, … Ključ našeg projekta bile su zajedničke informacije. Koristeći x-y & z koordinate svakog od zglobova iz praćenog kostura, znali smo da možemo pokrenuti robota. Dakle, svakih 0,8 sekundi (pomoću mjerača vremena) objavljujemo koordinate x, y & z svakog od zglobova posredniku mqtt.
- Budući da projekt python ima pretplatu na posredniku mqtt, sada možemo pristupiti podacima unutar ovog projekta. Unutar svakog zgloba robota nalaze se dva motora. Tim se motorima ne može jednostavno upravljati izravno pomoću koordinata x, y & z. Dakle, pomoću trigonometrije i malo zdravog razuma pretvorili smo koordinate x, y & z zglobova u kutove razumljive robotima.
Dakle, u osnovi svakih 0,8 sekundi WPF projekt objavljuje x, y & z koordinate svakog od spojeva. Slijedom toga, unutar python projekta ti se koordijanti pretvaraju u kutove, koji se zatim šalju odgovarajućim motorima robota.
Preporučeni:
Uradi sam -- Kako napraviti Spider robota kojim se može upravljati pomoću pametnog telefona pomoću Arduino Uno: 6 koraka

Uradi sam || Kako napraviti Spider robota koji se može kontrolirati pomoću pametnog telefona pomoću Arduino Uno: Dok izrađujete Spider robota, možete naučiti toliko stvari o robotici. Kao što je izrada robota zabavna, ali i izazovna. U ovom videu pokazat ćemo vam kako napraviti Spider robota, kojim možemo upravljati pomoću našeg pametnog telefona (Androi
Moslty 3D ispisana robotska ruka koja oponaša lutkarski kontroler: 11 koraka (sa slikama)

Moslty 3D-ispisana robotska ruka koja oponaša lutkarski kontroler: Student sam strojarstva iz Indije i ovo je moj stupanjski projekt. Ovaj je projekt usmjeren na razvoj jeftine robotske ruke koja je uglavnom 3D ispisana i ima 5 DOF-ova s 2 prsta hvataljka. Robotskom rukom upravlja se
Upravljajte svjetlima kuće pomoću Google pomoćnika pomoću Arduina: 7 koraka

Upravljajte svjetlima kuće pomoću Google pomoćnika pomoću Arduina: (Ažurirano 22. kolovoza 2020 .: Ova instrukcija stara je 2 godine i oslanja se na neke aplikacije trećih strana. Svaka promjena s njihove strane može učiniti ovaj projekt neradnim. Može, ali i ne mora sada radi, ali možete ga pratiti kao referencu i mijenjati prema
Jednostavno napajanje pomoću klupe pomoću starog punjača za prijenosno računalo: 5 koraka

Jednostavno napajanje pomoću klupe pomoću starog punjača za prijenosno računalo: Ovo je napajanje za moju klupu, vrlo je jednostavna konstrukcija sa samo 4 žice za dodavanje / povezivanje. Glavna snaga dolazi iz starog punjača za prijenosno računalo koji može isporučiti 19v i 3,4A max. Vrijedi spomenuti da je punjač za prijenosno računalo 2 -žični iz
Snimite i pošaljite slike pomoću ESP32-Cam pomoću ESP8266 WeMos D1 R1 Wifi procesora s Uno: 7 koraka

Snimite i pošaljite slike pomoću ESP32-Cam pomoću ESP8266 WeMos D1 R1 Wifi procesora s Uno: Snimite sliku pomoću ESP32-Cam (OV2640) pomoću ESP8266 WeMos D1 R1 WiFI procesora s Uno-om i pošaljite ga na e-poštu, spremite na Google disk i pošaljite na Whatsapp koristi Twilio.Zahtjevi: ESP8266 WeMos D1 R1 WiFI procesor s Uno (https: // protosupplies