将智能手机变成无线惯性测量单元(IMU)。
该应用程序通过UDP将CSV(逗号分隔值)从手机惯性传感器发送到网络中的计算机。
这将您的手机变成无线惯性测量单元(IMU)。
支持以下传感器:
- 加速度计
- 陀螺仪
- 磁力计
如果您的手机还没有所有这些传感器,则仅传输可用的传感器数据。
示例UDP数据包:
890.71558,3,0.076,9.809,0.565,4,-0.559,0.032,-0.134,5,-21.660,-36.960,-28.140
时间戳[sec],sensorid,x,y,z,sensorid,x,y,z,sensorid,x,y,z
传感器ID:
3-加速度计(m/s^2)
4-陀螺仪(rad/s)
5-磁力计(微型tesla UT)
您可以在后台运行此应用。
如果您未连接到WiFi网络,则会出现警告对话框。
在示例视频中,该流是由MATLAB脚本直接处理的,用于Kalman过滤。但这取决于您,您对数据的作用。
使用以下Python脚本,您可以从手机捕获UDP数据流:
#-----------------------------------------------------------------------------------
导入套接字,追溯
主机=''
端口= 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((主机,端口))
而1:
尝试:
消息,地址= s.recvfrom(8192)
打印消息
除了(键盘介入,系统exit):
增加
除了:
trackback.print_exc()
#-----------------------------------------------------------------------------------