ESCUELA POLITÉCNICA NACIONAL FACULTAD DE INGENIERÍA ELÉCTRICA Y ELECTRÓNICA DISEÑO Y CONSTRUCCIÓN DE UN SISTEMA BASADO EN UN MICROCONTROLADOR PARA CONTROLAR POR VOZ Y JOYSTICK EL DESPLAZAMIENTO DE UNA SILLA DE RUEDAS PROYECTO PREVIO A LA OBTENCIÓN DEL TÍTULO DE INGENIERO EN ELECTRÓNICA Y CONTROL CHANGO ALVAREZ HENRY PATRICIO [email protected] TOCTAGUANO TIPAN ROBERTO CARLOS [email protected] DIRECTOR: Dr. LUIS CORRALES P. [email protected] Quito, Enero del 2009 DECLARACIÓN Nosotros, Henry Patricio Chango Alvarez y Roberto Carlos Toctaguano Tipan, declaramos que el trabajo aquí descrito es de nuestra autoría; que no ha sido previamente presentada para ningún grado o calificación profesional; y, que hemos consultado las referencias bibliográficas que se incluyen en este documento. A través de la presente declaración cedemos nuestros derechos de propiedad intelectual correspondientes a este trabajo, a la Escuela Politécnica Nacional, según lo establecido por la Ley de Propiedad Intelectual, por su Reglamento y por la normatividad institucional vigente. ________________________ Chango Alvarez Henry Patricio ____________________________ Toctaguano Tipan Roberto Carlos CERTIFICACIÓN Certifico que el presente trabajo fue desarrollado por Henry Patricio Chango Alvarez y Roberto Carlos Toctaguano Tipan bajo mi supervisión. ________________________ Dr. Luis Corrales P. DIRECTOR DEL PROYECTO AGRADECIMIENTO A Dios por darme la vida. A mis grandes amigos con los cuales compartí buenos y malos momentos: Andrés, Cristian, Roberto, Byron, Mary, Marco, Edwin, Mónica, Walter. Al Dr. Luis Corrales por guiarnos en la realización de esta tesis. A Carmen, Anita quienes siempre estuvieron pendientes por la culminación de este trabajo. Henry Patricio. AGRADECIMIENTO A Dios por ser su hijo y darme la oportunidad de cumplir mis metas y rodearme de personas muy especiales que han marcado mi vida. A mi Virgencita del Quinche por ayudarme a cumplir la promesa ante ella, A mí querida Poli por brindarme la oportunidad de superarme en sus aulas. Al Dr. Luís Corrales, por darnos la oportunidad de realizar esta tesis bajo su tutela y guía. A mis Hermanos Viviana y Paúl por el gran apoyo brindado siempre. A mi novia Verónica Paulina que con su gran amor a llenado mi vida de felicidad. A mis tíos y primos con quienes comparto momentos inolvidables. A mis grandes amigos los “GALACTICOS RELOAD" Andrés, Marco, Cristian, Henry, Diego, Byrón, María, Edisón, Mónica, con quienes compartí grandes momentos en la Poli. A mis grandes amigos de toda la vida: Lucy, Jaime, Santiago, Blanca, Alexandra, Paulina, Paola que de una u otra forma me demostraron su gran amistad. A una persona muy especial que me brindo su apoyo incondicional en uno de los peores momentos de mi vida y siempre llevo presente sus consejos y no se que será de su vida. Roberto Carlos. DEDICATORIA A mis padres Eva Teresa y Nelson Efraín quienes siempre me brindaron apoyo y comprensión en todo momento y me enseñaron a seguir el camino del bien. A mi Tío Luís Heriberto con quien aprendí cosas valiosas e inolvidables. A mi prima Rita Elizabeth quien me supo dar sus buenos consejos en los peores momentos de mi vida. A mi gran amigo Santiago (┼) con quien compartimos grandes momentos. Henry Patricio. DEDICATORIA A mis padres María Transito y José Roberto que con su amor, cariño y sacrificio me enseñaron el verdadero significado de la vida. A mis queridos abuelitos José Lino (┼), Rosario, Maria Elisa (┼) que me cuidaron en mi niñez y juventud. A mi prima Verónica de los Ángeles (┼) con quien compartí muchos momentos felices. Roberto Carlos. CONTENIDO Pág. Resumen………………………………………………………………………………..……i Presentación……………………………………………….……………………………….iii CAPÍTULO 1: ESTUDIO DE LA DISCAPACIDAD EN EL ECUADOR 1.1 Discapacidad física...........................................................................................................1 1.1.1 Cuadraplejia.......................................................................................................1 1.1.2 Paraplejia...........................................................................................................2 1.1.3 Triplejia.............................................................................................................2 1.2 Discapacidad en el Ecuador.............................................................................................2 1.2.1 Investigación nacional 1996..............................................................................2 1.2.2 Investigación nacional 2004..............................................................................3 1.3 Reconocimiento de voz....................................................................................................8 1.3.1 Clasificación de los reconocedores de voz........................................................8 1.4 Rampa de arranque y frenado Tipo “S”...........................................................................9 1.5 Análisis del sistema anterior...........................................................................................10 1.6 Propuesta de diseño....................................................................................................... 10 CAPÍTULO 2: DISEÑO Y CONSTRUCCIÓN DEL HARDWARE DE CONTROL 2.1 Análisis de la silla de ruedas......................................................................................... 12 2.1.1 Determinación de la fuerza máxima requerida en una superficie plana …………………………………………………………………................... 13 2.1.2 Determinación de la fuerza máxima requerida en una superficie ascendente. .............................................................................................................. 14 2.1.3 Determinación de la fuerza máxima requerida en una superficie descendente……………………………………………………………………...... 16 2.1.4 Determinación de la potencia de los motores. ............................................... 17 2.2 Diseño del sistema eléctrico.......................................................................................... 18 2.3 Selección de la batería................................................................................................... 22 2.4 Selección del microcontrolador PIC.............................................................................. 23 2.4.1 Diseño del Circuito de reset y oscilador del microcontrolador PIC………... 25 2.4.2 Diseño del Circuito detector del estado de la silla de ruedas……...…...…... 27 2.4.3 Diseño del Circuito teclado y LCD................................................................ 29 2.4.4 Diseño del Circuito selector del modo de operación de la silla de ruedas......29 2.4.5 Circuito de control de los motores de DC...................................................... 31 2.4.6 Circuito de control de relés para el sentido de giro de los motores................ 37 2.4.7 Circuito detector de batería baja y batería cargada………………………......41 2.5 Programación e implementación del subsistema de reconocimiento de voz................ 48 2.5.1 Hardware del sistema de reconocimiento de voz. ......................................... 48 2.5.2 Programación del circuito integrado HM2007. ............................................. 50 2.5.3 Implementación del sistema de reconocimiento de voz HM2007 con el microcontrolador PIC16F628A............................................................................... 51 2.6 Diseño de las fuentes de poder...................................................................................... 53 2.6.1 Diseño de las fuentes reguladas de 7,5 Voltios...............................................53 2.6.2 Diseño de las fuentes reguladas de 5 Voltios................................................. 57 CAPÍTULO 3: DISEÑO DEL SOFTWARE DE CONTROL 3.1 Controlador integrado programable PIC....................................................................... 59 3.2 Rampa Tipo “S”............................................................................................................ 61 3.3 Activación de los motores............................................................................................. 64 3.4 Codificación de las palabras.......................................................................................... 65 3.5 Programación general.................................................................................................... 66 3.5.1 Lógica de funcionamiento del microcontrolador PIC 16F877A.................... 66 3.5.1.1 Configuración de registros y pines de control................................. 84 3.5.2 Lógica de funcionamiento del microcontrolador PIC 16F628A.................... 90 3.5.2.1 Configuración de registros y pines de control................................. 92 CAPÍTULO 4: PRUEBAS Y RESULTADOS 4.1 Pruebas de la rampa Tipo “S”....................................................................................... 95 4.2 Pruebas de reconocimiento de voz...............................................................................102 4.3 Pruebas en los motores................................................................................................ 103 4.4 Resultados obtenidos................................................................................................... 104 CAPÍTULO 5: ESTUDIO DE COSTOS 5.1 Costos......................................................................................................................... 106 CAPÍTULO 6: CONCLUSIONES Y RECOMENDACIONES 6.1 Conclusiones............................................................................................................... 114 6.2 Recomendaciones....................................................................................................... 115 REFERENCIAS BIBLIOGRÁFICAS ANEXOS RESUMEN El presente trabajo tiene como objetivo el diseño y desarrollo de un prototipo basado en un microcontrolador PIC, que permita controlar el desplazamiento y giro de una silla de ruedas por medio de la voz del usuario y de un joystick. Para el arranque y frenado de los motores se utilizan rampas de aceleración y desaceleración de tipo “S” variables en el tiempo de 1 a 9 seg. Además se tiene velocidad de crucero variable de 0 a 1 m/seg. Para el control por voz se hace uso del circuito integrado HM2007 que es capaz de reconocer hasta 40 palabras de 0.96 segundos ó 20 palabras de 1.92 segundos de longitud y envía dos números en código BCD de cada palabra que son interpretados por el microcontrolador PIC 16F628A. Las palabras utilizadas son grabadas en el circuito HM2007. Para el control manual se utilizó un joystick con pulsadores para dar los movimientos: adelante, atrás, izquierda y derecha. Para que el sistema tenga la capacidad de realizar arranques y frenados suaves se realizó una función cosenoidal a través de un algoritmo de control en la programación del microcontrolador PIC 16F877A. Para que el sistema pueda variar la velocidad de crucero se varía la amplitud de la función cosenoidal implementada en el algoritmo de control. Se grabó en el circuito integrado HM2007 en modo de 20 palabras para que la duración de la palabra hablada sea más larga y pueda ser reconocida de manera exacta. Se determinó que con el tiempo de 1s en el algoritmo de las rampas de aceleración y desaceleración el funcionamiento de la silla es el más adecuado, debido a que si la silla se encuentra en espacios reducidos y con tiempos mayores en la generación de las rampas puede ocurrir algún tipo de choque. Al realizar la rampa en forma de coseno tipo “S” se consigue un incremento y decremento suave de velocidad que no se obtiene en otros tipos de arranques. El peso de los usuarios influye en la velocidad de crucero, ya que con esto la silla de ruedas puede aumentar o disminuir la velocidad. PRESENTACIÓN El proyecto de Titulación “DISEÑO Y CONSTRUCCIÓN DE UN SISTEMA BASADO EN UN MICROCONTROLADOR PARA CONTROLAR POR VOZ Y JOYSTICK EL DESPLAZAMIENTO DE UNA SILLA DE RUEDAS” fue realizado para realzar el estudio e investigación de la ESCUELA POLITECNICA NACIONAL en temas médicos a beneficio de la sociedad Ecuatoriana, a la par con otros países que realizan este tipo de proyectos. En el Capítulo I se describen algunas de las discapacidades físicas como cuadraplejia, paraplejia y triplejia. Se hace un análisis de las discapacidades en el Ecuador, además se tiene una introducción al reconocimiento de voz, sus aplicaciones y clasificación. También se da a conocer sobre la rampa tipo “S”, análisis del sistema encontrado y por último la propuesta de diseño. En el Capítulo II se dan a conocer los aspectos que se deben tomar en cuenta para el dimensionamiento de los elementos que integran la parte de control como son las fuentes de alimentación y la parte de potencia así como también la implementación y programación del sistema de reconocimiento de voz. En el Capítulo III se describe el programa de control del microcontrolador master PIC 16F877A y el microcontrolador esclavo PIC 16F628A en lenguaje estructurado. En el Capítulo IV se indican los ajustes realizados en cada una de las partes que conforman la silla de ruedas como motores, llantas, acople entre la banda el motor y la llanta, así como también ajustes en el software de control como velocidad de crucero, tiempos de las rampas de aceleración y desaceleración y acoplamiento del sistema de reconocimiento de voz. En el Capítulo V se dan a conocer los costos que representa la silla de ruedas, los elementos que integran el sistema de control y potencia, elementos que forman parte del sistema de reconocimiento de voz y el costo que implica los conocimientos de ingeniería. En el Capítulo VI se tienen conclusiones y recomendaciones relacionadas con lo anteriormente descrito. CAPÍTULO 1 ESTUDIO DE LA DISCAPACIDAD EN EL ECUADOR El presente trabajo pretende controlar el desplazamiento de una silla de ruedas mediante joystick y la voz del usuario, además de su velocidad de crucero y rampa de aceleración y desaceleración. El objetivo es proporcionar un mejor estilo de vida a las personas que sufren de discapacidad física. Para conocer un poco de esta discapacidad y así establecer los requerimientos de la potencial población destino, a continuación se hace un estudio sobre discapacidades físicas. 1.1 DISCAPACIDAD FÍSICA Se puede definir como una imposibilidad que limita o impide el desempeño motor de la persona afectada, esto significa que las partes afectadas generalmente son los brazos y/o piernas. Su discapacidad se manifiesta en que pueden requerir de la ayuda de otras personas para realizar las actividades de la vida diaria o que tienen dificultades para trabajar o estudiar debido a su deficiencia. Existen muchos tipos de discapacidades físicas, pero se va a dar una breve explicación de aquellas relacionadas con este trabajo. 1.1.1 CUADRAPLEJIA La Cuadraplejia o cuadriplejia es una lesión medular que se refiere a la parálisis que afecta las cuatro extremidades. Es una lesión en la porción superior de la médula espinal, si bien da como resultado la parálisis completa de las extremidades inferiores, puede afectar en forma parcial o completa las superiores, dependiendo del nivel neurológico afectado. 1 1.1.2 PARAPLEJIA La afectación de la región lumbar de la médula espinal da por resultado la paraplejia. La función en las extremidades superiores es normal, el suministro neurológico del tórax y parte alta del abdomen está íntegro, mientras que las inferiores tienen parálisis parcial o total. Supone la pérdida de movilidad y sensibilidad de cintura para abajo (pierna derecha e izquierda). 1.1.3 TRIPLEJIA Es la ausencia de movimiento y de sensibilidad en un brazo y ambas piernas y generalmente se produce como resultado de una lesión incompleta de la médula. 1.2 DISCAPACIDAD EN EL ECUADOR Del total de la población existente en el Ecuador, el 13,2 % son personas con algún tipo de discapacidad. Se conoce que en el país existen aproximadamente [5]: • 592.000 personas con discapacidad por deficiencias físicas • 432.000 personas con discapacidad por deficiencias mentales y psicológicas • 363.000 personas con discapacidad por deficiencias visuales; y, • 213.000 personas con discapacidad por deficiencias auditivas y del lenguaje. 1.2.1 INVESTIGACIÓN NACIONAL 1996 [5] Los resultados de la investigación que terminó en 1996, auspiciada por el CONADIS, el INNFA del Ecuador y el Instituto de Migración y Servicios Sociales, IMSERSO de España, muestra la situación de las discapacidades en nuestro país, en sus aspectos más 2 importantes como: el aspecto legal, el de atención a las personas con discapacidad y el epidemiológico en su dimensión y distribución geográfica. En el país el 48.9% de la población tiene alguna deficiencia es decir, un trastorno ó alteración orgánica, funcional o psicológica que puede provocar una discapacidad. El 13.2% de la población tiene algún tipo de discapacidad, es decir una limitación de carácter permanente para realizar una actividad como la realizan las otras personas. El 4.4% tiene alguna minusvalía, es decir, una seria desventaja a consecuencia de una discapacidad para cumplir un rol social. 1.2.2 INVESTIGACIÓN NACIONAL 2004 [5] De esta investigación realizada se ha obtenido los siguientes resultados: • En Ecuador existen 1.608.334 personas con alguna discapacidad, que representan el 12.14% de la población total. • El 6% de los hogares ecuatorianos tienen al menos un miembro con discapacidad. El 8% de los hogares rurales tienen alguna persona con discapacidad frente al 5% de hogares urbanos. • El 8% de las familias de la Sierra tienen al menos un miembro con discapacidad. Este porcentaje es superior a los porcentajes encontrados en la Región Costa (4%) y Amazónica (6%). Las provincias más afectadas por la discapacidad son las de: Loja, Cañar, Bolívar y Cotopaxi, cuyos porcentajes de hogares con al menos una persona con discapacidad sobrepasan al porcentaje nacional en más de 4 puntos. • Cerca de 830 000 mujeres en Ecuador tienen discapacidad (51,6%), mientras que el número de hombres con discapacidad es 778594 (48,4%). Esta distribución no es igual a la distribución de la población nacional por sexo que es: mujeres 50.3% y hombres 49.7%, demostrando que existe mayor discapacidad en las mujeres. Sin embargo, no en todas las edades es mayor el número de mujeres con discapacidad: 3 a) De la población infantil ecuatoriana menor de 5 años, los niños y niñas con discapacidad infantil representan el 1.4%. De ellos el 76% tiene alguna deficiencia y el 24% presenta alguna limitación en la actividad. b) Entre los menores de cinco años con limitaciones, el 56.7% son niños y el 43.3% son niñas. c) En el grupo de edad de 5-40 años con discapacidad, el 53% son hombres y el 47% son mujeres. d) En la población con discapacidades de 41 años y más de edad, el 54% son mujeres y el 46% son hombres. • La presencia de discapacidad está directamente relacionada con la edad. De la población con discapacidad, el 33% tiene más de 65 años, mientras que en los grupos menores de 40 años, estos porcentajes máximo llegan al 19%. Aunque los porcentajes de discapacidad se incrementan continuamente conforme avanza la edad, a partir de los 41 años este incremento se acelera de forma notable. • El porcentaje de discapacidad no es homogéneo en el territorio ecuatoriano, hay diferencias importantes entre las provincias. Las provincias de Guayas, Pichincha, Manabí y Azuay presentan porcentajes significativamente superiores al promedio nacional, mientras que Napo, Pastaza, Sucumbíos y Orellana presentan porcentajes sensiblemente inferiores a la media nacional. En la Región Amazónica el porcentaje es similar al promedio nacional y diez veces inferior a los porcentajes de la Región Costa y Sierra. • En los niños se identificaron las limitaciones en la actividad y restricción en la participación. El número de niños con estas limitaciones asciende a 17838. Entre las limitaciones más frecuentes de los menores de 5 años se señala a la limitación para ponerse de pie, para caminar solo y de la comunicación, causadas en mayor porcentaje por deficiencias funcionales (72.5%). El 44% de la población infantil menor de 5 años con limitaciones presenta más de una limitación en la actividad. 5048 niños/as no pueden ponerse de pie y caminar solos, 5856 niños/as tienen dificultades en comunicarse, 3867 niños/as tienen limitaciones para ver, 3763 niños/as tienen limitaciones permanentes para escuchar, 2216 niños/as tienen limitación permanente para vestirse, asearse o comer solos, 2.330 niños/as tienen limitaciones para relacionarse con los demás. 4 • El 72.5% de las deficiencias en la población infantil menor de 5 años son funcionales. Las más frecuentes son las relacionadas con el funcionamiento de los órganos internos. • De los menores de 5 años con limitaciones, el 80% reportó como causa originaria alguna condición negativa de salud: enfermedades hereditarias y adquiridas, problemas al momento del parto, infecciones y mala práctica médica. La condición negativa de salud es reportada a nivel rural como el 91% de las causas de las limitaciones, en comparación con el 73% en el sector urbano. • En el país se encontró que el 4.8% de la población mayor de cinco años tiene limitación grave en la actividad y restricción en la participación, lo que corresponde a 640183 personas. Es decir, son personas con discapacidad que tienen un bajo o ningún nivel de autonomía, que a pesar de utilizar ayudas técnicas o personales, presenta un nivel de funcionamiento muy restringido. • El 38% de la población discapacitada con limitación grave, necesita del cuidado permanente de otra persona. El 52% de los cuidadores permanentes son los padres, generalmente las madres. • El 79% de las personas con limitación grave, tienen limitaciones para realizar actividades y restricción en la participación: para movilizarse, actividades educativas y de aprendizaje, integrarse a la vida comunitaria, suficiencia en su auto cuidado, integrarse a las actividades de la vida doméstica y trabajar en forma remunerada. • Como ya se mencionó los porcentajes de personas con más de una limitación grave van en aumento conforme avanza la edad, con un pico marcado a partir de los 65 años. Mientras la población de 5-10 años tiene un 3% de limitaciones múltiples, el 46% de los mayores de 65 años presentan la misma condición. El número de mujeres de más de 65 años y más con limitaciones múltiples graves supera al de los hombres en un 7%. • De la población que presenta una sola limitación, la más frecuente es la relacionada con la recreación social que afecta al 9% de le las personas con limitación grave de 5 años y más (60240 personas). Seguida por la limitación para aprender y estudiar (4%), y trabajar remuneradamente (3.4%). 5 • 366 mil personas registran tener dificultad moderada para caminar, correr, subir gradas. 101700 presentan dificultad para coger cosas. La dificultad para ver aún utilizando anteojos afecta a 176900 personas. • En la población de 5 años y más 452336 personas presentan deficiencias estructurales, que representa el 64% de todas las deficiencias. • Entre la población con discapacidad, el 64% presenta deficiencias estructurales, el 29% deficiencias funcionales y el 7% deficiencias mixtas. • Las enfermedades heredadas y adquiridas, los problemas al momento del parto, las infecciones y la mala práctica médica son las principales causas de discapacidad en la población de 5 años y más (65%). Los accidentes como causa de discapacidad afectan más a la población masculina de 20-64 años (19%) y las condiciones negativas de salud afectan más a las mujeres en las mismas edades (53%). Pastaza 38%, Cañar 34%, Los Ríos 24% y Carchi 22% son las provincias en donde viven las personas con discapacidad originados por los accidentes como la primera causa de discapacidad. Morona Santiago 82%, Cotopaxi 78%, Bolívar 76%, y Orellana 76%, de las personas con discapacidad que viven allí tienen a las condiciones negativas de salud como la primera causa de discapacidad. Sucumbíos (17%) e Imbabura (7%) reportan los mayores porcentajes de personas con discapacidad con antecedentes de condiciones adversas como desastres naturales y pobreza como la causa de discapacidad. Sucumbíos, Esmeraldas y Chimborazo reportan los más altos porcentajes de personas con discapacidad por violencia como causa de discapacidad. Imbabura y Napo son las provincias en donde las intoxicaciones tienen los más altos porcentajes como causa de discapacidad. 6 A continuación se detalla la información de las personas carnetizadas y registradas en el CONADIS (Tabla 1.1) ente encargado de dar el reconocimiento legal de persona discapacitada. Esta información fue tomada desde el año 1996. PROVINCIA AUDITIVA FÍSICA INTELECTUAL LENGUAJE PSICOLÓGICO VISUAL TOTAL AZUAY 400 2121 1803 47 55 374 4800 BOLÍVAR 132 455 291 11 5 101 995 CAÑAR 114 525 318 4 28 87 1076 CARCHI 67 288 153 8 22 64 602 CHIMBORAZO 302 919 822 5 9 216 2273 COTOPAXI 153 718 449 37 13 164 1534 EL ORO 582 2669 2063 32 119 525 5990 ESMERALDAS 377 1683 1222 28 38 439 3787 9 30 34 0 0 8 81 GUAYAS 2446 7680 6518 248 326 1468 18686 IMBABURA 445 1129 695 33 75 212 2589 LOJA 608 1819 1862 38 135 483 4945 LOS RÌOS 238 1049 786 29 21 110 2233 MANABÌ 1114 5517 2325 70 868 868 10762 91 648 273 14 27 148 1201 NAPO 86 323 220 8 4 96 737 ORELLANA 64 246 141 15 10 44 520 PASTAZA 73 274 260 9 27 70 713 PICHINCHA 2230 8273 5030 61 253 1593 17440 SUCUMBÍOS 101 553 269 14 48 106 1091 TUNGURAHUA 322 1006 634 23 25 209 2219 Z.CHINCHIPE 61 170 180 7 8 53 479 10015 38095 26348 741 2116 7438 84753 GALÁPAGOS MORONA SANTIAGO TOTAL Tabla 1.1 Discapacidades en el Ecuador, tomado de [5] 7 1.3 RECONOCIMIENTO DE VOZ Es el proceso automático de conversión de palabras habladas a palabras escritas para que el dispositivo receptor tenga la capacidad de entender el lenguaje hablado y luego pueda realizar funciones especificas. Entre los campos de aplicación del reconocimiento de voz se tiene: sistemas de seguridad, telefonía, sistemas de control, sistemas de entrada de datos y acceso a bases de datos, etc. Generalmente se deben cumplir tres tareas: • Pre-procesamiento: convertir la señal análoga a digital, es decir convertir la voz a una manera en que el reconocedor pueda procesar. • Reconocimiento: interpretar lo que se dijo, se hace una traducción de señal a texto. • Comunicación: enviar lo reconocido para efectuar las acciones correspondientes en el sistema. Los procesos de pre-procesamiento, reconocimiento y comunicación no son visibles al usuario. Se utilizan características tales como la velocidad y certeza en el reconocimiento para evaluar que tan bueno es el sistema de reconocimiento de voz. 1.3.1 CLASIFICACIÓN DE LOS RECONOCEDORES DE VOZ [10] Los reconocedores de voz se clasifican de acuerdo a la función que van a cumplir y de acuerdo al tipo de habla. 1.3.1.1 De acuerdo a su propósito Los reconocedores de voz de acuerdo a su propósito pueden ser de propósito general cuando las palabras a ser reconocidas son de cualquier dominio, y de propósito específico cuando se reconocen palabras de un dominio en particular. 8 1.3.1.2 De acuerdo al tipo de habla En esta clasificación se toma en cuenta la manera de hablar: en forma aislada, cuando el hablante realiza pausas entre palabras para hacer más fácil el trabajo del reconocedor; y forma continua, cuando no existe pausas entre palabras. Esto hace que el reconocimiento sea más difícil y la información no sea confiable. 1.4 RAMPAS DE ARRANQUE Y FRENADO TIPO “S” Se refiere a las rampas que dan al motor mayor suavidad en los instantes de arranque, frenado y de aproximación a la velocidad ajustada, lo que posibilita evitar los choques mecánicos al inicio y al final de las rampas que son indeseables y reducen la vida útil de las máquinas. En la Figura 1.1 se muestra los tipos de rampas. Figura 1.1 Rampas. La rampa tipo “S” se puede obtener de la función coseno tomando la mitad del periodo, de acuerdo al software utilizado (PIC BASIC) la operación matemática COS da el coseno en 8 bits de un valor determinado. El resultado está dado en forma de dos complementos de 127 a 127 y usa una tabla de cuarto de onda para encontrar el resultado. El coseno comienza con un valor en radianes binarios de 0 a 255, en lugar de los usuales 0 a 359 grados. Para convertir los grados a radianes binarios se multiplica por 128 y se divide por 180. Para convertir los radianes binarios a grados se multiplica por 180 y luego se divide por 128. 9 Por ejemplo para 90 grados se tiene su equivalente 64 en radianes binaros: 90 o *128 = 64 180 cos( 64) = 127 1.5 ANÁLISIS DEL SISTEMA ANTERIOR El sistema fue realizado en el año 1995 por medio de una tesis “CONTROL ELECTRONICO DE SILLAS DE RUEDAS PARA PERSONAS PARAPLEJICAS Y CUADRAPLEJICAS”, la cual fue encontrada con los siguientes elementos: • Silla de Ruedas • Dos motores Dc 12V, 10Amp • 4 Relés. Todo el sistema de Control y Potencia no existía, no se encontró ninguna tarjeta electrónica de la tesis mencionada, de ahí la necesidad de realizar este proyecto. 1.6 PROPUESTA DE DISEÑO La propuesta consiste en diseñar y construir un sistema basado en un microcontrolador, que permita controlar el desplazamiento y giro de una silla de ruedas por medio de la voz del usuario y de un joystick. Sobre la base de la silla dotada de dos motores se diseñará el sistema para que realice los siguientes controles: • Mediante un teclado se fijará la pendiente de aceleración y desaceleración de la silla, así como la velocidad de crucero. 10 • El microcontrolador debe proveer una función de transferencia tipo “S” para eliminar los arranques y paradas bruscos y así evitar posibles accidentes al usuario de la silla. A continuación se muestra el diagrama de bloques de la propuesta en la Figura 1.2 VOZ ENTRENAMIENTO MOTORES JOYSTICK CONTROLADOR DE LA SILLA SELECCIÓN DE PARÁMETROS DE FUNCIONAMIENTO Figura 1.2 Diagrama de bloques. 11 CAPÍTULO 2 DISEÑO Y CONSTRUCCIÓN DEL HARDWARE DE CONTROL En este capítulo se describe como se realizó el diseño del hardware del sistema. Se consideran dos tipos de controles para facilitar el uso del operador de la silla de ruedas como son: el control por Joystick y el control por voz del usuario. Todos los diseños fueron realizados tomando en cuenta la forma más simple y sencilla para ejecutarlos. 2.1 ANÁLISIS DE LA SILLA DE RUEDAS Para el análisis se considera el peso de todos los componentes que integran el sistema (Figura 2.1): silla de ruedas, sistema de control y potencia, usuario, batería. La masa máxima especificada para el usuario según la marca Everest & Jennings es de 110 kg. La masa está dada por los materiales con los cuales se encuentra construida la silla. 1.6.1 Figura 2.1 Silla de Ruedas El peso total que los motores deben movilizar es: PTM = PEM + PMU + PF + PSC 12 PEM = Peso de la estructura mecánica de la silla = 333,54 [N] PMU = Peso máximo del usuario = 1079,1 [N] PF = Peso de la fuente (Batería) = 147,15 [N] PSC = Peso sistema de control = 9,81 [N] PTM = Peso total a movilizar = 1569,6 [N] Con este valor obtenido se calcula la fuerza máxima que deben entregar los motores para la movilización de la silla de ruedas. 2.1.1 DETERMINACIÓN DE LA FUERZA MÁXIMA REQUERIDA EN UNA SUPERFICIE PLANA Para la determinación de la fuerza máxima se recurrió a las leyes de Newton mediante el diagrama de cuerpo libre (Figura 2.2). Figura 2.2 Superficie Plana Para materiales de hule sobre concreto se toma un coeficiente de fricción cinético aproximadamente de 0,57. 13 ∑F =0 X F − Fr = 0 F = Fr F = µ c * N → (ec.1) ∑F Y =0 N −W = 0 N =W N = m * g → (ec.2) (ec.2) → (ec.1) F = µc * m * g F = 0.57 * 1569,6[ N ] F = 894,67[ N ] Esta es la fuerza máxima para que la silla gire en cualquier dirección. 2.1.2 DETERMINACIÓN DE LA FUERZA MÁXIMA REQUERIDA EN UNA SUPERFICIE ASCENDENTE. Según el Instituto Ecuatoriano de Normalización norma NTE INEN 2 245 del año 2000 (Accesibilidad de las personas al medio Físico. Edificios, Rampas Fijas), la cual establece las dimensiones mínimas y características generales que deben cumplir las rampas para facilitar el acceso de las personas estas deben tener una pendiente máxima de 12%. En pendientes longitudinales (Figura 2.3) se establecen los rangos máximos para tramos de rampa entre descansos, los cuales son medidos en su proyección horizontal. 14 Figura 2.3 Porcentajes de Pendientes a) Hasta 15 metros: 6% a 8% equivalente a un ángulo de 3,43º. b) Hasta 10 metros: 8% a 10% equivalente a un ángulo de 5,71º. c) Hasta 3 metros: 10% a 12% equivalente a un ángulo de 6,84º. Para el diseño se considera el valor más crítico 6,84º. La Figura 2.4 muestra el diagrama de cuerpo libre de la Superficie con Pendiente Ascendente. Figura 2.4 Superficie Pendiente Ascendente 15 ∑F X =0 F − (Fr + W x ) = 0 F = Fr + W x F = µ c * N + W * sen(φ ) F = µ c * N + m * g * sen(φ ) → (ec.3) ∑F Y =0 N − WY = 0 N = WY N = W * cos(φ ) N = m * g * cos(φ ) → (ec.4) (ec.4) → (ec.3) F = µ c * m * g * cos(φ ) + m * g * sen(φ ) F = m * g * (µ c * cos(φ ) + sen(φ )) F = 1569,6 * (0.57 * cos(6,84°) + sen(6,84°)) F = 1075,23[ N ] 2.1.3 DETERMINACIÓN DE LA FUERZA MÁXIMA REQUERIDA EN UNA SUPERFICIE DESCENDENTE. La Figura 2.5 muestra el diagrama de cuerpo libre de la Superficie con Pendiente Descendente. Figura 2.5 Superficie Pendiente Descendente 16 ∑F X =0 Fr − (F + W x ) = 0 Fr = F + W x F = µ c * N − W * sen(φ ) F = µ c * N − m * g * sen(φ ) → (ec.3) ∑F Y =0 N − WY = 0 N = WY N = W * cos(φ ) N = m * g * cos(φ ) → (ec.4) (ec.4) → (ec.3) F = µ c * m * g * cos(φ ) − m * g * sen(φ ) F = m * g * (µ c * cos(φ ) − sen(φ )) F = 1569,6 * (0.57 * cos(6,84°) − sen(6,84°)) F = 701,36[ N ] 2.1.4 DETERMINACIÓN DE LA POTENCIA DE LOS MOTORES. Del análisis anterior se tiene que la peor condición corresponde al movimiento de la silla de ruedas hacia delante, atrás, izquierda o derecha con pendiente ascendente, la fuerza máxima es de 1075.03 [N] ó 109.58 kgf, considerando el accionamiento de los dos motores o un motor según sea el caso. Según los fabricantes de sillas de ruedas electrónicas el estándar de velocidad máxima se encuentra en 2.45m/s (E-J,1995) [1]. Los motores para este proyecto son de corriente continua de 10 Amp y 12Vdc. Potencia máxima=Velocidad máxima x Fuerza máxima. Potencia máxima=2.45 m/s x 109.58kgf =268.47 watts. Potencia del motor=V x I. Potencia del motor=12Vdc x 10Amp =120 watts. 17 Se debe considerar un 10% de pérdidas que son causados por factores mecánicos de los motores. Por lo tanto, la potencia efectiva máxima de cada motor es 110 watts y con esto se procede a calcular la velocidad máxima de la silla de ruedas. Potencia máxima del motor Fuerza máxima 110 watts Velocidad máxima = = 1m / s 109.58 kgf Velocidad máxima = Con lo que se corrobora que los motores que se incluyen a la silla tienen la potencia apropiada. 2.2 DISEÑO DEL SISTEMA ELÉCTRICO Para la parte de potencia de la silla de ruedas se seleccionó una batería recargable de 12 Vdc 60Ah (Figura 2.6) y un Circuito troceador (Circuito de control) para los dos motores de corriente continua de 12 Vdc 10 Amp con armadura y campo independientes. El esquema general eléctrico se indica en la Figura 2.7. Figura 2.6 Batería 18 Figura 2.7 Esquema Eléctrico Para los valores de resistencia e inductancia, se toma los valores experimentales de la tesis anterior, ya que se utiliza los mismos motores, siendo Ra=1.1 Ω y La = 4.28 mH (Figura 2.8 y Figura 2.9). Figura 2.8 Esquema General Motor 19 Figura 2.9 Motor 12V, 10Amp El control de los motores se realiza a través de un troceador reductor el cual permite la conversión de voltaje de una fuente constante a otros niveles diferentes de voltaje. Este troceador es de tipo A ya que actúa en el primer cuadrante, su corriente es unidireccional y el voltaje es no reversible. En la Figura 2.10 se muestra las formas de onda del troceador reductor. Figura 2.10 Formas de Onda del Troceador-Reductor 20 La frecuencia de operación, se realiza a ∆I < 5% , donde el rizado máximo de corriente que se da cuando δ = 0.5 ; esto quiere decir que el tiempo en alto (a) es igual al tiempo en bajo (b) con lo cual a=b y se calcula el periodo a rizado máximo donde: ∆I =Rizado de Corriente. E =Voltaje de la fuente. Ra =Resistencia del motor. La= Inductancia del motor. T= Periodo. a=b T = a+b a= T 2 Ra Ra −a −b 1 − e La 1 − e La E ∆I = Ra Ra − T 1 − e La Ra Ra −a − (T − a ) La 1 − e La 1 − e E ∆I = Ra Ra −2a 1 − e La 1.1Ω 1.1Ω −a − (T − a ) 4.3 mH 1 − e 4.3mH 1 − e 12V ∆I = 1.1Ω 1.1Ω −2a 1 − e 4.3mH Para ∆I = 5% → a=3.872 → T=7.744 ms → f=129Hz 21 2.3 SELECCIÓN DE LA BATERÍA Para seleccionar la batería adecuada, se calcula la potencia efectiva de los motores donde: Fma=1075.03 [N] ó 109.58 kgf. (Fuerza máxima). Velocidad máxima=1m/s. Pefmax=2xFmax Velocidad máxima. Pefmax=2 x109.58 kgf, x1m/s. Pefmax=219.16 watts. Pefmax=V x I consumo Con la potencia efectiva de los motores se calcula la corriente de consumo de los motores: I consumo = Pefmax. 219.16watts. .= = 18.26A. V 12V Según la norma INEN 1498, la batería se considera cargada cuando en sus bornes alcanza el valor de 13,4V y se encuentra descargada cuando entre sus bornes alcanza 10.5V. Considerando que el tiempo efectivo de movilización del usuario es de 2 horas por día, con esto se calcula la capacidad de la batería. C=I xT (norma INEN 1498) C: Capacidad de la batería expresada en Ah. I: Corriente de descarga expresada en Amperios. T: Tiempo de descarga expresada en horas. I= I consumo C=18.26Amp x 2 horas C=36.52Ah. La batería seleccionada es de 12 V y 60Ah, con la cual se calcula el tiempo de descarga. 22 T= C 60Ah = = 3.28 horas I 18.26Amp Con esto el usuario de la silla de ruedas podría movilizarse en forma continua 3.28 horas. 2.4 SELECCIÓN DEL MICROCONTROLADOR PIC Para el circuito de control se seleccionó un microcontrolador PIC 16F877A (ver ANEXO 1), el cual es el cerebro total del control y un PIC 16F628A (ver ANEXO 2) que interactúa con la tarjeta de reconocimiento de voz HM2007. El microcontrolador PIC 16F877A realiza las siguientes funciones: 1. Permite conocer la posición en la que se encuentra la silla de ruedas, adelante, atrás, izquierda o derecha. 2. Permite el modo de funcionamiento: Modo manual, Modo por voz o Modo de Ajustes del Sistema. 3. Ejecuta la Rampa de Aceleración y Desaceleración tipo “S” a través de los módulos PWM. 4. Realiza el control de los relés que permiten la inversión de giro de los motores. 5. Realiza el control por voz, interactuando con la tarjeta de reconocimiento de voz HM2007 a través del PIC16F628A. 6. Permite conocer el estado de la batería, si se encuentra descargada. 7. Realiza la selección de velocidad y tiempo de la rampa a través del teclado, LCD. La distribución de pines del PIC16F877A se muestra en la Figura 2.11: 23 U1 OSCILADOR 4 MHZ OSILADOR 4 MHZ DETECCION ADELANTE DETECCION ATRAS DETECCION IZQUIERDA DETECCION DERECHA COLUMNA 1 TECLADO FILA 1 TECLADO FILA 2 TECLADO FILA 3 TECLADO FILA 4 TECLADO Reset 13 14 OSC1/CLKIN OSC2/CLKOUT 2 3 4 5 6 7 RB0/INT RB1 RB2 RB3/PGM RB4 RB5 RB6/PGC RB7/PGD RA0/AN0 RA1/AN1 RA2/AN2/VREF-/CVREF RA3/AN3/VREF+ RA4/T0CKI/C1OUT RA5/AN4/SS/C2OUT RC0/T1OSO/T1CKI RE0/AN5/RD RC1/T1OSI/CCP2 RE1/AN6/WR RC2/CCP1 RE2/AN7/CS RC3/SCK/SCL RC4/SDI/SDA MCLR/Vpp/THV RC5/SDO RC6/TX/CK RC7/RX/DT 8 9 10 1 RD0/PSP0 RD1/PSP1 RD2/PSP2 RD3/PSP3 RD4/PSP4 RD5/PSP5 RD6/PSP6 RD7/PSP7 33 34 35 36 37 38 39 40 15 16 17 18 23 24 25 26 19 20 21 22 27 28 29 30 DETECCION DE BATERIA BAJA MODO AJUSTES DEL SISTEMA MODO CONTROL POR VOZ CHICHARRA DATO 3 TARJETA DE VOZ DATO 2 TARJETA DE VOZ DATO 1 TARJETA DE VOZ DATO 0 TARJETA DE VOZ RELE 1 SALIDA PW M2 CONTROL M2 SALIDA PW M1 CONTROL M1 RELE 2 RELE 3 RELE 4 COLUMNA 4 TECLADO INDICADOR COLUMNA 2 TECLADO COLUMNA 3 TECLADO E LCD RS LCD D4 LCD D5 LCD D6 LCD D7 LCD PIC16F877A Figura 2.11 Funciones Microcontrolador PIC16F877A El microcontrolador PIC16F628A realiza las siguientes funciones: 1. Recibe los datos de la tarjeta HM2007 (Código BCD) y codifica. 2. Transmite los datos de las palabras identificadas hacia el PIC16F877A. 3. Detecta el estado de la batería, si se encuentra descargada. La distribución de pines del PIC16F628A se muestra en la Figura 2.12. U1 INDICADOR1_VOZ DATO6 DATO5 16 15 4 RA7/OSC1/CLKIN RA6/OSC2/CLKOUT RA5/MCLR RA0/AN0 RA1/AN1 RA2/AN2/VREF RA3/AN3/CMP1 RA4/T0CKI/CMP2 RB0/INT RB1/RX/DT RB2/TX/CK RB3/CCP1 RB4 RB5 RB6/T1OSO/T1CKI RB7/T1OSI 17 18 1 2 3 6 7 8 9 10 11 12 13 DATO0 DATO1 DATO2 DATO3 DATO4 IN BATERIA BAJA OUT BATERIA BAJA INDICADOR2_VOZ A0 PIC MASTER A1 PIC MASTER A2 PIC MASTER A3 PIC MASTER PIC16F628A Figura 2.12 Funciones Microcontrolador PIC16F628A 24 2.4.1 DISEÑO DEL CIRCUITO DE RESET Y OSCILADOR DEL MICROCONTROLADOR PIC El circuito de reset (Figura 2.13) sirve para reiniciar al microcontrolador PIC16F877A a su estado inicial. Se debe tener cuidado que el microcontrolador no reciba más de 25 mA como corriente de ingreso o salida por cualquiera de sus pines. El microcontrolador PIC16F877A necesita un oscilador para su funcionamiento que se conecta a GND con capacitores. El fabricante recomienda capacitores de 22 a 33 pF. Para el resto de componentes se procede de la manera siguiente: C1 C2 X1 CRYSTAL 13 4MHz 14 2 3 4 5 6 7 VDD4 RMCLR 8 9 10 1 U1 OSC1/CLKIN OSC2/CLKOUT RB0/INT RB1 RB2 RB3/PGM RB4 RB5 RB6/PGC RB7/PGD RA0/AN0 RA1/AN1 RA2/AN2/VREF-/CVREF RA3/AN3/VREF+ RA4/T0CKI/C1OUT RA5/AN4/SS/C2OUT RC0/T1OSO/T1CKI RE0/AN5/RD RC1/T1OSI/CCP2 RE1/AN6/WR RC2/CCP1 RE2/AN7/CS RC3/SCK/SCL RC4/SDI/SDA MCLR/Vpp/THV RC5/SDO RC6/TX/CK RC7/RX/DT RD0/PSP0 RD1/PSP1 RD2/PSP2 RD3/PSP3 RD4/PSP4 RD5/PSP5 RD6/PSP6 RD7/PSP7 C3 33 34 35 36 37 38 39 40 15 16 17 18 23 24 25 26 19 20 21 22 27 28 29 30 PIC16F877A Figura 2.13 Circuito Reset y Oscilador Microcontrolador PIC16F877A Para la resistencia R MCLR el fabricante recomienda valores menores a 40KΩ. Se utiliza R MCLR =5.6KΩ. En la Figura 2.14 se indica el circuito diseñado. 25 C1 C2 22p 22p X1 CRYSTAL 13 4MHz 14 2 3 4 5 6 7 VDD4 RMCLR 8 9 10 5k6 1 U1 OSC1/CLKIN OSC2/CLKOUT RB0/INT RB1 RB2 RB3/PGM RB4 RB5 RB6/PGC RB7/PGD RA0/AN0 RA1/AN1 RA2/AN2/VREF-/CVREF RA3/AN3/VREF+ RA4/T0CKI/C1OUT RA5/AN4/SS/C2OUT RC0/T1OSO/T1CKI RE0/AN5/RD RC1/T1OSI/CCP2 RE1/AN6/WR RC2/CCP1 RE2/AN7/CS RC3/SCK/SCL RC4/SDI/SDA MCLR/Vpp/THV RC5/SDO RC6/TX/CK RC7/RX/DT RD0/PSP0 RD1/PSP1 RD2/PSP2 RD3/PSP3 RD4/PSP4 RD5/PSP5 RD6/PSP6 RD7/PSP7 C3 1uF 33 34 35 36 37 38 39 40 15 16 17 18 23 24 25 26 19 20 21 22 27 28 29 30 PIC16F877A Figura 2.14 Circuito Reset y Oscilador Microcontrolador PIC16F877A Diseñado Se utiliza un capacitor de 1uF para eliminar los rebotes producidos por el pulsador. Para el PIC16F628A se utiliza el oscilador interno RC que posee y no se usa el pín “master reset”. 2.4.2 DISEÑO DEL CIRCUITO DETECTOR DEL ESTADO DE LA SILLA DE RUEDAS. Para determinar la posición de la silla de ruedas se utiliza pulsadores (Figura 2.15) colocados estratégicamente dentro del joystick con el cual se selecciona el movimiento de la silla de ruedas: adelante, atrás, izquierda y derecha. La corriente de entrada que soporta el pin del microcontrolador PIC es de 25 mA entonces para un pulsador tenemos que: R= VDD 4 5V = = 200Ω I PIC 25mA 26 Esto quiere decir que la resistencia mínima a colocarse sería de 200 Ω para estar al límite de la capacidad que soporta el PIC pero no es aconsejable trabajar con los límites por lo que se recomienda utilizar una resistencia de 1 KΩ a 10KΩ así el PIC estaría trabajando con una corriente de entrada de 5mA a 0.5mA respectivamente. Para el diseño se utiliza una resistencia de 5.6 KΩ en cada pulsador R A0 = R A1 = R A2 = R A3 =5.6KΩ con lo que se tiene una corriente de 0.89mA la cual se encuentra dentro de los límites dados anteriormente. VDD4 VDD4 VDD4 VDD4 RA0 RA1 RA2 RA3 5k6 5k6 5k6 5k6 PIC RA0 PULSADOR ADELANTE PIC RA1 PULSADOR ATRAS PIC RA2 PULSADOR DERECHA PIC RA3 PULSADOR IZQUIERDA Figura 2.15 Circuito Detector de Estado Diseñado 2.4.3 DISEÑO DELCIRCUITO DEL TECLADO Y LCD. El circuito del teclado (Figura 2.16) posee cuatro entradas (columnas) y cuatro salidas (filas) que ingresan y salen del microcontrolador PIC. Con el teclado se ingresa la velocidad de crucero y se selecciona el tiempo de arranque y frenado de la silla de ruedas. Se utiliza el mismo valor de la resistencia para no sobrepasar los limites de corriente al ingresar al microcontrolador PIC 16F877A C11 = C22 = C33 = C44 =5.6KΩ 27 VDD4 C22 C33 C44 5k6 5k6 5k6 5k6 4 PIC RC6 3 PIC RD1 2 PIC RD0 1 PIC RA4 C11 ON 0 = + C 1 2 3 PIC RE0 B 4 5 6 PIC RE1 A 7 8 9 PIC RE2 D PIC RA5 C Figura 2.16 Diseño Teclado El LCD (Figura 2.17) funciona en modo de 4 bits y utiliza 6 pines del microcontrolador PIC 16F877A para su funcionamiento y sirve para visualizar todos los procesos y ajustes del sistema. LCD1 D0 D1 D2 D3 D4 D5 D6 D7 7 8 9 10 11 12 13 14 RS RW E 4 5 6 1 2 3 VSS VDD VEE LM016L PIC RD2 POT PIC RD7 PIC RD6 PIC RD3 10K PIC RD5 PIC RD4 Figura 2.17 Diseño del circuito del LCD En la Figura 2.18 se indica el módulo Teclado LCD. 28 Figura 2.18 Módulo Teclado LCD 2.4.4 CIRCUITO SELECTOR DEL MODO DE OPERACIÓN DE LA SILLA DE RUEDAS La silla de ruedas tiene tres modos de operación: modo Manual, modo Semiautomático o control por Voz y modo de Selección de Parámetros del Sistema. Para seleccionar cualquiera de estos modos se utiliza un selector de dos posiciones. Por defecto se encuentra en modo Manual y en cualquiera de las dos posiciones se pasa a modo Semiautomático o modo de Selección de Parámetros del Sistema. En la Figura 2.19 se indica el selector de operación. 29 VDD4 VOZ PARAMETROS 5k6 5k6 PIC RB1 PARAMETROS VOZ MANUAL PIC RB2 SELECTOR 2 POSICIONES Figura 2.19 Circuito Modo de Operación Se utiliza el mismo valor de la resistencia para no sobrepasar los limites de corriente al ingresar al microcontrolador PIC16F877A VOZ=PARAMETROS=5.6KΩ. 30 2.4.5 CIRCUITO DE CONTROL DE LOS MOTORES DE DC El esquema General de Control que se utiliza para el control de los dos motores se indica en la Figura 2.20. BATERIA 12v D1 NTE5940 RELE2/4 RELE1/3 CONTROL RELE2/4 RELE1/3 Q2 C3856 Figura 2.20 Esquema General de Control Para el control del troceador de los dos motores se diseñó el siguiente circuito (Figura 2.21): 31 +12v VDD1=12V U1 1 +88.8 RPWM PIC 6 NTE5940 5 2 4 RBQ1 Q1 TIP122 OPTOCOUPLER-NPN RQPWM Q2 C3856 RQ1 RQ2 Figura 2.21 Circuito de Control Los pines del PIC que generan los módulos PWMs son RC1 (CCP2) y RC2 (CCP1). R PWM = VPIC − VD I RPWM Siendo VPIC =5V, VD =1.5V y IRPWM =15mA (corriente menor a 25mA de salida del microcontrolador PIC). R PWM = 5V - 1.5V = 233.33Ω 15mA R PWM =270Ω Por motivos prácticos se utiliza R PWM =330Ω. Para la activación de los transistores se utiliza un opto transistor 4N25 (ver ANEXO3), para aislar el circuito de potencia del circuito de control. La corriente máxima que circula por Q2 es 10Amp ya que los motores son de 10Amp. Se utiliza el transistor C3856 (ver ANEXO4) que soporta hasta 15Amp y 180V. 32 IcQ 2 = 10 A VCE SAT Q1 = 2V VBEQ 2 = 1.3V β Q 2 = 2 .5 El valor de β Q 2 se obtuvo realizando pruebas con los transistores. Este valor es menor comparado con el del fabricante ( β Q 2 =50). Esto se debe a que los elementos semiconductores no son originales. Para el cálculo de RQPWM (resistencia de corte y saturación del transistor Q2) se tiene: Ic Q2 = β Q 2 Ib Q2 Ib Q2 = IcQ2 βQ 2 = 10 A = 4A 2 .5 VDD1 = VCESAT Q1 + VRQPWM + VBEQ 2 . VRQPWM = VDD1 − VCESAT Q1 − VBEQ 2 . IRQPWM xRQPWM = VDD1 − VCESAT Q1 − VBEQ 2 . IRQPWM = Ib Q2 RQPWM = VDD1 − VCESAT Q1 − VBEQ 2 IRQPWM 12V − 2V − 1.3V 4A = 2.17Ω RQPWM = RQPWM RQPWM = 2.2Ω Para la potencia de RQPWM se tiene: PRQPWM = IRQPWM xRQPWM 2 PRQPWM = 4 A2 x 2.2Ω PRQPWM = 35watts 33 El criterio para calcular el valor RQ 2 (resistencia para reducir el tiempo de apagado del transistor Q2) es: I RESISTENCIA ≤ I BASE 10 A partir de la expresión anterior se tiene: IRQ 2 = RQ 2 ≥ VEQ1 RQ 2 ≥ VEQ1 RQ 2 ≤ IbQ 2 10 10 IbQ 2 10 xVEQ1 IbQ 2 VEQ1 = VDD1 − VCE Q1= 12V − 2V VEQ1 = 10V 10 x10V 4A ≥ 25Ω RQ 2 ≥ RQ 2 RQ 2 = 150 KΩ Por motivos prácticos se toma RQ 2 = 150 KΩ para reducir la corriente que circula por el transistor Q1 cuando esta en saturación y así disminuir las pérdidas. Un valor de 25Ω es el límite que garantiza que el transistor Q2 se apague. Para la potencia de RQ 2 se tiene: IR Q2 = VEQ1 R Q2 = 10 150 KΩ IR Q2 = 0.066mA PR Q2 = IR Q2 xR Q2 = 0.066mA2 x150 KΩ 2 PR Q2 = 0.65mwatts Para la segunda etapa se utiliza el transistor TIP122 Q1 (ver ANEXO5) que soporta hasta 5Amp y 100V. 34 β Q1 = 500 (Valor obtenido realizando pruebas) VCESAT opto = 0.5V VBEQ1 = 2.5V Para el cálculo de RBQ1 (resistencia de corte y saturación del transistor Q1) se tiene: Ic Q1 = IR Q2 + Ib Q2 Ic Q1 = 0.066mA + 4 A Ic Q1 ≈ 4A Ic Q1 = β Q1Ib Q1 Ib Q1 = Ic Q1 βQ1 = 4A = 7.98mA 500 VDD1 = VCESAT opto + VRBQ1 + VBEQ1. VRBQ1 = VDD1 − VCESAT opto − VBEQ1. IRBQ1 xRBQ1 = VDD1 − VCESAT opto − VBEQ1. IRBQ1 = Ib Q1 RBQ1 = VDD1 − VCESAT opto − VBEQ1. IRBQ1 12V − 0.5V − 2.5V 7.98mA = 1.12 KΩ RBQ1 = RBQ1 RBQ1 = 1KΩ Para la potencia de RBQ1 se tiene: PRBQ1 = IRBQ1 xRBQ1 2 PRBQ1 = 7.98mA2 x1KΩ PRBQ1 = 63.68mwatts El criterio para calcular el valor RQ1 (resistencia para reducir el tiempo de apagado del transistor Q1) es: 35 IRQ1 = VEOPTO IbQ1 ≤ RQ1 10 RQ1 ≥ VEOPTO RQ1 ≥ 10 IbQ1 10 xVEOPTO IbQ1 VEOPTO = VDD1 − VCE OPTO1= 12V − 0.5V VEOPTO = 11.5V 10 x11.5V 8mA RQ1 ≥ 14.37 KΩ RQ1 ≥ RQ1 = 1.2 MΩ Por motivos prácticos se toma RQ1 = 1.2 MΩ para reducir la corriente que circula por el opto transistor cuando está en saturación y así disminuir las pérdidas. Un valor de 14.37KΩ es el límite que garantiza que el transistor Q1 se apague. Para la potencia de RQ1 se tiene: IRQ1 = VEOPTO 11.5V = RQ1 1.2 MΩ IRQ1 = 9.58uA PRQ1 = IRQ1 xRQ1 = 9.58uA2 x1.2 MΩ 2 PRQ1 = 0.11mwatts En la Figura 2.22 se indica el circuito de control diseñado. 36 +12v VDD1=12V U1 1 +88.8 RPWM PIC 6 330R NTE5940 5 2 4 OPTOCOUPLER-NPN RBQ1 Q1 TIP122 1K RQPWM Q2 C3856 2.2R RQ1 1.2M RQ2 150k Figura 2.22 Circuito de Control Diseñado. El diodo en paralelo al motor es el NTE5940 (ver ANEXO6) que soporta hasta 15Amp y sirve para que se disipe la energía de la bobina cuando el transistor Q2 esta en la región de corte o apagado. 2.4.6 CIRCUITO DE CONTROL DE RELÉS PARA EL SENTIDO DE GIRO DE LOS MOTORES Para la inversión del sentido de giro de los motores se utiliza un puente H con relés (Figura 2.23). No se utilizó mosfets ya que se utiliza una fuente de 12V y para su activación se necesita elevados voltajes. 37 RELE4 RELE2 RELE1 RELE2 RELE3 RELE1 RELE4 RELE3 Figura 2.23 Puente H de Relés Motores. El control de cada relé (Figura 2.24) se lo realiza a través de los pines de salida del microcontrolador PIC: RC0 =RELE1, RC3 = RELE 2, RC4 = RELE 3, RC5 = RELE 4 38 VDD1=12V RELE 1N4001 RELE1 PIC RLY-DPCO D1 OR1 1 6 5 2 4 ROR1 2N3904 Q1 OPTOCOUPLER-NPN R111 Figura 2.24 Circuito de Control de Relés. Siendo VPIC =5V, VD =1.5V y I RELE =15mA (corriente menor a 25mA de salida del microcontrolador PIC) R ELE1 = V PIC − V D I RELE = 5V - 1.5V = 233.33Ω 15mA RELE1 =270Ω Por motivos prácticos se utiliza R PWM =330Ω. Para la activación de los relés se utiliza transistores 2N3904 (ver ANEXO7), opto transistores 4N25 (ver ANEXO 3) y relés KN110-2C-24A (ver ANEXO 8). La corriente que consume la bobina de los relés es 150mA. A partir de esto se comienza el diseño. IcQ1 =150mA β = 30 (2N3904) 39 Para el cálculo de ROR1 (resistencia de corte y saturación del transistor Q1 para activar la bobina del relé) se tiene: IcQ1 = β * IbQ1 IbQ1 = IcQ1 β = 150mA = 5mA 30 VDD1 = VCE SAT opto + VROR1 + VBEQ1 VROR1 = VDD1 − VCE SAT opto − VBEQ1 VROR1 = VDD1 − VCE SAT opto − VBEQ1 IbQ1 xROR1 = VDD1 − VCE SAT opto − VBEQ1 ROR1 = VDD1 − VCE SAT opto − VBEQ1 IbQ1 12V − 0.5V − 0.95V 5mA = 2,110 KΩ ROR1 = ROR1 ROR1 = 2 KΩ Para la potencia de RQ1 se tiene que: ROR1 = 2,110 KΩ ROR 1 = 2 KΩ PROR1 = IbQ1 xROR1 2 PROR1 = 5mA2 x 2 KΩ PROR1 = 0.05watts El criterio para calcular el valor R111 (resistencia para reducir el tiempo de apagado del transistor Q1) es: 40 IR 111 = Ib Q 1 VE OPTO ≤ R111 10 R111 10 ≥ VE OPTO Ib Q 1 R111 ≥ 10 xVE OPTO Ib Q 1 VE OPTO = V DD 1 − VCE OPTO 1 = 12 V − 0 . 5V VE OPTO = 11 . 5V 10 x11 . 5V 5 mA ≥ 23 K Ω R111 ≥ R111 R1 = 1 . 2 M Ω Por motivos prácticos se toma R111 = 1.2MΩ para reducir la corriente que circula por el opto transistor cuando esta en saturación y así disminuir las pérdidas. Una resistencia de 23KΩ garantiza que el transistor Q1 se apague. Para la potencia de R111 se tiene: IR111 = VEOPTO 11.5V = R111 1.2 MΩ IR111 = 9.58uA PR111 = IR111 xR111 = 9.58uA2 x1.2 MΩ 2 PR111 = 0.11mwatts En la Figura 2.25 se indica el circuito diseñado. 41 VDD1=12V RELE RELE1 PIC RLY-DPCO D1 1N4001 OR1 1 6 330R 5 2 4 OPTOCOUPLER-NPN 2N3904 ROR1 Q1 2K R111 2K Figura 2.25 Circuito de Control de Relés Diseñado. 2.4.7 CIRCUITO DETECTOR DE BATERÍA BAJA Y BATERÍA CARGADA. Según la norma INEN 1498, una batería se considera descargada cuando entre sus bornes tiene 10.5V y se considera cargada cuando entre sus bornes mide 13.8V. Para este diseño se diseñó un comparador (Figura 2.26) mediante el amplificador operacional LM324 (ver ANEXO 9) que puede ser polarizado desde 3 a 36 voltios. Se conecta al microcontrolador PIC a través del opto transistor. VDD 4 U1:A V+ 1 2 11 V- 3 Vout LM324 Figura 2.26 Comparador de Voltaje. Si V+>V- Vout=VDD 42 Si V+<V- Vout=GND Para indicar batería baja el circuito comparador (Figura 2.27) detecta voltajes menores a 10.5V y avisa al microcontrolador PIC que la batería está descargada. Para acoplarse al microcontrolador PIC se utiliza un opto transistor para aislar el circuito de control. VDD0=10.5V VDD2=7.11V VDD4=5V ROP1 ROP3 RRB0 V+ 4 U1:A 3 1 ROPOUT BATERIA 1 6 2 5 V11 2 ROP2 LM324 PIC RB0 4 ROP4 Figura 2.27 Detector de Batería Baja. Para el cálculo se tiene: VDD 0 = VROP1 + VROP 2 Si ROP1 = ROP 2 = 10 KΩ VDD 0 =10.5V (Batería Baja) V− = VDD 0 xROP 2 10.5Vx10 KΩ = = 5.25V ROP1 + ROP 2 10 KΩ + 10 KΩ El valor límite para la detección es 5.25V cuando la batería se encuentra descargada. Para calcular el valor de ROP 3 (resistencia del divisor de voltaje) se tiene que V+ =5.25V, por tanto: 43 V+ = VDD 2 xROP 4 ROP 3 + ROP 4 Si ROP 4 = 56 KΩ VDD 2 =7.11V (Valor medido) V+ = VDD 2 xROP 4 ROP 3 + ROP 4 ROP 3 x(V + ) = VDD 2 xROP 4 − ROP 4 (V + ) VDD 2 xROP 4 − ROP 4 (V + ) (V + ) R x(V − (V + )) = OP 4 DD 2 (V + ) 56 KΩx(7.11V − 5.25V ) = 5.25V = 19.84 KΩ ROP 3 = ROP 3 ROP 3 ROP 3 ROP 3 = 20 KΩ Para calcular el valor de ROPOUT (resistencia de activación del opto transistor) se tiene: I OPTO =15mA VDD 2 =7.11V ROPOUT = VDD 2 7.11V = = 474Ω I opto 15mA ROPOUT = 470Ω Para llegar al microcontrolador PIC se utiliza RRB 0 =5.6KΩ para no sobrepasar la corriente de 25mA que ingresa al pín Detección de Batería Baja (RB0) del PIC16F628A. En la Figura 2.28 se indica el circuito diseñado. 44 VDD0=10.5V VDD2=7.11V VDD4=5V ROP1 ROP3 10k 20k RRB0 U1:A 5.6k 4 V+ 3 1 2 ROPOUT 10k 56k 5 2 11 ROP4 6 470 V- ROP2 BATERIA 1 LM324 PIC RB0 4 Figura 2.28 Detector de Batería Baja Diseñado. Para cargar la batería se toma un tiempo estimado de 8 a 10 horas, tiempo en el que el usuario descansa. Para esto se implementó el circuito de la Figura 2.29. R1 2.2/20w 1N5408 TR1 1N5408 1N5408 110VAC 6800u 6800u BATERIA 1N5408 TRAN-2P3S 1N5408 1N5408 Figura 2.29 Cargador de Batería Para indicar batería cargada el circuito comparador (Figura 2.30) detecta voltajes mayores a 13.8V y el indicador luminoso que se encuentra en el joystick se apaga. 45 VDD0=13.8V VDD2=7.11V ROP1 ROP3 U1:A D1 4 V+ 3 1 ROPOUT 2 LED 11 V- ROP2 LM324 ROP4 Figura 2.30 Detector de Batería Cargada. Para el cálculo se tiene: VDD 0 = VROP1 + VROP 2 Si ROP1 = ROP 2 = 10 KΩ VDD 0 =13.8V (Batería Cargada) V− = VDD 0 xROP 2 13.8Vx10 KΩ = = 6.9V ROP1 + ROP 2 10 KΩ + 10 KΩ El valor límite para la detección es 6.9V. Para calcular el valor de ROP 3 (resistencia del divisor de voltaje) se tiene que V+ =6.9V, por tanto: V+ = VDD 2 xROP 4 ROP 3 + ROP 4 Si ROP 4 = 220 KΩ VDD 2 =7.11V (Valor medido) 46 V+ = VDD 2 xROP 4 ROP 3 + ROP 4 ROP 3 x(V + ) = VDD 2 xROP 3 − ROP 4 (V + ) VDD 2 xROP 4 − ROP 4 (V + ) (V + ) R x(V − (V + )) = OP 4 DD 2 (V + ) 220 KΩx(7.11V − 6.9V ) = 6.9V = 6.69 KΩ ROP 3 = ROP 3 ROP 3 ROP 3 ROP 3 = 6.8 KΩ Para calcular el valor de ROPOUT (resistencia de activación del led indicador) se tiene: I led =15mA VDD 2 =7.11V ROPOUT = VDD 2 7.11V = = 474Ω I led 15mA ROPOUT = 470Ω El circuito diseñado se muestra en la Figura 2.31 VDD0=13.8V VDD2=7.11V ROP3 10k 6.8k U1:A V+ 3 1 2 11 ROP4 10k 220k ROPOUT 470 V- ROP2 D1 4 ROP1 LED LM324 Figura 2.31 Detector de Batería Cargada Diseñado. 47 2.5 PROGRAMACIÓN E IMPLEMENTACIÓN DEL SUBSISTEMA DE RECONOCIMIENTO DE VOZ La acción de reconocimiento de voz se realiza con el circuito integrado HM2007 (ver ANEXO 10), el cual permite reconocer 40 palabras de 0.96 segundos ó 20 palabras de 1.92 segundos de longitud. Las tarjetas de Reconocimiento de Voz se muestran en la Figura 2.32. Figura 2.32 Tarjetas de Reconocimiento de Voz. 2.5.1 HARDWARE DEL SISTEMA DE RECONOCIMIENTO DE VOZ. El circuito del sistema de reconocimiento de voz se muestra en la Figura 2.33 48 Figura 2.33 Hardware del sistema de reconocimiento de voz. El circuito integrado HM2007 necesita una memoria SRAM HM6264 (ANEXO 11) externa donde almacena la información de cada una de las palabras. El almacenamiento de las palabras se las realiza por medio del teclado y se pueden almacenar ya sea 40 o 20 palabras según sea el caso. La palabra se graba a través de un micrófono. El circuito HM2007 la almacena en la memoria SRAM externa y el circuito integrado 74LS373 (ver ANEXO 12) latch envía la 49 palabra a través del circuito integrado decodificador a siete segmentos 74LS7448 (ver ANEXO 13), para que las palabras grabadas no se borren la memoria SRAM está alimentada por una pila de litio de 3V. 2.5.2 PROGRAMACION DEL CIRCUITO INTEGRADO HM2007. Para empezar a programar el circuito integrado HM2007 se debe elegir el modo de operación del tamaño de las palabras, sí se quiere palabras de longitud de 0.96 segundos o de 1.92 segundos. Esto se consigue quitando o agregando un jumper que se encuentra en la board del circuito HM2007: JUMPER=ON JUMPER=OFF 20 Palabras de longitud 1.92 s. 40 Palabras de longitud 0.96 s. El orden de las palabras a grabar son ingresadas por teclado, y se muestran en los dos displays. Se elige un número para cada palabra a grabar, el indicador de grabación se apaga, se presiona la tecla TRN y se graba la palabra. Los errores que se presentan en el Hm2007 y son mostrados en sus displays son: 55= Palabra Larga. 66= Palabra Corta. 77= Palabra no Encontrada. Para borrar una palabra se ingresa el número de la palabra a borrar y se presiona la tecla CLR. Si se quiere borrar toda la información grabada en la memoria se ingresa el número 99. Aparece en los displays el numero 19 en ese momento se debe presionar la tecla CLR. El teclado del sistema de reconocimiento de voz se muestra en la Figura 2.34 50 Figura 2.34 Teclado HM2007. 2.5.3 IMPLEMENTACIÓN DEL SISTEMA DE RECONOCIMIENTO DE VOZ HM2007 CON EL MICROCONTROLADOR PIC16F628A. Para la implementación del sistema de reconocimiento de voz con el microcontrolador PIC16F628A, se utiliza el puerto BCD de los displays del HM2007 y se acopla al microcontrolador PIC16F628A a través de transistores, que detectan el estado de lógico de cada palabra procesada. En el microcontrolador PIC16F628A se utilizan siete pines para el reconocimiento de cada palabra: Dato0 (RA0), Dato1 (RA1), Dato2 (RA2), Dato3 (RA3), Dato4 (RA4), Dato5 (RA5), Dato6 (RA6), mientras que en el HM2007 se utiliza los siete bits que corresponden a los decodificadores 74LS7448 a 7 segmentos provenientes del Latch 74LS373. El microcontrolador PIC16F628A se comunica con el PIC master 16F877A a través de los pines: A0 PIC MASTER (RB4), A1 PIC MASTER (RB5), A2 PIC MASTER (RB6), A4 PIC MASTER (RB7). El microcontrolador PIC16F877A se comunica con el PIC master 16F628A a través de los pines: DATO3 TARJETA DE VOZ (RB4), DATO2 TARJETA DE VOZ (RB5), DATO1 TARJETA DE VOZ (RB6), DATO0 TARJETA DE VOZ (RB7). 51 Los datos provenientes del Latch se encuentran en código BCD los cuales son codificados mediante el PIC16F628A para luego ser enviados hacia el PIC master el cual realiza la respectiva acción de control. Se implementó un circuito (Figura 2.35) que da un aviso de que la palabra fue pronunciada correctamente. β = 30 2N3904 IC BOCINA = 120mA 120mA = 4mA β 30 VPic − VBE2 N 3904 5V − 0.95V = = = 1012.5Ω IRBOCINA 4mA IRBOCINA = RBOCINA ICBOCINA = RBOCINA = 1KΩ VDD1=12V LS1 BOCINA RBOCINA Q1 2N3904 Pic RB3 1k Figura 2.35 Circuito Bocina Diseñado. 52 2.6 DISEÑO DE LAS FUENTES DE PODER La principal fuente de alimentación es la batería de 12 V, 60 Ah, que sirve para el accionamiento de los motores de DC y el circuito de control. El circuito de control, al estar constituido por un microcontrolador PIC para el control de velocidad y elementos TTL para el control por voz, necesita un voltaje de alimentación de 5V. Se diseñaron dos fuentes de 7.5V independientes para los dos circuitos de control, para el control de velocidad y el circuito de control por voz. Para el circuito de detección de batería baja, se utiliza la misma fuente de 7.5V del circuito de control por voz. 2.6.1 DISEÑO DE LAS FUENTES REGULADAS DE 7,5 VOLTIOS Se diseñó dos fuentes de 7,5V (Figura 2.36) a partir de un consumo de corriente aproximado de 600mA. Dado que estas fuentes serán utilizadas para a su vez obtener la fuente de 5V para los microcontroladores PIC y la tarjeta de reconocimiento de voz HM2007. Para la fuente de 5V se utiliza el circuito integrado LM7805 para el cual se necesita que el voltaje en la entrada sea mayor en 2V; es decir 7V, entonces por seguridad se escoge 7,5V. 53 VDD0 VDD1 D1 L U1 LM317L F1 VI VO 2 ADJ 3 1N4001 R1 1 SWI VDD2 C2 C1 BATERIA R2 12V 60 Ah D2 LM317L VI U2 VO 2 VDD3 R3 1 ADJ 3 1N4001 C3 R4 Figura 2.36 Fuentes Reguladas a 7.5V Se diseñó un filtro LC a la entrada de las fuentes reguladas, para eliminar transitorios generados en el accionamiento de los motores. Los valores de L y C son experimentales, L=100mH y C=3300uF. El fusible F1 se escoge de 1 Amp, para limitar el consumo desde las dos fuentes. Para el diseño se utiliza el circuito integrado LM317 (ver ANEXO 14), que es una fuente regulada variable de 1.2 V a 37V y una corriente de salida máxima de 1,5Amp. Según el fabricante se tiene: 54 R VDD 2 = VREF 1 + 2 + IadjR2 R1 VREF = 1.25V V DD 2 = 7.5V Iadj=50uA (Dado por el fabricante) R 7.5V = 1.25V 1 + 2 + 50uAR2 R1 Para el cálculo de las resistencias se tiene: Si R1 = 5.6 KΩ R2 7.5V = 1.25V 1 + + 50uAR2 5 .6 K Ω R2 7.5V − 1.25v = 1.25V + 50uAR2 5 .6 K Ω R2 7.5V − 1.25v = 1.25V + 50uAR2 5 .6 K Ω R2 6.25v = 1.25V + 50uAR2 5 .6 K Ω 6.25v = 223.21uAR2 + 50uAR2 6.25v = 273.21uAR2 6.25V 273.21uA R2 = 22.87 KΩ R2 = R2 = 22 KΩ Para el cálculo del capacitor se tiene: C2=1uF dado por el fabricante. VDD 2 = VDD 3 =7.5V 55 R1 = R3 R 2 = R4 R3 = 5.6 KΩ R4 = 22 KΩ En la Figura 2.37 se muestra la fuente Regulada de 7,5V diseñada. VDD0 VDD1 D1 L 3 VI VO 2 ADJ 1A U1 LM317L F1 1N4001 100mH R1 5k6 1 SWI VDD2 C2 C1 BATERIA 1uF 3300uF R2 12V 60 Ah 22k D2 LM317L VI U2 VO 1 ADJ 3 1N4001 2 VDD3 R3 5k6 C3 1uF R4 22k Figura 2.37 Fuentes Reguladas de 7.5V Diseñadas. 56 2.6.2 DISEÑO DE LAS FUENTES REGULADAS DE 5 VOLTIOS El circuito integrado LM7805 (ver ANEXO 15) es un regulador a 5V y una corriente de salida máxima de 1Amp (Figura 2.38). D1 1N4001 U3 7805 1 VI VO 3 VDD4 2 GND VDD2 C4 Figura 2.38 Fuente Regulada a 5V Según el fabricante recomienda C4=0.1uF a la salida del LM7805. En la Figura 2.39 se muestra el circuito diseñado. VDD0 VDD1 L 1N4001 U3 7805 2 1 R1 5k6 1 VI VO C2 C1 3 VDD4 GND VO 2 VI ADJ 3 100mH SWI BATERIA D1 U1 LM317L F1 1A 1N4001 VDD2 D1 C4 1uF 3300uF R2 12V 60 Ah 22k D2 LM317L VI U2 VO 1 ADJ 3 1N4001 2 VDD3 R3 5k6 C3 1uF R4 22k Figura 2.39 Fuente Regulada a 5V Diseñada 57 En este Capítulo se han diseñado todos los circuitos implementados en el sistema, tomando en cuenta para el diseño elementos disponibles en el mercado ecuatoriano. 58 CAPÍTULO 3 DISEÑO DEL SOFTWARE DE CONTROL En este capítulo se detallan sobre el desarrollo del programa para los Microcontroladores PIC16F877A y PIC16F628A, que son Controladores Integrados Programables, los cuales poseen muchas ventajas frente a otros dispositivos convencionales: son de fácil programación, mayor exactitud, gran capacidad de procesamiento, entre las principales características. El Controlador Integrado Programable PIC16F877A fue programado para que realice todas las acciones de control como son: la generación de las dos rampas tipo “S” para la aceleración y desaceleración, control de sentido de giro de los motores, selección de la velocidad de crucero de 0 a 1 m/s y el tiempo que controla la pendiente de las rampas de 1 a 9 segundos, selección del modo de funcionamiento: modo Manual, modo Semiautomático, modo Selección de Parámetros del Sistema y visualización de cada uno de los eventos en los cuales se encuentra la silla de ruedas, entre otras que serán explicadas más adelante. El Controlador Integrado Programable PIC16F628A fue programado para que realice la codificación de las palabras dadas por el circuito integrado HM2007 y envíe las palabras correctas hacia el PIC master. 3.1 CONTROLADOR INTEGRADO PROGRAMABLE PIC En la Figura 3.1 y la Figura 3.2 se muestra la distribución de pines de cada microcontrolador PIC. 59 Figura 3.1 PIC 16F877A Figura 3.2 PIC 16F628A Los microcontroladores PIC de la familia 16FXX poseen un sin número de recursos y dispositivos periféricos, entre los principales se puede citar: RECURSOS FUNDAMENTALES • Procesador de arquitectura RISC Avanzada. • Poseen fuentes de interrupción internas y externas. • Modos de direccionamiento directo, indirecto y relativo. • Perro Guardián (WDT). • Modo SLEEP de bajo Consumo • Hasta 8Kbytes palabras de 14 bits para la memoria de Código, tipo FLASH (PIC16F877A) y hasta 2Kbytes palabras de 12 bits (PIC16F628A). 60 • Hasta 368 bytes de memoria de Datos RAM (PIC16F877A) y hasta 224 bytes (PIC16F628A). • Hasta 256 bytes de memoria de datos EEPROM (PIC16F877A) y hasta 128 bytes (PIC16F628A). • Cogido de protección programable. • 35 instrucciones para la programación y se ejecutan en un ciclo de maquina. • Voltaje de alimentación entre 2 y 5.5V • Bajo consumo. DISPOSITIVOS PERIFÉRICOS. • TIMER 0: Contador /Temporizador de 8 bits con predivisor de 8 bits. • TIMER 1: Contador /Temporizador de 16 bits con predivisor. • TIMER 2: Contador /Temporizador de 8 bits con predivisor y postdivisor. • Módulos de Captura/Comparación/PWM. • Conversor A/D. • Puerto Serie Sincrónico (SSP) con SPI e I2C. • USART. • Puerta paralela Esclava (PSP). 3.2 RAMPA TIPO “S” La rampa tipo “S” permite realizar un arranque y frenado suave, que para el caso de las silla es fundamental para sustituir a las rampas lineales convencionales. Para realizar la rampa tipo “S” se utiliza una función cosenoidal dada por el software PIC BASIC (Figura 3.3) que da el coseno en 8 bits. El resultado está dado en forma de dos complementos -127 a 127. 61 Esta función “cos” utiliza una tabla de un cuarto de onda para encontrar el resultado. El coseno comienza con un valor en radianes binarios de 0 a 255 en vez de los 0 a 359 Grados. Figura 3.3 Función “cos” PIC BASIC Para este diseño se utiliza la siguiente función (Figura 3.4): Y = COS ( DATO) + 127 A A: Factor para variar la amplitud de la función (Figura 3.5). Figura 3.4 Función Implementada 62 Figura 3.5 Amplitudes de Función Implementada Factor A Para la rampa tipo “S” de aceleración (Figura 3.6) se toma el periodo desde DATO =128 hasta DATO=255. Figura 3.6 Rampa de Aceleración Para la rampa tipo “S” de desaceleración (Figura 3.7) se toma el periodo desde DATO =0 hasta DATO=127. Figura 3.7 Rampa de Desaceleración 63 3.3 ACTIVACION DE LOS MOTORES Los motores son controlados por 4 relés (Figura 3.8), que realizan la inversión de giro y son accionados por el microcontrolador PIC16F877A (Tabla 3.1). RELE4 RELE2 RELE1 RELE3 RELE2 RELE1 RELE4 RELE3 Figura 3.8 Puente H de Relés Los pines para el control de los relés son: • RC0= RELE1 • RC3=RELE2 • RC4=RELE3 • RC5=RELE4 MOTOR1 MOTOR2 MOVIMIENTO RELE1 RELE2 RELE3 RELE4 ON OFF ON OFF ON ON ADELANTE OFF ON OFF ON ON ON ATRAS 64 OFF OFF ON OFF OFF ON IZQUIERDA ON OFF OFF OFF ON OFF DERECHA Tabla 3.1 Activación Motores 3.4 CODIFICACIÓN DE LAS PALABRAS Las palabras son enviadas desde el circuito integrado HM2007 en forma de dos números BCD. El microcontrolador PIC16F628A codifica los 7 bits y envía las palabras reconocidas a 4 bits al microcontrolador PIC16F877A (Tabla 3.2). MOVIMIENTO PALABRA HM2007 PIC 16F628A PIC 16F877A SILLA PARAR 01 BCD 01 BCD 0001b 0001b PARADA ADELANTE 02 BCD 02 BCD 0010b 0010b ADELANTE ATRAS 03 BCD 03 BCD 0011b 0011b ATRAS DERECHA 04 BCD 04 BCD 0100b 0100b DERECHA IZQUIERDA 08 BCD 08 BCD 1000b 1000b IZQUIERDA Tabla 3.2 Códigos Control por Voz 65 3.5 PROGRAMACIÓN GENERAL 3.5.1 LÓGICA DE FUNCIONAMIENTO DEL MICROCONTROLADOR PIC 16F877A La lógica de funcionamiento (Figura 3.9) da la idea general de cómo funciona el sistema en su totalidad. INICIO CONFIGURAR REGISTROS Y PINES DE CONTROL MENSAJE INICIAL MENSAJE DE BATERIA BAJA SI BATERIA BAJA NO SELECCIONAR MODO DE OPERACION MODO MANUAL NO MODO SELECCIÓN DE PARÁMETROS DE FUNCIONAMIENTO MODO SEMIAUTOMATICO MODO MANUAL SI MODO SEMIAUTOMATICO NO SI MODO AJUSTES SI NO FIN Figura 3.9 Secuencia general del programa de control PIC16F877A 66 La estructura del algoritmo para lograr las tareas indicadas anteriormente se describen a continuación en lenguaje estructurado. CONFIGURAR REGISTROS Y PINES DE CONTROL Etiquetar Pines. Configurar Registros Auxiliares. Configurar Registros Principales. Configurar Puertos. Configurar LCD a 4 bits. Configurar PWM. FIN TAREA MENSAJE INICIAL Mostrar en el LCD: “ESCUELA POLITECNICA NACIONAL” “ING ELECTRONICA Y CONTROL” “ING HENRY PATRICIO CHANGO ALVAREZ” “ING ROBERTO CARLOS TOCTAGUANO TIPAN” “SILLA DE RUEDAS CONTROLADA POR VOZ Y JOYSTICK” FIN TAREA MENSAJE BATERÍA BAJA. Si Batería Baja esta Activo. Mostrar en el LCD: “BATERIA BAJA POR FAVOR” “APAGUE EL SISTEMA” FIN TAREA MODO MANUAL Si Modo Manual está activo. Activar subrutina SONIDO Mostrar en el LCD “MODO MANUAL”. Activar subrutina ESPERA MANDO. Si Modo Adelante está activo. Mostrar en el LCD “SILLA ADELANTE”. Activar Subrutina RELES ADELANTE. Activar Subrutina PWM12 para generar la Rampa tipo “S” de aceleración. Si Modo Atrás está activo. Mostrar en el LCD “SILLA ATRÁS”. 67 Activar Subrutina RELES ATRÁS. Activar Subrutina PWM12 para generar la Rampa tipo “S” de aceleración. Si Modo Derecha está activo. Mostrar en el LCD “SILLA DERECHA”. Activar Subrutina RELES DERECHA. Activar Subrutina PWM DERECHA para generar la Rampa tipo “S” de aceleración. Si Modo Izquierda está activo. Mostrar en el LCD “SILLA IZQUIERDA”. Activar Subrutina RELES IZQUIERDA. Activar Subrutina PWM IZQUIERDA para generar la Rampa tipo “S” de aceleración. Si Modo Parar está activo. Si Modo Adelante y Atrás fue activado. Activar Subrutina DRAMPA12 para generar la Rampa tipo “S” de desaceleración. Activar Subrutina RELES APAGADOS. Mostrar en el LCD “SILLA PARADA”. Si Modo Derecha fue activado. Activar Subrutina DPWM DERECHA para generar la Rampa tipo “S” de desaceleración. Activar Subrutina RELES APAGADOS. Mostrar en el LCD “SILLA PARADA”. Si Modo Izquierda fue activado. Activar Subrutina DPWM IZQUIERDA para generar la Rampa tipo “S” de desaceleración. Activar Subrutina RELES APAGADOS. Mostrar en el LCD “SILLA PARADA”. FIN TAREA A continuación en la Figura 3.11 da la idea general de cómo funciona el modo Manual. 68 MODO MANUAL SONIDO ESPERA MANDO NO MODO ADELANTE SI MODO ATRÁS NO NO RELÉS ADELANTE SI RELÉS ATRAS MODO DERECHA SI MODO IZQUIERDA RELÉS DERECHA VERIFICAR ESTADO ANTERIOR VERIFICAR ESTADO ANTERIOR GENERAR RAMPA PWM DERECHA SI NO MODO PARAR RELÉS IZQUIERDA VERIFICAR ESTADO ANTERIOR GENERAR RAMPA PWM IZQUIERDA GENERAR RAMPA PM12 VOLVER Figura 3.11 Modo Manual A continuación en la Figura 3.12 da la idea general de cómo funciona el modo Parar del modo manual. 69 MODO PARAR ESTADO ANTERIOR ADELANTE Ó ATRÁS SI GENERAR RAMPA DE DESACELERACIÓN DRAMPA12 NO ESTADO ANTERIOR DERECHA NO SI GENERAR RAMPA DE DESACELERACION DPWM DERECHA NO ESTADO ANTERIOR IZQUIERDA SI GENERAR RAMPA DE DESACELERACION DPWM IZQUIERDA RELÉS APAGADOS VOLVER Figura 3.12 Modo Parar. MODO SEMIAUTOMÁTICO Si Modo Semiautomático está activo Activar subrutina SONIDO Mostrar en el LCD “CONTROL POR VOZ” Activar subrutina ESPERA MANDO. Si la palabra “ADELANTE” está activa. Activar subrutina SONIDO Si el estado anterior es Atrás 70 Activar Subrutina DRAMPA12 para generar la Rampa tipo “S” de desaceleración. Activar Subrutina RELES APAGADOS. Si el estado anterior es Izquierda Activar Subrutina DPWM IZQUIERDA para generar la Rampa tipo “S” de desaceleración. Activar Subrutina RELES APAGADOS. Si el estado anterior es Derecha Activar Subrutina DPWM DERECHA para generar la Rampa tipo “S” de desaceleración. Activar Subrutina RELES APAGADOS. Mostrar en el LCD “SILLA ADELANTE”. Activar Subrutina RELES ADELANTE Activar Subrutina PWM12 para generar la Rampa tipo “S” de aceleración. Si la palabra “ATRÁS” está activa. Activar subrutina SONIDO Si el estado anterior es Adelante. Activar Subrutina DRAMPA12 para generar la Rampa tipo “S” de desaceleración. Activar Subrutina RELES APAGADOS. Si el estado anterior es Izquierda Activar Subrutina DPWM IZQUIERDA para generar la Rampa tipo “S” de desaceleración. Activar Subrutina RELES APAGADOS Si el estado anterior es Derecha Activar Subrutina DPWM DERECHA para generar la Rampa tipo “S” de desaceleración. Activar Subrutina RELES APAGADOS Mostrar en el LCD “SILLA ATRÁS”. Activar Subrutina RELES ATRÁS. Activar Subrutina PWM12 para generar la Rampa tipo “S” de aceleración. Si la palabra “DERECHA” está activa. Activar subrutina SONIDO Si el estado anterior es Adelante o Atrás. Activar Subrutina DRAMPA12 para generar la Rampa tipo “S” de desaceleración. Activar Subrutina RELES APAGADOS. Si el estado anterior es Izquierda Activar Subrutina DPWM IZQUIERDA para generar la Rampa tipo “S” de desaceleración. 71 Activar Subrutina RELES APAGADOS Mostrar en el LCD “SILLA DERECHA”. Activar Subrutina RELES DERECHA. Activar Subrutina PWM DERECHA para generar la Rampa tipo “S” de aceleración. Si la palabra “IZQUIERDA” está activa. Activar subrutina SONIDO Si el estado anterior es Adelante o Atrás. Activar Subrutina DRAMPA12 para generar la Rampa tipo “S” de desaceleración. Activar Subrutina RELES APAGADOS. Si el estado anterior es Derecha. Activar Subrutina DPWM DERECHA para generar la Rampa tipo “S” de desaceleración. Activar Subrutina RELES APAGADOS. Mostrar en el LCD “SILLA IZQUIERDA”. Activar Subrutina RELES IZQUIERDA Activar Subrutina PWM IZQUIERDA para generar la Rampa tipo “S” de aceleración. Si la palabra “PARAR” está activa. Activar subrutina SONIDO Si el estado anterior es Adelante y Atrás. Activar Subrutina DRAMPA12 para generar la Rampa tipo “S” de desaceleración. Activar Subrutina RELES APAGADOS. Mostrar en el LCD “SILLA PARADA”. Si el estado anterior es Derecha. Activar Subrutina DPWM DERECHA para generar la Rampa tipo “S” de desaceleración. Activar Subrutina RELES APAGADOS Mostrar en el LCD “SILLA PARADA”. Si el estado anterior es Izquierda. Activar Subrutina DPWM IZQUIERDA para generar la Rampa tipo “S” de desaceleración. Activar Subrutina RELES APAGADOS Mostrar en el LCD “SILLA PARADA”. FIN TAREA 72 A continuación en la Figura 3.13 y la Figura 3.14 da la idea general de cómo funciona el modo Semiautomático. Figura 3.13 Modo Semiautomático 73 Figura 3.14 Modo Semiautomático 74 MODO SELECCIÓN DE PARÁMETROS DEL SISTEMA Si Modo Selección de Parámetros está activo Activar subrutina SONIDO Mostrar en el LCD “PARAMETROS DEL SISTEMA” Activar subrutina ESPERA MANDO Activar subrutina TECLADO para ingresar el valor de la velocidad de crucero. Activar subrutina TECLADO para ingresar el tiempo de las rampas de aceleración y desaceleración. FIN TAREA A continuación en la Figura 3.15 da la idea general de cómo funciona el modo Selección de Parámetros de Funcionamiento. Figura 3.15 Modo Selección de Parámetros de Funcionamiento 75 Subrutina ESPERA MANDO Activar subrutina RELES APAGADOS Activar subrutina STOP PWMS FIN TAREA Subrutina PWM12 Cargar valor inicial 128 en DATO. Generar la rampa tipo “S” con la función Y de aceleración. Cargar el valor de Y en los registros CCPR1L y CCPR2L Incrementar el DATO de la rampa y esperar tiempo. FIN TAREA A continuación en la Figura 3.16 da la idea general de la Subrutina PWM12. Figura 3.16 Subrutina PWM12 76 Subrutina PWM DERECHA Cargar valor inicial 128 en DATO. Generar la rampa tipo “S” con la función Y de aceleración. Cargar el valor de Y en el registro CCPR1L. Incrementar el DATO de la rampa y esperar tiempo. FIN TAREA A continuación en la Figura 3.17 da la idea general de la Subrutina PWM DERECHA. Figura 3.17 Subrutina PWM DERECHA 77 Subrutina PWM IZQUIERDA Cargar valor inicial 128 en DATO. Generar la rampa tipo “S” con la función Y de aceleración. Cargar el valor de Y en el registro CCPR2L. Incrementar el DATO de la rampa y esperar tiempo. FIN TAREA A continuación en la Figura 3.18 da la idea general de la Subrutina PWM IZQUIERDA. Figura 3.18 Subrutina PWM IZQUIERDA 78 Subrutina DRAMPA12 Cargar valor inicial 0 en DATO. Generar la rampa tipo “S” con la función Y de desaceleración. Cargar el valor de Y en los registros CCPR1L y CCPR2L. Incrementar el DATO de la rampa y esperar tiempo. FIN TAREA A continuación en la Figura 3.19 da la idea general de la Subrutina DRAMPA12. SUBRUTINA DRAMPA12 CARGAR VALOR INICIAL PARA LA RAMPA DATO=0 GENERAR RAMPA “S” DE DESACELERACIÓN CARGAR EL VALOR Y EN CCPR1L Y CCPR2L INCREMENTAR DATO ESPERAR TIEMPO TERMINAR RAMPA NO SI RETURN Figura 3.19 Subrutina DRAMPA12 79 Subrutina DPWM DERECHA Cargar valor inicial 0 en DATO. Generar la rampa tipo “S” con la función Y de desaceleración. Cargar el valor de Y en el registro CCPR1L. Incrementar el DATO de la rampa y esperar tiempo. FIN TAREA A continuación en la Figura 3.20 da la idea general de la Subrutina DPWM DERECHA. SUBRUTINA DPWM DERECHA CARGAR VALOR INICIAL PARA LA RAMPA DATO=0 GENERAR RAMPA “S” DE DESACELERACIÓN CARGAR EL VALOR Y EN CCPR1L INCREMENTAR DATO ESPERAR TIEMPO NO TERMINAR RAMPA SI RETURN Figura 3.20 Subrutina DPWM DERECHA 80 Subrutina DPWM IZQUIERDA Generar la rampa tipo “S” con la función Y de desaceleración. Cargar el valor de Y en el registro CCPR2L. FIN TAREA A continuación en la Figura 3.21 da la idea general de la Subrutina DPWM IZQUIERDA. SUBRUTINA DPWM IZQUIERDA CARGAR VALOR INICIAL PARA LA RAMPA DATO=0 GENERAR RAMPA “S” DE DESACELERACIÓN CARGAR EL VALOR Y EN CCPR2L INCREMENTAR DATO ESPERAR TIEMPO TERMINAR RAMPA NO SI RETURN Figura 3.21 Subrutina DPWM IZQUIERDA 81 Subrutina RELES APAGADOS Apagar RELE1, RELE2, RELE3, RELE4. FIN TAREA Subrutina RELES ADELANTE Activar RELE1 y RELE3. Apagar RELE2 y RELE4. FIN TAREA Subrutina RELES ATRAS Activar RELE2 y RELE4. Apagar RELE1 y RELE3. FIN TAREA Subrutina RELES DERECHA Activar RELE1 y RELE3. Apagar RELE2 y RELE4. FIN TAREA Subrutina RELES IZQUIERDA Activar RELE1 y RELE3. Apagar RELE2 y RELE4. FIN TAREA Subrutina SONIDO Activar BOCINA. FIN TAREA Subrutina STOP PWMS Cargar el valor de 0 en el registro CCPR1L Cargar el valor de 0 en el registro CCPR2L FIN TAREA Subrutina TECLADO Activar FILA4 Apagar FILA1, FILA2 y FILA3 Si COLUMNA1 está inactiva Tecla presionada es 1 Si COLUMNA2 está inactiva Tecla presionada es 2 82 Si COLUMNA3 está inactiva Tecla presionada es 3 Si COLUMNA4 está inactiva Tecla presionada es A Activar FILA1 Apagar FILA2, FILA3 y FILA4 Si COLUMNA1 está inactiva Tecla presionada es 4 Si COLUMNA2 está inactiva Tecla presionada es 5 Si COLUMNA3 está inactiva Tecla presionada es 6 Si COLUMNA4 está inactiva Tecla presionada es B Activar FILA2 Apagar FILA3, FILA4 y FILA1 Si COLUMNA1 está inactiva Tecla presionada es 7 Si COLUMNA2 está inactiva Tecla presionada es 8 Si COLUMNA3 está inactiva Tecla presionada es 9 Si COLUMNA4 está inactiva Tecla presionada es C Activar FILA3 Apagar FILA4, FILA1 y FILA2 Si COLUMNA1 está inactiva Tecla presionada es ESC Si COLUMNA2 está inactiva Tecla presionada es 0 Si COLUMNA3 está inactiva Tecla presionada es ← Si COLUMNA4 está inactiva Tecla presionada es D FIN TAREA A continuación, para aquellas tareas que requieren más detalles se procede a ampliar su descripción. 83 3.5.2.1 Configuración de registros y pines de control Etiquetado de Pines El etiquetado se realiza para facilitar la identificación de los pines de los puertos y se tiene: RB1= MVOZ: Selección del modo Semiautomático CONTROL POR VOZ RB2= MAJUSTES: Selección del modo SELECCIÖN DE PARAMETROS DEL SISTEMA. RA0= M_ADELANTE: Pulsador adelante joystick RA1= M_ATRAS: Pulsador atrás joystick. RA3= M_DERECHA: Pulsador derecha joystick. RA2= M_IZQUIERDA: Pulsador izquierda joystick. RB7= A0: BIT 0 Palabra Control por Voz. RB6= A1: BIT 1 Palabra Control por Voz. RB5= A2: BIT 2 Palabra Control por Voz. RB4= A3: BIT 3 Palabra Control por Voz. RB0= BATERIA: Indicador de batería baja. RA5= FILA1: Fila1. RE0= FILA2: Fila2. RE1= FILA3: Fila3. RE1= FILA4: Fila4 RA4= COL1 Columna1. RD0= COL2: Columna2. RD1= COL3: Columna3. RC6= COL4: Columna4. RC0= RELAY1: Rele1. RELAY2= RC3: Rele2. RC4= RELAY3: Rele3. RC5= RELAY4: Rele1. RB3= BOCINA: Bocina. RC7= INDICADOR: Indicador Luminoso 84 Configuración de Registros Auxiliares La configuración de registros Auxiliares se realiza para facilitar la lógica de programación y se tiene: Y: Función cosenoidal de la rampa tipo “S”. DATO: Dato que realiza la rampa tipo “S”. TECLA: Datos ingresados por teclado. TIEMPOD: Tiempo entre cada incremento del módulo PWM. DADELANTE: Variable para verificar el estado anterior Adelante. DATRAS: Variable para verificar el estado anterior Atrás. DDERECHA: Variable para verificar el estado anterior Derecha. DIZQUIERDA: Variable para verificar el estado anterior Izquierda. VELOCIDAD: Variable para el ingreso de la velocidad de crucero. VELOCIDAD1: Variable para el ingreso de la velocidad de crucero. VELOCIDAD2: Variable para el ingreso de la velocidad de crucero. VELOCIDAD_IN: Variable de la velocidad final de crucero. PORCENTAJE_VARIABLE: Variable para calcula el Factor A A: Variable para calcular la amplitud de los PWMS AUX: Variable para ingresar correctamente la velocidad de crucero. DATO _ ESTADO: Variable para ver el estado anterior en el mando manual. Configuración de Registros Principales Se configura los Registros TRISA, TRISB, TRISC, TRISD, TRISE para definir a los puertos como entradas y salidas digitales, donde 0 significa salida y 1 entrada. Los valores a continuación se encuentran expresados en código binario. TRISA=%00011111 TRISB=%11110111 TRISC=%01000000 TRISD=%00000011 TRISE=%00000000 85 Se configura el Registro ADCON1 para definir al puerto A y puerto E como digital ya que el microcontrolador PIC 16F877A usa estos puertos para el conversor A/D. El valor está expresado en decimal y se tomó del manual del microcontrolador PIC 16F877A (ver ANEXO 1). ADCON1=6 Configuración de Puertos El Puerto A es configurado como entradas y salidas digitales, y es el que sirve para el control manual por joystick: RA0: Adelante. RA1: Atrás. RA2: Derecha. RA3: Derecha. RA4: Columna 1. RA5: Fila 1. En el Puerto B los bits más significativos son configurados como entradas para recibir las señales del PIC16F628A. Los bits menos significativos son configurados como entradas para leer los modos: Semiautomático, Selección de Parámetros del sistema, Detector de Batería Baja, y BOCINA indicador sonoro de palabra correcta e ingreso al modo de operación. RB4:A3 (Dato 3 reconocimiento de voz). RB5:A2 (Dato 2 reconocimiento de voz). RB6:A1 (Dato 1 reconocimiento de voz). RB7:A0 (Dato 0 reconocimiento de voz). RB2: MVOZ. RB1: MAJUSTES. RB0: BATERÍA BAJA. RB3: BOCINA. 86 El puerto C es configurado como entradas y salidas digitales: RC1: PWM2. RC2: PWM1. RC0: Relé 1. RC3: Relé 2. RC4: Relé 3. RC5: Relé 4. RC6: Columna 4. RC7: Indicador de control por voz. El puerto D es configurado como entradas y salidas digitales: RD0: Columna 2. RD1: Columna 3. RD2: E (Enable LCD). RD3: RS (Línea de control LCD). RD4-RD7: Líneas de datos del LCD. El puerto E es configurado como salidas digitales: RE0: Fila 2. RE2: Fila 3. RE3: Fila 4. Configuración de LCD Se define la librería para utilizar el LCD en modo 4 bits: LCD_DREG PORTD LCD_DBIT 4 LCD_RSREG LCD_RSBIT 3 : Define pines de datos del LCD en el puerto D. : Los datos empiezan desde el pín RD4 al pín RD7. PORTD : Configura el pín RS en el puerto D. : Configura al pín RD3 como RS. 87 LCD_EREG PORTD LCD_EBIT 2 : Configura el pín E (Enable) en el puerto D. : Configura al pín RD2 como E. Se utiliza el LCD en modo de 4 bits para disminuir el número de pines utilizados en el microcontrolador PIC. El bus de control está formado por 3 señales: RS, R/W y E. La señal E es la señal de validación de los datos. Cuando no se utiliza el LCD esta señal permanece en 0, sólo en las transferencias de información (lecturas o escrituras) se pone en 1 para validar los datos, pasando después de un tiempo a 0. RS (Register Select) selecciona el registro interno del LCD sobre el que se va a leer/escribir. El LCD dispone de dos registros internos: Registro de control y registro de datos. Ambos registros son de lectura y escritura. RS=0 selecciona el registro de control. RS=1 el registro de datos. RW no se utiliza en la configuración ya que por hardware se encuentra conectado a GND para que el LCD solo realice operaciones de escritura. Configuración del PWM Los pasos a seguir para la configuración del modo PWM son: 1. Asignar el periodo cargando el valor en el Registro PR2. 2. Asignar el ancho del pulso cargando en el registro CCPR1L. 3. Configurar los pines RC1 y RC2 como salidas digitales. 4. Asignar el valor del predivisor y activar el TMR2 en el registro T2CON. 5. Configurar el módulo CCP1 en modo PWM. El periodo del PWM es calculado con la siguiente expresión: TPWM = [(PR 2 ) + 1]x 4 xTosc (TMR 2 PRE − ESCALADOR ) PR 2 = TPWM −1 4 xTosc (TMR 2 PRE − ESCALADOR ) 88 La frecuencia de operación óptima es 244Hz, que esta dentro del valor calculado en el Capitulo 2 cumpliendo con la condición de rizado de corriente y con esta frecuencia el motor funcionó de la mejor manera. El registro PR2 se carga con el valor 255 para obtener la frecuencia y el predivisor del TMR2 de 16. Para variar el ancho de pulso depende del contenido cargado en el registro CC PR1L. AnchoPulso = (CCPR1L : CCPICON < 4 : 5 >) xT osc xTMR 2 PRE − ESCALADOR 89 3.5.2 LÓGICA DE FUNCIONAMIENTO DEL MICROCONTROLADOR PIC 16F628A La lógica de funcionamiento (Figura 3.10) da la idea general de cómo funciona el sistema del PIC 16F628A con el sistema de reconocimiento de voz. INICIO CONFIGURAR REGISTROS Y PINES DE CONTROL ACTIVAR INDICADOR SI BATERÍA BAJA NO LEER PALABRA SI ADELANTE SI ENVIAR DATO ADELANTE NO NO ATRÁS NO SI IZQUIERDA SI ENVIAR DATO ATRAS NO DERECHA NO SI PARAR ENVIAR DATO IZQUIERDA NO SI ENVIAR DATO ADELANTE ENVIAR DATO PARAR FIN Figura 3.10 Secuencia general del programa de control PIC16F628A 90 La estructura del algoritmo para lograr las tareas indicadas anteriormente se describen a continuación en lenguaje estructurado. CONFIGURAR REGISTROS Y PINES DE CONTROL Etiquetar Pines. Configurar Registros Auxiliares. Configurar Registros Principales. Configurar Puertos. FIN TAREA ACTIVAR INDICADOR Si Batería Baja esta activa Activar Out Batería Baja FIN TAREA PARAR Si palabra “PARAR” esta activa. Enviar Dato al PIC Master palabra Parar (01) FIN TAREA ADELANTE Si palabra “ADELANTE” esta activa. Enviar Dato al PIC Master palabra Adelante (02) FIN TAREA ATRÁS Si palabra “ATRÁS” esta activa. Enviar Dato al PIC Master palabra Atrás (03) FIN TAREA DERECHA Si palabra “DERECHA” esta activa. Enviar Dato al PIC Master palabra Derecha (04) FIN TAREA IZQUIERDA Si palabra “IZQUIERDA” esta activa. Enviar Dato al PIC Master palabra Izquierda (08) FIN TAREA 91 A continuación, para aquellas tareas que requieren más detalles se procede a ampliar su descripción. 3.5.2.1 Configuración de registros y pines de control Etiquetado de Pines El etiquetado se realiza para facilitar la identificación de los pines de los puertos y se tiene: RB3= INDICADOR VOZ 2: Indicador Luminoso. RA7= INDICADOR VOZ 1: Indicador Luminoso. RB0= IN BATERÍA BAJA: Entrada para verificar el estado de la Batería. RB2= OUT BATERÍA BAJA: Indicador de Batería Baja. RB4= A0: Dato LSB hacia el PIC master. RB5= A1: Dato hacia el PIC master. RB6= A2: Dato hacia el PIC master RB7= A3: Dato MSB hacia el PIC master. Configuración de Registros Auxiliares La configuración de registros Auxiliares se realiza para facilitar la lógica de programación y se tiene: PALABRA_IN: Variable para cargar el dato de la palabra a verificar. UNO: Variable para comparar con el código de la palabra “PARAR”. ONCE: Variable para comparar con el código de la palabra “PARAR”. VEINTE_UNO: Variable para comparar con el código de la palabra “PARAR”. TREINTA_UNO: Variable para comparar con el código de la palabra “PARAR”. DOS: Variable para comparar con el código de la palabra “ADELANTE”. DOCE: Variable para comparar con el código de la palabra “ADELANTE”. VEINTE_DOS: Variable para comparar con el código de la palabra “ADELANTE”. TREINTA_DOS: Variable para comparar con el código de la palabra “ADELANTE”. TRES: Variable para comparar con el código de la palabra “ATRAS”. 92 TRECE: Variable para comparar con el código de la palabra “ATRAS”. VEINTE_TRES: Variable para comparar con el código de la palabra “ATRAS”. TREINTA_TRES: Variable para comparar con el código de la palabra “ATRAS”. CUATRO: Variable para comparar con el código de la palabra “DERECHA”. CATORCE: Variable para comparar con el código de la palabra “DERECHA”. VEINTE_CUATRO: Variable para comparar con el código de la palabra “DERECHA”. TREINTA_CUATRO: Variable para comparar con el código de la palabra “DERECHA”. OCHO: Variable para comparar con el código de la palabra “IZQUIERDA”. DIESIOCHO: Variable para comparar con el código de la palabra “IZQUIERDA”. VEINTE_OCHO: Variable para comparar con el código de la palabra “IZQUIERDA”. TREINTA_OCHO: Variable para comparar con el código de la palabra “IZQUIERDA”. Configuración de Registros Principales Se configura los Registros TRISA, TRISB para definir a los puertos como entradas y salidas digitales, donde 0 significa salida y 1 entrada. Los valores a continuación se encuentran expresados en código binario. TRISA=%01111111 TRISB=%00000011 Se configura el Registro CMCON para definir al puerto A como digital ya que el microcontrolador PIC 16F628A usa este puerto para el conversor A/D. El valor está expresado en decimal y se tomó del manual del microcontrolador PIC 16F628A (ver ANEXO 2). CMCON=7 Configuración de Puertos El puerto A es configurado como entradas y salidas digitales donde se reciben los datos del circuito HM2007: 93 RA0: Ingreso DATO0 HM2007. RA1: Ingreso DATO1 HM2007. RA2: Ingreso DATO2 HM2007. RA3: Ingreso DATO3 HM2007. RA4: Ingreso DATO4 HM2007. RA5: Ingreso DATO5 HM2007. RA6: Ingreso DATO6 HM2007 RA7: INDICADOR DE VOZ 1. El puerto B es configurado como entradas y salidas digitales: RB4: Salida Dato 0 reconocimiento de voz. RB5: Salida Dato 0 reconocimiento de voz. RB6: Salida Dato 0 reconocimiento de voz. RB7: Salida Dato 0 reconocimiento de voz. RB3: INDICADOR DE VOZ 2. RB2: OUT BATERÍA BAJA. RB0: IN BATERÍA BAJA. En este Capítulo se ha diseñado el software de todo el sistema de control para realizar las pruebas de funcionamiento de todo el sistema y obtener los resultados esperados en el siguiente Capítulo. 94 CAPÍTULO 4 PRUEBAS Y RESULTADOS En este capítulo se realizan pruebas para probar el comportamiento de la silla para cuando sea sometida a su trabajo diario. 4.1 PRUEBAS DE LA RAMPA TIPO “S” Con estas pruebas se comprobó que el microcontrolador realiza las rampas tipo “S” de aceleración y desaceleración en el arranque y frenado de la silla a diferentes pendientes y diferentes velocidades de crucero. Se realizaron tres pruebas para verificar la forma de la trayectoria tipo “S” en el arranque y frenado de la silla de ruedas a la velocidad máxima de 1m/s (3.6Km/h) y se graficó en el programa computacional Matlab. Para realizar estas pruebas se tomó pendientes con duración de 1 a 9 seg. en pasos de 1seg.; donde la pendiente máxima es 1 seg. (Figura 4.1) y la pendiente mínima es 9 seg. (Figura 4.2). Velocidad de crucero Rampa de Aceleración Rampa de Desaceleración Velocidad Inicial Velocidad Inicial 1seg 1seg Figura 4.1 Pendiente Máxima 95 Velocidad de crucero Rampa de Aceleración Rampa de Desaceleración Velocidad Inicial Velocidad Inicial 9seg 9seg Figura 4.2 Pendiente Mínima Al recorrer la silla la distancia de 1m se puede calcular la velocidad a pendiente máxima y mínima aproximando una rampa lineal (Figura 4.3): [m/s] Velocidad de crucero [seg] Velocidad Inicial Tiempo Figura 4.3 Pendiente Mínima Velocidad P.Máxima = Velocidad P.Minima = Dis tan cia 1[m] = = 1m / s = 3.6 Km / h Tiempo P.Maxima 1[seg ] Dis tan cia 1[m] = = 0.11m / s = 0.396 Km / h Tiempo P.Minima 9[seg ] Primero se tomaron los valores del módulo PWM del registro CCPR1L del microcontrolador PIC16F877A del algoritmo de control. El registro de control CCPR1L varia desde 0 a 255 valores, por ser un registro de 8 bits, siendo 255 el valor máximo del ancho del pulso. 96 En la Figura 4.4 se muestran las formas de onda de la rampa tipo “S” de aceleración dadas por el algoritmo de control realizado con diferentes pendientes. 300 250 200 PWM 150 100 50 0 0 1 2 3 4 5 6 7 8 9 Tiempo de la Rampa [s] Figura 4.4 Rampa de Aceleración PWM En la Figura 4.5 se muestran las formas de onda de la rampa tipo “S” de desaceleración dadas por el algoritmo de control realizado con diferentes pendientes. PWM 300 250 200 150 100 50 0 0 1 2 3 4 Tiempo de la Rampa[s] 5 6 7 8 9 Figura 4.5 Rampa de Desaceleración PWM 97 Segundo se midió los valores de voltaje aplicados al motor, con la velocidad máxima de 1m/s (3.6Km/h) para determinar si el circuito de control lograba su objetivo de acelerar/desacelerar el motor siguiendo la curva “S”. En la Figura 4.6 se muestra las formas de onda de voltaje aplicadas sobre el motor en el momento del arranque con diferentes pendientes. Voltaje del Motor[v] 12 10 8 6 4 2 0 0 1 2 3 4 Tiempo de la Rampa[seg] 5 6 7 8 9 Figura 4.6 Rampa de Aceleración Motor En la Figura 4.7 se muestra las formas de onda de voltaje aplicadas al motor en el momento de frenado con diferentes pendientes. 98 Voltaje del motor[v] 12 10 8 6 4 2 0 0 1 2 3 4 Tiempo de la Rampa[s] 5 6 7 8 9 Figura 4.7 Rampa de Desaceleración Motor Tercero se midió los valores de voltaje de salida del microcontrolador PIC (RC2) al realizar la rampa a velocidad máxima de 1m/s (3.6Km/h). En la Figura 4.8 se muestran las formas de onda de la rampa tipo “S” de aceleración dadas por el microcontrolador PIC16F877A con diferentes pendientes. Voltaje Pic [v] 4.5 4 3.5 3 2.5 2 1.5 1 0.5 0 0 1 2 3 4 5 6 7 8 9 Tiempo de la Rampa[s] Figura 4.8 Rampa de Aceleración PIC 99 En la Figura 4.9 se muestran las formas de onda de la rampa tipo “S” de desaceleración dadas por el microcontrolador PIC16F877A con diferentes pendientes. Voltaje Piv [v] 4.5 4 3.5 3 2.5 2 1.5 1 0.5 0 0 1 2 3 4 Tiempo de la Rampa [s] 5 6 7 8 9 Figura 4.9 Rampa de Desaceleración PIC Con el algoritmo realizado en el sistema de control se logró obtener una trayectoria tipo “S” en el arranque y frenado de la silla de ruedas. Para realizar las pruebas de variación de velocidad se tomó velocidades de 0.1 a 1m/s en pasos de 0.1 m/s con la pendiente de duración de 1seg. y se graficó en el programa computacional Matlab. En la Figura 4.10 se muestra las diferentes velocidades describiendo la trayectoria tipo “S” en el momento del arranque de la silla de ruedas. Esta gráfica se realizó tomando los valores de voltaje en los terminales del motor. 100 10.98V 1 10.38V 0.9 9.53 V 0.8 8.69V 0.7 7.95V Velocidad Motor[m/s] 0.6 7.11V 0.5 6.17V 0.4 5.38V 0.3 4.59V 0.2 3.84V 0.1 0 0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1 Tiempo de la rampa [s] Figura 4.10 Rampas de Aceleración En la Figura 4.11 se muestra las diferentes velocidades describiendo la trayectoria tipo “S” en el momento de frenado de la silla de ruedas. Esta gráfica se realizó tomando los valores de voltaje en los terminales del motor. 101 10.98V 1 10.38V 0.9 9.53V 0.8 8.69V 0.7 Velocidad motor [m/s] 7.95V 0.6 7.11V 0.5 6.17V 0.4 5.38V 0.3 4.59V 0.2 3.84V 0.1 0 0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1 Tiempo de la rampa [s] Figura 4.11 Rampas de Desaceleración 4.2 PRUEBAS DE RECONOCIMIENTO DE VOZ Se realizó las pruebas de reconocimiento de voz con cinco palabras (Tabla 4.1). MOVIMIENTO PALABRA SILLA PARAR PARADA ADELANTE ADELANTE ATRAS ATRÁS DERECHA DERECHA IZQUIERDA IZQUIERDA Tabla 4.1 Palabras de Reconocimiento de voz 102 Cada palabra grabada se encuentra en el modo de longitud del circuito integrado HM2007 de 20 palabras de 1.92 seg. cada una. Se pronunció cada palabra 100 veces en forma aleatoria (Tabla 4.2), donde se obtuvo un error promedio del orden del 3.6 %. Palabras Número de Identificación Identificación Error Pronunciadas veces Correcta Incorrecta (%) Adelante 100 96 4 4 Atrás 100 97 3 3 Izquierda 100 95 5 5 Derecha 100 96 4 4 Parar 100 98 2 2 Tabla 4.2 Prueba de Reconocimiento de Voz El principal problema que se tuvo en el control por Voz fueron las equivocaciones a pesar de que se pronuncian las palabras correctamente como fueron grabadas. Este problema se corrigió grabando cada usuario sus respectivos comandos, y tratar lo más posible de pronunciar en el tono grabado. Se debe tener además en cuenta que el micrófono debe estar posicionado en la parte central de la boca del usuario. En el software se implementó que si no reconoce ninguna de las palabras anteriormente descritas el sistema se detenga para evitar falsas órdenes. 4.3 PRUEBAS EN LOS MOTORES El sistema utiliza dos motores de excitación independiente de 12V y 10Amp, los cuales mostraron problemas en la parte mecánica, dando como resultado velocidades de rotación distintas. Al tener velocidades distintas, la silla de ruedas no se movía en línea recta y se 103 desviaba de su trayectoria, un problema que se hacia muy notorio a grandes distancias recorridas. Para corregir este problema se ajustaron las bandas de las ruedas de la silla y se ajustó uno de los módulos PWMs para equilibrar la velocidad. Con estos ajustes se determinó que al recorrer la silla de ruedas 10m se desvió 0.35m de su trayectoria lineal (Figura 4.12), dándonos un ángulo de desviación de 2°. 0.35m 10m Figura 4.12 Desviación de la silla de ruedas Para los giros hacia la derecha e izquierda se realizó una rampa tipo “S” de menor amplitud para ayudar al giro de la silla. Para realizar el ajuste de velocidad se realizó pruebas con usuarios de diferentes Pesos. 4.4 RESULTADOS OBTENIDOS Para realizar el puente H para la inversión de giro de los motores se utilizó relés para evitar la caída de voltaje colector-emisor de saturación de 1 a 2V que se produce en los semiconductores puesto que, al tener como alimentación una batería de 12V se reduce el tiempo de autonomía del sistema. Los resultados obtenidos (Tabla 4.3) de la variación de velocidad en función del peso de los usuarios se presentan a continuación. 104 PESO DEL USUARIO VELOCIDAD VELOCIDAD (Kg.) (Km/h) (m/s) 90 3.06 0.85 70 3.24 0.9 60 3.42 0.95 50 3.56 0.98 Tabla 4.3 Velocidades a diferentes pesos. Se determinó que con la pendiente de duración de 1 segundo en el algoritmo de las rampas de aceleración y desaceleración el funcionamiento de la silla es el más adecuado. Se pudo probar que si la silla se encuentra en espacios reducidos y se asigna pendientes con tiempos mayores a la generación de las rampas pueden ocurrir choques. De las pruebas realizadas se determinó que con velocidad de 0.5m/s (1.8Km/h) es la mínima velocidad con la que el usuario puede desplazarse de manera óptima y no le cause molestias. 105 CAPÍTULO 5 ESTUDIO DE COSTOS El objeto de este estudio es dar a conocer el costo total del sistema, para lo cual se presenta un listado de los elementos y materiales utilizados incluyendo los precios de los mismos. Con el costo total se puede hacer una comparación con equipos similares en el mercado. 5.1 COSTOS En la Tabla 5.1 se muestra los elementos utilizados para la construcción de las fuentes de alimentación. CANTIDAD DESCRIPCION PRECIO $ 1 Capacitor 3300 uF 1.0 1 Inductancia 1.25 2 Reguladores LM317 0.34 1 Regulador LM7805 0.17 4 Resistencias 0.08 4 Borneras 1.0 1 Fusible y porta fusible 0.7 1 Baquelita de fibra de vidrio 2.5 2 Capacitores 0,1uF y 1uF 0.4 3 Diodos rectificadores 0.3 TOTAL 7.74 Tabla 5.1 Fuentes de Alimentación En la Tabla 5.2 se muestra todos los elementos que constituyen la tarjeta principal, en la cual se genera todas las órdenes para el funcionamiento del sistema. 106 CANTIDAD DESCRIPCION PRECIO $ 1 Teclado Matricial 4x4 5.5 1 LCD 2x16 con backlight 16.0 1 Microcontrolador PIC 16F877A 8.0 1 Oscilador 4 MHz 0.45 2 Capacitores 22 pF 0.4 1 Pulsador 0.2 5 Transistores 2N3904 0.75 4 Diodos rectificadores 0.4 8 Borneras 2.0 2 Led 0.2 1 Potenciómetro 0.3 1 Bocina 1.5 1 Selector de 3 posiciones 0.5 3 Conectores 4 pines 1.2 2 Conectores 8 pines 1.6 4 Opto transistores 3.2 27 Resistencias de 1/4 W 0.54 1 Joystick 15 1 Baquelita de fibra de vidrio 15x10 2.5 2 Fusible y porta fusible 1.4 2 Conectores DB 25 2.2 1 Zócalo 40 pines 1.5 TOTAL 65.34 Tabla 5.2 Tarjeta Electrónica de Control Principal En la Tabla 5.3 se muestra todos los elementos que constituyen la tarjeta esclava que es la interfaz entre el PIC master y la tarjeta de reconocimiento de voz. 107 CANTIDAD DESCRIPCION PRECIO $ 1 Microcontrolador PIC 16F628A 5.5 1 Capacitores 0.1uF 0.2 7 Transistores 2N3904 1.05 4 Borneras 3 Led 0.3 1 Conectores 4 pines 0.4 1 Conectores 8 pines 0.8 2 Opto transistores 1.6 34 Resistencias de 1/4 W 0.68 1 Baquelita de fibra de vidrio 15x10 2.5 1 Fusible y porta fusible 0.7 1 Zócalo 18 pines 0.8 1 TOTAL 15.53 Tabla 5.3 Tarjeta Electrónica PIC Esclavo En la Tabla 5.4 se muestra todos los elementos que constituyen la tarjeta de Potencia para el control de los motores. CANTIDAD DESCRIPCION PRECIO $ 2 Transistores TIP 122 1.6 3 Borneras 0.75 1 Led 0.1 2 Opto transistores 1.6 9 Resistencias de 1/4 W 0.18 1 Baquelita de fibra de vidrio 15x10 2.5 1 Fusible y porta fusible 0.7 2 Resistencias de Potencia 20W 1.2 2 Disipadores 4 TOTAL 12.63 Tabla 5.4 Tarjeta Electrónica de Potencia 108 En la Tabla 5.5 se muestra todos los elementos que constituyen la tarjeta de detección de Batería Baja y Batería Cargada. CANTIDAD DESCRIPCION PRECIO $ 2 LM324 2.0 4 Borneras 1.0 4 Led 0.4 2 LM317 0.34 16 Resistencias de 1/4 W 0.32 1 Baquelita de fibra de vidrio 15x10 2.5 2 Fusible y porta fusible 1.4 2 Diodos Rectificadores 0.2 4 Capacitores 0.8 TOTAL 8.96 Tabla 5.5 Tarjeta de Detección de Batería Baja y Batería Cargada En la Tabla 5.6 se muestra todos los elementos que constituyen el cargador de Batería. CANTIDAD DESCRIPCION PRECIO $ 7 Diodos de Potencia 6A10 1.12 1 Borneras 0.25 1 Transformador 110V/12V 35.0 1 LM7812 0.25 1 Baquelita de fibra de vidrio 15x10 2.5 1 Resistencias de Potencia 20W 0.6 2 Capacitores 6800uF/50V 4.0 1 Capacitor 0.1uF 0.2 TOTAL 43.92 Tabla 5.6 Tarjeta Cargador de Batería 109 En la Tabla 5.7 siguiente se enumera los elementos constitutivos de la parte que controla los motores. CANTIDAD DESCRIPCION PRECIO $ 5 Relés con bases 37.5 2 Transistores C3856 6.6 2 Diodos de Potencia 6.0 2 Fusibles Térmicos 6.0 2 Disipadores 12.2 TOTAL 68.3 Tabla 5.7 Elementos de Potencia En la Tabla 5.8 se da a conocer todos elementos constitutivos de la tarjeta de reconocimiento de voz. CANTIDAD DESCRIPCION PRECIO $ 1 Circuito Integrado HM2007 35 1 PCB 85 1 Memoria SRAM 25 1 Micrófono 30 1 Pila de Litio 3 Elementos electrónicos 20 TOTAL 198 Tabla 5.8 Tarjeta Electrónica de Reconocimiento de voz A continuación (Tabla 5.9) se muestra los elementos adicionales usados en la construcción de todos los circuitos impresos. 110 CANTIDAD DESCRIPCION PRECIO $ 1 Batería 12Vdc 95 1 Caja Exterior 50 2 Relés con Base 14 2 Interruptor 2 Materiales varios: tornillos, cable 100 aislante, etc TOTAL 261 Tabla 5.9 Accesorios Varios En la Tabla 5.10 se da a conocer el costo total de todo el sistema físico eléctrico y electrónico. DESCRIPCION PRECIO $ Fuentes de Alimentación 7.74 Tarjeta Electrónica de control Principal 65.34 Tarjeta Electrónica PIC Esclavo 15.53 Tarjeta Electrónica de Potencia. 12.63 Tarjeta de Detección de Batería Baja y Batería Cargada 8.96 Tarjeta Cargador de Batería 43.92 Elementos de Potencia 68.30 Tarjeta Electrónica de reconocimiento de voz 198 Accesorios Varios 261 TOTAL 681.42 Tabla 5.10 Costo Total Sistema Físico Eléctrico y Electrónico En la Tabla 5.11 se da a conocer el costo total de todo el sistema. 111 DESCRIPCION PRECIO $ Motores 300 Silla de Ruedas 850 Sistema Físico Eléctrico y Electrónico Costos de Ingeniería TOTAL 681.42 1500 3331.42 Tabla 5.11 Costo Total Con los datos de la Tabla 5.11, queda demostrado que con Tecnología local si es posible abaratar los costos. Por otro lado, el costo total es 3331.42 dólares americanos que puede variar dependiendo de la disponibilidad de los elementos que constituyen el sistema. Sin embargo, hay que aclarar que para este proyecto no se gastó lo correspondiente a la silla y los motores, pues esta parte pertenece al Laboratorio de Instrumentación. Consecuentemente el costo del proyecto en realidad es: DESCRIPCION PRECIO $ Sistema Físico Eléctrico y Electrónico 681.42 Costos de Ingeniería 1500.00 TOTAL 2181.42 Comercialmente en Internet se encuentran sillas de ruedas electrónicas de distintos fabricantes entre los que se puede citar: PERMOBIL, TUFFAARE, DELUXE, TRAC ABOUT, los cuales poseen como control principal el mando por joystick. Ningún sistema de los mencionados anteriormente posee el control por voz. El precio de los sistemas de sillas de ruedas electrónicas oscilan entre 4000 y 8000 dólares americanos, que en comparación al precio del sistema desarrollado es mucho mayor, teniendo en cuenta que estos equipos hay que importarlos lo que implica costos adicionales. No hay que olvidar que no se busca rentabilidad en estos sistemas, porque la 112 población con discapacidad no es muy alta, sino desarrollar experiencia nacional para dar soluciones que posibiliten a personas de bajos recursos económicos tener acceso a este tipo de herramientas que alivien sus dificultades. 113 CAPÍTULO 6 CONCLUSIONES Y RECOMENDACIONES De los resultados obtenidos de las pruebas se pueden extraer las conclusiones que se indican a continuación. Igualmente, después de realizado el trabajo, de la experiencia adquirida es posible emitir algunas recomendaciones. 6.1 CONCLUSIONES • El presente proyecto cuenta con un sistema de visualización y sonorización los cuales indican la actividad que el usuario está realizando de lo que se puede concluir que es un sistema muy fácil de usar. • Con el algoritmo de control realizado para la generación de la rampa de aceleración y desaceleración tipo “S”, se pudo notar que el sistema no realizó arranques y frenados bruscos, de lo que se puede concluir que se ha logrado diseñar un sistema que elimina los arranques y frenados bruscos. • El control de velocidad fue diseñado con elementos fáciles de encontrar en el mercado nacional Ecuatoriano; es decir, el prototipo puede ser construido en el país. De esto se puede concluir que existe capacidad local para resolver este tipo de problemas. • El sistema es capaz de moverse por un tiempo aproximado de 3 horas. De aquí se puede concluir que el usuario si podrá realizar sus actividades cotidianas para cumplir sus necesidades y requerimientos básicos de transporte. • El presente prototipo posee las mismas cualidades que los sistemas comerciales existentes en el mercado local; es decir, aquellos que tienen control electrónico manual por Joystick. Considerando que este trabajo añade el control por Voz y su precio resulta ser muy económico. 114 • De las pruebas realizadas se comprobó que con la pendiente de duración de 1 segundo en el algoritmo de las rampas de aceleración y desaceleración el funcionamiento de la silla es el más adecuado, con lo que se puede concluir que con esta pendiente el usuario no tendrá problemas para movilizarse en espacios reducidos. • La pruebas realizadas permiten concluir que la velocidad de 0.5m/s (1.8Km/h) es la mínima velocidad de crucero con la que el usuario puede desplazarse de manera óptima y sin que le cause molestias. • Finalmente, evaluando todas las pruebas realizadas se concluye que este proyecto “Diseño y construcción de un sistema basado en un microcontrolador para controlar por voz y joystick el desplazamiento de una silla de ruedas”, cumple con los objetivos planteados. 6.2 RECOMENDACIONES • Para la construcción de sistemas para personas discapacitadas se recomienda tener muy en cuenta las normas que se deben cumplir, las cuales en nuestro país están establecidas por el INEN. • Se recomienda que para el correcto funcionamiento del sistema en el modo Semiautomático control por voz cada usuario grabe sus propios comandos de control. • Para el circuito de potencia se recomienda que siempre se utilice disipadores de calor para su correcto funcionamiento y prolongar la vida útil de cada uno de los dispositivos. 115 • Se recomienda en lo posible utilizar elementos semiconductores originales para evitar errores que a veces no dependen del diseño realizado sino de la calidad de los elementos utilizados. • Se recomienda utilizar motores de 24V para tener mayor rango de variación del voltaje medio al momento de realizar la rampa tipo “S”. En el caso presente, se utilizó motores de 12V debido a que estos vienen en la silla del laboratorio de Instrumentación. • De las pruebas realizadas con el sistema de reconocimiento de voz HM2007 se pudo comprobar que tiene un mejor funcionamiento cuando se encuentra en el modo de 20 palabras de 1.92 seg. de longitud, por lo mismo se recomienda trabajar en este modo para reducir al mínimo las equivocaciones. • Entre las limitaciones del sistema hay que mencionar al peso de todo el conjunto de dispositivos y accesorios de la silla de ruedas. Lo ideal seria contar con una estructura de bajo peso. • Se hizo un ajuste en los dos PWMs para variar el voltaje medio que llega hacia los motores, hasta igualar el torque de los dos con lo que se consiguió que el sistema se mueva en línea recta. Se recomienda que este proceso de calibración se haga a medida que se desgasta mecánicamente la silla. • Se recomienda realizar inspecciones periódicas en todas las conexiones tanto eléctricas como mecánicas para mantener en buen funcionamiento todo el sistema. • Como mejora para futuros proyectos se recomienda añadir un control para evadir obstáculos y evitar choques, con lo cual el sistema podría ser utilizado por personas con discapacidad visual. 116 REFERENCIAS BIBLIOGRÁFICAS [1] Jumbo A., Tamayo C., “Control electrónico de sillas de ruedas para personas parapléjicas y cuadraplejicas,” EPN, 1995. [2] Barcenes J., Vásquez D., “Prototipo de una silla de ruedas semiautónoma para personas minusvalidas no videntes,” EPN, 2005. [3] Gamboa S., Quelal P., “Diseño y construcción de un variador de velocidad con el microcontrolador 80C196MC,” EPN, 2004. [4] Instituto Ecuatoriano de Normalización, “NTE 2 246,” 2000. [5] Consejo Nacional de Discapacidades, “Discapacidad en el Ecuador,” 2004, http://www.conadis.gov.ec [6] Microchip, “Datasheets PIC16F877A, PIC16F628A,” www.microchip.com [7] Angulo J., Romero S., “Microcontroladores PIC Diseño práctico de aplicaciones,” 2000. [8] Reyes C., “Aprenda rápidamente a programar microcontroladores PIC,” 2004. [9] Images SI INC, “HM2007,” 2007, http://imagesco.com 117 [10] Anónimo sistemas de reconocimiento de voz, 2008 http://ict.udlap.mx/people/ingrid/Clases/IS412/index.html. http://catarina.udlap.mx/u_dl_a/tales/documentos/lis/marquez_a_bm/capitulo http://lilaproject.org/veu/personal/canton/IntrRecVoz.pdf. 118