Ejercicio: Implementación de servicios de Azure AI como Azure Functions en el dispositivo IoT
Creación de Azure Cognitive Services
En Azure Portal, haga clic en Crear un recurso y busque Voz.
Cree un servicio de voz.
Rellene el formulario para crear el servicio de voz.
Nombre: escriba un nombre.
Suscripción: seleccione la suscripción disponible.
Ubicación: seleccione su ubicación.
Plan de tarifa: seleccione S0.
Grupo de recursos: seleccione su grupo de recursos.
Vaya al servicio Voz que se acaba de crear, haga clic en la sección Claves para copiar y anote la Key1. La usará para que IoT DevKit tenga acceso.
Instalación de extensiones para Visual Studio Code
Debe instalar algunas extensiones para Visual Studio Code.
Inicie Visual Studio Code, busque Arduino en el marketplace de extensiones e instálela. Esta extensión proporciona experiencias mejoradas para el desarrollo en la plataforma Arduino.
Busque Azure IoT Tools en el marketplace de extensiones e instálelo.
Nota:
El paquete de extensiones Azure IoT Tools contiene Azure IoT Device Workbench, que se usa para desarrollar y depurar en varios dispositivos IoT DevKit. La extensión Azure IoT Hub, que también se incluye con el paquete de extensiones Azure IoT Tools, se usa para administrar e interactuar con Azure IoT Hub.
Busque C# en el marketplace de extensiones e instálelo.
Configuración de Visual Studio Code con los valores de Arduino
En Visual Studio Code, haga clic en Archivo > Preferencias > Configuración. Después, haga clic en ... y abra settings.json.
Agregue las líneas siguientes para configurar Arduino en función de la plataforma:
Windows:
"arduino.path": "C:\\Program Files (x86)\\Arduino", "arduino.additionalUrls": "https://raw.githubusercontent.com/VSChina/azureiotdevkit_tools/master/package_azureboard_index.json"
macOS:
"arduino.path": "/Applications", "arduino.additionalUrls": "https://raw.githubusercontent.com/VSChina/azureiotdevkit_tools/master/package_azureboard_index.json"
Ubuntu:
Reemplace el marcador de posición {username} debajo del nombre de usuario.
"arduino.path": "/home/{username}/Downloads/arduino-1.8.8", "arduino.additionalUrls": "https://raw.githubusercontent.com/VSChina/azureiotdevkit_tools/master/package_azur
Apertura de un proyecto de ejemplo
En primer lugar, empiece iniciando sesión en su cuenta de Azure. Haga clic en F1 para abrir la paleta de comandos, escriba y seleccione Azure: Iniciar sesión
Haga clic en F1 para abrir la paleta de comandos, escriba y seleccione Azure IoT Device Workbench: Abrir ejemplos... Después, seleccione IoT DevKit como placa.
En la página Ejemplos de IoT Workbench, busque DevKit Translator (Traductor de DevKit) y haga clic en Abrir ejemplo. Después, seleccione la ruta de acceso predeterminada para descargar el ejemplo de código.
Selección de la placa
Haga clic en F1 para abrir la paleta de comandos, escriba y seleccione Arduino: Administrador de placas. Busque AZ3166 e instálelo.
Instalación del puerto serie: controladores ST-Link
Windows: descargue controlador USB e instálelo desde el sitio web de STMicroelectronics.
macOS: no se requiere ningún controlador para macOS.
Ubuntu: ejecute los comandos en el terminal y, después, cierre la sesión e inicie sesión para que el cambio en el grupo de la barra de herramientas surta efecto:
# Copy the default rules. This grants permission to the group 'plugdev' sudo cp ~/.arduino15/packages/AZ3166/tools/openocd/0.10.0/linux/contrib/60-openocd.rules /etc/udev/rules.d/ sudo udevadm control --reload-rules # Add yourself to the group 'plugdev' # Logout and log back in for the group to take effect sudo usermod -a -G plugdev $(whoami)
Nota:
ST-Link/V2 es la interfaz USB que IoT DevKit usa para comunicarse con la máquina de desarrollo. Deberá instalarla en Windows para que se instale la imagen del código del dispositivo compilado en DevKit. Siga los pasos específicos del sistema operativo para permitir el acceso de la máquina al dispositivo.
Creación de una función de Azure o aprovisionamiento de servicios de Azure
En Visual Studio Code, presione F1, escriba y seleccione Azure IoT Device Workbench: Aprovisionamiento de servicios de Azure...
Siga los pasos para finalizar el aprovisionamiento de Azure IoT Hub y Azure Functions.
Anote el nombre del dispositivo Azure IoT Hub que se ha creado.
Ahora tiene Azure IoT Hub aprovisionado y el dispositivo creado. Además, la cadena de conexión del dispositivo se guardará en Visual Studio Code para configurar IoT DevKit más adelante.
Abra Functions\DevKitTranslatorFunction.cs y actualice las líneas de código siguientes con el nombre del dispositivo y la clave del servicio Voz que se ha anotado.
// Subscription Key of Speech Service
const string speechSubscriptionKey = "";
// Region of the speech service, see https://learn.microsoft.com/azure/cognitive-services/speech-service/regions for more details.
const string speechServiceRegion = "";
// Device ID
const string deviceName = "";
Implementación de una función de Azure
Haga clic en F1, escriba y seleccione Azure IoT Device Workbench: Implementación en Azure... Si Visual Studio Code solicita confirmación para la reimplementación, haga clic en Sí.
Asegúrese de que la implementación es correcta.
En Azure Portal, vaya a la sección Aplicaciones de funciones y busque la aplicación de funciones de Azure creada. Haga clic en devkit_translator y luego en Obtener la URL de la función para copiar la dirección URL.
Pegue la dirección URL en el archivo azure_config.h.
Configuración de los valores del dispositivo
En la barra de estado situada en la parte inferior a la derecha, compruebe que MXCHIP AZ3166 se muestra como una placa seleccionada y se usa el puerto serie con STMicroelectronics.
Haga clic en F1, escriba y seleccione Azure IoT Device Workbench: Configurar opciones de dispositivo... > Configurar cadena de conexión del dispositivo. Seleccione la cadena de conexión del dispositivo IoT Hub para configurarla en el DevKit.
En DevKit, mantenga presionado el botón A, presione y suelte el botón de restablecimiento y, después, suelte el botón A. El DevKit entra en modo de configuración y guarda la cadena de conexión.
Verá la notificación una vez que se haya realizado correctamente.
Carga del código de dispositivo
Haga clic otra vez en F1, escriba y, después, seleccione Azure IoT Device Workbench: Cargar el código del dispositivo. Comienza a compilar y cargar el código en DevKit.
DevKit se reinicia y comienza a ejecutar el código.
Prueba del proyecto
Después de la inicialización de la aplicación, siga las instrucciones de la pantalla DevKit. El idioma de origen predeterminado es el chino.
Con el fin de seleccionar otro idioma para la traducción, haga lo siguiente:
- Presione el botón A para entrar en modo de configuración.
- Presione el botón B para desplazarse por todos los idiomas de origen admitidos.
- Presione el botón A para confirmar su elección del idioma de origen.
- Mantenga presionado el botón B mientras habla y luego suéltelo para iniciar la traducción.
- El texto traducido en español se muestra en la pantalla.
En la pantalla de resultado de traducción, se puede hacer lo siguiente:
- Presionar los botones A y B para desplazarse y seleccionar el idioma de origen.
- Presionar el botón B para hablar. Para enviar la voz y obtener el texto de la traducción, suelte el botón B.