Tarjeta controladora de servomotor para articulación robótica

21
Tarjeta controladora de servomotor

description

Proyecto de la Universidad de Huelva para el diseño, implementación y programación de una tarjeta controladora de servomotor con encoder para ser empleada en un brazo robot. Por Vicente Herrera García y José Luis Fernández Márquez, con la supervisión del Dr. Omar Sánchez Pérez. Realizado en 2001-2002.

Transcript of Tarjeta controladora de servomotor para articulación robótica

Page 1: Tarjeta controladora de servomotor para articulación robótica

Tarjeta controladora de servomotor

Page 2: Tarjeta controladora de servomotor para articulación robótica

Controlador PID

Page 3: Tarjeta controladora de servomotor para articulación robótica

Esquema eléctrico de controlador de motor

DSPControlador 2

Controlador n

.

.Desacople para control inteligente

Page 4: Tarjeta controladora de servomotor para articulación robótica

Esquema eléctrico (detalle)

Page 5: Tarjeta controladora de servomotor para articulación robótica

Algunos terminales y funcionesµControlador 628 DAC buffer otros P0.0 AD0 D0 P0.1 AD1 D1 P0.2 AD2 D2 P0.3 AD3 D3 P0.4 AD4 D4 P0.5 AD5 D5 P0.6 AD6 D6 P0.7 AD7 D7 P1.0 CLK P1.1 RST

P1.2 LED AMARILLO

P1.3 LED ROJO

P1.4 LED VERDE

P1.5 G2 P1.6 CS P1.7 P2.0 A8 B8 Y1* P2.1 A9 B7 Y2* P2.2 A10 B6 Y3* P2.3 A11 B5 Y4* P2.4 A12 B4 Y5* P2.5 A13 B3 Y6* P2.6 A14 B2 Y7* P2.7 A15 B1-* Y8* P3.0 RXD Pin 7 DB9P3.1 TXD Pin 6 DB9P3.2 INT0 HI

P3.3 INT1 Pulsador pruebas

P3.4 T0 PS

µCont. 628 buffer DAC

P0.0 D0 DAC0 A1 Y1 B8

P0.1 D1 DAC1 A2 Y2 B7

P0.2 D2 DAC2 A3 Y3 B6

P0.3 D3 DAC3 A4 Y4 B5

P0.4 D4 DAC4 A5 Y5 B4

P0.5 D5 DAC5 A6 Y6 B3

P0.6 D6 DAC6 A7 Y7 B2

P0.7 D7 DAC7 A8 Y8 B1

Vm (motor)

P1.0 CLK P1.1 RST P1.6 CS

P3.2 HI P3.4 PSP3.5 WRP3.6 RD

P1.5 G2

Page 6: Tarjeta controladora de servomotor para articulación robótica

Etapa de Potencia

Descripción

Entradas Iout, -Iout: Señal de ± 5V provenientes de DAC.Salida, Vm: ± 12V para accionar motor DC.Alimentación: +20V, -20V y tierra.

Page 7: Tarjeta controladora de servomotor para articulación robótica

Encoder HEDS-5540

Serie: HEDS-5540 E14 9748 A

Resolución, líneas por revolución, N=200 CPRNº canales: 2 + índiceRequiere resistencias de pull-up de 2'7 KohmVoltaje de alimentación, Vcc = 5 VIntensidad para alimentación 5V, Icc = 57 mA

Page 8: Tarjeta controladora de servomotor para articulación robótica

Motor de FaulhaberNº serie: 2230U012S 74 380

MicroMo Coreless DC Motor 2230Diámetro 22mm, Longitud 30mmPotencia máx. continua: 3'27 wPar de parada: 1’87 oz-inVelocidad sin carga: 9500 RPMPar de rozamiento: 0’017 oz-inVoltaje de alimentación: 12 VConstante de velocidad, kn = 799 rpm/VFuerza contraelectromotriz: kE = 1’250Constante de torque, kM = 1’699 oz-in/A

Valores recomendados:Velocidad hasta: 8’000 rpmPar hasta: 0’354 oz-inCorriente hasta (límites térmicos): 0’450 A

Page 9: Tarjeta controladora de servomotor para articulación robótica

Vista de tarjeta controladora (V1.0)

Page 10: Tarjeta controladora de servomotor para articulación robótica

Vista de tarjeta controladora (V2.0)

Page 11: Tarjeta controladora de servomotor para articulación robótica

Copias comerciales

"Merlin: like having a thousand ninja engineers in your project!"

Page 12: Tarjeta controladora de servomotor para articulación robótica

Detalles del desarrollo

Si se desea trabajar con la etapa de potencia de manera aislada, se debe aplicar un nivel de voltaje con referencia a tierra a una de las dos entradas, Iout o -Iout, pero no a las dos. Si este voltaje es negativo, el sentido de giro será inverso. Si se elige -Iout en lugar de Iout, el sentido será inverso al que sería con el otro.

Page 13: Tarjeta controladora de servomotor para articulación robótica

Comprueba microcontrolador

;======================================================

; PRUEBA DEL MICROCONTROLADOR

;======================================================

PRUEBA_MICRO SEGMENT CODE

RSEG PRUEBA_MICRO

NOP

NOP

NOP

CLR P1.2 ; TODOS LOS LEDS ENCENDIDOS

CLR P1.3

CLR P1.4

ME_QUEDO: JMP ME_QUEDO ; LAZO INFINITO

END

;======================================================

; FIN

;=======================================================

Page 14: Tarjeta controladora de servomotor para articulación robótica

Generador de códigos

LED1 LED2 LED3 Código generado

1 0 0 00000000 0 1 0 00000001 1 1 0 01111111 0 0 1 10000000 1 0 1 10000001 0 1 1 11111110 1 1 1 11111111

Page 15: Tarjeta controladora de servomotor para articulación robótica

Prueba PID;=========================================================

; PRUEBA_PID

;=========================================================

; PROGRAMA MODO POSICIÓN

; ESTADO DEL SISTEMA

; LED AMARILLO: SISTEMA ENCENDIDO

; LED ROJO: HA EXISTIDO ERROR

; LED VERDE: INDICA QUE SE EJECUTA TRAYECTORIA

; PROGRAMA HACE:

; ACELERA, VELOCIDAD Y DESACELERA EN 30 SEGUNDOS

$NOMOD51

$INCLUDE (at898252.INC)

;==========================================================

; DEFINICION DE VARIABLES

;==========================================================

CS1 EQU P1.6 ; Habilita 628

WR1 EQU P3.5 ;ESCRITURA 628

PS1 EQU P3.4 ;PS 628 PS=0 comando PS=1 dato

RD1 EQU P3.6 ;LECTURA 628

RST1 EQU P1.1 ;RESET 628

OE1 EQU P1.5 ;HABILITA BUFFER

Page 16: Tarjeta controladora de servomotor para articulación robótica

Controlador integrado

Page 17: Tarjeta controladora de servomotor para articulación robótica

Ajuste del PID

Ganancia Tiempo de subida

Overshoot Tiempo de establecimiento

Error en estado estable

Kp Decrementa Incrementa Cambia poco Decrementa

Ki Decrementa Incrementa Incrementa Elimina

Kd Cambia poco Decrementa Decrementa Cambia poco

Page 18: Tarjeta controladora de servomotor para articulación robótica

Demo en Red (Tutorial)

Buscar: Tutorial PID MATLAB

Page 19: Tarjeta controladora de servomotor para articulación robótica

Autoajuste controlador PID

Blocksets->Non linear control design->PID Controller

Page 20: Tarjeta controladora de servomotor para articulación robótica

Trayectoria de referencia

Page 21: Tarjeta controladora de servomotor para articulación robótica

Consideraciones sobre cálculos