NÚMEROS DUALES Y DIFERENCIACIÓN AUTOMÁTICA PARA EL CÁLCULO NUMÉRICO DE VELOCIDADES Y ACELERACIONES EN EL MECANISMO ESFÉRICO 4R

  • Francisco Ramón Peñuñuri Anguiano Facultad de Ingeniería de la Universidad Autónoma de Yucatán
  • Ricardo Peón
  • Miguel Ángel Zambrano
  • Osvaldo Carvente
Palabras clave: Números duales, diferenciación automática, mecanismos

Resumen

El cálculo de velocidades y aceleraciones de los elementos que componen
a un mecanismo esférico 4R no es una tarea sencilla.
Obtener expresiones analíticas es prácticamente imposible, por lo que
se recurre al cálculo numérico de derivadas. Sin embargo, el método
tradicional de diferencias finitas para el cálculo de derivadas
introduce errores de truncamiento y de cancelación. Diferenciación
automática (DA) está exenta de los problemas mencionados y su
implementación usando números duales es simple y transparente. No
obstante esta simplicidad, su uso es prácticamente nulo en el área de
mecanismos. Este artículo muestra una implementación de DA mediante el
uso de números duales y su aplicación al cálculo de la velocidad y la
aceleración del punto acoplador en un mecanismo esférico 4R.

Citas

[1] J. Gallardo Alvarado, Análisis cinemáticos de orden superior de cadenas espaciales mediante el álgebra de
tornillos y sus aplicaciones, Tesis doctoral, Instituto Tecnológico de Laguna, México, 1999.

[2] C. R. Diez-Martı́nez, J. M. Rico, J. J. Cervantes-Sánchez, J. Gallardo, Mobility and connectivity in multiloop
linkages, in: J. Lennarčič, B. Roth (Eds.), Advances in Robot Kinematics, Springer Netherlands, Dordrecht,
2006, pp. 455–464.

[3] Rico M.J.M., Gallardo A.J, Acceleration Analysis, Via Screw Theory, and Characterization of Singularities of
Closed Chains, Springer Netherlands, Dordrecht, 1996, pp. 139–148. doi:10.1007/978-94-009-1718-7_14.

[4] J. López-Custodio, J. Rico, J. Cervantes-Sánchez, G. Pérez-Soto, C. Dı́ez-Martı́nez, Verification of the higher
order kinematic analyses equations, European Journal of Mechanics - A/Solids 61 (1) (2017) 198–215.

[5] J. Rico, J. Gallardo, J. Duffy, Screw theory and higher order kinematic analysis of open serial and closed chains,
Mechanism and Machine Theory 34 (4) (1999) 559–586.

[6] G. I. Pérez-Soto, C. Crane, J. M. Rico, J. J. Cervantes-Sánchez, M. A. González-Palacios, L. A. Gallardo-
Mosqueda, P. C. López-Custodio, M. A. Sánchez-Ruenes, A. Tadeo-Chávez, On the computer solutions of
kinematics analysis of linkages, Engineering with Computers 31 (1) (2015) 11–28.

[7] Sociedad Mexicana de Ingenierı́a Mecánica (Ed.), Análisis Cinemático de Mecanismos Esféricos, Memorias del
XV Congreso Internacional Anual de la SOMIM, Cd. Obregón Sonora, México, 2009.

[8] R. Norton, Design of Machinery, McGraw-Hill Higher Education, 2007.

[9] J. E. Holte, T. R. Chase, A. G. Erdman, Approximate velocities in mixed exact-approximate position synthesis
of planar mechanisms, Journal of Mechanical Design 123 (3) (2001) 388–394.

[10] ASME International Design Engineering Technical Conferences and Computers and Information in Engineering
Conference (Ed.), The Synthesis of Planar 4R Linkages with Three Task Positions and Two Specified Velocities,
Vol. 7, 29th Mechanisms and Robotics Conference, Parts A and B, Long Beach, California, USA, 2001.

[11] C. H. G. Urueña, C. A. D. Daza, D. A. G. Alvarado, Application of sizing design optimization to position and
velocity synthesis in four bar linkage, Revista Facultad de Ingenierı́a Universidad de Antioquı́a (47) (2009)
129–144.

[12] A. De-Juan, R. Sancibrian, P. Garcı́a, F. Viadero, M. Iglesias, A. Fernández, Kinematic synthesis for linkages
with velocity targets, Journal of Advanced Mechanical Design, Systems, and Manufacturing 6 (4) (2012) 472–
483.

[13] K. Russell, Q. Shen, Revisiting planar four-bar precision synthesis with finite and multiply-separated positions,
Journal of Advanced Mechanical Design, Systems, and Manufacturing 6 (7) (2012) 1273–1280.

[14] E. Phipps, R. Pawlowski, Efficient Expression Templates for Operator Overloading-BasedAutomatic Differen-
tiation, Springer Berlin Heidelberg, Berlin, Heidelberg, 2012, pp. 309–319.

[15] P. Pham-Quang, B. Delinchant, Java Automatic Differentiation Tool Using Virtual Operator Overloading,
Springer Berlin Heidelberg, Berlin, Heidelberg, 2012, pp. 241–250.

[16] J. Werner, M. Hillenbrand, A. Hoffmann, S. Sinzinger, Automatic differentiation in the optimization of imaging
optical systems, Schedae Informaticae 21 (2012) 169–175.

[17] L. Hascoet, V. Pascual, The tapenade automatic differentiation tool: Principles, model, and specification, ACM
Trans. Math. Softw. 39 (3) (2013) 20:1–20:43.

[18] S. F. Walter, L. Lehmann, Algorithmic differentiation in python with algopy, Journal of Computational Science
4 (5) (2013) 334 – 344.

[19] R. J. Hogan, Fast reverse-mode automatic differentiation using expression templates in C++, ACM Trans.
Math. Softw. 40 (4) (2014) 26:1–26:16.

[20] J. J. Moré, S. M. Wild, Do you trust derivatives or differences?, Journal of Computational Physics 273 (2014)
268 – 277.

[21] X. Li, D. Zhang, A backward automatic differentiation framework for reservoir simulation, Computational
Geosciences 18 (6) (2014) 1009–1022.

[22] K. A. Khan, P. I. Barton, A vector forward mode of automatic differentiation for generalized derivative eva-
luation, Optimization Methods and Software 30 (6) (2015) 1185–1212.

[23] U. Naumann, J. Lotz, K. Leppkes, M. Towara, Algorithmic differentiation of numerical methods: Tangent
and adjoint solvers for parameterized systems of nonlinear equations, ACM Trans. Math. Softw. 41 (4) (2015)
26:1–26:21.

[24] V. I. Zubov, Application of fast automatic differentiation for solving the inverse coefficient problem for the
heat equation, Computational Mathematics and Mathematical Physics 56 (10) (2016) 1743–1757.

[25] M. J. Weinstein, A. V. Rao, A source transformation via operator overloading method for the automatic
differentiation of mathematical functions in matlab, ACM Trans. Math. Softw. 42 (2) (2016) 11:1–11:44.

[26] E. I. Sluşanschi, V. Dumitrel, Adijac – automatic differentiation of java classfiles, ACM Trans. Math. Softw.
43 (2) (2016) 9:1–9:33.

[27] M. Bücker, G. Corliss, P. Hovland, U. Naumann, B. N. (Eds.), Automatic Differentiation: Applications, Theory,
and Implementations, Springer, New York, 2006.

[28] A. Griewank, Evaluating Derivatives, Principles and Techniques of Algorithmic Differentiation, Vol. 19 of
Frontiers in Applied Mathematics, SIAM, Portland, 2008.

[29] H. H. cheng, Programming with dual numbers and its applications in mechanisms design, Engineering with
Computers 10 (4) (1994) 212–229.

[30] J. A. Fike, J. J. Alonso (Eds.), The Development of Hyper-Dual Numbers for Exact Second-Derivative Calcu-
lations, Proceedings of the 49th AIAA Aerospace Sciences Meeting, Orlando FL, USA, 2011.

[31] W. Yu, M. Blair, DNAD, a simple tool for automatic differentiation of Fortran codes using dual numbers,
Computer Physics Communications 184 (2013) 1446–1452.

[32] J. Revels, M. Lubin, T. Papamarkou, Forward-mode automatic differentiation in julia, CoRR abs/1607.07892.
URL http://arxiv.org/abs/1607.07892

[33] O. Mendoza-Trejo, C. A. Cruz-Villar, R. Peón-Escalante, M. Zambrano-Arjona, F. Peñuñuri, Synthesis method
for the spherical 4R mechanism with minimum center of mass acceleration, Mechanism and Machine Theory
93 (2015) 53 – 64.

[34] R. Peón-Escalante, M. A. Zambrano-Arjona, O. Carvente, F. Peñuñuri, Implementación en Fortran de los
números duales, http://addn.frp707.esy.es/.
Publicado
2018-11-12
Sección
Artículos de Investigación