Paso 5: PyMyo (.exe)
Este ejecutable es donde se produce la comunicación real con el mio. Es una modificación del Hola-myo que imprime una versión compacta del estado del brazalete de Myo - sólo 9 bytes - cada 50ms.
Cómo funciona:
Esto funciona de manera similar a Hola myo (ver aquí para la documentación); la mayoría de los cambios eran coger datos de acelerómetro, imprimir los datos compacto y manejar la entrada de la consola a vibrar el Myo.
Para un vistazo más de cerca estos cambios, consulte la función inputThread() (que se ejecuta la entrada como un subproceso independiente) y DataCollector::print(), que imprime el estado de Myo de Myo.py recibir.
El protocolo:
El ejecutable envía una cadena llena de bytes en 20Hz - el formato es:
Aceleración X, Y y Z (3 bytes) forman el vector de aceleración.
Rotación W, X, Y y Z (4 bytes) forman un cuaternión que representa la rotación actual.
Pose de la mano (1 byte) indica el estado de la mano (puño, WaveIn, etc.). Utiliza los mismos valores de enumeración como la biblioteca de myo.
# El brazo (1 byte) es 0 o 1 para izquierda/derecha respectivamente, o ASCII 'A' (0 x 41) si el brazo no está presente.