Sunteți pe pagina 1din 65

2019

UNIVERSIDAD NACIONAL DE
INGENIERÍA
FACULTAD DE INGENIERÍA MECÁNICA
UNIVERSIDAD NACIONAL DE INGENIERÍA
FACULTAD DE INGENIERÍA MECÁNICA

PRYECTO DEL CUSRO: MANIPULADOR ROBOTICO DE 2GL


ANÁLISIS Y CONTROL DE ROBOTS
---- MT517 ----

INFORME Nº3
PROFESOR DE PRÁCTICA:
ING. CALLE FLORES IVÁN ARTURO
SECCIÓN:
A
INTEGRANTES: CÓDIGO:
MOSQUERA VILLANUEVA, ADRIANA AURORA 20154068I
SOTELO ASTIYAURE, JOSÉ VALERIO 20144057D

Fecha de realización : Rímac, 17 de junio del 2019


Fecha de entrega : Rímac, 17 de junio del 2019

Lima - Perú
2019
UNIVERSIDAD NACIONAL DE INGENIERÍA – FACULTAD DE INGENIERÍA MECÁNICA
ANÁLISIS Y CONTROL DE ROBOTS
MANIPULADOR DE 2GDL – INFORME Nº2

No se encuentran entradas de índice.

ÍNDICE
1. OBJETIVOS.............................................................................................................. 5
1.1. OBJETIVO GENERAL........................................................................................ 5
1.2. OBJETIVOS ESPECIFICOS .............................................................................. 5
2. CINEMATICA DIRECTA ........................................................................................... 5
3. MODELO DINÁMICO ............................................................................................... 6
3.1. JACOBIANOS DE LINKS ................................................................................... 7
3.2. JACOBIANOS DE MOTORES ........................................................................... 7
3.3. MODELO DINÁMICO SEGÚN SPONG .............................................................. 7
3.4. MODELO DINÁMICO SEGÚN SICILIANO ......................................................... 8
4. PARÁMETROS DE LOS MOTORES ........................................................................ 9
4.1. OBTENCIÓN DE PARÁMETROS ...................................................................... 9
4.1.1. ANÁLISIS ELÉCTRICO ............................................................................. 10
4.1.2. ANÁLISIS MECÁNICO............................................................................... 11
4.1.3. ANÁLISIS DE LA RESPUESTA DEL SISTEMA ......................................... 11
4.2. Realización del experimento............................................................................. 11
4.2.1. Cálculo de la resistencia de armadura (𝑹𝒂) ............................................... 11
4.2.2. Cálculo de la constante electromotriz y de torque (𝑲𝒃, 𝑲𝒕) ........................ 12
4.2.3. Cálculo del coeficiente de la fricción viscosa (𝑩) ....................................... 12
4.2.4. Cálculo del momento de inercia rotacional (𝑱) ........................................... 12
4.3. Identificación de los parámetros de los motores ............................................... 12
4.3.1. POLOLU METAL GEARMOTOR 131:1 37DX73L MM WITH 64 CPR
ENCODER........................................................................................................... 12
4.4. OBTENCION DE PARAMETRO POR ARX ...................................................... 16
4.5. OBTENCION DE LA INDUCTANCIA DEL MOTOR POR ITERACIÓN ............. 20
5. SIMULACIONES A LAZO ABIERTO BASADO EN LOS VOLTAJES ...................... 26
5.1. SIMULACIÓN SEGÚN SPONG ........................................................................ 27
5.2. SIMULACIÓN SEGÚN SICILIANO ................................................................... 30
5.3. SIMULACIÓN SEGÚN SPONG ........................................................................ 31
6. ESTRUCUTRA MECANICA .................................................................................... 33
7. ELECTRONICA ...................................................................................................... 34
8. LECTURA DE VELOCIDAD DE LOS MOTORES ................................................... 34
9. CONTROL PD DE LOS MOTORES ....................................................................... 37
10. ANÁLISIS DEL DRIVER ....................................................................................... 43
10.1. FRECUENCIA DEL PWM............................................................................... 60
UNIVERSIDAD NACIONAL DE INGENIERÍA – FACULTAD DE INGENIERÍA MECÁNICA
ANÁLISIS Y CONTROL DE ROBOTS
MANIPULADOR DE 2GDL – INFORME Nº2

10.2. RESOLUCIÓN................................................................................................ 61
10.3. LINEALIDAD .................................................................................................. 61
11. BIBLIOGRAFÍA ..................................................................................................... 65
UNIVERSIDAD NACIONAL DE INGENIERÍA – FACULTAD DE INGENIERÍA MECÁNICA
ANÁLISIS Y CONTROL DE ROBOTS
MANIPULADOR DE 2GDL – INFORME Nº2

1. OBJETIVOS
1.1. OBJETIVO GENERAL
Diseño de un manipulador robótico de 2GDL

1.2. OBJETIVOS ESPECIFICOS


a) Calcular los parámetro experimentales de los motores Pololu 131:1 Metal
Gearmotor 37Dx73L mm with 64 CPR Encoder
b) Hallar el modelo dinámico de un manipulador robótico de 2GDL de tipo RR
según SPONG (sin considerar motores) y según SICILIANO (considerar
motores) basado en los voltajes basado en los voltajes.
c) Simular la dinámica a lazo abierto el manipulador robótico de 2GDL tipo RR
según SPONG y según SICILIANO basado en la tensión aplicada.
d) Implementación física del manipulador robótico.
e) Control de posición angular del manipulador aplicando control PID.
f) Determinación de los efectos del PWM en el driver L298 y el driver VNH5019 al
ser alimentados con una fuente de laboratorio (fuente lineal) y una fuente
switching (fuente conmutada o fuente de computadora).

2. CINEMATICA DIRECTA

LINK 𝜽𝒊 𝒅𝒊 𝒂𝒊 𝜶𝒊
𝜋
1 𝑞1∗ 𝑑1 0
2
2 𝑞2∗ 0 𝑎2 0

Parámetro Valor (mm)


𝑞1∗ 〈0; 360〉
𝑞2∗ 〈−30; 240〉
𝑑1 56.90
𝑎2 117.50

Figura 1. Diseño mecánico con sistemas coordenados y tabla de parámetros


Denavit-Hartenberg

5
UNIVERSIDAD NACIONAL DE INGENIERÍA – FACULTAD DE INGENIERÍA MECÁNICA
ANÁLISIS Y CONTROL DE ROBOTS
MANIPULADOR DE 2GDL – INFORME Nº2

3. MODELO DINÁMICO
Parámetros utilizados:
% 1.1. MASA
% -> ESLABON "1"
m_1 = 438.65*1e-3; % kg
% -> ESLABON "2"
m_2 = 183.04*1e-3; % kg
% -> MOTOR "1"
m_m1 = 235*1e-3; % kg
% -> MOTOR "2"
m_m2 = 235*1e-3; % kg

% 1.2. UBICACION DE CENTRO DE MASA


% -> ESLABON "1"
ac1x = -0.34*1e-3; % Respecto a sistema coordenado 1
ac1y = -6.15*1e-3;
ac1z = 0.27*1e-3;
% -> ESLABON "2"
ac2x = -77.52*1e-3; % Respecto a sistema coordenado 2
ac2y = 0.00*1e-3;
ac2z = 0.98*1e-3;
% -> MOTOR "1"
acm1x = 6.82*1e-3; % Respecto a sistema coordenado 2
acm1y = -0.03*1e-3;
acm1z = -37.17*1e-3;
% -> MOTR "2"
acm2x = 0.03*1e-3; % Respecto a sistema coordenado 2
acm2y = 6.82*1e-3;
acm2z = 5.33*1e-3;

% 1.3 MOMENTOS DE INERCIA


% -> ESLABON "1"
I1xx = 553650.74*1e-9; % Respecto a sistema coordenado 1
I1yy = 470462.83*1e-9;
I1zz = 456349.58*1e-9;
I1xy = 2885.52*1e-9;
I1xz = 3813.41*1e-9;
I1yz = 0; %-658.42*1e-9;
I1yx = I1xy;
I1zx = I1xz;
I1zy = I1yz;

% -> ESLABON "2"


I2xx = 527599.64*1e-9; % Respecto a sistema coordenado 2
I2yy = 853672.91*1e-9;
I2zz = 373058.03*1e-9;
I2xy = 0; %-0.40*1e-9;
I2xz = -6920.37*1e-9;
I2yz = 0; %0.62*1e-9;
I2yx = I2xy;
I2zx = I2xz;
I2zy = I2yz;

% -> MOTOR "1"


Im1xx = 107600.58*1e-9; % Respecto a su centro de masa
Im1yy = 107842.85*1e-9;
Im1zz = 36967.18*1e-9;
Im1xy = 0; %84.34*1e-9;
Im1xz = 0; %-927.08*1e-9;
Im1yz = 0; %182.50*1e-9;
Im1yx = Im1xy;
Im1zx = Im1xz;
Im1zy = Im1yz;

% -> MOTOR "2"


Im2xx = 107845.63*1e-9; % Respecto a su centro de masa
Im2yy = 107600.16*1e-9;
Im2zz = 36969.53*1e-9;
Im2xy = 0; %-85.52*1e-9;
Im2xz = 0; %-174.40*1e-9;
Im2yz = 0; %-935.17*1e-9;
Im2yx = Im2xy;
Im2zx = Im2xz;
Im2zy = Im2yz;

kr1=131;
kr2=131;

6
UNIVERSIDAD NACIONAL DE INGENIERÍA – FACULTAD DE INGENIERÍA MECÁNICA
ANÁLISIS Y CONTROL DE ROBOTS
MANIPULADOR DE 2GDL – INFORME Nº2

3.1. JACOBIANOS DE LINKS


27 ∗ 𝑐𝑜𝑠(𝑞1) 17 ∗ 𝑠𝑖𝑛(𝑞1)
0 0 + 0
100000 50000
𝐽𝑤1 = [ 0 0] 𝐽𝑣𝐶𝑀1 = 27 ∗ 𝑠𝑖𝑛(𝑞1) 17 ∗ 𝑐𝑜𝑠(𝑞1)
1 0 − 0
100000 50000
[ 0 0]

𝐴 𝐵
𝐶 𝐷
𝐽𝑣𝐶𝑀2 = [ 1999 ∗ 𝑐𝑜𝑠(𝑞2)]
0
50000

49 ∗ 𝑐𝑜𝑠(𝑞1) 1999 ∗ 𝑐𝑜𝑠(𝑞2) ∗ 𝑠𝑖𝑛(𝑞1)


0 sin 𝜃1 𝐴= −
𝐽𝑤2 = [0 − cos 𝜃1 ] 50000 50000
1 0 1999 ∗ 𝑐𝑜𝑠(𝑞1) ∗ 𝑠𝑖𝑛(𝑞2)
𝐵=−
50000

49 ∗ 𝑠𝑖𝑛(𝑞1) 1999 ∗ 𝑐𝑜𝑠(𝑞1) ∗ 𝑐𝑜𝑠(𝑞2)


𝐶= +
50000 50000

1999 ∗ 𝑠𝑖𝑛(𝑞1) ∗ 𝑠𝑖𝑛(𝑞2)


𝐷=−
50000

3.2. JACOBIANOS DE MOTORES

0 0 0 0
𝐽𝑤𝑀1 =[ 0 0] 𝐽𝑣𝑀1 = [ 0 0]
131 0 0 0

533 ∗ 𝑐𝑜𝑠(𝑞1) 3 ∗ 𝑠𝑖𝑛(𝑞1)


0 131 ∗ 𝑠𝑖𝑛(𝑞1) − 0
𝐽𝑤𝑀2 = [0 −131 ∗ 𝑐𝑜𝑠(𝑞1)] 100000 100000
𝐽𝑣𝑀2 = 3 ∗ 𝑐𝑜𝑠(𝑞1) 533 ∗ 𝑠𝑖𝑛(𝑞1)
1 0 + 0
100000 100000
[ 0 0]

3.3. MODELO DINÁMICO SEGÚN SPONG

Matriz D:
𝐷11 𝐷12
𝐷=[ ]
𝐷21 𝐷22

910270611451545150428112259 87066470189749766167162223 ∗ 𝑠𝑖𝑛(𝑞2)2


𝐷11 = −
562949953421312000000000000000 140737488355328000000000000000

7
UNIVERSIDAD NACIONAL DE INGENIERÍA – FACULTAD DE INGENIERÍA MECÁNICA
ANÁLISIS Y CONTROL DE ROBOTS
MANIPULADOR DE 2GDL – INFORME Nº2

63464502642421107383165711 ∗ 𝑠𝑖𝑛(𝑞2)
𝐷12 = 𝐷21 = −
4503599627370496000000000000000

𝐷22 = 0.00066562923921600004781069873338595

Matriz C:
𝐶11 𝐶12
𝐶=[ ]
𝐶21 𝐶22

87066470189749766167162223 ∗ 𝑑𝑞2 ∗ 𝑠𝑖𝑛(2 ∗ 𝑞2)


𝐶11 = −
281474976710656000000000000000

87066470189749766167162223 ∗ 𝑑𝑞1 ∗ 𝑠𝑖𝑛(2 ∗ 𝑞2) 63464502642421107383165711 ∗ 𝑑𝑞2 ∗ 𝑐𝑜𝑠(𝑞2)


𝐶12 = − −
281474976710656000000000000000 4503599627370496000000000000000

87066470189749766167162223 ∗ 𝑑𝑞1 ∗ 𝑠𝑖𝑛(2 ∗ 𝑞2)


𝐶21 =
281474976710656000000000000000

𝐶22 = 0

Vector G:
0
𝑔 = [4041360494676173471 ∗ 𝑐𝑜𝑠(𝑞2)]
56294995342131200000

3.4. MODELO DINÁMICO SEGÚN SICILIANO

Matriz D:
𝐷11 𝐷12
𝐷=[ ]
𝐷21 𝐷22

358106549179685780480646085759 696255386867865469425188409 ∗ 𝑠𝑖𝑛(𝑞2)2


𝐷11 = −
562949953421312000000000000000 1125899906842624000000000000000

63464502642421107383165711 ∗ 𝑠𝑖𝑛(𝑞2)
𝐷12 = 𝐷21 = −
4503599627370496000000000000000

𝐷22 = 0.63509973356921601888241557612691

Matriz C:

8
UNIVERSIDAD NACIONAL DE INGENIERÍA – FACULTAD DE INGENIERÍA MECÁNICA
ANÁLISIS Y CONTROL DE ROBOTS
MANIPULADOR DE 2GDL – INFORME Nº2

𝐶11 𝐶12
𝐶=[ ]
𝐶21 𝐶22

696255386867865469425188409 ∗ 𝑑𝑞2 ∗ 𝑠𝑖𝑛(2 ∗ 𝑞2)


𝐶11 = −
2251799813685248000000000000000

696255386867865469425188409 ∗ 𝑑𝑞1 ∗ 𝑠𝑖𝑛(2 ∗ 𝑞2) 63464502642421107383165711 ∗ 𝑑𝑞2 ∗ 𝑐𝑜𝑠(𝑞2)


𝐶12 = − −
2251799813685248000000000000000 4503599627370496000000000000000

696255386867865469425188409 ∗ 𝑑𝑞1 ∗ 𝑠𝑖𝑛(2 ∗ 𝑞2)


𝐶21 =
2251799813685248000000000000000

𝐶22 = 0

Vector G:
0
𝑔=[ 4041360494676173471 ∗ 𝑐𝑜𝑠(𝑞2)]
56294995342131200000

4. PARÁMETROS DE LOS MOTORES

4.1. OBTENCIÓN DE PARÁMETROS


Con este método obtendremos el modelo dinámico de un motor dc aplicando solamente
leyes físicas.
Tabla 1. Parámetros de un motor DC

Parámetros Descripción Unidades SI

𝑅𝑎 Resistencia de armadura Ω

𝐿𝑎 Inductancia de armadura 𝐻

𝐽 Momento de inercia rotacional 𝐾𝑔 ∙ 𝑚2

𝑁∙𝑚∙𝑠
𝐵 Coeficiente de fricción viscosa
𝑟𝑎𝑑
𝑁∙𝑚
𝐾𝑡 Constante de torque
𝐴
𝑉∙𝑠
𝐾𝑏 Constante electromotriz
𝑟𝑎𝑑

9
UNIVERSIDAD NACIONAL DE INGENIERÍA – FACULTAD DE INGENIERÍA MECÁNICA
ANÁLISIS Y CONTROL DE ROBOTS
MANIPULADOR DE 2GDL – INFORME Nº2

El funcionamiento del motor DC se basa en una serie de bobinas enrolladas en un


núcleo ferromagnético expuestas en un campo magnético. Para el caso de los motores
DC de imán permanente, el campo magnético es generado por imanes permanentes
(como dice su nombre), por lo que al aplicar una diferencia de tensión a la bobina se
genera una fuerza magnetomotriz que hace generar un movimiento mecánico…
mientras que el sentido rotacional lo da la flecha.

4.1.1. ANÁLISIS ELÉCTRICO

Analicemos un motor DC de imán permanente como la que se muestra en la figura 1.

Figura 1. Modelamiento de un motor DC de imán permanente

Sabemos que:

𝐸𝑔 = 𝑤𝑟𝑜𝑡𝑜𝑟 ∙ 𝐾𝑏 ⋯ (1)
También:

𝑉 − 𝑉𝑅 − 𝑉𝐿 − 𝐸𝑔 = 0
𝑑𝑖 ⋯ (2)
𝑉 − 𝑅𝑎 ∙ 𝑖 − 𝐿𝑎 ∙ − 𝑤𝑟𝑜𝑡𝑜𝑟 ∙ 𝐾𝑏 = 0
𝑑𝑡
Si despreciamos 𝐿 (por ser casi siempre pequeño comparado con los demás valores):

𝑉 − 𝑅𝑎 ∙ 𝑖 − 𝑤𝑟𝑜𝑡𝑜𝑟 ∙ 𝐾𝑏 = 0
Si bloqueamos el roto (𝑤𝑟𝑜𝑡𝑜𝑟 = 0):

𝑉 − 𝑅𝑎 ∙ 𝑖 = 0
𝑉 ⋯ (3)
𝑅𝑎 =
𝑖
También:

𝑤𝑟𝑜𝑡𝑜𝑟 ∙ 𝐾𝑏 = 𝑉 − 𝑅𝑎 ∙ 𝑖
𝑉 − 𝑅𝑎 ∙ 𝑖 ⋯ (4)
𝐾𝑏 =
𝑤𝑟𝑜𝑡𝑜𝑟

10
UNIVERSIDAD NACIONAL DE INGENIERÍA – FACULTAD DE INGENIERÍA MECÁNICA
ANÁLISIS Y CONTROL DE ROBOTS
MANIPULADOR DE 2GDL – INFORME Nº2

4.1.2. ANÁLISIS MECÁNICO

Analizaremos en un primer momento la potencia del motor DC, que debería ser la misma
en la entrada como en la salida.

𝐸𝑔 = 𝐾𝑏 ∙ 𝑤𝑟𝑜𝑡𝑜𝑟
𝑇𝑚 = 𝐾𝑡 ∙ 𝑖
𝑃𝑜𝑡𝑒𝑛𝑡𝑟𝑎𝑑𝑎,𝑓𝑒𝑚 = 𝐸𝑔 ∙ 𝑖 = 𝑇𝑚 ∙ 𝑤𝑟𝑜𝑡𝑜𝑟 = 𝑃𝑜𝑡𝑠𝑎𝑙𝑖𝑑𝑎

Luego:

𝐾𝑡 = 𝐾𝑏 ⋯ (5)
Cuando se analiza el motor sin carga tendremos:
𝑑𝑤𝑟𝑜𝑡𝑜𝑟
𝑇𝑚 = 𝐽 ∙ + 𝐵 ∙ 𝑤𝑟𝑜𝑡𝑜𝑟
𝑑𝑡
𝑑𝑤𝑟𝑜𝑡𝑜𝑟
𝐾𝑡 ∙ 𝑖 = 𝐽 ∙ + 𝐵 ∙ 𝑤𝑟𝑜𝑡𝑜𝑟
𝑑𝑡
Ahora, si consideramos que el sistema se encuentra en un punto estacionario (𝑤̇ = 0):

𝐾𝑡 ∙ 𝑖 − 𝐵 ∙ 𝑤𝑟𝑜𝑡𝑜𝑟 = 0
𝐾𝑡 ∙ 𝑖 ⋯ (6)
𝐵=
𝑤𝑟𝑜𝑡𝑜𝑟

4.1.3. ANÁLISIS DE LA RESPUESTA DEL SISTEMA

Con estas mediciones se buscará calcular el parámetro 𝐽, existe otras maneras de


calcular este parámetro, pero se tendría que desarmar el motor y medir detalladamente
su geometría interna, pero esto resulta muy complicado… por ello se opta por calcular
la inercia despejando de la fórmula de tiempo de subida.
𝐽 ∙ 𝑅𝑎
𝑡𝑚 =
𝐾𝑡 ∙ 𝐾𝑏
𝐾𝑡 ∙ 𝐾𝑏 ⋯ (7)
𝐽= ∙ 𝑡𝑚
𝑅𝑎
Hay diferentes definiciones del tiempo de subida, pero la que use usará es la siguiente:
“El tiempo de subida es el tiempo que le toma al sistema para llegar del 10% al 90% de
su valor final”.

4.2. Realización del experimento


4.2.1. Cálculo de la resistencia de armadura (𝑹𝒂 )
 Medir diferentes valores de voltaje y corriente en el motor
 Valores de voltaje pequeño de modo que no gire el rotor
Finalmente aplicamos la ecuación (3).

11
UNIVERSIDAD NACIONAL DE INGENIERÍA – FACULTAD DE INGENIERÍA MECÁNICA
ANÁLISIS Y CONTROL DE ROBOTS
MANIPULADOR DE 2GDL – INFORME Nº2

4.2.2. Cálculo de la constante electromotriz y de torque (𝑲𝒃 , 𝑲𝒕 )


 Medir diferentes valores de voltaje y corriente en el motor
 Valores de voltaje suficiente para que empiece a girar el rotor
Finalmente aplicamos las ecuaciones (4) y (5).

4.2.3. Cálculo del coeficiente de la fricción viscosa (𝑩)


Con los mismos datos obtenidos en el punto (1.2.2) y usando la ecuación (6).

4.2.4. Cálculo del momento de inercia rotacional (𝑱)


 Alimentar al motor con un pulso lo suficientemente ancho para que llegue a su
velocidad nominal constante
 Calcular gráficamente el tiempo
Finalmente aplicamos la ecuación (7).

4.3. Identificación de los parámetros de los motores


Tabla 2. Características de los motores

Motor 𝑛 (Caja reductora) CPR (Resolución encoder)


𝑀1 1: 131 64
𝑀2 1: 131 64

Como es el mismo motor, se considerará parámetros iguales:

4.3.1. POLOLU METAL GEARMOTOR 131:1 37DX73L MM WITH 64 CPR


ENCODER

Figura 2. Motor DC de 6V

12
UNIVERSIDAD NACIONAL DE INGENIERÍA – FACULTAD DE INGENIERÍA MECÁNICA
ANÁLISIS Y CONTROL DE ROBOTS
MANIPULADOR DE 2GDL – INFORME Nº2

 Cálculo de la resistencia de armadura


Tabla 3. Voltaje vs. Corriente del motor pequeño

V I R
(V) (A) (Ω)
0.25 0.09 2.778
0.92 0.32 2.875
1.23 0.43 2.860
1.54 0.55 2.800
1.7 0.6 2.833
2.08 0.75 2.773
2.23 0.79 2.823
2.43 0.85 2.859
2.75 0.96 2.865
Promedio: 2.830
Cabe resaltar que para mejor precisión medimos la resistencia del multímetro, el cual
resultó con un valor de 𝑅𝑚𝑢𝑙𝑡í𝑚𝑒𝑡𝑟𝑜 = 2.83 Ω.

Motor Pololu
3
y = 2.8348x
2.5 R² = 0.9992

2
Voltaje (V)

1.5

0.5

0
0 0.2 0.4 0.6 0.8 1 1.2
Corriente (A)

Figura 3. Voltaje vs. Corriente en el motor.

 Cálculo de las constantes del motor


Tabla 4.Parámetros medidos y calculados para el cálculo de la constante.

V I w R
(V) (A) (rad/s) (Ω) kb = kt
1.23 0.13 0.7 2.8295668 0.00938401
2.34 0.15 1.59 2.8295668 0.00917911
3.62 0.17 2.62 2.8295668 0.00912824
4.81 0.17 3.6 2.8295668 0.00916185

13
UNIVERSIDAD NACIONAL DE INGENIERÍA – FACULTAD DE INGENIERÍA MECÁNICA
ANÁLISIS Y CONTROL DE ROBOTS
MANIPULADOR DE 2GDL – INFORME Nº2

5.99 0.18 4.54 2.8295668 0.0091977


7.24 0.18 5.56 2.8295668 0.00922327
8.43 0.19 6.54 2.8295668 0.00919456
9.63 0.19 7.53 2.8295668 0.00919991
10.75 0.2 8.46 2.8295668 0.00917175
11.7 0.2 9.21 2.8295668 0.00921076
Promedio: 0.00920512

 Cálculo de la fricción viscosa


Tabla 5. Parámetros medidos y calculados para el cálculo de la fricción viscosa

V I w
kb = kt kt*I B
(V) (A) (rad/s)
1.2199E-
1.23 0.13 0.70 0.00938401 1.32781E-08
06
1.3769E-
2.34 0.15 1.59 0.00917911 6.59774E-09
06
1.5518E-
3.62 0.17 2.62 0.00912824 4.51269E-09
06
1.5575E-
4.81 0.17 3.60 0.00916185 3.29633E-09
06
1.6556E-
5.99 0.18 4.54 0.0091977 2.77841E-09
06
1.6602E-
7.24 0.18 5.56 0.00922327 2.27501E-09
06
8.43 0.19 6.54 0.00919456 1.747E-06 2.0352E-09
9.63 0.19 7.53 0.00919991 1.748E-06 1.76865E-09
1.8344E-
10.75 0.20 8.46 0.00917175 1.65201E-09
06
1.8422E-
11.7 0.20 9.21 0.00921076 1.52394E-09
06
Promedio: 3.9718E-09

 Cálculo de la inercia del rotor


Tenemos el tiempo de subida de la figura 12: 𝑡𝑚 = 0.132614𝑠𝑒𝑔

14
UNIVERSIDAD NACIONAL DE INGENIERÍA – FACULTAD DE INGENIERÍA MECÁNICA
ANÁLISIS Y CONTROL DE ROBOTS
MANIPULADOR DE 2GDL – INFORME Nº2

Figura 4. Curva de reacción del motor DC a una tensión de entrada de 12V (rojo)
y velocidad como respuesta (azul, rad/s)

Luego: 𝐽 = 3.97126 ∙ 10−6 𝐾𝑔 ∙ 𝑚2


A partir de los datos hallados tendremos la planta:

𝑛 = 131.25, 𝑅𝑎 = 2.83, 𝐾𝑡 = 𝐾𝑏 = 0.0092, 𝐵 = 3.9718 ∙ 10−9 ,


−6
𝐽 = 3.97126 ∙ 10
𝐾𝑡
𝑤(𝑠) 𝑛 ∗ (𝑅𝑎 ∗ 𝐵 + 𝐾𝑡 2 ) 𝟔. 𝟐𝟒
= =
𝑉(𝑠) 𝑅𝑎 ∗ 𝐽
∗ 𝑠 + 1 𝒔 + 𝟕. 𝟓𝟒𝟏
𝑅𝑎 ∗ 𝐵 + 𝐾𝑡 2

Figura 5. Respuesta ante un escalón unitario de la planta del motor identificado


con sus parámetros experimentales.

15
UNIVERSIDAD NACIONAL DE INGENIERÍA – FACULTAD DE INGENIERÍA MECÁNICA
ANÁLISIS Y CONTROL DE ROBOTS
MANIPULADOR DE 2GDL – INFORME Nº2

4.4. OBTENCION DE PARAMETRO POR ARX

Figura 6. Señal de entrada en voltios (rojo) al motor y sus respuesta en velocidad


medido en rad/s (azul).

A continuación, está el código para la lectura de velocidad usando el Teensy 3.5,


editado usando el IDE Arduino con Core para el Teensy 3.5.

16
UNIVERSIDAD NACIONAL DE INGENIERÍA – FACULTAD DE INGENIERÍA MECÁNICA
ANÁLISIS Y CONTROL DE ROBOTS
MANIPULADOR DE 2GDL – INFORME Nº2

/* LECTURA DE VELOCIDAD PARA: 131.25:1 Metal Gearmotor 37Dx73L 64CPR


* Red -> Motor Power +
* Black -> Motor Power -
* Green -> Encoder GND
* Blue -> Ecncoder Vcc (3.5 - 20V)
* Yellow -> Encoder A
* White -> Encoder B
*/
#include <Encoder.h>
#define pi acos(-1)
#define LED_STATUS 13
#define myEncMo1A 5
#define myEncMo1B 6
#define M1_INA 7
#define M1_INB 8
#define M1_PWM 9
Encoder myEncMo1(myEncMo1A,myEncMo1B); // Definir pines del encoder
volatile unsigned long long t, t_ant = 0;
int tt = 0;
int T = 10; // Periodo de muestreo (ms)
long pos1 = 0; // Posicion del motor 1
long posAnt1 = 0;
float vel1 = 0, vel1_RPM = 0, vel1_rad = 0;
int pwm01Val = 0;
void setup() {
pinMode(LED_STATUS,OUTPUT);
Serial.begin(9600);
pinMode(M1_INA,OUTPUT);
pinMode(M1_INB,OUTPUT);
pinMode(M1_PWM,OUTPUT);
digitalWrite(M1_INA,HIGH); // Alimentacion del encoder (Blue)
digitalWrite(M1_INB,LOW); // Tierra del encoder (Green)
analogWrite(M1_PWM,pwm01Val);
// FRECUENCIA Y RESOLUCION DEL PWM
analogWriteFrequency(M1_PWM, 10000); // 488.28 Hz por defecto
analogWriteResolution(10); // 8 bits por defecto
delay(1000);
digitalWrite(LED_STATUS,HIGH);
}

17
UNIVERSIDAD NACIONAL DE INGENIERÍA – FACULTAD DE INGENIERÍA MECÁNICA
ANÁLISIS Y CONTROL DE ROBOTS
MANIPULADOR DE 2GDL – INFORME Nº2

void loop() {
if(Serial.available()){
char buffer[10];
Serial.readBytesUntil('\n', buffer, 10);
pwm01Val = atoi(buffer);
if(pwm01Val>0){
digitalWrite(M1_INB,LOW); // Alimentacion del encoder (Blue)
digitalWrite(M1_INA,HIGH); // Tierra del encoder (Green)
}
else{
digitalWrite(M1_INA,LOW); // Alimentacion del encoder (Blue)
digitalWrite(M1_INB,HIGH); // Tierra del encoder (Green)
}
analogWrite(M1_PWM,abs(pwm01Val));
}
t = millis();
if((t - t_ant) >= T){
t_ant = t;
tt=t;
pos1 = myEncMo1.read();
//vel1_rad = (pos1 - posAnt1)/ 8400.0 * 2 * pi *1000.0 / T; // rad/s
//vel1_RPM = (pos1 - posAnt1)/ 8400.0 * 1000.0 / T * 60; // RPM
Serial.print(tt);
Serial.print("\t");
Serial.print(pwm01Val);
Serial.print("\t");
// Serial.print(pos1);
// Serial.print("\t");
// Serial.print(vel1_rad);
// Serial.print("\t");
// Serial.print(vel1_RPM);
// Serial.print("\t");

Serial.println(pos1-posAnt1);

//Serial.println(vel1);

posAnt1 = pos1;

Los datos experimentales (marcas de tiempo en ms, señal de entrada en PWM de


resolución de 10 bits con voltaje máximo de 12 V y la diferencia de pulsos entre marcas
de tiempo) que se muestres por el puerto serial son copiados en un bloc de notas y
guardado mediante el nombre <xxxx.lvm>.
Código en Matlab para la identificación de la planta del motor usando el método ARX,

18
UNIVERSIDAD NACIONAL DE INGENIERÍA – FACULTAD DE INGENIERÍA MECÁNICA
ANÁLISIS Y CONTROL DE ROBOTS
MANIPULADOR DE 2GDL – INFORME Nº2

clear; close all; clc


%% IDENTIFICACION DE LA PLANTA POR ARX
% -------------------------------------------------------------------------
% Cargando la DATA
% -------------------------------------------------------------------------
load xxxx.lvm;
t1 = xxxx(:,1); % [ms]
u1 = xxxx(:,2); % [PWM]
y1 = xxxx(:,3); % [diferencia pulsos]

T = 10; % [ms]

t1 = t1-t1(1,1); % [ms]
t1 = t1/1000.0; % [s]
u1 = 12/1023*u1; % [V]
y1 = y1 / 8400.0 * 2 * pi *1000.0 / T; % [rad/s]
% y1 = y1*131.25;

figure
plot(t1,u1,'r',t1,y1,'b');
% axis([min(tt) max(tt) 0 max(y1)+max(y1)/10]);
legend('u1 (V)','y1 (rad/s)');
xlabel('tiempo (seg)');
ylabel('Tension (voltios)');
title('DATOS EXPERIMENTALES')
grid on

% -------------------------------------------------------------------------
% Identificación ARX
% -------------------------------------------------------------------------
fs=20;
T=1/fs;

%--------------------------------------------------------------------------
figure
% tt=0:T:(length(y1)-1)*T;
plot(t1,y1);
% axis([min(tt) max(tt) 0 max(y1)+max(y1)/10]);
legend('y1 (V)');
xlabel('tiempo (seg)');
ylabel('Tension (voltios)');
title('DATOS EXPERIMENTALES')
grid on
%--------------------------------------------------------------------------

data=iddata(y1,u1,T);
th=arx(data,[1 1 1]);
% th=armax(data,[2 1 1 1]);
thd=tf(th.b,th.a,T);
thc=d2c(thd);
[num,den]=tfdata(thc);
Gp=tf(num,den);
[nc,dc]=tfdata(Gp,'v');
[Pp,Zp]=pzmap(Gp);
disp('Planta Identificada')
printsys(nc,dc)

Gp
figure
step(Gp)
title('RESPUESTA DE LA PLANTA IDENTIFICADA POR ARX');

19
UNIVERSIDAD NACIONAL DE INGENIERÍA – FACULTAD DE INGENIERÍA MECÁNICA
ANÁLISIS Y CONTROL DE ROBOTS
MANIPULADOR DE 2GDL – INFORME Nº2

Figura 7. Respuesta de la planta identificada por ARX ante un escalón unitario

𝑤(𝑠) 𝟏. 𝟕𝟎𝟎𝟗
=
𝑉(𝑠) 𝒔 + 𝟐. 𝟑𝟗𝟎𝟔
4.5. OBTENCION DE LA INDUCTANCIA DEL MOTOR POR ITERACIÓN
El siguiente método se encuentra descrito por video en la página de Matlab [2].
Se hace uso de la curva de reacción contenida en el archivo xxxx.lvm y se parten con
parámetros con los valores identificados por las pruebas de laboratorio.

clear; close all; clc


% -------------------------------------------------------------------------
% Cargando la DATA
% -------------------------------------------------------------------------
load xxxx.lvm;
t1 = xxxx(:,1); % [ms]
u1 = xxxx(:,2); % [PWM]
y1 = xxxx(:,3); % [diferencia pulsos]

T = 10; % [ms]

t1 = t1-t1(1,1); % [ms]
t1 = t1/1000.0; % [s]
u1 = 12/1023*u1; % [V]
y1 = y1 / 8400.0 * 2 * pi *1000.0 / T; % [rad/s]
% y1 = y1*131.25;

figure
plot(t1,u1,'r',t1,y1,'b');
% axis([min(tt) max(tt) 0 max(y1)+max(y1)/10]);
legend('u1 (V)','y1 (rad/s)');
xlabel('tiempo (seg)');
ylabel('Tension (voltios)');
title('DATOS EXPERIMENTALES')
grid on

20
UNIVERSIDAD NACIONAL DE INGENIERÍA – FACULTAD DE INGENIERÍA MECÁNICA
ANÁLISIS Y CONTROL DE ROBOTS
MANIPULADOR DE 2GDL – INFORME Nº2

% -------------------------------------------------------------------------
% DATOS EXPERIMENTALES MEDIDOS POR PRUEBAS DE LABORATORIO
% -------------------------------------------------------------------------
B = 3.9718*1e-9;
J = 3.97126*1e-6;
K = 0.009205116;
L = 0.044168273501892;
R = 2.830;

Luego se abre el archivo simulink: simulink_motor_model.slx [1].

Figura 8. Script en simulink para identificación de motores DC

Luego se entra en estimación de parámetros.

Figura 9. Análisis por estimación de parámetros.

21
UNIVERSIDAD NACIONAL DE INGENIERÍA – FACULTAD DE INGENIERÍA MECÁNICA
ANÁLISIS Y CONTROL DE ROBOTS
MANIPULADOR DE 2GDL – INFORME Nº2

Figura 10. Variables con sus calores iniciales que intervienen en la estimación
de la respuesta de la planta.

Figura 11. Limitación de los rangos de estimación de las variables, las variables
deben de ser mayores a cero.

22
UNIVERSIDAD NACIONAL DE INGENIERÍA – FACULTAD DE INGENIERÍA MECÁNICA
ANÁLISIS Y CONTROL DE ROBOTS
MANIPULADOR DE 2GDL – INFORME Nº2

Figura 12. Carga de los datos experimentales.

Figura 13. En la imagen central superior: respuesta experimental de la planta


(azul) y respuesta estimada con los parámetro iniciales (anaranjado); mientras
en la imagen central inferior se tiene la señal de entrada expresada en voltios
(azul).

23
UNIVERSIDAD NACIONAL DE INGENIERÍA – FACULTAD DE INGENIERÍA MECÁNICA
ANÁLISIS Y CONTROL DE ROBOTS
MANIPULADOR DE 2GDL – INFORME Nº2

Figura 14. En la imagen central superior se aprecia como coinciden la respuesta


estimada con la respuesta experimental, mientras en la imagen derecha se
puede apreciar la evaluación de los parámetros en cada iteración.

De donde se obtiene las siguientes estimaciones:

 B = 3.6921e-09
 J = 3.5671e-06
 K = 0.01075
 L = 0.034898
 R = 2.5344
Tomando la planta como primer orden nos da:
𝑤(𝑠) 𝟗. 𝟎𝟔
=
𝑉(𝑠) 𝒔 + 𝟏𝟐. 𝟕𝟖
Y como Segundo orden:
𝑤(𝑠) 𝟔𝟓𝟖
= 𝟐
𝑉(𝑠) 𝒔 + 𝟕𝟐. 𝟔𝟐 𝒔 + 𝟗𝟐𝟖. 𝟒

24
UNIVERSIDAD NACIONAL DE INGENIERÍA – FACULTAD DE INGENIERÍA MECÁNICA
ANÁLISIS Y CONTROL DE ROBOTS
MANIPULADOR DE 2GDL – INFORME Nº2

25
UNIVERSIDAD NACIONAL DE INGENIERÍA – FACULTAD DE INGENIERÍA MECÁNICA
ANÁLISIS Y CONTROL DE ROBOTS
MANIPULADOR DE 2GDL – INFORME Nº2

Figura 15. Respuestas de las plantas identificadas ante un escalón unitario.

5. SIMULACIONES A LAZO ABIERTO BASADO EN LOS VOLTAJES

26
UNIVERSIDAD NACIONAL DE INGENIERÍA – FACULTAD DE INGENIERÍA MECÁNICA
ANÁLISIS Y CONTROL DE ROBOTS
MANIPULADOR DE 2GDL – INFORME Nº2

5.1. SIMULACIÓN SEGÚN SPONG

Figura 16. Simulink para el cálculo de ángulos (q1 y q2) a partir de Voltajes.

Figura 17. Posición de q1 (amarillo) y q2 (azul) para voltaje 1 de 3.3 V y voltaje 2


de -1.15V

27
UNIVERSIDAD NACIONAL DE INGENIERÍA – FACULTAD DE INGENIERÍA MECÁNICA
ANÁLISIS Y CONTROL DE ROBOTS
MANIPULADOR DE 2GDL – INFORME Nº2

Figura 18. Aceleración y velocidad( q1 es amarillo y q2 es azul) para voltaje 1 de


3.3 V y voltaje 2 de -1.15V

En Matlab:

28
UNIVERSIDAD NACIONAL DE INGENIERÍA – FACULTAD DE INGENIERÍA MECÁNICA
ANÁLISIS Y CONTROL DE ROBOTS
MANIPULADOR DE 2GDL – INFORME Nº2

29
UNIVERSIDAD NACIONAL DE INGENIERÍA – FACULTAD DE INGENIERÍA MECÁNICA
ANÁLISIS Y CONTROL DE ROBOTS
MANIPULADOR DE 2GDL – INFORME Nº2

5.2. SIMULACIÓN SEGÚN SICILIANO

Figura 19. Simulink para el cálculo de ángulos (q1 y q2) a partir de Voltajes.

30
UNIVERSIDAD NACIONAL DE INGENIERÍA – FACULTAD DE INGENIERÍA MECÁNICA
ANÁLISIS Y CONTROL DE ROBOTS
MANIPULADOR DE 2GDL – INFORME Nº2

5.3. SIMULACIÓN SEGÚN SPONG

Figura 20. Posición de q1 (amarillo) y q2 (azul) para voltaje 1 de 3.3 V y voltaje 2


de -1.15V

Figura 21. Aceleración y velocidad( q1 es amarillo y q2 es azul) para voltaje 1 de


3.3 V y voltaje 2 de -1.15V

31
UNIVERSIDAD NACIONAL DE INGENIERÍA – FACULTAD DE INGENIERÍA MECÁNICA
ANÁLISIS Y CONTROL DE ROBOTS
MANIPULADOR DE 2GDL – INFORME Nº2

En Matlab:

32
UNIVERSIDAD NACIONAL DE INGENIERÍA – FACULTAD DE INGENIERÍA MECÁNICA
ANÁLISIS Y CONTROL DE ROBOTS
MANIPULADOR DE 2GDL – INFORME Nº2

6. ESTRUCUTRA MECANICA

33
UNIVERSIDAD NACIONAL DE INGENIERÍA – FACULTAD DE INGENIERÍA MECÁNICA
ANÁLISIS Y CONTROL DE ROBOTS
MANIPULADOR DE 2GDL – INFORME Nº2

7. ELECTRONICA

Figura 22. Conexión del driver VNH5019.

8. LECTURA DE VELOCIDAD DE LOS MOTORES


/* LECTURA DE VELOCIDAD PARA: 131.25:1 Metal Gearmotor 37Dx73L 64CPR
* Red -> Motor Power +
* Black -> Motor Power -
* Green -> Encoder GND
* Blue -> Ecncoder Vcc (3.5 - 20V)
* Yellow -> Encoder A
* White -> Encoder B
*/

#include <Encoder.h>
#define pi acos(-1)

#define LED_STATUS 13
#define myEncMo1A 5
#define myEncMo1B 6
#define M1_INA 7
#define M1_INB 8
#define M1_PWM 9

Encoder myEncMo1(myEncMo1A,myEncMo1B); // Definir pines del encoder

volatile unsigned long long t, t_ant = 0;


int tt = 0;
int T = 10; // Periodo de muestreo (ms)
long pos1 = 0; // Posicion del motor 1
float pos1_rad=0;
long posAnt1 = 0;
float vel1 = 0, vel1_RPM = 0, vel1_rad = 0;
int pwm01Val = 0;

void setup() {
pinMode(LED_STATUS,OUTPUT);
Serial.begin(9600);
pinMode(M1_INA,OUTPUT);
pinMode(M1_INB,OUTPUT);
pinMode(M1_PWM,OUTPUT);
digitalWrite(M1_INA,HIGH); // Alimentacion del encoder (Blue)
digitalWrite(M1_INB,LOW); // Tierra del encoder (Green)
analogWrite(M1_PWM,pwm01Val);
// FRECUENCIA Y RESOLUCION DEL PWM
analogWriteFrequency(M1_PWM, 10000); // 488.28 Hz por defecto
analogWriteResolution(10); // 8 bits por defecto
delay(1000);
digitalWrite(LED_STATUS,HIGH);
}

34
UNIVERSIDAD NACIONAL DE INGENIERÍA – FACULTAD DE INGENIERÍA MECÁNICA
ANÁLISIS Y CONTROL DE ROBOTS
MANIPULADOR DE 2GDL – INFORME Nº2

void loop() {
if(Serial.available()){
char buffer[10];
Serial.readBytesUntil('\n', buffer, 10);
pwm01Val = atoi(buffer);
if(pwm01Val>0){
digitalWrite(M1_INB,LOW); // Alimentacion del encoder (Blue)
digitalWrite(M1_INA,HIGH); // Tierra del encoder (Green)
}
else{
digitalWrite(M1_INA,LOW); // Alimentacion del encoder (Blue)
digitalWrite(M1_INB,HIGH); // Tierra del encoder (Green)

}
analogWrite(M1_PWM,abs(pwm01Val));
}

t = millis();
if((t - t_ant) >= T){
t_ant = t;
tt=t;
pos1 = myEncMo1.read();
pos1_rad = pos1/ 8400.0 * 2 * pi;
vel1_rad = (pos1 - posAnt1)/ 8400.0 * 2 * pi *1000.0 / T; // rad/s
vel1_RPM = (pos1 - posAnt1)/ 8400.0 * 1000.0 / T * 60; // RPM
Serial.print(tt);
Serial.print("\t");
Serial.print(pwm01Val*12/1023);
Serial.print("\t");
Serial.print(pos1);
Serial.print("\t");
Serial.print(pos1_rad);
Serial.print("\t");
Serial.print(pos1-posAnt1);
Serial.print("\t");
Serial.print(vel1_rad);
Serial.print("\t");
Serial.println(vel1_RPM);

//Serial.println(vel1);
posAnt1 = pos1;
}

𝑡(𝑚𝑠) | 𝑢(𝑉) | 𝑞(𝑝𝑢𝑙𝑠𝑜𝑠) | 𝑞(𝑟𝑎𝑑) | 𝑑𝑞(𝑝𝑢𝑙𝑠𝑜𝑠/10𝑚𝑠) | 𝑑𝑞(𝑟𝑎𝑑/𝑠) | 𝑑𝑞(𝑅𝑃𝑀)

35
UNIVERSIDAD NACIONAL DE INGENIERÍA – FACULTAD DE INGENIERÍA MECÁNICA
ANÁLISIS Y CONTROL DE ROBOTS
MANIPULADOR DE 2GDL – INFORME Nº2

36
UNIVERSIDAD NACIONAL DE INGENIERÍA – FACULTAD DE INGENIERÍA MECÁNICA
ANÁLISIS Y CONTROL DE ROBOTS
MANIPULADOR DE 2GDL – INFORME Nº2

9. CONTROL PD DE LOS MOTORES

CONTROL PD PARA DINÁMICA SIN MOTORES

Parámetros Kp: Parámetros Kd:

37
UNIVERSIDAD NACIONAL DE INGENIERÍA – FACULTAD DE INGENIERÍA MECÁNICA
ANÁLISIS Y CONTROL DE ROBOTS
MANIPULADOR DE 2GDL – INFORME Nº2

MOTOR 1 (AMARILLO) Y MOTOR 2 (AZUL)


Posición:

Error:

38
UNIVERSIDAD NACIONAL DE INGENIERÍA – FACULTAD DE INGENIERÍA MECÁNICA
ANÁLISIS Y CONTROL DE ROBOTS
MANIPULADOR DE 2GDL – INFORME Nº2

Voltaje:

Torque:

39
UNIVERSIDAD NACIONAL DE INGENIERÍA – FACULTAD DE INGENIERÍA MECÁNICA
ANÁLISIS Y CONTROL DE ROBOTS
MANIPULADOR DE 2GDL – INFORME Nº2

Velocidad y aceleración:

40
UNIVERSIDAD NACIONAL DE INGENIERÍA – FACULTAD DE INGENIERÍA MECÁNICA
ANÁLISIS Y CONTROL DE ROBOTS
MANIPULADOR DE 2GDL – INFORME Nº2

CONTROL PD PARA DINÁMICA CON MOTORES

Parámetros Kp: Parámetros Kd:

MOTOR 1 (AMARILLO) Y MOTOR 2 (AZUL)


Posición:

41
UNIVERSIDAD NACIONAL DE INGENIERÍA – FACULTAD DE INGENIERÍA MECÁNICA
ANÁLISIS Y CONTROL DE ROBOTS
MANIPULADOR DE 2GDL – INFORME Nº2

Error:

Voltaje:

42
UNIVERSIDAD NACIONAL DE INGENIERÍA – FACULTAD DE INGENIERÍA MECÁNICA
ANÁLISIS Y CONTROL DE ROBOTS
MANIPULADOR DE 2GDL – INFORME Nº2

Velocidad y aceleración:

10. ANÁLISIS DEL DRIVER


Para el análisis del driver se hará uso del microcontrolador Teensy 3.5, que cuenta con
un procesador ARM Cortex-M4 de 32 bits a 120 MHz con unidad de punto flotante.
Todos los pines digitales son tolerantes a 5 voltios.
Además de permitir el cambio de frecuencia, ancho de pulso (valor de PWM) y
resolución según la siguiente tabla:
Tabla 6. Valores de frecuencia y resolución según el modelo de teensy. [2]

Ideal Ideal
Ideal Ideal
Frequency Frequency
Resolution PWM Frequency Frequency
Board CPU Speed: CPU Speed:
(# of bits) Value CPU Speed: CPU Speed:
180 or 120 48 or 96
72 MHz 24 MHz
MHz MHz

Teensy 3.6 0-
16 915.527 Hz 732.4218 Hz 549.3164 Hz 366.2109 Hz
except pins 65535
16-17 0-
15 1831.055 Hz 1464.843 Hz 1098.632 Hz 732.421 Hz
32767

43
UNIVERSIDAD NACIONAL DE INGENIERÍA – FACULTAD DE INGENIERÍA MECÁNICA
ANÁLISIS Y CONTROL DE ROBOTS
MANIPULADOR DE 2GDL – INFORME Nº2

Teensy 3.5 0-
14 3662.109 Hz 2929.687 Hz 2197.265 Hz 1464.843 Hz
16383
Teensy 3.2
13 0 - 8191 7324.219 Hz 5859.375 Hz 4394.531 Hz 2929.687 Hz
Teensy 3.1 14648.437
12 0 - 4095 11718.75 Hz 8789.062 Hz 5859.375 Hz
Hz
Teensy 3.0 29296.875
11 0 - 2047 23437.5 Hz 17578.12 Hz 11718.75 Hz
Hz
10 0 - 1023 58593.75 Hz 46875 Hz 35156.25 Hz 23437.5 Hz
9 0 - 511 117187.5 Hz 93750 Hz 70312.5 Hz 46875 Hz
8 0 - 255 234375 Hz 187500 Hz 140625 Hz 93750 Hz
7 0 - 127 468750 Hz 375000 Hz 281250 Hz 187500 Hz
6 0 - 63 937500 Hz 750000 Hz 562500 Hz 375000 Hz
5 0 - 31 1875000 Hz 1500000 Hz 1125000 Hz 750000 Hz
4 0 - 15 3750000 Hz 3000000 Hz 2250000 Hz 1500000 Hz
3 0-7 7500000 Hz 6000000 Hz 4500000 Hz 3000000 Hz
2 0-3 15000000 Hz 12000000 Hz 9000000 Hz 6000000 Hz
0-
16 - 732.4218 Hz - 732.4218 Hz
65535
0-
15 - 1464.843 Hz - 1464.843 Hz
32767
0-
14 - 2929.687 Hz - 2929.687 Hz
16383
13 0 - 8191 - 5859.375 Hz - 5859.375 Hz
12 0 - 4095 - 11718.75 Hz - 11718.75 Hz
11 0 - 2047 - 23437.5 Hz - 23437.5 Hz
Teensy LC 10 0 - 1023 - 46875 Hz - 46875 Hz
9 0 - 511 - 93750 Hz - 93750 Hz
8 0 - 255 - 187500 Hz - 187500 Hz
7 0 - 127 - 375000 Hz - 375000 Hz
6 0 - 63 - 750000 Hz - 750000 Hz
5 0 - 31 - 1500000 Hz - 1500000 Hz
4 0 - 15 - 3000000 Hz - 3000000 Hz
3 0-7 - 6000000 Hz - 6000000 Hz
2 0-3 - 12000000 Hz - 12000000 Hz

Se comparan los drivers L298 [3] el Pololu Dual VNH5019 Motor Driver Shield for
Arduino [4] según las conexiones:

44
UNIVERSIDAD NACIONAL DE INGENIERÍA – FACULTAD DE INGENIERÍA MECÁNICA
ANÁLISIS Y CONTROL DE ROBOTS
MANIPULADOR DE 2GDL – INFORME Nº2

Figura 23. Conexión del driver L298.

Figura 24. Conexión física del driver L298.

45
UNIVERSIDAD NACIONAL DE INGENIERÍA – FACULTAD DE INGENIERÍA MECÁNICA
ANÁLISIS Y CONTROL DE ROBOTS
MANIPULADOR DE 2GDL – INFORME Nº2

Figura 25. Conexión del driver VNH5019.

Figura 26. Conexión física del driver VNH5019.

El teensy será programado usando la plataforma IDE Arduino según sea el caso para
manipular el driver L298.

46
UNIVERSIDAD NACIONAL DE INGENIERÍA – FACULTAD DE INGENIERÍA MECÁNICA
ANÁLISIS Y CONTROL DE ROBOTS
MANIPULADOR DE 2GDL – INFORME Nº2

#define DEBUG(a) Serial.println(a)


#define LED_STATUS 13
#define PWM_02 2
#define IN1 11
#define IN2 12

void setup()
{
pinMode(LED_STATUS,OUTPUT);
digitalWrite(LED_STATUS,HIGH);
Serial.begin(9600);
Serial.setTimeout(10);
// Direccion de giro del motor
pinMode(IN1,OUTPUT);
pinMode(IN2,OUTPUT);
digitalWrite(IN1,LOW);
digitalWrite(IN2,HIGH);
// Frecuencia del PWM
analogWriteFrequency(PWM_02, 1000); // 488.28 Hz por defecto
// Resolución del PWM
analogWriteResolution(8); // 8 bits por defecto
delay(1000);
digitalWrite(LED_STATUS,LOW);

void loop()
{
if (Serial.available())
{
char buffer[7];
Serial.readBytesUntil('\n', buffer, 7);
int data = atoi(buffer);
DEBUG("PWM SELECCIONADO");
DEBUG(data);
analogWrite(PWM_02,data);

}
digitalWrite(LED_STATUS, !digitalRead(LED_STATUS));
delay(100);
}

O manejar el driver VNH5019

47
UNIVERSIDAD NACIONAL DE INGENIERÍA – FACULTAD DE INGENIERÍA MECÁNICA
ANÁLISIS Y CONTROL DE ROBOTS
MANIPULADOR DE 2GDL – INFORME Nº2

#define DEBUG(a) Serial.println(a)


#define LED_STATUS 13
#define M1_INB 25
#define M1_INA 26
#define M1_PWM 3

void setup()
{
pinMode(LED_STATUS,OUTPUT);
digitalWrite(LED_STATUS,HIGH);
Serial.begin(9600);
// DIRECCION DE GIRO DEL MOTOR
pinMode(M1_INA,OUTPUT);
pinMode(M1_INB,OUTPUT);
digitalWrite(M1_INA,LOW);
digitalWrite(M1_INB,HIGH);
// FRECUENCIA Y RESOLUCION DEL PWM
analogWriteFrequency(M1_PWM, 1000); // 488.28 Hz por defecto
// RESOLUCION DEL PWM
analogWriteResolution(8); // 8 bits por defecto
delay(1000);
digitalWrite(LED_STATUS,LOW);

void loop()
{
if (Serial.available())
{
char buffer[7];
Serial.readBytesUntil('\n', buffer, 7);
int data = atoi(buffer);
if(data>255){
data=255;
}
DEBUG("PWM SELECCIONADO");
DEBUG(data);
analogWrite(M1_PWM,data);

}
digitalWrite(LED_STATUS, !digitalRead(LED_STATUS));
delay(100);
}

Ambos códigos realizan el cambio de valor de PWM mediante el uso de comunicación


serial (USB) entre la computadora (IDE ARDUINO) y el teensy 3.5.

48
UNIVERSIDAD NACIONAL DE INGENIERÍA – FACULTAD DE INGENIERÍA MECÁNICA
ANÁLISIS Y CONTROL DE ROBOTS
MANIPULADOR DE 2GDL – INFORME Nº2

Los datos experimentales se encuentran en la Tabla 7, Tabla 8, Tabla 9, Tabla 10,


Tabla 11, Tabla 12, Tabla 13 y Tabla 14
Tabla 7. Respuesta del L298 a 488.28 Hz y 8 bits de resolución.

PWM Vteensy Vdriver Vfuente


0 0.00 0.00 9.05
25 0.31 4.28 9.05
50 0.64 5.10
75 0.96 5.91
100 1.28 6.46 9.00
125 1.61 7.26
150 1.93 7.73
175 2.26 8.17 8.92
200 2.58 8.49
225 2.90 8.66
255 3.29 8.68 8.80
225 2.90 8.68
200 2.58 8.51
175 2.26 8.23 8.90
150 1.93 7.81
125 1.61 7.35
100 1.28 6.81 8.98
75 0.96 6.16
50 0.64 5.44
25 0.31 4.76 9.06
0 0.00 0.00 9.06

Respuesta del L298


10.00
9.00
8.00
7.00
Tensión (V)

6.00
5.00
4.00
3.00
2.00
1.00
0.00
0 50 100 150 200 250 300
Valor de PWM

Vdriver Vteensy

49
UNIVERSIDAD NACIONAL DE INGENIERÍA – FACULTAD DE INGENIERÍA MECÁNICA
ANÁLISIS Y CONTROL DE ROBOTS
MANIPULADOR DE 2GDL – INFORME Nº2

Figura 27. Respuesta del L298 a 488.28 Hz y 8 bits de resolución.

Tabla 8. Respuesta del L298 a 1 kHz y 8 bits de resolución.

PWM Vteensy Vdriver Vfuente


0 0.00 0.00 9.08
25 0.32 6.41 9.06
50 0.64 6.98
75 0.96 7.40
100 1.28 7.75 8.99
125 1.61 8.09
150 1.93 8.35
175 2.26 8.54 8.92
200 2.58 8.67
225 2.90 8.73
255 3.29 8.69 8.82
225 2.90 8.73
200 2.58 8.68
175 2.26 8.55 8.91
150 1.93 8.35
125 1.61 8.10
100 1.28 7.77 8.99
75 0.96 7.36
50 0.64 6.92
25 0.31 6.42 9.06
0 0.00 0.00 9.09

50
UNIVERSIDAD NACIONAL DE INGENIERÍA – FACULTAD DE INGENIERÍA MECÁNICA
ANÁLISIS Y CONTROL DE ROBOTS
MANIPULADOR DE 2GDL – INFORME Nº2

Respuesta del L298


10.00

9.00

8.00

7.00

6.00
Tensión (V)

5.00

4.00

3.00

2.00

1.00

0.00
0 50 100 150 200 250 300
Valor de PWM

Vdriver Vteensy

Figura 28. Respuesta del L298 a 1 kHz y 8 bits de resolución.

Tabla 9. Respuesta del L298 a 10 kHz y 8 bits de resolución.

PWM Vtenssy Vdriver Vfuente


0 0.00 0.00 0.00
25 0.32 6.57 - 8.54 0.00

Tabla 10. Respuesta del L298 a 20 kHz y 8 bits de resolución.

PWM Vtenssy Vdriver Vfuente


0 0.00 0.00 0.00
1 0.01 6.57 - 5.54 0.00

Tabla 11. Respuesta del VNH5019 a 488.28 Hz y 8 bits de resolución.

PWM Vteensy Vdriver Vfuente


0 0.00 0.00 9.00
25 0.32 0.86 9.01
50 0.65 1.75
75 0.97 2.62
100 1.30 3.50 8.98

51
UNIVERSIDAD NACIONAL DE INGENIERÍA – FACULTAD DE INGENIERÍA MECÁNICA
ANÁLISIS Y CONTROL DE ROBOTS
MANIPULADOR DE 2GDL – INFORME Nº2

125 1.62 4.37


150 1.94 5.25
175 2.27 6.11 8.98
200 2.59 6.99
225 2.91 7.88
255 3.30 8.90 8.95
225 2.91 7.85
200 2.59 6.98
175 2.27 6.11 8.95
150 1.94 5.24
125 1.62 4.37
100 1.30 3.50 8.96
75 0.97 2.60
50 0.65 1.73
25 0.33 0.86 8.94
0 0.00 0.00 8.94

Respuesta del VNH5019


10.00
9.00
8.00
7.00
6.00
Tensión (V)

5.00
4.00
3.00
2.00
1.00
0.00
0 50 100 150 200 250 300
Valor de PWM

Vdriver Vteensy

Figura 29. Respuesta del VNH5019 a 488.28 Hz y 8 bits de resolución

Tabla 12. Respuesta del VNH5019 a 1 kHz y 8 bits de resolución.

PWM Vteensy Vdriver Vfuente


0 0.00 0.00 8.90
25 0.32 0.85 8.89
50 0.65 1.72
75 0.97 2.58

52
UNIVERSIDAD NACIONAL DE INGENIERÍA – FACULTAD DE INGENIERÍA MECÁNICA
ANÁLISIS Y CONTROL DE ROBOTS
MANIPULADOR DE 2GDL – INFORME Nº2

100 1.30 3.45 8.87


125 1.62 4.31
150 1.94 5.17
175 2.27 6.04 8.85
200 2.59 6.90
225 2.91 7.77
255 3.30 8.83 8.86
225 2.91 7.80
200 2.59 6.95
175 2.27 6.07 8.90
150 1.94 5.22
125 1.62 4.34
100 1.30 3.47 8.93
75 0.97 2.60
50 0.65 1.73
25 0.33 0.85 8.94
0 0.00 0.00 8.94

Respuesta del VNH5019


10.00

9.00

8.00

7.00

6.00
Tensión (V)

5.00

4.00

3.00

2.00

1.00

0.00
0 50 100 150 200 250 300
Valor de PWM

Vdriver Vteensy

Figura 30. Respuesta del VNH5019 a 1 kHz y 8 bits de resolución.

Tabla 13. Respuesta del VNH5019 a 20k Hz y 8 bits de resolución.

PWM Vteensy Vdriver Vfuente


0 0.00 0.00 8.92
25 0.32 0.49 8.98

53
UNIVERSIDAD NACIONAL DE INGENIERÍA – FACULTAD DE INGENIERÍA MECÁNICA
ANÁLISIS Y CONTROL DE ROBOTS
MANIPULADOR DE 2GDL – INFORME Nº2

50 0.65 1.55
75 0.97 2.42
100 1.29 3.29 8.87
125 1.62 4.16
150 1.94 5.02
175 2.27 5.88 8.87
200 2.59 6.76
225 2.91 7.63
255 3.30 8.86 8.85
225 2.91 7.63
200 2.59 6.74
175 2.27 5.90 8.87
150 1.94 5.03
125 1.62 4.16
100 1.30 3.30 8.89
75 0.97 2.43
50 0.65 1.56
25 0.33 0.49 8.89
0 0.00 0.00 8.94

Respuesta del VNH5019


10.00

9.00

8.00

7.00

6.00
Tensión (V)

5.00

4.00

3.00

2.00

1.00

0.00
0 50 100 150 200 250 300
Valor de PWM

Vdriver Vteensy

Figura 31. Respuesta del VNH5019 a 20k Hz y 8 bits de resolución.

54
UNIVERSIDAD NACIONAL DE INGENIERÍA – FACULTAD DE INGENIERÍA MECÁNICA
ANÁLISIS Y CONTROL DE ROBOTS
MANIPULADOR DE 2GDL – INFORME Nº2

Tabla 14. Respuesta del VNH5019 a 20kHz y 11 bits de resolución.

PWM Vteensy Vdriver Vfuente


0 0.00 0.00 9.05
25 0.04 0.00 9.05
50 0.08 0.00 9.06
75 0.12 0.00 9.06
100 0.16 0.00 9.07
125 0.20 0.00 9.08
150 0.24 0.00 9.08
175 0.28 0.07 9.08
200 0.32 0.50 9.08
400 0.65 1.59 9.08
600 0.97 2.48 9.08
800 1.29 3.36 9.07
1000 1.62 4.24 9.06
1200 1.94 5.12 9.05
1400 2.27 6.00 9.03
1600 2.59 6.87 9.04
1800 2.91 7.77 9.03
2047 3.31 9.02 9.03

55
UNIVERSIDAD NACIONAL DE INGENIERÍA – FACULTAD DE INGENIERÍA MECÁNICA
ANÁLISIS Y CONTROL DE ROBOTS
MANIPULADOR DE 2GDL – INFORME Nº2

Respuesta del VNH5019


10.00

9.00

8.00

7.00

6.00
Tensión (V)

5.00

4.00

3.00

2.00

1.00

0.00
0 500 1000 1500 2000 2500
Valor de PWM

Vdriver Vteensy

Figura 32. Respuesta del VNH5019 a 20kHz y 11 bits de resolución.

56
UNIVERSIDAD NACIONAL DE INGENIERÍA – FACULTAD DE INGENIERÍA MECÁNICA
ANÁLISIS Y CONTROL DE ROBOTS
MANIPULADOR DE 2GDL – INFORME Nº2

Tabla 15.Respusta del L298 a 200 Hz y 8 bits de resolución con fuente lineal

PWM Vteensy Vdriver_PWM_ENA Vfuente Vdriver_PWM_IN1


0 0.00 0.01 9.00 0.00
25 0.32 2.80 9.00 0.85
50 0.65 3.74 9.00 1.73
75 0.97 4.62 9.00 2.60
100 1.30 5.46 9.00 3.47
125 1.62 6.29 9.00 4.34
150 1.94 7.05 9.00 5.22
175 2.27 7.73 9.00 6.09
200 2.59 8.30 9.00 6.96
225 2.91 8.72 9.00 7.84
255 3.30 8.90 9.00 8.88
225 2.91 8.72 9.00 7.83
200 2.59 8.30 9.00 6.96
175 2.27 7.72 9.00 6.09
150 1.94 7.04 9.00 5.22
125 1.62 6.28 9.00 4.34
100 1.30 5.45 9.00 3.47
75 0.97 4.63 9.00 2.60
50 0.65 3.76 9.00 1.73
25 0.33 2.85 9.00 0.87
0 0.00 0.01 9.00 0.00

57
UNIVERSIDAD NACIONAL DE INGENIERÍA – FACULTAD DE INGENIERÍA MECÁNICA
ANÁLISIS Y CONTROL DE ROBOTS
MANIPULADOR DE 2GDL – INFORME Nº2

Respuesta del L298


10.00

9.00

8.00

7.00

6.00
Tensión (V)

5.00

4.00

3.00

2.00

1.00

0.00
0 50 100 150 200 250 300
Valor de PWM

Vdriver_PWM_ENA Vteensy Vdriver_PWM_IN1

Figura 33. Respuesta del L298 a 200 Hz y 8 bits de resolución con fuente lineal.

Tabla 16. Respusta del L298 a 20 kHz y 8 bits de resolución con fuente lineal

PWM Vteensy Vdriver Vfuente Vdriver_PWM_IN1


0 0.00 0.00 9.00 0.00
25 0.32 9.05 9.00 1.52
50 0.65 9.06 9.00 2.39
75 0.97 9.07 9.00 3.25
100 1.30 9.00 4.12
125 1.62 9.00 5.00
150 1.94 9.00 5.88
175 2.27 9.00 6.75
200 2.59 9.00 7.63
225 2.91 9.00 8.54
255 3.30 9.00 8.92
225 2.91 9.00 8.54
200 2.59 9.00 7.63
175 2.27 9.00 6.75
150 1.94 9.00 5.88
125 1.62 9.00 4.99
100 1.30 9.00 4.12
75 0.97 9.00 3.25
50 0.65 9.00 2.39
25 0.33 9.00 1.52
0 0.00 9.00 0.00

58
UNIVERSIDAD NACIONAL DE INGENIERÍA – FACULTAD DE INGENIERÍA MECÁNICA
ANÁLISIS Y CONTROL DE ROBOTS
MANIPULADOR DE 2GDL – INFORME Nº2

Respuesta del L298


10.00

9.00

8.00

7.00

6.00
Tensión (V)

5.00

4.00

3.00

2.00

1.00

0.00
0 50 100 150 200 250 300
Valor de PWM

Vdriver Vteensy Vdriver_PWM_IN1

Figura 34. Respuesta del L298 a 20 kKHz y 8 bits de resolución con fuente lineal.

Tabla 17. Respusta del L298 a 200 Hz y 8 bits de resolución con fuente lineal

PWM Vteensy Vdriver Vfuente


0 0.00 0.00 9.00
25 0.32 1.43 9.00
50 0.65 2.33 9.00
75 0.97 3.22 9.00
100 1.30 4.06 9.00
125 1.62 4.93 9.00
150 1.94 5.80 9.00
175 2.27 6.68 9.00
200 2.59 7.52 9.00
225 2.91 8.31 9.00
255 3.30 8.91 9.00
225 2.91 8.31 9.00
200 2.59 7.52 9.00
175 2.27 6.67 9.00
150 1.94 5.82 9.00
125 1.62 4.96 9.00
100 1.30 4.10 9.00
75 0.97 3.21 9.00

59
UNIVERSIDAD NACIONAL DE INGENIERÍA – FACULTAD DE INGENIERÍA MECÁNICA
ANÁLISIS Y CONTROL DE ROBOTS
MANIPULADOR DE 2GDL – INFORME Nº2

50 0.65 2.33 9.00


25 0.33 1.42 9.00
0 0.00 0.00 9.00

Respuesta del L298


10.00

9.00

8.00

7.00

6.00
Tensión (V)

5.00

4.00

3.00

2.00

1.00

0.00
0 50 100 150 200 250 300
Valor de PWM

Vdriver Vteensy

Figura 35. Respuesta del L298 a 50 kHz y 8 bits de resolución con fuente lineal.

10.1. FRECUENCIA DEL PWM


Como se aprecia en la Tabla 7 (488.28 Hz) y la Tabla 8 (1 kHz) el L298 no presenta
linealidad y en el caso de la Tabla 7 se aprecia un ciclo de estéresis, en ambos casos
ocurre caída de tensión (.9.05V a 8.82V).
Para frecuencias de 10 kHz y 20 kHz el L298 no responde adecuadamente, oscilando
sus valores como se aprecia en la Tabla 9 y Tabla 10. Con esto se deduce el hecho de
los transistores no presentan un valor de conmutación superior a 1kHz.
En el caso del VNH5019 se aprecia un comportamiento lineal a 488.28 Hz y 1 kHz
(Figura 29 y Figura 30) mientras que para 20kHz se aprecia linealidad a partir de los
0.32VDC del PWM del teensy (Figura 31 y Figura 32). Con esto se deduce que el
VNH5019 a valores inferiores de 0.32VDC de PWM presenta un comportamiento no
lineal (ya que para los casos de 488.28 Hz y 1 kHz no se evaluaron a menor voltaje)
mientras que superior a este valor presenta un comportamiento lineal.

60
UNIVERSIDAD NACIONAL DE INGENIERÍA – FACULTAD DE INGENIERÍA MECÁNICA
ANÁLISIS Y CONTROL DE ROBOTS
MANIPULADOR DE 2GDL – INFORME Nº2

10.2. RESOLUCIÓN
Para este caso se compararon los casos de resolución de 8 bits y 11bits (Tabla 13 y
Tabla 14 respectivamente) a 20 kHz para ambos casos.
Al aumentar la resolución de 8 bits a 11 bits se aprecia tener una menor cantidad de
discretización del VDC del PWM permitiendo apreciar el efecto de no linealidad para
valores inferiores de 0.32 VDC de PWM.
También se permite apreciar la menor caída de tensión en la fuente de alimentación y
llegar a valores de tensión mas alto a la salida del driver (8.86 VDC a 9.03 VDC).

10.3. LINEALIDAD
Siguiendo lo explicado en las partes: Tabla 15.Respusta del L298 a 200 Hz y 8
bits de resolución con fuente lineal

PWM Vteensy Vdriver_PWM_ENA Vfuente Vdriver_PWM_IN1


0 0.00 0.01 9.00 0.00
25 0.32 2.80 9.00 0.85
50 0.65 3.74 9.00 1.73
75 0.97 4.62 9.00 2.60
100 1.30 5.46 9.00 3.47
125 1.62 6.29 9.00 4.34
150 1.94 7.05 9.00 5.22
175 2.27 7.73 9.00 6.09
200 2.59 8.30 9.00 6.96
225 2.91 8.72 9.00 7.84
255 3.30 8.90 9.00 8.88
225 2.91 8.72 9.00 7.83
200 2.59 8.30 9.00 6.96
175 2.27 7.72 9.00 6.09
150 1.94 7.04 9.00 5.22
125 1.62 6.28 9.00 4.34
100 1.30 5.45 9.00 3.47
75 0.97 4.63 9.00 2.60
50 0.65 3.76 9.00 1.73
25 0.33 2.85 9.00 0.87
0 0.00 0.01 9.00 0.00

61
UNIVERSIDAD NACIONAL DE INGENIERÍA – FACULTAD DE INGENIERÍA MECÁNICA
ANÁLISIS Y CONTROL DE ROBOTS
MANIPULADOR DE 2GDL – INFORME Nº2

Respuesta del L298


10.00

9.00

8.00

7.00

6.00
Tensión (V)

5.00

4.00

3.00

2.00

1.00

0.00
0 50 100 150 200 250 300
Valor de PWM

Vdriver_PWM_ENA Vteensy Vdriver_PWM_IN1

Figura 33. Respuesta del L298 a 200 Hz y 8 bits de resolución con fuente lineal.

Tabla 16. Respusta del L298 a 20 kHz y 8 bits de resolución con fuente lineal

PWM Vteensy Vdriver Vfuente Vdriver_PWM_IN1


0 0.00 0.00 9.00 0.00
25 0.32 9.05 9.00 1.52
50 0.65 9.06 9.00 2.39
75 0.97 9.07 9.00 3.25
100 1.30 9.00 4.12
125 1.62 9.00 5.00
150 1.94 9.00 5.88
175 2.27 9.00 6.75
200 2.59 9.00 7.63
225 2.91 9.00 8.54
255 3.30 9.00 8.92
225 2.91 9.00 8.54
200 2.59 9.00 7.63
175 2.27 9.00 6.75
150 1.94 9.00 5.88
125 1.62 9.00 4.99
100 1.30 9.00 4.12
75 0.97 9.00 3.25
50 0.65 9.00 2.39
25 0.33 9.00 1.52
0 0.00 9.00 0.00

62
UNIVERSIDAD NACIONAL DE INGENIERÍA – FACULTAD DE INGENIERÍA MECÁNICA
ANÁLISIS Y CONTROL DE ROBOTS
MANIPULADOR DE 2GDL – INFORME Nº2

Respuesta del L298


10.00

9.00

8.00

7.00

6.00
Tensión (V)

5.00

4.00

3.00

2.00

1.00

0.00
0 50 100 150 200 250 300
Valor de PWM

Vdriver Vteensy Vdriver_PWM_IN1

Figura 34. Respuesta del L298 a 20 kKHz y 8 bits de resolución con fuente lineal.

Tabla 17. Respusta del L298 a 200 Hz y 8 bits de resolución con fuente lineal

PWM Vteensy Vdriver Vfuente


0 0.00 0.00 9.00
25 0.32 1.43 9.00
50 0.65 2.33 9.00
75 0.97 3.22 9.00
100 1.30 4.06 9.00
125 1.62 4.93 9.00
150 1.94 5.80 9.00
175 2.27 6.68 9.00
200 2.59 7.52 9.00
225 2.91 8.31 9.00
255 3.30 8.91 9.00
225 2.91 8.31 9.00
200 2.59 7.52 9.00
175 2.27 6.67 9.00
150 1.94 5.82 9.00
125 1.62 4.96 9.00
100 1.30 4.10 9.00
75 0.97 3.21 9.00

63
UNIVERSIDAD NACIONAL DE INGENIERÍA – FACULTAD DE INGENIERÍA MECÁNICA
ANÁLISIS Y CONTROL DE ROBOTS
MANIPULADOR DE 2GDL – INFORME Nº2

50 0.65 2.33 9.00


25 0.33 1.42 9.00
0 0.00 0.00 9.00

Respuesta del L298


10.00

9.00

8.00

7.00

6.00
Tensión (V)

5.00

4.00

3.00

2.00

1.00

0.00
0 50 100 150 200 250 300
Valor de PWM

Vdriver Vteensy

Figura 35. Respuesta del L298 a 50 kHz y 8 bits de resolución con fuente lineal.

FRECUENCIA DEL PWM y RESOLUCIÓN, el driver L298 no presenta linealidad


cuando se conecta el PWM al pin EN, pero si se comporta linealmente si se conecta al
PIN EN1 y al EN2 se le manda a tierra, mientras que el driver VNH5019 presenta
linealidad para valores superiores de 0.32 VDC de PWM.

64
UNIVERSIDAD NACIONAL DE INGENIERÍA – FACULTAD DE INGENIERÍA MECÁNICA
ANÁLISIS Y CONTROL DE ROBOTS
MANIPULADOR DE 2GDL – INFORME Nº2

11. BIBLIOGRAFÍA

[1 A. T. Koru, «Brushed DC Motor Identication with Simulink: Estimating Pololu Metal


] Gearmotor Parameters as an Example,» [En línea]. Available:
http://ahtakoru.com/brushed-dc-motor-identification-simulink-estimating-pololu-
metal-gearmotor-parameters-example/. [Último acceso: 30 junio 2019].

[2 PJRC Electronic Projects Components Available Worldwidde, «Pulsed Output:


] PWM & Tone,» [En línea]. Available: https://www.pjrc.com/teensy/td_pulse.html.
[Último acceso: 20 Mayo 2019].

[3 SPARKFUN, «Sparkfun: Datasheet L298N,» [En línea]. Available:


] https://www.sparkfun.com/datasheets/Robotics/L298_H_Bridge.pdf. [Último
acceso: 28 Abril 2019].

[4 POLOLU ROBOTICS & ELECTRONICS, «Pololu Dual VNH5019 Motor Driver


] Shield for Arduino,» [En línea]. Available: https://www.pololu.com/product/2507.
[Último acceso: 28 Abril 2019].

[5 SPARFUN, «Sparfun: Teensy 3.5,» [En línea]. Available:


] https://www.sparkfun.com/products/14055. [Último acceso: 28 Abril 2019].

[6 ARDUINO, «ARDUINO UNO,» [En línea]. Available:


] https://store.arduino.cc/usa/arduino-uno-rev3. [Último acceso: 28 Abril 2019].

[7 POLOLU ROBOTICS & ELECTRONICS, «131:1 Metal Gearmotor 37Dx73L mm


] with 64 CPR Encoder,» [En línea]. Available: https://www.pololu.com/product/2827.
[Último acceso: 28 Abril 2019].

[8 E. EMBAJADORES, «DRIVER 2 MOTORES CONTINUA 2A 30V - L298,» [En


] línea]. Available:
https://www.electronicaembajadores.com/es/Productos/Detalle/LCMM035/modulos
-electronicos/modulos-driver-controladores-de-motores/driver-2-motores-continua-
2a-30v-l298. [Último acceso: 28 Abril 2019].

[9 N. MECATHRONICS, «Driver Puente H L298N,» [En línea]. Available:


] https://naylampmechatronics.com/drivers/11-driver-puente-h-l298n.html. [Último
acceso: 28 Abril 2019].

65

S-ar putea să vă placă și