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

HexaWalker: 5 алхам
HexaWalker: 5 алхам

Видео: HexaWalker: 5 алхам

Видео: HexaWalker: 5 алхам
Видео: 【HEXA NFT 作品&クリエーター紹介】HEXA WALKER Vol.5 HEXANFT展@こはくの天使 2024, Долдугаар сарын
Anonim
Image
Image
HexaWalker
HexaWalker

Энэ нь UAB -ийн роботын бие даасан вэбкамерын вэбкамерын интернэт дэх интерфейс болон интернэт холболтын аль алинд нь зориулагдсан болно. La санаа эрин hacer НҮБ -ын робот амистосо que reconociera ordenes de voz y pueda seguir mediante la cámara una pelota. Algo así como una "maskot" rebotica.

Тайлбарыг буцааж англи (Америкийн Нэгдсэн Улс) руу орчуулах Орчуулах Hexy de ArcBotics.

Холбоо барих линк:

Хангамж

- lipo батерей 7.4V 2700mmAh

- x2 adafruit servo драйвер

- x18 бичил servo SG90s

- вэб камерын playstation нүд

-raspberry pi -LM2596 алхам доош -x2 унтраалга -RGB LED

- олон төрлийн кабель

Алхам 1: Алхам 1: Imprimir Todas Las Piezas De La Estructura

Алхам 1: Imprimir Todas Las Piezas De La Estructura
Алхам 1: Imprimir Todas Las Piezas De La Estructura

Энэ бол маш чухал зүйл юм.

Aqui podreis encodtrar todos los archivos.stl:

Cabe destacar que las hemos impreso con las siguientes propiedades:

материал: PLA

дүүргэх: 25%

давхаргын өндөр: 0.12

хурд: 55 мм/с

Алхам 2: Montaje De La Estructura

Монтаже Де Ла Эструктура
Монтаже Де Ла Эструктура

Холбогдох зааварчилгаа нь 3D форматаар хийгдсэн болно:

Гуиа:

Ямар ч үүрэг гүйцэтгэдэггүй, учир нь энэ нь маш их ашиг тустай байдаг.

Nota: no fijéis los tornillos de los servos antes de calibrarlos en el apartado de código.

Алхам 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

Aqua va una lista de los komponentes utilizados y algunos consejos para el montaje.- lipo baterry 7.4V 2700mmAh - x2 adafruit servo driver

- x18 бичил servo SG90s

- вэб камерын playstation нүд

-цангис жимсний пи

-LM2596 албан тушаалаасаа буусан

-x2 унтраалга

- RGB LED

- олон төрлийн кабель

Энэ нь 2 чухал үүрэг гүйцэтгэдэг жолоодлогын жолооч нар, A0 de la segunda placa. Холбоо барих линк: https://learn.adafruit.com/16-channel-pwm-servo-d… Respecto a los servos el orden en el que conectes los pines es indiferente ya que tendrás que configurar los mas adelante en el codigo. Тайлбарыг буцааж англи (Америкийн Нэгдсэн Улс) руу орчуулах Орчуулах En el apart apart de código.

Алхам 4: Програм хангамж: Calibraje De Servos

Ант -де -де -нада -ийн тохиргоонууд нь хамгийн сүүлийн үеийн тохиргоонуудын нэг юм.

cada servo esta identificado según la leyenda de abajo, por cada servo se tiene que indicar, el pin de conexión al servo driver, pulso mínimo, pulso máximo y el ultimo parámetro es por si el servo esta funcionando al revés de como debería, solo teno de abajo. que cambiarlo de signo.

"" "хамтарсан түлхүүрийн конвенц: R - баруун, L - зүүн F - урд, M - дунд, B - нуруу H - ташаана, K - өвдөг, A - Шагай түлхүүр: (суваг, хамгийн бага_пульсийн урт, хамгийн их_пульсийн урт)" "" GPIO. анхааруулга (Худал) GPIO.setmode (GPIO. BOARD)

хамтарсан_ шинж чанар = {

'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)}

Алхам 5: Програм хангамж: Модулиуд

Програм хангамж: Modulos
Програм хангамж: Modulos

Дахин тохируулах:

Google-ийн 'Speech-to-Text' програмыг хэрэгжүүлснээр та API API-г ашиглах боломжтой болно. Үүлийг Google -ээр дамжуулж, текстийг унших боломжтой бөгөөд энэ нь хамгийн сүүлийн үеийн хувилбаруудын нэг юм.

Google Cloud -ийн бүртгэлийг бүртгэхийн тулд та API -г ашиглах шаардлагагүй болно.

Тооцоолох арга замууд нь маш чухал юм (Raspbian):

GOOGLE_APPLICATION_CREDENTIALS = "/tu/ruta/hacia/las/credenciales.json" экспортлох

Үнэн хэрэгтээ энэ бол үнэхээр API API-ийн яриаг текст рүү шилжүүлэх явдал юм.

Google-ийн мэдээллийн хэрэгслээр дамжуулж буй олон нийтийн мэдээллийн хэрэгслүүд:

Үндсэн функцууд нь 'listen_print_loop' юм, энэ нь оролтын дараалал, хариулт, өгөгдөл дамжуулах явдал юм. Дахин хэлэхэд, энэ нь ямар ч мэдээлэл өгөхгүй байх болно.

Энэ бол Hexawalker програмын тохиргоог хийх явдал юм

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

PASO 1: НЭЭЛТИЙГ СУУХ

PASO 2: PROBAR LA CAMARA Primero de todo una vez instalado opencv, a que vamos a hacer es un pequeño script en python para probar la camara. Para ello haremos que se abran dos ventanas, una con la imagen original y otra con la imagen en blanco y negro.

np гэж numpy импортлох

cv2 импортлох

cap = cv2. VideoCapture (0)

while (Үнэн): ret, frame = cap.read () саарал = cv2.cvtColor (хүрээ, cv2. COLOR_BGR2GRAY) cv2.imshow ('хүрээ', хүрээ) cv2.imshow ('саарал', саарал) бол cv2.waitKey (1) & 0xFF == ord ('q'): завсарлага

cap.release ()

cv2.destroyAllWindows ()

PASO 3: DETECCIÓN DEL COLOR CON OPENCV Энэ нь өнгөөр ялгагдах болно. Тэмдэглэл, скриптийг бодит өнгөөр орчуулах BGR ба HSV форматыг хөрвүүлэх (орчуулагчийн тайлбарыг орчуулах).

sys импортлох

np импорт cv2 цэнхэр = sys.argv [1] ногоон = sys.argv [2] улаан = sys.argv [3] өнгө = np.uint8 (

Una vez hayamos hecho la convertión de nuestro color deseado, el script nos printará por consola el límite por debajo y el límite por arriba, el cual nos servirá para que la detección tenga una gama de colores entre dos colores hsv y no únicamente uno, ямар ч únicamente uno. Асуудлыг шийдвэрлэхэд бэрхшээлтэй тулгарах болно.

Тайлбарыг буцааж англи (Америкийн Нэгдсэн Улс) руу хөрвүүлэх. Харилцан ойлголтын үр дүн нь детекторын тодорхойлолт юм.

cv2 импортлох

np гэж numpy импортлох

# Зургийг уншина уу - 1 нь бид BGR -д байгаа зургийг хүсч байна гэсэн үг юм

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

Тэнхлэг тус бүрт 20% -ийн төсөөллийн хэмжээг өөрчлөх

img = cv2.resize (img, (0, 0), fx = 0.2, fy = 0.2) # BGR зургийг HSV дүрс болгон хөрвүүлэх hsv = cv2.cvtColor (img, cv2. COLOR_BGR2HSV)

# NumPy нь доод ба дээд мужийг хадгалах массив үүсгэх

# "Dtype = np.uint8" гэдэг нь өгөгдлийн төрөл нь 8 битийн бүхэл тоо гэсэн үг юм

доод_ хүрээ = np.array ([24, 100, 100], dtype = np.uint8)

дээд_ муж = np.array ([44, 255, 255], dtype = np.uint8)

# зургийн маск үүсгэх

маск = cv2.inRange (hsv, доод_ муж, дээд_ муж)

# маск болон дүрсийг зэрэгцүүлэн харуулна

cv2.imshow ('маск', маск) cv2.imshow ('зураг', img)

# хэрэглэгчийг [ESC] дарахыг хүлээнэ үү

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

PASO 4: POSICIONAMIENTO DEL OBJETO Энэ програм нь өнгө, өнгө, өнгө, өнгө, өнгө, өнгө, өнгө, өнгө, өнгө, өнгө, өнгө, өнгө, өнгө, өнгө, өнгө, өнгө аяс зэргийг харгалзан үзэх боломжийг олгодог. Скрипт нь далайн хотын захирагч бөгөөд 10 -р тойрог дээр байрладаг бөгөөд энэ нь жинхэнэ утгаар зохицуулалт хийх боломжийг олгодог.

# радиус нь хамгийн бага хэмжээтэй тохирч байвал л үргэлжлүүлнэ

хэрэв радиус> 10: # хүрээ дээр тойрог болон төв зураад #, дараа нь cv2.circle (frame, (int (x), int (y)), int (radius), (0, 255) хянадаг цэгүүдийн жагсаалтыг шинэчилнэ үү., 255), 2) cv2.circle (frame, center, 5, (0, 0, 255), -1) # хэвлэх төв тойргийн координат mapObjectPosition (int (x), int (y)) # асаагүй байгаа бол LEDOn асахгүй бол LED -ийг асаана уу: GPIO.output (redLed, GPIO. HIGH) ledOn = True def mapObjectPosition (x, y): print ("[INFO] Object Center нь X0 = {0} ба Y0 дээр зохицдог = {1} ". Формат (x, y))

Тайлбарыг буцааж англи (Америкийн Нэгдсэн Улс) руу хөрвүүлэх.

PASO 5: ОБЬЕКТ МӨРГӨЛТ Llegamos al paso финал. Нэвтрэхээс өмнө хийх ёстой тохиргоонуудын жагсаалтыг тохируулж, тохируулах боломжтой болно. Тэмдэглэл нь өнгө, өнгө, өнгөөр ялгагдахаас өөр аргагүй болно.

colorLower = (-2, 100, 100)

colorUpper = (18, 255, 255)

También necesitaremos las coordenadas x e y para el límite derecho y el límite izquierdo elegidos en el paso anterior.

хэрэв (x 280):

хэвлэх ("[ACTION] GIRAR DERECHA") self.hexa.rotate (офсет = -15, давталт = 1)

Эндээс үзвэл, энэ нь 220 -ийн хоорондох хамгийн чухал хүчин зүйлүүдийн нэг юм. En el caso de que sea más grande, gire a la derecha.

Тайлбарыг буцааж англи (Америкийн Нэгдсэн Улс) руу орчуулах уу? Cuanto mas cerca este la pelota de nuestro робот ¡, más grande será su radio y por tanto más cerca estará nuestro robot en conseguir sujetjet.

хэрэв радиус <105: өөрөө.hexa.walk (дүүжин = 40, давталт = 1, өргөгдсөн = -30, шал = 50, t = 0.3)

Нэмэлт програмууд нь өнгө, өнгийг өөрчлөх боломжтой болно.

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