Saltar navegación

Activa JavaScript para disfrutar de los vídeos de la Mediateca.

Arduino: Comunicación serie II - Contenido educativo

Ajuste de pantalla

El ajuste de pantalla se aprecia al ver el vídeo en pantalla completa. Elige la presentación que más te guste:

Subido el 14 de enero de 2021 por David G.

159 visualizaciones

Descargar la transcripción

Hola, en la práctica de hoy vamos a ver la segunda parte de la comunicación a través del puerto serie. 00:00:01
En este caso lo que vamos a ver, vamos a verlo en el simulador y también en la oralidad, 00:00:08
es cómo se pueden mandar órdenes desde el ordenador a la placa Arduino a través de este cable, 00:00:15
que es la comunicación serie. 00:00:21
Entonces, como siempre, vamos a empezar con la simulación. 00:00:24
tengo yo aquí cuatro leds conectados, cada uno de ellos a los terminales 13, 12, 11 y 10 00:00:28
con los tocados de colores y todos ellos a una resistencia de protección que está subida a la tierra 00:00:38
es el montaje habitual para encender y apagar los leds, utilizaríamos 13, 12, 11 y 10 como salidas digitales 00:00:44
nada nuevo en contra de lo que es la circuitería, el montaje 00:00:53
La novedad está en el código. En el código vamos a utilizar esto, leer del puerto serie. 00:00:57
¿Por qué? ¿Qué hace el Arduino? Bueno, el Arduino va a leer lo que le viene a través del puerto serie. 00:01:10
Este conector que hay aquí lee lo que le viene, lee el número que hay ahí y lo guarda en una variable que le llamamos serie. 00:01:16
Vale, muy bien. Entonces, esa variable serie, dependiendo de qué valores toma, tomaremos distintos valores. 00:01:23
Por ejemplo, si este número que nos ha entrado por aquí vale 1, podemos coger y poner el pasador 13 en alto. 00:01:29
¿Por qué 1? Pues porque queremos, podríamos haber dicho que valiera 2, 3, 4, 5, lo que queramos. 00:01:36
Es una codificación. Cuando entra un determinado valor, hacemos una acción que está codificada por ese valor. 00:01:40
Podemos también luego ir añadiendo más este bloque sí, puede repetirse. 00:01:47
podría haber otro grupo que sí, que diga si serie vale 3, pues entonces pongo el 12 en alta o lo que sea, ¿vale? 00:01:51
En este momento vamos a trabajar solo con esto. 00:01:58
Entonces, vamos a darle a la simulación y a ver qué pasa. 00:02:00
Pues acordaros que para trabajar con el monitor serie tenemos que clicar en este botoncito de abajo. 00:02:07
Entonces, si yo pongo el puerto serie, pongo 4, pongo 5, pongo 6, no pasa nada, que es lo que uno espera. 00:02:14
Y si pongo 1, debería ponerse el led rojo encendido, ¿verdad? 00:02:21
bueno, pues pulso y no ha pasado nada 00:02:24
bueno, ¿eso por qué? ¿por qué es? 00:02:27
pues es por 00:02:29
nos aparece un problema entre comillas 00:02:30
que es que por una vez 00:02:33
si vamos a texto 00:02:34
aquí vemos muy bien la correspondencia 00:02:37
este, definir serie 00:02:40
leer serie, lo que hace es que 00:02:41
esta línea corresponde con el primer rojo 00:02:43
¿ok? lo que hace es leer y lo guarda 00:02:45
la variable serie, esta segunda es el 00:02:47
sí, con inglés sí, si la serie vale 00:02:49
uno, entonces pone el pasador 00:02:51
13 en alta, ¿vale? o sea que estas tres líneas 00:02:53
corresponden con estos tres bloques 00:02:55
bueno, pues ha habido un problema, como lo que nosotros estamos 00:02:56
mandando es enteros, esta función 00:02:59
que ha decidido usar 00:03:01
el traductor de bloques a código 00:03:03
no es la más adecuada, hay que cambiarla 00:03:05
entonces lo que yo voy a hacer es 00:03:07
para poder cambiarla, si intento escribir aquí no me deja 00:03:09
porque yo lo modifico aquí en los bloques 00:03:11
no tengo un bloque específico 00:03:13
para leer enteros 00:03:15
entonces lo que tengo que hacer es pasarme a texto 00:03:17
vamos por primera vez a trabajar con texto 00:03:19
entonces le doy aquí 00:03:21
Y me dice, cuidado, ¿estás seguro de que desea cerrar el editor de bloques? 00:03:23
Esto es así porque una vez que yo pase el editor de bloques, ya no me deja volver hacia atrás. 00:03:27
No me deja volver nunca más al editor de bloques, por lo menos para este circuito. 00:03:31
Lo que podéis hacer, si queréis, es hacer una copia, una vez llegados a este punto, hacer una copia, 00:03:36
y tener una copia ahí por si acaso, o bien, otra opción es la que os voy a decir ahora. 00:03:40
Bueno, yo en cualquier caso me vuelvo al texto, que lo que quiero es cambiar, le digo que continuar. 00:03:44
Aquí tengo el texto, ya no puedo trabajar con bloques, ya no me da esa opción. 00:03:48
si quisiera volver a bloque, lo borraría 00:03:51
entonces lo que yo quiero es que en vez de usar la función 00:03:54
serial.read, voy a usar esta función 00:03:56
serial.parse 00:03:59
y ya está 00:04:00
vamos a probar ahora, le doy a iniciar 00:04:03
simulación 00:04:06
y de nuevo, si escribo 00:04:07
aquí, 2, 3 00:04:10
4, no pasa nada 00:04:12
si escribo 1, debería encenderse 00:04:14
vamos a ver, mando 1 00:04:16
y se ha encendido 00:04:18
efectivamente era tan fácil 00:04:21
como cambiar esa 00:04:24
esa función 00:04:26
entonces, el ejercicio 00:04:27
¿qué es lo que yo os pido? bueno, pues os pido 00:04:30
que hagáis una codificación 00:04:32
es decir, que igual que hemos hecho 00:04:35
tres bloques 00:04:36
estas tres líneas para encender un LED 00:04:38
que lo hagáis para este, para este y para este 00:04:40
y lo mismo que lo hagáis para apagar 00:04:42
¿vale? entonces sería 00:04:44
empezar otra vez y crear 00:04:46
unos bloques que, pues diga, si serie 00:04:48
es igual a 1, enciende el 13 00:04:50
si serie es igual a 2, enciende 00:04:52
el 12, si es igual a 3, enciende 00:04:54
el 11, si es igual a 4, enciende el 10 00:04:56
lo que queráis, a mí la codificación me da igual 00:04:58
y luego lo mismo, si serie es igual a 5 00:05:00
apaga el 13 00:05:02
eso es una posibilidad, otra 00:05:03
es coger esto 00:05:06
y hacer copiar y pegar 00:05:07
si yo estas tres líneas las voy 00:05:09
copiando y pegando 00:05:12
bueno, ni siquiera 00:05:13
con hacer una única lectura, me vale 00:05:15
yo leo una vez y lo que voy haciendo es 00:05:18
Son estas dos líneas, es comparando las lecturas. 00:05:20
Si serie que he leído vale 2, lo que sea. 00:05:24
Si serie que he leído vale 3, se puede ir haciendo copiar y pegar. 00:05:27
Si yo esto lo copio y lo pego aquí, 00:05:31
luego lo puedo modificar a mi jardín de aire. 00:05:35
Me he equivocado. 00:05:38
El problema de trabajar con el texto es que puede ser complicado. 00:05:39
Es fácil que os equivocéis. 00:05:44
Este cierre va con esta apertura. 00:05:46
Entonces, si yo elijo, lo puedo copiar incluido esto, ¿vale? 00:05:49
Lo copiaría así, y lo iría pegando, con las distintas posibilidades. 00:05:53
Si serie vale 2, entonces se podría poner el 12 en high, o el 12 en low, o el 13 en low, lo que queráis. 00:05:57
¿Vale? Eso es una posibilidad que es lo mismo que ir repitiendo los 6. 00:06:02
¿Vale? 00:06:07
Se puede trabajar tanto con bloques como con código. 00:06:08
Entonces, ese sería el ejercicio. 00:06:11
Hacer un programa para... 00:06:12
Que lo podéis programar con bloques, perfectamente, ¿vale? 00:06:16
porque vosotros lo vais a hacer en el simulador 00:06:19
yo he querido utilizar el texto 00:06:20
porque me lo voy a llevar 00:06:22
el IDE de Arduino, que lo he llevado 00:06:24
de hecho lo tengo aquí, pero no os enseño 00:06:26
la parte de arriba 00:06:28
y lo que voy a hacer es 00:06:29
mandar mi programita 00:06:32
a la placa Arduino real, para que veáis 00:06:33
cómo funciona esto en la vida real 00:06:38
que es donde de verdad tiene sentido 00:06:39
es mucho más 00:06:41
interesante, entonces voy a mandar este programa 00:06:43
se encenden 00:06:46
las lucecitas estas, la habéis visto parpadear 00:06:48
que estaba recibiendo un código, entonces yo ahora mismo, herramientas, monitor serie, 00:06:50
y lo que voy a hacer es ir mandando códigos, yo lo que he hecho es que si mando un 12, 00:06:59
se enciende, perdón, si mando, los tengo conectados a 13, 12 y 11, entonces si mando 00:07:03
un 13 se encenderá el que tengo conectado a 13 que es el verde, con una vez a la codificación 00:07:09
vamos a ver si tengo algo mal conectado 00:07:19
en principio está todo bien conectado 00:07:28
ah, ¿cuál es mi problema? 00:07:33
mirad, que me he llevado el código 00:07:39
pero lo he puesto mal, tengo que cambiarlo ahí 00:07:42
el parse int este 00:07:44
vale, lo he cambiado en la simulación 00:07:45
pero no me he acordado de cambiarlo aquí en la 00:07:48
¿lo veis aquí el parse int? bueno, pues lo voy a compilar 00:07:49
otra vez para asegurarme que está todo bien 00:07:52
no ha dado ningún error en principio 00:07:53
Pío, no, y lo que voy a hacer es mandarlo ahora. 00:07:56
Y entonces repito ahora la jugada. 00:08:03
Si mando el 13, ahora sí debería encenderse el LED verde. 00:08:05
Efectivamente, no había cambiado en el código ese. 00:08:09
Si mando un 12, se encenderá el otro. 00:08:11
Y si mando un 11, se encenderá el otro. 00:08:14
Y ahora, si quiero apagarlos, los he codificado que el 113 me apague el 13. 00:08:17
¿Y por qué 113? Porque he querido, pudiera ser un 5. 00:08:21
Bueno, 113. ¿Me apaga ese? Sí. 00:08:24
el 111 me apagará el 11 00:08:26
porque está programado así 00:08:29
y el 112 me apagará el otro 00:08:31
porque está programado así 00:08:33
eso ha sido mi codificación 00:08:35
fijaros que chulada es esto 00:08:37
que yo aquí desde el teclado, desde el ordenador 00:08:39
estoy controlando 00:08:41
unos nets 00:08:42
que están conectados al arduino 00:08:45
puedo desde mi ordenador controlar el arduino 00:08:47
esa es la clave 00:08:50
de la comunicación seria 00:08:52
que pueden arduino y el ordenador intercambiar 00:08:53
bueno, pues este es el ejercicio y esto es lo que tenéis que hacer 00:08:55
tenéis que hacer esto mismo que yo he hecho 00:08:58
en la vida real, con un ataque real 00:09:00
lo tenéis que hacer en la 00:09:02
en la simulación, vale 00:09:03
bueno, ya lo tenéis, es facilito 00:09:05
Autor/es:
David Gonzalez Arroyo
Subido por:
David G.
Licencia:
Reconocimiento - No comercial - Compartir igual
Visualizaciones:
159
Fecha:
14 de enero de 2021 - 0:18
Visibilidad:
Público
Centro:
IES MARIE CURIE Loeches
Duración:
09′ 09″
Relación de aspecto:
16:10 El estándar usado por los portátiles de 15,4" y algunos otros, es ancho como el 16:9.
Resolución:
1152x720 píxeles
Tamaño:
20.78 MBytes

Del mismo autor…

Ver más del mismo autor


EducaMadrid, Plataforma Educativa de la Comunidad de Madrid

Plataforma Educativa EducaMadrid