標籤:
夏季學期選了智能移動機器人導論課程,開始接觸移動機器人。作為一門面向大二、大三學生的一門導論式的課程,課程作業其實並不太難,然而我們為了完成課程作業,前前後後還是弄了好幾個星期,以至放了暑假都還要和Qbot在學校呆一段時間。這是為什麼呢?網上關於Qbot的資料少得可憐。無論在百度、必應還是Google,以Qbot為關鍵詞幾乎搜不到任何有關的資料,甚至連官方網站都不再提供Qbot的支援,因為人家已經升級到Qbot 2了╮(╯-╰)╭
不過最後磕磕絆絆還是搞出來了,這裡就把一些經驗寫下來,算是對Qbot的資料補充吧。其他學校不清楚,但是我校學弟學妹應該還是很需要這樣的東西的。
1、Qbot簡介
Qbot全稱Quanser Qbot,是一個類似於掃地機器人的輪式移動機器人,擁有兩個獨立的驅動輪,一個萬向隨動輪,一個定向隨動輪,配置有五個距離感應器,一個網路攝影機,一個壓力感應器。除此之外,Qbot還提供外接感應器的介面。Qbot大概長下面這樣:
對Qbot的控制和編程主要通過Matlab Simulink進行,當然,官方會提供一些已經寫好了的Simulink模組(需要安裝QUARC)。Qbot內建WiFi熱點,PC通過串連Qbot的WiFi熱點來和Qbot通訊。
2、開發環境配置
上面說到要控制Qbot需要通過Matlab Simulink,同時還依賴於QUARC,因此開發環境的配置主要是安裝QUARC和Matlab。另外,還有模組的配置。
1、Matlab的安裝
QUARC支援的Matlab版本為2012~2014,因此需要安裝這之間版本的Matlab。安裝Matlab又是一個深坑,不過網上關於Matlab安裝過程中的各種問題都有了較好的解決方案了,如果遇到問題,直接百度就好。我安裝Matlab 2014a時曾遇到"找不到VCREDIST.MSI"的問題,在這個文章的3L找到解決方案,如果各位同樣遇到這個問題,可以參考一下。
2、QUARC的安裝
老師提供的QUARC程式版本為2.4.878,在官網我沒有找到QUARC程式的下載頁面。下邊就以QUARC 2.4.878的安裝為例簡要說明:
- 安裝Visual Studio 2010~2012 中的一個版本,微軟良心,Visual Studio的安裝非常省心,這裡不多說,值得注意的是,QUARC 2.4.878是不支援Visual Studio 2013的;(安裝VS是因為QUARC是依賴於VS的)
- 雙擊install_quarc安裝,會彈出一個Compatibility Checking視窗提示是否通過了軟體的檢查,如果沒有通過檢查,則要倒回去看看是不是Matlab或者Visual Studio的安裝不成功;
- 選擇license進行認證,license檔案尾碼為lic;
3、Simulink模組的配置
好了,安裝完上面三個軟體以後,就可以開始串連Qbot了。點開網路連接,查看無線網裡是否有一個名為GSAH的網路,如果有直接連接,如果沒有,則需要按手動添加該網路。實測win7、win8均能搜到該網路,win8.1則無法搜到。因此如果你的作業系統是win8.1 需要按照如下步驟手動添加GSAH網路(參考):
1.開啟cmd,輸入:netsh wlan show networks,確定有GSAH這個網
2.開啟網路和共用中心/設定新的串連或網路/手動串連到無線網路/網路名稱:GSAH,安全類型:無身分識別驗證(開放式)/下一步/關閉
3.在cmd中運行:netsh wlan set profileparameter GSAH connectiontype=ibss
4.以後每次跑程式只要在cmd中:netsh wlan connect GSAH
5.斷開:netsh wlan disconnect
6.要清除以上設定 :netsh wlan delete profile GSAH
然後開啟網際網路共用中心修改IP地址,如:
IP地址的範圍為:182.168.1.10 ~ 182.168.1.19,如果同時有多台電腦串連,注意IP地址不要衝突。
儲存以後,不妨來ping一下Qbot,看看是否已經串連上了。Qbot的IP地址印刷在後部,範圍為182.168.1.20 ~ 182.168.1.254
確認已經串連上以後,可以開啟一個Simulink模組開始嘗試了。例如開啟expriment1檔案夾中的exp1_cal_d.mdl,如。
點擊QUARC菜單,選擇OPTIONS,或者點擊Simulation ,選擇Model Configration Parameters,開啟配置視窗,如。
Code Genetation 中System target file 通過點擊Browse…選擇quarc_linux_verdex.tlc,interface中MEX-file arguments填寫為‘-w -d /tmp -uri %u‘,‘tcpip://182.168.1.63:17001‘,注意IP地址應改為對應Qbot的地址。然後就可以開始bulid,然後串連Qbot,開始你的機器人旅程吧!
Bulid的過程中可能會報一些錯誤,如果你的Simulink模組中使用了變數(即字母),則在bulid之前,必須要在Matlab命令列中定義並給該變數賦值,否則會報錯;除此之外,interface中MEX-file arguments中的命令格式錯誤也會報錯,注意該命令中的所有標點均為半形,並且沒有空格和定位字元,如果實在查不出來的話,可以直接複製上面的命令修改IP地址後使用。串連的過程中也會報錯,一般原因為interface中MEX-file arguments中IP地址填寫錯誤或者Qbot沒有運行相應程式,此時只需再次審察該命令,或者重新bulid,如果仍然無法串連,可嘗試重啟Qbot,重新串連GSAH,並在ping通之後再進行串連操作。
如果Simulink模組中使用了視覺相關的模組,還可能會報一些其他錯誤。
(先寫到這,明天再更,反正也沒人看╮(╯-╰)╭)
三、常用模組介紹
輪式移動機器人QBot的使用