13
SENSORES Y ACTUADORES PROYECTO DE APLICACIÓN DE UN SENSOR DE ALCOHOL PROFESOR: ISC. KENYA FRANCO MALDONADO ALUMNOS: ERNESTO RAMIRO MONARREZ PONCE ARMANDO HERNANDEZ RAMIREZ 2012 INSTITUTO TECNOLOGICO DE CD. JIMENEZ 31/05/2012

Proyecto Arduino+Sensor

Embed Size (px)

Citation preview

Page 1: Proyecto Arduino+Sensor

SENSORES Y ACTUADORES Alcoholímetro

Proyecto Arduino: Alcoholímetro

para fines prácticos y de demostración frente al grupo, el más adecuado fue el de

alcohol, ya que existen otros que detectan, por ejemplo, el gas butano o metano.

Descripción

La idea es crear un alcoholímetro, que mediante el sensor, se reciba como dato el

grado o nivel de alcohol de la persona que sopla frente al sensor. Según el nivel o

grado de alcohol detectado por el sensor, se encenderán de 1 a 10 leds de

diferentes colores, empezando con el verde, que indica un bajo nivel de alcohol,

amarillo un nivel medio y rojo un nivel alto.

Además como muchos alcoholímetros portátiles o de mano ofrecen la opción de

guardar el estado actual de alcohol, también agregue dos botones, uno es para

guardar el estado marcado actualmente por el sensor, y el segundo es para ver los

estados guardados, que son tres, aunque pudieron haber sido más. Al picar el

botón para ver los estados guardados por primera vez, se muestra el estado

recién guardado, al picar por segunda vez, se ve el penúltimo estado, y al picar

por tercera vez se muestra el antepenúltimo, y para salir de vuelve a picar por

cuarta vez, y volver a recibir información del sensor.

SENSORES Y ACTUADORES

PROYECTO DE APLICACIÓN DE UN

SENSOR DE ALCOHOL

PROFESOR: ISC. KENYA FRANCO MALDONADO

ALUMNOS:

ERNESTO RAMIRO MONARREZ PONCE

ARMANDO HERNANDEZ RAMIREZ

2012

INSTITUTO TECNOLOGICO DE CD. JIMENEZ

31/05/2012

Page 2: Proyecto Arduino+Sensor

SENSORES Y ACTUADORES Alcoholímetro

INTRODUCCION

Los alcoholímetros son dispositivos especializados en la medición del nivel de

alcohol presente en un fluido o gas. Estos dispositivos son calibrados con niveles

estándar de alcohol, de manera que permiten identificar si una persona excede o

no dichos estándares. En el caso de que los niveles establecidos de alcohol sean

superados se considera que la persona se encuentra en estado de ebriedad y es

sancionada según las leyes y especificaciones de cada ciudad o país.

Herramientas usadas

Arduino IDE en Windows 7

Cable para conexión USB

Arduino Uno

Material utilizado

4 leds de 5mm, color verde difuso

3 leds de 5mm, color amarillo difuso

3 leds de 5mm, color rojo difuso

1 led de 5mm, color amarillo

11 resistencias de 330 ohms

3 resistencias de 10K ohms

2 micro switch, de push, con 4 terminales

1 sensor de alcohol MQ-3

Arduino Uno

Cables de interconexión macho-macho de 6 pulgadas

Page 3: Proyecto Arduino+Sensor

SENSORES Y ACTUADORES Alcoholímetro

Código

#include <EEPROM.h>

const int analogSensor = 0;

const int ledCount = 10;

const int ledSave = 0;

const int pushButtonSave = 12;

const int pushButtonRead = 13;

int ledPins[] = {2,3,4,5,6,7,8,9,10,11};

int buttonSave = 0;

int buttonRead = 0;

int buttonCount = 0;

void setup() {

//Serial.begin(9600);

pinMode(ledSave, OUTPUT);

pinMode(pushButtonSave, INPUT);

pinMode(pushButtonRead, INPUT);

for (int thisLed = 0; thisLed < ledCount; thisLed++) {

pinMode(ledPins[thisLed], OUTPUT);

}

}

void guardar(int value) {

int temp1 = EEPROM.read(0);

int temp2 = EEPROM.read(1);

EEPROM.write(0, value);

EEPROM.write(1, temp1);

EEPROM.write(2, temp2);

//Serial.println("guardado");

delay(2000);

}

Page 4: Proyecto Arduino+Sensor

SENSORES Y ACTUADORES Alcoholímetro

void mostrar() {

while (true) {

buttonRead = digitalRead(pushButtonRead);

if (buttonRead == HIGH) {

if (buttonCount < 3) {

int dataReaded = EEPROM.read(buttonCount);

Serial.print(buttonCount);

Serial.print("\t");

Serial.println(dataReaded);

for (int ledHigh = 0; ledHigh < ledCount; ledHigh++) {

if (ledHigh < dataReaded) {

digitalWrite(ledPins[ledHigh], HIGH);

} else {

digitalWrite(ledPins[ledHigh], LOW);

}

}

buttonCount++;

delay(500);

} else {

break;

}

}

}

buttonCount = 0;

delay(500);

}

void loop() {

int dataLevel = map(analogRead(analogSensor), 700, 900, 0, ledCount);

if (dataLevel < 0) {

dataLevel = 0;

Page 5: Proyecto Arduino+Sensor

SENSORES Y ACTUADORES Alcoholímetro

}

if (dataLevel > 10) {

dataLevel = 10;

}

Serial.println(dataLevel);

for (int ledHigh = 0; ledHigh < ledCount; ledHigh++) {

if (ledHigh < dataLevel) {

digitalWrite(ledPins[ledHigh], HIGH);

} else {

digitalWrite(ledPins[ledHigh], LOW);

}

}

buttonSave = digitalRead(pushButtonSave);

if (buttonSave == HIGH) {

digitalWrite(ledSave, HIGH);

guardar(dataLevel);

} else {

digitalWrite(ledSave, LOW);

}

buttonRead = digitalRead(pushButtonRead);

if (buttonRead == HIGH) {

mostrar();

}

}

Page 6: Proyecto Arduino+Sensor

SENSORES Y ACTUADORES Alcoholímetro

Sensor de Gas de Alcohol MQ-3

Básicamente tiene 6 pines, la tapa y el cuerpo. A pesar de que tiene 6 pines,

puede utilizar sólo 4 de ellos. Dos de ellos son para el sistema de calefacción, lo

que yo llamo H y los otros 2 son para la conexión de alimentación y de tierra, que

he llamado A y B.

¿Cómo funciona?

El núcleo del sistema es el cubo. Como se puede ver en esta vista en sección

transversal, en el fondo, se trata de una cubierta de tubo de alúmina por el SnO2,

que es el dióxido de estaño. Y entre ellos hay un electrodo de Aurum, el negro. Y

también se puede ver cómo están conectados los cables. Así que, ¿por qué los

necesitamos? Básicamente, el tubo de alúmina y las bobinas son el sistema de

calefacción, las partes amarillo, marrón y las bobinas en la imagen.

Page 7: Proyecto Arduino+Sensor

SENSORES Y ACTUADORES Alcoholímetro

Conexión

Aquí está el esquema. Es bastante simple. En primer lugar, puede utilizar 5v. Y

como se puede ver una de pasadores H va a la potencia y el otro está conectado a

la tierra. Y la patilla A está conectado entre la potencia y el H pasador y el pasador

B se va al Microcontrolador. También entre el suelo y el Arduino, que necesita de

la resistencia.

Comportamiento

Si usted sopla, va a reaccionar. Dependiendo del entorno, le da poco de valores

diferentes. Pero en mi caso, me da 200 como el valor más bajo y el 1000 como el

valor más alto. Y cuando se detecta el alcohol en el aire, en realidad es bastante

sensible, el valor se hace mayor muy rápidamente, pero usted tiene que esperar

cerca de 1 a 5 minutos para restablecerla. Así que eso significa conseguir valores

es rápido, pero es tan lento restablecimiento. Y la sensibilidad de este sensor se

ve afectada por espacio de tiempo. Cuando utiliza un sensor de edad, el rango de

valor era menor que el nuevo uno.

Page 8: Proyecto Arduino+Sensor

SENSORES Y ACTUADORES Alcoholímetro

Circuito creado en Fritzing

Esta dividido en dos partes para no amontonar componentes y que estén bien

visibles. Esta es la parte donde se conectan todas las salidas del Arduino al

Protoboard donde se encuentran incrustados los leds.

Y aquí está por separado lo que conecta al sensor y los botones push.

Page 9: Proyecto Arduino+Sensor

SENSORES Y ACTUADORES Alcoholímetro

Page 10: Proyecto Arduino+Sensor

SENSORES Y ACTUADORES Alcoholímetro

PROCEDIMIENTO

¿Qué es Arduino?

Arduino es una plataforma open-hardware basada en una sencilla placa con

entradas y salidas (E/S), analógicas y digitales, y en un entorno de desarrollo que

implementa el lenguaje Processing/Wiring.

Su corazón es el chip Atmega8, un chip sencillo y de bajo coste que permite el

desarrollo de múltiples diseños.

Al ser open-hardware tanto su diseño como su distribución es libre. Es decir,

puede utilizarse libremente para desarrollar cualquier tipo de proyecto sin tener

que adquirir ningún tipo de licencia.

Arduino puede utilizarse en el desarrollo de objetos interactivos autónomos o

puede conectarse a un PC a través del puerto serie utilizando lenguajes como

Flash, Processing, MaxMSP, etc. Las posibilidades de realizar desarrollos

basados en Arduino tienen como límite la imaginación.

Asimismo, su sencillez y su bajo coste, recomiendan su uso como elemento de

aprendizaje e iniciación en el mundo de la electrónica digital.

Page 11: Proyecto Arduino+Sensor

SENSORES Y ACTUADORES Alcoholímetro

ENTORNO DE DESARROLLO

Para programar la placa es necesario descargarse de la página web de Arduino

(http://www.arduino.cc/en/Main/Software) el entorno de desarrollo (IDE). Se

dispone de versiones para Windows y para MAC, así como las fuentes para

compilarlas en LINUX.

Page 12: Proyecto Arduino+Sensor

SENSORES Y ACTUADORES Alcoholímetro

FUNCIONAMIENTO

Un alcoholímetro digital, basado en un sensor de gas indica al soplar sobre la

boquilla del sensor si la persona ha ingerido bebidas alcohólicas. Muestra los

resultados en una escala del 1 al 10.

El alcoholímetro permite archivar los resultados de las pruebas que realiza, sin

embargo su capacidad de almacenamiento es limitada. Esto representa una

dificultad, ya que si se alcanzaba el límite de archivo de resultados se pueden

perder datos anteriores.

El alcoholímetro requiere de cable USB para monitorear los resultados en la

computadora.

Page 13: Proyecto Arduino+Sensor

SENSORES Y ACTUADORES Alcoholímetro

APLICACIONES

Como aplicaciones podemos considerarlo en varios sectores por ejemplo:

Equipo para transito como el control vehicular.

Al llegar al trabajo como prueba de rutina diaria.

CONCLUSIONES

Como conclusión con este proyecto se pretendió reafirmar los conocimientos

adquiridos en la materia de sensores y actuadores poniendo en práctica todos los

conocimientos adquiridos durante el semestre.

MEJORAS

Se pueden considerar las siguientes mejoras a futuro sobre este proyecto.

Implementar una batería.

Pantalla para un mejor monitoreo en el portátil.

Comunicación vía bluetooth que permita descargar toda la información a un

ordenador sin necesidad de cables, para un mejor control de estadísticas y

resultados posteriores.