Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Prctica 3 Guin 4
Informtica Aplicada a la Biologa
Dpto. Ciencias de la Computacin e Inteligencia Artificial
E.T.S. de Ingenieras Informtica y de Telecomunicacin
Universidad de Granada
1.
Introduccin ................................................................................................... 3
1.1. Conociendo Arduino ................................................................................ 3
2. Primeros pasos en computacin fsica .......................................................... 7
3. Percibiendo el mundo exterior .................................................................... 11
4. Ejercicios ...................................................................................................... 14
4.1. Qu hemos aprendido? ........................................................................ 15
1.
Introduccin
En esta cuarta prctica con Python nuestro objetivo es que veis como la programacin
de ordenadores se utiliza en el mundo real. Cmo se programa un frigorfico, una farola o
un semforo. Es lo que se conoce como computacin fsica: el uso de los ordenares para
aplicaciones tangibles.
Es esta prctica utilizaremos un sistema de computacin fsica que se conoce como
Arduino. Es un dispositivo que nos va a permitir transformar las rdenes que demos en
Python en seales elctricas que puedan entender los dispositivos electrnicos.
Una vez que hayis realizado la prctica deberais comprender como se puede utilizar la
programacin para crear todo tipo de mquinas inteligentes: desde una alarma antiincendios hasta un coche.
Arduino
En una placa de pruebas tenemos un conjunto de pines en los que podemos colocar
distintos dispositivos electrnicos. Los pines conectados entre s. Si miris la figura la
zona 1 est conecta de manera vertical, todos los pines en la misma columna estn
conectados. En la zona 2 los pines estn conectados de manera horizontal. Todos los
pines en la misma fila estn conectados.
2.
Nota: recuerda que lo primero que debes de hacer en cada programa es conectar
la placa y configurar los pines digitales como salida, aunque no se usen (esto
est explicado ms abajo).
Una vez que ya habis instalado Arduino y habis comprobado que todas las conexiones
son correctas podemos empezar a realizar programas que tendrn consecuencias
tangibles. Comenzaremos con algo sencillo, encenderemos y apagaremos algunos leds.
Para ello tenemos instalados en la placa de pruebas cinco leds de color rojo o amarillo.
Estos leds son como los de la figura y se van a encender y apagar segn los comandos
que indiquemos.
Para ejecutarlo debers llamar a la siguiente funcin al final del programa (recuerda que
antes de eso debes haber realizado la conexin con Arduino y configurado los pines como
salida):
>> destellos(mi_arduino,4)
1. Modifica el cdigo de destellos para que en vez de utilizar slo dos leds utilice
todos los leds disponibles (como si fuese una luz de navidad, un cylon o el coche
Python: Computacin fsica Informtica Aplicada a la Biologa DECSAI UGR
fantstico).
2. Modifica el valor dado en pause(1) para que las luces se muevan ms deprisa.
3. Qu pasa si utilizamos pause() en vez de pause(1)? Aviso: La respuesta no es
que se queda parado.
10
3.
Nota: Debes tener los leds apagados para realizar correctamente esta seccin.
Una vez que hemos aprendido como utilizar un programa para encender y apagar leds
vamos a ver como percibir el mundo exterior utilizando sensores electrnicos. Para ello
vamos a comenzar midiendo la temperatura de la sala.
11
12
13
4.
Ejercicios
Para terminar, se proponen al alumno una serie de ejercicios para afianzar los
conocimientos adquiriros. As mismo, se pretende que el alumno sea capaz de imaginar
posibles aplicaciones reales utilizando lo aprendido hasta ahora.
1.
Modifica el cdigo de la funcin encendido_automatico para que funcione
correctamente. Luego describe cual es su funcionalidad y cmo se consigue implementar dicha
funcionalidad.
import time
def encendido_automatico(ard):
#funcion encendido_automatico
#Enciende los leds si es de noche
#Si hay luz los apaga
#-------------------------------------#Repito durante unos diez segundos
for cont in range(50):
#Veo qu luminosidad hay
luz = ard.readLight(5)
#Si es menor que un valor dado enciendo la farola
if luz < 0.9:
ard.ledOn([9,10,11,12,13])
else: #Apago la farola
ard.ledOff([9,10,11,12,13])
time.sleep(.2) #para unas decimas antes de volver a repetir
14
componentes
electrnicos:
Leds,
sensores
de
15
Este obra est bajo una licencia de Creative Commons Reconocimiento-NoComercial-CompartirIgual 4.0
Internacional.
Para ver una copia de esta licencia visita:
http://creativecommons.org/licenses/by-sa/4.0/
O manda una carta a:
Creative Commons, 171 Second Street, Suite 300, San Francisco, California 94105, USA.
16