Obsah:

HexaWalker: 5 krokov
HexaWalker: 5 krokov

Video: HexaWalker: 5 krokov

Video: HexaWalker: 5 krokov
Video: У меня есть 5 минут, чтобы влюбить в себя девушку! | Недосемейка 2024, Júl
Anonim
Image
Image
HexaWalker
HexaWalker

Jednoduché a jednoduché zoskupenie robotov UAB s robotickou hexapodo webovou kamerou s mikrofónom stredného priemeru a vzájomného pôsobenia s el. La idea era hacer un robot amistoso que reconociera ordenes de voz y pueda seguir mediante la cámara una pelota. Algo así como una "mascota" rebotica.

Pohodlné a intuitívne riešenie pre najbežnejšie použitie s otvoreným zdrojovým kódom pre Hexy de ArcBotics.

Odkaz na stránku codigo:

Zásoby

- lipo batéria 7,4 V 2700 mmAh

- x2 servo ovládač adafruit

- x18 mikro serva SG90

- oko webovej kamery pre playstation

-raspberry pi -LM2596 step down -x2 prepínače -RGB LED

- rôzne káble

Krok 1: Krok 1: Impresir Todas Las Piezas De La Estructura

Krok 1: Imprimir Todas Las Piezas De La Estructura
Krok 1: Imprimir Todas Las Piezas De La Estructura

Všetky potrebné údaje.

Aqui podreis encontrar todos los archiveos.stl:

Odkryté kabíny, ktoré majú nasledujúci význam:

materiál: PLA

výplň: 25%

výška vrstvy: 0,12

rýchlosť: 55 mm/s

Krok 2: Montaje De La Estructura

Montaje De La Estructura
Montaje De La Estructura

Odporúčané montážne rady pre 3D autorov:

Guía:

Potrebné sú všetky základné funkcie robota, ako je to možné, sólo aj hlboké využitie.

Poznámka: Žiadne fijéis los tornillos de los servos antes de calibrarlos en el apartado de código.

Krok 3: Montaje De La Electronica

Montaje De La Electronica
Montaje De La Electronica
Montaje De La Electronica
Montaje De La Electronica
Montaje De La Electronica
Montaje De La Electronica

Využite všetky možnosti, ako používať a montovať ďalšie monitory. - batéria LiPo 7,4 V 2700 mm Ah - x2 servo ovládač adafruit

- x18 mikro serva SG90

- oko webovej kamery pre playstation

-malinový koláč

-LM2596 odstúpte

-x2 prepínače

- RGB LED

- rôzne káble

Čo je dôležité pre dva konektory servo ovládača, vyberte si z mosta A0, aby ste sa dozvedeli viac. Nasleduje odkaz na ďalšie podrobnosti: https://learn.adafruit.com/16-channel-pwm-servo-d… código. Explicado en el apartado de código.

Krok 4: Softvér: Calibraje De Servos

Naše konfigurácie môžu mať konfiguráciu viacerých pulzov, ktoré môžu mať maximálny počet pripojených serverov, ako aj počet borovíc, ktoré môžu mať rôzne konektory a archívy hexapod_core.py.

služba identifikácie motora, identifikácia zariadenia, servis ovládača servo ovládača, minimálna frekvencia, maximálna prevádzková frekvencia a maximálna prevádzková životnosť, sólové obsadenie que cambiarlo de signo.

"" "konvencia joint_key: R - vpravo, L - vľavo F - vpredu, M - v strede, B - vzadu H - bok, K - koleno, A - členkový kľúč: (kanál, minimum_pulse_length, maximum_pulse_length)" "" GPIO.setwarnings (False) GPIO.setmode (GPIO. BOARD)

joint_properties = {

'LFH': (0, 248, 398, -1), 'LFK': (1, 195, 492, -1), 'LFA': (2, 161, 580, -1), 'RFH': (31, 275, 405, 1), 'RFK': (30, 260, 493, -1), 'RFA': (29, 197, 480, -1), 'LMH': (3, 312, 451, -1), 'LMK': (4, 250, 520, -1), 'LMA': (5, 158, 565, -1), 'RMH': (28, 240, 390, 1), „RMK“: (27, 230, 514, -1), „RMA“: (26, 150, 620, -1), „LBH“: (6, 315, 465, 1), „LBK“: ((8, 206, 498, -1), „LBA“: (7, 150, 657, -1), „RBH“: (25, 320, 480, 1), „RBK“: (24, 185, 490, -1), 'RBA': (23, 210, 645, -1), 'N': (18, 150, 650, 1)}

Krok 5: Softvér: Modulos

Softvér: Modulos
Softvér: Modulos

Modul rozpoznávania vozíka:

Vykonajte implementáciu jedného z najdôležitejších modulov rozhrania API od spoločnosti Google „Speech-to-Text“. Viac možností streamovania z cloudu Google, viac ako jeden textový záznam, ako aj ďalšie procesory, ktoré môžu byť sólo v kasíne, ako aj mnohé ďalšie.

Väčšina aplikácií, ktoré majú k dispozícii všetky potrebné rozhrania API, sa môžu registrovať v službe Google Cloud a sťahovať údaje o dôveryhodnosti svojho robota.

Nasledujúce ochranné prvky môžu obsahovať rôzne premenné, ktoré sa môžu prejaviť (Raspbian):

export GOOGLE_APPLICATION_CREDENTIALS = "/tu/ruta/hacia/las/credenciales.json"

Používajte iba jednu z nasledujúcich možností: API pre prevod reči na text.

Mnoho spôsobov streamovania a prehliadania stránok má oficiálny a oficiálny obsah:

Hlavné funkcie streamovania sú „počúvajte_tlač_smyčky“, rozhodujte sa podľa konkrétnych receptov, resp. Odoberajte viac vstupného signálu, ako to robíte, pretože to znamená, že môžete prijímať ďalšie paraboly komunikácií, ako aj roboty, ktoré ovládate svoj prístup, alebo hľadáte ďalšie možnosti de voz no es reconocido, para que el robot realice un movimiento que simula no haber entendido al usuario.

El código adaptado se encuentra en el repositorio de git Hexawalker

github.com/RLP2019/HEXAWALKER/blob/master/…

PASO 1: INŠTALÁCIA OPENCV Hemos seguido la inštaláciaón of un professional professional como es Adrian Rosebrock, en su pàgina web:

PASO 2: PROBAR LA CAMARA Primero de todo una vez instalado opencv, lo que vamos a hacer es un pequeño script en python para probar la camara. Väčšina z nich môže mať pôvod, ale môže to mať aj pôvodný alebo negatívny dopad.

import numpy ako np

import cv2

cap = cv2. VideoCapture (0)

while (True): ret, frame = cap.read () grey = cv2.cvtColor (frame, cv2. COLOR_BGR2GRAY) cv2.imshow ('frame', frame) cv2.imshow ('grey', grey) if cv2.waitKey (1) & 0xFF == ord ('q'): prestávka

cap.release ()

cv2.destroyAllWindows ()

PASO 3: DETECCIÓN DEL COLOR CON OPENCV Para el siguiente paso lo que vamos and realizar es una detección de color. Väčšina, prvá a druhá časť skriptu umožňujú previesť jednu farbu na druhú BGR a HSV (všetky formáty otvorených interpretov).

import sys

import numpy as np import cv2 blue = sys.argv [1] green = sys.argv [2] red = sys.argv [3] color = np.uint8 (

Viac informácií o farebnom prevedení, skriptoch tlačených tlačiarní, tlačiarní a tlačiarní, tlačiarní, tlačiarní, farebných záznamov a snímaní farieb, ktoré nie sú k dispozícii, lo obtiažne zistenie problémov s kontrastom.

Dôležitá pasáž môže mať za následok predchádzajúcu realizáciu, ako aj ďalšie skripty, ktoré môžu mať vplyv na prednú časť. Väčšina výsledkov spojených s výsledkami sériového snímania obsahuje množstvo snímok (s akými farbami a detektorom súvisí), pretože všetky farby môžu mať za následok určité chyby.

import cv2

import numpy ako np

# Prečítajte si obrázok - 1 znamená, že chceme obrázok v BGR

img = cv2.imread ('yellow_object.jpg', 1)

# zmeniť veľkosť obrázka na 20% v každej osi

img = cv2.resize (img, (0, 0), fx = 0,2, fy = 0,2) # konvertuje obraz BGR na obrázok HSV hsv = cv2.cvtColor (img, cv2. COLOR_BGR2HSV)

# NumPy na vytváranie polí na uchovanie dolného a horného rozsahu

# „Dtype = np.uint8“znamená, že dátový typ je 8 -bitové celé číslo

nižší_rozsah = np.array ([24, 100, 100], dtype = np.uint8)

horný_rozsah = np.array ([44, 255, 255], dtype = np.uint8)

# vytvorte masku pre obrázok

maska = cv2.inRange (hsv, nižší_rozsah, horný_rozsah)

# zobrazte masku aj obrázok vedľa seba

cv2.imshow ('maska', maska) cv2.imshow ('image', img)

# počkajte, kým používateľ stlačí [ESC]

while (1): k = cv2.waitKey (0) if (k == 27): break cv2.destroyAllWindows ()

PASO 4: POSICIONAMIENTO DEL OBJETO En este paso probaremos que una vez la camara se encuentre en funcionamiento y hayamos configurado nuestro rango mínimo y maximo de color hsv, que este sea capaz de encontrar las coordenadas x e y del centro de nuest. En este caso lo que crearemos será un script para que cuando el radio de nuestro objeto sea Mayor a 10, dibuje un circuitlo sobre el objeto y nos vaya mostrando por pantalla la posición en tiempo real sus coordenadas x e y.

# pokračujte iba vtedy, ak polomer spĺňa minimálnu veľkosť

ak polomer> 10: # nakreslite kruh a ťažisko na ráme, # potom aktualizujte zoznam sledovaných bodov cv2.circle (rám, (int (x), int (y)), int (polomer), (0, 255, 255), 2) cv2.circle (frame, center, 5, (0, 0, 255), -1) # print center of circle coordinates mapObjectPosition (int (x), int (y)) # if the led is ešte nie je zapnuté, ak LED nesvieti, zapnite LED diódu On: GPIO.output (redLed, GPIO. HIGH) ledOn = True def mapObjectPosition (x, y): print ("[INFO] Centrum objektov sa koordinuje na X0 = {0} a Y0 = {1} ". Formát (x, y))

Čo sa týka toho, čo robíte, čo robíte, robíte všetko pre to, aby ste robili všetko, čo robíte, robíte všetko, čo robíte, robíte všetko, čo potrebujete, aby ste to urobili?

PASO 5: SLEDOVANIE OBJEKTU Llegamos al paso finále. Niektoré z najdôležitejších konfigurácií, ktoré môžu mať jednu alebo druhú konfiguráciu, môžu mať za následok jednu z najdôležitejších detekcií. Väčšina spôsobov použitia obsahuje veľké množstvo farebných odtieňov, ktorých maximálna a minimálna úroveň je nižšia ako v prípade iných typov.

colorLower = (-2, 100, 100)

colorUpper = (18, 255, 255)

Tam sú všetky potrebné body x x y para el límite derecho y el límite izquierdo elegidos en el paso anterior.

ak (x 280):

vytlačiť ("[AKCIA] GIRAR DERECHA") self.hexa.rotate (ofset = -15, opakovania = 1)

Môžete si vybrať z toho, čo si myslíte, že môžete urobiť, aby ste to urobili. En el caso de que more más grande, gire a la derecha.

Para el caso en el que se quiera avanzar hacia adelante lo que se realizará es utilizar la variable dónde calculamos el radio para marcar otro límite en caso de proximidad de la pelota. Môžete si vybrať z mnohých robotických robotov, alebo si vybrať z väčších rádií, ako aj zoberiete si viac robotických robotov, ktorých najobľúbenejším predmetom je.

ak polomer <105: self.hexa.walk (švih = 40, opakovania = 1, zdvihnutý = -30, poschodie = 50, t = 0,3)

A partir de este punto el programador ya es libre de realizar modificaciones e ir jugando con parámetros y colores.

Odporúča: