Paso 2: El código de Arduino!
Adjunto aquí, usted encontrará el archivo .ino con el script que tienes que subir sobre la tabla, pero ya dije que este quiere ser un tutorial cuyo objetivo principal es llevarlo directamente a la base de la comunicación serial versátil entre Arduino y Matlab, permítanme comentarlo! (puede abrir el archivo .ino en el IDE de Arduino y siga los siguientes comentarios en paralelo, confianza me te ayudará). Realmente no me gusta llenar el guión sí mismo con los comentarios, ya que un look desordenado!
Evite las siguientes líneas si usted está usando un sensor diferente, o su propósito para usar la comunicación serial con Matlab es diferente! El comienzo de la escritura con la inclusión de la biblioteca DHT se encuentra conectada así (copiar el .cpp y .h archivos en una carpeta llamada DHTlib dentro de la carpeta de bibliotecas relacionadas con Arduino en tu PC, no vas a necesitar algo más) y la definición de un par de variables útiles: temp, para almacenar el valor de la temperatura y val, asignados a los caracteres enviados por Matlab.
En el área Configuración tenemos que incluir real player del juego: inicializador de comunicación serial. más info aquí >> Serie de Arduino. Así que escribimos Serial.begin(9600), siendo 9600 baudios, es decir, la velocidad a la que nos gustaría que los dos chicos a hablar (se establece la misma tasa cuando nosotros nos encargamos del objeto serial Matlab). Las pocas líneas de código que siguen son sólo un simple apretón de manos para saber si la comunicación serie ha comenzado perfectamente. Realmente puede excluirla. No para dejar algo claro, con el apretón de manos, Arduino envía el carácter 'a' en el búfer serial, y cuando Matlab va a leer visualizando un mensaje de"ok" se sabe que están hablando entre sí correctamente.
Ahora vamos a llegar al bucle principal. Arduino, siempre tiene que mantener un ojo abierto en lo que sucede en el puerto serie! Con la línea
Si (Serial.available() > 0)
Estamos pidiéndole que verifique tan rápido como puede, si algo se ha puesto en el famoso buffer serial por Matlab, y si es el caso, para almacenar el valor en la variable val!
Con el if más lazo:
Si (val == 'R')
comprobamos si el comando enviado a través del puerto serial, coincide con la que hemos asignados al sensor de lectura. Si incluso esta condición se cumple, la lectura se ejecuta la función getTemperature() , y el valor de la temperatura correlacionada es enviado hacia el buffer serial con la función Serial.println(val) .
Terminamos aquí con Arduino. Puedes subir el sketch y dejar el Arduino conectado a través del puerto serie (USB) al ordenador. Una última cosa importante: Asegúrese de saber el nombre de Arduino está conectado al puerto. Puedes comprobarlo yendo a "instrumento" en el IDE de Arduino, y comprobar que el puerto está marcada en la parte superior hacia abajo de menú llamado "puerto". Escriba el nombre, lo usaremos más adelante. Si eres un usuario de Windows, sería algo como "COM1" o "COM2" ecc., si usas MAC, sería algo como "/ dev/tty. KeySerial1 ".