Вы находитесь на странице: 1из 9

COMANDO readadc

El TPS (Throttle Position Sensor) nos entrega una señal analógica la cual nos
dice en qué posición se encuentra el acelerador, esta señal le dice a la
computadora cuanto combustible inyectar para darnos una respuesta
adecuada. El TPS nos entrega una determinada cantidad de voltaje, el cual la
computadora manipula para enviar la señal adecuada.

En la práctica utilizaremos un potenciómetro para simular el TPS, el


potenciómetro nos entregará una variación de voltaje de 0 a 5v en D.C. la
señal analógica deberá ser procesada antes por un ADC para ser manipulada
por el µC, y el objetivo principal de ésta práctica es leer el ADC.

Para esto utilizaremos el comando readadc el cual lee el valor que está
entregando el ADC, nótese que dicho valor es el correspondiente a la entrada
analógica que está recibiendo el µC, por lo tanto podremos saber en qué
posición se encuentra nuestro TPS. De este modo entre mas voltaje exista,
menor tiempo permanecerá abierto el inyector de combustible, y si hay poco
voltaje se abrirá por más tiempo.
El objetivo del programa es leer el valor del ADC y dependiendo de éste, cortar
la inyección de gasolina, o mantener el inyector abierto un tiempo
predeterminado. El tiempo mínimo de apertura es cuando el voltaje sea de 4v
y será de 5ms, y el tiempo máximo al alcanzar 1v será de 35ms. El periodo
total de la señal deberá de ser de 100ms, por lo tanto cuando la apertura dure
35ms, deberá cerrar el inyector durante unos 65ms restantes.

El valor de voltaje obtenido en el TPS entrará al µC y directamente al ADC


convirtiendo éste de analógico a digital, dicho valor hay que almacenarlo en
una variable de 8 bits, por lo tanto los valores que puede obtener serán de 0 a
255, esto se representará de la siguiente manera. Los valores en verde hay
que obtenerlos en clase:

0v = 0
1v = 51
2v = 102
3v = 153
4v = 204
5v = 255

Abrir el archivo 01 readadc.bas para explicar el comando y ver el programa.

Practica:
Diodo Led 1.5mm
Potenciometro 5K
Resistencia 220 Ohms
COMANDO infrain

El RKS (Remote Keyless System) está diseñado para permitir el acceso de


manera remota, en este caso, a un automóvil, hay varios sistemas actualmente
en el mercado fabricados por algunas grandes de microcontroladores como lo
son Microchip, Philips y Atmel, siendo algunos ejemplos. Las ventajas son
obvias, permitiéndonos abrir y cerrar los seguros desde algunos metros de
distancia incluso desde dentro de un edificio. Inclusive algunos autos nos
permiten subir los vidrios o el quemacocos cuando se accionan los seguros. La
mayor parte de estos sistemas pueden contener tanto RKE (Remote keyless
Entry) como RKI (Remote Keyless Ignition).

Estos sistemas operan transmitiendo ondas de RF, la mayor parte de los RKE
rondan los 315Mhz en norte América y Japón, los sistemas modernos incluyen
encriptación para prevenir la intervención de la señal.

En el caso de nuestro comando la función es la misma, es decir, al presionar un


botón envía un valor por RF de que botón fue presionado, el micro-controlador
lee el valor recibido y ejecuta cierta acción. La función de este comando es
obtener una señal que proviene de una fuente infrarroja.

Abrir el archivo 02 Infrain.bas para explicar el comando y ver el programa

COMANDO keyin

Los sistemas de acceso varían dependiendo las marcas, existe otro sistema en
el cual, si se me olvidan dentro del auto las llaves puedo abrir la puerta sin
ningún problema, lo único que hay que hacer es introducir una clave para que
se abran los seguros. Por ejemplo las camionetas y/o coches Ford.

La función de este comando es obtener una señal que proviene


específicamente del teclado. Vamos a utilizar este comando para obtener un
valor del teclado como de cualquier botón en el auto y saber que botón se está
presionando para simular el acceso y apertura de los seguros.
El objetivo del primer programa es detectar una clave y ejecutar una acción,
que en este caso será abrir los seguros, abrir el programa 03 keyin.bas para
mostrar el programa y ejemplos.

COMANDO for-next
Abrir el programa 04 fornext.bas donde incorporamos el ciclo for al
simulador de la apertura con protección.

COMANDO do-while loop, do-until loop, do loop-while, do loop-until


Vamos a simular que cuando presionamos un botón se baja el cristal y
cuando presionamos el otro botón sube el cristal, moviendo un motor de C.D.
lo único que se hará es cambiar la polaridad del motor para que gire en ambos
sentidos.

Abrir el programa 05 loops.bas donde se hace una simulación para subir y


bajar ventanas del coche.
COMANDO gosub
A continuación simularemos el movimiento de un motor a pasos, el
control de su velocidad y el sentido de giro, el siguiente diagrama muestra el
principio de funcionamiento de un motor a pasos de 2 bobinas.

PASO TERMINALES
A B C D
1 1 0 1 0
2 1 0 0 1
3 0 1 0 1
4 0 1 1 0

Abrir el programa 06 gosub.bas donde se encuentra un ejemplo de la


subrutina
Motor a pasos 2 bobinas, 4 hilos:
1.- Naranja
2.- Rojo
3.- Azul
4.- Blanco
COMANDO select-case

El encendido de luces y cuartos de un automóvil está cada vez más de moda


que sea de manera electrónica y sobre todo automática para que el conductor
no se moleste en accionar una palanca o presionar un botón. El sensor
encargado más común para este tipo de tareas es una LDR (Light Dependent
Resistor) el cual varía su resistencia dependiendo de la cantidad de luz que
recibe, de este modo nuestro adc será el encargado de recibir un determinado
voltaje para saber si es necesario o no prender luces y/o cuartos del coche.

Abrir el programa 07 select-case.bas donde se encuentra un ejemplo de


la instrucción select-case y el programa para prender y apagar los
cuartos/luces.

COMANDO count

El velocímetro electrónico moderno consta de un sensor rotatorio,


normalmente montado en la parte trasera de la transmisión, el cual nos
entrega una serie de pulsos electrónicos cuya frecuencia corresponde a la
velocidad de rotación del eje motriz. Este sensor generalmente es un disco de
metal dentado posicionado entre una bobina y un sensor de campo magnético,
mientras este disco gira, los dientes pasan entre ambos, la bobina y el sensor,
cada vez q pasa se genera un pulso en el sensor debido al campo magnético, y
de esta manera tenemos nuestro tren de impulsos. Tenemos una señal de reloj
y depende de la frecuencia sabemos a qué velocidad vamos.

El comando count selecciona una entrada para recibir un tren de impulsos,


éste tren de impulsos es contado durante el periodo de tiempo que nosotros
elijamos y se almacena en una variable de 16 bits, que en nuestro caso son los
registros desde W0 hasta W6.

El siguiente programa muestra un uso del comando y una aplicación real para
el automóvil, abrir el archivo 08 count.bas para los ejemplos.
COMANDO pwmout

El sistema de frenos ABS (Anti Blokier System), es un sistema que previene que
las ruedas se bloqueen y el coche patine. El ABS funciona en conjunto con el
sistema tradicional, únicamente es una bomba incorporada a los circuitos del
líquido de freno y unos sensores para la velocidad de las ruedas, en una
frenada brusca, si una o más ruedas reducen de velocidad muy rápido en
determinado tiempo, el sistema predice que las ruedas quedarán bloqueadas,
por lo que la presión del freno es reducida, sin que intervenga el conductor.
Cuando la situación se normaliza el sistema activa nuevamente los frenos a
máxima presión para detener el vehículo. Cuando interviene el sistema ABS,
generalmente se repite eso de 50 a 100 veces por minuto.

El programa 09 pwmout.bas muestra la utilización de este comando y una


simulación del sistema de frenado ABS, aquí se muestran los diagramas de
flujo de ambos programas.

INICI
O

Vel_ant = velocidad

Vel = velocidad

Pausa

dif = vel_ant - velo

vel_ant = velo

dif <=
Si
200 or dif
>= 3000
No

pwmout

FIN
Diagrama de flujo de Sistema con simulación de frenado

INICI
O

Vel_ant = velocidad

Si pin0
=0

No

High 0

vel = velocidad

pausa

dif = vel_ant - velo

vel_ant = velo

Si dif <=
200 or dif
>= 3000
No
toggle
0

pausa
Si
pin0
=1 No

Low 0

INTERRUPCIONES pwmINTERRUPCIONESout

El programa 09 pwmout.bas muestra la utilización de este comando y una


simulación del sistema de frenado ABS

Вам также может понравиться