Probar las comunicaciones (sincronizaciones de dispositivos deshabilitadas) - AWS IoT Greengrass

AWS IoT Greengrass Version 1 entró en la fase de vida útil prolongada el 30 de junio de 2023. Para obtener más información, consulte la política de mantenimiento de AWS IoT Greengrass V1 Después de esta fecha, AWS IoT Greengrass V1 no se publicarán actualizaciones que proporcionen funciones, mejoras, correcciones de errores o parches de seguridad. Los dispositivos que se ejecuten AWS IoT Greengrass V1 no se verán afectados y seguirán funcionando y conectándose a la nube. Le recomendamos encarecidamente que migre a AWS IoT Greengrass Version 2, ya que añade importantes funciones nuevas y es compatible con plataformas adicionales.

Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.

Probar las comunicaciones (sincronizaciones de dispositivos deshabilitadas)

  1. Asegúrese de que el ordenador y el dispositivo AWS IoT Greengrass principal estén conectados a Internet mediante la misma red.

    1. En el dispositivo AWS IoT Greengrass principal, ejecuta el siguiente comando para buscar su dirección IP.

      hostname -I
    2. En el equipo, ejecute el siguiente comando utilizando la dirección IP del dispositivo central. Puede utilizar Ctrl + C para detener el comando ping.

      ping IP-address

      Un resultado similar al siguiente indica que la comunicación entre el ordenador y el dispositivo AWS IoT Greengrass principal se ha realizado correctamente (pérdida de paquetes del 0%):

      Salida correcta del comando ping.
      nota

      Si no puede hacer ping a una instancia de EC2 en ejecución AWS IoT Greengrass, asegúrese de que las reglas del grupo de seguridad entrante de la instancia permitan el tráfico ICMP para los mensajes de solicitud de Echo. Para obtener más información, consulte Añadir reglas a un grupo de seguridad en la Guía del usuario de Amazon EC2.

      Es posible que, en los equipos host de Windows, en la aplicación Firewall de Windows con seguridad avanzada, también tenga que habilitar una regla de entrada que permita las solicitudes de eco entrantes (por ejemplo, Compartir archivos e impresoras [Solicitud de eco - ICMPv4-In]) o crear una.

  2. Obtenga su AWS IoT punto final.

    1. En el panel de navegación de la consola de AWS IoT, seleccione Configuración.

    2. En Punto de conexión de datos del dispositivo, anote el valor del punto de conexión. Este valor se usa para sustituir el marcador de posición AWS_IOT_ENDPOINT de los comandos en los pasos que se describen a continuación.

  3. En su ordenador (no en el dispositivo AWS IoT Greengrass principal), abra dos ventanas de línea de comandos (terminal o línea de comandos). Una ventana representa el dispositivo cliente GG_Switch y la otra representa el dispositivo cliente GG_. TrafficLight

    1. En la ventana del dispositivo de cliente GG_Switch, ejecute los comandos siguientes.

      • Sustituya path a certs-folder por la ruta de la carpeta que contiene los certificados, las claves y los archivos de Python.

      • Sustituya AWS_IOT_ENDPOINT por el punto de enlace.

      • Sustituya las dos CertId instancias del conmutador por el ID del certificado en el nombre de archivo de su dispositivo cliente GG_Switch.

      cd path-to-certs-folder python lightController.py --endpoint AWS_IOT_ENDPOINT --rootCA AmazonRootCA1.pem --cert switchCertId-certificate.pem.crt --key switchCertId-private.pem.key --thingName GG_TrafficLight --clientId GG_Switch
    2. Desde la ventana del dispositivo TrafficLight cliente GG_, ejecute los siguientes comandos.

      • Sustituya path a certs-folder por la ruta de la carpeta que contiene los certificados, las claves y los archivos de Python.

      • Sustituya AWS_IOT_ENDPOINT por el punto de enlace.

      • Sustituya las dos CertId instancias ligeras por el ID del certificado en el nombre de archivo de su dispositivo TrafficLight cliente GG_.

      cd path-to-certs-folder python trafficLight.py --endpoint AWS_IOT_ENDPOINT --rootCA AmazonRootCA1.pem --cert lightCertId-certificate.pem.crt --key lightCertId-private.pem.key --thingName GG_TrafficLight --clientId GG_TrafficLight

      Cada 20 segundos, el interruptor actualiza el estado de sombra a los valores G, Y y R, y la luz mostrará su nuevo estado, tal que se muestra a continuación.

      Salida de GG_Switch:

      Captura de pantalla de la salida asociada a GG_Switch.

      Salida GG_TrafficLight :

      Captura de pantalla de la salida asociada a TrafficLight GG_.

    Cuando se ejecuta por primera vez, cada script del dispositivo cliente ejecuta el servicio de AWS IoT Greengrass detección para conectarse al AWS IoT Greengrass núcleo (a través de Internet). Una vez que un dispositivo cliente haya descubierto y se haya conectado correctamente al AWS IoT Greengrass núcleo, las operaciones futuras se pueden ejecutar localmente.

    nota

    Los scripts lightController.py y trafficLight.py almacenan información de conexión en la carpeta groupCA, que se crea en la misma carpeta que los scripts. Si recibe errores de conexión, asegúrese de que la dirección IP del archivo ggc-host coincide con el punto de conexión de la dirección IP de su núcleo.

  4. En la AWS IoT consola, elija su AWS IoT Greengrass grupo, elija la pestaña Dispositivos cliente y, a continuación, elija GG_ TrafficLight para abrir la página de detalles del AWS IoT dispositivo cliente.

  5. Seleccione la pestaña Sombras de dispositivo. Después de que el GG_Switch cambie de estado, no debería haber ninguna actualización de esta sombra. Esto se debe a que el GG_ TrafficLight está configurado para deshabilitar la sincronización oculta con la nube.

  6. Pulse Ctrl + C en la ventana del dispositivo de cliente GG_Switch (lightController.py). Deberías ver que la ventana GG_ TrafficLight (trafficLight.py) deja de recibir mensajes de cambio de estado.

    Mantenga estas ventanas abiertas para que pueda ejecutar los comandos de la siguiente sección.