SISTEMAS DE CONTROL AUTOMÁTICOS AUTOMÁTICOS Y ROBÓTICA 3º ESO 1. Introducción. Un sistem sistema a de contr control ol automá automátic tico o o automa automatis tismo, mo, es un conjun conjunto to de elemen elementos tos técnicos que unidos son capaces de realizar una series de acciones para resolver un problema sin intervención humana. Los Los que vamos a usar usar en nuestr nuestro o curso curso son progr programa amados dos,, que signific significa a que el automatismo funcionará dependiendo de un programa que le haremos a medida de la función a realizar.
. E!"#"nto$ d" un $i$t"#% d" contro!. Nuestro sistema de control va a conten contener er básica básicamen mente te tres tres bloques de dispositivos !lem !lemen ento tos s de proc proces eso o "con "contr trol ol en s#$ s#$ son son los los que se van a programar, recib ecibir irán án dato datos s de los los elementos de entrada para decidir que realizar con los elementos de salida. !n nuestro caso es Arduino. !lementos de entrada serán sensores que se le pueden conectar a nuestro sistema de control, pueden ser pulsadores, interruptores, finales de carrera, ntc, ldr, etc. !lementos de salida van a ser los actuadores, los que va a decidir nuestro programa poner en funcionamiento o parar, como diodos leds, zumbadores, motores, etc. •
•
•
3. E!"#"nto$ &ro'r%#%do.
d"
contro!
!n nuestro caso vamos a utilizar una placa de control program ramable que se llama Arduino, la cual tiene un uso mu% e&tendido por varias cuestiones 'ard(a 'ard(are re libre libre los dise)a dise)ador dores es han puesto a disposición de todo el mundo los circuitos f#sicos de la placa para poder fabricarla. *oft *oft(a (are re libr libre e el soft soft(a (arre que que cont contro rola la la plac placa a tamb tambié ién n está está pues puesto to a disposición de todo el mundo para compartirlo e incluso modificarlo. +omunidad ha% una gran cantidad personas compartiendo, pro%ectos, código % soluciones por internet. recio mu% económico. *implicidad se pueden realizar soluciones de una manera sencilla. •
•
•
• •
3.1 (%rt"$ d" %rduino. -lgo es digital cuando sólo puede tomar dos valores " o /, encendido o apagado$. ines digitales "/ a 0$ sirven para conectar tanto salidas digitales "diodos led, motores, motores, zumbador zumbadores, es, etc$, etc$, como entradas entradas digitales digitales "interrupto "interruptores, res, pulsador pulsadores, es, finales de carrera, etc$.
Programación y robótica robótica 3º ESO
Página 1 de 7
!stos pines cuando se usan como salidas podemos decirles que estén conectados o no, que tengan corriente o no. +uando se usan como entrada detectan cuando los elementos de entrada están cerrados o no. ines gnd "ground$ sirven para cerrar el circuito, son el polo negativo de nuestra alimentación. 1enemos un gnd en la fila de los pines digitales % dos gnd más en la zona de alimentación "po(er$. !ntradas analógicas *irven para introducir en el sistema datos que no toman dos valores, pueden tomar muchos, como temperaturas "con ntc$, luz "con ldr$, etc. *erá objeto de estudio el curso que viene. 2icrocontrolador !s el dispositivo que recibe el programa % hace que se ejecute, as# como controla todos los elementos de la placa. Usb es un conector usb que sirve para dar alimentación a la placa % además comunicarse con el ordenador. -limentación e&terna conector que sirve para alimentar arduino con un elemento e&terno "cargador, pila de 3v, etc$.
). So*t+%r" 'r,*ico &%r% &ro'r%#%r %rduino. Scr%tc- *or Arduino S)A/. *cratch for -rduino "de ahora en adelante *4-$ es una variante de *cratch que sirve para programar de forma gráfica -rduino. !l soft(are es libre % se puede descargar de la (eb o5cial del pro%ecto. ara que -rduino funcione con *4- debe instalarse primero este programa en la placa -rduino con el soft(are de -rduino. La gran ventaja de *4- es que es fácil de programar, % presenta como inconveniente que tiene que estar conectado nuestro arduino permanentemente al ordenador para que se comunique con el programa que está en el mismo.
0. Contro!%r $%!id%$ di'it%!"$ !"d$/ con S)A. !n nuestro paso vamos a empezar a controlar leds, antes de nada debemos aprender como conectar los mismos a nuestro arduino. ráctica . -rduino como pila La primera práctica va a ser utilizar nuestro arduino como pila % encender un diodo led con el mismo. ara ello usar la zona de alimentación de nuestro arduino, conectando la patilla larga de nuestro led "6$ con el pin de 78, % la patilla corta "9$ con el gnd, como indica la figura.
Programación y robótica 3º ESO
Página 2 de 7
ráctica :. +ontrol de led. *e trata de encender % apagar un led conectado al pin 0. !l pin deberá encenderse un tiempo de un segundo % apagarse durante un segundo, esto deberá repetirlo por siempre. -ntes de nada vamos a proceder a conectar el led sin la placa conectada al ordenador "siempre ha% que conectar con la placa sin alimentación$. ara ello conectamos la pata larga del led "6$ al pin 0 "en este caso$ % la corta "9$ al gnd.
-hora procedemos a abrir *4- "con usuario9usuario$ con la placa conectada al ordenador, % programamos las siguientes instrucciones, en las cuales tendremos que utilizar instrucciones del bloque de control "amarillas$ e instrucciones del bloque de movimiento "azules$. +uando usamos la orden ;digital 0 encendido< lo que estamos diciendo es que salga corriente de 78 por el pin 0 "6$ que cerrará el circuito con el gnd "9$, % cuando usamos la orden ;digital 0 apagado< cortamos esa corriente. +omentar que *4- "en la versión más moderna$ puede usar sólo los pines digitales /, , : % 0. ráctica 0. *emáforo simple
Programación y robótica 3º ESO
Página 3 de 7
*e trata de realizar el control de un semáforo simple, para ello tendremos que conectar a nuestro arduino tres leds "rojo, ámbar % verde$. !l verde se debe encender durante 7 segundos, se apagará, se encenderá el ámbar durante segundo, se apagará, % se encenderá el rojo durante 7 segundos, se apagará % se repetirá el proceso por siempre. ara conectarlos lo haremos el rojo al pin 0, el ámbar al pin : % el verde al pin . - los pines siempre se coloca la pata larga del led "6$ % al gnd "9$ la pata corta del led "9$. 'a% un peque)o problema % es que en el pin gnd no cabe más que un una patilla, por tanto tenemos que usar la placa board para solucionarlo de la forma representada en la figura. ráctica 4. !ncendido % apagado de leds con teclas !l objetivo de la práctica es encender un led conectado al pin 0 cuando presionas la tecla flecha izquierda, % apagarlo cuando presionas la tecla derecha. ráctica 7. -pagado % encendido de led con una sola tecla *e trata de encender o apagar un led conectado al pin 0, pulsando sólo la tecla espacio. La técnica en este caso es iniciar el programa apagando el led % poniendo una variable a /. +ada vez que se pulse la tecla espacio comprueba como estaba la variable "a o a /$, enciende o apaga el led seg=n el caso % cambia el valor de la variable. ráctica >. ?bjeto que cuando toca el ratón enciende led -l objeto arduino le vamos a colocar un nuevo disfraz "en nuestro caso un cuenco de gusanitos$, % lo vamos a mover aleatoriamente por la pantalla, nosotros controlaremos otro objeto con el ratón "el dragón$, partimos con 7 puntos % cada vez que nos toque el objeto arduino "cuenco$ nos resta punto % se enciende el led conectado al pin 0. La partida termina cuando tengamos puntos negativos. ?s dejamos el código del personaje que manejamos nosotros "dragón$.
Programación y robótica 3º ESO
Página 4 de 7
?s pongo a continuación el código del objeto arduino con el disfraz de cuenco.
+omentar que los bloques de programación referentes a arduino, sólo se encuentran en los objetos arduino, en los otros no aparecen. ráctica @. +ontrol de led con botón en pantalla *e trata de un objeto arduino con dos disfraces nuevos, uno de botón pulsado % otro sin pulsar. +uando se mantenga pulsado el botón con el ratón, un led conectado al pin 0 debe encenderse % cambiar disfraz a pulsado, en caso contrario debe apagarse % cambiar disfraz a botón sin pulsar. "rograma @a$ ?tra opción es que cambie el estado del botón % del led cada vez que se haga clic en el mismo. "rograma @b$ 8er programas a continuación.
Programación y robótica 3º ESO
Página 5 de 7
7a
7b
0. Contro!%r $%!id%$ %n%!ó'ic%$ !"d$/ con S)A. ráctica A. +ruce de semáforos *e trata de controlar un cruce de semáforos, conectando el primer semáforo a los pines 0 "rojo$ ,: "ámbar$ % "verde$, % el segundo semáforo a los pines 3 "rojo$, > "ámbar$ % 7 "verde$. Los semáforos tienen que estar sincronizados, % cada semáforo pasa por la secuencia de colores rojo9verde9ámbar que se repite. !l encendido de rojo o verde debe ser > segundos % el ámbar segundo. 'a% un peque)o problema a)adido % es que sólo disponemos de tres salidas digitales en *4-, por tanto tendremos que recurrir a las salidas analógicas, pines 3, > % 7. Una salida es analógica cuando puede tomar muchos valores, en concreto en nuestro caso puede tomar valores entre / % :77. +on estas salidas puedo hacer que una led no luzca nada con valor /, o que luzca a tope con valor :77, o bien que luzca en un valor intermedio. !l bloque de instrucciones que lo controla es en este caso el led conectado al pin 3 está luciendo al má&imo. Nota para conectar > leds es análogo "igual$ a conectar 0, ver la práctica 0. ráctica 3. Led que varia su intensidad luminosa con deslizador +reamos una variable en nuestro caso ;luz<, a la representación gráfica de la variable en el escenario le hacemos clic con el botón derecho del ratón % elegimos en el men= que sale la opción ;deslizador< % más tarde hacemos clic de nuevo % elegimos los valores m#nimo % má&imo del mismo que serán /9:77. La idea es que al mover el deslizador cambie la luminosidad del led conectado al pin 3 con el siguiente código.
Programación y robótica 3º ESO
Página 6 de 7
ráctica /. 8ela electrónica *e trata de hacer que la luz de un led ámbar conectado al pin analógico 3 cambie de intensidad de forma aleatoria, además también cambiamos el tiempo que permanece encendida a esa luminosidad de forma aleatoria, con esto conseguimos una vela electrónica.
ráctica . +ontrolar luminosidad de led con ratón *e trata que al mover el ratón a la izquierda o a la derecha del escenario la luminosidad suba, % en el centro del mismo sea /. ?jo los valores nunca pueden ser negativos ni superar los :77, para ello presentamos la siguiente solución.
or Pedro Ruiz Fernández "formaentecnologiaBgmail.com$
Programación y robótica 3º ESO
Página 7 de 7