1 00:00:00,000 --> 00:00:06,240 Hola, en este tutorial vamos a iniciar la instalación del software que necesitamos 2 00:00:06,240 --> 00:00:12,339 para montar nuestros circuitos de Internet de las Cosas. 3 00:00:13,580 --> 00:00:24,679 Entonces, como vamos a utilizar un broker de MQTT, vamos a instalarnos el mosquito, 4 00:00:24,679 --> 00:00:32,939 que es el software libre. Entonces, abrimos un navegador y nos vamos a la página de mosquito. 5 00:00:38,060 --> 00:00:39,219 Con dos dis. 6 00:00:43,399 --> 00:00:45,299 Aquí está, le damos a Download. 7 00:00:50,299 --> 00:00:52,719 Vale, vamos a ver. 8 00:00:54,679 --> 00:01:02,140 Aquí lo tenemos, la distribución que estamos utilizando, la Max, es una Ubuntu, 9 00:01:03,880 --> 00:01:13,879 entonces podemos instalarlo directamente como un paquete cualquiera de los que están en los repositorios de Ubuntu. 10 00:01:15,359 --> 00:01:22,299 Vale, entonces lo que hacemos es añadir a los repositorios del mosquito. 11 00:01:24,680 --> 00:01:30,380 Copiándonos esta orden y pegándola en el terminal. 12 00:01:32,120 --> 00:01:35,540 Para pegarla en el terminal podemos hacer Control-Shift-V. 13 00:01:35,540 --> 00:01:39,540 Nos va a pedir la contraseña del administrador. 14 00:01:47,840 --> 00:01:48,840 Vaya. 15 00:01:48,840 --> 00:01:48,920 Vaya. 16 00:01:54,680 --> 00:01:56,320 Vamos a trabajar a lo que me calla la página web. 17 00:01:56,320 --> 00:02:04,520 Es. 18 00:02:04,520 --> 00:02:16,840 Vamos a entrar y, ahí, se ha descargado ya el repositorio. 19 00:02:16,840 --> 00:02:18,000 Ar persistence. 20 00:02:18,000 --> 00:02:20,080 Vamos a amortizar. 21 00:02:20,080 --> 00:02:21,480 Centrar en la opción gestionar. 22 00:02:21,480 --> 00:02:22,680 Ya vemos qué tenemos. 23 00:02:22,680 --> 00:02:23,900 Cliccamos en swollen Terminal. 24 00:02:23,900 --> 00:02:24,480 Ahora descarga porque no necesitamos una nada de esto. 25 00:02:24,479 --> 00:02:49,479 lo que hace es mirar a ver que paquetes nuevos hay en todos esos 26 00:02:49,479 --> 00:03:08,479 entonces ahora para instalarlo usamos sudo apt-get install mosquito 27 00:03:08,479 --> 00:03:18,479 decimos que si 28 00:03:18,480 --> 00:03:43,480 y ya lo tenemos instalado 29 00:03:43,480 --> 00:03:47,480 vamos a ver si aquí hay algún error 30 00:03:47,480 --> 00:03:48,480 vamos a ver si aquí hay algún error 31 00:03:48,480 --> 00:03:51,480 una instrucción 32 00:03:51,480 --> 00:03:53,480 una instrucción 33 00:03:53,480 --> 00:03:55,480 un poco más 34 00:03:55,480 --> 00:04:03,480 luego está la cuestión de si queremos que el mosquito se inicie como un servicio al arrancar el equipo 35 00:04:03,480 --> 00:04:07,480 o si queremos arrancarlo mal 36 00:04:07,480 --> 00:04:09,480 inicialmente tenemos ya instalado el mosquito 37 00:04:09,480 --> 00:04:13,480 ahora vamos a instalarnos Node-REP 38 00:04:13,480 --> 00:04:15,480 ahora vamos a instalarnos Node-REP 39 00:04:15,480 --> 00:04:17,480 ahora vamos a instalarnos Node-REP 40 00:04:17,480 --> 00:04:32,480 nos vamos a kitchen start 41 00:04:32,480 --> 00:04:38,480 running locally 42 00:04:38,480 --> 00:04:42,480 y ahora podemos utilizar un script para instalar 43 00:04:42,480 --> 00:04:46,480 un script que es un conjunto de líneas de comandos 44 00:04:46,480 --> 00:04:47,480 pero que ya vienen en un archivo 45 00:04:47,480 --> 00:04:53,480 de manera que no tenemos que irlas copiando o tecleando una detrás de otra 46 00:04:53,480 --> 00:04:59,480 de manera que no tenemos que irlas copiando o tecleando una detrás de otra 47 00:04:59,480 --> 00:05:05,480 esto nos sirve porque max es un sistema operativo basado en linear 48 00:05:05,480 --> 00:05:11,480 porque en realidad por debajo lo que tiene es una versión de Ubuntu 49 00:05:11,480 --> 00:05:13,480 porque en realidad por debajo lo que tiene es una versión de Ubuntu 50 00:05:13,480 --> 00:05:20,480 vamos a hacerle caso 51 00:05:20,480 --> 00:05:23,480 y vamos a instalar primero el Essential Git 52 00:05:23,480 --> 00:05:26,480 para asegurarnos que está en NPM 53 00:05:26,480 --> 00:05:28,480 para asegurarnos que está en NPM 54 00:05:28,480 --> 00:05:32,480 y que NPM puede bajarnos de Git 55 00:05:32,480 --> 00:05:36,480 que es donde van a estar almacenados los archivos 56 00:05:36,480 --> 00:05:40,480 primero nos copiamos esto 57 00:05:40,480 --> 00:05:42,480 primero nos copiamos esto 58 00:05:42,480 --> 00:05:44,480 primero nos copiamos esto 59 00:05:44,480 --> 00:05:58,480 verdad deine 60 00:06:08,480 --> 00:06:10,480 y una vez que haya terminado 61 00:06:10,480 --> 00:06:11,480 vamos a ejecutar el script 62 00:06:11,480 --> 00:06:12,480 y una vez que haya terminado vamos a ejecutar el script 63 00:06:12,480 --> 00:06:22,180 copiando y pegando 64 00:06:22,180 --> 00:06:23,259 estas líneas 65 00:06:23,259 --> 00:06:30,259 vale, si queremos hacerlo 66 00:06:36,480 --> 00:06:38,420 a esta pregunta le decimos que no 67 00:06:38,420 --> 00:06:40,759 porque no vamos a utilizar 68 00:06:40,759 --> 00:06:41,780 una Raspberry Pi 69 00:06:41,780 --> 00:06:42,720 para correr 70 00:06:42,720 --> 00:06:44,780 no de red, sino que vamos a utilizar 71 00:06:44,780 --> 00:06:47,060 los ordenadores del instituto 72 00:06:47,060 --> 00:06:52,860 vale, y ahora 73 00:06:52,860 --> 00:06:55,060 nos va informando 74 00:06:55,060 --> 00:06:56,140 de los pasos que va dando 75 00:07:05,760 --> 00:07:07,700 nos va a instalar Node.js 76 00:07:07,700 --> 00:07:10,620 que si recordáis 77 00:07:10,620 --> 00:07:11,120 teníamos 78 00:07:11,120 --> 00:07:11,380 algo malo 79 00:07:11,780 --> 00:07:13,460 un problema para instalarlo 80 00:07:13,460 --> 00:07:14,980 en los servidores de Windows 81 00:07:14,980 --> 00:07:17,540 básicamente por eso 82 00:07:17,540 --> 00:07:19,700 estamos haciéndolo aquí 83 00:07:19,700 --> 00:07:37,360 vale, mientras esto se va 84 00:07:37,360 --> 00:07:39,860 se va haciendo 85 00:07:39,860 --> 00:07:41,720 vamos a echarle un vistazo 86 00:07:41,780 --> 00:07:45,780 a esta página 87 00:07:45,780 --> 00:07:50,060 donde tenemos 88 00:07:50,060 --> 00:07:51,280 instrucciones 89 00:07:51,280 --> 00:08:01,380 sobre cómo utilizar 90 00:08:01,380 --> 00:08:03,540 el SP8266 91 00:08:03,540 --> 00:08:06,480 con el QTT 92 00:08:06,480 --> 00:08:08,580 y con el R 93 00:08:11,780 --> 00:08:16,780 esto es lo que estamos haciendo 94 00:08:16,780 --> 00:08:19,780 bueno, esto ya lo hemos hecho en realidad 95 00:08:19,780 --> 00:08:29,780 aquí nos da 96 00:08:29,780 --> 00:08:31,780 nos preguntamos por la versión 97 00:08:31,780 --> 00:08:33,779 para ver que realmente está instalado 98 00:08:33,779 --> 00:08:35,779 y poco más 99 00:08:35,779 --> 00:08:37,779 y poco más 100 00:08:37,779 --> 00:08:39,779 y poco más 101 00:08:39,779 --> 00:08:41,060 y poco más 102 00:08:41,060 --> 00:08:41,259 y poco más 103 00:08:41,259 --> 00:08:41,420 y poco más 104 00:08:41,420 --> 00:08:41,460 y poco más 105 00:08:41,460 --> 00:08:41,560 y poco más 106 00:08:41,560 --> 00:08:45,140 y poco más 107 00:08:45,140 --> 00:08:45,820 vamos a entrar aquí 108 00:08:45,820 --> 00:08:48,860 a ver si hay 109 00:08:48,860 --> 00:08:50,720 mientras tanto 110 00:08:50,720 --> 00:08:53,280 el instalador de este lado 111 00:08:53,280 --> 00:08:55,540 nos está preguntando 112 00:08:55,540 --> 00:08:56,360 por el archivo 113 00:08:56,360 --> 00:08:56,960 donde queremos 114 00:08:56,960 --> 00:08:59,680 guardar 115 00:08:59,680 --> 00:09:01,560 la configuración 116 00:09:02,080 --> 00:09:04,200 vamos a decirle 117 00:09:04,200 --> 00:09:04,620 que ahí 118 00:09:04,620 --> 00:09:07,560 el 119 00:09:08,260 --> 00:09:09,560 archivo 120 00:09:11,560 --> 00:09:14,140 en vuestro caso 121 00:09:14,140 --> 00:09:19,580 si lo vamos a ir haciendo ahí 122 00:09:19,580 --> 00:09:23,040 no vamos a utilizar 123 00:09:23,040 --> 00:09:24,140 user security 124 00:09:24,140 --> 00:09:26,780 así que le damos a la flecha para bajar 125 00:09:26,780 --> 00:09:29,580 esto nos ahorra tener que haber ponido una password 126 00:09:29,580 --> 00:09:33,620 en realidad como está instalado localmente 127 00:09:33,620 --> 00:09:35,940 pues no es un riesgo de seguridad 128 00:09:35,940 --> 00:09:39,280 vale 129 00:09:39,280 --> 00:09:41,000 vamos a utilizar 130 00:09:41,000 --> 00:09:43,700 un repositorio de git local 131 00:09:43,700 --> 00:09:45,639 para tener un control de versiones 132 00:09:45,639 --> 00:09:46,159 pues no 133 00:09:46,159 --> 00:09:47,860 lo dejamos como está 134 00:09:47,860 --> 00:09:49,159 le damos a 20 135 00:09:49,159 --> 00:09:52,299 ¿qué nombre van a tener 136 00:09:52,299 --> 00:09:58,059 los archivos de los flows? 137 00:09:58,299 --> 00:09:59,679 para configuración 138 00:09:59,679 --> 00:10:00,519 pues así que tiene 139 00:10:00,519 --> 00:10:05,299 y ahora tenemos que poner 140 00:10:05,299 --> 00:10:07,259 una frase para encriptar 141 00:10:07,259 --> 00:10:08,360 el archivo 142 00:10:08,360 --> 00:10:10,720 esto es como poner una password 143 00:10:10,720 --> 00:10:10,980 vale 144 00:10:11,000 --> 00:10:12,240 así que poned algo 145 00:10:12,240 --> 00:10:15,000 que vayáis a recordar 146 00:10:15,000 --> 00:10:17,580 por ejemplo 147 00:10:17,580 --> 00:10:20,460 poned 148 00:10:20,460 --> 00:10:27,000 digitalización 149 00:10:27,580 --> 00:10:28,740 sin acento 150 00:10:28,740 --> 00:10:31,080 4 151 00:10:31,080 --> 00:10:32,820 vale 152 00:10:32,820 --> 00:10:37,399 de nuevo no estamos en un entorno 153 00:10:37,399 --> 00:10:39,700 sensible así que no tenemos que tener 154 00:10:39,700 --> 00:10:40,740 tanto cuidado con la seguridad 155 00:10:40,740 --> 00:10:40,980 vale 156 00:10:41,000 --> 00:10:42,299 vamos a enter 157 00:10:42,299 --> 00:10:45,639 el tema para el editor 158 00:10:45,639 --> 00:10:47,340 el que tiene por defecto 159 00:10:47,340 --> 00:10:50,679 y ahora 160 00:10:50,679 --> 00:10:51,419 el 161 00:10:51,419 --> 00:10:55,580 el componente de edición de texto 162 00:10:55,580 --> 00:10:57,279 para utilizar el editor de Node.R 163 00:10:57,279 --> 00:10:59,000 dejamos el de por defecto 164 00:10:59,759 --> 00:11:03,279 y que si queremos 165 00:11:03,279 --> 00:11:05,799 que Node.R 166 00:11:05,799 --> 00:11:06,259 pueda 167 00:11:06,259 --> 00:11:09,240 cargar 168 00:11:09,240 --> 00:11:10,480 módulos externos 169 00:11:10,480 --> 00:11:12,480 vemos que si 170 00:11:12,480 --> 00:11:16,480 y ya está 171 00:11:16,480 --> 00:11:18,480 vale 172 00:11:18,480 --> 00:11:20,480 volvemos aquí 173 00:11:20,480 --> 00:11:22,480 habíamos ido 174 00:11:22,480 --> 00:11:24,480 de la página en la que 175 00:11:24,480 --> 00:11:26,480 usamos Mosquito con Node.R 176 00:11:26,480 --> 00:11:28,480 igual a SP8266 177 00:11:28,480 --> 00:11:30,480 a la página 178 00:11:30,480 --> 00:11:32,480 inicial de instalación 179 00:11:32,480 --> 00:11:34,480 del Mosquito 180 00:11:34,480 --> 00:11:36,480 aquí tenéis una descripción 181 00:11:36,480 --> 00:11:38,480 como os conté pues un 182 00:11:38,480 --> 00:11:40,480 broker de MQTT lo que hace es que 183 00:11:40,480 --> 00:11:42,480 es redistribuir mensajes 184 00:11:42,480 --> 00:11:46,480 a través de un sistema de suscripción 185 00:11:46,480 --> 00:11:50,480 los mensajes se publican en un tópico 186 00:11:50,480 --> 00:11:54,480 si estás suscrito a ese tópico los recibes 187 00:11:54,480 --> 00:11:56,480 lo puedes publicar 188 00:11:56,480 --> 00:11:58,480 puedes recibir 189 00:11:58,480 --> 00:12:00,480 hacer ambas cosas 190 00:12:00,480 --> 00:12:02,480 o hacer una sola de ellas 191 00:12:02,480 --> 00:12:04,480 bien 192 00:12:04,480 --> 00:12:06,480 entonces 193 00:12:06,480 --> 00:12:08,480 vamos a 194 00:12:08,480 --> 00:12:10,480 llegar aquí y ahora 195 00:12:10,480 --> 00:12:20,500 esta es la línea que os decía antes, con esta línea cuando la ejecutemos lo que hacemos 196 00:12:20,500 --> 00:12:29,200 es que el mosquito service funcione como un servicio del sistema que se inicia automáticamente 197 00:12:29,200 --> 00:12:46,240 en el inicio, vamos a copiarla y la pegamos aquí, ahí está, si queremos ahora comprobar 198 00:12:46,240 --> 00:12:54,460 que está instalada la versión que tenemos, copiamos y pegamos a la orden guión V que 199 00:12:54,460 --> 00:12:59,020 nos da la versión, que nos dice que tenemos esta versión de aquí. 200 00:12:59,200 --> 00:13:07,300 También nos da un error, ¿por qué?, porque en realidad le estamos diciendo que abra 201 00:13:07,300 --> 00:13:14,259 un mosquito que ya está abierto, pero esto no es un problema, aquí vemos también en 202 00:13:14,259 --> 00:13:26,360 qué puerto está funcionando la comunicación con el mosquito broker, es el 1883, pues con 203 00:13:26,360 --> 00:13:29,180 esto tenemos instalado el mosquito, tenemos instalado la nueva red, tenemos instalado 204 00:13:29,180 --> 00:13:29,200 el mosquito, tenemos instalado la nueva red, tenemos instalado la nueva red, tenemos instalado 205 00:13:29,200 --> 00:13:38,560 la nueva red, vamos a iniciar noderred, para iniciar noderred tenemos que hacer node 206 00:13:38,560 --> 00:13:39,440 guión red. 207 00:13:39,440 --> 00:13:59,020 Aquí nos dice que versión está, en realidad yo estaba esperando que nos apareciera aquí 208 00:13:59,020 --> 00:13:59,180 una línea diciéndonos 209 00:13:59,180 --> 00:14:04,640 que está comunicándose con el servidor mosquito 210 00:14:04,640 --> 00:14:07,120 pero como todavía no hemos configurado un nodo de red 211 00:14:07,120 --> 00:14:10,620 entonces el nodo de red lo iniciamos así 212 00:14:10,620 --> 00:14:12,800 y ahora no cerramos este terminal 213 00:14:12,800 --> 00:14:16,700 porque entonces mataríamos el proceso y se acabaría 214 00:14:16,700 --> 00:14:19,480 ¿dónde podemos ver el nodo de red? 215 00:14:19,480 --> 00:14:26,520 el nodo de red lo vamos a ver en la dirección local de nuestro ordenador 216 00:14:26,520 --> 00:14:28,840 a través de un navegador 217 00:14:28,840 --> 00:14:34,600 entonces ponemos http://localhost 218 00:14:34,600 --> 00:14:38,440 así nos ahorramos el tener que escribir la IP local 219 00:14:38,440 --> 00:14:44,080 dos puntos y ahora el puerto para nodo de red es el 1880 220 00:14:45,920 --> 00:14:50,340 recordar que para el mosquito aquí tenéis el puerto 221 00:14:50,340 --> 00:14:53,379 esta es la dirección 127.0.0.1 222 00:14:53,379 --> 00:14:57,120 en lugar de 127.0.0.1 hemos puesto localhost que es lo mismo 223 00:14:57,120 --> 00:14:58,080 ¿verdad? 224 00:14:58,840 --> 00:15:03,840 y aquí ponemos el puerto 225 00:15:03,840 --> 00:15:07,500 recordar que mosquito está en el 1883 226 00:15:07,500 --> 00:15:09,500 nodo de red en el 1880 227 00:15:09,500 --> 00:15:12,000 entonces ahora le damos al Enter 228 00:15:12,000 --> 00:15:14,000 y aquí se nos abre ya nodo de red 229 00:15:19,800 --> 00:15:21,420 bueno 230 00:15:21,420 --> 00:15:23,280 pues esto 231 00:15:23,280 --> 00:15:26,240 vamos a ver si nodo de red se comunica con mosquito 232 00:15:26,240 --> 00:15:27,920 voy a cerrar 233 00:15:27,920 --> 00:15:33,280 Esto podéis darle una vuelta y ver las novedades que hay en la última versión, pero no es tan importante. 234 00:15:35,040 --> 00:15:45,500 Vamos a ver cómo en los bloques que tenemos aquí tenemos las conexiones al MQTT broker. 235 00:15:45,500 --> 00:15:57,980 Ponemos este nodo, hacemos doble clic y vamos a añadir un broker nuevo. 236 00:16:00,600 --> 00:16:07,720 Ponemos un nombre, por ejemplo, mi ordenador. 237 00:16:07,720 --> 00:16:14,659 Y aquí el servidor, como lo demuestra la local, podemos ponerlo cargos. 238 00:16:15,500 --> 00:16:22,700 Y esto lo dejamos como está, el puerto, veis que es el 183, el que habíamos visto que está aquí. 239 00:16:23,720 --> 00:16:29,960 Conectar automáticamente, el protocolo lo dejamos y pegar y mantener, y usar sesiones. 240 00:16:29,960 --> 00:16:41,779 Y ahora aquí tendríamos que poner el tópico al que se va a suscribir. 241 00:16:44,779 --> 00:16:45,460 Bueno. 242 00:16:45,500 --> 00:17:02,759 Esto cuando hagamos el programa, pues ya lo tenemos más claro, pero imaginaos que se llame ejercicio1-temperatura. 243 00:17:05,519 --> 00:17:07,880 ¿Por qué estoy poniéndole barra temperatura? 244 00:17:07,880 --> 00:17:14,880 Pues porque va a haber otro tópico que sea barra humedad. 245 00:17:15,500 --> 00:17:20,500 Vamos a utilizar un sensor de temperatura de humedad. 246 00:17:20,500 --> 00:17:28,500 Vale, con esto tenemos configurado, no tenemos que cambiar nada por aquí, autodetectar, tal, tal, tal. 247 00:17:28,500 --> 00:17:37,500 Bien, y como veis aquí ya nos aparece sin el triangulito, porque ya está configurado. 248 00:17:37,500 --> 00:17:44,500 Y si le damos aquí al debug, pues no hay mensajes de momento. 249 00:17:44,500 --> 00:17:44,720 Bien. Y como veis aquí ya nos aparece sin el triangulito, porque ya está configurado. Y si le damos aquí al debug, pues no hay mensajes de momento. 250 00:17:44,720 --> 00:17:45,720 Bien. Y como veis aquí ya nos aparece sin el triangulito, pues no hay mensajes de momento. 251 00:17:45,720 --> 00:17:46,720 Bien. Y como veis aquí ya nos aparece sin el triangulito, pues no hay mensajes de momento. 252 00:17:46,720 --> 00:17:47,720 Bien. Y como veis aquí ya nos aparece sin el triangulito, pues no hay mensajes de momento. 253 00:17:47,720 --> 00:17:48,720 Bien. Y como veis aquí ya nos aparece sin el triangulito, pues no hay mensajes de momento. 254 00:17:48,720 --> 00:17:49,720 Bien. Y como veis aquí ya nos aparece sin el triangulito, pues no hay mensajes de momento. 255 00:17:49,720 --> 00:17:50,720 Bien. Y como veis aquí ya nos aparece sin el triangulito, pues no hay mensajes de momento. 256 00:17:50,720 --> 00:17:51,720 Bien. Y como veis aquí ya nos aparece sin el triangulito, pues no hay mensajes de momento. 257 00:17:51,720 --> 00:17:52,720 Bien. Y como veis aquí ya nos aparece sin el triangulito, pues no hay mensajes de momento. 258 00:17:52,720 --> 00:17:53,720 Bien. Y como veis aquí ya nos aparece sin el triangulito, pues no hay mensajes de momento. 259 00:17:53,720 --> 00:17:54,720 Bien. Y como veis aquí ya nos aparece sin el triangulito, pues no hay mensajes de momento. 260 00:17:54,720 --> 00:17:55,720 Bien. Y como veis aquí ya nos aparece sin el triangulito, pues no hay mensajes de momento. 261 00:17:55,720 --> 00:17:56,720 Bien. Y como veis aquí ya nos aparece sin el triangulito, pues no hay mensajes de momento. 262 00:17:56,720 --> 00:17:57,720 Bien. Y como veis aquí ya nos aparece sin el triangulito, pues no hay mensajes de momento. 263 00:17:57,720 --> 00:17:58,720 Bien. Y como veis aquí ya nos aparece sin el triangulito, pues no hay mensajes de momento. 264 00:17:58,720 --> 00:17:59,720 Bien. Y como veis aquí ya nos aparece sin el triangulito, pues no hay mensajes de momento. 265 00:17:59,720 --> 00:18:00,720 Bien. Y como veis aquí ya nos aparece sin el triangulito, pues no hay mensajes de momento. 266 00:18:00,720 --> 00:18:01,220 Bien. Y como veis aquí ya nos aparece sin el triangulito, pues no hay mensajes de momento.