《電子技術應用》
您所在的位置:首頁 > 測試測量 > 設計應用 > 智能車運動狀態實時監測系統設計及實現
智能車運動狀態實時監測系統設計及實現
中電網
摘要: 本系統主要完成將智能車行駛過程中的各種狀態信息(如傳感器亮滅,車速,舵機轉角,電池電量等)實時地以無線串行通信方式發送至上位機處理,并繪制各部分狀態值關于時間的曲線。有了這些曲線就不難看出智能車在賽道各個位置的狀態,各種控制參數的優劣便一目了然了。尤為重要的是對于電機控制PID參數的選取,通過速度—時間曲線可以很容易發現各套PID參數之間的差異。對于采用CCD 傳感器的隊伍來說,該系統便成為了調試者的眼睛,可以見智能車之所見,相信對編寫循線算法有很大幫助。而且還可以對這些數據作進一步處理,例如求取一階導數,以得到更多的信息。
Abstract:
Key words :

  系統功能及應用

  本系統主要完成將智能車行駛過程中的各種狀態信息(如傳感器亮滅,車速,舵機轉角,電池電量等)實時地以無線串行通信方式發送至上位機處理,并繪制各部分狀態值關于時間的曲線。有了這些曲線就不難看出智能車在賽道各個位置的狀態,各種控制參數的優劣便一目了然了。尤為重要的是對于電機控制PID參數的選取,通過速度—時間曲線可以很容易發現各套PID參數之間的差異。對于采用CCD 傳感器的隊伍來說,該系統便成為了調試者的眼睛,可以見智能車之所見,相信對編寫循線算法有很大幫助。而且還可以對這些數據作進一步處理,例如求取一階導數,以得到更多的信息。

  系統的硬、軟件設計

  設計方案主要分成三部分:車載數據采集系統,無線數傳系統,上位機數據處理系統。系統基本構建如圖1所示。



圖1智能實時監測系統結構框圖與流程圖

  車載數據采集系統

  車載數據采集系統主要由單片機負責采集賽車行駛過程中的速度、傳感器狀態、電池電壓、舵機轉角等信息。為了使監測系統不占用S12單片機的內部資源并且支持熱插拔,我們將除供電之外的監測系統與智能車控制系統相分離。我們選擇ATMEL公司的ATMEGA16單片機作為該數據采集系統的處理器。二值型光電傳感器信號的采集直接使用該單片機的I/O口進行采集,連續型光電傳感器、電池電壓及CCD攝像頭信號則采用該單片機的A/D口進行采集,速度信息則通過光電編碼器和該單片機的計數器來采集。采集到的數據每20ms向上位機發送一次。

  無線數傳系統

  下位機向上位機傳輸的是以每20ms傳輸一組包含了光電編碼器值(speed),電池電壓(battery),舵機轉角值(angle),傳感器當前狀態 (sensor)的數據,如果是在理想狀態下,上位機接收到的應是上述各值循環出現的周期性數據,此時上位機只需將這些數據按順序裝入各自的數組并畫圖即可。但在實際的無線傳輸過程中可能出現數據丟失現象。因此加入適當的數據校驗是必要的,否則會出現數據裝入錯誤,造成畫圖的混亂。我們在實際過程中是在每組數據中加入0x00,0xff的幀頭,當數據出現錯誤時,則舍棄該幀數據。

  數據的無線收發部分采用的是SUNRAY公司的QC96型無線收發模塊,該模塊可以收發波特率為9600bps的串行數據,距離可達100m。

  上位機的數據接收及處理

  上位機部份主要由四個模塊構成:

*數據接收模塊
功能:上位機通過串口采集下位機發送的原始數據。

實現:VC++中實現串口通信一般有二種方式,分別是MSComm控件和Windows API函數。MSComm簡潔易用,適用于比較簡單的系統,Windows API函數應用較廣但比較復雜繁瑣,由于此模塊的串口通信功能相對簡單,本系統采用前者。在實際過程中使用的是事件驅動的方式,這種方法響應及時,可靠性高,并且比查詢法占用更少的資源。

*存儲模塊
功能:可直接存儲采集到的原始數據,以備以后更多的分析處理。

實現:在每個OnComm事件被觸發后,將串口接收到的數據直接存入temp臨時文件,并且可以在用戶的要求下將temp臨時文件里的值存儲到指定文件。

*數據的分析和處理模塊
功能:將采集到的原始數據進行用戶選定的分析和處理,主要包括丟棄錯誤數據,以及去除幀頭并進行數據裝入任務,同時也可以對已保存的數據進行分析和處理。

實現:將temp臨時文件或用戶指定文件的數據讀出并裝入,以下為主要程序代碼:
void CChuankokjDlg::find_data(car_data c_data[], BYTE c_source[], int c_length)
{
int i=0;
while(i {  if((c_source[i]==0x00)&&(c_source[i+1]==0 xff)&&(c_source[i+6]==0x0 0)&&(c_source[i+7]==0xff))//判斷幀頭并進行數據裝入
  {
   c_data[length].speed_data=c_source[i+2];
   c_data[length].battary_data=c_source[i+3];
   c_data[length].direction_data=c_source[i+4];
   c_data[length].sensor_data=c_source[i+5];
   i=i+1;
  }
  else
   i++;
}
}

*圖形顯示模塊
功能:以圖形界面來顯示處理后的數據,以便更直觀地觀察智能車的運行狀態。

  實現:將上一模塊中裝入各數組的數據在用戶的選擇的模式下進行畫圖,可以只看一幅圖,也可以將四幅圖放在一起進行對比觀看。實際的運行界面及效果如圖2。



圖2  圖形顯示介面運行模塊
    
  結語

  該系統通過添加無線收發模塊,將智能車的實時狀態信息傳到上位機上,通過VC++編程,用圖象直觀形象地將其表現出來,很好地達到了對智能車狀態實時監測的目的,極大地方便了我們調節PID等智能車參數,對賽道記憶算法的研究提供了很大的幫助。

此內容為AET網站原創,未經授權禁止轉載。
主站蜘蛛池模板: 天天干夜夜操视频| 欧洲无码一区二区三区在线观看| 国产v亚洲v欧美v专区| 久草视频在线网| 国产精品福利一区| av毛片免费看| 婷婷国产成人精品视频| 中文字幕人妻色偷偷久久| 日韩专区第一页| 亚洲av无码一区二区三区在线播放 | 精品熟女少妇av免费久久| 国产亚洲精品美女久久久| 91色视频在线| 国产无套在线播放| 俺去俺也在线www色官网| 国产美女在线一区二区三区| 99久无码中文字幕一本久道| 天天爽夜夜爽人人爽一区二区| 一级毛片免费不卡直观看| 成年视频在线播放| 久久777国产线看观看精品| 日本护士激情波多野结衣| 久久精品国产久精国产| 有色视频在线观看免费高清在线直播| 亚洲国产精品xo在线观看| 欧美激情一区二区久久久| 亚洲熟妇少妇任你躁在线观看 | 日本动漫h在线| 久久国产精品二区99| 日韩丰满少妇无码内射| 久久精品中文闷骚内射| 日韩免费视频在线观看| 久久精品免费一区二区三区| 日韩精品成人一区二区三区 | 精品小视频在线| 午夜精品久久久久久中宇| 精品无码国产自产在线观看水浒传| 四虎影视在线影院在线观看 | 男女边吃奶边做边爱视频| 免费无码午夜福利片69| 第一福利官方导航|