Práctica 19
-
Upload
misael-diaz -
Category
Documents
-
view
213 -
download
0
description
Transcript of Práctica 19
CARRETERA DEL DEPARTAMENTO DEL D.F. K.M. 7.5, EJIDO DE SANTA MARÍA ATARASQUILLO, LERMA, MÉXICO. C.P. 52050. TELS. 728 2859552 / 2859969 / 2822247
www.utvtol.edu.mx
UNIVERSIDAD TECNOLÓGICA DEL VALLE DE
TOLUCA Dirección de Carrera de Tecnologías de la Información y
Comunicación Ingeniería en Tecnologías de la Información y Comunicación, área Sistemas Informáticos
Reporte-Práctica 19: Potenciómetro + Python +
MySQL + push button
Asignatura: Aplicación de las Telecomunicaciones
Profesor: Raúl Arturo García Martínez
Fecha: 22/07/2015
Tipo: Equipo
Grupo: ITIC-91
Elaboraron:
Matrícula Nombre
221211391 Misael Abdeel Díaz Hernández
221210907 Irene Guillermina Sánchez Hernández
221211238
221211504
Miguel Ángel Manjarrez Carbajal
Iliana Arellano Cruz
ÍNDICE DESCRIPCIÓN GENERAL DE LA PRÁCTICA ....................................................... 3
Requerimientos: ................................................................................................... 3
Objetivos .............................................................................................................. 3
MATERIAL .............................................................................................................. 3
DESARROLLO DE LA PRÁCTICA ......................................................................... 4
GALERÍA DE RESULTADOS .................................................................................. 6
CONCLUSIONES .................................................................................................... 7
3
DESCRIPCIÓN GENERAL DE LA PRÁCTICA Conectar un potenciómetro a Arduino, recibir el valor de entrada (entre 0 y 1023)
e insertarlo en MySQL utilizando Python, cada vez que el push button es
presionado. Se conectará un push button a una Protoboard que está a su vez a un
dispositivo de entradas y salidas de voltaje (arduino) y vinculado a una base de
datos mediante un código en Python, el objetivo es mandar una entrada que serán
1 y 0 cuando lo registre en Python mediante una conexión mandara un valor en
mysql dependiendo de las veces que se presione el push button será el número de
registros que se insertaran en una base de datos
Requerimientos:
Instalar el MYSQL Python.
Instalar el programa Arduino.
Instalar Python.
Instalar JetBrains PyCharm Community Edition 4.5.2.
Instalar Pyserial.
Objetivos 1. Capturar en la Base de Datos, valores digitales provenientes de una
entrada analógica, cada vez que un determinado se presente.
MATERIAL
Material Descripción Foto
Protoboard Tablero de pruebas con orificios conectados entre sí, habitualmente siguiendo patrones de líneas, en el cual se pueden insertar componentes electrónicos y cables para el armado y prototipo de circuitos electrónicos y sistemas similares.
Cables Macho/Mac
ho
Cables para interconexiones de 6" (15.5 cms) de largo con terminales macho-macho.
Arduino
UNO Plataforma de hardware libre, basada en una placa con un microcontrolador y un entorno de desarrollo, diseñada para facilitar el uso de la electrónica en proyectos multidisciplinares.
4
Resistencias de 1k
Componente que limita el paso de la corriente, es decir, disminuye la corriente, entre más grande sea, la corriente es más pequeña.
2
Potenciómetro
Resistor cuyo valor de resistencia es variable. Se puede controlar la intensidad de corriente.
1 push button
Es un interruptor momentáneo, que inicialmente esta normalmente cerrado.
4
DIAGRAMA DE DISPOSITIVOS
DESARROLLO DE LA PRÁCTICA 1) Como primera fase en el desarrollo de esta práctica se realizó el cableado de
la polarización de la tabla Protoboard el cual nos permitirá alimentar de voltaje
y tierra la misma.
Línea roja de la Protoboard es corriente (VCC):
Línea azul de la Protoboard es tierra (GND):
2) Se realiza la conexión en base al diagrama de dispositivos.
3) Conectamos arduino el puerto serial a nuestro pc o laptop (USB).
4) Abrimos el software Arduino para cargar el siguiente programa. #include <LiquidCrystal.h> LiquidCrystal lcd(12,11,5,4,3,2); int pushButton = 6; void setup() { Serial.begin(9600); lcd.begin(16, 2); pinMode(pushButton,INPUT); } void loop() { lcd.setCursor(0, 1); int valorPushButton = digitalRead(pushButton); int valorPotenciometro = analogRead(A0); if(valorPushButton == HIGH){ Serial.print(valorPotenciometro); Serial.print(" \t"); lcd.print(valorPotenciometro); delay(100); lcd.clear(); } }
5
5) Se crea una base de datos en MYSQL, esto con respecto a los valores que
devolverá el arduino.
6) Se crea el código en Python para sincronizar arduino con la base para así
insertar los valores recibidos de arduino a la base.
import serial
import MySQLdb
from time import sleep
dbConn = MySQLdb.connect("localhost","root","","arduinodb2")
consulta = dbConn.cursor()
port = 'COM3'
ser = serial.Serial(port,9600,timeout=0)
stop = 1
while(stop<=10):
data = ser.readline()
valores = data.split("\t")
if len(data) > 0:
print('id: ',stop)
print('val: ',data)
consulta.execute("INSERT INTO test (id,val) VALUES
(%s,%s)",(stop,valores[0]))
dbConn.commit()
stop+=1
sleep(3)
ser.close()
consulta.close()
7
CONCLUSIONES En esta práctica se ha aprendido a realizar una interacción entre el arduino,
programas como Python y MySQL.
Se adquirieron los conocimientos para saber manipular el código condicionando el
envío de los valores recibidos del potenciómetro en arduino con forme a el valor
que reciba el mismo desde el push button.