將智能手機變成無線慣性測量單元(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()
#-----------------------------------------------------------------------------------