Hacer un sistema de automatización del hogar: descripción general
Antes de saltar directamente a la actividad, primero comprendamos cómo funcionará nuestro sistema de automatización.
Entendiendo la lógica
El sistema utilizará comandos de voz para controlar las luces de la habitación. Lo entrenaremos en PictoBlox para que reconozca varios comandos de tipos similares, de modo que incluso si el comando que otra persona da no coincide exactamente con nuestros comandos, los entenderá y realizará la acción correspondiente, ya sea para ENCENDER o APAGAR el ligero. Para ello crearemos lo que se conoce como clasificador de texto. Un clasificador de texto puede analizar cualquier texto dado y luego clasificarlo en una categoría particular según su conocimiento previo sobre las categorías.
Suena a magia, ¿verdad? Bueno, ¡es hora de realizar la magia!
¡Codifiquemos!
Detectando la Voz
Primero hagamos el script para permitir que el sistema detecte voz. Siga los pasos a continuación:
- Abra un nuevo proyecto seleccionando Nuevo desde archivo. Para reconocer la voz (habla), necesitamos la extensión de Inteligencia Artificial . Desde la paleta de extensiones, agregue la extensión de Inteligencia Artificial .
- Agregue un bloque de Recognize speech for () s in () [reconocimiento de voz para () s en () ]en el área de secuencias de comandos. El tiempo predeterminado es de 5 segundos y el idioma predeterminado es el inglés de EE . UU .Para confirmar si el discurso fue reconocido correctamente, haremos que Tobi repita lo que dijimos.
- Agregue un bloque decir () debajo del bloque de Recognize speech for () s in () [reconocimiento de voz para () s en () ] . Dentro del bloque decir () , suelte un bloque de Speech recognition result [resultados de reconocimiento de voz] .
- Complete el script con un bloque cuando se hace clic en la bandera .
- Ejecute el script para comprobarlo.
Clasificador de texto
Ahora, entrenemos a PictoBlox para analizar el comando de voz y realizar la acción correspondiente. Siga los pasos a continuación:
Primero, agregaremos los datos para encender la luz.
- Vaya a la paleta Mis bloques y cree un bloque llamado Datos para luces encendidas .
- Para hacer el clasificador de texto, necesitamos la extensión Procesamiento de lenguaje natural (natural lenguage processing) . Agregue la extensión Procesamiento del lenguaje natural (natural lenguage processing) desde la paleta de extensiones.
- Tome el bloque de sombreros Datos para luces encendidas y suelte un bloque añadir () como () [ add () as()] debajo de él.
- En lugar de texto en el bloque añadir () como () [ add () as()] , escriba el primer comando, “Luces encendidas”. En lugar de la clase, escriba “Luces encendidas”. Luces encendidas será el nombre de la clase. Vamos a darle al clasificador 9 comandos más para agregar a nuestra clase.
- Repita el paso 4 nueve veces más para diferentes comandos como se muestra.
Ahora, necesitamos agregar los datos para apagar la luz.
- Cree un bloque llamado Datos para luces apagadas .
- Siga los mismos pasos que para Datos para luces apagadas . Solo los comandos y el nombre de la clase serán diferentes como se muestra.
Ahora, necesitamos entrenar a nuestro clasificador. Siga los pasos a continuación para crear el guión:
- Cree un bloque llamado Datos de entrenamiento .
- Tome el bloque de sombreros Datos de entrenamiento y agregue un bloque de clasificador de texto de restablecimiento debajo de él desde la paleta Procesamiento de lenguaje natural .
- Agregue los bloques de pila Datos para luces encendidas y Datos para luces apagadas debajo del bloque clasificador de texto restablecido como se muestra.
- Agregue un bloque clasificador de texto de tren .
Ahora, verifiquemos si nuestro clasificador de texto realmente funciona.
- Agregue un bloque al hacer clic en la bandera en el área de secuencias de comandos.
- Suelta el bloque de pila de datos de entrenamiento debajo del bloque al presionar bandera .Ahora, para probar si el clasificador está funcionando, enviaremos dos comandos nuevos para cada clase (uno para Luces encendidas y otro para Luces apagadas) y veremos si el clasificador los analiza correctamente.
- Agregue un bloque decir () por () segundos de la paleta Apariencia .
- Dentro del bloque decir () por () segundos , suelte una obtener clase de [get class of ()] bloque. El tiempo predeterminado es de 2 segundos.
- Dentro de obtener clase de [get class of ()] , escriba “Estoy jugando”.
- Repita el paso 5 y esta vez, escriba “Necesito estudiar” dentro del bloque obtener clase de [get class of ()].
Ejecute el script para comprobarlo. Tobi debe decir primero “Luces apagadas” y luego “Luces encendidas”.
Encendido / apagado de las luces mediante comandos de voz
Ahora que sabemos que nuestro clasificador de texto funciona correctamente, creemos el script para controlar las luces mediante el comando de voz. Mostraremos el resultado en la matriz de Quarky. Siga los pasos a continuación:
Vamos a modificar el script que hicimos para probar el clasificador de texto.
- Elimine todos los bloques debajo del bloque de pila Datos de entrenamiento y agregue un bloque de reconocimiento de voz para () s en () de la paleta de Inteligencia Artificial . Ahora, para analizar el comando y realizar la acción correspondiente, vamos a comprobar si la clase del comando es Lights On o no. Si está encendido, entonces la matriz de Quarky debería iluminarse. Y si está apagado, todos los LED deben permanecer apagados.
- Agrega un bloque si . Dentro del espacio en forma de diamante, agregue un bloque () = () del bloque Operadores .
- Dentro del primer espacio del bloque () = () , suelte obtener clase de [get class of ()]. En el segundo espacio, escriba “Luces encendidas”.
- Dentro del bloque obtener clase de [get class of ()] , suelte un bloque de resultados de reconocimiento de voz .
- Suelta una matriz de visualización como bloque () de la paleta Visualización y colorea todos los cuadrados de blanco como se muestra.
- Duplique el si-si no anterior y escriba Luces apagadas en el lugar de Luces encendidas. Y reemplace la matriz de visualización como bloque () con un bloque de pantalla transparente .
Al presionar la bandera para ejecutar el script.
¡Y ahí lo tienes! ¡Un sistema completamente automatizado para controlar las luces de tu hogar usando tus comandos de voz!
Asignación
Antes de pasar a la siguiente lección, ¡le espera una pequeña tarea!
Haz un video del proyecto que realizaste en esta actividad y súbelo al sitio web.
Enviar la tarea es imprescindible para recibir el certificado después de completar el curso.
Siga los pasos a continuación para cargar su tarea:
- Primero, debe elegir el archivo de video, luego haga clic en Examinar .
- Seleccione su archivo de video.
- Y haga clic en el botón Cargar .
¡Buena suerte! ?