李哲++田建艷++鄭晟++王芳++張小龍



摘要:以豬為例,通過分析豬的常見姿態,依據不同姿態角度特點提出分類方法,并使用加速度與陀螺儀傳感器集成芯片MPU6050與地磁傳感器HMC5883L設計一套姿態檢測系統,以滿足畜禽養殖業對自動檢測畜禽行為的需要。試驗結果證明,該系統能夠準確檢測出豬的相應姿態,可為后續分析豬行為提供依據。
關鍵詞:豬;姿態分類;MPU6050;HMC5883L;姿態角;互補濾波
中圖分類號: TP274;TP212.9文獻標志碼: A文章編號:1002-1302(2016)02-0434-03
收稿日期:2015-03-12
基金項目:國家高技術研究發展計劃(編號:2013AA102306)。
作者簡介:李哲(1987—),山西太原人,碩士,主要從事復雜系統建模與智能控制及模式識別研究。E-mail:lizhe2003@163.com。
通信作者:田建艷(1966—),博士,教授,主要從事復雜系統建模、控制及智能化監控研究。E-mail:tut_tianjy@163.com。行為分析在畜禽養殖自動化研究領域有著非常重要的地位[1],而對動物行為進行分析也能夠為畜禽健康分析提供參考依據。朱偉星等利用視頻技術監控豬行為并分析豬健康,指出行為分析的重要性[2];陸明洲等介紹畜禽行為檢測的不同方法及各種技術的發展狀況,指出行為研究在養殖信息化中的重要作用[3]。目前,姿態檢測的主要研究方向分為2種,一是以視頻采集和圖像處理技術為基礎,模擬人眼提取目標特征進行姿態檢測[4-5],二是以傳感器技術為基礎,利用各傳感器的特點采集與姿態相關的加速度及角度數據,通過算法計算分析得到姿態情況[6]。
本試驗采用傳感器為研究手段,以豬為研究對象,選擇4種豬常見姿態進行定義,使用加速度傳感器、陀螺儀和地磁傳感器采集目標加速度和姿態角,根據互補濾波算法得到姿態角,分析豬的姿態情況,并針對4種姿態提出相應的檢測方法。
1豬姿態分類
1.1姿態分類
將豬常見姿態分為站、坐、趴、躺4種(圖1)。
1.2姿態特征分析
以豬脊柱中段為坐標原點,并作為固定傳感器的位置,沿傳感器方向建立載體坐標系(b系),同時以北、東、地方向建立地理坐標系(n系),這2個坐標系之間的夾角通常稱為歐拉角θx、θy、θz(圖2)。
豬處于不同姿態時,b系方向對應圖2中實線坐標系x、y、z,b系方向隨豬運動會發生變化,對應圖2中虛線坐標系。n系方向不變,可以根據b系與n系Z軸夾角θz區分豬3種姿態——站或趴、坐、躺:站與趴時,b系Z軸垂直于地心,θz約為0°;坐時,Z軸與垂直地心方向有夾角θz;躺時,Z軸與垂直地心方向有夾角θz,θ2約為90°。
姿態角θz與豬身長L1和腿長L1相關(圖3),通過測定豬的身長和腿長,根據公式:θz=arcsinL2L1,可以確定θz的數值。當豬處于趴或站2個狀態時,θz均趨近于0,單獨觀察θz無法區分這2種姿態,需借助分析這2種姿態到另外姿態的變化過程進行判斷,如從站到坐的過程會伴隨產生豎直向下的加速度,使得n系Z軸加速度azn減小,通過分析姿態變化時θz與azn的變化情況,就可以區分站與趴這2種姿態。
2姿態檢測系統軟件設計
2.1基于四元數的姿態角解算
載體坐標系與地理坐標系之間的轉換需要用到旋轉矩陣[7],整個旋轉過程分為3個部分(圖4),通過旋轉矩陣可以得到n系與b系之間的變換公式。
3系統硬件設計
3.1系統組成
檢測系統由發射單元、接收單元和上位機3個部分構成,其中,發射單元負責傳感器數據的采集和發送工作,接收單元負責數據的接收工作,上位機負責數據的處理和姿態角的解算(圖7)。發射單元和接收單元使用CC2530(Zigbee模塊)進行數據傳輸,CC2530芯片內置增強型51單片機,可以進行數據采集和傳輸工作,發射端CC2530與傳感器連接,接收端CC2530通過串口與上位機相連。
3.2發射單元硬件設計
發射單元由MPU6050、CC2530、HMC5883L這3個部分組成。MPU6050集成三軸加速度傳感器與三軸陀螺儀;HMC5883L內置高分辨率HMC118X系列磁阻傳感器,并附帶霍尼韋爾專利的集成電路,包括放大器、自動消磁驅動器、偏差校準、能使羅盤精度控制在1°~2°的12位模數轉換器、簡易的I2C 系列總線接口。HMC5883L通過AUX接口與MPU6050芯片相連,MPU6050的AUX接口設置為直連模式,使用AUX-I2C接口采集數據,并由MPU6050的I2C接口傳入CC2530進行發送。CC2530芯片沒有I2C接口,因此,需要編寫程序利用空置管腳模擬I2C接口進行數據傳輸。
4試驗結果及誤差分析
在實驗室條件下進行姿態檢測,將發射單元固定在平整的電路板上,利用重垂線和水平儀將電路板調整至水平位置;搭建模擬試驗臺,通過電路板角度的變化模擬豬姿態的變化進行檢測;將傳感器采集的數據通過上位機串口讀取存儲到Execl表格中,導入Matlab計算得到姿態角。
將試驗電路板調整至不同角度,觀察靜態θz的測量值,并與真實角度進行對比。由表1可見,靜態檢測精度誤差在0.5°以內,能夠得到比較準確的測量結果。
利用試驗電路板模擬豬姿態變化,觀察上位機姿態角變化,驗證檢測算法精度,取θz=40°,判定站與趴時的加速度變化,反復進行姿態變換以分析檢測準確率。動態變化過程主要用于分析趴與站2種姿態,試驗模擬這2種姿態6種可能出現的變化過程(100次試驗)。由表2可見,趴與站2種姿態的檢測準確率較高,在95%以上。
5結論
利用加速度傳感器、陀螺儀和地磁傳感器進行數據融合,通過互補濾波解算得到較為準確的姿態角,檢測θz,與不同姿態角度對比并進行初步分類,再結合azn變化區分趴與站,從而判斷豬所處的姿態,在此基礎上,設計出1套姿態檢測系統。該系統經檢測驗證,能夠準確得到豬所處姿態,檢測正確率較高,能夠滿足實際應用的要求。
參考文獻:
[1]沈明霞,劉龍申,閆麗,等. 畜禽養殖個體信息監測技術研究進展[J]. 農業機械學報,2014,45(10):245-251.
[2]朱偉興,浦雪峰,李新城,等. 基于行為監測的疑似病豬自動化識別系統[J]. 農業工程學報,2010,26(1):188-192.
[3]陸明洲,沈明霞,丁永前,等. 畜牧信息智能監測研究進展[J]. 中國農業科學,2012,45(14):2939-2947.
[4]Ahrendt P,Gregersen T,Karstoft H. Development of a real-time computer vision system for tracking loose-housed pigs[J]. Computers and Electronics in Agriculture,2011,76(2):169-174.[5]Cangar O,Leroy T,Guarino M,et al. Automatic real-time monitoring of locomotion and posture behaviour of pregnant cows prior to calving using online image analysis[J]. Computers and Electronics in Agriculture,2008,64(1):53-60.
[6]張珂,楊濤,馮月暉. 人手姿態檢測系統的設計與實現[J]. 電子設計工程,2011,19(17):77-80.
[7]李景輝,楊立才. 基于多傳感器信息融合的人體姿態解算算法[J]. 山東大學學報:工學版,2013,43(5):49-54.
[8]孫金秋,游有鵬,傅忠云. 基于共軛梯度法和互補濾波相結合的姿態解算算法[J]. 傳感技術學報,2014,27(4):524-528.
[9]梁延德,程敏,何福本,等. 基于互補濾波器的四旋翼飛行器姿態解算[J]. 傳感器與微系統,2011,30(11):56-58,61.
[10]米剛,田增山,金悅,等. 基于MIMU和磁力計的姿態更新算法研究[J]. 傳感技術學報,2015,28(1):43-48.
[11]王超杰,蘇中,時佳斌,等. 蛇形機器人互補濾波和四元數的姿態解算[J]. 傳感器與微系統,2014,33(10):137-140. 范垚,楊慶媛. 基于現代農業發展的農用地整治分區及工程配置——以重慶市為例[J]. 江蘇農業科學,2016,44(2):437-443.