::產品概述::
AmmSensor軟件開發工具包

描述
AmmSensor為一款兼容藍牙技術的3D無線MEMS傳感器設備。該產品重量輕,體積小,速度快。結合加速度計、陀螺儀和磁力儀、所有三軸,再加上驅動軟件庫(DLL),可生成精確的動態方向感應器數據,采用四元數或單位向量的形式。
程序員使用軟件開發工具包(SDK)軟件可創建自己的應用程序??稍L問所有原始傳感器輸出數據(加速度,角速度和地球磁場方向),以及采用四元數或單位向量形式計算輸出的動態傳感器方向數據。
AmmSensor SDK為Visual Studio 于2008年采用C#和.Net平臺開發??稍谒挟斍鞍姹镜腗icrosoft Windows系統包括Windows 7、Vista和XP上運行。
SDK包括一個動態鏈接庫,其功能可由用戶開發的程序來調用??墒褂萌魏?Net兼容的語言;C++、C#和VB。包括控制傳感器的函數調用上的綜合文檔和固件命令。
軟件工具包還包括是稱為AmmSampleApp的一個示例程序。本程序演示如何通過藍牙使用COM端口連接到傳感器,以及如何提取并實時顯示數據。用戶從而能夠直接捕捉并保存數據至電子表格。生成的文件是一個逗號分隔的ASCII文本文件。
請注意,您需要一臺具有藍牙功能的Windows電腦,已經安裝Visual Studio 2008 VB,才能查看和運行示例應用程序。此示例實現可用作用戶創建應用程序的基礎。

輸出數據的定義
原始數據
數據未經校準,仍然直接來自所涉及傳感器的原始計數單位。僅能用于開發和測試。
計數
目前樣本計數,從1001循環至16000個,然后再次啟動。
計數
m_raw_count
循環
計數已經循環的次數。
循環
m_raw_cycle
溫度
原始單位的傳感器內部溫度。
RawTemp
m_raw_temp
唯一ID
AmmSensor開始通信時的當前的樣本計數。
m_raw_uniqueID
UniqueCount
Ax,Ay,Az 原始數據
來自3軸加速度計的加速度向量,相對于傳感器的局部坐標軸進行測量,采用原始計數單位。這些值代表傳感器線性加速度。需要注意該向量包括重力在內。
RawAccelX RawAccelY,RawAccelZ
m_raw_accX m_raw_accY,m_raw_accZ
Mx,My,Mz原始數據
來自3軸磁力計的磁力向量,相對于傳感器的局部坐標軸進行測量,采用原始計數單位。這些值代表指向磁北的一個向量。請注意并非平行于地面,而是地面中的點。
RawMagX RawMagY,RawMagZ
m_raw_magX m_raw_magY,m_raw_magZ
Gx,Gy,Gz原始數據
來自3軸陀螺儀的角旋轉速率向量,相對于傳感器的局部坐標軸進行測量,采用原始計數單位。這些值代表傳感器沿每個軸旋轉的速度有多快。
RawGyroX RawGyroY,RawGyroZ
m_raw_gyroX m_raw_gyroY,m_raw_gyroZ
轉換后的數據
數據使用校準參數轉換為物理單位。校準在出廠時完成并存儲在傳感器的存儲器中。每個傳感器都有單獨的校準參數。
時間
啟動后以秒計算的時間。
時間
m_conv_time
溫度
與原始溫度相同,尚未進行處理。
ConvTemp
m_conv_temp
Ax,Ay,Az
經過處理的加速度向量,相對于傳感器的局部坐標軸進行測量,單位為m/s/s。需要注意的是該向量包括重力在內。
RawAccelX RawAccelY,RawAccelZ
m_conv_accX m_conv_accY,m_conv_accZ
Mx,My,Mz
標準化的磁力儀單位向量,每個參數值范圍為1和-1之間。向量是相對于傳感器的局部坐標系統而測量。這僅僅是一個方向性的單位向量,因此沒有任何單位。
RawMagX RawMagY,RawMagZ
m_conv_magX m_conv_magY,m_conv_magZ
Gx,Gy,Gz
經過處理的角速度向量,相對于傳感器的局部坐標軸測量,單位為每秒度。這是一個角速度使用向量。
RawGyroX RawGyroY,RawGyroZ
m_conv_gyroX m_conv_gyroY,m_conv_gyroZ
處理后的數據
使用更復雜的算法生成更為準確的額外參數,來自AmmSensor不同種類傳感器的組合值。這些算法包括整合、推導和一個復雜的卡爾曼濾波器。
加工時間
AmmSensor通信開始后以秒為單位的時間,與ConvTime相同
時間
m_proc_time
傳感器單位向量
這9個值給出傳感器在任何時間點的方向,相對于全球參照幀。事實上,每個傳感器的結束點坐標值是內部軸的標準化,范圍在1和-1之間。全局參考坐標系從重力向量和磁北向量創建。
相對全局參考坐標系測量的傳感器X軸坐標終點是:
Xx,Xy,Xz
m_proc_rotMat00 m_proc_rotMat10 m_proc_rotMat20
相對全局參考坐標系測量的y軸坐標終點是:
Yx,Yy,Yz
m_proc_rotMat01 m_proc_rotMat11 m_proc_rotMat21
相對全局參考坐標系測量的z軸坐標終點是:
Zx,Zy,Zz
m_proc_rotMat02 m_proc_rotMat12 m_proc_rotMat22
四元數
為表示傳感器方向的另一種便捷方式。該方法只使用4個組件而不是9個單位向量,因此更為緊湊。更多信息請參閱維基百科。
QuaternionW,QuaternionX QuaternionY,QuaternionZ
m_proc_quatW,m_proc_quatX m_proc_quatY,m_proc_quatZ
慣性直線加速度
這一向量是傳感器的線性加速度,僅由運動所生成,單位為m/s2。重力向量消減。僅當傳感器方向已知時才能完成該過程,即我們知道重力(9.81m/s2)消減的位置。這樣才能準確了解運動所單獨創建的加速度。當傳感器不移動時該值應為零。該向量為相對于全局參考坐標系測量。
InertialAccelX InertialAccelY,InertialAccelZ
m_proc_globalAccX m_proc_globalAccY,m_proc_globalAccZ
角加速度
角速度向量為差別化生成,測量單位為rad/s2,有3個組成部分。該向量為相對于傳感器局部坐標軸測量。
AngularAccelX AngularAccelY,AngularAccelZ
m_proc_gyroConvAccX m_proc_gyroConvAccY,m_proc_gyroConvAccZ
線速度和線性位置
線速度(m/s)由慣線性加速度的整合而產生,線性位置(m)來自線速度的整合。傳感器的初始位置認為是原點,相對于全局參考坐標系測量。這些值會產生較大的整合偏移,在每次使用前應提供復位功能。
位置X,位置Y,位置Z
m_proc_globalPosX m_proc_globalPosY,m_proc_globalPosZ
LinearVelX LinearVelY,LinearVelZ
m_proc_globalVelX m_proc_globalVelY,m_proc_globalVelZ
這些向量都會產生重大偏移,具有邊際價值。僅出于完整性目的提供這些數據,不具有準確性。
全局參考坐標系
Z軸為垂直指向
X軸為磁北方向指向
Y軸為垂直于X軸和Z軸指向西
X,Y和Z軸為形成一個右手坐標系
AmmSensor單位向量
該單位向量完整定義了AmmSensor局部坐標系的方向??墒褂帽容^容易的方程將這些值轉換成各種方位角度類型,包括歐拉角和關節角度值。任何方程方面的疑問請咨詢AMM解決。
::應用范圍::
適用于手部追蹤、儀器追蹤、機械臂動作捕捉等
::技術特征::
- 創建自己的創新3D動作捕捉和分析應用
- 實時讀取加速度、角速度、磁場數據
- 直接從卡爾曼濾波器提取四元數或單位向量的傳感器方向數據
- 多個傳感器實現同時通信
- 通過固件命令控制AmmSensor的所有功能
- 讀取并寫入傳感器的固件信息以及校準數據
- 使用Visual Studio進行任何Windows.Net語言編程
- (免版稅)Windows.Net兼容DLL
- 250Hz二進制格式的數據傳輸,用于快速動作更新
- 簡單的學習曲線VB演示程序
- 示例應用程序存儲輸出為ASCII文本文件,可自動發送至一個電子表格