Tema 3 Arduino
Tema 3 Arduino
Arduino
índice
1. Introducción a Arduino................................................................................................................................
2. La placa Arduino UNO.................................................................................................................................
3. Programar la placa.......................................................................................................................................
4. Salidas digitales...........................................................................................................................................
1. Introducción a Arduino.
1. ¿Qué es un microcontrolador? ¿Dónde se utilizan?
Es una pequeña placa que funciona como el cerebro del circuito. En muchas
máquinas nuevas como los coches o los teléfonos móviles.
que todo el código del software está publicado y se puede tomar y modificar. Que
todos los planos, materiales y métodos de construcción. Sí, que todo lo que hagan
otras empresas distintas a Arduino tiene que tener otro nombre
7. ¿Cómo se llama la placa Arduino más usada? Indica el nombre de otras dos
placas Arduino.
Arduino UNO es la más usada. Arduino yún y Arduino nano son otras placas de la
marca
Son periféricos que se conectan a la placa para que tenga un uso. Hay módulos de
sensores, módulos de electrónica de potencia, módulos de comunicaciones
9. ¿Qué es IoT? ¿Qué hay que hacer para usar Arduino en un sistema IoT?
las conexiones que tienen varios objetos cotidianos con internet para poder
controlarlos todos desde un dispositivo solo. Conectarle un módulo de internet
10. ¿Qué es una "smart city"? Pon dos ejemplos de sistemas smart city.
una ciudad que utiliza el internet de las cosas (IoT) para mejorar la calidad de vida.
Por ejemplo los buses tienen localizadores para saber cuando van a llegar a su
siguiente parada y sensores de gases para saber cuánto se contamina en la ciudad
5. ¿Qué hay que hacer para que una placa Arduino funcione sin estar
conectada a un ordenador?
7. ¿Para qué sirven las salidas digitales? ¿Qué pines son salidas digitales en
Arduino UNO?
La entrada analógica recibe una tensión que es detectada por la placa y que
después la cpu procesa la información y da un valor de 0 a 1023
9. ¿En qué se diferencian las entradas analógicas de las entradas digitales?
que las entradas digitales solo detectan 2 valores: 0 y 1 mientras que las entradas
analógicas detectan muchos más valores de tensión.
Es el programa que se utiliza para usar la placa Arduino y hacer programas en ella.
Que una está en la web y otra es un programa de ordenador
Son conjuntos de instrucciones que se ejecutan al ser llamadas desde otra parte del
código
pinMode sirve para decir si el pin esta en modo de entrada o en modo de salida,
digitalwrite para cambiar la tensión de un pin y delay para hacer que después de
una acción espere un tiempo determinado
Delay (1000)
Delay (1000)
primero coloca para que el pin 13 tenga alta tensión, después coloca un comando
para que espere un segundo y después repite lo mismo pero esta vez lo coloca para
que no tenga voltaje
Delay (200)
Delay (500)
Delay (1000)
3. Que se encienda y apague el led durante 1 segundo, pero sólo dos veces en
total, no repetidamente. Esto debe suceder cada vez que se encienda la
placa o se pulse el botón Reset. Una pista: La función loop() debe estar
vacía.
void setup() {
Delay (1000)
Delay (1000)
Es un tipo de programación más sencillo que permite que el uso de Arduino sea
incluso aún más accesible para las personas. Arduino Blocks es un programa de
programación visual
4. Salidas digitales
1. ¿Qué hace el microcontrolador de Arduino para encender un actuador
conectado a una de sus salidas digitales?
2. ¿Qué hay que poner en un programa de Arduino para activar la salida digital
8? ¿Y para desactivarla?
Hay que poner primero pinMode(13, OUTPUT); y después tienes que poner
digitalWrite(13, HIGH) y digitalWrite(13, LOW).
es una placa que nos permite conectar distintos componentes para hacer un circuito
electrónico.
6. Modifica el programa para hacer que el led del circuito externo parpadee
cada 250 milisegundos y pruébalo en la placa.
void loop(){
digitalWrite(13, HIGH);
delay(250);
digitalWrite(13, LOW);
delay(250);
para hacer pruebas sin tener que hacer el montaje del circuito. Tinkercad y Wokwi.
Es un valor que se le pone a una palabra en concreto. Que es más simple que
poner el número
8. Busca en ella qué dos valores puede tener una variable de tipo bool.
true y false
Lo que hace es decirle al programa que se cambien pines entre 2 y menor que 5
10. El circuito usa las salidas digitales 2, 3 y 4 para controlar los ledes, ¿cómo
debería ser el código de la versión 3 del programa si se usan las salidas
digitales 5, 6 y 7?
for (int thisPin = 5; thisPin < 8; thisPin++) {
sirven para que el arduino pueda detectar lo que pasa en el exterior. Cuando
reciben 5V de potencia el pin envía esa información al programa.
2. En Arduino los pines de las entradas digitales son los mismos que los de las
salidas digitales, ¿cómo se le dice a Arduino que un pin digital debe funcionar
como entrada? ¿Y como salida?
Lo que hace el código es decirle que si el pin 12 detecta potencia de entrada el pin 2
de potencia.
5. Modifica la versión 1 del programa para hacer que el led esté siempre
encendido y se apague al pulsar el botón. Escribe aquí el código necesario.
if (buttonState == HIGH) {
digitalWrite(ledPin, LOW);
else {
digitalWrite(ledPin, HIGH);
6. Modifica la versión 1 del programa para crear una luz temporizada. Al pulsar
una vez el botón el led deberá encenderse y mantenerse encendido durante
3 segundos. Cuando se acabe este tiempo el led deberá apagarse
automáticamente, como en una luz de escalera. Para conseguirlo debes usar
la función delay(). Escribe aquí el código necesario.
if (buttonState == HIGH) {
digitalWrite(ledPin, HIGH);
delay (3000)
digitalWrite(ledPin, LOW)
else {
digitalWrite(ledPin, LOW);
lo que hace el bucle while es que mientras el botón esté pulsado el led se
encienda y se apague
7. Entradas digitales 2
3. ¿En qué consiste la comunicación serie? Qué código tenemos que poner en
el programa de una placa Arduino para que inicie una comunicación serie con
el ordenador al que está conectada.
Una ventana de información que nos muestra la información que llega desde
Arduino
5. ¿En qué consiste la estructura de programación if... else if... else? Pon un
ejemplo que no salga en la miniunidad.
funcionan como condiciones que se les pone para que mande una información. si no
se da uno pasa al siguiente para ver si se están dando condiciones para mandar
información
void loop()
delay(5000);
pulsador1 = digitalRead(7);
pulsador2 = digitalRead(12);
Serial.println("puertas 1 y 2 abiertas");
digitalwrite(10, HIGH);
} else {
Serial.println("puertas 1 y 2 cerradas");
} else {
if (pulsador1 == 0) {
Serial.println("puerta1 abierta");
DigitalWrite(10, HIGH);
if (pulsador2 == 0) {
Serial.println("puerta2 abierta");
DigitalWrite(10, HIGH)
}
7. Modifica el programa de la miniunidad para que se comporte como sigue: Al
presionar los dos pulsadores se muestra: "Los dos botones están pulsados".
Al presionar solo el pulsador 1: "El botón 1 está pulsado". Al presionar solo el
pulsador 2: "El botón 2 está pulsado". Ningún pulsador presionado: "Ningún
botón está pulsado". Escribe aquí el código.
delay(5000);
pulsador1 = digitalRead(7);
pulsador2 = digitalRead(12);
} else {
} else {
if (pulsador1 == 0) {
Serial.println("boton1 pulsado");
if (pulsador2 == 0) {
Serial.println("boton2 pulsado");
}
8. Sustituye las líneas 15 a 26 del programa de la miniunidad por el siguiente
código:
¿Qué significan las dos líneas verticales paralelas después del primer LOW?
¿Cómo funcionará este programa?
significan que se puede dar una o la otra y que no es necesario que se den las 2
funciona viendo si hay una puerta abierta, si es así entonces comunica que hay
puertas abiertas abiertas. Si no entonces dice que no hay puertas abiertas
8. Entradas analógicas
en que las entradas analógicas detectan valores de entre 0 a 5 V mientras que las digitales
detectan el valor 0 o 5
2. ¿Cuántas entradas analógicas tiene Arduino UNO? ¿Cuáles son los pines de las
entradas analógicas?
que cuanta más luz incide en él más corriente pasa y llega a la entrada analógica. Sí ya que
consigue valores intermedios y no valores 0 o 1
El potenciómetro es una resistencia variable. Por dentro tiene una pista resistiva que une el
terminal A con el C y una placa metálica giratoria unida al B que roza la pista resistiva.
para que el sensor analógico se ponga en modo entrada, para que la comunicación serial
entre el ordenador y el Arduino sea en la frecuencia que tú quieras y para que el Arduino
mande una señal al ordenador
7. ¿Qué son los números que aparecen en el monitor serie en la práctica 1? ¿Qué
ocurre cuando se gira el eje del potenciómetro?
la tensión que llega a la entrada analógica. Que o los números y la tensión aumenta o
disminuye dependiendo de qué dirección hayas girado el potenciómetro
Cuando la tensión que llega a la entrada analógica es mayor o igual a 512 se apaga el led.
En caso contrario se apaga
10. Si la tensión que recibe una entrada analógica en Arduino UNO está comprendida
entre 0 y 5 V, pero el microcontrolador la “traduce” a un valor proporcional
comprendido entre 0 y 1023, ¿cómo se podría obtener la tensión que hay en la
entrada analógica a partir del valor generado por el microcontrolador? Modifica el
programa de la práctica 1 para que muestre la tensión. Si no sabes cómo
solucionarlo, mira en: docs.arduino.cc/built-in-examples/basics/ReadAnalogVoltage.