Daniel Moreno / Mbed 2 deprecated Controlde3servomotoresconvisualizacion

Dependencies:   mbed

You are viewing an older revision! See the latest version

Robot piccolo

ROBOT PICCOLO

Es un robot de tres ejes de rotación, por medio de un puerto serial se envían datos de desplazamiento por coordenadas X,Y,Z dando valores a los grados de cada servomotor. Estos datos se plasman en cualquier superficie a la cual el robot se encuentre ubicado; la proyección de figuras geometrías o cualquier tipo de imagen, son realizas por comando en código ascill escritos en la PC y transmitidos por cable serial, al puerto físico de entrada de la tarjeta F446RE.

PROCEDIMIENTO: Se realiza el diseño y ensamble estructural del cuerpo del robot piccolo en lamina de madera. /media/uploads/DANIELMORENO/img-20170608-wa0004.jpg

MATERIALES:

Se plasma los elementos que componen el robot piccolo.

/media/uploads/DANIELMORENO/nucleo_-_f446re.png

SERVOMOTOR: /media/uploads/DANIELMORENO/sg_90.png

MATRIZ 8X8 /media/uploads/DANIELMORENO/matriz_8x8.png

PASOS DE DISEÑO:

Se procede con el diseño electrónico de la tarjeta de control del robot, por medio del software Kicad de la siguiente forma:

/media/uploads/DANIELMORENO/kicad.png

Se procede a cargar el archivo al formato de la PCB, donde limitamos el área de trabajo y se procede a la ubicación de los componentes y la realización de las pistas o caminos en cobre por ambas caras de la lamina de cobre, donde sera trabajada por la maquina de corte, perforado y acabado.

/media/uploads/DANIELMORENO/kicad-1.png

Se muestra el diseño de la tarjeta en 3D, donde se visualiza de una forma u otra como queda realmente el diseño de l tarjeta de control.

/media/uploads/DANIELMORENO/kicad-2.png

/media/uploads/DANIELMORENO/img-20170608-wa0008.jpg

/media/uploads/DANIELMORENO/img-20170608-wa0006.jpg

/media/uploads/DANIELMORENO/img-20170607-wa0001.jpg

/media/uploads/DANIELMORENO/img-20170608-wa0000.jpg

/media/uploads/DANIELMORENO/img-20170608-wa0001.jpg

FUNCIONAMIENTO:

Partamos de la necesidad de visualizar la dirección y la selección de cada servomotor asociado al programa.

Definimos los pines de salida de la tarjeta

PwmOut s1(PB_10); defino la salida del control del motor 1 por este pin PwmOut s2(PB_4); defino la salida del control del motor 2 por este pin PwmOut s3(PB_5); defino la salida del control del motor 3 por este pin

Inicializamos la matrix teniendo en cuenta el pinado de conexión del mismo

SPI max72_spi(PB_15, NC, PB_13) DigitalOut load1(PB_12) DigitalOut load2(PC_3)

/media/uploads/DANIELMORENO/matriz.png

iniciacion de la matriz MAX7219 configuracion SPI : 8 bits, modo 0:

max72_spi.format(8, 0); maxOne(max7219_reg_scanLimit, 0x07); maxOne(max7219_reg_decodeMode, 0x00); usando una matriz led (sin digitos) maxOne(max7219_reg_shutdown, 0x01); no para modo apagado

luego visualizamos el servomotor 1:

maxOne(1,0); maxOne(2,66); maxOne(3,127); maxOne(4,64); maxOne(5,0); maxOne(6,0); maxOne(7,0); maxOne(8,0);

visualizamos el servomotor 2:

maxOne(1,121); maxOne(2,73); maxOne(3,73); maxOne(4,79); maxOne(5,1); maxOne(6,1); maxOne(7,1); maxOne(8,1);

visualizamos el servomotor 3:

maxOne(1,73); maxOne(2,73); maxOne(3,73); maxOne(4,127); maxOne(5,0); maxOne(6,0); maxOne(7,0); maxOne(8,0);

visualizamos la dirección del servomotor que deseamos intervenir o controlar:

dirección derecha:

maxOne(1,255); maxOne(2,126); maxOne(3,60); maxOne(4,24); maxOne(5,0); maxOne(6,0); maxOne(7,0); maxOne(8,0);

dirección izquierda:

maxOne(1,0); maxOne(2,0); maxOne(3,0); maxOne(4,0); maxOne(5,24); maxOne(6,60); maxOne(7,126); maxOne(8,255);

PRODUCTO FINAL:

/media/uploads/DANIELMORENO/piccolo.jpg


All wikipages