Reporte Proyecto Microcontroladores
-
Upload
miguel-sandoya -
Category
Documents
-
view
213 -
download
0
Transcript of Reporte Proyecto Microcontroladores
-
8/18/2019 Reporte Proyecto Microcontroladores
1/12
Escuela Superior Politécnica
Del Litoral
FIEC
Laboratorio de
Microcontroladores
Proyecto
Bastón y guante electrónico
Alumno: Miguel Sandoya
Andrés Salazar
Paralelo: 8
Grupo: 5
ec!a de presentaci"n: #$ de
Diciembre del #%&5
-
8/18/2019 Reporte Proyecto Microcontroladores
2/12
2015 - 2o Término
1. Proyecto:
El proyecto consiste en crear un guante o brazalete con un mini-motor que
genere una vibración en la mano del usuario cada vez que se encuentre con un
obstáculo (la vibración cambiara según el obstáculo) mediante el uso del
PIC!"##$% este debe ser observado por dos sensores de distancia
(<rasónico o de luz) y enviado v'a inalámbrica al guante% la uerza con la que
vibre el guante debe ser regulada por un potenciómetro ubicado en el bastón
unto con un interruptor de encendido del sistema* Cuando se acerque a un
obeto o persona por el rente vibre a un nivel y cuando se acerque a una
escalera u oriicio vibre a otro nivel y genere un sonido de alerta*
2. Diagrama de Bloques
ParlanteSensor
ultrasónico 1
PIC
16F!"otor #i$ra%or 1
Sensor
ultrasónico 2"otor #i$ra%or 2
-
8/18/2019 Reporte Proyecto Microcontroladores
3/12
3. Diagrama de flujo del programa principal y subrutina
I&ICI'
&'S Em(are)amiento %e
Bluetoot*
Sensor 1 '&Se encien%en los
sensores
Sensor 2 '&"an%a se+al serial
al Pic 2
,istancia 50 cm
"otor y
(arlante
Se .cti#a "otor
#i$ra%or 1 y el
(arlante a"an%a se+al serial
al Pic 2
,istancia 50 cm
,istancia 25 cm
"otor y
(arlanteSe .cti#a "otor
#i$ra%or 2 y el
(arlante a
"an%a se+al serial
al Pic 2,istancia 25 cm
Se .cti#a "otor
#i$ra%or 1 y el
(arlante a"an%a se+al serial
al Pic 2
Se .cti#a "otor
#i$ra%or 2 y el
(arlante a
-
8/18/2019 Reporte Proyecto Microcontroladores
4/12
4. Descripción de algoritmo
• +e prende el sistema y se espera a que ambos dispositivos% el Pic que
controla los sensores y el Pic que controla los motores vibradores% se
comuniquen mediante comunicación serial*
• +i el sensor utilizado para detectar obetos de rente% detecta un obeto
a cierta distancia manda por el puerto serial una se,al al otro Pic que
activara el motor vibrador *
• +i la distancia se sigue acortando el primer Pic mandara una se,al al
otro Pic para que aumente la recuencia de vibración* Este solo seapagara una vez que el sensor este a una distancia más leana del
obeto*
• +i el sensor utilizado para detectar obetos por debao a ./ grados%
detecta un obeto a cierta distancia manda por el puerto serial una se,al
al otro Pic que activara el motor vibrador *
• +i la distancia se sigue acortando el primer Pic mandara una se,al al
otro Pic para que aumente la recuencia de vibración* Este solo se
apagara una vez que el sensor este a una distancia más leana del
obeto*
• 0mbos motores vibradores se prenderán al mismo tiempo si solo si la
persona no vidente esta rente a una persona y tiene un 1ueco por
delante o si está baando una escalera y una persona viene subiendo
rente a 2l*
-
8/18/2019 Reporte Proyecto Microcontroladores
5/12
. listado de programa fuente en lenguaje !.
P"#$% 1 &P'!1( )ensores
3deine 45I66E5 P7540*50
3deine EC87 P7540*50
3deine 45I66E5 P7540*509
3deine EC87 P7540*50.
int distancia%distancia%bandera%tiempo%tiempo%di%di:
unsigned s1ort i:
int ;edir pins as digital
0>+E?8 @ A:
45I+0 @ AbAAAAAA: BBConigurado bit y . como entrada y los demas comosalidas
45I+ @ AbAAAAAAAA:
45I+D@ A"":
C7>4C7> @ A: BB 8abilitada la interrupción por el desbordamiento en el registro4;5A
distancia@A:
distancia@A:
bandera@A:
-
8/18/2019 Reporte Proyecto Microcontroladores
6/12
45I66E5@A:
45I66E5@A:
di@A:
di@A:
&054
-
8/18/2019 Reporte Proyecto Microcontroladores
7/12
P754*5@:
elay4C7>*4;5AI")=
-
8/18/2019 Reporte Proyecto Microcontroladores
8/12
tiempo@A:
I>4C7>@A:
M
else i(EC87@@A)=
I>4C7>@A:
tiempo@4;5A:
M
M
BB<rasonido
int ;edir
-
8/18/2019 Reporte Proyecto Microcontroladores
9/12
i(I>4C7>*4;5AI")=
tiempo@A:
I>4C7>@A:
M
else i(EC87@@A)=
I>4C7>@A:
tiempo@4;5A:
M
M
P"#$% 2 &P'!2( *+$+#%)
unsigned s1ort i@A%bandera@A:
unsigned uart+E? @ A: BB Conigure 0> pins as digital
0>+E?8 @ A:
C7>
-
8/18/2019 Reporte Proyecto Microcontroladores
10/12
i@ &054
-
8/18/2019 Reporte Proyecto Microcontroladores
11/12
PH;
-
8/18/2019 Reporte Proyecto Microcontroladores
12/12
-.!onlusiones
• +e utilizó las interrupciones para poder lograr una temporización de los
distintos procesos% as' se consiguió que cada proceso se realice en un
tiempo determinado* &no de los principales problemas que tuve ue al
momento de manear subrutinas dentro de la interrupción ya que no
estaba se,alando el in de los procesos con banderas*
• El uso de banderas para se,alar el in de los procesos ue de gran
ayuda ya que as' se pudo lograr la temporización de cada parte e
incluso agregar más subrutinas*
• "ue muy importante el conocimiento de instrucciones básicas como
sub o decsz ya que estos nos ayudaron a controlar los tiempos y
tener una mayor precisión*• En la parte de llenado de botella nos costó al principio entender como
1ab'a que realizarlo% luego con ayuda de una variable que uera
decrementando y cada vez que llegara a A pasar'a a la siguiente
subrutina logramos el eecto de ver que la botella se uera llenando*
• En los parámetros de siguiente y inal se logro cubrir todos los posibles
aspectos es decir cuando inal este activado asi se prenda siguiente o
ruta esta no se activara mientras inal este activo
• ?amentablemente el proceso de alarma no se pudo realizar ya que no
alcance a entender cómo poner un delay que uncione dentro de la
interrupción sin que al ser desactivada me aecte el proceso antes
1ec1o*
• ?a parte de +oda tampoco unciono bien ya que no pude realizar la
temporización debido a que al aumentar las instrucciones dentro de mi
interrupción esta se me desbordaba% sin embargo el llenado de la botella
unciono bien*
.#ecomendaciones
• 5ealizar bien las coneiones en el Proteus y colocar etiquetas para
identiicar cada elemento y la unción que realiza as' se es más ácil deentender al momento de eplicar*
• ?o mismo en el código poner etiquetas o comentarios en las l'neas de
código para que el mismo programador y personas que lo quieran
entender puedan comprender de meor manera*
• 4ener pleno conocimiento de las instrucciones que se realiza para poder
1acer adecuaciones o meoras al programa% como mas precisión o mas
elementos*