Esta aplicación envía las mediciones desde su teléfono a través de sensores inerciales UDP como (valores separados por comas) CSV a un equipo de la red.
Esto convierte tu teléfono en una unidad de medición inercial inalámbrico (IMU).
Los siguientes sensores son compatibles:
- Acelerómetro
- Giroscopio
- Magnetómetro
Si su teléfono tiene no todos estos sensores, se transmite sólo los datos del sensor disponible.
Ejemplo de paquetes UDP:
890,71558, 3, 0.076, 9.809, 0.565, 4, -0,559, 0,032, -0,134, 5, -21,660, -36,960, -28,140
Timestamp [seg], sensorid, x, y, z, sensorid, x, y, z, sensorid, x, y, z
Identificación del sensor:
3 - Acelerómetro (m / s ^ 2)
4 - giroscopio (rad / s)
5 - magnetómetro (micro-Tesla UT)
Puede ejecutar esta aplicación en segundo plano.
Aparece un diálogo de advertencia, si usted no está conectado a una red WiFi.
En el ejemplo de vídeo, la corriente es procesada directamente por una secuencia de comandos de MATLAB para Kalman filtrado. Pero le toca a usted, lo que se hace con los datos.
Con la siguiente secuencia de comandos de Python que puede capturar el flujo de datos UDP desde el teléfono:
# ------------------------------------------------- ------
Toma de importación, rastreo
host = ''
port = 5555
s = socket.socket (socket.AF_INET, socket.SOCK_DGRAM)
s.setsockopt (socket.SOL_SOCKET, socket.SO_REUSEADDR, 1)
s.setsockopt (socket.SOL_SOCKET, socket.SO_BROADCAST, 1)
s.bind ((host, puerto))
mientras que 1:
probar:
mensaje, address = s.recvfrom (8192)
mensaje de impresión
excepto (KeyboardInterrupt, SystemExit):
aumento
excepto:
traceback.print_exc ()
# ------------------------------------------------- ------
Actualización
12 sept 2012