1
IMPLEMENTACIÓN DE UN DISPOSITIVO ELECTRÓNICO PARA LA MEDICIÓN DEL
MOVIMIENTO ARMÓNICO SIMPLE
OSCAR FERNANDO CAMARGO AMEZQUITA
TANIA CAROLINA BARRERA MOLINA
UNIVERSIDAD SANTO TOMÁS
FACULTAD DE INGENIERÍA ELECTRÓNICA
TUNJA
2016
2
IMPLEMENTACIÓN DE UN DISPOSITIVO ELECTRÓNICO PARA LA MEDICIÓN DEL
MOVIMIENTO ARMÓNICO SIMPLE
OSCAR FERNANDO CAMARGO AMEZQUITA
TANIA CAROLINA BARRERA MOLINA
Trabajo de grado para optar al título en Ingeniería Electrónica
Director
M.S. (C). Luis Fredy Sosa Quintero
M.S. (C). Camilo Ernesto Pardo Beainy
UNIVERSIDAD SANTO TOMÁS
FACULTAD DE INGENIERÍA ELECTRÓNICA
TUNJA
2016
3
Las ideas, contenidos y comentarios
expuestos en el presente documento
son responsabilidad plena
de los autores del mismo.
4
NOTA DE ACEPTACIÓN
________________________________________
________________________________________
________________________________________
________________________________________
________________________________________
________________________________________
______________________________
Firma del Director
______________________________
Firma del Jurado
______________________________
Firma del Jurado
5
Tunja, 22 de septiembre de 2016
Este trabajo, se encuentra dedicado a Dios el creador de todas
las cosas, a nuestros padres que, por su esfuerzo, sabiduría, y
dedicación nos han ayudado a sobresalir en medio de las
adversidades de la vida; a la Universidad Santo Tomás que nos
proporcionó los conocimientos necesarios para llevar a cabo este
proyecto de grado, a los docentes e ingenieros de la carrera de
Ingeniería Electrónica que nos aportaron su conocimiento y
ayuda constantemente.
6
AGRADECIMIENTOS
A Dios por ser nuestra guía y ayuda en cada uno de los pasos de nuestra vida y proyecto. A nuestras
familias por su amor incondicional y su dedicación al acompañarnos en los momentos más
cruciales de este proyecto. Con sus sugerencias y apoyo nos permitieron mejorar día a día como
profesionales y seres humanos.
Mi madre María Ninfa, mi padre Segundo Luis Alejandro, y mi hermano Jorge Luis
Oscar Fernando Camargo Amézquita
Mi madre Ana Elvia, mi padre Víctor Manuel, mi hermano Víctor Alexander y mi cuñada
Blanca Paola. Tania Carolina Barrera Molina
A nuestros docentes por brindarnos sus conocimientos y realizar seguimiento a esta última etapa
de culminación de nuestros estudios profesionales
MSc. (c) Luis Fredy Sosa por su asesoría y acompañamiento como director de Proyecto de Grado.
MSc. (c) Camilo Ernesto Pardo Beainy por sus sugerencias y acompañamiento como codirector.
MSc. Angélica María Salazar Madrigal por sus sugerencias en la revisión del documento y
colaboración durante el desarrollo del proyecto.
MSc. Oscar Eduardo Umaña Méndez por su gran apoyo y sugerencias en el desarrollo del
proyecto final.
Hugo Fernando Vargas Neira docente en el área de Ciencias Básicas de la Universidad Santo
Tomás por su colaboración en las bases Físicas del presente proyecto.
7
TABLA DE CONTENIDO
1. INTRODUCCION .............................................................................................................. 23
2. JUSTIFICACION ............................................................................................................... 26
3. PROBLEMA ....................................................................................................................... 29
3.1. FORMULACION DE PREGUNTAS ........................................................................... 29
3.2. DEFINICION DEL PROBLEMA ................................................................................ 30
3.3. DELIMITACION DEL PROBLEMA .......................................................................... 31
4. OBJETIVOS ........................................................................................................................ 32
4.1. GENERAL .................................................................................................................... 32
4.2. ESPECIFICOS .............................................................................................................. 32
5. MARCO TEORICO ........................................................................................................... 33
5.1. MOVIMIENTO ARMONICO SIMPLE ....................................................................... 33
5.1.1. Historia ...................................................................................................................... 33
5.1.2. Concepto ................................................................................................................... 33
5.1.3. Periodo del péndulo simple ....................................................................................... 37
5.1.4. Cinemática del Movimiento Armónico Simple ........................................................ 38
5.1.5. Velocidad y aceleración en el M.A.S ........................................................................ 38
5.1.6. Variables físicas ........................................................................................................ 40
5.1.7. Aplicaciones .............................................................................................................. 40
5.1.8. Diferentes clases de péndulos ................................................................................... 42
5.2. VELOCIDAD DEL SONIDO ....................................................................................... 42
5.3. COMUNICACIÓN I2C ................................................................................................ 43
5.4. FILTROS ...................................................................................................................... 44
5.5. EFECTO CORIOLISIS ................................................................................................. 45
5.6. EL ACELERÓMETRO ................................................................................................ 45
5.7. LABVIEW .................................................................................................................... 46
5.7.1. Adquisición de datos ................................................................................................. 47
5.8. ARDUINO .................................................................................................................... 48
5.8.1. Estructura de un programa ........................................................................................ 48
5.9. PANTALLAS DE CRISTAL LÍQUIDO ...................................................................... 48
5.10. SENSOR ULTRASONICO .......................................................................................... 49
5.11. SENSOR DE EFECTO HALL ...................................................................................... 50
6. METODOLOGIA ............................................................................................................... 52
7. RESULTADOS ................................................................................................................... 55
8
7.1. CAPITULO I: ANALISIS DEL SISTEMA A IMPLEMENTAR ................................. 55
7.1.1. Análisis de las variables físicas a medir ................................................................... 55
7.1.2. Factores y errores que pueden influir en el sistema .................................................. 56
7.1.3. Dispositivos electrónicos a usar ................................................................................ 57
7.1.4. Programación de cada uno de los sensores y elementos de manera independiente .. 61
7.2. CAPITULO 2: IMPLEMENTACION DEL SISTEMA FUNCIONAL ........................ 69
7.2.1. Unión del teclado, el acelerómetro, el ultrasónico y el sensor de efecto Hall .......... 70
7.2.2. Unión del programa en la GLCD .............................................................................. 70
7.3. CAPITULO 3: DISEÑO DE LA MAQUETA .............................................................. 73
7.3.1. Indagación acerca de las medidas más usadas .......................................................... 73
7.3.2. Diseño e implementación del modelo ....................................................................... 74
7.3.3. Análisis de los elementos a usar para su funcionamiento ideal ................................ 76
7.3.4. Adecuación de los dispositivos a usar en el sistema ................................................. 78
7.3.5. Maqueta finalizada .................................................................................................... 79
7.4. CAPITULO 4: IMPLEMENTACIÓN DEL SISTEMA DENTRO DE LA MAQUETA
79
7.4.1. Diseño de circuito ..................................................................................................... 79
7.4.2. Adecuación del arduino dentro del sistema .............................................................. 81
7.4.3. Alimentación de los dispositivos a usar (cableado general) ..................................... 81
7.5. CAPITULO 5: DISEÑO DEL PROGRAMA DE ADQUISICION DE DATOS .......... 82
7.5.1. Variables a recibir y procesar en LabVIEW ............................................................. 83
7.5.2. Bloques utilizados dentro de la programación en LabVIEW ................................... 84
7.5.3. Organización del programa y reportes en Excel ....................................................... 88
7.5.4. Fallas y soluciones dentro de la interfaz ................................................................... 91
7.6. MEJORAS Y CONTRUCCION DE LA NUEVA VERSION (BETA) ........................ 92
7.6.1. Mejoras al diseño de la maqueta ............................................................................... 92
7.6.2. Mejoras en la programación...................................................................................... 95
7.6.3. Mejoras en la interfaz gráfica en LabVIEW ............................................................. 97
7.6.4. Implementación de diferentes longitudes ............................................................... 101
7.7. PRUEBAS CON LOS DOS MODELOS (ALPHA Y BETA) .................................... 102
7.7.1. Funcionamiento del modelo ALPHA ..................................................................... 102
7.7.2. Pruebas con modelo ALPHA .................................................................................. 103
7.7.3. Graficas generadas del modelo ALPHA ................................................................. 106
7.7.4. Funcionamiento modelo BETA .............................................................................. 108
7.7.5. Pruebas con el modelo BETA ................................................................................. 109
7.7.6. Graficas generadas del modelo BETA .................................................................... 112
8. OTROS APORTES DERIVADOS DEL TRABAJO .................................................... 115
9. CONCLUSIONES............................................................................................................. 116
10. RECOMENDACIONES .................................................................................................. 118
9
BIBLIOGRAFÍA....................................................................................................................... 120
ANEXOS .................................................................................................................................... 122
10
LISTAS ESPECIALES
LISTA DE TABLAS
Tabla 1. Ángulos optimos para el movimiento en el péndulo simple……………………………..29
Tabla 2. Velocidad del sonido en diferentes medios………………………………….………….36
Tabla 3. Conexiones de la GLCD………………………………………………………………...42
Tabla 4. Características del acelerómetro ………………………………………………………..60
Tabla 5. Carácterísticas del giroscopio…………………………………………………………...60
11
LISTA DE FIGURAS
Figura 1. Péndulo simple con sus propiedades…………………………………………………....31
Figura 2. Fuerzas que influyen en el péndulo…………………………………………………….31
Figura 3. Gráficas de la posición, velocidad y aceleración……………………………………….34
Figura 4. Ejemplo de filtrado de señal……………………………………………………………40
Figura 5. Funcionamiento del sensor con respecto a la aceleración de la gravedad………………41
Figura 6. Acelerómetro con sus ejes……………………………………………………………...42
Figura 7. Partes de un sistema DAQ……………………………………………………………...43
Figura 8. Pantalla gráfica GLCD…………………………………………………………………45
Figura 9. Sensor ultrasónico HC-SR04…………………………………………………………...46
Figura 10. Sensor de efecto Hall…………………………………………………………………47
Figura 11. Sensor ultrasónico HC-SR04…………………………………………………………53
Figura 12. Sensor de efecto Hall Ky-024…………………………………………………………54
Figura 13. Acelerómetro MPU6050……………………………………………………………...55
Figura 14. Teclado matricial 4x4…………………………………………………………………55
Figura 15. GLCD 128x64………………………………………………………………………...56
Figura 16. Arduino Mega 2560…………………………………………………………………..56
Figura 17. Programación para el sensor ultrasónico……………………………………………...58
Figura 18. Programación para el sensor de efecto Hall…………………………………………..59
Figura 19. Programación para el acelerómetro parte 1……………………………………………61
Figura 20. Programación para el acelerómetro parte 2……………………………………………61
Figura 21. Programación para el acelerómetro parte 3……………………………………………62
Figura 22. Programación para el teclado matricial parte 1……………………………………….64
Figura 23. Programación para el teclado matricial parte 2………………………………………..65
Figura 24. Programación para el teclado matricial parte 3……………………………………….65
Figura 25. Visualización del sistema en la GLCD parte 1………………………………………..67
Figura 26. Visualización del sistema en la GLCD parte 2………………………………………..68
Figura 27. Visualización del sistema en la GLCD parte 3……………………………………….68
Figura 28. Visualización del sistema en la GLCD parte 4……………………………………….69
Figura 29. Armazón de la maqueta……………………………………………………………….71
Figura 30. Base general del péndulo……………………………………………………………...71
Figura 31. Base de madera del péndulo…………………………………………………………..72
Figura 32. Base del sensor de efecto Hall………………………………………………………...73
Figura 33. Seguridad del sistema mediante chapa………………………………………………..73
Figura 34. Conexión de los sensores……………………………………………………………..74
Figura 35. Conector hembra para conexión al PC………………………………………………..74
12
Figura 36. Ubicación de pulsadores en la maqueta……………………………………………….75
Figura 37. Péndulo finalizado…………………………………………………………………….75
Figura 38. Diseño de la baquela en Proteus……………………………………………………….76
Figura 39. Construcción y ensamble de la baquela……………………………………………….76
Figura 40. Ubicación del arduino dentro de la caja……………………………………………….77
Figura 41. Conexión PC a péndulo……………………………………………………………….78
Figura 42. Conexión PC a péndulo……………………………………………………………….78
Figura 43. Comunicación serial en LabVIEW……………………………………………………80
Figura 44. Visualización de datos enviados al puerto serial………………………………………81
Figura 45. Match Pattern en LabVIEW…………………………………………………………..81
Figura 46. Decimal string to number en LabVIEW………………………………………………82
Figura 47. Bloques necesarios para la organización de datos en LabVIEW……………………..82
Figura 48. Comparador (si el valor de entrada es diferente a cero) LabVIEW……………………83
Figura 49. Reporte de datos en Excel desde LabVIEW…………………………………………..83
Figura 50. Envío de datos desde Arduino a LabVIEW…………………………………………...84
Figura 51. Procesamiento de datos recibidos LabVIEW…………………………………………85
Figura 52. Organización de los datos en las tablas……………………………………………….85
Figura 53. Revisión de datos a ingresar en la tabla……………………………………………….86
Figura 54. Reporte generado en LabVIEW……………………………………………………….86
Figura 55. Reporte generado en Excel……………………………………………………………87
Figura 56. Versión BETA, péndulo simple……………………………………………………….89
Figura 57. Implementación de regla en la versión BETA………………………………………...90
Figura 58. Implementación de LED en la versión BETA……………………………………….90
Figura 59. Tapa removible en la versión BETA………………………………………………….91
Figura 60. Modificación 1 dentro de la programación versión BETA……………………………92
Figura 61. Encendido de LED en programación versión BETA………………………………...93
Figura 62. Letrero para reiniciar el sistema general en versión BETA…………………………..93
Figura 63. Interfaz de usuario versión BETA…………………………………………………….94
Figura 64. Interfaz de usuario versión BETA, página 2…………………………………………..94
Figura 65. Organización de datos en la interfaz gráfica BETA, página 3…………………………95
Figura 66. Reporte en Excel página 1…………………………………………………………….96
Figura 67. Reporte en Excel página 2…………………………………………………………….96
Figura 68. Generadores de reportes de manera independiente……………………………………97
Figura 69. Calculo del ángulo al cual se encuentra el péndulo en su posición inicial……………..97
Figura 70. Diferentes longitudes para la versión BETA………………………………………….98
Figura 71. Primeras pruebas en cada uno de los ejes…………………………………………….100
Figura 72. Primera prueba modelo ALPHA…………………………………………………….101
Figura 73. Reporte generado en Excel, práctica 1……………………………………………….101
13
Figura 74. Aceleración en X, modelo ALPHA………………………………………………….102
Figura 75. Aceleración en Y, modelo ALPHA………………………………………………….102
Figura 76. Aceleración en Z, modelo ALPHA…………………………………………………..103
Figura 77. Velocidad en X, modelo ALPHA……………………………………………………103
Figura 78. Velocidad en Y, modelo ALPHA……………………………………………………103
Figura 79. Angulo en X, modelo ALPHA……………………………………………………….104
Figura 80. Angulo en Y, modelo ALPHA………………………………………………………104
Figura 81. Página 1 Interfaz gráfica modelo BETA…………………………………………….106
Figura 82. Página 2 Interfaz gráfica modelo BETA……………………………………………..106
Figura 83. Página 1 Reporte Excel modelo BETA………………………………………………107
Figura 84. Página 2 Reporte Excel modelo BETA………………………………………………107
Figura 85. Aceleración en X modelo BETA…………………………………………………….108
Figura 86. Aceleración en Y modelo BETA…………………………………………………….108
Figura 87. Aceleración en Z modelo BETA……………………………………………………..108
Figura 88. Velocidad en X modelo BETA………………………………………………………109
Figura 89. Velocidad en Y modelo BETA………………………………………………………109
Figura 90. Angulo en X modelo BETA…………………………………………………………109
Figura 91. Angulo en Y modelo BETA…………………………………………………………110
14
LISTA DE ANEXOS
ANEXO 1. Datos de los autores………………………………………………………………...119
ANEXO 2. Programación modelo ALPHA…………………………………………………….120
ANEXO 3. Programación modelo BETA……………………………………………………….141
ANEXO 4. Pruebas con modelo ALPHA……………………………………………………….163
ANEXO 5. Pruebas con modelo BETA…………………………………………………………169
ANEXO 6. Manual de usuario…………………………………………………………………..177
ANEXO 7. Manual técnico……………………………………………………………………..187
ANEXO 8. Articulo IEEE………………………………………………………………………193
ANEXO 9. Guía de laboratorio………………………...……………………………………….200
ANEXO 10. Programación en LabVIEW versión ALPHA…………………………………….202
ANEXO 11. Programación en LabVIEW versión BETA………………………………………204
15
GLOSARIO
Acelerómetro: son dispositivos que miden la aceleración, que es la tasa de cambio de la
velocidad de un objeto. Se emplea para medir vibraciones y oscilaciones en muchas
máquinas e instalaciones, así como para el desarrollo de componentes o herramientas.
Efecto hall: se conoce como efecto Hall a la aparición de un campo eléctrico por
separación de cargas, en el interior de un conductor por el que circula una corriente en
presencia de un campo magnético con componente perpendicular al movimiento de las
cargas.
Ultrasonido: es una onda sonora cuya frecuencia supera el límite perceptible por el oído
humano
Adquisición de datos: es el proceso de medir con una PC un fenómeno eléctrico o físico
como voltaje, corriente, temperatura, presión o sonido.
Arduino: es una placa de desarrollo de hardware y software, compuesta respectivamente
por circuitos impresos que integran un microcontrolador y un entorno de desarrollo (IDE),
en donde se programa cada placa. Arduino se enfoca en acercar y facilitar el uso de la
electrónica.
Péndulo: Cuerpo sólido que, desde una posición de equilibrio determinada por un punto
fijo del que está suspendido situado por encima de su centro de gravedad, puede oscilar
libremente, primero hacia un lado y luego hacia el contrario.
Gravedad: La gravedad es una de las cuatro interacciones fundamentales. Origina la
aceleración que experimenta un cuerpo físico en las cercanías de un objeto astronómico.
16
Giroscopio: Es un dispositivo que sirve para medir, mantener o cambiar la orientación en
el espacio de algún aparato o vehículo.
Parametrizar: Describir o estudiar algo a través variables para identificar diferentes
elementos mediante su valor numérico.
Comunicación serial: Es el proceso de envío de datos de un bit a la vez, de forma
secuencial, sobre un canal de comunicación o un bus.
Eco: Es un fenómeno acústico producido cuando una onda se refleja y regresa hacia su
emisor. Puede referirse tanto a ondas sonoras como a electromagnéticas.
Longitud: Es un concepto métrico definible para entidades geométricas sobre la que se ha
definido una distancia. Más concretamente dado un segmento, curva o línea finita, se puede
definir su longitud a partir de la noción de distancia.
Velocidad angular: Es una medida de la velocidad de rotación. Se define como el ángulo
girado por una unidad de tiempo y se designa mediante la letra griega ω.
Aceleración: Es una magnitud vectorial que nos indica la variación de velocidad por
unidad de tiempo.
Angulo: Es la parte del plano comprendida entre dos semirrectas que tienen el mismo
punto de origen o vértice.
Keypad: Generalmente, cualquiera de varios dispositivos (teclado matricial) de entrada
dirigido a satisfacer las necesidades de la interacción hombre/máquina.
M.A.S: Es un movimiento periódico, y vibratorio en ausencia de fricción, producido por
la acción de una fuerza recuperadora que es directamente proporcional a la posición, y que
queda descrito en función del tiempo por una función senoidal.
17
RESUMEN
El presente trabajo de grado pretende explicar el desarrollo de un sistema electrónico de
adquisición de datos, el cual se encarga de obtener los diferentes parámetros del movimiento
armónico simple como lo son, la aceleración, la velocidad angular, longitud y ángulo, por medio
de los diferentes sensores que hemos implementado en el diseño de péndulo desarrollado, en el
que se encuentra el acelerómetro MPU6050 que además de obtener la aceleración tiene integrado
un giroscopio el cual nos revela el Angulo en los 3 ejes yaw, pitch, roll, el sensor de efecto hall
Ky-024 el cual nos permite medir el periodo de las oscilaciones, y un sensor ultrasónico HC-SR04
el cual nos permite obtener la longitud de la vara que deseamos manejar dependiendo de la práctica
que se quiera hacer.
Entre los parámetros que se desean obtener esta la velocidad angular, la aceleración, el
ángulo de los ejes, y la longitud de la cuerda o vara, como ya lo mencionamos anteriormente. Para
esto tendremos un proceso de interacción entre la interfaz y el usuario (personal académico) en
donde se deberán seguir los diferentes pasos que se muestran en el manual del usuario, para una
mejor calidad de la práctica. Dicho proceso se llevará a cabo oprimiendo determinados pulsadores
o botones que están adecuados para obtener la información necesaria de los sensores
implementados. Paso a paso se obtendrán los datos necesarios para continuar la práctica, lo cual
se mostrará en una GLCD o pantalla grafica después de pasar por el proceso de adquisición de
datos, desarrollado en LabVIEW, en donde se obtendrán dichos parámetros para establecer las
diferentes graficas de los diferentes reportes que saldrán de Excel.
18
El fin del dispositivo es desarrollar prácticas de laboratorio más precisas y con ayuda del
kit implementado, obtener reportes más eficientes y precisos, evitar fraudes entre el personal
académico, y tener el menor margen de error posible.
19
PROLOGO
El desarrollo tecnológico ha conllevado al develamiento de los secretos de la naturaleza,
donde la Ingeniería Electrónica juega un papel muy importante ya que amplió la frontera de los
sentidos, pasando del análisis del mundo macroscópico al mundo microscópico y con ellos
descubrir nuevas herramientas para el servicio de la humanidad.
Uno de los aportes más importantes se originaron con el estudio de los botafumeiro
(candelabros) que alumbraban los salones donde se desarrollaban las reuniones de las personas de
la edad media, los cuales contenían las grandes veladoras que al ser cambiadas e izadas, generaban
movimientos pendulares que dieron los cimientos para dominar el tiempo, pasaron cerca de cuatro
siglos para que el manejo del tiempo se estableciera como una alternativa del desarrollo humano,
teniendo como referencia el meridiano de Greenwich y solo hasta casi la segunda mitad del siglo
XX, con el descubrimiento del Movimiento Armónico Simple que presentaban los átomos de
cesio, se desarrollaron los relojes atómicos y con ellos la precisión y exactitud estableció una
referencia mundial.
El siglo XX es considerado, por muchos, como la centuria de la ciencia, de la democracia,
de la extensión de los derechos civiles, por los movimientos generados en la década de los sesenta
y setenta, por las amenazas de los desarrollos tecno-científicos, generados por merced al domino
de la energía nuclear, la manipulación y control de las cargas eléctricas estáticas como dinámicas
y por las interacciones que estos desarrollos tenían sobre la sociedad.
Estos movimientos se centraron en dos líneas que empezaron a marcar una ruta para lo que
se ha conocido como Ciencia Tecnología y Sociedad; la primera de ellas se preocupa por los
20
orígenes epistémicos y sociales, cultivada principalmente en Europa, en la Universidad de
Edimburgo. La segunda, se centró en las consecuencias que ha tenido el desarrollo de este
conocimiento en los diferentes espacios de la sociedad.
Hoy, se puede considerar que los estudios de ciencia y tecnología se concentran en tres
campos a lo largo del mundo: La investigación, que promueve una visión socialmente
contextualizada de la ciencia y la tecnología. Las políticas de ciencia y tecnología, que defienden
la participación pública en la toma de decisiones y la gestión científico-tecnológica. El educativo,
tanto en la educación secundaria como universitaria, contribuye con una nueva y más amplia
percepción de la ciencia y la tecnología, con el propósito de formar una ciudadanía alfabetizada
científica y tecnológicamente.
El desarrollo de este trabajo se da en el tercer eje, lo educativo, buscando brindar nuevas
herramientas a las diferentes problemáticas que se enfrentan en los procesos formativos y
educativos en los diferentes niveles (secundario, pregrado y posgrados), que conllevan a retarlos
generacionales en los desarrollos de un país y de esta forma, se aleja del fin mismo del desarrollo
tecno-científico y eje fundamental de todas las naciones libertad y orden.
La electrónica como programa académico de hoy y el mañana debe contribuir a la
cotidianidad de vida y a la solución no solo de los problemas trascendentales del mundo, sino a los
de la cotidianidad, por esta razón se propuso afrontar la problemáticas del área de la física y en
general del proceso educativo, con un dispositivo que respondiera a los principios de obsolescencia
generada y percibida, para que se pudiera responder a los fines económicos y financieros que rigen
el mundo, como a los principios y piedras angulares de la Ciencia, la Tecnología y la Sociedad.
21
Par esto se debió realizar un análisis de la relación existente en los procesos formativos
(enseñanza aprendizaje) que hoy en día tienen una mayor relevancia cuando encuentran elementos
de evocación de la cotidianidad en que se vive, motivo por el cual es necesario, permitirle a los
estudiantes generar espacios de prácticas, donde el experimento se acerque cada vez más a la
realidad.
La formación en Ciencias Básica, tiene una estrecha relación con los programas de
ingeniería y dotan al estudiante de herramientas que le permiten analizar la realidad física y
potencializan su capacidad de modelado en el lenguaje universal de las matemáticas.
Desafortunadamente la dotación de laboratorios es altamente costosa y hacen que las aprensiones
de los estudiantes sean cortas e impiden transposiciones de saberes científicos a escolares,
conllevando a imaginarios como inutilidad de estos saberes y no correlacionarlos con la formación
disciplinar.
El desarrollo de diseño de instrumentos para la formación teórica y experimental de la
física mecánica y sus aplicaciones, como lo es el Movimiento Armónico Simple (MAS), desde
una mirada de Ciencia Tecnología y Sociedad, permite superar dificultades que se presentan como
son: el poco interés que pueden sentir los estudiantes en esta área de formación, generando altos
niveles de repitencia y deserción de los programas de ingeniería, comprensión y aprensión de los
conceptos físicos, para que estos sean transpuestos a los saberes propios de la disciplina en que se
está formado y potencializar tecnológicamente los laboratorios con que se encuentran las
instituciones de educación haciendo uso de la instrumentación y el control electrónico, buscando
un mayor atractivo e interés en los estudiantes.
22
No se puede dejar de mencionar que este tipo de trabajos genera una mirada más amplia
de lo que es la investigación desde el retrofiting y como las instituciones, con los saberes que tiene
en sus integrantes, pueden acercarse cada día más al encuentro con la felicidad, no sólo personal
sino de las comunidad, que es la una de las piedras angulares de la Universidad Santo Tomás,
reflejada en sus egresados.
MSc. (c) Luis Fredy Sosa Quintero
Ingeniero Electrónico
Facultad de Ingeniería Electrónica
Universidad Santo Tomás Tunja
23
1. INTRODUCCION
Gracias al estudio de la física y el avance de la misma, se ha logrado hacer un análisis más
detallado de diversos fenómenos que permiten mejorar ciertos procesos de la vida cotidiana y
estudiar a fondo otros cuantos. Es así como se ha conseguido el estudio del Movimiento Armónico
Simple, que, aunque no es tan nombrado en la vida cotidiana, si está presente ahí y tiene una gran
relevancia en muchos aspectos que pueden observarse a diario como, por ejemplo, la estabilidad
que necesita un edificio en el caso que existiera un movimiento telúrico.
El estudio de los fenómenos físicos en el área académica como colegios o universidades se
ha desarrollado de la misma manera desde hace unos cuantos años y debido a esto los procesos se
han vuelto algo monótonos, con resultados inmersos en una práctica poco dinámica y con algunos
desfases técnicos. Con esto no se está queriendo decir que estos estudios sean obsoletos o que ya
no sirvan, sino que se está presentando el problema de que todo sigue girando en torno a los
mismos datos que son rotados de generación a generación.
Es así como nos encontramos con que sería posible automatizar o mejorar ciertos
instrumentos que permiten el análisis de ciertos fenómenos naturales y para este caso más puntual
estaríamos hablando del Movimiento Armónico Simple (M.A.S). Por medio de la implementación
de dispositivos electrónicos (sensores, actuadores, interfaz, software especializado) en los
instrumentos que se encargan de la medición de este movimiento (péndulo simple), es posible la
recolección de datos de una manera más rápida y concisa, además de la posibilidad de mejorar el
análisis y la obtención de información de esta clase de fenómenos, para un estudio posterior más
profundo de los mismos.
24
Por esta razón, nos enfocamos en desarrollar un sistema de péndulo simple y mejorarlo por
medio del acople de ciertos elementos electrónicos y mecánicos, para un funcionamiento más
eficaz del mismo. El sistema cuenta con sensores que permiten la obtención de una manera más
rápida y eficaz de diferentes datos que intervienen en el M.A.S; el sensor ultrasónico HC-SR04 se
encarga de la obtención de la longitud de la cuerda o en este caso varilla, el sensor de efecto hall
obtiene el número de oscilaciones que realiza el péndulo durante el proceso, el acelerómetro y
giroscopio MPU6050 proporciona la aceleración en los diferentes ejes del plano cartesiano (X, Y,
Z) la velocidad angular (X, Y) y el ángulo (X, Y) que es hallado gracias a algunos cálculos que se
realizan a partir del acelerómetro y giroscopio. De otro lado, el tiempo es obtenido a través de una
interfaz gráfica y que en conjunto con el número de oscilaciones medidas, permite hallar el periodo
del péndulo.
Todo esto brinda una ayuda al personal académico, permitiéndole interactuar más con este
fenómeno físico, dándole las herramientas necesarias y que le den la oportunidad de indagar acerca
de qué pasa con el movimiento, la tensión, la oscilación, la masa, la fuerza, la energía y otros
cuantos factores que se encuentran en este movimiento.
La optimización de los instrumentos, la dinámica, el tiempo y la seguridad dentro de las
prácticas de laboratorio son temas de interés fundamentales tanto en el aspecto físico como técnico,
todo esto para evitar fraude dentro de la comunidad académica, y así garantizar que el
conocimiento adquirido sea por parte de la persona que realiza la práctica y no por alguien más.
Así mismo el tiempo será menor respecto a otros kits o módulos de física para completar las
prácticas las cuales generaran reportes con los datos de las personas que utilicen el modulo. Es de
resaltar que se pueden presentan algunos errores o problemas menores de aspecto técnico respecto
25
a algunas variables inevitables que se presentan naturalmente como la tensión entre los cables, la
elongación que estos producen, la resistencia al aire y la fricción que esta ejerce sobre el sistema
al momento de oscilar. El sistema está diseñado e implementado para recopilar algunos parámetros
del Movimiento Armónico Simple, de los cuales el profesional académico se podrá desprender
para desarrollar las guías de laboratorio dependiendo de que desee hallar respectivamente o de
como pretendan observar e identificar el comportamiento del sistema.
26
2. JUSTIFICACION
Hoy en día seguimos aprendiendo de manera concisa y congruente las diferentes prácticas
de laboratorio que se han realizado durante largo tiempo, con un formato que ya ha pasado varias
generaciones, con los mismos instrumentos, que llevan a los mismos resultados, quedándonos con
los datos manuales que obtenemos. Por esta razón queremos realizar un análisis apropiado para la
identificación de las magnitudes físicas que intervienen en el movimiento armónico simple en un
péndulo, permitiendo de esta manera un desarrollo óptimo y acertado de las prácticas de
laboratorio.
Haciendo un análisis más profundo, en la actualidad, las prácticas que se realizan en los
laboratorios de física de los colegios, no difieren mucho a las que se hacen en la universidad,
viéndose de esta manera que no se tiene un mayor soporte en los avances de los diferentes
experimentos a realizar. A consecuencia de esto, las prácticas que se desarrollan en los laboratorios
están pasando a ser un requisito más que no tiene mayor transcendencia, dejando de lado un trabajo
más amplio que se puede realizar por parte del docente en donde se puedan generar variaciones en
las prácticas, teniendo así un análisis nuevo y eficaz a través del análisis de resultados y la
interpretación de datos.
Los elementos usados son: un cronometro, un metro, una báscula, y una regla de medición,
que nos proporcionan los datos básicos que necesitamos para realizar las prácticas. Es así como
nos encontramos con la importancia de tener un sistema que nos proporcione los datos necesarios
para realizar un análisis más apropiado del Movimiento Armónico Simple por medio de un sistema
electrónico, que permita almacenar los datos tanto de velocidad, aceleración, tiempo transcurrido,
27
entre otros cuantos que resultan de gran importancia a la hora de realizar un informe de laboratorio
y que, en el mejor de los casos, fueron anotados en una hoja para luego pasarlos a Excel.
Por estas razones es que se pretende diseñar e implementar un dispositivo electrónico por
el cual se pueda hacer un estudio más adecuado y cercano del M.A.S, por medio de la ubicación
de ciertos sensores que permitan conocer magnitudes como la velocidad, tiempo, aceleración,
periodo y frecuencia que intervienen en este movimiento para poder llegar a un análisis más
adecuado del mismo, transfiriendo los datos procesados, de modo que pueda obtenerse un informe
digitalizado ya sea en el computador o en una unidad portable o dispositivo de almacenamiento,
(Universal Serial Bus, Disco Duro, Secure Digital etc.).
Básicamente estamos hablando de un instrumento cuya estructura principal será la de un
péndulo simple, el cual estará dotado de ciertos sensores que se encargarán de medir variables
como lo serán: la posición, la aceleración y el tiempo que demora el péndulo en hacer su recorrido.
Es de aclarar que el modelo puede presentar ciertas variantes, pero siempre su objetivo principal
será medir las magnitudes involucradas en el proceso.
Al tener estos datos, se pretende hacer un procesamiento de los mismos de modo que
puedan ser organizados a modo de informe, teniéndose en cuenta que quedara registrada la fecha
y hora en la cual se realizó este procedimiento con el fin de evitarse posibles copias, es decir que
cada quien tendrá la oportunidad de tener sus datos personalizados.
En el transcurso de este proyecto no se perjudicará al ambiente, ya que no se dañará de
ninguna forma los recursos naturales del sitio donde lo estemos implementando, haciéndolo así un
proyecto no perjudicial para el medio ambiente. Además, de que será muy bueno para la sociedad,
28
ya que beneficiara a la institución en los diferentes programas académicos, donde se implemente
el proyecto, ya que se constituye en un campo muy importante como lo son las prácticas de
laboratorio, lo cual beneficiaria a la comunidad académica. Con esta implementación no se verán
afectadas de ninguna manera las prácticas que ya se realizaban, sino por el contrario será el medio
de la creación del mismo la que conllevará al mejoramiento de esta práctica en la institución. Con
ello establecemos que esta investigación, puede dar grandes beneficios en los diferentes ámbitos
en los que se desarrolle.
En el ámbito económico, se harán los gastos necesarios para la compra de los diferentes
elementos como sensores, actuadores, partes físicas y magnéticas de la estructura en la cual
trabajaremos.
29
3. PROBLEMA
3.1. FORMULACION DE PREGUNTAS
¿Es posible dejar de lado los sistemas que hoy en día siguen siendo demasiado
convencionales, para realizar la medición de ciertos fenómenos físicos como sería el caso del
Movimiento Armónico Simple?
¿El análisis del movimiento pendular presentara variaciones importantes a tener una escala
de medición menor al segundo?
¿Sería posible implementar un dispositivo que permita medir la aceleración, el tiempo y otras
magnitudes presentes dentro de Movimiento Armónico Simple para su posterior
procesamiento dejando de lado los métodos manuales?
¿Qué representaciones académicas, pedagógicas y didácticas se pueden obtener al poder
analizar el comportamiento del MAS con unidades menores al segundo?
¿Resulta útil mejorar ciertos sistemas presentes en la industria o en la vida cotidiana en
general por medio del análisis del péndulo simple?
¿Es factible la implementación de un péndulo simple más tecnificado en los laboratorios de
Física en donde se realizan prácticas universitarias?
¿Qué usos se le pueden dar a los datos que resulten de una práctica realizada con el péndulo
simple en la vida cotidiana?
¿En qué áreas o profesiones resulta de gran importancia el estudio del Movimiento Armónico
Simple?
¿Qué tan importante es la implementación de la electrónica en los instrumentos que son
usados en los laboratorios de física?
¿Puede ser analizada la aceleración de la gravedad mediante el uso del péndulo simple?
30
3.2. DEFINICION DEL PROBLEMA
Hoy en día y a pesar de la gran innovación tecnológica que se está teniendo, se han dejado
de lado ciertos aspectos o instrumentos que resultan de gran importancia de manera especial en los
diferentes estudios que la física requiere y cuyas aplicaciones se extienden al mundo en general.
Esto se ve muy reflejado en el hecho de que a pesar de que los tiempos han cambiado y la
tecnología sigue avanzando, los instrumentos de medición utilizados en los laboratorios de física
siguen siendo los mismos y se siguen basando en los mismos principios: un cronometro, una regla
o un graduador en algunos casos.
Con todo esto no se está queriendo decir que los métodos son malos o que no funcionan,
pues es posible que se sigan usando por muchísimos años más; lo que se pretende, es ver las
desventajas que tienen estos instrumentos y encontrar la forma adecuada de automatizarlos,
teniendo en cuenta que el desarrollo tecnológico nos permite hacer las mediciones de las variables
con unidades menores al segundo, ampliando de esta manera el espectro de comportamiento del
sistema y a su vez determinar otras variables que se hacen presentes en el fenómeno físico, de
modo que, con la integración de nuevos dispositivos, se pueda llegar inclusive al estudio más
profundo de ciertos fenómenos físicos.
Uno de los fenómenos que por lo general son analizados en los laboratorios de física ya
sean de colegios, universidades o inclusive institutos de investigación, es el Movimiento Armónico
Simple, que, por lo general es estudiado mediante el uso de un péndulo simple en el cual
intervienen diferentes variables físicas como lo son la aceleración, la velocidad, la posición, el
ángulo, la longitud, entre otras cuantas.
Aunque el análisis de este movimiento es muy importante, vemos que muchas veces se
queda solamente como la práctica de un laboratorio y no se tiene en cuenta en la vida real. Por
31
ejemplo, si se analizara diferentes factores como la energía y la aceleración en este sistema, nos
encontraríamos con la posibilidad de ver sus aplicaciones en la parte industrial o simplemente en
una construcción que necesita ser antisísmica. En realidad, son muchas las aplicaciones que se le
pueden dar a este sistema, pero vale la pena desarrollar un análisis un poco más profundo y una
recolección más detallada del mismo.
3.3. DELIMITACION DEL PROBLEMA
Mediante el presente proyecto se pretende diseñar e implementar un sistema electrónico
que permita la adquisición y el procesamiento de datos procedentes del análisis de ciertas
magnitudes que hacen parte del Movimiento Armónico Simple aplicado a un péndulo simple, y a
su vez unir este al movimiento mundial conocido como Ciencia tecnología y Sociedad, que busca
que los saberes científicos tengan representación en la cotidianidad de la vida, lo que sí es
particular para esta investigación es poder poner en marcha un sistema que permita el correcto
análisis del M.A.S para su posterior uso en la industria o en tareas que requieran el
aprovechamiento máximo de sistemas pendulares.
En este trabajo se desarrollarán diferentes pruebas que irán resolviendo los problemas que
vayan surgiendo. Este proceso se llevará a cabo en las instalaciones de la universidad Santo Tomás
Tunja, en donde se buscarán los diferentes materiales para trabajar entre los que se destacan: los
sensores de velocidad, acelerómetros, sensores ultrasónicos, las señales de estos dispositivos serán
adquiridas a través de la tarjeta ATMEGA 25-60 de arduino. Al final se espera concluir el sistema
general de la adquisición de datos integrado al péndulo simple, donde se obtendrán las variables
específicas del movimiento, como lo son la aceleración, la velocidad angular, el periodo,
frecuencia, que servirán a su vez para determinar la gravedad del espacio en el que se esté llevando
a cabo la práctica.
32
4. OBJETIVOS
4.1. GENERAL
Desarrollar un sistema pendular mediante la aplicación de dispositivos electrónicos, para el
análisis del Movimiento Armónico Simple que pueda ser empelado en diferentes niveles de
formación, secundaria y pregrado de acuerdo con el grado de profundidad que se le dé a la
práctica en desarrollo.
4.2. ESPECIFICOS
• Analizar el Movimiento Armónico Simple teniéndose en cuenta los factores físicos que
influyen en este para su posterior implementación.
• Definir los parámetros que se tendrán en cuenta a la hora de analizar el M.A.S en un
péndulo simple.
• Identificar las variables presentes en el movimiento pendular simple y los elementos
necesarios para la obtención de los mismos.
• Establecer los sensores y actuadores que se implementaran en el sistema pendular y con
los cuales se pretende automatizar el modelo.
• Implementar el sistema para la realización de prácticas del mismo y establecer los
protocolos de funcionamiento.
33
5. MARCO TEORICO
5.1. MOVIMIENTO ARMONICO SIMPLE
5.1.1. Historia
En el año 1583, a la edad de 19 años, cuando Galileo asistía a una misa en el Domo observo
el balanceo de una lámpara de aceite que colgaba del techo mediante un largo cable. Cuando la
lámpara comenzó a oscilar, se movía rápidamente creando arcos grandes. Más tarde, cuando la
oscilación había disminuido y el arco que describía era más pequeño la lámpara iba más despacio,
pero el tiempo total de cada oscilación completa era siempre exactamente el mismo. Simplemente
usando como patrón de medida su propio pulso, es decir, contando sus pulsaciones cada vez, para
asegurar que cada oscilación tenía lugar en el mismo periodo de tiempo (Zapata Jimenez & Borja,
2014, pág. 2).
Esto despertó la curiosidad de Galileo, de modo tal que cuando llego a casa se dio a la tarea
de experimentar con bolitas de plomo atadas a hilos viendo de este modo que sin importar el peso
que se estuviera utilizando, el tiempo que necesitaba esta para completar su viaje ida y vuelta era
el mismo siempre y cuando la longitud de la cuerda fuera la misma. Esto también lo llevo a deducir
que aquello que cambiaba el tiempo de oscilación era la variación en las longitudes de la cuerda a
usar. “Esta observación condujo al invento del péndulo, usado en los relojes y otros instrumentos
para medir con precisión el tiempo. El tipo de movimiento que Galileo estaba estudiando se llama
Movimiento Armónico Simple” (Zapata Jimenez & Borja, 2014, pág. 2).
5.1.2. Concepto
El Movimiento Armónico Simple es definido como un movimiento que es periódico y es
producido por una fuerza recuperadora. “El movimiento de la masa obedece a una ley representada
por una ley sinusoidal” (Ramirez S. & Mauricio, 1989, pág. 4). Este sistema presenta un
34
movimiento oscilatorio y se considera que sobre este no hay fuerzas de rozamiento, evitándose así
a disipación de energía y permitiéndose de este modo que “el movimiento se mantenga invariable,
sin necesidad de comunicarle energía exterior a este” (Zapata Jimenez & Borja, 2014, pág. 3).
La aceleración del M.A.S es producida por una fuerza recuperadora, es decir, una fuerza
que es proporcional al desplazamiento del móvil y va dirigida hacia el punto de equilibrio. Si es
así, al sistema que oscila se le llama oscilador armónico, y es un modelo matemático que pocos
osciladores reales cumplirán exactamente excepto en márgenes muy limitados (Ondas, pág. 121).
“El péndulo simple es una partícula de masa “m” suspendida de un punto “O” por una
cuerda de longitud “L, que se puede considerar inextensible y de masa despreciable. A la partícula
que oscila se le llama lenteja o masa del péndulo” (Laura, 2013, pág. 1). Si se desplaza la partícula
un determinado ángulo respecto a la posición de equilibrio, y al soltarla esta se moverá en un
arco de circunferencia de radio “L” del punto de referencia en el que se encuentra la partícula
cuando está en equilibrio.
La amplitud “A” será igual a la mitad de la longitud del arco que describe en su movimiento
(igual a la distancia, medida sobre el arco, desde el punto de equilibrio a la posición de máxima
separación), y la elongación “x” en cada momento será la distancia, medida sobre la trayectoria,
desde el punto de referencia al punto en el que se encuentra en ese momento la lenteja del péndulo
(Ondas, pág. 129). Todas estas características pueden ser visualizadas en la Figura 1.
35
Fig.1 Pendulo simple con sus propiedades. Fuente: Ondas. EL PENDULO SIMPLE: un ejemplo de MAS.
Recuperado de: http://docplayer.es/146168-El-movimiento-armonico-simple.html#show_full_text
Sobre la masa actúan dos fuerzas en cualquier punto de la trayectoria: la atracción de la
tierra sobre la masa cuyo valor es “mg” y la fuerza que ejerce la cuerda sobre la masa del péndulo
“T”, lo cual se puede observar en la figura 2. Cabe aclarar que la tensión “T” y la fuerza n “Fn”
tienen la misma dirección, pero sentido opuesto.
Fig.2 Fuerzas que influyen en el pendulo. Fuente: Ondas. EL PENDULO SIMPLE: un ejemplo de MAS. Recuperado
de: http://docplayer.es/146168-El-movimiento-armonico-simple.html#show_full_text
36
Tabla.1 Ángulos optimos para el movimiento en el péndulo simple. Fuente: Ondas. EL PENDULO SIMPLE: un
ejemplo de MAS. Recuperado de: http://docplayer.es/146168-El-movimiento-armonico-simple.html#show_full_text
La fuerza tangencial Ft produce una aceleración tangencial en la haciendo cambiar su
rapidez continuamente. Si se tiene en cuenta la relación que existe entre el ángulo expresado en
radianes, el arco y el radio (x = Lθ), y que para ángulos pequeños el seno del ángulo es
aproximadamente igual al valor del ángulo expresado en radianes (lo cual se puede observar en la
Tabla 1), se llega a la ecuación [1]:
Ft = −mgsenθ ≈ −mgθ = −mgx
L= −
mg
Lx = −Kx [1] Fuerza tangencial (FT)
Donde k es una constante, cociente entre el peso de la masa y la longitud del péndulo. El
signo menos indica que el sentido de la fuerza es contrario al desplazamiento, tanto angular como
lineal. La fuerza que produce la variación de la rapidez es proporcional a la distancia a la posición
de equilibrio y de sentido contrario al desplazamiento, por lo que es de suponer que el movimiento
del péndulo sea también un movimiento armónico simple, similar al de un cuerpo que se encuentra
sujeto al extremo de un muelle (Ondas, pág. 129).
De este modo, se puede describir el movimiento del péndulo con la ecuación general del
M.A.S que permite calcular la posición en función del tiempo, representada en la ecuación [2]:
37
x = Asen(ωt + ϕ0) [2]Posición del pendulo en función del tiempo (x)
Hay que tener en cuenta que, si el ángulo no es pequeño, no se puede llegar a la misma
aproximación, viéndose de este modo que sería un movimiento oscilatorio periódico, pero no se
trataría del M.A.S, pues se dependería para este caso de la amplitud. Es así como se determina que
un péndulo simple se comporta como oscilador armónico cuando tiene amplitudes pequeñas de
oscilación, siendo así la fuerza recuperadora la componente tangencial del peso (Pt) y la
aceleración del péndulo se proporcional al desplazamiento, como se muestra en la ecuación [3].
a = −g
l. x [3]Aceleración del pendulo
Donde:
- 𝑎: Aceleración del péndulo. Depende de la distancia a la posición de equilibrio x. Su unidad
de medida en el Sistema Internacional es el metro por segundo al cuadrado (m/s2)
- g: Aceleración de la gravedad. Su valor es 9.8 m/𝑠2
- l: Longitud del péndulo. Su unidad de medida en el Sistema Internacional es el metro (m)
- x: Separación x de la vertical de equilibrio del péndulo. Su unidad de medida en el Sistema
Internacional es el metro (FISICALAB).
Cuando el péndulo se encuentra en reposo, en vertical, permanece en equilibrio ya que la
fuerza peso es contrarrestada por la tensión en la cuerda (Ondas, pág. 129).
5.1.3. Periodo del péndulo simple
“El periodo del péndulo simple, para oscilaciones de poca amplitud, viene determinado por
la longitud del mismo y la gravedad. No influye la masa del cuerpo que oscila ni la amplitud de la
oscilación. El periodo del péndulo simple es el tiempo que tarda el péndulo en volver a pasar por
38
un punto en el mismo sentido. También se define como el tiempo que tarda en hacerse una
oscilación completa” (FISICALAB). Su valor viene determinado por la ecuación del periodo [4]:
T = 2π√L
g [4]Periodo del pendulo
Donde:
- T: Periodo del péndulo. Su unidad de medida en el Sistema Internacional es el segundo (s).
- l: Longitud del péndulo. Su unidad de medida en el Sistema Internacional es el metro (m).
- g: Gravedad. Su unidad de medida en el Sistema Internacional es el metro por segundo al
cuadrado (m/s2).
5.1.4. Cinemática del Movimiento Armónico Simple
El Movimiento Armónico Simple es un movimiento de balanceo cuya amplitud está
determinada en base a la posición de equilibrio; es acelerado y su velocidad y posición varían
continuamente, aunque los valores son repetitivos en intervalos regulares de tiempo. Un ejemplo
de este movimiento es la masa que cuelga de un péndulo y que oscila de manera libre al separarse
de su posición de equilibrio con un ángulo pequeño. “Aunque este movimiento se amortigua
debido al rozamiento con el aire y en el punto de oscilación, se supone idealmente que esto no
ocurre y el movimiento se mantiene constante” (Ondas, pág. 122).
5.1.5. Velocidad y aceleración en el M.A.S
“A partir de la ecuación de la posición en función del tiempo para un movimiento armónico
simple, podemos calcular la rapidez en cualquier instante” (Ondas, pág. 124). Al elegir la función
seno para la ecuación de la elongación, la velocidad quedara determinada en la ecuación [5] que
se muestra a continuación. Cabe anotar que la velocidad máxima viene determinada por 𝐴𝜔.
39
v =dx
dt= Aω cos(ωt + ϕ0) [5]Velocidad del pendulo
Cuando la función seno es máxima, la función coseno es mínima, por lo cual hay un desfase
entre seno y coseno de 𝜋 2⁄ rad. Si se representan las dos funciones, se puede ver que v tiene los
valores máximos y mínimos un cuarto de periodo antes que x. Como un cuarto periodo corresponde
a un cambio de fase de 𝜋 2⁄ rad (90°), a veces se deduce que v adelanta a x en 90°. Todo esto puede
observarse en la figura 3 que se muestra a continuación, en donde se muestra la posición, velocidad
y aceleración.
Fig.3 Graficas de posicion, velocidad y aceleracion,respectivamente del MAS. Fuente: Ondas. EL PENDULO
SIMPLE: un ejemplo de MAS. Recuperado de: http://docplayer.es/146168-El-movimiento-armonico-
simple.html#show_full_text
La aceleración inmediata puede ser calculada mediante la ecuación [6]:
a =dv
dt= −Aω2sen (ωt + ϕ0) = −ω2x [6]Aceleración inmediata
40
La aceleración tiene un desfase con la elongación de 𝜋rad, viéndose de este modo que las
fases son iguales en valor absoluto, pero con diferente signo. El valor máximo de la aceleración es
𝐴𝜔2 (Ondas, pág. 124).
5.1.6. Variables físicas
5.1.6.1. Oscilación o vibración: es el movimiento realizado desde cualquier posición
hasta regresar de nuevo a ella pasando por las posiciones intermedias.
5.1.6.2. Elongación: es el desplazamiento de la partícula que oscila desde la posición
de equilibrio hasta cualquier posición en un instante dado.
5.1.6.3. Amplitud: es la máxima elongación, es decir, el desplazamiento máximo a
partir de la posición de equilibrio.
5.1.6.4. Periodo: es el tiempo requerido para realizar una oscilación o vibración
completa. Se designa con la letra “t”.
5.1.6.5. Frecuencia: es el número de oscilación o vibración realizadas en la unidad
de tiempo.
5.1.6.6. Posición de equilibrio: es la posición en la cual no actúa ninguna fuerza neta
sobre la partícula oscilante. (Zapata Jimenez & Borja, 2014)
5.1.7. Aplicaciones
En la Ingeniería Civil sirve en edificios para contrarrestar las fuerzas del viento y posibles
movimientos sísmicos, en los puentes colgantes para contrarrestar las fuerzas del viento y
movimientos telúricos y en los estudios de suelos para saber en dónde existen movimientos
sísmicos. Sirve también para calcular la aceleración de la gravedad y para la medición del tiempo.
Ejemplos familiares de movimientos oscilatorios son los barcos que se balancean sobre las
olas, el movimiento planetario, las cuerdas de un instrumento musical, las moléculas del aire en
41
las ondas sonoras, las oscilaciones eléctricas en los aparatos de radio y televisión, etc. Todos estos
ejemplos de movimientos se caracterizan por ser periódicos, a intervalos de tiempo iguales, todas
las variables del movimiento (velocidad, aceleración, etc.) toman el mismo valor (Trenzado Diepa,
2014).
El M.A.S es aplicado en gran cantidad de actividades, desde simples hasta muy complejas,
desde simples hasta muy complejas, entre estas se encuentran:
Muelles con resorte
Péndulos
Resortes sin fricción
Circuitos eléctricos
Movimiento de dos columnas
Vasos comunicantes
Cuerdas de una guitarra
Es importante anotar que este movimiento es muy utilizado también en la Ingeniería
Electrónica, por ejemplo en la robótica es donde se hace necesario el análisis del péndulo simple
para la construcción de diferentes prototipos, pues si se hace un análisis detallado, se puede
encontrar que muchos modelos de robots tienen similitud al péndulo simple o su funcionamiento
viene siendo el mismo, razón por la cual se puede analizar este movimiento para un acercamiento
a los modelos de robot a implementar. (Matamoros S, 2009, pág. 1), afirma: “Uno de los problemas
más simples en robótica es el de controlar la posición de un brazo de robot empleando un motor
ubicado en el punto de giro. En términos matemáticos, esto no es más que un péndulo”.
42
5.1.8. Diferentes clases de péndulos
5.1.8.1. Péndulo de Foucault
Un péndulo de Foucault es un péndulo esférico que puede oscilar libremente en cualquier
plano vertical y capaz de oscilar durante muchas horas. Este péndulo pesa aproximadamente 125
kilos, y se mueve durante unas dos horas antes de que a gravedad gane a la inercia. Con este
péndulo, el creador, León Foucault, demostró que cada vez que el péndulo se movía, esto no
sucedía por ningún tipo de fuerza, sino simplemente porque la Tierra estaba rotando. Este péndulo
varía dependiendo si está ubicado en el hemisferio norte o sur (Zuñiga, 2015, pág. 4).
5.1.8.2. Péndulo cicloidal
También llamado péndulo de Huygens. Es un péndulo cuyo periodo es independiente de la
amplitud y que está basado en una propiedad de la curva geométrica llamada cicloide. El péndulo
simple no puede ser considerado como una medida del tiempo segura y uniforme, porque las
oscilaciones amplias tardan más tiempo que las de menor amplitud. Se descubrió la curvatura de
una determinada curva que se presta admirablemente para lograr la deseada uniformidad: la curva
cicloidal (Zuñiga, 2015, pág. 8).
5.1.8.3. Péndulo balístico
Este péndulo está constituido por un bloque grande de madera, de masa M, suspendido
mediante dos hilos verticales. Este permite determinar la velocidad de un proyectil (Zuñiga, 2015,
pág. 10).
5.2. VELOCIDAD DEL SONIDO
Este término o fenómeno físico es muy importante puesto es trabajado en la configuración
del sensor ultrasónico para tener la distancia a la cual se encuentra un objeto, para lo cual es
43
importante saber que “el sonido es un fenómeno físico que resulta de la perturbación de un medio.
Esta perturbación genera un comportamiento ondulatorio, lo cual hace que esta se propague hasta
llegar al sitio donde se encuentra algún receptor. Este tipo de movimiento en el cual no es el medio
en sí mismo sino alguna perturbación lo que se desplaza se denomina onda” (Urrego, s.f.). En el
caso del sensor esta onda va y se devuelve, obteniendo el tiempo que se demoró en este transcurso,
hallándose así la distancia.
La tabla que se presenta a continuación, nos muestra los diferentes resultados obtenidos en
investigaciones hechas acerca de la velocidad del sonido en diferentes medios (Urrego, s.f.).
Tabla.2 Velocidad del sonido en diferentes medios. Fuente: Fluidos. Velocidad del sonido. Recuperado de:
http://fluidos.eia.edu.co/hidraulica/articuloses/flujodegases/velocidaddelsonido/velocidadsonido.html
5.3. COMUNICACIÓN I2C
Es un estándar que facilita la comunicación entre microcontroladores, memorias y otros
dispositivos con cierto nivel de "inteligencia", sólo requiere de dos líneas de señal y un común o
masa. Fue diseñado a este efecto por Philips y permite el intercambio de información entre muchos
dispositivos a una velocidad aceptable, de unos 100 Kbits por segundo, aunque hay casos
especiales en los que el reloj llega hasta los 3,4 MHz (Carletti, s.f.).
Esta clase de comunicación esta diseñad como un bus maestro-esclavo, pues la
comunicación siempre es inicializada por un maestro (microcontrolador, etc.) y es allí cuando el
esclavo reacciona (sensor, etc.). También es posible el tener varios maestros, gracias al modo
44
multimaestro en el que se hace una comunicación entre maestros, convirtiéndose así uno de ellos
en esclavo.
5.4. FILTROS
Los filtros son circuitos especializados en tratar de distinta forma (amplificar y desfasar
más o menos) a los armónicos según su frecuencia. Si en cualquier circuito analógico
introdujéramos una señal compuesta de armónicos de todas las frecuencias, Veríamos que trata de
distinta forma a unos armónicos que a otros dependiendo de su frecuencia. Esto puede considerarse
como distorsión de la señal de entrada (Velasco).
Todo este proceso de filtrado es importante para eliminar el ruido de procedente de
sensores, limitar el ancho de banda a aquel que en realidad necesite el sistema, eliminar frecuencias
superiores y sintonizar señales. El ejemplo de filtros puede ser observado en la figura 4 que se
muestra a continuación.
Figura.4 Ejemplo de filtrado de señal. Fuente: (Velasco). Filtrado. Recuperado de:
http://www.unet.edu.ve/~ielectro/6-Filtrado.pdf
45
5.5. EFECTO CORIOLISIS
El efecto Coriolis. Es la fuerza producida por la rotación de la Tierra en el espacio, que
tiende a desviar la trayectoria de los objetos que se desplazan sobre la superficie terrestre; a la
derecha en el hemisferio norte y a la izquierda, en el sur. Este efecto consiste en la existencia de
una aceleración relativa del cuerpo en dicho sistema en rotación (Arbelaez).
5.6. EL ACELERÓMETRO
El acelerómetro mide la aceleración que puede expresarse en 3 ejes: X, Y, Z, siendo estas
las tres dimensiones del espacio. “Por ejemplo, si se mueve la IMU (unidad de medición inercial)
hacia arriba, el eje Z marcará un cierto valor. Si es hacia delante, marcará el eje X, etc.”
(Tr4nsduc7or, 2014).
Para el análisis de este acelerómetro se tiene en cuenta la aceleración de la gravedad de la
Tierra que es de aproximadamente 9.8 m/s², perpendicular al suelo como es lógico. De este modo,
la IMU también detecta la aceleración de la gravedad terrestre, como se observa en la figura 5.
“Gracias a la gravedad terrestre se pueden usar las lecturas del acelerómetro para saber cuál es el
ángulo de inclinación respecto al eje X o eje Y” (Tr4nsduc7or, 2014).
Fig.5 Funcionamiento del sensor con respecto a la aceleración de la gravedad. Fuente: Tr4nsduc7or. (2014). Tutorial
de Arduino y MPU-6050. Recuperado de http://robologs.net/2014/10/15/tutorial-de-arduino-y-mpu-6050/
Para calcular en ángulo se puede utilizar la ecuación [7a] y [7b] que aparecen a
continuación:
46
AnguloY = arctan (x
√y2 + z2) [7a]Angulo en Y
AnguloX = arctan (y
√x2 + z2) [7b]Angulo en X
Dado que el ángulo se calcula a partir de la gravedad, no es posible calcular el ángulo Z
con esta ecuación [7] ni con ninguna otra. Para hacerlo se necesita otro componente: el
magnetómetro, que es un tipo de brújula digital. El MPU-6050 no lleva, y por tanto nunca podrá
calcular con precisión el ángulo Z. Sin embargo, para la gran mayoría de aplicaciones sólo se
necesitan los ejes X e Y. Uno de los acelerómetros más usados puede observar en la figura 6 que
se muestra a continuación.
Fig.6 Acelerometro con sus ejes. Fuente: Naylamp. Tutorial MPU-6050, Acelerometro y Giroscopio. Recuperado de
http://www.naylampmechatronics.com/blog/45_Tutorial-MPU6050-Aceler%C3%B3metro-y-Giroscopio.html
5.7. LABVIEW
Tras 20 años en el mercado LABVIEW se ha convertido en un estándar en el desarrollo de
aplicaciones de test y medida, control de instrumentación y sistemas de adquisición de datos. Su
flexibilidad y potencia, le ha hecho expandirse a otras áreas tales como visión artificial, PACs,
control de movimiento, HMI y SCADAs para automatización industrial, análisis de ruido y
47
vibraciones, gestión de información y generación de informes, etc. LabVIEW ha tenido una gran
expansión en la comunidad educativa y científica, tanto en las universidades y centros de
enseñanza secundaria, como en centros de investigación, en la elaboración de prácticas de
laboratorio, clases teóricas en las áreas de control, instrumentación, tratamiento digital de la señal,
electrónica, etc., en el desarrollo de proyectos fin de carrera, siendo un puente entre la comunidad
educativa y la industria a nivel de I+D+I (Investigación, Desarrollo e Innovación) (Lajara
Vizcaíno, 2007, pág. iv).
5.7.1. Adquisición de datos
La adquisición de datos (DAQ) es el proceso de medir un fenómeno eléctrico o físico como
voltaje, corriente, temperatura, presión o sonido. Un sistema DAQ consiste de sensores, hardware
de medidas DAQ y una PC con software programable. Comparados con los sistemas de medidas
tradicionales, los sistemas DAQ basados en PC aprovechan la potencia del procesamiento, la
productividad, la visualización y las habilidades de conectividad de las PCs estándares en la
industria proporcionando una solución de medidas más potente, flexible y rentable (National
Instruments, s.f.), lo cual puede ser observado en la figura 7.
Fig.7 Partes de un sistema DAQ. Fuente: N.I. ¿Qué es la aduisición de datos?. Recuperado de:
http://www.ni.com/data-acquisition/what-is/esa/
48
5.8. ARDUINO
Arduino es una plataforma de electrónica abierta para la creación de prototipos basada en
hardware y software libre, flexible y fácil de usar. Puede tomar información del entorno a través
de sus pines de entrada, para lo cual se puede usar una amplia gama de sensores, teniéndose así la
oportunidad de controlarse luces, motores y otros actuadores. El microcontrolador de la placa se
programa mediante el lenguaje de programación Arduino (basado en Wiring) y el entorno de
desarrollo Arduino (basado en Processing) (Hernandez, Fajardo, Vanegas, & Bustos, 2011, pág.
15).
5.8.1. Estructura de un programa
La estructura de un programa en arduino puede llegar a ser muy diferente en función de la
complejidad de la aplicación que queramos crear, pero como en la mayoría de lenguajes de
programación esta estructura está formada por funciones, sentencias, bucles y otros elementos que
conforman la estructura del programa (Diosdado, 2014, pág. 1).
5.9. PANTALLAS DE CRISTAL LÍQUIDO
“Las pantallas de cristal líquido aparecieron en 1971 en dispositivos como calculadoras,
relojes digitales y otros” (Suarez, 2010). Básicamente tienen dos filtros polarizantes con filas de
cristal líquido alineadas perpendicularmente; al aplicarse una corriente en estos filtros se da un
paso a la luz, dependiendo de lo que permita el segundo filtro. Hay ciertos factores que permiten
que las pantallas sean de color y es que tenga filtros de colores básicos como rojo, verde y azul.
Las LCD graficas son pantallas de cristal líquido y su resolución se mide en pixeles. Una
de las ventajas de esta es que a diferencia de las de texto, estas permiten el trabajo de cada uno de
los pixeles, permitiendo así una mejor presentación y un mejor manejo de la información.
49
Fig.8 Pantalla grafica GLCD. Fuente recuperado de: http://www.arduinoos.com/wordpress/wp-
content/uploads/glcd_011.jpg
En la figura 8 se puede observar una pantalla grafica 128x64 que está conformada por una
matriz con puntos de visualización de 128 pixeles de largo por 64 de alto. Presenta facilidades para
ser manejada por microprocesadores de 8-Bits, además de presentar un bajo consumo. Es
importante tener en cuenta los pines de conexión y funcionamiento, los cuales se muestran en la
tabla 2, que se muestra a continuación:
PIN 1: VSS Conexión a tierra
PIN 2: VDD Conexión de alimentación ±5V
PIN 3: V0 Voltaje de salida negativa, por lo general es usada con un potenciómetro
con el PIN 18 para el ajuste del contraste de los pixeles
PIN 4: D/I Datos de E/S para el cambio de registro
PIN 5: R/W Determina si los datos se van a leer o escribir
PIN 6: E Habilita la comunicación con la GLCD
PIN 7-14 Especifica un dato de 8-Bits de información
PIN 15: CS1 Indica si se selecciona la primera mitad de la pantalla, pixeles 0-63
PIN 16: CS2 Indica si se selecciona la segunda mitad de la pantalla, pixeles 64-127
PIN 17: RESETB Señal de reinicio, funciona de varias formas dependiendo de la ocasión
PIN 18: VEE Conexión de ajuste de contraste de los pixeles
PIN 19: A Conexión positiva de la luz de fondo, por lo general son +5V
PIN 20: K Conexión negativa de la luz de fondo, por lo general es tierra) Tabla.3 Conexiones de la GLCD. Fuente: Scribd. GLCD. Recuperado de:
https://es.scribd.com/document/318358812/GLCD
5.10. SENSOR ULTRASONICO
Son sensores de proximidad que detectan objetos ya sea a centímetros o a metros de
distancia. “El sensor emite un sonido y mide el tiempo que la señal tarda en regresar. Estos reflejan
50
en un objeto, el sensor recibe el eco producido y lo convierte en señales eléctricas, las cuales son
elaboradas en el aparato de valoración. Estos sensores trabajan solamente en el aire, y pueden
detectar objetos con diferentes formas, diferentes colores, superficies y de diferentes materiales.
Los materiales pueden ser sólidos, líquidos o polvorientos, sin embargo, han de ser deflectores de
sonido. Los sensores trabajan según el tiempo de transcurso del eco, es decir, se valora la distancia
temporal entre el impulso de emisión y el impulso del eco” (Cardenas, 2015). El sensor ultrasónico
HC-SR04 (figura 9), que está dotado de cuatro pines de conexión (VCC, TRIG, ECHO y GND) y
trabaja a 5Vcc. Básicamente el ECHO y el TRIG se encargan del funcionamiento de este sensor,
ya que se encargan de la recepción y envío de un pulso, respectivamente, para la detección de la
distancia.
Fig.9 Sensor ultrasonico HC-SR04. Fuente: Electrocrea. Sensor Ultrasonico HC-SR04. Recuperado de:
https://electrocrea.com/products/sensor-ultrasonico-hc-sr04?variant=746752895
5.11. SENSOR DE EFECTO HALL
El sensor de efecto Hall o simplemente sensor Hall o sonda Hall (denominado según Edwin
Herbert Hall) se sirve del efecto Hall para la medición de campos magnéticos o corrientes o para
la determinación de la posición. Si fluye corriente por un sensor Hall y se aproxima a un campo
magnético que fluye en dirección vertical al sensor, entonces el sensor crea un voltaje saliente
proporcional al producto de la fuerza del campo magnético y de la corriente. Si se conoce el valor
de la corriente, entonces se puede calcular la fuerza del campo magnético; si se crea el campo
51
magnético por medio de corriente que circula por una bobina o un conductor, entonces se puede
medir el valor de la corriente en el conductor o bobina. (Perez, 2012).
En ciertos casos este sensor puede llegar a ser usado como detector de metales. Un ejemplo
de sensor de efecto Hall es el Ky-024 que es un módulo que tiene implementado el sensor y que
se puede observar en la figura 10, cuyo voltaje de funcionamiento está situado entre los 3 a 24V,
además de dos salidas (una análoga y otra digital), además de dos LEDs indicadores (encendido y
pulso).
Fig.10 Sensor de efecto Hall. Fuente: ebay. Modulo sensor efecto Hall. Recuperado de:
http://www.ebay.es/itm/Modulos-Sensor-Efecto-Hall-magnetico-salida-analogica-digital-
Arduino/222160033150?rmvSB=true
52
6. METODOLOGIA
El proyecto denominado “Implementación de un dispositivo electrónico para la medición
del Movimiento Armónico Simple”, cuenta con una investigación de tipo exploratorio en el cual
se pretende conocer y mejorar un instrumento de medición que, aunque ya existe no tiene los
soportes suficientes para tener datos precisos y específicos en las prácticas de laboratorio de este
fenómeno físico.
La investigación de tipo exploratorio, tiene el objetivo de revisar e investigar un tema que
no ha sido abordado con mayor profundidad, en el que hay ideas muy vagas, es decir que se usa
en aquellos proyectos en los que apenas la idea está planteada sin una implementación real de lo
que se está tratando. Es por esta razón, que esta investigación estará basada en el estudio
exploratorio, ya que aunque hay instrumentos encargados de las mediciones de Movimiento
Armónico Simple, ninguno cumple con los requisitos que debería tener un instrumento más
tecnificado; además, nos encontramos con que aunque han querido implementar sistemas que
puedan medir movimientos como el circular uniforme, solo se ha pretendido medir el Armónico
Simple, como una proyección de este, y no como un estudio único de este movimiento.
Hay que tener en cuenta además de esto, que va a estar dirigida a cualquier clase de persona
interesada en conocer el funcionamiento y aplicaciones del Movimiento Armónico Simple, de
manera especial será implementada en universidades o instituciones educativas que necesiten del
análisis de este movimiento para sus prácticas de laboratorio. Es importante saber que será un
sistema didáctico y de fácil uso, con el fin de facilitar el trabajo y de esta manera permitir un
análisis más profundo del movimiento a tratar, permitiendo de esta manera a los docentes del área
53
de Física, dar una solución más a fondo y rápida de ciertos fenómenos físicos que muchas veces
se dejan de lado.
Es importante resaltar que este prototipo será probado dentro de las instalaciones de la
universidad y es allí en donde se verá la efectividad del mismo, además de las utilidades y
aplicaciones que se le pueden dar al mismo tanto en un entorno educativo, como posiblemente en
un entorno más laboral.
Dentro de los métodos utilizados para el desarrollo del sistema nos encontramos
inicialmente con un proceso de investigación en el cual se resuelven todas las dudas pertinentes
acerca del Movimiento a tratar y en la que se analizan los factores que intervienen en este, como
pueden ser la aceleración, la velocidad, el periodo, entre otros, y así poder analizar su posterior
implementación dentro del sistema. Se investiga acerca de los inicios del péndulo simple, el cual
es un sistema utilizado para la medición del M.A.S, además de las utilidades de este movimiento
en la vida cotidiana.
Al tenerse ya esta información clara, se procede a verse el primer prototipo a usarse para
la medición y análisis de este movimiento en donde se analizan los factores que intervendrán
dentro del mismo, así como los posibles sensores y dispositivos de la adquisición de datos
utilizados para obtener la información del sistema, que sea necesaria para un correcto análisis del
M.A.S, así como para el análisis de otros factores que intervienen en este instrumento.
Es importante tener claro el modelo a usar y la implementación como tal del sistema,
empezarse a realizar diferentes pruebas que permitan un correcto funcionamiento del mismo, pues
lo que se pretende es que, al ser didáctico, tenga la posibilidad de ser usado por cualquier persona,
y a su vez que cumpla con normas de seguridad necesarias para un correcto funcionamiento del
54
mismo. Se espera que al tenerse este sistema funcionando, se puedan establecer ciertas guías de
laboratorio que serán utilizadas para la aplicación del mismo, así como los respectivos manuales
tanto de funcionamiento como de mantenimiento que serán de gran importancia para evitarse
posibles problemáticas con el mismo.
55
7. RESULTADOS
7.1. CAPITULO I: ANALISIS DEL SISTEMA A IMPLEMENTAR
7.1.1. Análisis de las variables físicas a medir
El primer paso y tal vez uno de los más importantes para empezar a trabajar en el sistema,
fue establecer de manera correcta el funcionamiento y las labores que cumpliría el dispositivo,
para lo cual fue necesario el análisis del Movimiento Armónico Simple representado mediante el
Péndulo Simple. Fue importante definir claramente qué variables físicas serian medidas y cuales
se entregarían al final de la práctica en la que se estuviera analizando el M.A.S a través del péndulo
simple.
Dentro de este proceso de análisis y recolección de información nos encontramos con que
hay ciertas medidas que, al ser variadas en el Movimiento Armónico Simple, hacen cambios
representativos en el sistema. Dentro de estas medidas se encuentran la longitud de la cuerda que
este sosteniendo el peso del péndulo, pues al ser variada esta hace que también se modifique el
periodo de oscilación del sistema, convirtiéndose en uno de los factores más importantes para la
variación del sistema en general. Para el caso de este movimiento también es importante tener en
cuenta el número de oscilaciones realizadas por el péndulo y el tiempo que demora en recorrerlo,
ya que por medio de estas puede ser hallada la frecuencia a la cual el sistema se encuentra
oscilando.
Hay ciertas medidas que son importantes tener en cuenta dentro del Movimiento Armónico
Simple y que son indispensables para el análisis del mismo; dentro de estas encontramos la
aceleración, la velocidad angular, así como el ángulo desde el cual se empieza la primera
oscilación. Al tener claros estos factores importantes dentro del sistema, que, aunque no son todas,
56
si permitirían un correcto análisis del mismo, se procede al análisis de los sensores que se
implementarían para la medición de estas variables.
7.1.2. Factores y errores que pueden influir en el sistema
Es necesario tener en cuenta que el sistema puede ser susceptible a algunos errores ya que
este no es ideal y aunque los errores son pocos, de menor magnitud y casi imperceptibles en el
funcionamiento del mismo se deben saber y aclarado desde un comienzo.
En el caso del sistema o del módulo se presentan variables físicas tanto internas como
externas, por un lado, está el rozamiento del aire que influye en este, ya que el lugar a trabajar no
es un laboratorio especializado en metrología, lo que puede generar que el péndulo se amortigüe
en un tiempo inferior. El error es de algunas milésimas de segundos que puede ser despreciables a
la hora de realizar las prácticas y por lo general este se presenta en los módulos de física usados
en los diferentes laboratorios de universidades y colegios.
Otro factor que puede intervenir en el módulo es la tensión que producen algunos cables
de conexión en el sistema como por ejemplo el cable de conexión del acelerómetro entre el
conector RJ45 macho y el conector RJ45 hembra en la parte superior del módulo, aunque la tensión
no es demasiada, si hay presencia de esta, lo cual genera una pequeña amortiguación en la
oscilación.
De los diferentes errores y problemas que surgieron se obtuvieron soluciones adecuadas
para que el error sea el menor posible o que no exista en algunos casos, como el caso del cable del
sensor ultrasónico HC-SR04 que va al puerto RJ45 que va conectado directamente con el arduino
MEGA, el cual puede desprenderse de este y posicionarlo en una regleta adecuada de tal forma
57
que no interfiera en el sistema, evitándose de este modo una amortiguación mayor dentro del
sistema.
Cabe aclarar que a medida que se fueron solucionando los problemas, fue posible realizarse
una versión más avanzada y efectiva, creándose así la segunda versión del sistema llamada (BETA)
la cual consta de diferentes adecuaciones que se realizaron en busca de obtener el menor error
posible tanto externo como interno, en donde se tuvo en cuenta el uso de canaletas y una mejor
distribución del espacio.
7.1.3. Dispositivos electrónicos a usar
La primera magnitud a tener en cuenta es la longitud que va a tener la cuerda que sostendrá
el peso, para lo cual es necesario implementar un sensor que se encargue de medirla. Para este caso
decidimos utilizar el sensor ultrasónico de referencia HC-SR04 que es muy práctico, pequeño y lo
más importante es que arroja medidas muy precisas, evitándose así un error grande en los
resultados de las mediciones. El HC-SR04 es un sensor que tiene un alcance de 2 a 450cm,
resultando adecuado para las mediciones de la cuerda a usar que por lo general y en las prácticas
que se hacen en los laboratorios de física, no superan los 60cm. El sensor puede ser observado en
la figura 11.
Fig.11 Sensor ultrasónico HC-SR04. Fuente: Robotix. Sensor Ultrasónico HC-SR04. Recuperado de:
http://erobotix.mx/tienda/index.php?id_product=64&controller=product&id_lang=3
58
Para el caso del número de oscilaciones que el péndulo hace elegimos un sensor de efecto
hall de referencia Ky-024 (se puede observar en la figura 12) que funciona por acción del campo
magnético al que sea expuesto, es decir que cada vez que se acerque un imán a este, enviara un
pulso al sistema que este controlando. Este resulta de gran utilidad dentro de la práctica pues al
ubicarse un imán en el péndulo a trabajar, el sensor puede detectar cada vez que el péndulo pasa
por este y así medir el número de oscilaciones del sistema. Cabe aclarar que el sensor necesita un
campo magnético mayor para que pueda ser dejado a grandes distancias del elemento, que para
este caso sería el péndulo.
Fig.12 Sensor de efecto Hall Ky-024. Fuente: Planeta electrónico. Módulo arduino efecto Hall + regulador.
Recuperado de: https://www.planetaelectronico.com/modulo-arduino-efecto-hall-regulador-sensor-magnetico-p-
16295.html
Dentro de las magnitudes que también resultan de gran importancia dentro de este
movimiento encontramos la aceleración y la velocidad angular y un sensor que se encarga de estas
medidas en simultáneo es el MPU6050 que tiene incluido un acelerómetro y un giroscopio; este
se muestra en la figura 13. Gracias a las medidas otorgadas por este sensor se puede hallar la
aceleración en los tres ejes del plano cartesiano y la velocidad angular en X y Y, además del ángulo
en X y Y, gracias a unos cálculos realizados. Es importante resaltar que este sensor necesita una
calibración para una medición más acertada tanto de las velocidades como de las aceleraciones,
así como un filtro para hallar los ángulos tanto en X como en Y.
59
Fig.13 Acelerómetro MPU6050. Fuente: Bot Science. IMU Acelerómetro+Giroscopio MPU6050. Recuperado de:
http://botscience.net/store/index.php?route=product/product&product_id=80
Además de las mediciones a realizar se tuvo como enfoque que el sistema tenía que ir
dirigido a estudiantes que quisieran hacer una práctica más dinámica y diferente a las que siempre
se encuentran en los laboratorios de física tanto de universidades como de colegios, por lo cual se
buscó un sistema por medio del cual la persona que fuera a usar el dispositivo tuviera que
autenticarse, además de ingresar la correspondiente cedula, para lo cual se hizo uso de un teclado
matricial 4x4 que se encargaría de cumplir con estas funciones. Esta puede ser visualizada en la
figura 14.
Fig.14 Teclado matricial 4x4. Fuente: HetPro. Teclado matricial alfanumérico rígido 4x4. Recuperado de:
https://hetpro-store.com/teclado-matricial-alfanumerico-rigido-4x4/
Para la visualización de la información se contempló una pantalla grafica (GLCD) SPI
128x64 en la que se dieran las instrucciones de los pasos a seguir para el desarrollo de la práctica,
así como las medidas que iba arrojando el sistema. Todo esto se complementa por medio del
sistema de adquisición de datos, que para este caso es por medio de LabVIEW que es una
60
plataforma que permite la adquisición y procesamiento de los datos recibidos, además de la
visualización de los mismos. Esta puede ser observada en la figura 15.
Fig.15 GLCD 128x64. Fuente: ebay. Graphics LCD Module GLCD 128x64. Recuperado de:
http://www.ebay.co.uk/itm/Graphics-LCD-Module-GLCD-128x64-12864-screen-KS0107-KS0108-Brand-New-in-
the-UK-/200906271188
Por último y no menos importante se escogió el Arduino Mega 2560 (figura 16) para el
control de todo el sistema y la comunicación con el sistema de adquisición de datos. Esta clase de
arduino tiene una gran ventaja y es la cantidad de entradas y salidas que tiene el mismo, así como
la capacidad de memoria comparada con la de otros Arduinos. Otra de las ventajas de utilizar
arduino es la compatibilidad que tiene con los sensores a trabajar, así como la amplia cantidad de
librerías que se han creado para el manejo de los mismos.
Fig.16 Arduino Mega 2560. Fuente: Arduino.cl. Arduino Mega 2560 R3. Recuperado de: http://arduino.cl/arduino-
mega-2560/
61
Vale la pena aclarara y mostrar que para el mejor funcionamiento del sistema y para una
práctica más interactiva se hizo la adecuación de pulsadores e interruptores para el control de
ciertos pasos dentro del sistema. Estos básicamente se encargan de darle un mayor control al
dispositivo de modo que pueda verse más ordenado el funcionamiento del mismo, así como para
darle una mayor precisión a la hora de realizar las mediciones.
7.1.4. Programación de cada uno de los sensores y elementos de manera independiente
Resulta importante determinar cómo funciona cada uno de los sensores de manera
independiente de modo que luego se pueda ver como trabajarían de forma conjunta; es por esta
razón que al tener analizados que sensores se utilizarían, se procedió a ver el funcionamiento de
cada uno independientemente. A continuación, se muestra la programación desarrollada para cada
uno de los sensores, así como ciertos factores que fueron importantes a tener en cuenta dentro de
la misma.
7.1.4.1. Sensor ultrasónico
Como ya se habló anteriormente, este sensor se encarga básicamente de medir la longitud
de la varilla que sostendrá el peso. Este se ubicó en la parte superior del sistema de modo que
pudiera medir la distancia que había desde la parte superior de la varilla hasta la parte superior de
la masa sostenida en el péndulo. Cabe aclarar que para la programación del sensor es importante
tener en cuenta ciertas magnitudes físicas como lo son la velocidad del sonido, pues a través de
esta medida y del tiempo es posible hallar la distancia a la cual se encuentra el objeto. La
programación utilizada para este sensor se muestra en la figura 17 y a través de esta lo que se hizo
fue medirse el tiempo que demora el pulso enviado por el Trigger y que al rebotar en el objeto que
se encuentre en frente de este, vuelve a sensor, pero en este caso es recogido por el Echo. Este
tiempo que tarda en ir y volver al ultrasonido es el que se multiplica por la velocidad del sonido
62
(340m/s en el aire) para de este modo obtenerse la distancia a la cual se encuentra el objeto, y que
para nuestro caso vendría siendo la longitud de la cuerda a trabajar. Sin embargo, es importante
aclarar que este resultado debe ser dividido entre dos, pues si se dejara simplemente el valor que
se recibe inicialmente, se estaría teniendo en cuenta el tiempo que demora desde que sale, rebota
y se devuelve. También en la ecuación [8] se puede observar la formula utilizadas para hallar estos
valores a través del sensor.
x = v ∗ t [8]Ecuación de la distancia
Fig.17 Programación para el sensor ultrasónico. Fuente: autor
Gracias a este programa se pueden obtener las medidas de la longitud en centímetros,
quedando de este modo sincronizado y programado el sensor de forma adecuada.
63
7.1.4.2. Sensor de efecto Hall
En el caso de este sensor, lo utilizamos principalmente para la medición del número de
oscilaciones del péndulo, por medio del uso de interrupciones, de tal modo que durante el proceso
de oscilación se active un contador que como su nombre lo indica, cuente el número de veces que
el péndulo pasa por este. Es de anotar que en el péndulo debe haber un imán que se encargue de
activar el pulso del sensor. Además de esto, hay que tener claro que el resultado final del contador
debe ser dividido entre dos, pues al estar ubicado este sensor en el centro del sistema, hace que
cuente cuando va y viene el péndulo, que en teoría vendría siendo solo una oscilación. Dentro de
esta medición por interrupciones también hay que tenerse en cuenta que es mejor evitar los delays
pues ocasionan ciertos conflictos, para lo cual se hace uso de la revisión del tiempo que ha
transcurrido desde el primer pulso, de modo que sea considerable el tiempo que pasa entre un pulso
y otro. La respectiva programación puede ser observada en la figura 18 que se muestra a
continuación.
Fig.18 Programación para el sensor de efecto Hall. Fuente: autor
64
7.1.4.3. Acelerómetro
El acelerómetro cumple una función muy importante dentro de los procesos de medición
pues se encarga en primera instancia de medir las aceleraciones en los tres ejes (x, y, z),
dependiendo del rango de tiempos de muestreo que se establezca con lo cual se pueden obtener las
gráficas correspondientes a este movimiento. Además de esto y gracias al giroscopio que lleva
incorporado el modulo, se puede hallar la velocidad angular en dos ejes (x, y) y los ángulos tanto
en x como en y. Aunque este sensor resulta un poco complicado de calibrar en ciertas ocasiones,
pudimos encontrar ciertas librerías que permiten una adquisición de los datos de manera más
acertada, así como un sistema de calibración del mismo que es importante utilizar para evitar
errores significativos en las mediciones resultantes. El sensor presenta ciertos errores en los valores
finales obtenidos, debido a que hay ciertas variables físicas que intervienen en el sensor y una de
ellas es la aceleración de la gravedad. Sin embargo, gracias al uso de ciertos filtros es posible hallar
el ángulo de una manera más acertada y con el menor error posible.
Es importante saber que esta clase de sensores siempre van a medir una aceleración,
dependiendo de la posición en la que se encuentre ubicado y esto se debe a la aceleración de la
gravedad que interviene en todos los cuerpos presentes en la Tierra. Además de esto cabe aclarar
que a partir de la aceración obtenida a través de este sensor se puede hallar la velocidad y la
posición de sistema por medio de la integración de estos valores obtenidos. De otro lado y mediante
el giroscopio nos es posible determinar qué tan rápido oscila, en este caso el péndulo. Cabe anotar
que esta clase de giroscopios se basan en el efecto Coriolisis para medir la velocidad a la cual se
encuentran funcionando.
Es muy importante tener en cuenta la hoja técnica de este sensor a la hora de programar,
pues a pesar de que hay diferentes librerías que permiten hallar las medidas fácilmente, es
65
necesario saber de dónde y a que hace referencia cada uno de estos valores entregados por el
acelerómetro. Vale la pena anotar que el MPU6050 se comunica al arduino por medio del bus I2C,
además de esto ser una facilidad para trabajar con cualquier clase de microcontrolador. En la
imagen que aparece en la figura 19, 20 y 21 se puede observar la programación que necesita este
sensor para su funcionamiento.
Fig.19 Programación para el acelerómetro parte 1. Fuente: autor
Fig.20 Programación para el acelerómetro parte 2. Fuente: autor
66
Fig.21 Programación para el acelerómetro parte 3. Fuente: autor
Mediante esta programación es posible hallar las magnitudes que pueden ser de gran
utilidad durante las prácticas, pero a pesar de esto, muchos de estos datos obtenidos no son
conocidos por todos y por eso es necesario aclarar a que equivale cada uno.
El acelerómetro básicamente trabaja en el orden de las gravedades y el MPU6050 trabaja
a dos gravedades, convirtiéndolo en un sensor que presenta gran precisión; sin embargo, los datos
que son recibidos o mostrados ya sea en el puerto serial o en una pantalla, se muestra en valores
de hasta 16384 cuando esta calibrado, lo cual es arrojado gracias a la librería implementada. Vale
la pena anotar que estos valores son tanto positivos como negativos, dependiendo del eje en el cual
se esté trabajando y que cuando el sensor está ubicado horizontalmente, el eje z siempre debe
marcar un valor cercano al nombrado anteriormente, ya que equivaldría a la aceleración de la
gravedad (idealmente 9,8m/s2). Para el caso del giroscopio estos valores son diferentes pues están
dentro de otros rangos y estos varían dependiendo de la velocidad del sistema, lo cual será
67
observado en las prácticas que se realizan con el dispositivo. En la tabla 4 y 5 se pueden observar
los valores a los cuales se calibrarían tanto el acelerómetro como el giroscopio.
Tabla.4 Características del acelerómetro. Fuente: InvenSense. MPU-6000 and MPU6050. Register Map and
Descriptions Revision 4.0.
Tabla.5 Características del giroscopio. Fuente: InvenSense. MPU-6000 and MPU6050. Register Map and
Descriptions Revision 4.0.
Para el caso de los ángulos es importante tener en cuenta que para estos es necesario utilizar
un filtro tanto pasa bajos para el acelerómetro como pasa altos para el giroscopio, esto evita que
las fuerzas externas que influyen sobre el acelerómetro cambien los valores reales de las
mediciones. Para el cálculo de los ángulos se utiliza la ecuación [9] (Mechatronics, s.f.) que se
muestra a continuación:
Angulo = 0,98(angulo + 𝜔giroscopiodt) + 0,02(angacelerometro) [9]Angulos con filtro
Con esta ecuación se consigue filtrar aquellos valores que no son dichamente de los valores
o mediciones del sensor, sino aquellos que están influyendo sobre él y que se convierten en ruido,
afectando de esta manera los valores reales de las mediciones.
68
Un punto muy importante a tener en cuenta es el hecho de que esta clase de sensores
necesitan una calibración de modo que los valores sean lo más cercanos a la realidad, pues muchas
veces, aunque parezca que este está bien posicionado, es posible que al momento de ensamblarlo
haya quedado con algún desnivel que pueda ocasionar errores. Aunque estos programas de
calibración ya se encuentran en la red, es importante saber que el principio de calibración de este
sensor se basa en el uso de offsets que permiten la calibración de la placa, compensándose de este
modo los errores causados por la mala posición del sensor.
7.1.4.4. Teclado matricial
La función principal del teclado matricial es la de permitir la autenticación para el ingreso
al sistema, para lo cual fue necesaria la implementación de dos claves que servirían como
administrador o como visitante, lo cual permite tener un mayor control de las personas que ingresan
al sistema, además de permitir un reporte más completo a la hora de presentar un informe. La
programación correspondiente al teclado matricial se puede observar en la figura 22, 23 y 24 que
se muestra a continuación. El programa que se muestra a continuación es el básico para hacer las
pruebas y ver el funcionamiento del teclado, sin embargo, en el programa final se agregaron más
detalles que se irán observando más adelante.
Fig.22 Programación para el teclado matricial parte 1. Fuente: autor
69
Fig.23 Programación para el teclado matricial parte 2. Fuente: autor
Fig.24 Programación para el teclado matricial parte 3. Fuente: autor
7.2. CAPITULO 2: IMPLEMENTACION DEL SISTEMA FUNCIONAL
Al tener organizada la programación se procedió a unirse todos los programas de modo
que el sistema quedara funcionando en conjunto, empezando con la autenticación del usuario,
continuando con la medición de la longitud, y finalizando con la medición de la aceleración y el
70
número de oscilaciones recorridas. Toda esta información era mostrada a través del puerto serial,
la cual se convirtió en la primera prueba del sistema para ver su correcto funcionamiento.
7.2.1. Unión del teclado, el acelerómetro, el ultrasónico y el sensor de efecto Hall
Cada uno de los sensores se encuentra funcionando correctamente de manera independiente y para
la unión de los tres dentro del programa resulta necesario implementar cuatro pulsadores que le
den un mayor orden a las prácticas. Es importante tener en cuenta que inicialmente, el sensor de
efecto Hall tenía una programación diferente a la que finalmente fue implementada y que
presentaba ciertos problemas a la hora de hacer el conteo, todo esto se debía a los retardos que esta
tenia, razón por la cual, en los programas finales se verá que el contador se hizo por medio de
interrupciones para darle una mayor precisión al sistema.
7.2.2. Unión del programa en la GLCD
Al ver que el programa se encontraba funcionando de manera correcta se procedió a
ensamblarse el sistema en la GLCD de modo que pudiera visualizarse las instrucciones para el
funcionamiento del sistema. Gracias a la pantalla grafica es posible visualizar una interfaz de inicio
que permite que el sistema funcione solo cuando sean ingresadas las contraseñas correctas, ya sea
como usuario o como visitante, además de que es necesario ingresar la cedula de quien este
manipula el dispositivo, de modo que esto pueda ser generado en un reporte, además de permitir
un control de aquellos que manipulen el sistema, evitándose de este modo que el sistema se dañe
sin la posibilidad de encontrar responsables de esto.
Para la programación de la GLCD es necesario el uso de una librería que permite su
correcto funcionamiento y que da la posibilidad de que esta sea más interactiva y atractiva para el
usuario que la esté visualizando, pues da la posibilidad de adecuar en la misma distintos tipos de
71
letras, números y da la oportunidad de ingresar figuras en la misma. El nombre de esta librería es
U8glib y es de uso libre para cualquier persona que desee utilizarla.
La programación correspondiente a la GLCD se encuentra en la sección de anexos en donde
se puede visualizar la programación final del dispositivo (versión ALPHA). Allí se encuentran ya
incluidas las librerías y cada una de las inicializaciones de la pantalla gráfica. En las figuras que
se muestran a continuación se puede visualizar las diferentes pruebas que se hicieron con la GLCD
y las que se puede visualizar que el sistema se encuentra funcionando de manera correcta. La figura
25 muestra una de las pantallas iniciales en las que se hace una pequeña introducción al sistema.
Básicamente esta imagen que se muestra corresponde a la segunda pantalla del sistema, pero es
importante aclarar que estas pantallas de inicio pueden ser modificadas en el momento en el que
el dispositivo sea implementado en laboratorios de universidades o colegios.
Fig.25 Visualización del sistema en la GLCD parte 1. Fuente: autor
En la figura 26 se puede visualizar como básicamente iniciaría el sistema y en donde se da
la opción de ingresar bien sea como administrador o visitante. Resulta importante clarificar que
cuando se ingresa como administrador, se está sobreentendiendo que la práctica se está llevando a
cabo bajo la supervisión de alguien ya sea un docente o encargado de un grupo, de este modo se
72
hará el ingreso de varias cedulas, dependiendo del número de personas que vayan a realizar la
práctica.
Al ser un dispositivo pensado para implementarse en los laboratorios de física ya sean de
colegios o universidades, se crean estos dos modos de ingreso de modo que las prácticas puedan
realizarse tanto en horas de clase como en extra clase, existiendo por esta razón un usuario llamado
visitante, que va a ser aquel encargado del dispositivo y quien va a realizar sus prácticas de manera
individual y sin la supervisión de nadie. Gracias a la adquisición de datos se podrá llevar un registro
de las personas que utilicen el péndulo, y esto será explicado detalladamente más adelante.
Fig.26 Visualización del sistema en la GLCD parte 2. Fuente: autor
Al hacer el ingreso ya sea como administrador o visitante y luego de haber ingresado las
cedulas respectivas se procede a inicializarse la práctica, como se observa en la figura 27.
Fig.27 Visualización del sistema en la GLCD parte 3. Fuente: autor
73
Al tratarse de la primera práctica en la GLCD se puede observar que hay ciertos errores al
visualizar los resultados en la pantalla, lo cual se debe a que para mostrar los datos se debe trabajar
por medio de coordenadas, haciendo que sean varias las veces en las que hay que probar que las
letras o elementos quedaron bien ubicados dentro de la pantalla. La visualización de los datos se
puede ver en la figura 28 que se muestra a continuación, en la que se encuentras las aceleraciones
y las velocidades angulares. También se puede observar uno de los errores que más se presentan a
la hora de visualizar los datos y es ubicar mal las coordenadas. Este error fue corregido más
adelante en el diseño posterior.
Fig.28 Visualización del sistema en la GLCD parte 4. Fuente: autor
7.3. CAPITULO 3: DISEÑO DE LA MAQUETA
7.3.1. Indagación acerca de las medidas más usadas
Respecto a las medidas que usamos para crear nuestro péndulo, nos remitimos a investigar
sobre cuáles eran las medidas estándares y apropiadas para dejarlo en el lugar de trabajo en este
caso los laboratorios de la universidad Santo Tomás Tunja. En algunos lugares encontramos que
los péndulos variaban en tamaño, todo esto dependiendo al periodo que lograban obtener, en otras
simplemente dando un valor a la dimensión que querían, para todo esto debemos saber que existen
74
básicamente dos tipos de fuerzas, muy a grandes rasgos, que actúan en el universo: estas son las
fuerzas conservativas y las no conservativas. El nombre denota el hecho de que las primeras
pueden generar un movimiento perpetuo mientras que las segundas no pueden. Fuerzas como la
gravedad, la fricción, resistencia de los fluidos y la viscosidad, etc., afectan el movimiento.
Existe una forma de manipular las diferentes fuerzas que disminuirían la velocidad de un
objeto (desacelerándolo) para lograr un estado de movimiento perpetuo en nuestro caso por un
tiempo determinado. Es así como decidimos basarnos en una medida estándar en cuanto a la
longitud de las cuerdas o en nuestro caso las diferentes varillas que adecuamos (la cual nos
funcionó) para lo cual tuvimos que tener en cuenta el rango de las longitudes que iban de 38cm
como la máxima longitud hasta 12 cm como la menor longitud. De aquí se partió para hacer todas
las dimensiones de la maqueta y que esta tuviera una buena oscilación y se pudiera demostrar de
una manera correcta el movimiento armónico simple.
7.3.2. Diseño e implementación del modelo
Para el diseño del sistema tuvimos que resolver algunos problemas, adecuarlos y optar por
la mejor solución, basándonos en el rango que decidimos tener en nuestras longitudes. A partir de
esta se construyó la maqueta comenzando por el armazón, el cual puede ser observado en la figura
29 que se muestra a continuación.
75
Fig.29 Armazón de la maqueta. Fuente: autor
El armazón está hecho de tubo cuadrado de lámina y mide 65 cm desde la parte inferior
hasta la parte superior, está compuesto por la base general la cual se aprecia en la figura 30 y
diferentes adecuaciones movibles con unos acondicionadores de tornillo prisionero para adecuar
los diferentes sensores.
Fig.30 Base general del péndulo. Fuente: autor
También consta de una caja hecha de madera MDF (Medium Density fibreboard), la cual
cumple la función de ser la base del péndulo y de igual forma contiene todos los circuitos
76
realizados. Las dimensiones de esta son 25cm de largo por 40cm de ancho y 10cm de alto que es
la profundidad de la caja.
Fig.31 Base de madera del péndulo. Fuente: autor
Se realizaron diferentes adaptaciones al modelo, ya que nos encontramos con diferentes
inconvenientes en la adecuación de los sensores, pulsadores, pantalla grafica GLCD y teclado
matricial tales como las bases y la posición de los mismos tal y como se muestra en la figura 31.
7.3.3. Análisis de los elementos a usar para su funcionamiento ideal
Entre los elementos escogidos para implementar se encuentran conectores, cables, cuerdas
a usar (para este caso varillas), peso a implementar, seguridad y conector USB) y los cuales se
explicarán más claramente a continuación.
La varilla cromada que se observa al lado izquierdo es el soporte para el sensor de efecto
hall y se puede observar con más detalle en la imagen de la derecha, que aparecen en la figura 32.
77
Fig.32 Base del sensor de efecto Hall. Fuente: autor
Para la seguridad se implementó una chapa Maxilock dotada con dos llaves, que tiene la
finalidad de asegurar que solamente una persona capacitada pueda destapar la caja e interactuar
con los circuitos que se encuentran dentro de ella. Esta se puede observar en la figura 33.
Fig.33 Seguridad del sistema mediante chapa. Fuente: autor
En la parte posterior de la caja justo abajo del péndulo (figura 34) se encuentran los
diferentes puertos de entrada RJ45 para conectar los diferentes cables o bus de conexiones
dependiendo del sensor, cada número indica que sensor debe ser conectado.
78
Fig.34 Conexión de los sensores. Fuente: autor
En el costado derecho del sistema se encuentra un conector USB hembra-hembra el cual
permite conectar el computador a través de un cable macho-macho que a su vez le suministra el
voltaje necesario para encender el sistema y así iniciar la respectiva práctica, además de permitir
la comunicación serial con el computador y la programación del arduino ubicado internamente.
Fig.35 Conector hembra para conexión al PC. Fuente: autor
7.3.4. Adecuación de los dispositivos a usar en el sistema
Buscamos que el acondicionamiento del sistema fuera gráfico y dinámico, para lo cual se
implementó una pantalla grafica (GLCD) junto a un teclado matricial, los cuales fueron ubicados
estratégicamente pensando tanto en el aspecto técnico como en el estético, de igual forma los
pulsadores fueron ubicados en un orden coherente respecto a los pasos que se debe seguir en las
guías de laboratorio. Esta ubicación puede ser vista en la figura 36 que se muestra a continuación.
79
Fig.36 Ubicación de pulsadores en la maqueta. Fuente: autor
7.3.5. Maqueta finalizada
Después del acondicionamiento ya mencionado en los anteriores ítems, pudimos finalizar
la estructura del péndulo en su totalidad (figura 27), dando paso a las pruebas que se deben realizar
sobre esta para garantizar que todo el modulo esté funcionando de una manera correcta.
Fig.37 Péndulo finalizado. Fuente: autor
7.4. CAPITULO 4: IMPLEMENTACIÓN DEL SISTEMA DENTRO DE LA MAQUETA
7.4.1. Diseño de circuito
Para este caso, necesitamos diseñar e implementar la baquela, en la cual se encuentran los
pines de voltajes, tierras y entradas para la pantalla grafica (GLCD). Se buscó que el diseño fuera
80
pequeño para que no tuviéramos ningún tipo de inconveniente con el arduino ya que los dos están
dentro de la caja que los recubre, el proceso para la baquela se desarrolló de la siguiente manera:
7.4.1.1. Diseño
La baquela fue diseñada en el programa Proteus el cual es un programa para la simulación
de circuitos electrónicos que nos permite exportar el diseño para imprimirlo y quemarlo y a su vez
nos da una vista previa en diferentes versiones 2D y 3D, que pueden ser observadas en la figura
38.
Fig.38 Diseño de la baquela en Proteus. Fuente: autor
7.4.1.2. Construcción
El proceso de construcción de la baquela se puede ver en la figura 39. De igual forma, se
resaltan los pines a conectar para que no haya ningún tipo de error por quien lo manipule siempre
y cuando tenga conocimientos en electrónica.
Fig.39 Construcción y ensamble de la baquela. Fuente: autor
81
7.4.2. Adecuación del arduino dentro del sistema
El arduino escogido fue el MEGA 2560 puesto que tiene más capacidad de memoria, más
entradas que otros Arduinos, compatibilidad con los sensores trabajados y la gran variedad de
librerías proporcionando así un trabajo más eficaz. Este se encuentra ubicado en la mitad de la caja
de madera dada la ubicación de los diferentes conectores RJ45 y USB. A su vez está protegido por
una caja de acrílico hecha a la medida del mismo para evitar cortos o mal manejo del mismo. La
ubicación de este es mostrada en la figura 40 que aparece a continuación.
Fig.40 Ubicación del arduino dentro de la caja. Fuente: autor
7.4.3. Alimentación de los dispositivos a usar (cableado general)
El Arduino Mega es alimentado mediante el puerto USB del PC, aunque también puede
ser alimentado por una fuente externa de poder. La alimentación es seleccionada de manera
automática por la misma placa, pero hay que tener en cuenta que cuando se trabaja con una fuente
externa de poder se debe utilizar un convertidor AC/DC para la regulación de dicho voltaje, de
modo que trabaje en el rango operativo de la placa. De igual manera, se puede alimentar el micro
mediante el uso de baterías, aunque para este caso no sería el adecuado ya que es necesaria la
comunicación por cable serial del Arduino al PC, para la adquisición de en LabVIEW. Cabe
resaltar que el voltaje debe estar preferiblemente en el rango de los 7 a los 12 voltios.
82
La comunicación entre el computador y arduino se produce a través del puerto serie, sin
embargo, posee un convertidor USB-serie, por lo que sólo se necesita conectar el dispositivo al
PC utilizando un cable USB, como se refleja en la figura 41 y 42.
Fig.41 Conexión PC a péndulo. Fuente: autor
Fig.42 Conexión PC a péndulo. Fuente: autor
7.5. CAPITULO 5: DISEÑO DEL PROGRAMA DE ADQUISICION DE DATOS
Para la adquisición de datos se utilizó la plataforma de programación de LabVIEW, ya que
es una interfaz muy gráfica e interactiva, además de que al trabajarse con arduino, es posible una
comunicación un poco más sencilla que con otros dispositivos. Antes de profundizar más en el
programa que se utilizó para la comunicación y recepción de datos, es importante conocer cada
uno de los bloques que se utilizaron, lo cual será explicado con detalle en el presente capitulo.
83
7.5.1. Variables a recibir y procesar en LabVIEW
El primer paso para iniciar la programación en LabVIEW es determinar que variables van
a ser recibidas y aquello que nos gustaría ver en la interfaz gráfica, así como que datos serian
importantes dentro del reporte final. Es por esta razón, que se hizo un análisis detallado de aquello
que se quería ver reflejado en la programación teniendo en cuenta lo sensores utilizados, se
procedió a escoger las variables que serían recibidas por LabVIEW y que serían guardadas en el
reporte en EXCEL o simplemente serian mostradas en la interfaz de usuario.
El primer elemento a tener en cuenta en este caso fue el teclado matricial, pues a través de
este serian ingresadas las cedulas o documentos de identificación de los usuarios del sistema,
estableciéndose de este modo que los primeros datos recibidos y procesados serían los números de
identificación ingresados como primer paso. Al tener esto claro, nos encontramos con que el
segundo dato a recibir y de gran importancia es el de la longitud, dejando claro que el primer sensor
a tener en cuenta seria el ultrasónico, ya que este se encarga de medir la longitud de la cuerda a
usar (en este caso una varilla). Al iniciarse la práctica entra en juego el acelerómetro y el sensor
de efecto Hall, y al finalizar la práctica la idea es adquirir todos los datos de la aceleración, la
velocidad y los ángulos en los diferentes ejes, siendo estas variables de gran importancia a la hora
de hacerse un análisis final de la práctica. Por último y no menos importante, es necesario recibir
en la interfaz de LabVIEW el número de oscilaciones del péndulo, estableciéndose de esta forma
la última variable a recibir en el programa.
Hay que aclarar que dentro de la programación establecida en LabVIEW también se tiene
en cuenta un temporizador que permita medir el tiempo transcurrido en las oscilaciones del
péndulo, así como ciertos aspectos que se mostraran más adelante.
84
7.5.2. Bloques utilizados dentro de la programación en LabVIEW
LabVIEW es un entorno de desarrollo o programación que se basa en los bloques gráficos,
viéndose de este modo la necesidad de conocer un poco más a fondo como puede ser utilizado
cada uno de ellos y en qué casos sería importante y necesario usarlos. Aunque dentro de esta
programación hubo algunos de ellos que fueron repetitivos, es importante conocerlos y ver la
función que cumplen en el sistema.
El primero y tal vez uno de los más importantes dentro del programa es el que permite la
comunicación serial con el arduino, el cual se muestra en la figura 43. Básicamente la
comunicación serial se basa en los bloques que se encuentran ubicados allí, los cuales permiten
que el puerto serial en el cual se encuentre, en este caso, el arduino se comunique con LabVIEW
y le permita el envío y recepción de información. Es importante tener en cuenta la velocidad a la
cual se van a enviar o recibir datos, ya que en este caso el arduino y LabVIEW deben encontrarse
a la misma velocidad, y esta se configura en el recuadro de baud rate (imagen de la derecha), para
LabVIEW y en la programación de arduino.
Fig.43 Comunicación serial en LabVIEW. Fuente: autor
En la figura 44 podemos observar un bloque que es importante para ver los datos que se
están recibiendo a través del puerto serial, los cuales, al ser recibidos es necesario organizarlos
para visualizarlos en la interfaz de usuario de LabVIEW.
85
Fig.44 Visualización de datos enviados al puerto serial. Fuente: autor
El siguiente bloque a tener en cuenta dentro de la programación es aquel que nos permite
identificar los valores recibidos por el puerto serial y filtrar aquellos valores que van antes o
después de cierto carácter. Básicamente se encarga de buscar una expresión que se especifica como
una constante dentro del bloque y da la opción de mostrar los datos de antes y después de este
carácter. Las conexiones de este bloque se muestran en la figura 45. El valor que aparece en este
caso en blanco, es en donde se debe escribir la expresión o letra que permitirá que los datos
recibidos del puerto se dividan; es importante saber que estos bytes recibidos en el puerto, son los
enviados desde el arduino, razón por la cual el valor o letra que separa los datos debe ser enviado
desde la misma programación de la placa.
Fig.45 Match Pattern en LabVIEW. Fuente: autor
En ciertos casos resulta importante procesar este valor recibido como string en LabVIEW
y pasarlo a un valor numérico, y esta no es la excepción, pues, aunque el valor que necesitamos
mostrar es dichamente el que se recibe en LabVIEW, si lo necesitaremos como número en ciertos
casos para hacer algunas comparaciones. En la figura 46 se puede observar el bloque necesario
86
para hacer esta conversión, que pasa de un valor de String (rosa en la imagen), a un valor numérico
(bloque azul).
Fig.46 Decimal string to number en LabVIEW. Fuente: autor
Para la organización de estos datos en tablas, para su posterior envío a Excel se utilizan
bloques como los que se muestran en la figura 47, en los que se pueden observar los arrays que
organizan los datos en una especie de tabla. La ventaja de estos, es que dan la oportunidad de
almacenar los datos ya sea como String o como número, lo cual resulto de gran utilidad al momento
de guardar los datos recibidos desde el puerto serial. En general estos bloques trabajan en conjunto
para recibir e ir organizando los datos, de modo que luego puedan ser mostrados en una tabla
dentro del mismo programa.
Fig.47 Bloques necesarios para la organización de datos en LabVIEW. Fuente: autor
Básicamente son los bloques utilizados para la recolección y organización de los datos
recibidos y que como puede observarse en la imagen, el recuadro naranja indica que se trabaja en
número y el rosado en string, de esta manera se puede desarrollar el sistema para cualquiera de los
dos casos, ingresando uno u otro dentro de recuadro que aparece en la parte superior izquierda en
87
la figura 47. Sin embargo, hay que tener en cuenta que para los números ya no se usaría la tabla
que allí aparece (table) pues esta organiza únicamente los datos en string, aunque esto en realidad
no sería un problema, pues los valores pueden ser mostrados en un indicador diferente.
Fig.48 Comparador (si el valor de entrada es diferente a cero) LabVIEW. Fuente: autor
En la figura 48 se puede observar un comparador que resulto de gran utilidad a la hora de
organizar la programación, pues al dar un valor que ya sea falso o verdadero, permite organizar
las tablas de modo que no haya una sobrecarga de ceros en las mismas. Si el valor de entrada es
diferente a cero, manda un TRUE a la salida, de lo contrario manda un FALSE. En la programación
final que será mostrada más adelante se puede observar la función que cumple este bloque más
específicamente.
Fig.49 Reporte de datos en Excel desde LabVIEW. Fuente: autor
El último bloque del cual es importante hablar es aquel que nos permite realizar los reportes
en Excel y cuyo uso es demasiado importante. Este se encarga de recibir las tablas de datos que ya
han sido procesadas y enviarlas a una plantilla en Excel que previamente ha sido creada con los
datos que van a ser utilizados. Esta plantilla debe ser cargada en el MS Office Report (figura 49),
88
de modo que siempre que se le envíe al programa una orden para que haga el reporte, este quede
plasmado allí.
7.5.3. Organización del programa y reportes en Excel
Ya teniendo claras las ideas de qué variables serian recibidas dentro del programa y que
bloques se utilizarían para la recepción y procesamiento de los datos, se dio paso a organizar
progresivamente el programa. Primero que todo, fue necesario hacer ciertas modificaciones dentro
del programa (serial.print que envía la información desde arduino a LabVIEW a través del puerto
serial) que ya estaba funcionando correctamente en arduino, pues fue necesario establecer dentro
del mismo en qué casos serían enviados los datos a través del puerto serial, además de la necesidad
de establecer ciertos valores que serían enviados como String y que se encargarían de separar los
datos que son enviados por el puerto, pues al ser enviados como tramas y sin darles un valor
especial que le permita al programa reconocerlos como diferentes, hace que el problema en
LabVIEW pueda reconocerlos como diferentes, haciendo que todos los datos se confundan sin
saberse a que corresponde cada uno. El ejemplo más claro de cómo fueron enviados estos datos
desde arduino se encuentra en la figura 50.
Fig.50 Envío de datos desde Arduino a LabVIEW. Fuente: autor
89
En donde cada uno de los espacios (esp9 y esp8 para este caso) equivale a una letra
diferente que se encarga de separar el dato enviado y da la oportunidad de que a través de los
bloques de LabVIEW solo sean mostrados los datos requeridos y que queden ubicados en la
posición adecuada dentro de la tabla.
Fig.51 Procesamiento de datos recibidos LabVIEW. Fuente: autor
En la figura 51 se puede observar una parte del programa desarrollado en donde se muestra
como se hace el procesamiento de cada uno de los datos recibidos, para este caso el de las cedulas
y en donde solo se va a mostrar los datos que se encuentren ubicados entre L y M y que fueron
enviados con este formato desde arduino. Es importante destacar que cada uno de los datos
enviados desde Arduino (aceleración, número de oscilaciones, etc.) están separados por letras
diferentes para evitar de esta manera cualquier clase de error y paso de datos equivocados.
Fig.52 Organización de los datos en las tablas. Fuente: autor
Al recibirse únicamente el dato deseado, se procede a ubicarlo en su respectiva tabla por
medio de la programación que se observa en la figura 52, en donde los datos son guardados en una
tabla denominada documentos de identificación. Fue importante poner estos registros en un ciclo
case para evitar que las tablas se llenaran de ceros cuando no estuvieran recibiendo dato alguno,
90
para lo cual fue necesario hacer la conversión del dato o en este caso documento de identificación
resultante del filtro de información y por medio de un comparador (valor diferente a cero), para
que activara el case únicamente cuando el valor que iba a llenar la tabla fuera diferente a cero, tal
y como se observa en la figura 53, en donde se explica pero con el número de oscilaciones.
Fig.53 Revisión de datos a ingresar en la tabla. Fuente: autor
Al tener finalizada la práctica y al haber recibido la totalidad de los datos esperados para
el reporte, se oprime el botón de generar reporte, el cual ya se encuentra configurado tal y como
se muestra en la figura 54, que básicamente seria lo que estaría observando el usuario.
Fig.54 Reporte generado en LabVIEW. Fuente: autor
91
Cuando se oprime el botón de reporte se detiene el programa y abre Excel para enviar el
reporte generado finalmente, lo cual se puede observar en la figura 55 que se muestra a
continuación.
Fig.55 Reporte generado en Excel. Fuente: autor
Con esto se finalizaría la interfaz gráfica ideada para el presente modelo. Gracias a los
datos arrojados y enviados a Excel es posible la realización de graficas correspondientes a la
aceleración y velocidad producida por el sistema.
7.5.4. Fallas y soluciones dentro de la interfaz
Uno de los mayores problemas a la hora de realizar la programación, fue la dificultad para
enviar los datos de forma independiente y sin que se confundieran los datos ya que las tramas de
datos no nos permitían visualizar a que correspondía cada valor, lo cual fue solucionado a medida
que se encontraron los bloques que permitían hacer un pequeño rastreo de la información que
necesitaba ser separada. Otra problemática encontrada durante el desarrollo de la programación,
fue el reporte de los datos en Excel, ya que, al oprimir el botón de la generación del reporte,
reiniciaba de nuevo sistema haciendo de este modo que no fuera posible una secuencia entre las
92
prácticas. Este problema fue resuelto satisfactoriamente en el modelo BETA del cual se hablará
más adelante. La programación en su totalidad puede ser observada en los anexos, al final del
presente documento.
7.6. MEJORAS Y CONTRUCCION DE LA NUEVA VERSION (BETA)
7.6.1. Mejoras al diseño de la maqueta
En el transcurso del desarrollo del prototipo, fueron surgiendo problemas estéticos,
técnicos, electrónicos y mecánicos, los cuales tuvimos que ir resolviendo paso por paso, como el
amortiguamiento repentino del péndulo, en donde tuvimos que rearmar la balinera y acoplarle un
nuevo rodamiento.
La tensión que surgía entre los conectores RJ45 y los cables de los sensores era otro
problema que nos aquejaba de manera sobre ponente y dejaba en riesgo la viabilidad del proyecto,
en el caso del sensor ultrasónico suprimimos el error quitando el cable y adaptándolo a una regleta
lo cual dejo al sistema con total libertad, respecto a las conexión del MPU6050 tuvimos que
cambiar el cable UTP por BUS, y hallar la posición correcta que tuviera el menor error posible,
dándole un poco más de libertad al cable o BUS, y así permitir que las oscilaciones del péndulo
fueran más correctas a la realidad.
Con la culminación del primer sistema, adecuado y funcional y después de arreglar los
diferentes inconvenientes y problemas que fueron surgiendo, decidimos hacer una nueva versión,
con más conocimiento de fabricación y diseño, desarrollando así el nuevo prototipo siendo esta la
versión BETA, la cual consta de una adaptación nueva tanto estética como técnica.
93
La versión BETA esta acondicionada con diferentes mejoras que se pueden ver a simple
vista (figura 56), y otras que se integraron dentro del programa y de la interfaz gráfica de
LabVIEW.
Fig.56 Versión BETA, péndulo simple. Fuente: autor
Aunque está basada en el anterior prototipo su aspecto es diferente ya que optamos porque
fuera más liviana utilizando una madera diferente a la del anterior prototipo llamada MDF
laminada que es un poco más delgada pero resistente. A su vez, los pulsadores se dividieron en
dos grupos, dejando un espacio entre ellos para integrar una regla que nos permite encontrar el
ángulo en el que se está sosteniendo la masa por medio de unos cálculos desarrollados en la interfaz
gráfica de LabVIEW, de lo cual se hablara a mayor detalle más adelante.
94
Fig.57 Implementación de regla en la versión BETA. Fuente: autor
Como se muestra en la figura 57, se puede ver la implementación de la regla que permitirá
hallar el ángulo. A su vez la masa se hizo de manera diferente para que pueda integrar un mayor
peso para las prácticas de laboratorio. Se agruparon todos los cables que sobresalían en la parte de
atrás de la maqueta y se ubicaron en diferentes regletas que fueron acopladas respecto a las
necesidades que se tuvieran.
Fig.58 Implementación de LED en la versión BETA. Fuente: autor
Se desarrolló una caja que recubre el sensor de efecto hall para mayor protección del mismo
como se nota en la anterior imagen, adaptando de igual forma un LED indicador de color verde
(fig.58), el cual nos permite por sus destellos de luz ver en qué momento está pasando la masa por
el sensor.
95
Fig.59 Tapa removible en la versión BETA. Fuente: autor
Entre otras modificaciones que se hicieron, la tapa de la versión BETA es desprendible lo
cual nos permite interactuar de una mejor manera con los circuitos, la cual se puede observar en
la figura 59.
7.6.2. Mejoras en la programación
Para la realización de la versión BETA fue necesario hacer ciertas modificaciones dentro
de la programación de arduino con el fin de mejorar ciertas funciones generales del sistema, así
como la visualización general dentro de LabVIEW. El primer cambio de gran importancia dentro
de la programación es la adición de nuevos strings que se enviaran para la separación de datos,
pero para este caso, eran las que permitan generar reportes de manera independiente cuando se
opriman cada uno de los botones (R Y RT) encargados de reiniciar el sistema. Para esto, se
ubicaron dos nuevos Serial.print dentro de la programación de los botones para así enviar este dato
por el puerto serial a LabVIEW y que, al ser identificado, se dé la orden de la generación de los
reportes de manera independiente.
Todo esto se hizo con el fin de generar diferentes reportes sin que automáticamente el
sistema se detenga; la detención total únicamente ocurre cuando se oprime el botón RT, ya que
inmediatamente se envía el reporte final y se inicia una nueva práctica, reiniciándose de este modo
el sistema de nuevo. Para tener mayor claridad en donde se hizo este cambio, se puede remitir a la
96
imagen que se muestra a continuación (figura 60), en donde se ve la adición de las nuevas variables
como string y el envío de estos datos a través del puerto serial.
Fig.60 Modificación 1 dentro de la programación versión BETA. Fuente: autor
Otro punto adicional dentro del sistema fue la implementación de un LED que se encienda
cuando el sensor de efecto Hall mande el pulso, lo cual ocurre cuando se está haciendo el conteo
del número de oscilaciones del péndulo. Este cambio puede observarse en la figura 61 en donde
aparece el cambio realizado. También se hizo una modificación para que el programa enviara una
trama de unos (11111) para separar los datos en el reporte, pues cuando solo se reinicia una nueva
práctica (R), los reportes de las aceleraciones y velocidades siguen saliendo en la misma tabla,
siendo importante para este caso crear una línea divisoria entre unos datos y otros. Por último, fue
necesario hacerse un cambio en la visualización que aparece en la GLCD cuando se oprime el
botón RT, pues inicialmente aparecía una pantalla que permitía ingresar como administrador o
como visitante, sin embargo, al estar unida la programación de LabVIEW con la de arduino y al
oprimirse RT, el sistema se reinicia, para lo cual es importante dar play de nuevo en la interfaz de
usuario de LabVIEW. El nuevo letrero puede observarse en la figura 62.
97
Fig.61 Encendido de LED en programación versión BETA. Fuente: autor
Fig.62 Letrero para reiniciar el sistema general en versión BETA. Fuente: autor
Básicamente dentro del programa se hicieron estas modificaciones para un mejor
funcionamiento del mismo y tener una visualización más clara de las oscilaciones del péndulo, así
como para la obtención más clara y especifica de los reportes en Excel. La programación completa
de este modelo BETA aparece en la sección de anexos, junto con la versión ALPHA para de este
modo distinguir las diferencias entre una y otra.
7.6.3. Mejoras en la interfaz gráfica en LabVIEW
La interfaz gráfica en LabVIEW resulta de gran importancia, pues es en donde el usuario
va a interactuar con el programa y con los datos suministrados por el sistema, además de ser el
lugar en donde se encontrará con los datos más importantes resultantes de la realización de la
práctica con el péndulo. Por esta razón y en la nueva versión mejorada del sistema se hicieron
98
ciertas modificaciones que permitan un mejor desarrollo de una práctica, así como una obtención
más ordenada y detallada de los datos suministrados por el sistema.
El primer paso fue crear una interfaz más atractiva para el usuario, más ordenada y en
donde se puedan observar en su totalidad los datos y resultados suministrados por el péndulo, lo
cual puede observarse en la figura 63 y 64 que se muestran a continuación.
Fig.63 Interfaz de usuario versión BETA. Fuente: autor
Fig.64 Interfaz de usuario versión BETA, página 2. Fuente: autor
99
En la figura 64 es posible ver que esta interfaz tiene una página en la cual se podrán ingresar
ciertos datos que son opcionales dentro del reporte, además de un cronometro para la medición del
tiempo que duraran las oscilaciones del péndulo. Esto, junto al valor adquirido del número de
oscilaciones, permitirá hallar el periodo del péndulo, así como evaluar ciertos criterios que el
docente tenga a bien organizar dentro de sus prácticas.
Gracias a la regla ubicada en la parte inferior, que proporciona el dato horizontal al cual se
encuentra ubicado el péndulo de la versión BETA y a la longitud suministrada por el sensor
ultrasónico es posible hallarse el Angulo al cual se empiezan las mediciones, dato que será muy
importante para la realización de la práctica y el análisis de los datos finales dentro del mismo.
Todos estos datos serán mostrados en la tabla de datos (figura 65) que se encontrara llena al
finalizar la práctica y que será la que se imprima en los reportes de Excel.
Fig.65 Organización de datos en la interfaz gráfica BETA, página 3. Fuente: autor
Al finalizarse la práctica, el usuario tendrá la opción de oprimir R o RT ya sea para iniciar
solo una nueva práctica o para reiniciar el sistema totalmente, respectivamente. Cuando se oprime
el primero, el sistema generara un reporte parcial de la práctica como se observa en la figura 66 y
100
67, y cuando se oprime el segundo, se genera un reporte final en Excel y se detiene el sistema,
quedando listo para iniciarse una nueva práctica desde ceros cuando se reinicie el sistema, siendo
esta una de las modificaciones más representativas dentro del programa en LabVIEW para la hora
de generarse los reportes.
Fig.66 Reporte en Excel página 1. Fuente: autor
Fig.67 Reporte en Excel página 2. Fuente: autor
Para el caso de los reportes parciales y finales se tienen dos bloques diferentes de la
generación de estos dentro de LabVIEW, los cuales se muestran en la figura 68. Los reportes en
Excel permiten la realización de graficas que permiten analizar el movimiento del péndulo, pues
en ellas se entregan los tiempos para la realización de las gráficas (cada 200ms aproximadamente),
101
lo cual se observara más detalladamente en la sección de realización de pruebas con cada uno de
los sistemas. Dentro de la programación también se agregaron algunos bloques en donde se hace
el cálculo necesario para la obtención del Angulo (figura 69) al cual se encuentra inicialmente el
péndulo y que es calculado con los datos que el usuario debe ingresar. Estas modificaciones se
pueden revisar en la programación general que se encuentra en la sección de anexos del presente
documentos.
Fig.68 Generadores de reportes de manera independiente. Fuente: autor
Fig.69 Calculo del ángulo al cual se encuentra el péndulo en su posición inicial. Fuente: autor
7.6.4. Implementación de diferentes longitudes
Entre otros cambios que realizamos, decidimos hacer más varillas con longitudes
diferentes, lo cual permite realizar diferentes prácticas de laboratorio sin necesidad de que haya
102
problema por la tensión que producen los cables ya que cada una de estas se desarrolló con sus
propios cables para que solo sea una cuestión de quitar y poner.
Fig.70 Diferentes longitudes para la versión BETA. Fuente: autor
Se construyeron 4 varillas en total (figura 70) las cuales son movibles y pueden integrarse
al módulo del péndulo sin ningún tipo de esfuerzo, sus medidas son de: 38cm, 30cm, 22cm y 18cm.
Cabe aclarar que estas varillas pueden ponerse en diferentes posiciones a lo largo del péndulo
teniendo un rango desde 38cm como máximo hasta 8 cm como mínimo, a su vez se desarrollaron
las pruebas con cada una de las varillas, las cuales se encuentran expuestas en los anexos del libro.
7.7. PRUEBAS CON LOS DOS MODELOS (ALPHA Y BETA)
Al tener listos los dos modelos, tanto el ALPHA como el BETA, fue necesario hacer las
correspondientes pruebas a cada uno de los modelos, con diferentes ángulos y con diferentes
longitudes para el caso de la segunda versión. Con cada uno de los reportes recogidos fue posible
realizar las diferentes graficas que responden al movimiento del péndulo en cada uno de los ejes
del plano cartesiano.
7.7.1. Funcionamiento del modelo ALPHA
En el primer modelo se establecieron ciertas variables a tenerse en cuenta y que serían los
datos resultantes a la práctica realizada con este. Hay que tener en cuenta que en este modelo solo
103
se tiene una varilla que se encarga de sostener el peso, aunque con esta también es posible variarse
las longitudes con las cuales se va a trabajar la práctica, y con la cual se podrá ver la diferencia
que hay entre una y otra longitud. El reporte de este modelo es un poco más sencillo, pero
suministra los datos más básicos con los cuales se puede realizar un análisis de este movimiento.
Es importante aclarar que las aceleraciones y velocidades son dadas en el formato establecido por
el acelerómetro y tal vez para la persona que este manejando el sistema puede resultar un poco
confuso en un comienzo; sin embargo, este valor puede escalizarse en uno más conocido como
puede ser la aceleración dada en m/s2 como usualmente la conocemos. La decisión de dejar estos
valores en gravedades (que es la medida establecida por el acelerómetro en su configuración) es
porque permite una mejor visualización de las gráficas, ya que da los valores en un rango de -
16384 a 16384 teniéndose un mayor rango de observación.
Dentro del sistema hay ciertos indicadores que muestran la parte frontal de peso (que es
donde está ubicado el sensor) y que permite un mejor funcionamiento del mismo, pues si se tienen
mal ubicado, de este modo también puede arrojar datos erróneos en los diferentes ejes, teniéndose
en cuenta el movimiento que se quiere analizar.
7.7.2. Pruebas con modelo ALPHA
Se hicieron desde el comienzo diferentes pruebas con el modelo ALPHA en el que se
revisaba que todos los sensores estuvieran funcionando de manera correcta. En la primera prueba
que se hizo con el sensor aún no se tenía organizada la información en LabVIEW, pero gracias a
los datos recibidos por el puerto serial, fue posible la obtención de las gráficas que se muestran a
continuación (figura 71) en las que se observan las aceleraciones en cada uno de los ejes.
104
Fig.71 Primeras pruebas en cada uno de los ejes. Fuente: autor
En cada una de ellas se puede observar el movimiento que realizo el sensor en cada uno de
los ejes dependiendo del punto en el que se encuentre, lo cual es importante a la hora de realizar
las respectivas prácticas. Sin embargo, es importante tener en cuenta que el posicionamiento del
peso (acelerómetro) es muy importante, pues una pequeña variación en su posición puede
ocasionar que los datos cambien con respecto al eje en el que este esté ubicado. En las prácticas
que se muestran a continuación se puede ver que el sensor está ubicado con una pequeña variación
comparada con los primeros datos tomados.
El primer reporte resultante del proceso se muestra en la figura 72 en donde se observa la
interfaz gráfica en LabVIEW y el resultado de los datos tomados en la primera práctica. En la
figura 73 se pueden ver los datos resultantes de la primera práctica, generados como un reporte de
Excel y en donde es posible la realización de gráficas para ver cómo se está comportando el sistema
en cada uno de los ejes. Las demás prácticas realizadas con este modelo se pueden observar en la
sección de anexos.
105
Fig.72 Primera prueba modelo ALPHA. Fuente: autor
Fig.73 Reporte generado en Excel, práctica 1. Fuente: autor
106
7.7.3. Graficas generadas del modelo ALPHA
Gracias al reporte de datos generados en LabVIEW es posible ver las respectivas graficas
que responden al movimiento en cada uno de los ejes tanto en aceleración, velocidad y ángulo que
varían teniéndose en cuenta la longitud de la cuerda que lo sostiene como el ángulo al cual está
ubicado el péndulo. Es importante recordar que la recepción de datos en LabVIEW está siendo en
un tiempo aproximado de 200ms, por lo cual es importante trabajar estos rangos de tiempo al
momento de graficar. A continuación, se pueden observar las gráficas resultantes de la toma de
datos en la primera práctica, las cuales se pueden ver en x, y, z en cuanto a la aceleración y x, y
para el caso de la velocidad y los ángulos.
Fig.74 Aceleración en X, modelo ALPHA. Fuente: autor
Fig.75 Aceleración en Y, modelo ALPHA. Fuente: autor
0
1000
2000
3000
4000
5000
6000
0 2000 4000 6000 8000 10000 12000 14000
Aceleracion en X
-8000
-6000
-4000
-2000
0
2000
0 2000 4000 6000 8000 10000 12000 14000
Aceleracion en Y
107
Fig.76 Aceleración en Z, modelo ALPHA. Fuente: autor
Fig.77 Velocidad en X, modelo ALPHA. Fuente: autor
Fig.78 Velocidad en Y, modelo ALPHA. Fuente: autor
0
5000
10000
15000
20000
0 2000 4000 6000 8000 10000 12000 14000
Aceleracion en Z
-20000
-15000
-10000
-5000
0
5000
10000
15000
20000
0 2000 4000 6000 8000 10000 12000 14000
Velocidad en X
-6000
-4000
-2000
0
2000
4000
6000
8000
0 2000 4000 6000 8000 10000 12000 14000
Velocidad en Y
108
Fig.79 Angulo en X, modelo ALPHA. Fuente: autor
Fig.80 Angulo en Y, modelo ALPHA. Fuente: autor
En las gráficas anteriores (figuras 74-80) se pueden observar las respuestas al sistema en
cada uno de los ejes, respecto al movimiento que el péndulo este llevando en cada instante de
tiempo (cada 200ms). Hay que tener en cuenta que para un mejor desempeño del sistema y la
obtención de resultados más exactos es importante calibrar el acelerómetro, debido a que, al
momento de ubicarlo dentro del péndulo, puede quedar con ciertos desniveles que pueden causar
ciertos datos diferentes. Así, también es necesario ubicarlo en la posición correcta para que las
gráficas resultantes coincidan con el ángulo en el que se están tomando.
7.7.4. Funcionamiento modelo BETA
Las modificaciones que se le hicieron a este modelo se realizaron teniéndose en cuenta
ciertas problemáticas que se estaban presentando con el modelo anterior en cuanto a la parte física,
como al programa en general. En este modelo se debe tener en cuenta que hay integrada una regla
-150
-100
-50
0
0 2000 4000 6000 8000 10000 12000 14000
Angulo X
-300
-250
-200
-150
-100
-50
0
0 2000 4000 6000 8000 10000 12000 14000
Angulo Y
109
que permite medir la posición horizontal en la cual se encuentra el péndulo con el fin de hallar el
ángulo en el cual se inicia la medición con este valor y con el de la longitud de la cuerda usada.
Además de esto, se pueden también ver el número de pulsos generados en cada paso del péndulo
por enfrente del sensor, gracias al LED ubicado al lado derecho de la GLCD.
En cuanto a la interfaz gráfica, se ven grandes cambios en cuanto a que se convirtió en más
agradable y de fácil uso para quien la esté usando. Es importante tenerse en cuenta que en la
interfaz de usuario es necesario ingresar ciertos datos a la hora de hacer el reporte como lo es el
tiempo transcurrido, que se obtiene gracias al cronometro, así como las longitudes de la cuerda
que están dadas por el sistema y la longitud medida en la regla. Si en el reporte se quiere tener
guardado el dato de cuantos grupos había, se puede anotar, aunque es un valor realmente opcional;
todos estos datos deben ingresarse antes de oprimir ya sea R o RT que son los encargados de
generar los respectivos reportes.
En cuanto a la funcionalidad y modo de uso, se sigue conservando la del modelo ALPHA,
solo que para esta se tiene la posibilidad de hacer el cambio de las longitudes e inclusive el peso
si se desea.
7.7.5. Pruebas con el modelo BETA
Para el siguiente modelo se hicieron pruebas similares a las que se realizaron con el modelo
ALPHA, solo que para este caso fue necesario anotar la medida de la regla horizontal con el fin de
hallar el ángulo en cada caso. También fue necesario hacer el cambio de la cuerda que se estaba
usando para ver la diferencia que se encontraba al cambiar las longitudes, así como iniciar el
cronometro que media el tiempo que se realizaba en la práctica.
110
Como se puede observar, esta práctica nos da la oportunidad de tener un reporte más
detallado y completo que en el modelo anterior, dando la oportunidad de hacer más análisis y tener
más datos que pueden ser analizados a mayor detalle. A continuación (figura 81, 82, 83 y 84) se
puede observar una de las prácticas realizadas con este modelo, en la que aparecen los datos con
los cuales es posible obtener las gráficas de aceleración, velocidad y ángulo. Las demás prácticas
podrán encontrarse en la sección de anexos al final del presente documento.
Fig.81 Página 1 Interfaz gráfica modelo BETA. Fuente: autor
Fig.82 Página 2 Interfaz gráfica modelo BETA. Fuente: autor
111
Fig.83 Página 1 Reporte Excel modelo BETA. Fuente: autor
Fig.84 Página 2 Reporte Excel modelo BETA. Fuente: autor
112
7.7.6. Graficas generadas del modelo BETA
Gracias a los datos obtenidos en la primera práctica, es posible hallar las gráficas
correspondientes a las aceleraciones, velocidades y ángulos en los diferentes ángulos del plano
cartesiano, teniendo en cuenta que para las dos últimas solo se podrán analizar los ejes X y Y.
Fig.85 Aceleración en X modelo BETA. Fuente: autor
Fig.86 Aceleración en Y modelo BETA. Fuente: autor
Fig.87 Aceleración en Z modelo BETA. Fuente: autor
0
1000
2000
3000
4000
5000
0 2000 4000 6000 8000 10000 12000
Aceleracion en X
-8000
-6000
-4000
-2000
0
2000
0 2000 4000 6000 8000 10000 12000
Aceleracion en Y
15000
15500
16000
16500
17000
17500
0 10 20 30 40 50 60
Aceleracion en Z
113
Fig.88 Velocidad en X modelo BETA. Fuente: autor
Fig.89 Velocidad en Y modelo BETA. Fuente: autor
Fig.90 Angulo en X modelo BETA. Fuente: autor
-10000
-8000
-6000
-4000
-2000
0
2000
4000
6000
8000
0 2000 4000 6000 8000 10000 12000
Velocidad en X
-8000
-6000
-4000
-2000
0
2000
4000
6000
0 2000 4000 6000 8000 10000 12000
Velocidad en Y
-200
-150
-100
-50
0
0 2000 4000 6000 8000 10000 12000
Angulo en X
114
Fig.91 Angulo en Y modelo BETA. Fuente: autor
En las figuras de las 85 a la 91 se pueden observar las gráficas que son el resultado de los datos
recolectados durante la primera prueba realizada con el modelo BETA. En estas se pueden
observar las diferentes aceleraciones y velocidades en cada uno de los ejes, así como en el caso de
los ángulos. Es posible ver que hay similitud entre las gráficas obtenidas en los dos modelos, no
obstante, es importante tener la calibración adecuada del acelerómetro para recibir siempre los
datos adecuados y precisos. Las gráficas de las demás prácticas aparecen en la parte de anexos del
presente documento.
-100
-80
-60
-40
-20
0
0 2000 4000 6000 8000 10000 12000
Angulo en Y
115
8. OTROS APORTES DERIVADOS DEL TRABAJO
Este trabajo de grado permitió la participación en el SIMPOSIO DE INVESTIGACIÓN
USTAMED 2016 realizado en la ciudad de Medellín, Colombia, en donde fue aceptado para
presentarse como ponencia con el artículo llamado, INSTRUMENTO PARA EL APRENDIZAJE
DEL MOVIMIENTO ARMÓNICO SIMPLE del grupo de investigación y desarrollo de nuevas
tecnologías (GIDINT) de la Facultad de Ingeniería Electrónica de la Universidad Santo Tomás
seccional Tunja presentado como proyecto de investigación en curso.
El sistema pendular se terminó en su totalidad, cumpliendo con los objetivos propuestos,
obteniendo satisfactoriamente no solo uno si no dos prototipos, teniendo claridad y calidad en los
resultados, proporcionando a la universidad con dos versiones llamadas ALPHA y BETA que
están a disposición de la comunidad académica especialmente en el área de Ingeniería en las
instalaciones de la Universidad Santo Tomás seccional Tunja, y así mismo se abre a la oportunidad
de que se siga investigando y se realicen ajustes al sistema que puedan llegar a trabajarse como
trabajos de grado. Así mismo se elaboró el manual técnico y de usuario para una mejor
comprensión técnica y de uso, lo cual es de gran importancia para manejar correctamente el
sistema.
Se desarrolló una interfaz gráfica en la plataforma de LabVIEW especialmente diseñada
para el manejo del sistema y creada por los autores del proyecto. Esta se encontrará en el
laboratorio de investigación de la Facultad de Ingeniería Electrónica en la Universidad Santo
Tomás, y será proporcionada para el buen funcionamiento del sistema: es de acceso libre para que
cualquier persona la solicite y pueda manejarla desde su computador siempre y cuando se tenga el
conocimiento previo al programa.
116
9. CONCLUSIONES
1. Es importante tener cuidado con los delays dentro del programa, puesto que pueden generar
ciertos inconvenientes y afectar el proceso de los sensores, para esto se recomienda recurrir
al uso de interrupciones, ya que estas tienen la capacidad de independizar la sección en la
que se esté teniendo el problema, ya que el manejo de los tiempos dentro del programa es
fundamental y de suma importancia.
2. La calibración del sensor MPU6050 es supremamente importante para la obtención de los
parámetros del Movimiento Armónico Simple, ya que este es el encargado de dar las
aceleraciones y las velocidades angulares en los diferentes ejes, lo cual permite generar el
reporte, realizar y estudiar las respectivas gráficas. Si este no está calibrado correctamente
la práctica se puede ver afectada, por esto es importante revisar que el sensor este calibrado
antes de realizar la respectiva guía. Hoy en día. La red nos ofrece diferentes métodos de
calibración, los cuales pueden llegar a ser de gran utilidad a la hora de lograr que el sistema
funcione correctamente.
3. Se debe tener en cuenta que hay algunas variables externas que pueden afectar al sistema
pendular, ya que este no es ideal, pueden intervenir factores naturales tales como la fricción
con el aire o la tensión que pueda producirse entre los cables de los diferentes sensores y
los conectores RJ45; para evitar esto y reducir al máximo ese error es importante seguir los
pasos que están explicados dentro del libro.
4. Las mejoras para el sistema son viables por parte de otros trabajos de grado, ya que se
podría llegar a implementar el manejo de nuevos sensores más precisos y óptimos, con más
detalle en la obtención de datos. El desarrollo y la investigación de otros sensores puede
servir para la identificación de diferentes fenómenos físicos, y así obtener los parámetros
117
de otros movimientos, como por ejemplo el circular uniforme. También se puede optar por
el cambio de varillas del sistema por otras más adecuadas, la incorporación de módulos
bluetooth en el sistema, y a su vez lograr modificaciones en el programa de Arduino y en
el programa de la interfaz gráfica de LabVIEW, todo esto para mejorar e ir en pro del
módulo.
118
10. RECOMENDACIONES
El sistema se deja a disposición de la Universidad Santo Tomas, para las pruebas y
manipulación del mismo. Este debe ser utilizado únicamente por personal académico
capacitado, con supervisión del docente que esté llevando a cabo las prácticas de
laboratorio.
Por ningún motivo se debe destapar la caja que contiene los circuitos electrónicos, a menos
que haya alguna falla en el sistema. Si esto sucede se debe optar por un especialista con
conocimientos de electrónica para evitar inconvenientes que pueden surgir con los
dispositivos electrónicos.
Se debe leer el manual de usuario previamente antes de utilizar el modulo, así se evitarán
fallas o posibles errores humanos; así mismo se debe leer el manual técnico en caso de que
el sistema requiera algún ajuste especial.
Para el uso en modo de visitante se debe hablar previamente con el docente y determinar
el momento para el uso y préstamo del sistema.
En caso de que el acelerómetro MPU6050 no esté trabajando correctamente ya sea que no
arroje datos acordes a la realidad en las aceleraciones o en las velocidades angulares, se
debe optar por hacer el proceso de calibración desde una programación en Arduino.
Se pueden desarrollar mejoras al sistema, por parte de otros trabajos de grado en donde se
puede implementar el manejo de mayor peso en la masa del péndulo, o el cambio de las
varillas del sistema por otras con diferentes pesos. Las modificaciones ya sea en el
programa de Arduino como en la interfaz gráfica de LabVIEW, el acople de módulos
bluetooth, o el desarrollo y la investigación de otros sensores que pueden servir para la
119
identificación de los parámetros de otros movimiento como por ejemplo el circular
uniforme, todo esto para mejorar e ir en pro del módulo.
120
BIBLIOGRAFÍA
[1] Jiang, X., Bi, T., Wang, Y., & Ouyang, J. (2011). A Simple Pendulum Experiment for Energy
Compensation Automation, 7142–7145.
[2] Engineering, P. (2011). Available online at www.sciencedirect.com Open access under CC
BY-NC-ND license., 10, 3734–3740. doi: 10.1016/j.proeng.2011.04.611
[3] Bermúdez, H. H., B, H. A. G., & Bermúdez, H. F. (2011). Prototipo mecatrónico para la
enseñanza y el aprendizaje del movimiento armónico simple Mechatronics prototype for
teaching and learning the simple harmonic motion, (49), 245–252.
[4] Kavithaa, R., Babu, R. U., & Deepak, C. R. (2013). Simple pendulum analysis - A vision based
approach. 2013 4th International Conference on Computing, Communications and Networking
Technologies, ICCCNT 2013, (Figure 1). doi:10.1109/ICCCNT.2013.6726567
[5] Butterworth, J. (2014). Simple harmonic motion: the swing of the pendulum | Jon ... Guardian.
Retrieved from https://www.theguardian.com/science/life-and-physics/2014/may/18/simple-
harmonic-motion-the-swing-of-the-pendulum
[6] Hernández-Sampieri, R., Fernández-Collado, C., & Baptista-Lucio, P. (2006). Análisis de los
datos cuantitativos. Metodología de la investigación.
[7] Historia de la Física. (n.d.). Retrieved from http://mural.uv.es/sansipun/
[8] Las leyes del Péndulo Físico Oscilación Periodo Frecuencia. (n.d.). Retrieved from
http://historiaybiografias.com/pendulo/
[9] Movimiento Armónico Simple.pdf. (n.d.). Retrieved from
http://www.proyectosalonhogar.com/enciclopedia_ilustrada/ciencias/Movimiento_Armonico
2.htm
121
[10] Serway, R. a., & Kirkpatrick, L. D. (1988). Physics for Scientists and Engineers with
Modern Physics. The Physics Teacher (Vol. 26). http://doi.org/10.1119/1.2342517
[11] Vizca Lajaraíno, J. R., & Pelegrí Sebastiá, J. (2007). LABVIEW Entorno gráfico de
programación. In M. S.A (Ed.), LABVIEW Entorno gráfico de programación (p. 385).
Retrieved from:
http://site.ebrary.com.bdatos.usantoTomás.edu.co:2048/lib/bibliotecaustasp/reader.action?do
cID=10204103
[12] Instruments, N. (2016). ¿Qué es Adquisición de Datos? Daq. Retrieved from
http://www.ni.com/data-acquisition/what-is/esa/
[13] UCM. (100AD). Manual Básico de Programación en LabVIEW (Vol. 1).
[14] Holguín, G., Pérez, S., & Orozco, Á. (2002). Curso Básico de LabVIEW 6i.
[15] Ruiz Guti, M. (2007). Manual de Programación Arduino: Manual de Programación.
Arduino Notebook, 1, 3–70.
[16] Baeza, J. P., & Pomares, J. (2009). Manual de arduino revision. Manual De Arduino, 1–8.
[17] Diosdado, R. (2014). Manual Arduino. Saudi Med J, 33, 3–8.
http://doi.org/10.1073/pnas.0703993104
[18] Ibraim Hernández, Juan Fajardo, Oskar Vanegas, J. B. (2011). Guía básica de arduino,
120.
[19] Matamoros S, A. Z. (2009). Ejemplo de un Péndulo Simple. Merida, Venezuela.
Retrieved from
http://www.webdelprofesor.ula.ve/ingenieria/matamoros/index_archivos/DF_SNL.pdf
122
ANEXOS
ANEXO 1: DATOS DE LOS AUTORES
Tania C. Barrera M nació en Tunja en 1993. Graduada en
el año 2009 de secundaria de la Escuela Normal Superior
“Leonor Álvarez Pinzón”. Actualmente se encuentra
realizando el trabajo de grado en la Universidad Santo
Tomás de la ciudad de Tunja, para obtener el título de
ingeniera electrónica. Durante su estudio se ha presentado
como ponente en Redcolsi nodo Boyacá, clasificando en las
dos ocasiones para el nacional llevado a cabo en
Bucaramanga y Montería.
Oscar F. Camargo A nació en Tunja en 1993. Graduado en
el año 2010 de secundaria del colegio “Nuestra Señora del
Rosario”. Actualmente se encuentra realizando su trabajo de
grado en la Universidad Santo Tomás de la ciudad de Tunja,
para obtener el título de ingeniero electrónico. Durante su
estudio se ha presentado como ponente en Redcolsi nodo
Boyacá, clasificando para el nacional llevado a cabo en
Bucaramanga y Montería
123
ANEXO 2: PROGRAMACIÓN MODELO ALPHA
#include "U8glib.h" // librería GLCD
#include <Keypad.h> //librería del teclado
#include "Wire.h" //Librería para establecer la comunicación I2C
#define MPU 0x68 //dirección de MPU-6050
U8GLIB_ST7920_128X64_1X u8g (40, 42, 44); //Inicialización de la GLCD. Pines de control
/*Variables del acelerómetro*/
int16_t AcX, AcY, AcZ, GyX, GyY, GyZ; //almacenamiento como enteros especiales
long tiempo;
float dt;
float AngX, AngY, AngZ; //Se establecen las variables para los ángulos en X Y Z
float angx_prev, angy_prev;
int AngXX, AngYY;
/*Variables para el contador*/
volatile int contador = 0;
volatile long lastInt;
/*Variables para el sensor de distancia*/
long Distancia; // Se define la variable distancia (sensor ultrasónico)
long Tiempo; // Se define la variable que mide el tiempo (sensor ultrasónico)
/*Variables para el teclado matricial*/
const byte Filas = 4; // número de filas
const byte Columnas = 4; // número de columnas
byte Pins_Filas[] = {
28, 26, 24, 22}; // se establecen las filas conectadas al arduino
byte Pins_Columnas[] = {
36, 34, 32, 30}; // se establecen las columnas conectadas al arduino
char tecla, boton, número; // variable para almacenar pulsación
char clave[]= "1234"; // Se escribe la contraseña de 4 digitos para el administrador
char código[4]; // Aquí se guardan los caracteres ingresados (administrador)
char clave_nuevo[]= "5678"; // Clave para el ingreso como invitado
char code[4]; // Aquí se guardan los caracteres ingresados (invitado)
char validación[1]; // Validación para ingreso como invitado o administrador
char Administrador[]= "1"; // Administrador
char Visitante[]= "2"; // Visitante o invitado
char cantidad[2]; // Almacena el número de grupos que van a trabajar
124
char* retroceso[]={
"Ya!", " 1", " 2", " 3"};
/*Contadores*/
int n=0, i=0, a=0, val=0, num=0, cont=0, z=0, r=0; // Inicialización de contadores
/*LabVIEW*/
String esp1 = "Q", esp2 = "W", esp3 = "E", esp4 = "R", esp5 = "T", esp6 = "Y", esp7 = "U", esp8
= "I", esp9 = "P", esp10 = "S", esp11 = "G", esp12 = "H", esp13 = "J", esp14 = "K", esp15 = "L",
esp16="M", esp17="N", esp18="V";
String acelerometrox, acelerometroy, acelerometroz, velocidadx, velocidady, angulox, anguloy,
ultrasónico, hall, grupo1, grupo2, ID, CC;
String envio="0", envio2="0", envio3="0", envio4="0", envio5="0";
/*Teclado matricial*/
char entrada; // Revisa el valor digitado desde la matriz
String PIN_Teclado = ""; // Almacena el valor digitado
byte NúmeroDeDigitos = 0; // Tienen en cuenta el número de digitos ingresados
char Teclas [ Filas ][ Columnas ] = //se ubican acá como está dispuesta la matriz a usar
{
{
'1','2','3','A' }
,
{
'4','5','6','B' }
,
{
'7','8','9','C' }
,
{
'*','0','#','D' }
,
};
Keypad teclado = Keypad(makeKeymap(Teclas), Pins_Filas, Pins_Columnas, Filas, Columnas);
// Inicializa el teclado
void setup(){
Serial.begin(9600); //Comunicación serial
125
/*Comunicación I2C para el acelerómetro*/
Wire.begin(); //Comunicación I2C
Wire.beginTransmission(MPU); //establece al ATMEGA 2560 como maestro
Wire.write(0x6B); //se inicia la comunicación I2C
Wire.write(0); //Se activa la comunicación
Wire.endTransmission(true);
/*Inicialización de la GLCD*/
u8g.setColorIndex(1); //Inicializa los pixeles en la GLCD
/*Entradas y salidas del arduino*/
pinMode(53, OUTPUT); //Se activa el pin 53 como salida (TRIGGER)
pinMode(52, INPUT); //Se activa el pin 52 como entrada (ECHO)
pinMode(51, INPUT); //Boton de medición de longitud
pinMode(23, INPUT); //Sensor de efecto Hall
pinMode(50, INPUT); //Inicialización de las mediciones
pinMode(49, INPUT); //Reset
pinMode(48, INPUT); //Reset Total
/*Se inicia a mostrar en la GLCD*/
u8g.firstPage(); //Mostrar en la primera página
do{
draw();
}
while (u8g.nextPage()); //Finaliza la escritura de la página
delay(5000); //Da el tiempo que dura encendida
u8g.firstPage(); //Mostrar en la primera página
do{
presentacion();
}
while (u8g.nextPage()); //Finalizala escritura de la página
delay(5000); //Da el tiempo que dura encendida
u8g.firstPage(); //Mostrar en la primera página
do{
presentacion2();
}
while (u8g.nextPage()); //Finalizala escritura de la página
delay(5000); //Da el tiempo que dura encendida
u8g.firstPage(); //Mostrar en la primera página
126
do{
u8g.setFont(u8g_font_trixel_square);
u8g.setFont(u8g_font_chikita);
u8g.drawStr(8, 33, "Para ingresar como:");
u8g.drawStr(26, 45, "Administrador [1]");
u8g.drawStr(26, 55, "Visitante [2]");
/* RECUADRO GENERAL */
u8g.drawFrame(0,0,128,64);
u8g.drawFrame(1,1,126,62);
u8g.drawFrame(3,3,122,20);
u8g.drawFrame(3,3,122,58);
}
while (u8g.nextPage()); //Finaliza la escritura de la página
delay(200); //Da el tiempo que dura encendida
}
void loop(){ //Empieza el ciclo
tecla=teclado.getKey();
while((tecla != NO_KEY)&&(val==0)){ //Revisa el valor de la tecla obturada
validación[val]=tecla; //Se almacena el valor de la tecla
u8g.firstPage(); //Inicializa la segunda página
do{
u8g.setFont(u8g_font_fur49n);
u8g.setPrintPos(40,55);
u8g.print(validación[val]);
}
while(u8g.nextPage()); //Termina la escritura de la página
delay(300);
val=val+1; //Contador de los digitos oprimidos
}
if(val==1){ //Revisa digitación de 1 número
if((validación[0]==Administrador[0])&&(cont<=3)){ //Se revisa si se registró el número 1
u8g.firstPage(); //Inicializa la segunda página
do{
u8g.setFont(u8g_font_unifontr);
u8g.drawStr(23, 15, "Ingrese la"); //Debe autenticarse
127
u8g.drawStr(32, 30, "clave de"); //Debe autenticarse
u8g.drawStr(12, 45, "Administrador"); //Debe autenticarse
u8g.drawStr(48, 60, "****"); //Debe autenticarse
u8g.drawFrame(0,0,128,64);
u8g.drawFrame(1,1,126,62);
}
while(u8g.nextPage()); //Termina la escritura de la página
delay(500);
while(cont<=3){ //Asegura que solo se digiten 4 caracteres
boton=teclado.getKey(); //se almacenan los datos ingresados desde la matriz
if(boton != NO_KEY){ //revisa el valor de la tecla obturada
u8g.firstPage(); //Inicializa la segunda página
do{
código[cont]=boton; //se van almacenando los datos ingresados
u8g.setFont(u8g_font_profont12);
u8g.drawStr(20, 30, "Clave ingresada");
u8g.setPrintPos(50,45);
u8g.print(código[0]); //imprime los datos en la pantalla
u8g.setPrintPos(56,45);
u8g.print(código[1]);
u8g.setPrintPos(62,45);
u8g.print(código[2]);
u8g.setPrintPos(68,45);
u8g.print(código[3]);
u8g.drawFrame(0,0,128,64);
u8g.drawFrame(1,1,126,62);
}
while(u8g.nextPage()); //Termina la escritura de la página
delay(100);
cont=cont+1; //va aumentando el contador
}
}
if(codigo[0]==clave[0]&&codigo[1]==clave[1]&&codigo[2]==clave[2]&&codigo[3]==clave[3]
){ //Clave de acceso para administrador
u8g.firstPage(); //Inicializa la segunda página
do{
u8g.setFont(u8g_font_unifontr);
128
u8g.drawStr(23, 20, "Ingrese el"); //Debe autenticarse
u8g.drawStr(32, 35, "número de"); //Debe autenticarse
u8g.drawStr(12, 50, "grupos [01-99]"); //Debe autenticarse
u8g.drawFrame(0,0,128,64);
u8g.drawFrame(1,1,126,62);
}
while(u8g.nextPage()); //Termina la escritura de la página
delay(500);
while(num<=1){ //Asegura que solo sean ingresados dos datos
número=teclado.getKey(); //se almacenan los datos ingresados del teclado
if(número != NO_KEY){ //revisa el valor de la tecla obturada
u8g.firstPage(); //Inicializa la segunda página
do{
cantidad[num]=número;
u8g.setFont(u8g_font_profont12);
u8g.drawStr(20, 30, "Número de grupos");
u8g.setPrintPos(58,45);
u8g.print(cantidad[0]); //imprime los datos en la pantalla
grupo1=String(cantidad[0]);
u8g.setPrintPos(64,45);
u8g.print(cantidad[1]);
grupo2=String(cantidad[1]);
u8g.drawFrame(0,0,128,64);
u8g.drawFrame(1,1,126,62);
}
while(u8g.nextPage()); //Termina la escritura de la página
num=num+1;
envio4=esp13+grupo1+grupo2+esp14;
}
}
Serial.println(envio4);
u8g.firstPage(); //Inicializa la segunda página
do{
u8g.setFont(u8g_font_profont10);
u8g.drawStr(32, 13, "Ingrese su NI"); //Debe autenticarse
u8g.drawStr(6, 28, "y el de los estudiantes"); //Debe autenticarse
u8g.drawStr(2, 43, "[A] terminando cada NI"); //Debe autenticarse
u8g.drawStr(2, 58, "[B] con el ultimo NI"); //Debe autenticarse
129
u8g.drawFrame(0,0,128,64);
u8g.drawFrame(1,1,126,62);
}
while(u8g.nextPage()); //Termina la escritura de la página
n=0;
while(n<=3000){ //permite el almacenamiento de aproximadamente 200 cedulas
entrada=teclado.getKey(); //se almacenan los datos ingresados desde la
matriz de números
if(entrada){ //si se digitan datos
if(entrada >='0' && entrada <= '9'){ //se establece el rango entre 0 y 9
ingreso_NIT(); //se redirige a ingreso_NIT()
}
else if(entrada== 'A'){ //se le da una funcion a A
Serial.print(envio5);
Serial.println(" ");
PIN_Teclado="";
u8g.firstPage(); //Inicializa la segunda página
do{
u8g.setFont(u8g_font_6x12);
u8g.drawStr(18, 30, "INGRESE EL NUEVO");
u8g.drawStr(57, 45, "NI");
u8g.setFont(u8g_font_cursor);
u8g.drawStr(25, 48, "R");
u8g.drawStr(100, 48, "R");
u8g.drawFrame(0,0,128,64);
u8g.drawFrame(1,1,126,62);
}
while(u8g.nextPage()); //Termina la escritura de la página
delay(200);
if(entrada >='0' && entrada <= '9'){ //se almacena una nueva cedula
ingreso_NIT(); //se redirige a ingreso_NIT()
}
}
else if(entrada== 'B'){ //se le da una funcion a B (empieza el sistema)
Serial.print(envio5);
Serial.println(" ");
130
sensor_longitud(); //se redirige a ingreso_NIT()
}
}
}
}
else if(i<=1){ //Si esta mal la clave envia error
i=i++;
clave_erronea();
}
else if(i>1){ // reinicia el sistema después de tres veces mal
exceder_limite(); //Redirecciona a exceder_limite()
cont=0; //Reinicia contadores
val=0;
i=0;
}
}
else if((validación[0]==Visitante[0])&&(cont<=3)){ //Se revisa si se registro el número 2
u8g.firstPage(); //Inicializa la segunda página
do{
u8g.setFont(u8g_font_unifontr);
u8g.drawStr(23, 15, "Ingrese la"); //Debe autenticarse
u8g.drawStr(32, 30, "clave de"); //Debe autenticarse
u8g.drawStr(25, 45, "Visitante"); //Debe autenticarse
u8g.drawStr(48, 60, "****"); //Debe autenticarse
u8g.drawFrame(0,0,128,64);
u8g.drawFrame(1,1,126,62);
}
while(u8g.nextPage()); //Termina la escritura de la página
delay(500);
while(cont<=3){ //Asegura que solo se digiten 4 caracteres
boton=teclado.getKey(); //se almacenan los datos ingresados
if(boton != NO_KEY){ //revisa el valor de la tecla obturada
u8g.firstPage(); //Inicializa la segunda página
do{
code[cont]=boton; //se van almacenando los datos ingresados
u8g.setFont(u8g_font_profont12);
131
u8g.drawStr(20, 30, "Clave ingresada");
u8g.setPrintPos(50,45);
u8g.print(code[0]); //imprime los datos en la pantalla
u8g.setPrintPos(56,45);
u8g.print(code[1]);
u8g.setPrintPos(62,45);
u8g.print(code[2]);
u8g.setPrintPos(68,45);
u8g.print(code[3]);
u8g.drawFrame(0,0,128,64);
u8g.drawFrame(1,1,126,62);
}
while(u8g.nextPage()); //Termina la escritura de la página
delay(100);
cont=cont+1; //va aumentando el contador
}
}
if(code[0]==clave_nuevo[0]&&code[1]==clave_nuevo[1]&&code[2]==clave_nuevo[2]&&code
[3]==clave_nuevo[3]){ //Clave de acceso para visitante
u8g.firstPage(); //Inicializa la segunda página
do{
u8g.setFont(u8g_font_unifontr);
u8g.drawStr(12, 20, "Ingrese su No."); //Debe autenticarse
u8g.drawStr(32, 35, "de cedula"); //Debe autenticarse
u8g.drawStr(12, 50, "seguido de [B]"); //Debe autenticarse
u8g.drawFrame(0,0,128,64);
u8g.drawFrame(1,1,126,62);
}
while(u8g.nextPage()); //Termina la escritura de la página
delay(500);
n=0;
while(n<=100){ // almacena hasta 100 caracteres
entrada=teclado.getKey(); //se almacenan los datos ingresados- teclado
if(entrada){ //si se digitan datos
if(entrada >='0' && entrada <= '9'){ //se almacena una nueva cedula
ingreso_NIT(); //redirecciona a ingreso_NIT()
}
132
else if(entrada== 'B'){ //se le da una funcion a B
Serial.print(envio5);
Serial.println(" ");
sensor_longitud();
}
}
}
}
else if(a<=1){ //Si esta mal la clave envia error
a=a++;
clave_erronea();
}
else if(a>1){ //Tres oportunidades de ingreso
exceder_limite(); //Redirecciona a exceder_limite()
cont=0; //Reinicia contadores
val=0;
a=0;
}
}
if ((validación[0] != Administrador[0])&&(validación[0] != Visitante[0])){ //Digito erróneo
u8g.firstPage(); //Inicializa la segunda página
do{
u8g.setFont(u8g_font_profont11);
u8g.drawStr(5, 20, "Opcion incorrecta..."); //Debe autenticarse
u8g.drawStr(17, 40, "Administrador [1]"); //Debe autenticarse
u8g.drawStr(17, 55, "Visitante [2]"); //Debe autenticarse
u8g.drawFrame(0,0,128,64);
u8g.drawFrame(1,1,126,62);
}
while(u8g.nextPage()); //Termina la escritura de la página
delay(500); //Reinicia el contador val
val=0;
}
}
}
133
void draw(){ // Cuando se llame a DRAW
u8g.setFont(u8g_font_tpssb); //Fuente a usar
u8g.drawStr( 2, 12, "MOVIMIENTO ARMONICO"); // Coordenada a usar
u8g.setFont(u8g_font_tpssb);
u8g.drawStr( 45, 23, "SIMPLE");
u8g.setFont(u8g_font_6x10);
u8g.drawStr( 23, 38, "PENDULO SIMPLE");
u8g.setFont(u8g_font_4x6r);
u8g.drawStr( 20, 55, "Universidad Santo Tomas");
u8g.setFont(u8g_font_4x6);
u8g.drawStr( 38, 62, "Tunja, Boyaca");
u8g.setFont(u8g_font_cursor);
u8g.setPrintPos(11,24);
u8g.print("¬");
u8g.setPrintPos(11,39);
u8g.print("F");
u8g.setPrintPos(115,28);
u8g.print("t");
}
void presentacion(){ //Cuando se llame a presentación
u8g.setFont(u8g_font_tpssb); //Fuente a usar
u8g.drawStr( 8, 13, "IMPLEMENTACION DE"); // Coordenada en la que se muestra y contenido
u8g.drawStr( 30, 25, "DISPOSITIVO");
u8g.drawStr( 12, 37, "ELECTRONICO PARA");
u8g.drawStr( 20, 49, "LA MEDICION DEL");
u8g.drawStr( 50, 61, "M.A.S");
/* RECUADRO GENERAL */
u8g.drawFrame(0,0,128,64);
u8g.drawFrame(1,1,126,62);
}
void presentacion2(){ //Cuando se llame la presentacion2
u8g.setFont(u8g_font_courB08); //Fuente a usar
u8g.drawStr( 6, 10, "Por:"); // Coordenada en la que se muestra y contenido
u8g.setFont(u8g_font_robot_de_niro);
u8g.drawStr( 55, 20, "TANIA C. BARRERA M.");
u8g.drawStr( 56, 30, "OSCAR F.CAMARGO A.");
134
u8g.setFont(u8g_font_courB08);
u8g.drawStr( 6, 40, "Directores");
u8g.setFont(u8g_font_robot_de_niro);
u8g.drawStr( 74, 50, "LUIS F. SOSA Q.");
u8g.drawStr( 59, 60, "CAMILO E. PARDO B.");
/* RECUADRO GENERAL */
u8g.drawFrame(0,0,128,64);
u8g.drawFrame(1,1,126,62);
}
void exceder_limite(){ //Cuando se llame exceder limite
u8g.firstPage(); //Inicializa la segunda página
do{
u8g.setFont(u8g_font_profont10);
u8g.drawStr(8, 18, "Excedio el limite. Para ingresar");
u8g.drawStr(8, 38, "Administrador [1]");
u8g.drawStr(8, 51, "Visitante [2]");
u8g.drawFrame(0,0,128,64);
u8g.drawFrame(1,1,126,62);
código[0]=0;
código[1]=0;
código[2]=0;
código[3]=0;
code[0]=0;
code[1]=0;
code[2]=0;
code[3]=0;
}
while(u8g.nextPage()); //Termina la escritura de la página
delay(500);
}
void clave_erronea(){ //Ingreso erróneo de la contraseña
u8g.firstPage(); //Inicializa la segunda página
do{
u8g.setFont(u8g_font_unifontr);
u8g.drawStr(43, 20, "Clave");
u8g.drawStr(36, 38, "Erronea");
u8g.drawFrame(0,0,128,64);
135
u8g.drawFrame(1,1,126,62);
u8g.drawFrame(3,3,122,58);
cont=0;
código[0]=0;
código[1]=0;
código[2]=0;
código[3]=0;
code[0]=0;
code[1]=0;
code[2]=0;
code[3]=0;
}
while(u8g.nextPage()); //Termina la escritura de la página
delay(500);
}
void ingreso_NIT(){ //Ingreso de las cedulas
NúmeroDeDigitos ++;
PIN_Teclado += entrada;
u8g.firstPage(); //Inicializa la segunda página
do{
u8g.setFont(u8g_font_profont11);
u8g.setPrintPos(6,20);
u8g.print("Documento ingresado:");
u8g.setPrintPos(38,40);
u8g.print(PIN_Teclado);
CC=String(entrada);
u8g.drawFrame(0,0,128,64);
u8g.drawFrame(1,1,126,62);
u8g.drawFrame(3,3,122,58);
}
while(u8g.nextPage()); //Termina la escritura de la página
n=n+1;
envio5=esp15+PIN_Teclado+esp16;
//Serial.print(envio5);
//Serial.println(" ");
}
void sensor_longitud(){
136
if (digitalRead(2)==HIGH){ //Sensor de efecto Hall pulso
u8g.firstPage(); //Inicializa la segunda página
do{
u8g.setFont(u8g_font_chikita);
u8g.drawStr(34, 15, "Oprima el boton");
u8g.drawStr(20, 30, "para medir la longitd L");
u8g.setFont(u8g_font_cursor);
u8g.drawStr(62, 54, "0");
u8g.drawFrame(0,0,128,64);
u8g.drawFrame(1,1,126,62);
}
while(u8g.nextPage()); //Termina la escritura de la página
//delay(200);
while (z<1){
if(digitalRead(51)==HIGH){ //Boton para medición de la longitud
digitalWrite(53,LOW); //Se asegura que el trigger esta desactivado
delayMicroseconds(2); //Se espera un tiempo para asegurar que esta apagado el trigger
digitalWrite(53, HIGH); //Se activa el pulso de salida en el trigger
delayMicroseconds(10); //Se da un tiempo de 10us de espera
digitalWrite(53,LOW); //Se corta el pulso para esperar el echo
Tiempo=pulseIn(52, HIGH); //Mide el tiempo hasta desde que sale hasta que llega el pulso
Distancia=int(0.017*Tiempo); //Se hace un calculo de la distancia
u8g.firstPage(); //Inicializa la segunda página
do{
u8g.setFont(u8g_font_chikita);
u8g.setPrintPos(20,25);
u8g.print("Longitud de la cuerda");
u8g.setFont(u8g_font_lucasfont_alternate);
u8g.setPrintPos(62,40);
u8g.print(Distancia);
ultrasónico=String(Distancia);
u8g.setPrintPos(58,48);
u8g.print("cm");
u8g.setFont(u8g_font_cursor);
u8g.setPrintPos(30,40);
u8g.print("A");
u8g.setPrintPos(100,40);
u8g.print("A");
137
u8g.drawFrame(0,0,128,64);
u8g.drawFrame(1,1,126,62);
u8g.drawFrame(3,3,122,58);
}
while(u8g.nextPage()); //Termina la escritura de la página
delay(3000);
z=z+1;
envio2=esp9+ultrasonico+esp8;
Serial.println(envio2);
}
}
u8g.firstPage(); //Inicializa la segunda página
do{
u8g.setFont(u8g_font_chikita);
u8g.drawStr(32, 22, "Ubique el pendulo");
u8g.drawStr(39, 34, "en el angulo a");
u8g.drawStr(48, 46, "trabajar");
u8g.drawFrame(0,0,128,64);
u8g.drawFrame(1,1,126,62);
}
while(u8g.nextPage()); //Termina la escritura de la página
delay(3000);
while(digitalRead(50)==LOW){
u8g.firstPage(); //Inicializa la segunda página
do{
u8g.setFont(u8g_font_chikita);
u8g.drawStr(15, 22, "Cuando este preparado");
u8g.drawStr(34, 34, "Oprima el boton");
u8g.drawStr(48, 48, "[INICIO]");
u8g.setFont(u8g_font_cursor);
u8g.drawStr(20, 48, "`");
u8g.drawStr(108, 48, "`");
u8g.drawFrame(0,0,128,64);
u8g.drawFrame(1,1,126,62);
u8g.drawFrame(3,3,122,58);
}
while(u8g.nextPage()); //Termina la escritura de la página
138
delay(100);
}
if(digitalRead(50)==HIGH){
proceso();
}
}
else if(digitalRead(2)==LOW){
u8g.firstPage(); //Inicializa la segunda página
do{
u8g.setFont(u8g_font_chikita);
u8g.drawStr(20, 30, "Sincronice el pendulo");
u8g.drawStr(40, 40, "y oprima [B]");
u8g.setFont(u8g_font_cursor);
u8g.drawStr(15, 40, "X");
u8g.drawStr(102, 40, "X");
u8g.drawFrame(0,0,128,64);
u8g.drawFrame(1,1,126,62);
u8g.drawFrame(3,3,122,58);
}
while(u8g.nextPage()); //Termina la escritura de la página
delay(500);
}
}
void proceso(){
contador=0;
for(int i=3; i>=0; i--){
delay(1000);
u8g.firstPage(); //Inicializa la segunda página
do{
u8g.setFont(u8g_font_ncenB24);
u8g.setPrintPos(38,35);
u8g.print(retroceso[i]);
u8g.drawFrame(0,0,128,64);
u8g.drawFrame(1,1,126,62);
}
while(u8g.nextPage()); //Termina la escritura de la página
delay(500);
139
if(retroceso[i]=="Ya!"){
while (digitalRead(50)==HIGH){
attachInterrupt(0, SensorHall, HIGH);
dt=(millis()-tiempo)/1000.0;
tiempo=millis();
Wire.beginTransmission(MPU); //establece al ATMEGA 2560 como maestro
Wire.write(0x3B); //Pide el registro 0x3B que corresponde a la aceleracion en X
Wire.endTransmission(false);
Wire.requestFrom(MPU,6,true); //se piden seis registros a partir de 0x3B - acelerómetro
AcX=Wire.read()<<8|Wire.read(); //cada valor ocupa dos registros
AcY=Wire.read()<<8|Wire.read(); //cada valor ocupa dos registros
AcZ=Wire.read()<<8|Wire.read(); //cada valor ocupa dos registros
//Se realiza el mismo procedimiento pero para hallar los valores delo giroscopio
Wire.beginTransmission(MPU); //establece al ATMEGA 2560 como maestro
Wire.write(0x43); //Pide el registro 0x43 que corresponde al giroscopio en X
Wire.endTransmission(false);
Wire.requestFrom(MPU,6,true); //se piden seis registros a partir de 0x43 giroscopio
GyX=Wire.read()<<8|Wire.read(); //cada valor ocupa dos registros
GyY=Wire.read()<<8|Wire.read(); //cada valor ocupa dos registros
GyY=Wire.read()<<8|Wire.read(); //cada valor ocupa dos registros
float accel_ang_x=atan(AcY/sqrt(pow(AcX,2)+pow(AcZ,2)))*(180.0/3.14);
float accel_ang_y=atan(-AcX/sqrt(pow(AcY,2)+pow(AcZ,2)))*(180.0/3.14);
//Se calculan los ángulos en el Giroscopio
AngX=0.98*(angx_prev+(GyX/131)*dt)+0.02*accel_ang_x; //Se halla el angulo en X
AngY=0.98*(angy_prev+(GyY/131)*dt)+0.02*accel_ang_y; //Se halla el angulo en X
angx_prev=AngX;
angy_prev=AngY;
/*A enviar a LabVIEW*/
u8g.firstPage(); //Inicializa la segunda página
do{
140
u8g.setFont(u8g_font_profont10);
u8g.drawStr(2, 20, "Aceleracion(m/s^2) XYZ:");
u8g.setPrintPos(2,30);
u8g.print(AcX);
acelerometrox=String(AcX);
u8g.setPrintPos(50,30);
u8g.print(AcY);
acelerometroy=String(AcY);
u8g.setPrintPos(100,30);
u8g.print(AcZ);
acelerometroz=String(AcZ);
u8g.drawStr(1, 40, "Veloc. Ang(deg/s)XY");
u8g.setPrintPos(2,50);
u8g.print(GyX);
velocidadx=String(GyX);
u8g.setPrintPos(50,50);
u8g.print(GyY);
velocidady=String(GyY);
u8g.setFont(u8g_font_cursor);
u8g.drawStr(2, 62, "l");
u8g.setFont(u8g_font_profont10);
u8g.setPrintPos(13,62);
u8g.print(AngX);
AngXX=AngX*100;
angulox=String(AngXX);
u8g.setFont(u8g_font_cursor);
u8g.drawStr(50, 62, "l");
u8g.setFont(u8g_font_profont10);
u8g.setPrintPos(58,62);
u8g.print(AngY);
AngYY=AngY*100;
anguloy=String(AngYY);
//delay(1);
}
while(u8g.nextPage()); //Termina la escritura de la página
envio=esp10+acelerometrox+esp1+acelerometroy+esp2+acelerometroz+esp3+velocidadx+esp4
+velocidady+esp5+angulox+esp17+anguloy+esp18;
141
Serial.println(envio);
}
if(digitalRead(50)==LOW){
u8g.firstPage(); //Inicializa la segunda página
do{
u8g.setFont(u8g_font_profont10);
u8g.setPrintPos(40,15);
u8g.print("Ct="); //número de veces que pasa por el sensor
u8g.setPrintPos(55,15);
u8g.print(contador);
u8g.setPrintPos(11,15);
u8g.print("n="); //número de oscilaciones
u8g.setPrintPos(23,15);
u8g.print(contador/2);
hall=String(contador/2);
envio3=esp11+hall+esp12;
u8g.drawStr(2, 27, "-Oprima [R]");
u8g.drawStr(8, 37, "para una nueva práctica");
u8g.drawStr(2, 51, "-Oprima [RT]");
u8g.drawStr(8, 61, "para nuevo usuario");
u8g.drawFrame(0,0,128,64);
}
while(u8g.nextPage()); //Termina la escritura de la página
delay(4000);
Serial.println(envio3);
while((digitalRead(49)==LOW)&&(digitalRead(48)==LOW)){
u8g.firstPage(); //Inicializa la segunda página
do{
u8g.setFont(u8g_font_profont10);
u8g.drawStr(2, 22, "-Oprima [R]");
u8g.drawStr(8, 32, "para una nueva práctica");
u8g.drawStr(2, 46, "-Oprima [RT]");
u8g.drawStr(8, 56, "para nuevo usuario");
u8g.drawFrame(0,0,128,64);
u8g.drawFrame(1,1,126,62);
}
while(u8g.nextPage()); //Termina la escritura de la página
delay(200);
142
}
if(digitalRead(49)==HIGH){
u8g.firstPage(); //Inicializa la segunda página
do{
u8g.setFont(u8g_font_profont10);
u8g.drawStr(32, 13, "Reiniciando...");
u8g.drawStr(8, 30, "Administrador [1]");
u8g.drawStr(8, 45, "Visitante [2]");
u8g.drawFrame(0,0,128,64);
u8g.drawFrame(1,1,126,62);
}
while(u8g.nextPage()); //Termina la escritura de la página
delay(500);
val=0;
cont=0;
a=0;
z=0;
n=3001;
num=0;
contador=0;
código[0]=0;
código[1]=0;
código[2]=0;
código[3]=0;
code[0]=0;
code[1]=0;
code[2]=0;
code[3]=0;
cantidad[0]=0;
cantidad[1]=0;
PIN_Teclado = "";
}
else if(digitalRead(48)==HIGH){
u8g.firstPage(); //Inicializa la segunda página
do{
u8g.setFont(u8g_font_profont10);
u8g.drawStr(32, 13, "Reiniciando...");
u8g.drawStr(5, 30, "Para reiniciar el");
143
u8g.drawStr(5, 42, "proceso oprima [B]");
u8g.drawFrame(0,0,128,64);
u8g.drawFrame(1,1,126,62);
}
while(u8g.nextPage()); //Termina la escritura de la página
delay(200);
n=0;
z=0;
contador=0;
código[0]=0;
código[1]=0;
código[2]=0;
código[3]=0;
code[0]=0;
code[1]=0;
code[2]=0;
code[3]=0;
cantidad[0]=0;
cantidad[1]=0;
PIN_Teclado = "";
}
}
}
}
}
void SensorHall(){
if(millis()-lastInt>200){
contador++;
lastInt=millis();
}
}
144
ANEXO 3: PROGRAMACIÓN MODELO BETA
#include "U8glib.h" // librería GLCD
#include <Keypad.h> //librería del teclado
#include "Wire.h" //Librería para establecer la comunicación I2C
#define MPU 0x68 //dirección de MPU-6050
U8GLIB_ST7920_128X64_1X u8g(40, 44, 42); //Inicialización de la GLCD; establecimiento de
pines de control
/*Variables del acelerómetro*/
int16_t AcX, AcY, AcZ, GyX, GyY, GyZ; //almacenamiento como enteros especiales
long tiempo;
float dt;
float AngX, AngY, AngZ; //Se establecen las variables para los ángulos en X Y Z
float angx_prev, angy_prev;
int AngXX, AngYY;
/*Variables para el contador*/
volatile int contador = 0;
volatile long lastInt;
/*Variables para el sensor de distancia*/
long Distancia; // Se define la variable distancia (sensor ultrasónico)
long Tiempo; // Se define la variable que mide el tiempo (sensor ultrasónico)
/*Variables para el teclado matricial*/
const byte Filas = 4; // número de filas
const byte Columnas = 4; // número de columnas
byte Pins_Columnas[] = {
22, 24, 26, 28}; // se establecen las filas conectadas al arduino
byte Pins_Filas[] = {
30, 32, 36, 34}; // se establecen las columnas conectadas al arduino
char tecla, boton, número; // variable para almacenar pulsacion
char clave[]= "1234"; // Se escribe la contraseña de 4 digitos para el administrador
char codigo[4]; // Aqui se guardan los caracteres ingresados (administrador)
char clave_nuevo[]= "5678"; // Clave para el ingreso como invitado
char code[4]; // Aqui se guardan los caracteres ingresados (invitado)
char validacion[1]; // Validacion para ingreso como invitado o administrador
char Administrador[]= "1"; // Aministrador
char Visitante[]= "2"; // Visitante o invitado
char cantidad[2]; // Almacena el número de grupos que van a trabajar
145
char* retroceso[]={
"Ya!", " 1", " 2", " 3"};
/*Contadores*/
int n=0, i=0, a=0, val=0, num=0, cont=0, z=0, r=0; // Inicializacion de contadores
/*LabVIEW*/
String esp1 = "Q", esp2 = "W", esp3 = "E", esp4 = "R", esp5 = "T", esp6 = "Y", esp7 = "U", esp8
= "I", esp9 = "P", esp10 = "S", esp11 = "G", esp12 = "H", esp13 = "J", esp14 = "K", esp15 = "L",
esp16="M", esp17="N", esp18="V";
String esp19="A", esp20="F", esp21="O", esp22="B", esp23="C", esp24="D";
String acelerometrox, acelerometroy, acelerometroz, velocidadx, velocidady, angulox, anguloy,
ultrasonico, hall, grupo1, grupo2, ID, CC, REP="10", REP2="12", ESPACIO="1111111";
String envio="0", envio2="0", envio3="0", envio4="0", envio5="0", reporte1="0", reporte2="0",
reporte3="0";
/*Teclado matricial*/
char entrada; // Revisa el valor digitado desde la matriz
String PIN_Teclado = ""; // Almacena el valor digitado
byte NúmeroDeDigitos = 0; // Tienen en cuenta el número de digitos ingresados
char Teclas [ Filas ][ Columnas ] = //se ubican aca como esta dispuesta la matriz a usar
{
{
'1','2','3','A' }
,
{
'4','5','6','B' }
,
{
'7','8','9','C' }
,
{
'*','0','#','D' }
,
};
Keypad teclado = Keypad(makeKeymap(Teclas), Pins_Filas, Pins_Columnas, Filas, Columnas);
// Inicializa el teclado
146
void setup(){
Serial.begin(9600); //Comunicacion serial
/*Comunicacion I2C para el acelerometro*/
Wire.begin(); //Comunicacion I2C
Wire.beginTransmission(MPU); //establece al ATMEGA 2560 como maestro
Wire.write(0x6B); //se inicia la comunicacion I2C
Wire.write(0); //Se activa la comunicacion
Wire.endTransmission(true);
/*Inicializacion de la GLCD*/
u8g.setColorIndex(1); //Inicializa los pixeles en la GLCD
/*Entradas y salidas del arduino*/
pinMode(53, OUTPUT); //Se activa el pin 53 como salida (TRIGGER)
pinMode(52, INPUT); //Se activa el pin 52 como entrada (ECHO)
pinMode(51, INPUT); //Boton de medicion de longitud
pinMode(2, INPUT); //Sensor de efecto Hall
pinMode(49, INPUT); //Inicializacion de las mediciones
pinMode(50, INPUT); //Reset
pinMode(48, INPUT); //Reset Total
pinMode(25, OUTPUT); //LED sensor de efecto Hall
/*Se inicia a mostrar en la GLCD*/
u8g.firstPage(); //Mostrar en la primera página
do{
draw();
}
while (u8g.nextPage()); //Finalizala escritura de la página
delay(5000); //Da el tiempo que dura encendida
u8g.firstPage(); //Mostrar en la primera página
do{
presentacion();
}
while (u8g.nextPage()); //Finalizala escritura de la página
delay(5000); //Da el tiempo que dura encendida
u8g.firstPage(); //Mostrar en la primera página
do{
147
presentacion2();
}
while (u8g.nextPage()); //Finalizala escritura de la página
delay(5000); //Da el tiempo que dura encendida
u8g.firstPage(); //Mostrar en la primera página
do{
u8g.setFont(u8g_font_trixel_square);
u8g.setFont(u8g_font_chikita);
u8g.drawStr(8, 33, "Para ingresar como:");
u8g.drawStr(26, 45, "Administrador [1]");
u8g.drawStr(26, 55, "Visitante [2]");
/* RECUADRO GENERAL */
u8g.drawFrame(0,0,128,64);
u8g.drawFrame(1,1,126,62);
u8g.drawFrame(3,3,122,20);
u8g.drawFrame(3,3,122,58);
}
while (u8g.nextPage()); //Finalizala escritura de la página
delay(200); //Da el tiempo que dura encendida
}
void loop(){ //Empieza el ciclo
tecla=teclado.getKey();
while((tecla != NO_KEY)&&(val==0)){ //Revisa el valor de la tecla opturada
validacion[val]=tecla; //Se almacena el valor de la tecla
u8g.firstPage(); //Inicializa la segunda página
do{
u8g.setFont(u8g_font_fur49n);
u8g.setPrintPos(40,55);
u8g.print(validacion[val]);
}
while(u8g.nextPage()); //Termina la escritura de la página
delay(300);
val=val+1; //Contador de los digitos oprimidos
}
if(val==1){ //Se revisa que solo se haya digitado un número
148
if((validacion[0]==Administrador[0])&&(cont<=3)){ //Se revisa si se registro el número
1 (Administrador)
u8g.firstPage(); //Inicializa la segunda página
do{
u8g.setFont(u8g_font_unifontr);
u8g.drawStr(23, 15, "Ingrese la"); //Debe autenticarse
u8g.drawStr(32, 30, "clave de"); //Debe autenticarse
u8g.drawStr(12, 45, "Administrador"); //Debe autenticarse
u8g.drawStr(48, 60, "****"); //Debe autenticarse
u8g.drawFrame(0,0,128,64);
u8g.drawFrame(1,1,126,62);
}
while(u8g.nextPage()); //Termina la escritura de la página
delay(500);
while(cont<=3){ //Asegura que solo se digiten 4 caracteres
boton=teclado.getKey(); //se almacenan los datos ingresados
if(boton != NO_KEY){ //revisa el valor de la tecla opturada
u8g.firstPage(); //Inicializa la segunda página
do{
codigo[cont]=boton; //se van almacenando los datos ingresados
u8g.setFont(u8g_font_profont12);
u8g.drawStr(20, 30, "Clave ingresada");
u8g.setPrintPos(50,45);
u8g.print(codigo[0]); //imprime los datos en la pantalla
u8g.setPrintPos(56,45);
u8g.print(codigo[1]);
u8g.setPrintPos(62,45);
u8g.print(codigo[2]);
u8g.setPrintPos(68,45);
u8g.print(codigo[3]);
u8g.drawFrame(0,0,128,64);
u8g.drawFrame(1,1,126,62);
}
while(u8g.nextPage()); //Termina la escritura de la página
delay(100);
cont=cont+1;
} //va aumentando el contador
}
149
if(codigo[0]==clave[0]&&codigo[1]==clave[1]&&codigo[2]==clave[2]&&codigo[3]==clave[3]
){ //Clave de acceso para administrador
u8g.firstPage(); //Inicializa la segunda página
do{
u8g.setFont(u8g_font_unifontr);
u8g.drawStr(23, 20, "Ingrese el"); //Debe autenticarse
u8g.drawStr(32, 35, "número de"); //Debe autenticarse
u8g.drawStr(12, 50, "grupos [01-99]"); //Debe autenticarse
u8g.drawFrame(0,0,128,64);
u8g.drawFrame(1,1,126,62);
}
while(u8g.nextPage()); //Termina la escritura de la página
delay(500);
while(num<=1){ //Asegura que solo sean ingresados dos datos
número=teclado.getKey(); //se almacenan los datos ingresados desde la
matriz de números
if(número != NO_KEY){ //revisa el valor de la tecla opturada
u8g.firstPage(); //Inicializa la segunda página
do{
cantidad[num]=número;
u8g.setFont(u8g_font_profont12);
u8g.drawStr(20, 30, "Número de grupos");
u8g.setPrintPos(58,45);
u8g.print(cantidad[0]); //imprime los datos en la pantalla
grupo1=String(cantidad[0]);
u8g.setPrintPos(64,45);
u8g.print(cantidad[1]);
grupo2=String(cantidad[1]);
u8g.drawFrame(0,0,128,64);
u8g.drawFrame(1,1,126,62);
}
while(u8g.nextPage()); //Termina la escritura de la página
num=num+1;
envio4=esp13+grupo1+grupo2+esp14;
}
}
150
Serial.println(envio4);
u8g.firstPage(); //Inicializa la segunda página
do{
u8g.setFont(u8g_font_profont10);
u8g.drawStr(32, 13, "Ingrese su NI"); //Debe autenticarse
u8g.drawStr(6, 28, "y el de los estudiantes"); //Debe autenticarse
u8g.drawStr(2, 43, "[A] terminando cada NI"); //Debe autenticarse
u8g.drawStr(2, 58, "[B] con el ultimo NI"); //Debe autenticarse
u8g.drawFrame(0,0,128,64);
u8g.drawFrame(1,1,126,62);
}
while(u8g.nextPage()); //Termina la escritura de la página
n=0;
while(n<=3000){ //permite el almacenamiento de aproximadamente
200 cedulas
entrada=teclado.getKey(); //se almacenan los datos ingresados
if(entrada){ //si se digitan datos
if(entrada >='0' && entrada <= '9'){ //se establece el rango entre 0 y 9
ingreso_NIT(); //se redirige a ingreso_NIT()
}
else if(entrada== 'A'){ //se le da una funcion a A (almacenar NIT)
Serial.print(envio5);
Serial.println(" ");
PIN_Teclado="";
u8g.firstPage(); //Inicializa la segunda página
do{
u8g.setFont(u8g_font_6x12);
u8g.drawStr(18, 30, "INGRESE EL NUEVO");
u8g.drawStr(57, 45, "NI");
u8g.setFont(u8g_font_cursor);
u8g.drawStr(25, 48, "R");
u8g.drawStr(100, 48, "R");
u8g.drawFrame(0,0,128,64);
u8g.drawFrame(1,1,126,62);
}
while(u8g.nextPage()); //Termina la escritura de la página
delay(200);
151
if(entrada >='0' && entrada <= '9'){ //se almacena una nueva cedula
ingreso_NIT(); //se redirige a ingreso_NIT()
}
}
else if(entrada== 'B'){ //se le da una funcion a B
Serial.print(envio5);
Serial.println(" ");
sensor_longitud(); //se redirige a ingreso_NIT()
}
}
}
}
else if(i<=1){ //Si esta mal la clave envia error
i=i++;
clave_erronea();
}
else if(i>1){ //Tres oportunidades de ingreso de clave
exceder_limite(); //Redirecciona a exceder_limite()
cont=0; //Reinicia contadores
val=0;
i=0;
}
}
else if((validacion[0]==Visitante[0])&&(cont<=3)){ //Se revisa si se registro el número 2
u8g.firstPage(); //Inicializa la segunda página
do{
u8g.setFont(u8g_font_unifontr);
u8g.drawStr(23, 15, "Ingrese la"); //Debe autenticarse
u8g.drawStr(32, 30, "clave de"); //Debe autenticarse
u8g.drawStr(25, 45, "Visitante"); //Debe autenticarse
u8g.drawStr(48, 60, "****"); //Debe autenticarse
u8g.drawFrame(0,0,128,64);
u8g.drawFrame(1,1,126,62);
}
while(u8g.nextPage()); //Termina la escritura de la página
delay(500);
152
while(cont<=3){ //Asegura que solo se digiten 4 caracteres
boton=teclado.getKey(); //se almacenan los datos ingresados- matriz
if(boton != NO_KEY){ //revisa el valor de la tecla opturada
u8g.firstPage(); //Inicializa la segunda página
do{
code[cont]=boton; //se van almacenando los datos ingresados
u8g.setFont(u8g_font_profont12);
u8g.drawStr(20, 30, "Clave ingresada");
u8g.setPrintPos(50,45);
u8g.print(code[0]); //imprime los datos en la pantalla
u8g.setPrintPos(56,45);
u8g.print(code[1]);
u8g.setPrintPos(62,45);
u8g.print(code[2]);
u8g.setPrintPos(68,45);
u8g.print(code[3]);
u8g.drawFrame(0,0,128,64);
u8g.drawFrame(1,1,126,62);
}
while(u8g.nextPage()); //Termina la escritura de la página
delay(100);
cont=cont+1; //va aumentando el contador
}
}
if(code[0]==clave_nuevo[0]&&code[1]==clave_nuevo[1]&&code[2]==clave_nuevo[2]&&code
[3]==clave_nuevo[3]){ //Clave de acceso para visitante
u8g.firstPage(); //Inicializa la segunda página
do{
u8g.setFont(u8g_font_unifontr);
u8g.drawStr(12, 20, "Ingrese su No."); //Debe autenticarse
u8g.drawStr(32, 35, "de cedula"); //Debe autenticarse
u8g.drawStr(12, 50, "seguido de [B]"); //Debe autenticarse
u8g.drawFrame(0,0,128,64);
u8g.drawFrame(1,1,126,62);
}
while(u8g.nextPage()); //Termina la escritura de la página
delay(500);
153
n=0;
while(n<=100){ // almacena hasta 100 caracteres
entrada=teclado.getKey(); //se almacenan los datos ingresados - matriz
if(entrada){ //si se digitan datos
if(entrada >='0' && entrada <= '9'){ //se almacena una nueva cedula
ingreso_NIT(); //redirecciona a ingreso_NIT()
}
else if(entrada== 'B'){ //se le da una funcion a B (empieza el sistema)
Serial.print(envio5);
Serial.println(" ");
sensor_longitud();
}
}
}
}
else if(a<=1){ //Si esta mal la clave envia error
a=a++;
clave_erronea();
}
else if(a>1){ //Reinicia el sistema tras tres errores
exceder_limite(); //Redirecciona a exceder_limite()
cont=0; //Reinicia contadores
val=0;
a=0;
}
}
if ((validacion[0] != Administrador[0])&&(validacion[0] != Visitante[0])){ //error al digitar
u8g.firstPage(); //Inicializa la segunda página
do{
u8g.setFont(u8g_font_profont11);
u8g.drawStr(5, 20, "Opcion incorrecta..."); //Debe autenticarse
u8g.drawStr(17, 40, "Administrador [1]"); //Debe autenticarse
u8g.drawStr(17, 55, "Visitante [2]"); //Debe autenticarse
u8g.drawFrame(0,0,128,64);
154
u8g.drawFrame(1,1,126,62);
}
while(u8g.nextPage()); //Termina la escritura de la página
delay(500); //Reinicia el contador val
val=0;
}
}
}
void draw(){ // Cuando se llama a DRAW
u8g.setFont(u8g_font_tpssb); //Fuente a usar
u8g.drawStr( 2, 12, "MOVIMIENTO ARMONICO"); // Coordenada y contenido
u8g.setFont(u8g_font_tpssb);
u8g.drawStr( 45, 23, "SIMPLE");
u8g.setFont(u8g_font_6x10);
u8g.drawStr( 23, 38, "PENDULO SIMPLE");
u8g.setFont(u8g_font_4x6r);
u8g.drawStr( 20, 55, "Universidad Santo Tomas");
u8g.setFont(u8g_font_4x6);
u8g.drawStr( 38, 62, "Tunja, Boyaca");
u8g.setFont(u8g_font_cursor);
u8g.setPrintPos(11,24);
u8g.print("¬");
u8g.setPrintPos(11,39);
u8g.print("F");
u8g.setPrintPos(115,28);
u8g.print("t");
}
void presentacion(){ //Cuando se llame a presentación
u8g.setFont(u8g_font_tpssb); //Fuente a usar
u8g.drawStr( 8, 13, "IMPLEMENTACION DE"); // Coordenada y contenido
u8g.drawStr( 30, 25, "DISPOSITIVO");
u8g.drawStr( 12, 37, "ELECTRONICO PARA");
u8g.drawStr( 20, 49, "LA MEDICION DEL");
u8g.drawStr( 50, 61, "M.A.S");
/* RECUADRO GENERAL */
u8g.drawFrame(0,0,128,64);
155
u8g.drawFrame(1,1,126,62);
}
void presentacion2(){ //Cuando se llame a presentacion2
u8g.setFont(u8g_font_courB08); //Fuente a usar
u8g.drawStr( 6, 10, "Por:"); // Coordenada en la que se muestra y contenido
u8g.setFont(u8g_font_robot_de_niro);
u8g.drawStr( 55, 20, "TANIA C. BARRERA M.");
u8g.drawStr( 56, 30, "OSCAR F.CAMARGO A.");
u8g.setFont(u8g_font_courB08);
u8g.drawStr( 6, 40, "Directores");
u8g.setFont(u8g_font_robot_de_niro);
u8g.drawStr( 74, 50, "LUIS F. SOSA Q.");
u8g.drawStr( 59, 60, "CAMILO E. PARDO B.");
/* RECUADRO GENERAL */
u8g.drawFrame(0,0,128,64);
u8g.drawFrame(1,1,126,62);
}
void exceder_limite(){ //Tres veces contraseña incorrecta
u8g.firstPage(); //Inicializa la segunda página
do{
u8g.setFont(u8g_font_profont10);
u8g.drawStr(8, 18, "Excedio el limite. Para ingresar");
u8g.drawStr(8, 38, "Administrador [1]");
u8g.drawStr(8, 51, "Visitante [2]");
u8g.drawFrame(0,0,128,64);
u8g.drawFrame(1,1,126,62);
codigo[0]=0;
codigo[1]=0;
codigo[2]=0;
codigo[3]=0;
code[0]=0;
code[1]=0;
code[2]=0;
code[3]=0;
}
while(u8g.nextPage()); //Termina la escritura de la página
delay(500);
156
}
void clave_erronea(){ //Ingreso erroneo de contraseña
u8g.firstPage(); //Inicializa la segunda página
do{
u8g.setFont(u8g_font_unifontr);
u8g.drawStr(43, 20, "Clave");
u8g.drawStr(36, 38, "Erronea");
u8g.drawFrame(0,0,128,64);
u8g.drawFrame(1,1,126,62);
u8g.drawFrame(3,3,122,58);
cont=0;
codigo[0]=0;
codigo[1]=0;
codigo[2]=0;
codigo[3]=0;
code[0]=0;
code[1]=0;
code[2]=0;
code[3]=0;
}
while(u8g.nextPage()); //Termina la escritura de la página
delay(500);
}
void ingreso_NIT(){ //Ingreso de las cedulas
NúmeroDeDigitos ++;
PIN_Teclado += entrada;
u8g.firstPage(); //Inicializa la segunda página
do{
u8g.setFont(u8g_font_profont11);
u8g.setPrintPos(6,20);
u8g.print("Documento ingresado:");
u8g.setPrintPos(38,40);
u8g.print(PIN_Teclado);
CC=String(entrada);
u8g.drawFrame(0,0,128,64);
u8g.drawFrame(1,1,126,62);
u8g.drawFrame(3,3,122,58);
157
}
while(u8g.nextPage()); //Termina la escritura de la página
n=n+1;
envio5=esp15+PIN_Teclado+esp16;
//Serial.print(envio5);
//Serial.println(" ");
}
void sensor_longitud(){
if (digitalRead(2)==HIGH){ //Sensor de efecto Hall pulso
u8g.firstPage(); //Inicializa la segunda página
do{
u8g.setFont(u8g_font_chikita);
u8g.drawStr(34, 15, "Oprima el boton");
u8g.drawStr(20, 30, "para medir la longitd L");
u8g.setFont(u8g_font_cursor);
u8g.drawStr(62, 54, "0");
u8g.drawFrame(0,0,128,64);
u8g.drawFrame(1,1,126,62);
}
while(u8g.nextPage()); //Termina la escritura de la página
//delay(200);
while (z<1){
if(digitalRead(51)==HIGH){ //Boton para medicion de la longitud
digitalWrite(53,LOW); //Se asegura que el trigger esta desactivado
delayMicroseconds(2); //Tiempo para asegurar que esta apagado el trigger
digitalWrite(53, HIGH); //Se activa el pulso de salida en el trigger
delayMicroseconds(10); //Se da un tiempo de 10us de espera
digitalWrite(53,LOW); //Se corta el pulso para esperar el echo
Tiempo=pulseIn(52, HIGH); //Tiempo en salir y volver (pulso)
Distancia=int(0.017*Tiempo); //Se hace un calculo de la distancia
u8g.firstPage(); //Inicializa la segunda página
do{
u8g.setFont(u8g_font_chikita);
u8g.setPrintPos(20,25);
u8g.print("Longitud de la cuerda");
u8g.setFont(u8g_font_lucasfont_alternate);
158
u8g.setPrintPos(62,40);
u8g.print(Distancia);
ultrasonico=String(Distancia);
u8g.setPrintPos(58,48);
u8g.print("cm");
u8g.setFont(u8g_font_cursor);
u8g.setPrintPos(30,40);
u8g.print("A");
u8g.setPrintPos(100,40);
u8g.print("A");
u8g.drawFrame(0,0,128,64);
u8g.drawFrame(1,1,126,62);
u8g.drawFrame(3,3,122,58);
}
while(u8g.nextPage()); //Termina la escritura de la página
delay(3000);
z=z+1;
envio2=esp9+ultrasonico+esp8;
Serial.println(envio2);
}
}
u8g.firstPage(); //Inicializa la segunda página
do{
u8g.setFont(u8g_font_chikita);
u8g.drawStr(32, 22, "Ubique el pendulo");
u8g.drawStr(39, 34, "en el angulo a");
u8g.drawStr(48, 46, "trabajar");
u8g.drawFrame(0,0,128,64);
u8g.drawFrame(1,1,126,62);
}
while(u8g.nextPage()); //Termina la escritura de la página
delay(3000);
while(digitalRead(49)==LOW){
u8g.firstPage(); //Inicializa la segunda página
do{
u8g.setFont(u8g_font_chikita);
u8g.drawStr(15, 22, "Cuando este preparado");
159
u8g.drawStr(34, 34, "Oprima el boton");
u8g.drawStr(48, 48, "[INICIO]");
u8g.setFont(u8g_font_cursor);
u8g.drawStr(20, 48, "`");
u8g.drawStr(108, 48, "`");
u8g.drawFrame(0,0,128,64);
u8g.drawFrame(1,1,126,62);
u8g.drawFrame(3,3,122,58);
}
while(u8g.nextPage()); //Termina la escritura de la página
delay(100);
}
if(digitalRead(49)==HIGH){
proceso();
}
}
else if(digitalRead(2)==LOW){
u8g.firstPage(); //Inicializa la segunda página
do{
u8g.setFont(u8g_font_chikita);
u8g.drawStr(20, 30, "Sincronice el pendulo");
u8g.drawStr(40, 40, "y oprima [B]");
u8g.setFont(u8g_font_cursor);
u8g.drawStr(15, 40, "X");
u8g.drawStr(102, 40, "X");
u8g.drawFrame(0,0,128,64);
u8g.drawFrame(1,1,126,62);
u8g.drawFrame(3,3,122,58);
}
while(u8g.nextPage()); //Termina la escritura de la página
delay(500);
}
}
void proceso(){
contador=0;
for(int i=3; i>=0; i--){
delay(1000);
160
u8g.firstPage(); //Inicializa la segunda página
do{
u8g.setFont(u8g_font_ncenB24);
u8g.setPrintPos(38,35);
u8g.print(retroceso[i]);
u8g.drawFrame(0,0,128,64);
u8g.drawFrame(1,1,126,62);
}
while(u8g.nextPage()); //Termina la escritura de la página
delay(500);
if(retroceso[i]=="Ya!"){
while (digitalRead(49)==HIGH){
attachInterrupt(0, SensorHall, HIGH);
dt=(millis()-tiempo)/1000.0;
tiempo=millis();
Wire.beginTransmission(MPU); //establece al ATMEGA 2560 como maestro
Wire.write(0x3B); //R registro 0x3B que corresponde a la aceleracion en X
Wire.endTransmission(false);
Wire.requestFrom(MPU,6,true); //se piden seis registros a partir de 0x3B - acelerometro
AcX=Wire.read()<<8|Wire.read(); //cada valor ocupa dos registros
AcY=Wire.read()<<8|Wire.read(); //cada valor ocupa dos registros
AcZ=Wire.read()<<8|Wire.read(); //cada valor ocupa dos registros
//Se realiza el mismo procedimiento pero para hallar los valores delo giroscopio
Wire.beginTransmission(MPU); //establece al ATMEGA 2560 como maestro
Wire.write(0x43); //Registro 0x43 que corresponde al giroscopio en X
Wire.endTransmission(false);
Wire.requestFrom(MPU,6,true); //se piden seis registros a partir de 0x3B - giroscopio
GyX=Wire.read()<<8|Wire.read(); //cada valor ocupa dos registros
GyY=Wire.read()<<8|Wire.read(); //cada valor ocupa dos registros
GyY=Wire.read()<<8|Wire.read(); //cada valor ocupa dos registros
float accel_ang_x=atan(AcY/sqrt(pow(AcX,2)+pow(AcZ,2)))*(180.0/3.14);
float accel_ang_y=atan(-AcX/sqrt(pow(AcY,2)+pow(AcZ,2)))*(180.0/3.14);
161
//Se calculan los angulos en el Giroscopio
AngX=0.98*(angx_prev+(GyX/131)*dt)+0.02*accel_ang_x; //Se halla el angulo en X
AngY=0.98*(angy_prev+(GyY/131)*dt)+0.02*accel_ang_y; //Se halla el angulo en X
angx_prev=AngX;
angy_prev=AngY;
/*A enviar a LabVIEW*/
u8g.firstPage(); //Inicializa la segunda página
do{
u8g.setFont(u8g_font_profont10);
u8g.drawStr(2, 20, "Aceleracion(m/s^2) XYZ:");
u8g.setPrintPos(2,30);
u8g.print(AcX);
acelerometrox=String(AcX);
u8g.setPrintPos(50,30);
u8g.print(AcY);
acelerometroy=String(AcY);
u8g.setPrintPos(100,30);
u8g.print(AcZ);
acelerometroz=String(AcZ);
u8g.drawStr(1, 40, "Veloc. Ang(deg/s)XY");
u8g.setPrintPos(2,50);
u8g.print(GyX);
velocidadx=String(GyX);
u8g.setPrintPos(50,50);
u8g.print(GyY);
velocidady=String(GyY);
u8g.setFont(u8g_font_cursor);
u8g.drawStr(2, 62, "l");
u8g.setFont(u8g_font_profont10);
u8g.setPrintPos(13,62);
u8g.print(AngX);
AngXX=AngX*100;
angulox=String(AngXX);
u8g.setFont(u8g_font_cursor);
u8g.drawStr(50, 62, "l");
u8g.setFont(u8g_font_profont10);
u8g.setPrintPos(58,62);
u8g.print(AngY);
162
AngYY=AngY*100;
anguloy=String(AngYY);
//delay(1);
}
while(u8g.nextPage()); //Termina la escritura de la página
envio=esp10+acelerometrox+esp1+acelerometroy+esp2+acelerometroz+esp3+velocidadx+esp4
+velocidady+esp5+angulox+esp17+anguloy+esp18;
Serial.println(envio);
}
if(digitalRead(49)==LOW){
u8g.firstPage(); //Inicializa la segunda página
do{
u8g.setFont(u8g_font_profont10);
u8g.setPrintPos(40,15);
u8g.print("Ct="); //número de veces que pasa por el sensor
u8g.setPrintPos(55,15);
u8g.print(contador);
u8g.setPrintPos(11,15);
u8g.print("n="); //número de oscilaciones
u8g.setPrintPos(23,15);
u8g.print(contador/2);
hall=String(contador/2);
envio3=esp11+hall+esp12;
u8g.drawStr(2, 27, "-Oprima [R]");
u8g.drawStr(8, 37, "para una nueva práctica");
u8g.drawStr(2, 51, "-Oprima [RT]");
u8g.drawStr(8, 61, "para nuevo usuario");
u8g.drawFrame(0,0,128,64);
reporte3=esp10+ESPACIO+esp1+ESPACIO+esp2+ESPACIO+esp3+ESPACIO+esp4+ESPACI
O+esp5+ESPACIO+esp17+ESPACIO+esp18;
}
while(u8g.nextPage()); //Termina la escritura de la página
delay(4000);
163
Serial.println(envio3);
Serial.println(reporte3);
while((digitalRead(50)==LOW)&&(digitalRead(48)==LOW)){
u8g.firstPage(); //Inicializa la segunda página
do{
u8g.setFont(u8g_font_profont10);
u8g.drawStr(2, 22, "-Oprima [R]");
u8g.drawStr(8, 32, "para una nueva práctica");
u8g.drawStr(2, 46, "-Oprima [RT]");
u8g.drawStr(8, 56, "para nuevo usuario");
u8g.drawFrame(0,0,128,64);
u8g.drawFrame(1,1,126,62);
}
while(u8g.nextPage()); //Termina la escritura de la página
delay(200);
}
if(digitalRead(50)==HIGH){
u8g.firstPage(); //Inicializa la segunda página
do{
u8g.setFont(u8g_font_profont10);
u8g.drawStr(32, 13, "Play");
u8g.drawStr(30, 30, "en");
u8g.drawStr(30, 45, "LabVIEW");
u8g.drawFrame(0,0,128,64);
u8g.drawFrame(1,1,126,62);
reporte1=esp19+REP+esp20;
Serial.println(reporte1);
}
while(u8g.nextPage()); //Termina la escritura de la página
delay(500);
val=0;
cont=0;
a=0;
z=0;
n=3001;
num=0;
contador=0;
codigo[0]=0;
164
codigo[1]=0;
codigo[2]=0;
codigo[3]=0;
code[0]=0;
code[1]=0;
code[2]=0;
code[3]=0;
cantidad[0]=0;
cantidad[1]=0;
PIN_Teclado = "";
}
else if(digitalRead(48)==HIGH){
u8g.firstPage(); //Inicializa la segunda página
do{
u8g.setFont(u8g_font_profont10);
u8g.drawStr(32, 13, "Reiniciando...");
u8g.drawStr(5, 30, "Para reiniciar el");
u8g.drawStr(5, 42, "proceso oprima [B]");
u8g.drawFrame(0,0,128,64);
u8g.drawFrame(1,1,126,62);
reporte2=esp21+REP2+esp22;
}
while(u8g.nextPage()); //Termina la escritura de la página
delay(200);
Serial.println(reporte2);
n=0;
z=0;
contador=0;
codigo[0]=0;
codigo[1]=0;
codigo[2]=0;
codigo[3]=0;
code[0]=0;
code[1]=0;
code[2]=0;
code[3]=0;
cantidad[0]=0;
cantidad[1]=0;
165
PIN_Teclado = "";
}
}
}
}
}
void SensorHall(){
if(millis()-lastInt>200){
contador++;
digitalWrite(25,HIGH);
delay(500);
lastInt=millis();
}
else{
digitalWrite(25,LOW);
}
}
166
ANEXO 4: PRUEBAS CON MODELO ALPHA
Prueba 2
-1500
-1000
-500
0
500
1000
1500
2000
2500
3000
3500
4000
0 2000 4000 6000 8000 10000 12000 14000
Aceleracion en X
167
-10000
-9000
-8000
-7000
-6000
-5000
-4000
-3000
-2000
-1000
0
1000
0 2000 4000 6000 8000 10000 12000 14000
Aceleracion en Y
0
5000
10000
15000
20000
25000
0 2000 4000 6000 8000 10000 12000 14000
Aceleracion en Z
-30000
-20000
-10000
0
10000
20000
30000
0 2000 4000 6000 8000 10000 12000 14000
Velocidad en X
168
-2500
-2000
-1500
-1000
-500
0
500
1000
1500
2000
0 2000 4000 6000 8000 10000 12000 14000
Velocidad en Y
-30
-20
-10
0
10
20
30
40
50
60
0 2000 4000 6000 8000 10000 12000 14000
Angulo en X
-12
-10
-8
-6
-4
-2
0
2
4
0 2000 4000 6000 8000 10000 12000 14000
Angulo en Y
169
Prueba 3
-2000
-1000
0
1000
2000
3000
4000
5000
6000
7000
0 2000 4000 6000 8000 10000
Aceleracion en X
170
-10000
-8000
-6000
-4000
-2000
0
2000
4000
0 2000 4000 6000 8000 10000
Aceleracion en Y
0
2000
4000
6000
8000
10000
12000
14000
16000
18000
20000
0 10 20 30 40 50
Aceleracion en Z
-30000
-20000
-10000
0
10000
20000
30000
0 2000 4000 6000 8000 10000
Velocidad en X
171
-6000
-5000
-4000
-3000
-2000
-1000
0
1000
2000
3000
4000
0 2000 4000 6000 8000 10000
Velocidad en Y
-300
-250
-200
-150
-100
-50
0
0 2000 4000 6000 8000 10000
Angulo en X
-120
-100
-80
-60
-40
-20
0
0 2000 4000 6000 8000 10000
Angulo en Y
172
ANEXO 5: PRUEBAS CON MODELO BETA
Prueba 2:
0
5000
10000
0 2000 4000 6000 8000 10000
Aceleracion en X, Reporte 1
0
2000
4000
6000
0 2000 4000 6000 8000 10000 12000
Aceleracion en X, Reporte 2
173
-6000
-4000
-2000
0
2000
0 1000 2000 3000 4000 5000 6000 7000 8000 9000
Aceleracion en Y, Reporte 1
-7000
-6000
-5000
-4000
-3000
-2000
-1000
0
0 2000 4000 6000 8000 10000 12000
Aceleracion en Y, Reporte 2
0
5000
10000
15000
20000
0 1000 2000 3000 4000 5000 6000 7000 8000 9000
Aceleracion en Z, Reporte 1
14500
15000
15500
16000
16500
17000
17500
18000
0 2000 4000 6000 8000 10000 12000
Aceleracion en Z, Reporte 2
174
-6000
-4000
-2000
0
2000
4000
6000
0 1000 2000 3000 4000 5000 6000 7000 8000 9000
Velocidad en X, Reporte 1
-15000
-10000
-5000
0
5000
10000
15000
0 1000 2000 3000 4000 5000 6000 7000 8000 9000
Velocidad en X, Reporte 2
-4000
-3000
-2000
-1000
0
1000
2000
0 1000 2000 3000 4000 5000 6000 7000 8000 9000
Velocidad en Y, Reporte 2
-2000
-1000
0
1000
2000
3000
0 1000 2000 3000 4000 5000 6000 7000 8000 9000
Velcocidad en Y, Reporte 1
175
-200
-150
-100
-50
0
0 1000 2000 3000 4000 5000 6000 7000 8000 9000
Angulo en X, Reporte 1
-600
-400
-200
0
200
400
600
0 2000 4000 6000 8000 10000 12000
Angulo en X, Reporte 2
-6
-4
-2
0
2
4
0 1000 2000 3000 4000 5000 6000 7000 8000 9000
Angulo en Y, Reporte 1
-15
-10
-5
0
0 10 20 30 40 50 60
Angulo en Y, Reporte 2
176
Prueba 3
-2000
0
2000
4000
6000
0 1000 2000 3000 4000 5000 6000 7000 8000 9000
Aceleracion en X
-3000
-2000
-1000
0
1000
2000
3000
4000
0 1000 2000 3000 4000 5000 6000 7000 8000
Aceleracion en X, Reporte 2
177
-10000
-8000
-6000
-4000
-2000
0
0 1000 2000 3000 4000 5000 6000 7000 8000
Aceleracion en Y, Reporte 2
-8000
-7000
-6000
-5000
-4000
-3000
-2000
-1000
0
0 1000 2000 3000 4000 5000 6000 7000 8000 9000
Aceleracion en Y
15000
15500
16000
16500
17000
0 1000 2000 3000 4000 5000 6000 7000 8000 9000
Aceleracion en Z
14500
15000
15500
16000
16500
17000
0 1000 2000 3000 4000 5000 6000 7000 8000
Aceleracion en Z, Reporte 2
178
-10000
-5000
0
5000
10000
0 1000 2000 3000 4000 5000 6000 7000 8000
Velocidad en X, Reporte 2
-10000
-5000
0
5000
10000
0 1000 2000 3000 4000 5000 6000 7000 8000 9000
Velocidad en X
-1500
-1000
-500
0
500
1000
1500
0 1000 2000 3000 4000 5000 6000 7000 8000 9000
Velocidad en Y
-1500
-1000
-500
0
500
1000
1500
0 1000 2000 3000 4000 5000 6000 7000 8000
Velocidad en Y, Reporte 2
179
-400
-200
0
200
400
0 1000 2000 3000 4000 5000 6000 7000 8000
Angulo en X, Reporte 2
-400
-300
-200
-100
0
100
200
300
400
0 1000 2000 3000 4000 5000 6000 7000 8000 9000
Angulo en X
-500
-400
-300
-200
-100
0
100
200
300
400
0 1000 2000 3000 4000 5000 6000 7000 8000 9000
Angulo en Y
0
10
20
30
40
50
0 1000 2000 3000 4000 5000 6000 7000 8000
Angulo en Y, Reporte 2
180
ANEXO 6: MANUAL DE USUARIO
MODULOS ALPHA Y BETA
Manual de usuario
Índice
1. Presentación …....………..………… 3
2. Componentes del sistema ……..…….3
3. conexión e inicialización del sistema..3
3.1 proceso del módulo alpha……………4
3.1.1 ingreso como administrador……….5
3.1.2 ingreso como visitante…………..…6
3.1.3 práctica…………….………………6
3.2 proceso del módulo BETA...…......….8
3.2.1 cambios respecto al módulo alpha...8
4. recomendaciones……,....……………10
181
ADVERTENCIA
Para reducir el riesgo de incendios o
descargas eléctricas, no exponga el
aparato a la lluvia ni a la humedad.
No exponga al sistema a fuentes con
llama descubierta (por ejemplo, velas
encendidas), para reducir el riesgo de incendios o
descargas eléctricas, no exponga el aparato a goteos
o salpicaduras, ni coloque recipientes
con líquidos, como jarrones, o vasos encima de este.
Puesto que la forma de energizar el sistema es por
cable USB, conecte este a un computador, en caso de
observar mal funcionamiento del módulo,
desconecte inmediatamente el cable del computador.
No exponga los circuitos instalados a fuentes de calor
excesivos, como luz solar o fuego, asegúrese de que
una vez terminada la práctica, el modulo se
desconecte por completo. Este equipo se ha probado
y ha demostrado cumplir con los objetivos
establecidos en el trabajo de grado propuesto.
PRECAUCIÓN
Es responsabilidad del usuario el estar seguro de
que el sistema está en perfectas condiciones de
seguridad y funcionalidad en todo momento y que
el personal académico que realice la práctica
cumpla todos los requerimientos de que se indican
en el manual.
Instrucciones de seguridad importantes
1) Lea estas instrucciones.
2) Conserve estas instrucciones.
3) Tenga presentes todas las advertencias.
4) Siga todas las instrucciones.
5) No se salte ningún paso.
6) No utilice el sistema cerca al agua.
7) No abra la caja que contiene los circuitos del
sistema.
8) No realice las prácticas junto a ninguna
fuente de calor, como radiadores, salidas de
aire caliente, fuego ni ningún otro aparato que
produzca calor.
9) Proteja el cable de alimentación para que no
se pise ni se pinche, especialmente en los
puertos USB de los computadores.
10) Utilice solamente complementos
especificados por el fabricante como,
varillas, masas, pesos, etc.
11) Una vez terminada la práctica cerciórese que
el aparato quede apagado totalmente.
12) Solicite todas las reparaciones a personal de
servicio cualificado. Las reparaciones son
necesarias cuando el sistema ha sufrido
cualquier tipo de daños, como por ejemplo,
cuando se daña el cable de alimentación
USB, cuando no esté en buen funcionamiento
la interfaz gráfica de LabVIEW, cuando el
sistema se ha expuesto a la lluvia o a la
humedad, cuando no funcione normalmente
o se haya caído.
Este símbolo pretende alertar al
usuario sobre la presencia de instrucciones de
funcionamiento y mantenimiento (reparación)
importantes en los documentos que acompañan al
sistema.
PRECAUCIÓN
Se advierte que cualquier cambio o modificación que
no esté expresamente aprobada en este manual
podría inhabilitar su autoridad para utilizar el
sistema.
Es preciso utilizar cables y conectores expresados en
este manual los cuales hacen parte del sistema y
permiten una buena funcionalidad del mismo.
ACERCA DE ESTE MANUAL
Las instrucciones en este manual son para los
modelos ALPHA Y BETA desarrollados
respectivamente en el trabajo de grado denominado
implementación de un dispositivo electrónico para la
medición del movimiento armónico simple.
182
NOTA:
Los sistemas se han probado y han demostrado
cumplir con los límites y objetivos propuestos en el
trabajo de grado, según lo que indica que están
dispuestos a su máximo uso, y no tendrían que tener
complicaciones alguna a la hora de realizar las
diferentes prácticas de laboratorio a las que estén
sometidos, no obstante no hay ninguna garantía de
que en alguna instalación concreta puedan aparecer
ciertas interferencias o este propenso a sufrir algún
accidente.
1. PRESENTACIÓN
<< En el presente manual usted encontrara todo lo
referente al uso adecuado que debe tener con los
módulos de péndulo simple ALPHA y BETA, y los
pasos que debe seguir para que los módulos tengan
un correcto funcionamiento, el cual le permitirá
obtener los parámetros establecidos como la
aceleración en los diferentes ejes del plano
cartesiano, las velocidades angulares, los ángulos, el
tiempo, y el número de oscilaciones, permitiendo así
el desarrollo de las diferentes prácticas planteadas
para identificar el movimiento armónico simple y así
mismo pueda obtener satisfactoriamente los
objetivos que se deseen cumplir.
2. COMPONENTES DEL SISTEMA
NOTA:
Los módulos tanto ALPHA como BETA están
compuestos por materiales altamente oxidables y
posee conexiones que requieren de una carga
eléctrica que podrían generar explosiones, fuego,
chispas, entre otros y a su vez podría generar en el
usuario electrocución, quemaduras por fuego, daño
por sobrecarga, entre otras implicaciones, por el uso
inadecuado del mismo.
Usted debe revisar que se encuentre completo y
en buen estado todos los componentes que
presenta el siguiente listado:
- Módulo ALPHA:
1. Sensor de efecto hall
2. Sensor ultrasónico hc-sr04
3. Cable USB macho macho.
4. Varilla con longitud de 30 cm
5. Masa del péndulo, movible roja con
acelerómetro integrado.
6. Software especializado (interfaz gráfica
LabVIEW).
- Modulo BETA:
1. Sensor de efecto hall con caja protectora.
2. Sensor ultrasónico hc-sr04.
3. Cable USB macho macho azul.
4. Varillas movibles de: 30 cm, 22cm, 38cm y
15cm.
5. Masa del péndulo, movible dorada con
acelerómetro integrado.
6. Software especializado (interfaz gráfica
LabVIEW).
3. PROCESO DE CONEXION E
INICIALIZACION DEL SISTEMA
NOTA: es importante seguir en orden el proceso y
que no se salte ningún paso.
3.1 proceso módulo alpha:
- El modulo se le entregara apagado.
- Para su inicialización deberá conectar el cable
USB macho macho a su computador.
183
- De esta forma el modulo se encenderá dándole
paso de iniciación a la GLCD (pantalla grafica)
en la cual aparecerá el título movimiento
armónico simple.
- A continuación de este aparecerán dos pestañas,
una de las cuales dirá el nombre del Proyecto
realizado y la otra tendrá los nombres de los
creadores del módulo.
- Una vez terminado el protocolo de inicialización
de la GLCD se mostrara las dos posibles formas
de ingresar al Sistema de las cuales usted debe
escoger una según lo acordado con la persona
encargada de prestar el sistema.
3.1.1. Ingreso como administrador.
- Si usted es el docente de la asignatura deberá
entrar como administrador y tendrá que oprimir
el número 1, el cual abrirá una pestaña que pedirá
el ingreso de la clave de administrador.
- Usted deberá ingresar la clave 1-2- 3-4 por
defecto siempre y cuando no haya sido cambiada
desde su primer uso.
184
- Una vez se haya ingresado la clave deberá
ingresar el número de grupos de estudiantes que
estén desarrollando la práctica.
- Después de ingresar el número de grupos deberá
ingresar su número de identificación y el de cada
uno de los representantes de los grupos siguiendo
las instrucciones respectivamente.
- Al terminar de escribir los números de
identificación proceda a oprimir B en el teclado
matricial.
- Al finalizar el ingreso de todos los documentos el
módulo estará listo para comenzar la práctica.
3.1.2. Como visitante:
- Si usted es un alumno y va a desarrollar un
práctica extra clase deberá ingresar por visitante
oprimiendo el número 2 en el teclado.
185
- Una vez ingrese a visitante tendrá que ingresar la
clave que será 5 – 6 – 7 – 8 respectivamente, si
no se ha cambiado desde su primer uso.
- Luego de ingresar la clave tendrá que ingresar
su cedula y oprimir B para comenzar la práctica.
-
3.1.3. PRÁCTICA
NOTA: antes de iniciar verifique que el imán del
péndulo este sincronizado a la misma altura con
el sensor de efecto hall, de otra forma no podrá
iniciar la práctica.
- Luego de sincronizar el péndulo lo que deberá
hacer será oprimir el botón para medir la longitud
llamado L.
- Una vez oprima el botón L el Sistema le arrojara
la longitud de la varilla y así este la enviara a la
interfaz gráfica.
- El paso siguiente será ubicar el péndulo en el
ángulo a trabajar, seguido del botón inicio, el cual
dará una cuenta regresiva de 3, 2, 1, Ya! Una vez
pase este conteo usted deberá soltar el péndulo
para que empiece las oscilaciones.
186
- Al soltar el péndulo, en la pantalla aparecerán los
datos de las aceleraciones y las velocidades que
arroja el acelerómetro.
- Cuando desee detener el péndulo dependiendo de
la práctica que esté realizando, oprima
nuevamente inicio, lo cual detendrá la toma de
datos tanto del acelerómetro como del sensor de
efecto hall. A continuación se mostrara el número
de oscilaciones obtenidas, junto con la
visualización de el paso a seguir en la parte
inferior, el cual dependerá de si quiere seguir con
una nueva práctica (R) o si ya desea termina las
prácticas del Sistema (RT).
- Si usted decide continuar con una nueva práctica
deberá oprimir reset (R).
- Luego de esto le pedirá que oprima B para
continuar con la siguiente práctica.
- Si usted decide acabar la práctica deberá oprimir
Total Reset (RT) el cual lo devolverá a la pestaña
de administrador o visitante.
187
- Si se genera el reporte, automáticamente se
reinicia el programa cuando le dé play a
LabVIEW. El reporte en la interfaz gráfica será
parecido al que se muestra a continuación.
- El reporte en Excel será algo parecido al que se
muestra a continuación, esta opción solo se
realizara cuando el usuario requiera del reporte,
y tendrá que hacerlo oprimiendo el botón de
generar reporte en la interfaz gráfica.
3.2 Proceso del módulo BETA:
Esta es la nueva versión del módulo ALPHA, un
poco más evolucionada con unos ajustes tanto
técnicos como estéticos que se pueden ver a simple
vista.
- El funcionamiento de este módulo en un inicio es
básicamente el mismo que la versión anterior, así
que deberá remitirse a al proceso del módulo
ALPHA.
3.2.1 Cambios respecto al módulo ALPHA.
Nota: ya que el sensor de efecto hall está cubierto, se
implementó un LED al lado derecho de la LCD, el
cual indicara el paso de la masa por el sensor.
-
188
- Al tener este módulo tiene la opción de hallar el
ángulo, el cual puede ser un punto de alguna
práctica debe tener en cuenta la regla que se ha
implementado en la base del péndulo. Una vez
tome en cuenta la longitud horizontal de este
ingrese los datos a la interfaz.
- Al llegar al final de la práctica tendrá las
posibilidades de Reset (R) si desea seguir con una
nueva práctica o Total Reset (RT) si desea
concluir las prácticas, una vez se oprima
cualquiera de las dos opciones, se generara
directamente el reporte tanto en la interfaz
gráfica de LabVIEW como en Excel. A
diferencia del módulo ALPHA que no los
generaba automáticamente.
- Así mismo y a comparación del modelo ALPHA,
la interfaz gráfica está diseñada de diferente
manera, un poco más compleja y completa en
donde se desprenden 3 pestañas: ingreso de
datos, tabla de datos y datos recibidos.
- El reporte en la interfaz gráfica se divide en 3 y
será parecido a los que se muestran a
continuación.
- El reporte en Excel será algo parecido al que se
muestra a continuación, esta opción se dará
siempre que se oprima (R) como reporte parcial
o (RT) como reporte total. Al generarse el reporte
total, se reiniciara el sistema en LabVIEW, para
lo cual será necesario dar play al programa
cuando se quiera iniciar de nuevo.
189
4. RECOMENDACIONES
Una vez termine la práctica apague el modulo,
desconecte el cable, guarde las masas y varillas
correspondientes, guárdelos en su respectiva bolsa y
entréguelos.
Si hay algún fallo en los sensores revise que los
cables estén bien conectados y si no funciona avise
rápidamente al docente o a la persona encargada del
módulo.
Se advierte que cualquier cambio o modificación que
no esté expresamente aprobada en este manual
podría inhabilitar su autoridad para utilizar el sistema
y quedaría como responsable de la falla.
Es preciso utilizar cables, varillas y masas
expresados en el documento los cuales hacen parte
del sistema y permiten una buena funcionalidad del
mismo.
Copyright © 2016. Todos los Derechos Reservados
190
ANEXO 7: MANUAL TECNICO
MODULOS ALPHA Y BETHA
Manual técnico
Índice
1. Introducción…………………………………….3
2. Modelos o versiones…………………………….3
3. Conexiones generales …………………………..4
4. Cableado general del sistema…………….…….5
5. Posibles fallas y soluciones…………………….6
6. Servicio técnico…………………………………6
191
ADVERTENCIA
Para reducir el riesgo de incendios o
descargas eléctricas, no exponga el
aparato a la lluvia ni a la humedad.
No exponga al sistema a fuentes con
llama descubierta (por ejemplo, velas
encendidas), para reducir el riesgo de incendios o
descargas eléctricas, no exponga el aparato a goteos o
salpicaduras, ni coloque recipientes
con líquidos, como jarrones, o vasos encima de este.
Puesto que la forma de energizar el sistema es por
cable USB, conecte este a un computador, en caso de
observar mal funcionamiento del módulo, desconecte
inmediatamente el cable del computador. No exponga
los circuitos instalados a fuentes de calor excesivos,
como luz solar o fuego. Este equipo se ha probado y
ha demostrado cumplir con los objetivos establecidos
en el trabajo de grado propuesto.
PRECAUCIÓN
Dispóngase a revisar el sistema después de haber
leído todo el manual, pues cualquier conexión
errónea podría ocasionar el daño total del sistema.
Revise bien las conexiones y asegúrese de que la
falla no sea a causa del cable de conexión. Proceda
a hacer la revisión una vez haya descartado
problemas externos del sistema.
Instrucciones de seguridad importantes
13) Lea estas instrucciones.
14) Conserve estas instrucciones.
15) Tenga presentes todas las advertencias.
16) Siga todas las instrucciones.
17) No utilice el sistema cerca al agua.
18) Abra el dispositivo solo en el caso en que la falla
sea ocasionada por algo interno del sistema
19) Siga las instrucciones para las soluciones y
arreglos a fallos del sistema
PRECAUCIÓN
Se advierte que cualquier cambio o modificación que
no esté expresamente aprobada en este manual podría
inhabilitar su autoridad para utilizar el sistema.
Es preciso utilizar cables y conectores expresados en
este manual los cuales hacen parte del sistema y
permiten una buena funcionalidad del mismo. En
caso de necesitar cambio, cerciórese de que cumpla
con los requisitos del sistema.
192
ACERCA DE ESTE MANUAL
El presente manual contiene la información técnica
necesaria para el mantenimiento y mejoras que se
deseen hacer al sistema. Es importante tener en cuenta
que cualquier modificación realizada al mismo, es
únicamente posible siempre y cuando se cumplan con
los requisitos que el equipo exige. La manipulación
interna del sistema, así como la implementación o
cambio de dispositivos debe realizarse por personal
autorizado y con conocimientos previos en
electrónica.
NOTA:
Los sistemas se han probado y han demostrado
cumplir con los límites y objetivos propuestos en el
trabajo de grado, según lo que indica que están
dispuestos a su máximo uso, y no tendrían que tener
complicación alguna. Sin embargo, es importante
tener en cuenta que hay ciertos fallos que se pueden
presentar por el uso inadecuado del modulo, así como
la importancia de hacer un mantenimiento al mismo
para evitar que los cables y conexiones se deterioren
y puedan ocasionar problemas futuros.
5. INTRODUCCIÓN
El análisis del Movimiento Armónico Simple resulta
de gran importancia, pues está presente en muchas
actividades cotidianas que se ven a diario y que,
aunque pasan desapercibidas, siempre permanecen
ahí. Es por esta razón que la implementación de un
dispositivo que permita el análisis de este movimiento
se hace más que necesaria. El presente manual
presenta las instrucciones necesarias para realizar la
reparación y mantenimiento al Péndulo Simple,
implementado con el fin de analizar el M.A.S y que
tiene integrados varios dispositivos electrónicos, que
pueden presentar ciertas fallas con el paso del tiempo
que van desde descalibraciones, desconexiones o
daño total del elemento.
6. MODELOS O VERSIONES
Modelo ALPHA
Modelo BETA
NOTA:
Esta información es de vital importancia a la hora de
revisar cada uno de los dispositivos, pues las
conexiones de cada una varían dependiendo el
modelo o las conexiones realizadas, además de la
programación interna.
7. CONEXIONES GENERALES
El cerebro del sistema en este caso es el Arduino
Mega2560 al cual van las conexiones generales del
sistema. Y en el presente manual serán indicadas las
conexiones tanto externas como internas del sistema.
193
Las conexiones principales y más importantes a tener
en cuenta son:
Modelo ALPHA
ARDUINO SENSOR
PIN ULTRASONICO
GND GND
5V VCC
53 TRIG
52 ECHO
SENSOR DE EFECTO HALL
GND G
5V +
2 DO
*NC AO
ACELEROMETRO MPU6050
3,3V VCC
GND GND
SCL SCL
SDA SDA
*NC XDA, XCL, ADO, INT
GLCD 128x64
GND VSS, PSB, BLK
5V VDD, BLA
44 RS
42 R/W
40 E
*NC 3; 7-14; 16-18
TECLADO MATRICIAL 4x4
22 1
24 2
26 3
28 4
30 5
32 6
34 7
36 8
PULSADORES
50 INICIO
51 L
49 R
48 RT
5V COMUN *NC: No conectar
Modelo BETA
ARDUINO SENSOR
PIN ULTRASONICO
GND GND
5V VCC
53 TRIG
52 ECHO
SENSOR DE EFECTO HALL
GND G
5V +
2 DO
*NC AO
ACELEROMETRO MPU6050
3,3V VCC
GND GND
SCL SCL
SDA SDA
*NC XDA, XCL, ADO, INT
GLCD 128x64
GND VSS, PSB, BLK
5V VDD, BLA
42 RS
44 R/W
40 E
*NC 3; 7-14; 16-18
TECLADO MATRICIAL 4x4
22 1
24 2
26 3
28 4
30 5
32 6
34 7
36 8
PULSADORES
49 INICIO
51 L
50 R
48 RT
5V COMUN *NC: No conectar
Es importante y necesario que las conexiones que acá
se indican sean seguidas al pie de la letra para evitar
posibles fallas dentro del funcionamiento.
194
El plano del circuito impreso que se encarga de
alimentar cada uno de los sensores se presenta a
continuación, con el fin de evitarse alguna mala
conexión que ocasione cortos o daños irreversibles en
el sistema. Allí se indica en donde deben ser
ingresados los voltajes y a donde van las tierras, así
como las conexiones a la GLCD. Para revisar que
todo esté en su lugar, tenga a la mano las tablas
suministradas anteriormente en donde se explica la
conexión de cada elemento y sensor.
8. CABLEADO GENERAL DEL SISTEMA
Observe que el sistema se encuentra unido gracias a
los conectores RJ45 tanto macho, como hembra, por
lo cual es importante saber hacia dónde va dirigido
cada cable y cuáles son los pines habilitados en cada
uno. Cada sensor tiene una conexión diferente, y
depende del modelo que se esté trabajando. Las
conexiones correspondientes se muestran a
continuación:
Modelo ALPHA
ACELEROMETRO MPU6050
Parte superior
ACELEROMETRO PIN CONECTOR
VCC 6 – BC
GND 8 – C
SCL 7 – BA
SDA 3 – A
Parte inferior, conexión a la caja
ACELEROMETRO PIN CONECTOR
VCC 1 – BV
GND 2 – V
SCL 3 – BA
SDA 4 – A
SENSOR ULTRASONICO
Conector a la caja
ULTRASONICO PIN CONECTOR
VCC 8 – A
GND 6 – BA
TRIG 2 – BN
ECHO 3 – N
SENSOR DE EFECTO HALL
Conector a la caja
EFECTO HALL PIN CONECTOR
+ 2 – BV
G 1 – V
DO 3 – N
AO NC
*NC: No Conectar. *A: Azul. *BA: Blanco Azul. *V: Verde. *BV:
Blanco Verde. *N: Naranja. *BN: Blanco Naranja. *C: Café. *BC:
Blanco Café.
1
4
8
195
Modelo BETA
ACELEROMETRO MPU6050
Parte superior
ACELEROMETRO PIN CONECTOR
VCC 2 – N
GND 7 – BN
SCL 1 – A
SDA 8 – BA
Parte inferior, conexión a la caja
ACELEROMETRO PIN CONECTOR
VCC 1 – N
GND 2 – BN
SCL 3 – V
SDA 4 – BV
SENSOR ULTRASONICO
Conector a la caja
ULTRASONICO PIN CONECTOR
VCC 5 – N
GND 3 – BC
TRIG 4 – C
ECHO 6 – BN
SENSOR DE EFECTO HALL
Conector a la caja
EFECTO HALL PIN CONECTOR
+ 8 – A
G 2 – BA
DO 1 – C
AO NC
*NC: No Conectar. *A: Azul. *BA: Blanco Azul. *V: Verde. *BV:
Blanco Verde. *N: Naranja. *BN: Blanco Naranja. *C: Café. *BC:
Blanco Café.
Es importante tener en cuenta todas estas conexiones
y cada uno de los colores establecidos, pues ayudan a
señalizar en donde debe ir conectado cada sensor y de
que manera, a fin de evitar cualquier corto a causa de
alguna mala conexión.
9. POSIBLES FALLAS Y SOLUCIONES
Dentro de las prácticas realizadas con los módulos es
posible encontrarse con ciertas problemáticas que
ocasionarían el no funcionamiento del modelo.
Dentro de las más comunes se pueden encontrar
“Al oprimir el teclado matricial no sabes los
caracteres que se oprimen”. Esto se puede deber
principalmente a la mala conexión, intente girar
la regleta para identificar si el problema se
encuentra allí, sino es posible que el problema se
encuentre en la programación y deba ser
solucionado desde allí. Contacte al servicio
técnico en caso de que esto suceda.
“La GLCD no muestra imagen”. Revise que
R/W, RS y E estén bien conectados. Si el
problema persiste contacte al servicio técnico.
“El acelerómetro no envía datos”. Revise el
conector y cerciórese de que el RJ45 macho está
bien conectados. Si el problema continua
contacte al servicio técnico.
“El sistema no funciona al oprimir inicio”. Este
se puede dar al desgaste del mismo, por el tiempo
de uso. Revise el switch y si el problema persiste
reemplácelo por un igual.
10. SERVICIO TECNICO
Tania Carolina Barrera Molina
314 336 14 54
Oscar Fernando Camargo Amézquita
311 489 97 65
196
Resumen—Al unirse la parte física con la electrónica, nos
encontramos con que sería posible automatizar ciertos
instrumentos que permiten el análisis de algunos fenómenos
naturales como por ejemplo el Movimiento Armónico Simple, pues
por medio de la implementación de uno o varios dispositivos
electrónicos en los instrumentos que se encargan de la medición de
este movimiento (péndulo simple), se puede llegar a procesar esta
información de una manera más rápida y concisa, además de la
posibilidad de mejorar el análisis y la obtención de información de
esta clase de fenómenos.
Palabras clave— acelerómetro, ultrasonido, giroscopio,
péndulo, adquisición
I. INTRODUCCIÓN
l estudio de los fenómenos físicos en el área académica
como colegios o universidades se ha desarrollado de la
misma manera desde hace un tiempo, debido a esto los
procesos se han vuelto monótonos, con resultados inmersos a
una práctica poco dinámica y con algunos desfases técnicos.
Con esto no se está queriendo decir que estos estudios sean
obsoletos o que ya no sirvan, sino que se está presentando el
problema de que todo sigue girando en torno a los mismos datos
que son rotados de generación a generación.
Por esta razón, nos enfocamos en desarrollar un sistema de
péndulo simple y mejorarlo por medio del acople de ciertos
elementos electrónicos y mecánicos, para un funcionamiento
más eficaz del mismo. El sistema cuenta con sensores que
permiten la obtención de una manera más rápida y eficaz de
diferentes datos que intervienen en el M.A.S; el sensor
ultrasónico HC-SR04 se encarga de la obtención de la longitud
de la cuerda o en este caso varilla, el sensor de efecto hall
obtiene el número de oscilaciones que realiza el péndulo
durante el proceso, el acelerómetro y giroscopio MPU6050
proporciona la aceleración en los diferentes ejes del plano
cartesiano (X, Y, Z) la velocidad angular (X, Y) y el ángulo (X,
Y) que es hallado gracias a algunos cálculos que se realizan a
partir del acelerómetro y giroscopio. De otro lado, el tiempo es
obtenido a través de una interfaz gráfica y que en conjunto con
el número de oscilaciones medidas, permite hallar el periodo
del péndulo. Todo esto brinda una ayuda al personal académico,
permitiéndole interactuar más con este fenómeno físico,
dándole las herramientas necesarias y que le den la oportunidad
de indagar acerca de qué pasa con el movimiento, la tensión, la
oscilación, la masa, la fuerza, la energía y otros cuantos factores
que se encuentran en este movimiento.
II. PLANTEAMIENTO DEL PROBLEMA
Hoy en día y a pesar de la innovación tecnológica que se está
teniendo, se han dejado de lado ciertos aspectos o instrumentos
que resultan de gran importancia de manera especial en los
diferentes estudios que la física requiere. Esto se ve reflejado en
el hecho de que a pesar de que los tiempos han cambiado y la
tecnología sigue avanzando, los instrumentos de medición
utilizados en los laboratorios de física siguen siendo los
mismos.
Con todo esto no se está queriendo decir que los métodos son
malos o que no funcionan, es posible que se sigan usando por
muchos años más; lo que pretendemos, es ver las desventajas
que tienen estos instrumentos y encontrar la forma adecuada de
automatizarlos, teniendo en cuenta que el desarrollo
tecnológico nos permite hacer las mediciones de las variables
con unidades menores al segundo, ampliando de esta manera el
espectro de comportamiento del sistema y a su vez determinar
otras variables que se hacen presentes en el fenómeno físico, de
modo que, con la integración de nuevos dispositivos, se pueda
llegar inclusive al estudio más profundo de ciertos fenómenos
físicos, como el Movimiento Armónico Simple que por lo
general es estudiado mediante un péndulo simple en el cual
intervienen diferentes variables físicas como: la aceleración, la
velocidad, la posición, el ángulo, la longitud, entre otras
cuantas.
Aunque el análisis de este movimiento es muy importante,
muchas veces se queda solamente como la práctica de un
laboratorio y no se tiene en cuenta en la vida real. Por ejemplo,
si se analizara diferentes factores como la energía y la
aceleración en este sistema, nos encontraríamos con la
posibilidad de ver sus aplicaciones en la parte industrial o
simplemente en una construcción antisísmica. En realidad, son
muchas las aplicaciones que se le pueden dar a este sistema,
pero vale la pena desarrollar un análisis un poco más profundo
y una recolección más detallada del mismo.
ANEXO 8: ARTICULO IEEE
Implementación de un Dispositivo Electrónico
para la Medición del Movimiento Armónico
Simple (octubre 2016)
Barrera M. Tania C., Estudiante, Camargo A. Oscar F., Estudiante, Pardo B. Camilo E., Codirector,
Sosa Q. Luis F., Director, Proyecto de grado
E
197
III. MARCO TEÓRICO
El movimiento de la masa en un péndulo simple obedece a
una ley representada por una ley sinusoidal1. Este es un tipo de
movimiento oscilatorio, en el que se considera que sobre el
sistema no existe la acción de las fuerzas de rozamiento, es
decir, no existe disipación de energía y el movimiento se
mantiene invariable, sin necesidad de comunicarle energía
exterior a este2.
La aceleración del M.A.S es producida por una fuerza
recuperadora, es decir, una fuerza que es proporcional al
desplazamiento del móvil y va dirigida hacia el punto de
equilibrio. Si es así, al sistema que oscila se le llama oscilador
armónico, y es un modelo matemático que pocos osciladores
reales cumplirán exactamente excepto en márgenes muy
limitados.
El acelerómetro mide la aceleración la cual puede expresarse
en 3 ejes: X, Y y Z que son las tres dimensiones del espacio.
Por ejemplo, si se mueve la IMU (unidad de medición inercial)
hacia arriba, el eje Z marcará un cierto valor que por lo general
está relacionado y es muy cercano a la aceleración de la
gravedad (figura 1), la cual en la Tierra tiene un valor de
aproximadamente 9.8 m/s², perpendicular al suelo como es
lógico.
Fig.1 Funcionamiento del sensor con respecto a la aceleración de la
gravedad. Fuente: Tr4nsduc7or. (2014). Tutorial de Arduino y MPU-6050.
Recuperado de http://robologs.net/2014/10/15/tutorial-de-arduino-y-mpu-6050/
A. Adquisición de datos
La adquisición de datos (DAQ) es el proceso de medir un
fenómeno eléctrico o físico como voltaje, corriente,
temperatura, presión o sonido. Un sistema DAQ consiste de
sensores, hardware de medidas DAQ y una PC con software
programable (figura 2). Comparados con los sistemas de
medidas tradicionales, los sistemas DAQ basados en PC
aprovechan la potencia del procesamiento, la productividad, la
visualización y las habilidades de conectividad de las PC
estándares en la industria proporcionando una solución de
medidas más potente, flexible y rentable3.
1 Ramírez S, R., & Villegas R, M. (1989). Investiguemos 11 Física.
(Voluntad, Ed.) (Onceava). Bogotá, Colombia. 22 Movimiento armónico simple by Dency Armando Zapata Jiménez... (n.d.).
You Got the News. Retrieved from
https://issuu.com/dencyarmandozapatajimenez9/docs/movimiento_armonico_simple.pptx
Fig.2 Partes de un sistema DAQ. Fuente: N.I. ¿Qué es la adquisición de
datos? Recuperado de: http://www.ni.com/data-acquisition/what-is/esa/
IV. APLICACIONES
En la Ingeniería Civil sirve en edificios para contrarrestar las
fuerzas del viento y posibles movimientos sísmicos, en los
puentes colgantes para contrarrestar las fuerzas del viento y
movimientos telúricos y en los estudios de suelos para saber en
dónde existen movimientos sísmicos. Sirve también para
calcular la aceleración de la gravedad y para la medición del
tiempo.
Ejemplos familiares de movimientos oscilatorios son los
barcos que se balancean sobre las olas, el movimiento
planetario, las cuerdas de un instrumento musical, las moléculas
del aire en las ondas sonoras, las oscilaciones eléctricas en los
aparatos de radio y televisión, etc. Todos estos ejemplos de
movimientos se caracterizan por ser periódicos, a intervalos de
tiempo iguales, todas las variables del movimiento (velocidad,
aceleración, etc.) toman el mismo valor4.
Es utilizado también en la Ingeniería Electrónica, como en la
robótica donde se hace necesario el análisis del péndulo simple
para la construcción de diferentes prototipos, pues si se hace un
análisis detallado, se puede encontrar que muchos modelos de
robots tienen similitud al péndulo simple o su funcionamiento
viene siendo el mismo, razón por la cual se puede analizar este
movimiento para un acercamiento a los modelos de robot a
implementar5.
V. DESARROLLO DEL SISTEMA
El primer paso y tal vez uno de los más importantes para
empezar a trabajar en el sistema, es establecer de manera
correcta el funcionamiento y las labores que cumpliría el
dispositivo, para lo cual es necesario el análisis del Movimiento
Armónico Simple representado mediante el Péndulo Simple. Es
importante definir claramente qué variables físicas serian
medidas y cuales se entregarían al final de la práctica en la que
se esté analizando el M.A.S por medio del péndulo simple.
Hay ciertas medidas que es importante tener en cuenta dentro
del Movimiento Armónico Simple y que son indispensables
para el análisis del mismo; dentro de estas se encuentran la
aceleración, la velocidad angular, así como el ángulo desde el
3 (National Instruments, s.f.). N.I. ¿Qué es la adquisición de datos?
Recuperado de: http://www.ni.com/data-acquisition/what-is/esa/ 4http://site.ebrary.com.bdatos.usantotomas.edu.co:2048/lib/bibliotecaustasp/detail.action?docID=11013443 5 Matamoros S, A. Z. (2009). Ejemplo de un Péndulo Simple. Merida,
Venezuela. Retrieved from http://www.webdelprofesor.ula.ve/ingenieria/matamoros/index_archivos/DF_
SNL.pdf
198
cual se empieza la primera oscilación. Además de esto es
necesario tener en cuenta que el sistema puede ser susceptible a
algunos errores ya que este no es ideal y aunque los errores son
pocos, de menor magnitud y casi imperceptibles, están
presentes dentro de este sistema.
B. Dispositivos electrónicos implementados
1. Sensor ultrasónico
La primera magnitud a tener en cuenta es la longitud que va
a tener la cuerda que sostendrá el peso, para lo cual es necesario
implementar un sensor que se encargue de medirla. Para este
caso se hizo uso del sensor ultrasónico de referencia HC-SR04
que es muy práctico, pequeño y lo más importante es que arroja
medidas muy precisas, evitándose así errores en los resultados
de las mediciones. El HC-SR04 es un sensor que tiene un
alcance de 2 a 450cm, resultando adecuado para las mediciones
de la cuerda a usar que por lo general y en las prácticas que se
hacen en los laboratorios de física, no superan los 60cm. El
sensor puede ser observado en la figura 3.
Fig.3 Sensor ultrasónico HC-SR04. Fuente: autor
2. Sensor de efecto Hall
Para el caso del número de oscilaciones que el péndulo hace
se utilizó un sensor de efecto hall de referencia Ky-024 (se
puede observar en la figura 4) que funciona por acción del
campo magnético al que sea expuesto, es decir que cada vez que
se acerque un imán a este, enviara un pulso al sistema que este
controlando. Este resulta de gran utilidad dentro de la práctica
pues al ubicarse un imán en el péndulo a trabajar, el sensor
puede detectar cada vez que el péndulo pasa por este y así medir
el número de oscilaciones del sistema. Cabe aclarar que el
sensor necesita un campo magnético mayor para que pueda ser
dejado a grandes distancias del elemento, que para este caso
sería el péndulo.
Fig.4 Sensor de efecto Hall Ky-024. Fuente: autor
3. Acelerómetro MPU6050
Dentro de las magnitudes que también resultan de gran
importancia dentro de este movimiento encontramos la
aceleración y la velocidad angular y un sensor que se encarga
de estas medidas en simultáneo es el MPU6050 que tiene
incluido un acelerómetro y un giroscopio; este se muestra en la
figura 5. Gracias a las medidas otorgadas por este sensor se
puede hallar la aceleración en los tres ejes del plano cartesiano
y la velocidad angular en X y Y, además del ángulo en X y Y,
gracias a unos cálculos realizados. Es importante resaltar que
este sensor necesita una calibración para una medición más
acertada tanto de las velocidades como de las aceleraciones, así
como un filtro para hallar los ángulos tanto en X como en Y.
Fig.5 Acelerómetro MPU6050. Fuente: Bot Science. IMU
Acelerómetro+Giroscopio MPU6050. Recuperado de:
http://botscience.net/store/index.php?route=product/product&product_id=80
4. Arduino Mega 2560
Se eligió el Arduino Mega 2560 (figura 6) para el control de
todo el sistema y la comunicación con el sistema de adquisición
de datos. Esta clase de arduino tiene una gran ventaja y es la
cantidad de entradas y salidas que tiene, así como la capacidad
de memoria comparada con la de otros Arduinos. Otra de las
ventajas de utilizar arduino es la compatibilidad que tiene con
los sensores a trabajar, así como la amplia cantidad de librerías
que se han creado para el manejo de los mismos.
Fig.6 Arduino Mega 2560. Fuente: autor
C. Construcción del sistema
Resulta importante determinar cómo funciona cada uno de
los sensores de manera independiente de modo que luego se
pueda ver como trabajarían de forma conjunta; es por esta razón
que al tener analizados que sensores se utilizarían, se procedió
a ver el funcionamiento de cada uno independientemente. Para
esto, fue necesario hacer la programación de cada uno de los
sensores y dispositivos (teclado matricial, GLCD, pulsadores)
de manera independiente y de este modo ir analizando cuales
serían los pasos a seguir dentro del sistema.
199
Al ser un dispositivo pensado para el uso dentro de un
laboratorio de física en un colegio o universidad, fue necesario
implementar un sistema de seguridad en el que se ingresara una
clave para el posterior desarrollo de la práctica, así como el
ingreso de cedulas para llevar un registro de las personas que
usan el dispositivo y ser un dato importante en los reportes
generados durante el desarrollo de las prácticas. Los anuncios
que salen al iniciar el sistema se pueden observar en las figuras
7, 8 y 9 que aparecen a continuación.
Fig.7 Pantallas de inicio en el sistema. Fuente: autor
Fig.8 Ingreso de documento de identificación en el sistema. Fuente: autor
Fig.9 Datos arrojados por el sistema. Fuente: autor
Después de haber realizado el análisis pertinente acerca de
las variables que intervienen en este movimiento y son
importantes durante del desarrollo de una práctica, se
implementó el primero péndulo (versión ALPHA), la cual
puede ser observada en la figura 10, en donde se ubicaron los
sensores de modo que pudieran ser tomados los datos de la
longitud, la aceleración en los ejes del plano, la velocidad
angular, así como el número de oscilaciones durante el
desarrollo de la práctica. Las respectivas graficas que pueden
ser obtenidas durante la práctica con el sistema se pueden
observar en las figuras 11, 12 y 13.
Fig.10 Aceleración en X. Fuente: autor
Fig.11 Velocidad en X. Fuente: autor
Fig.12 Ángulo en X. Fuente: autor
Con todo esto, se logra que una persona pueda tener un
análisis más cercano de esta clase de movimiento, pues al
suministrarle todos los datos necesarios durante la práctica, se
podría realizar un estudio más detallado acerca de lo que esta
sucediendo al realizar las oscilaciones el péndulo y más
específicamente, la influencia que tiene el Movimiento
Armónico Simple en la vida cotidiana.
Al tenerse este primer prototipo funcionando y por medio del
cual era posible obtener las aceleraciones, velocidades
angulares, número de oscilaciones y longitud, se planteó la idea
de un nuevo prototipo en el que se pudieran observar ciertas
mejoras y que permitiera la obtención de más datos durante la
práctica. Es así como nace el nuevo prototipo denominado
BETA en el que se agregan mejoras tanto a la programación,
como a la parte física del sistema, así como soluciones dentro
del sistema de adquisición de datos.
0
2000
4000
6000
0 5000 10000 15000
Aceleracion en X
-20000
-10000
0
10000
20000
0 5000 10000 15000
Velocidad en X
-150
-100
-50
0
0 5000 10000 15000
Angulo X
200
VI. MODELO ALPHA Y BETA
Dentro del desarrollo del primer modelo, se encontraron
ciertas falencias que podían ser corregidas dentro de la nueva
versión tanto estructurales, como del sistema en general. Cada
uno de los modelos será mostrado a continuación,
demostrándose de esta manera las diferencias que hay entre una
y otra y dando la oportunidad de hacer diferentes prácticas con
una u otra con el fin de encontrar diferencias y ventajas entre
una y otra.
A. Versión ALPHA
En el primer modelo se establecieron ciertas variables a
tenerse en cuenta y que serían los datos resultantes a la práctica
realizada con este. Hay que tener en cuenta que en este modelo
solo se tiene una varilla que se encarga de sostener el peso,
aunque con esta también es posible variarse las longitudes con
las cuales se va a trabajar la práctica, y con la cual se podrá ver
la diferencia que hay entre una y otra longitud. El reporte de
este modelo es un poco más sencillo, pero suministra los datos
más básicos con los cuales se puede realizar un análisis de este
movimiento. Es importante aclarar que las aceleraciones y
velocidades son dadas en el formato establecido por el
acelerómetro y tal vez para la persona que este manejando el
sistema puede resultar un poco confuso en un comienzo; sin
embargo, este valor puede escalizarse en uno más conocido
como puede ser la aceleración dada en m/s2 como usualmente
la conocemos. La decisión de dejar estos valores en gravedades
(que es la medida establecida por el acelerómetro en su
configuración) es porque permite una mejor visualización de las
gráficas, ya que da los valores en un rango de -16384 a 16384
teniéndose un mayor rango de observación. Este modelo puede
observase en la figura 13 que aparece a continuación, junto con
la respectiva interfaz gráfica que aparece en la figura 14.
Fig.13 Modelo ALPHA, péndulo simple. Fuente: autor
Fig.14 Interfaz gráfica modelo ALPHA, péndulo simple. Fuente: autor
B. Versión BETA
Las modificaciones que se le hicieron a este modelo se
realizaron teniéndose en cuenta ciertas problemáticas que se
estaban presentando con el modelo anterior en cuanto a la parte
física, como al programa en general. En este modelo (figura 15)
se debe tener en cuenta que hay integrada una regla que permite
medir la posición horizontal en la cual se encuentra el péndulo
con el fin de hallar el ángulo en el cual se inicia la medición con
este valor y con el de la longitud de la cuerda usada. Además de
esto, se pueden también ver el número de pulsos generados en
cada paso del péndulo por enfrente del sensor, gracias al LED
ubicado al lado derecho de la GLCD.
Fig.15 Modelo BETA, péndulo simple. Fuente: autor
En cuanto a la interfaz gráfica (figura 16), se ven grandes
cambios en cuanto a que se convirtió en más agradable y de
fácil uso para quien la esté usando. Es importante tenerse en
cuenta que en la interfaz de usuario es necesario ingresar ciertos
datos a la hora de hacer el reporte como lo es el tiempo
transcurrido, que se obtiene gracias al cronometro, así como las
longitudes de la cuerda que están dadas por el sistema y la
longitud medida en la regla. Si en el reporte se quiere tener
guardado el dato de cuantos grupos había, se puede anotar,
aunque es un valor realmente opcional; todos estos datos deben
ingresarse antes de oprimir ya sea R o RT que son los
encargados de generar los respectivos reportes.
201
Fig.16 Interfaz gráfica modelo BETHA, péndulo simple. Fuente: autor
VII. CONCLUSIONES
Es importante tener cuidado con los delays dentro del
programa, puesto que pueden generar ciertos
inconvenientes y afectar el proceso de los sensores, para
esto se recomienda recurrir al uso de interrupciones, ya que
estas tienen la capacidad de independizar la sección en la
que se esté teniendo el problema, ya que el manejo de los
tiempos dentro del programa es fundamental y de suma
importancia.
La calibración del sensor MPU6050 es supremamente
importante para la obtención de los parámetros del
Movimiento Armónico Simple, ya que este es el encargado
de dar las aceleraciones y las velocidades angulares en los
diferentes ejes, lo cual permite generar el reporte, realizar
y estudiar las respectivas gráficas. Si este no está calibrado
correctamente la práctica se puede ver afectada, por esto es
importante revisar que el sensor este calibrado antes de
realizar la respectiva guía. Hoy en día. La red nos ofrece
diferentes métodos de calibración, los cuales pueden llegar
a ser de gran utilidad a la hora de lograr que el sistema
funcione correctamente.
Se debe tener en cuenta que hay algunas variables externas
que pueden afectar al sistema pendular, ya que este no es
ideal, pueden intervenir factores naturales tales como la
fricción con el aire o la tensión que pueda producirse entre
los cables de los diferentes sensores y los conectores RJ45;
para evitar esto y reducir al máximo ese error es importante
seguir los pasos que están explicados dentro del libro.
Las mejoras para el sistema son viables por parte de otros
trabajos de grado, ya que se podría llegar a implementar el
manejo de nuevos sensores más precisos y óptimos, con
más detalle en la obtención de datos. El desarrollo y la
investigación de otros sensores puede servir para la
identificación de diferentes fenómenos físicos, y así
obtener los parámetros de otros movimientos, como por
ejemplo el circular uniforme. También se puede optar por
el cambio de varillas del sistema por otras más adecuadas,
la incorporación de módulos bluetooth en el sistema, y a su
vez lograr modificaciones en el programa de Arduino y en
el programa de la interfaz gráfica de LabVIEW, todo esto
para mejorar e ir en pro del módulo.
REFERENCIAS
[1] Ramírez S, R., & Villegas R, M. (1989). Investiguemos 11 Física.
(Voluntad, Ed.) (Onceava). Bogotá, Colombia. [2] Movimiento armónico simple by Dency Armando Zapata Jiménez...
(n.d.). You Got the News. Retrieved from
https://issuu.com/dencyarmandozapatajimenez9/docs/movimiento_armonico_simple.pptx
[3] (National Instruments, s.f.). N.I. ¿Qué es la adquisición de datos?
Recuperado de: http://www.ni.com/data-acquisition/what-is/esa/ [4] Trenzado Diepa, J. L. (2014). Física. (Universidad de las Palmas de Gran
Canaria, Ed.). Retrieved from
http://site.ebrary.com.bdatos.usantotomas.edu.co:2048/lib/bibliotecaustasp/detail.action?docID=11013443
[5] Matamoros S, A. Z. (2009). Ejemplo de un Péndulo Simple. Mérida,
Venezuela. Retrieved from http://www.webdelprofesor.ula.ve/ingenieria/matamoros/index_archivos
/DF_SNL.pdf
[6] Jiang, X., Bi, T., Wang, Y., & Ouyang, J. (2011). A Simple Pendulum Experiment for Energy Compensation Automation, 7142–7145.
[7] Engineering, P. (2011). Available online at www.sciencedirect.com Open
access under CC BY-NC-ND license. 10, 3734–3740. doi: 10.1016/j.proeng.2011.04.611
[8] Bermúdez, H. H., B, H. A. G., & Bermúdez, H. F. (2011). Prototipo
mecatrónico para la enseñanza y el aprendizaje del movimiento armónico simple Mechatronics prototype for teaching and learning the simple
harmonic motion, (49), 245–252.
[9] Kavithaa, R., Babu, R. U., & Deepak, C. R. (2013). Simple pendulum analysis - A vision based approach. 2013 4th International Conference on
Computing, Communications and Networking Technologies, ICCCNT 2013, (Figure 1). doi:10.1109/ICCCNT.2013.6726567
[10] Butterworth, J. (2014). Simple harmonic motion: the swing of the
pendulum | Jon ... Guardian. Retrieved from https://www.theguardian.com/science/life-and-
physics/2014/may/18/simple-harmonic-motion-the-swing-of-the-
pendulum [11] Hernández-Sampieri, R., Fernández-Collado, C., & Baptista-Lucio, P.
(2006). Análisis de los datos cuantitativos. Metodología de la
investigación. [12] Historia de la Física. (n.d.). Retrieved from http://mural.uv.es/sansipun/
[13] Las leyes del Péndulo Físico Oscilación Periodo Frecuencia. (n.d.).
Retrieved from http://historiaybiografias.com/pendulo/
[14] Movimiento Armónico Simple.pdf. (n.d.). Retrieved from
http://www.proyectosalonhogar.com/enciclopedia_ilustrada/ciencias/Mo
vimiento_Armonico2.htm [15] Serway, R. a., & Kirkpatrick, L. D. (1988). Physics for Scientists and
Engineers with Modern Physics. The Physics Teacher (Vol. 26).
http://doi.org/10.1119/1.2342517 [16] Vizca Lajaraíno, J. R., & Pelegrí Sebastiá, J. (2007). LABVIEW Entorno
gráfico de programación. In M. S.A (Ed.), LABVIEW Entorno gráfico de
programación (p. 385). Retrieved from: http://site.ebrary.com.bdatos.usantotomas.edu.co:2048/lib/bibliotecausta
sp/reader.action?docID=10204103
[17] Instruments, N. (2016). ¿Qué es Adquisición de Datos? Daq. Retrieved from http://www.ni.com/data-acquisition/what-is/esa/
[18] UCM. (100AD). Manual Básico de Programación en LabVIEW (Vol. 1).
[19] Holguín, G., Pérez, S., & Orozco, Á. (2002). Curso Básico de LabVIEW 6i.
202
[20] Ruiz Guti, M. (2007). Manual de Programación Arduino: Manual de
Programación. Arduino Notebook, 1, 3–70.
[21] Baeza, J. P., & Pomares, J. (2009). Manual de arduino revisión. Manual De Arduino, 1–8.
[22] Diosdado, R. (2014). Manual Arduino. Saudí Med J, 33, 3–8.
http://doi.org/10.1073/pnas.0703993104 [23] Ibraim Hernández, Juan Fajardo, Oskar Vanegas, J. B. (2011). Guía básica
de arduino, 120.
AUTORES
Tania C. Barrera M nació en Tunja en
1993. Graduada en el año 2009 de
secundaria de la Escuela Normal Superior
“Leonor Álvarez Pinzón”. Actualmente se
encuentra realizando el trabajo de grado en
la Universidad Santo Tomás de la ciudad
de Tunja, para obtener el título de
ingeniera electrónica. Durante su estudio
se ha presentado como ponente en
Redcolsi nodo Boyacá, clasificando en las dos ocasiones para
el nacional llevado a cabo en Bucaramanga y Montería.
Oscar F. Camargo A nació en Tunja en
1993. Graduado en el año 2010 de
secundaria del colegio “Nuestra Señora del
Rosario”. Actualmente se encuentra
realizando su trabajo de grado en la
Universidad Santo Tomás de la ciudad de
Tunja, para obtener el título de ingeniero
electrónico. Durante su estudio se ha
presentado como ponente en Redcolsi nodo
Boyacá, clasificando para el nacional llevado a cabo en
Bucaramanga y Montería.
Camilo Ernesto Pardo Beainy, Nacido en
Bogotá, Colombia, el 22 de diciembre de
1982. Ingeniero Electrónico – Universidad
Santo Tomás – Especialista en
Instrumentación Electrónica – Especialista
en Redes de Telecomunicaciones –
Universidad Santo Tomás. Estudiante de la
Maestría en Ingeniería Electrónica de la
Pontificia Universidad Javeriana. Con
participación en Proyectos y Licitaciones del sector energético,
de Ingeniería y Construcción Industrial – Abengoa, Madrid,
España. Docente Universitario en las áreas de Comunicaciones,
Técnicas Digitales, Teoría de Circuitos, y Tratamiento Digital
de Señales - Facultad de Ingeniería Electrónica, USTA - Tunja.
Con énfasis en sistemas SCADA, Procesamiento de Imágenes,
Tratamiento de Señales, DSPs e Instrumentación de Procesos.
[email protected], [email protected]
Luis Fredy Sosa Quintero. Ingeniero
Electrónico, Universidad Santo Tomás,
Magister en Educación, Universidad
Santo Tomas, Especialista en Gerencia de
Instituciones de Educación Superior
Universidad Santo Tomás. Especialista en
Instrumentación Electrónica Universidad
Santo Tomas, Especialista en Redes de
Telecomunicaciones Universidad Santo
Tomás, estudios cursados en especialista (a) en Gerencia de
Proyectos. Universidad de Boyacá. PhD (C) Ciencias de la
Educación Red de Universidades Públicas de Colombia. Ha
sido Decano Académico de la Facultad de Ingeniería
Electrónica Universidad Santo Tomás, Coordinador de
Postgrados de la Universidad Santo Tomás en el Programa
Académico de Ingeniería Electrónica, Secretario de la División
de Ingenierías y Arquitectura de la Universidad Santo Tomás
seccional Tunja. Miembro del Grupo de Investigación EICIT.
Con diferentes publicaciones en congresos, revistas, simposios,
y seminarios nacionales e internacionales en las áreas de
instrumentación, control bioingeniería y comunicaciones.
Docente titular de las asignaturas análisis de circuitos en el
dominio de la frecuencia y potencia eléctrica.
203
ANEXO 9: GUIA DE LABORATORIO
Tema: Movimiento Armónico Simple
Título: El péndulo Simple
Saberes Previos: Tener conocimiento del manejo de la interfaz gráfica del sistema, así como conocimientos
previos acerca del Movimiento Armónico Simple aplicado a un péndulo simple, con el fin del desarrollo
óptimo la guía de laboratorio. Discútela con tus compañeros de trabajo.
OBJETIVOS
Visualizar los fenómenos físicos que intervienen en el Movimiento Armónico Simple aplicado a un
péndulo simple.
Obtener las respectivas graficas de aceleración, velocidad y ángulo, con respecto al tiempo en los
diferentes planos suministrados por el sistema.
Hallar el periodo en el cual oscila el sistema, teniendo en cuenta los valores suministrados por el
péndulo.
MATERIALES
- Equipo de péndulo físico
- Software especializado (interfaz gráfica LabVIEW)
- Bola de péndulo o masa
- Varillas
- Computador
- Cable USB macho-macho
204
PRACTICA 1:
1. Encienda el sistema y siga las instrucciones que allí se dan. Recopile los datos obtenidos con el sistema
con al menos 3 longitudes y ángulos diferentes. Concluya
2. Aumente la masa del péndulo a 100 gramos ¿Al aumentar la masa, el tiempo requerido para una
oscilación completa del péndulo, aumenta o disminuye?
3. Coloque la varilla de 30cm y tome 3 reportes diferentes con 3 longitudes diferentes y analice. Cambie la
varilla a la de 18cm y concluya que ocurre con el tiempo en este caso. Analice las gráficas de cada caso.
4. ¿Cómo se afecta el tiempo de una oscilación si se aumenta el ángulo en el procedimiento?
PRACTICA 2:
Manteniendo una longitud de 22cm y una misma amplitud guiándose de la regla que se encuentra en el
módulo medir el periodo del péndulo variando la masa del sistema (agregando cada vez más peso al péndulo
de tal forma que m1 m2 m3 y m4 m5). Analice los datos obtenidos y concluya
M1=
M2=
M3=
M4=
PRACTICA 3:
Hallar el grado en el que se encuentra la masa teniendo las siguientes longitudes de varillas: 20cm,
15cm, 25cm. Tenga en cuenta que para hallar el valor de ese ángulo es necesario tener en cuenta la
medición de la regla que se encuentra ubicada en la base del módulo.
Obtener los reportes de las aceleraciones, realizar las gráficas y describir que pasa con el movimiento.
Pase al menos 10 datos del reporte de las aceleraciones dados en gravedades a m/𝑠2.
Recuerde. 1 gravedad esta entre ±16384. Además, el valor de la gravedad en la Tierra es de
aproximadamente 9,8m/s2
205
ANEXO 10: PROGRAMACIÓN EN LABVIEW VERSION ALPHA
206
207
ANEXO 11: PROGRAMACIÓN EN LABVIEW VERSION BETA
208
209
210