摘 要
本課題是實(shí)驗(yàn)室的實(shí)驗(yàn)設(shè)備開發(fā)研究項(xiàng)目,針對(duì)能力風(fēng)暴機(jī)器人自身的內(nèi)存較小,不能像計(jì)算機(jī)那樣存儲(chǔ)大量數(shù)據(jù),且無法實(shí)現(xiàn)實(shí)時(shí)控制這些問題,分析了機(jī)器人串口通訊原理。本文應(yīng)用WAP200B無線數(shù)傳模塊,研究了PC機(jī)與能力風(fēng)暴機(jī)器人的無線通訊問題,最終實(shí)現(xiàn)了PC機(jī)與能力風(fēng)暴機(jī)器人及PC機(jī)與PC機(jī)無線數(shù)據(jù)通訊。
本文首先分析了無線數(shù)傳模塊的特點(diǎn),在能夠進(jìn)行數(shù)據(jù)通訊的基礎(chǔ)上,對(duì)無線數(shù)傳模塊的通訊協(xié)議進(jìn)行修改,使之能夠與機(jī)器人的通訊協(xié)議一致,從而實(shí)現(xiàn)了無線數(shù)據(jù)通訊功能。
通過對(duì)WAP200B無線數(shù)傳模塊的通訊協(xié)議的研究,開發(fā)了無線數(shù)傳模塊一對(duì)多、多個(gè)設(shè)備公用串口時(shí)的數(shù)據(jù)通訊問題,并解決了RS232串口只能一對(duì)一通訊的弊端。應(yīng)用VB軟件做了一個(gè)PC機(jī)對(duì)能力風(fēng)暴機(jī)器人的通訊控制軟件,可以實(shí)施對(duì)能力風(fēng)暴機(jī)器人的實(shí)時(shí)控制。并對(duì)能力風(fēng)暴機(jī)器人主板進(jìn)行改進(jìn),使得程序下載自動(dòng)運(yùn)行,完全脫離手動(dòng)過程。
關(guān)鍵字:能力風(fēng)暴機(jī)器人;WAP200B數(shù)傳模塊;RS232串口;無線數(shù)據(jù)通訊協(xié)議。
Abstract
This subject rebbbbbbes into the laboratory equipment. And gives effective solutions towards little memory of Ability Storm Robot . It also gives in time controls towards Ability Storm Robot. Analyses the robot communication by interface, and studied the PC to Ability Storm Robot Wireless Communication agreement , by the end the PC to PC \PC to Ability Storm Robot by Wireless Communication were enable .
This paper Analyses feature of the RF Modem , based on the Wireless Communication , modify the agreement to build communications between PC and Robot . So that we can easily control the Robot.
By the rebbbbbb of the WAP200B RF Modem , tap the ability of the Wireless Communications between multitudinous RF Modem . And gives effective solutions towards the individual between RS232 interface . This subject implemented Wireless Communication by a program compiled by powerful designing language -Visual Basic ,which controls the robot. Finally this paper gives some new creative about the Ability Storm Robot main board , so that the Ability Storm Robot run programs without your hand when the power is on.
Key words :Ability Storm Robot;WAP200B RF Modem;RS232 interface;Wireless Communication agreement .
目 錄
第一章 綜述... 11.1 機(jī)器人綜述... 11.2 現(xiàn)代機(jī)器人的發(fā)展及應(yīng)用前景... 21.3 機(jī)器人的無線通訊... 51.4 本文的工作... 6第二章 能力風(fēng)暴機(jī)器人... 72.1 能力風(fēng)暴機(jī)器人簡(jiǎn)介... 72.2 圖形化交互式C語言簡(jiǎn)介... 92.3 能力風(fēng)暴機(jī)器人的無線通訊... 11第三章 WAP200B無線數(shù)傳模塊... 143.1 WAP200B無線數(shù)傳模塊簡(jiǎn)介... 143.2 WAP200B無線數(shù)傳模塊技術(shù)參數(shù)及配置方式... 173.3 PC機(jī)與能力風(fēng)暴機(jī)器人串口通訊協(xié)議簡(jiǎn)介... 203.4 RS—232串口通訊... 22第四章 PC機(jī)與機(jī)器人無線數(shù)據(jù)通訊... 244.1 無線數(shù)傳模塊的安裝與調(diào)試... 244.2 PC機(jī)對(duì)能力風(fēng)暴機(jī)器人的基本控制過程... 264.3 能力風(fēng)暴機(jī)器人硬件改造... 32第五章 無線通訊的應(yīng)用... 345.1 現(xiàn)場(chǎng)測(cè)量的應(yīng)用... 345.2 傳輸機(jī)制透明便于處理... 365.3 串口無線數(shù)據(jù)傳輸?shù)膽?yīng)用前景... 375.4 串口無線數(shù)據(jù)傳輸?shù)墓δ芡卣?.. 37參考文獻(xiàn):... 39致謝... 40
第一章 綜述
1.1 機(jī)器人綜述
在原始森林里,我們的祖先就學(xué)會(huì)了使用工具來狩獵或者是勞動(dòng),人類文明不斷發(fā)展,各種各樣的工具層出不窮,于是我們就想有沒有一天,出現(xiàn)一種可以替代人類體力勞動(dòng)的機(jī)器,并且能夠完成我們預(yù)期要完成的工作,因此在我們的腦海里就出現(xiàn)了“機(jī)器人”這個(gè)詞語,它可以完成我們想要完成的工作,并且具有一定的判斷力和邏輯推理的能力。機(jī)器人英文名稱“Robot”,不管是在中國(guó)還是在外國(guó),人們都渴望這一種可以取代人工的機(jī)器。對(duì)于機(jī)器人,世界各國(guó)都在深入研究,隨著計(jì)算機(jī)技術(shù)的發(fā)展,現(xiàn)在機(jī)器人的功能不斷完善,并且越來越智能化。
1.1.1
機(jī)器人由來
為了提高工作效率,導(dǎo)致了機(jī)器人的誕生,也正由于機(jī)器人的誕生,使得我們的生活有了本質(zhì)的提高,現(xiàn)在世界各國(guó)不斷深入探究機(jī)器人。將來機(jī)器人必將在我們的生活當(dāng)中充當(dāng)十分重要的角色。盡管“機(jī)器人”一詞的出現(xiàn)和世界上第一臺(tái)工業(yè)機(jī)器人的問世, 都是近幾十年的事;然而,們對(duì)機(jī)器人的幻想與追求卻已有3000多年的歷史。人類向往制造一種像人一樣的機(jī)器,來代替、幫助自己完成各種工作。[1]
機(jī)器人是為了完成和人一樣的工作,所以機(jī)器人也必須有手、腳、眼睛、耳朵,通過各種傳感器傳送給大腦。以根據(jù)需要,我們應(yīng)用生物仿真的一些原理,設(shè)計(jì)制造了相應(yīng)的器件,并且在不斷完善的過程中。
1.1.2
機(jī)器人的幾個(gè)發(fā)展時(shí)期
西周時(shí)期,我國(guó)的能工巧匠偃師研制出了能歌善舞的木制伶人,這是史書記載的我國(guó)最早的機(jī)器人。春秋后期,我國(guó)著名的木匠魯班,曾制造過一只木鳶,它能在空中飛行,三日不下”。1800年前的漢代,大科學(xué)家張衡不僅發(fā)明了地動(dòng)儀,而且發(fā)明了計(jì)里鼓車;行一里,車上木人擊鼓一下,每行十里則擊鐘一下。三國(guó)時(shí)期,蜀國(guó)丞相諸葛亮發(fā)明了“木牛流馬”,用它來運(yùn)送軍糧,支援前方戰(zhàn)爭(zhēng)。
現(xiàn)代機(jī)器人的研究始于20世紀(jì)中期。為了替代人來處理放射性物質(zhì),美國(guó)科學(xué)家于1947年開發(fā)了遙控機(jī)械手,1948年又開發(fā)了主從機(jī)械手。為了確保汽車生產(chǎn)流水線的產(chǎn)品質(zhì)量,1954年提出了工業(yè)機(jī)器人的概念,并申請(qǐng)了專利。該專利的要點(diǎn)是利用人手對(duì)機(jī)器人進(jìn)行動(dòng)作示教,機(jī)器人能實(shí)現(xiàn)動(dòng)作的記錄和再現(xiàn)。這就是所謂的示教再現(xiàn)機(jī)器人。1980年,工業(yè)機(jī)器人在日本普及,故稱該年為“機(jī)器人元年。”
2005年,日本愛知世博會(huì),風(fēng)度優(yōu)雅的機(jī)器人接待員特別引人矚目。它們的外表酷似20多歲的日本女子,有仿真的眼球、睫毛和會(huì)動(dòng)的嘴唇,能聽、說四萬多個(gè)中文、英文、日文和韓文短語,并配有2000多種面部表情。它們有幽默感,它們還會(huì)用基于隱私的理由而拒絕回答那些敏感問題,并交叉雙臂向你鞠躬。[1]
1.2 現(xiàn)代機(jī)器人的發(fā)展及應(yīng)用前景
由于新技術(shù)的應(yīng)用,特別是計(jì)算機(jī)技術(shù)在機(jī)器人上的應(yīng)用,使得現(xiàn)代機(jī)器人的功能越來越強(qiáng)大,并且在很多領(lǐng)域機(jī)器人已經(jīng)取代人力,實(shí)現(xiàn)了真正的人工智能化工業(yè)生產(chǎn)。偉大的發(fā)明家愛迪生曾說:“上帝創(chuàng)造人類,兩條腿是最美妙的杰作?!弊寵C(jī)器人像人一樣用兩條腿走路并非易事。最新研制的檢測(cè)腳底打滑技術(shù)和形成自然步態(tài)技術(shù),保證了用于搶險(xiǎn)救援的人形機(jī)器人,能在各種極其困難的環(huán)境中工作。即使在摩擦系數(shù)為0.1的十分容易滑倒的路面上,它也能保持身體平衡,穩(wěn)步行走。摩擦系數(shù)為0.1,相當(dāng)于汽車行駛在冰面上。它的步行能力由此可見一斑。[1]
相信在不久的將來,我們可以通過改進(jìn)機(jī)器人的制造工藝,以及計(jì)算機(jī)技術(shù)的應(yīng)用,通過使用新的材料,使得機(jī)器人的應(yīng)用越來越廣泛。20世紀(jì)60年代,由于日本經(jīng)濟(jì)的高速發(fā)展,導(dǎo)致了勞動(dòng)力的嚴(yán)重不足。同一時(shí)期,美國(guó)研制了工業(yè)機(jī)器人,這無疑給日本的經(jīng)濟(jì)發(fā)展帶來了福音。1967年日本川崎重工業(yè)公司首先從美國(guó)引進(jìn)了工業(yè)機(jī)器人及其技術(shù),于1968年試制了第一臺(tái)日本產(chǎn)的工業(yè)機(jī)器人“尤尼曼特”。經(jīng)過長(zhǎng)時(shí)間的消化與吸收,日本的工業(yè)機(jī)器人從搖籃時(shí)期走向了成熟的應(yīng)用期。工業(yè)機(jī)器人的應(yīng)用領(lǐng)域從汽車制造業(yè)開始,逐步向其他領(lǐng)域擴(kuò)展。到了80~90年代,日本的工業(yè)機(jī)器人可謂處于繁榮昌盛時(shí)期。幾乎無處不在,再加上日本政府的大力支持,80年代被稱為日本機(jī)器人的“普及元年”。[2]
1.2.1
新材料的應(yīng)用
現(xiàn)代科技越來越發(fā)達(dá),新的特種材料的應(yīng)用,不僅使得機(jī)器人的體積很小,并且結(jié)構(gòu)也越來越合理,小而精是機(jī)器人的主流。在《西游記》里有這樣一個(gè)經(jīng)典場(chǎng)面令人難忘:孫悟空保唐僧去西天取經(jīng),在路過火焰山時(shí),想借鐵扇公主的扇子撲滅火焰山的烈火,不料鐵扇公主不給面子,孫悟空便變成一只小蟲子鉆進(jìn)鐵扇公主的肚子里,大鬧五臟六腑,迫使鐵扇公主將扇子借給了他。如今隨著納米武器的出現(xiàn),這種神話正成為現(xiàn)實(shí)。
“納米技術(shù)”概念首先是由美國(guó)未來學(xué)家德雷克斯勒提出的。1968年,他在一本名為《造物引擎》的書中描述了能夠進(jìn)行自我復(fù)制的納米機(jī)器人。它們能瘋狂地復(fù)制自身,在很短的時(shí)間內(nèi)就把地球變成了一大團(tuán)完全由納米機(jī)器人組成的“ 灰色粘質(zhì)”。德雷克斯勒的“ 納米技術(shù)” 概念聽上去有點(diǎn)幻想,但確實(shí)是一種天才的預(yù)言。隨著納米技術(shù)的迅猛發(fā)展,特別是微機(jī)電系統(tǒng)的初步成功,為軍事科技工作者研制納米武器奠定了物質(zhì)基礎(chǔ)?,F(xiàn)在,各軍事大國(guó)相繼制定了項(xiàng)目繁多的軍用納米技術(shù)開發(fā)應(yīng)用計(jì)劃,美國(guó)在此領(lǐng)域取得的進(jìn)步最大。
我們也不難發(fā)現(xiàn),機(jī)器人的應(yīng)用,很大程度上得益于新材料的應(yīng)用,而納米技術(shù)的出現(xiàn)也使機(jī)器人在材料上有了新的突破。小而精的機(jī)器人也越來越廣泛的出現(xiàn)在我們的生活當(dāng)中,給我們帶來了很大的方便,特別是在人們無法到達(dá)的一些地方,機(jī)器人起到了至關(guān)重要的作用。[3]
1.2.2
計(jì)算機(jī)的應(yīng)用
計(jì)算機(jī)的發(fā)明是人類的一大跨越,很多數(shù)據(jù)計(jì)算可以通過計(jì)算機(jī),而人的作用就是對(duì)計(jì)算機(jī)的計(jì)算結(jié)果進(jìn)行綜合比較,得到比較優(yōu)越的結(jié)果。
每一步的工作過程,每一個(gè)工作過程的時(shí)間間隔,通過計(jì)算機(jī)來編程實(shí)現(xiàn)是非常精確的。機(jī)器人的各種行為,脫離了計(jì)算機(jī)的作用將會(huì)受到很大的限制。有了計(jì)算機(jī),對(duì)機(jī)器人的控制最終體現(xiàn)的是通過計(jì)算機(jī)幾個(gè)程序的運(yùn)行,機(jī)器人就完全按照我們的意圖進(jìn)行運(yùn)作。而我們也沒有了繁瑣的手工控制,只要在每一個(gè)運(yùn)行的程序上輸入我們的預(yù)期達(dá)到的目的,剩下的就是計(jì)算機(jī)對(duì)機(jī)器人的控制。
現(xiàn)實(shí)的使用過程當(dāng)中,計(jì)算機(jī)與智能機(jī)器人是相互依存的,沒有計(jì)算機(jī)的實(shí)現(xiàn),機(jī)器人是一個(gè)很簡(jiǎn)單的勞動(dòng)工具;有了計(jì)算機(jī),機(jī)器人的勞動(dòng)就像一個(gè)有思想的智能機(jī)器一樣,會(huì)自己處理一些事件。而光有計(jì)算機(jī)沒有智能的機(jī)器,那么,就沒有一個(gè)會(huì)實(shí)現(xiàn)人類意圖的工具,因此計(jì)算機(jī)與智能機(jī)器人是相互依存的,密不可分的。
1.2.3
是人類生產(chǎn)的輔助工具
在茫茫宇宙中,人類是無法生存的,而在這個(gè)充滿著各種挑戰(zhàn)的空間中,機(jī)器人取代了人類的勞動(dòng)。各種各樣的靈巧的機(jī)器人正是宇航員的得力助手,協(xié)助人類對(duì)未知世界的探索。
機(jī)器蛙重量輕,質(zhì)量不超過1.3kg
,可以像青蛙那樣跳躍,因此可以在崎嶇多障礙的星球表面上快速的活動(dòng)。例如在地球上機(jī)器蛙最遠(yuǎn)可以跳2.4米,而由于火星的重力只有地球的三分之一,因此機(jī)器蛙在火星上最遠(yuǎn)可以7.2米
。給機(jī)器蛙安裝上很多的傳感器之后,由于重量輕,比各種探測(cè)車經(jīng)濟(jì)很多。
蜘蛛機(jī)器人是科學(xué)家從蜘蛛的攀爬中得到啟發(fā),給蜘蛛機(jī)器人的觸角安裝上各種傳感器,就可以完成很多任務(wù)了??茖W(xué)家在蜘蛛機(jī)器人的前部安裝上微型攝像機(jī),憑借小巧的身材,蜘蛛機(jī)器人很適合勘探彗星、小行星等天體。在國(guó)際空間站上,蜘蛛機(jī)器人還可以充當(dāng)小小的維護(hù)員,及時(shí)發(fā)現(xiàn)空氣泄露等意外事故。
如今的機(jī)器人越來越像人了。它們有人造肌肉、皮膚,還會(huì)像人一樣認(rèn)字。機(jī)器人正朝人類“進(jìn)化”著。日本科學(xué)家開發(fā)出一種新型的人造肌肉。它的形狀像口香糖,長(zhǎng)約5厘米
,寬1厘米
,厚幾百微米。它由一種隨電壓變化而伸縮的高分子材料與一種不易揮發(fā)的離子液體混合制成,可以在正常環(huán)境下長(zhǎng)期使用。這種人造肌肉可根據(jù)施加在其表面上的電壓強(qiáng)度和方向,改變彎曲的程度和方向。在人造肌肉的表面加上1.5伏的電壓,可上下最大彎曲40微米,電壓再加大,可彎曲數(shù)百微米。如電壓方向改變,人造肌肉彎曲的方向也會(huì)改變。另外,人造肌肉對(duì)電流的靈敏度很高,打開和關(guān)上電源,人造肌肉的反應(yīng)時(shí)間僅為0.1秒。因此如果在微型機(jī)器人的關(guān)節(jié)和驅(qū)動(dòng)部位裝上這種人造肌肉,它可像人的關(guān)節(jié)一樣發(fā)揮作用??茖W(xué)家發(fā)明了一種新型的波紋金屬膜,它可以用來制作機(jī)器人的“皮膚”。這種波紋狀金屬膜即使長(zhǎng)度拉伸一倍也仍然能導(dǎo)電,而不像一般的導(dǎo)線會(huì)拉斷。因?yàn)樵陬愃迫祟惼つw的硅橡膠薄膜里面,埋有25納米厚的黃金薄膜制作的彈性連接器,所以,機(jī)器人的“皮膚”有很大韌性,至少拉伸15%也不會(huì)斷裂。
韓國(guó)科學(xué)家研制出一種機(jī)器人,它能讀書并對(duì)人的行動(dòng)做出反應(yīng)。以前的機(jī)器人以體力勞動(dòng)型居多,該機(jī)器人。的出現(xiàn)預(yù)示著具有智能和感性的新機(jī)器人時(shí)代印巧來臨,它能給人提供各種知識(shí)和信息服務(wù),該機(jī)器人是以影像和文字識(shí)別功能以及語音合成技術(shù)相結(jié)合而制作的。它能從人的臉型中判斷其身份,也能夠辨認(rèn)文字,并把它讀出來。它能夠與人做一些簡(jiǎn)單的溝通,甚至能夠在網(wǎng)上聊天。這種新型智能機(jī)器人的智商只有40,但經(jīng)過一些具體改進(jìn)的話,能夠提高到70—80左右。設(shè)計(jì)該機(jī)器人的特點(diǎn)是能夠及時(shí)地應(yīng)用軟件技術(shù)的新成果,實(shí)用性很強(qiáng)?,F(xiàn)階段已經(jīng)能夠制造出盲人用的智能機(jī)器人、讀書機(jī)器人等。
雖然真正會(huì)思考的機(jī)器人還沒有出現(xiàn),但是可以預(yù)料,在不久的未來這種機(jī)器人會(huì)誕生。一旦這種機(jī)器人來到世界上,不少科學(xué)家也擔(dān)心機(jī)器人太聰明了,它們會(huì)反過來控制人類。也許到那時(shí),科學(xué)家能在超級(jí)智能機(jī)器人上安裝保護(hù)指令,以便在任何情況下保護(hù)人類不受傷害。[4]
1.3 機(jī)器人的無線通訊
對(duì)于機(jī)器人控制,在無線電出現(xiàn)之前,只是通過有線來實(shí)現(xiàn)的。當(dāng)我們有了無線電波的時(shí)候,人們充分認(rèn)識(shí)到了它的作用,特別實(shí)在通信領(lǐng)域,更是離不開無線電波。到了現(xiàn)代,無線通訊十分發(fā)達(dá),幾乎所有的移動(dòng)機(jī)器人都需要無線通訊??梢哉f無線通訊是現(xiàn)代機(jī)器人不可或缺的一個(gè)部分,如果沒有無線通訊,那么機(jī)器人的很多現(xiàn)場(chǎng)數(shù)據(jù)無法實(shí)時(shí)的傳輸給工作人員,機(jī)器人的作用將會(huì)受到很大的影響。
無線通訊,在發(fā)展的初期是報(bào)文通訊,是我們熟悉的收發(fā)電報(bào)。到了現(xiàn)代各種信息的通訊,通訊技術(shù)已經(jīng)非常成熟了。
對(duì)于機(jī)器人的通訊,如果脫離了無線電波,那么我們的易用性、實(shí)時(shí)性將會(huì)受到很大的影響。無線電波以光速傳播,在通訊過程中,在一定的范圍內(nèi),傳輸?shù)臅r(shí)間可以忽略。眾所周知在潛艇的通訊中,除了聲波的通訊外,長(zhǎng)波通訊也是必不可少的。聲波通訊雖然方便,但是受海洋的影響很大,而且距離很短。在所有的通訊設(shè)備當(dāng)中,只有無線電波通訊是應(yīng)用最為廣泛的,我們幾乎每天都離不開無線電波。而且無線通訊相比有線通訊,除了省去布線的麻煩,還有一點(diǎn)就是傳輸?shù)木嚯x長(zhǎng),具有衍射效應(yīng),不易受到外部障礙物的干擾。
1.4 本文的工作
機(jī)器人無線通訊在自動(dòng)控制技術(shù)中非常重要。通常,在對(duì)能力風(fēng)暴機(jī)器人的數(shù)據(jù)傳輸中,一直使用的是RS232串口數(shù)據(jù)線。目前,實(shí)驗(yàn)室購(gòu)買的能力風(fēng)暴機(jī)器人不具備無線數(shù)據(jù)通訊,并且由于RS232串口是負(fù)邏輯,線路傳輸?shù)碾妷合鄬?duì)較高,使用不當(dāng)容易損壞設(shè)備,而無線通訊就可以解決這個(gè)問題。本文通過對(duì)WAP200B無線數(shù)傳模塊的研究,實(shí)現(xiàn)用WAP200B無線數(shù)傳模取代RS232串口數(shù)據(jù)線,從而實(shí)現(xiàn)對(duì)能力風(fēng)暴機(jī)器人的實(shí)時(shí)無線數(shù)據(jù)傳輸。WAP200B無線數(shù)傳模性能優(yōu)越,不僅通訊模塊的傳輸穩(wěn)定,而且擁有64個(gè)頻道,達(dá)到在多機(jī)通訊時(shí)互不干擾,給用戶的功能擴(kuò)展帶來了極大的方便。有了無線數(shù)傳模塊我們?cè)诙鄼C(jī)器人的足球賽當(dāng)中就可以實(shí)現(xiàn)實(shí)時(shí)給能力風(fēng)暴機(jī)器人下載新的程序,達(dá)到對(duì)能力風(fēng)暴機(jī)器人的實(shí)時(shí)控制。并且在一些危險(xiǎn)的場(chǎng)合,例如公安機(jī)關(guān)在使用機(jī)器人實(shí)施排爆過程中,需要處理很多機(jī)器人傳回的實(shí)時(shí)數(shù)據(jù),這時(shí)布線速度慢,使用無線數(shù)傳模塊可以解決這個(gè)問題。
第二章 能力風(fēng)暴機(jī)器人
2.1 能力風(fēng)暴機(jī)器人簡(jiǎn)介
AS-UII能力風(fēng)暴機(jī)器人是由廣茂達(dá)公司生產(chǎn)的大學(xué)版機(jī)器人,擴(kuò)展能力強(qiáng),是動(dòng)手操作和實(shí)現(xiàn)能力培養(yǎng)的機(jī)器人平臺(tái),它還可以借助于交互式C語言和開放式接口進(jìn)一步提高機(jī)器人的開發(fā)潛力。該機(jī)器人外形成圓盤狀,底盤上有兩個(gè)主動(dòng)輪和兩個(gè)導(dǎo)向輪,自帶的傳感器有:碰撞傳感器、紅外傳感器、光敏傳感器、光電編碼器等,同時(shí)利用硬件擴(kuò)展總線ASBUS可以增加紅外擴(kuò)展卡以及其他各種類型的傳感器。通過該機(jī)器人可以實(shí)現(xiàn)設(shè)計(jì)者所希 望的各種動(dòng)作和任務(wù)。從任務(wù)的實(shí)現(xiàn)過程中可以使設(shè)計(jì)者的各種能力得到進(jìn)一步的訓(xùn)練和提高。在具體的實(shí)現(xiàn)過程中我們發(fā)現(xiàn)由于機(jī)器人硬件本身的精度以及 各種綜合因素的影響,使得在對(duì)能力風(fēng)暴進(jìn)行實(shí)際開發(fā)和應(yīng)用過程中可能會(huì)遇到一系列的技術(shù)問題,在我們的設(shè)計(jì)、開發(fā)與實(shí)踐中通過自身體驗(yàn),對(duì)在實(shí)際操
作中所遇到的實(shí)際問題采取了各種相應(yīng)的補(bǔ)救措施,得到了幾種較好的解決方案。[5]
2.1.1
機(jī)器人組成
能力風(fēng)暴機(jī)器人主要由底盤、主板、液晶顯示屏四部分組成。
底盤:由萬向輪、直流電機(jī)、電池、電池巢、碰撞開關(guān)、光電碼盤等器件構(gòu)成。其主要的作用是完成設(shè)備的機(jī)械運(yùn)動(dòng),為功能的擴(kuò)展提供搭載平臺(tái)。光電碼盤適用于獲取測(cè)試電機(jī)的轉(zhuǎn)速。
主板:提供各種傳感器的接口,電源開關(guān)、數(shù)據(jù)線接口、運(yùn)行、復(fù)位鍵。實(shí)驗(yàn)中采用能力風(fēng)暴智能機(jī)器人作為平臺(tái) ,能力風(fēng)暴是一個(gè)直徑為30cm
,高 13cm 的頂端為半圓形 ,下部裝有圓形碰撞環(huán)的移動(dòng)機(jī)器人,它采用單片機(jī)M68HC11作為微處理器 ,擴(kuò)展了32 k的靜態(tài)不揮發(fā)RAM ,輔助以驅(qū)動(dòng)、通訊、復(fù)位等外圍電路。整個(gè)能力風(fēng)暴智能機(jī)器人平臺(tái)有以下主要特點(diǎn) :
(1) 是典型的自主移動(dòng)機(jī)器人。具有較高的自規(guī)劃、自組織、自適應(yīng)能力,適合于在比較復(fù)雜的非結(jié)構(gòu)環(huán)境中工作, 是一個(gè)高智能、高模塊的復(fù)雜系統(tǒng) ;
(2) 配有一定數(shù)量的傳感器,具有一定的感知周圍環(huán)境的能力。傳感器包括2支紅外發(fā)射管和 1 支紅外接收模塊,2 支光傳感器和4 支碰撞傳感器, 另外,還包括旋轉(zhuǎn)角度編碼器和麥克風(fēng)。紅外傳感器可以判斷前方約 120度內(nèi) ,距離在10~50 cm
范圍內(nèi)的物體 ;光傳感器可判斷光線的強(qiáng)弱 ;碰撞傳感器安裝在機(jī)器人外部的碰撞環(huán)上 ,能感受到 8 個(gè)方向上的碰撞 ;麥克風(fēng)沒有方向性 ,能感知聲音的強(qiáng)弱 ;旋轉(zhuǎn)編碼器用來測(cè)量輪子旋轉(zhuǎn)的角度數(shù) ;
(3) 機(jī)器人與計(jì)算機(jī)之間使用基于M68 HC11單片機(jī)開發(fā)的交互式C語言進(jìn)行編程。交互式C語言由兩部分組成 : 編譯環(huán)境和機(jī)器人操作系統(tǒng) 。 它的強(qiáng)大功能是可多進(jìn)程運(yùn)行 。機(jī)器人和計(jì)算機(jī)之 間通過串口操作 ,將在計(jì)算機(jī)上編譯通過的程序通 過串口線下載到機(jī)器人上后 ,機(jī)器人即可自主運(yùn)行 ;
(4) 機(jī)器人設(shè)計(jì)了硬件擴(kuò)展總線 ASBUS(ability storm BUS) 。這樣可方便對(duì)機(jī)器人的外圍電路 進(jìn)行擴(kuò)展 ,也為機(jī)器人之間的相互無線通信提供了前提條件。硬件擴(kuò)展總線分兩組,分別為硬件擴(kuò)展總線A、硬件擴(kuò)展總線B ,共28根信號(hào)線 。[6]
(5)液晶顯示屏的作用是顯示能力風(fēng)暴機(jī)器人的輸出等一些需要直觀顯示的數(shù)據(jù)。
2.1.2
機(jī)器人性能擴(kuò)展
能力風(fēng)暴機(jī)器人提供了各種擴(kuò)展卡,用戶可以根據(jù)需要對(duì)能力風(fēng)暴機(jī)器人進(jìn)行擴(kuò)展。主要有:光敏擴(kuò)展套件、紅外接收擴(kuò)展卡、紅綠燈卡、遠(yuǎn)紅外火焰擴(kuò)展套件、地面灰度檢測(cè)卡、I/O 擴(kuò)展卡、I/O 擴(kuò)展卡、紅外測(cè)距卡、超聲測(cè)距卡、數(shù)字指南針、無線通訊模塊、多功能擴(kuò)展卡、伺服電機(jī)驅(qū)動(dòng)卡、模擬口擴(kuò)展卡。
能力風(fēng)暴機(jī)器人的大部分功能都是通過使用擴(kuò)展卡來實(shí)現(xiàn)的,因此要有一個(gè)功能完善的機(jī)器人,擴(kuò)展卡的使用是不可或缺的。如果用戶對(duì)擴(kuò)展卡的使用還是覺得不夠,可以使用多功能擴(kuò)展卡,進(jìn)行自己的設(shè)計(jì),在設(shè)計(jì)之前必須熟知各個(gè)擴(kuò)展地址,否則可能會(huì)出現(xiàn)事半功倍的結(jié)果甚至?xí)?dǎo)致一些不必要的麻煩。
功能的擴(kuò)展是能力風(fēng)暴機(jī)器人的一大特色,由于能力風(fēng)暴機(jī)器人的擴(kuò)展功能非常豐富,并且使用的是我們非常容易讀懂的圖形化交互式C語言,因此給用戶提供了很大的方便。例如無線通訊模塊,可以實(shí)現(xiàn)PC機(jī)對(duì)能力風(fēng)暴機(jī)器人的數(shù)據(jù)傳輸,能力風(fēng)暴機(jī)器人與能力風(fēng)暴機(jī)器人之間的數(shù)據(jù)傳輸,還可以實(shí)現(xiàn)PC機(jī)對(duì)能力風(fēng)暴機(jī)器人的程序下載。[7]
2.2 圖形化交互式C語言簡(jiǎn)介
對(duì)于C語言,我們是比較熟悉的,C語言具有符合英語的日常使用習(xí)慣,比較容易讀懂程序。
在VJC 中,不僅可以用直觀的流程圖編程,也可以用JC語言編寫更高級(jí)的機(jī)器人程序。流程圖和 JC 語言雙劍合壁,既能領(lǐng)讀者輕松入門,又能夠讓讀者在編程中發(fā)揮最大的創(chuàng)造力。VJC 操作簡(jiǎn)便,有活潑明快的圖案和簡(jiǎn)短的文字說明。讀者可以使用形象化的模塊,由頂向下搭建流程圖,搭建流程圖的同時(shí),動(dòng)態(tài)生成無語法錯(cuò)誤的JC 代碼。流程圖搭建完畢,程序就已經(jīng)編寫完成,可以立即下載到機(jī)器人中運(yùn)行。已入門的讀者可以直接在JC 代碼編輯環(huán)境中編寫程序,還可以邊寫邊試,發(fā)現(xiàn)錯(cuò)誤,校正修改,十分方便。[8]
2.2.1 VJC
簡(jiǎn)介
圖形化交互式C語言(簡(jiǎn)稱VJC)是用于能力風(fēng)暴智能機(jī)器人系列產(chǎn)品的軟件開發(fā)系統(tǒng), 具有基于流程圖的編程語言和交互式C 語言(簡(jiǎn)稱 JC)。VJC 為開發(fā)智能機(jī)器人項(xiàng)目、程序與算法、教學(xué)等提供了簡(jiǎn)單而又功能強(qiáng)大的平臺(tái),是全球開創(chuàng)性的具有自主知識(shí)產(chǎn)權(quán)的產(chǎn)品。
2.2.2
流程圖
流程圖是用一些圖形表示各種操作的。用圖形表示算法,直觀形象,易于理解。用常規(guī)的計(jì)算機(jī)編程語言(如 C、FORTRAN、JAVA)編程,需要輸入復(fù)雜的程序代碼,并且編寫的程序還要符合特定的語法。而流程圖編程不需要記憶計(jì)算機(jī)語言的語法,不需要使用鍵盤輸入程序代碼,只需要按照“先作什么,后作什么”的設(shè)想,就可以編出程序。VJC正是按這個(gè)思想設(shè)計(jì)的。使用VJC 軟件,用戶不用關(guān)心語言實(shí)現(xiàn)的細(xì)節(jié),同時(shí)也有效避免了語法錯(cuò)誤,有利于集中精力尋求解決問題的方法。圖2.1 程序流程圖
如圖2.1所示能夠比較清楚地顯示程序的邏輯關(guān)系,因此它是表示算法的較好工具,我們很清楚程序是如何執(zhí)行的。省去了編輯的過程,流程圖的使用給我們帶來了很大的方便。
流程圖沒有計(jì)算機(jī)編程復(fù)雜以及一系列語法、邏輯、變量定義等問題,不會(huì)出現(xiàn)因?yàn)樽兞渴褂貌划?dāng)而出現(xiàn)邏輯錯(cuò)誤,即使是沒有計(jì)算機(jī)編程基礎(chǔ)也很容易上手。另外流程圖因?yàn)榻Y(jié)構(gòu)清晰,思緒明朗可以讓人一眼就讀懂程序,不需要注釋。有的計(jì)算機(jī)程序,由于比較復(fù)雜,難以讀懂,并且在相應(yīng)的位置需要有一些注釋,即使有注釋,在重新讀程序的時(shí)候,仍然需要一步一步的看程序整個(gè)執(zhí)行過程,不僅浪費(fèi)時(shí)間,效率也很低。流程圖就不會(huì)出現(xiàn)上述的情況。通觀整個(gè)圖形化編程,一目了然。
2.2.3 VJC
特點(diǎn)
從流程圖自動(dòng)生成正確 JC代碼、智能下載、實(shí)時(shí)多任務(wù)機(jī)器人操作系統(tǒng)(運(yùn)行錯(cuò)誤檢測(cè))是VJC語言的特點(diǎn)。
交互式C語言(簡(jiǎn)稱JC)是用于能力風(fēng)暴智能機(jī)器人的專用開發(fā)語言。 JC由兩部分組成:編譯環(huán)境和能力風(fēng)暴操作系統(tǒng)ASOS。JC實(shí)現(xiàn)了標(biāo)準(zhǔn)C語言的一個(gè)子集,它包括控制語句(for,while,if else)、局部變量和全局變量、數(shù)組、指針、16位和32位整數(shù)以及32位浮點(diǎn)數(shù)。JC不直接編譯生成針對(duì)特定處理器的機(jī)器代碼,而是先編譯生成基于堆棧虛擬機(jī)的偽代碼。然后這種偽代碼由能力風(fēng)暴操作系統(tǒng)解釋執(zhí)行。JC這種不尋常的編譯方式有以下優(yōu)點(diǎn):
(1) 解釋執(zhí)行:允許檢查運(yùn)行錯(cuò)誤。例如:JC在運(yùn)行時(shí),數(shù)組下標(biāo)的檢查。
(2) 代碼更精簡(jiǎn):偽代碼比機(jī)器代碼更簡(jiǎn)短。
(3) 多任務(wù):由于偽代碼是完全基于堆棧的,進(jìn)程狀態(tài)完全由它的堆棧和程序計(jì)數(shù)器所決定。因此只需要裝載新的堆棧指針和程序計(jì)數(shù)器就可以方便地實(shí)現(xiàn)任務(wù)切換。任務(wù)切換由操作系統(tǒng)處理,而不是編譯器。
JC與標(biāo)準(zhǔn)C對(duì)比:
JC語言是建立在ANSI C標(biāo)準(zhǔn)上的。但是它們有些重要的區(qū)別。許多區(qū)別是因?yàn)镴C比標(biāo)準(zhǔn)C更“安全”。例如,JC在運(yùn)行時(shí)要檢查數(shù)組下標(biāo),所以數(shù)組不能被變?yōu)橹羔槪膊豢梢赃M(jìn)行指針運(yùn)算。另一些區(qū)別是由于JC的運(yùn)行時(shí)間更短更高效。例如,JC的printf函數(shù)就沒有ANSI C中的許多不常用的格式化選項(xiàng)。
2.3 能力風(fēng)暴機(jī)器人的無線通訊
對(duì)于機(jī)器人,最重要的作用就是完成我們指定的任務(wù)。比如說,在排爆機(jī)器人中,我們需要機(jī)器人先到達(dá)指定的地點(diǎn),然后返回一些數(shù)據(jù)給現(xiàn)場(chǎng)工作人員,如果在短距離可以用有線通訊,而長(zhǎng)距離就需要無線通訊了。并且有線通訊有種種的局限性,最大的一點(diǎn)就是距離越長(zhǎng)越不可靠,并且越不方便,特別是在復(fù)雜的情況下,無線通訊更具有優(yōu)勢(shì)。所以我們把無線通訊作為我們的研究對(duì)象。
機(jī)器人的無線通訊,有很多的形式,這里我們主要研究PC機(jī)對(duì)能力風(fēng)暴機(jī)器人的串口無線通訊。由于串口通訊在現(xiàn)在的試驗(yàn)中使用的是最為廣泛的,并且串口通訊協(xié)議簡(jiǎn)單,對(duì)設(shè)備的要求并不高。
無線通訊的形式多種多樣,紅外無線通訊也是其中的一種,紅外線的有效作用距離相對(duì)于波長(zhǎng)比它長(zhǎng)很多的無線電波要遜色很多,紅外線的接收脈沖頻率是38.5KHz左右,對(duì)于數(shù)據(jù)流量大一點(diǎn)的數(shù)據(jù)是傳送不了的。因此紅外無線通訊的距離近,頻帶窄,不能滿足我們對(duì)數(shù)據(jù)傳輸?shù)囊螅晕覀冞x用無線電波進(jìn)行串口通訊。WAP200B無線數(shù)傳模塊的作用距離長(zhǎng),并且波特率范圍廣,適合于一般場(chǎng)合的無線數(shù)字通訊。
2.3.1
通訊模塊的作用
(1)保護(hù)設(shè)備
實(shí)現(xiàn)無線數(shù)據(jù)通訊的主要目的是取代數(shù)據(jù)線,實(shí)現(xiàn)長(zhǎng)距離的數(shù)據(jù)通訊。更加方便快捷,能力風(fēng)暴機(jī)器人的數(shù)據(jù)傳輸使用的是RS232串口通訊協(xié)議,數(shù)據(jù)線連接時(shí)用-15v代表二進(jìn)制的1,用+15v代表二進(jìn)制的0,這么大的電壓差,如果使用不慎很容易將我們的元器件燒壞。而如果加上無線數(shù)據(jù)通訊模塊,那么就不需要數(shù)據(jù)線的反復(fù)插拔,方便下載。也就不用擔(dān)心沒有關(guān)電源插拔數(shù)據(jù)線。接通能力風(fēng)暴機(jī)器人的電源,并且WAP200B無線數(shù)傳模塊直接安裝在能力風(fēng)暴機(jī)器人上,剩下的程序修改,程序下載就不需要再通過插拔數(shù)據(jù)線。避免了由于忘記關(guān)電源,導(dǎo)致帶電插拔數(shù)據(jù)線而對(duì)設(shè)備造成損壞。
(2)實(shí)時(shí)通訊
通過無線數(shù)傳模塊可以在各種情況下實(shí)現(xiàn)對(duì)能力風(fēng)暴機(jī)器人的實(shí)時(shí)控制。能力風(fēng)暴機(jī)器人的功能非常強(qiáng)大,但是它只是一個(gè)不會(huì)進(jìn)行“人際交往”的機(jī)器人,如果我們有一些想法想盡快告訴它,還必須給它“重新輸血”。如果情況復(fù)雜,而且距離很遠(yuǎn),數(shù)據(jù)交換就變得非常困難。所以無線通訊就是增強(qiáng)能力風(fēng)暴機(jī)器人的“人際交往”能力,拓展它的功能。通過無線通訊,我們就可以只在計(jì)算機(jī)上操作,就改變了能力風(fēng)暴機(jī)器人的內(nèi)部程序,而且由于無線通訊是全開放的。在多個(gè)能力風(fēng)暴機(jī)器人的程序下載過程中,我們直接對(duì)所有的機(jī)器人廣播就可以了。
PC機(jī)接收能力風(fēng)暴機(jī)器人反饋的信息,對(duì)能力風(fēng)暴機(jī)器人的實(shí)時(shí)控制是為了讓能力風(fēng)暴機(jī)器人按照我們的意圖運(yùn)行程序,但是能力風(fēng)暴機(jī)器人具體做的怎么樣,除了通過我們的觀察,我們是沒有具體的反饋信息。也就是我們需要對(duì)能力風(fēng)暴機(jī)器人執(zhí)行過程中的運(yùn)動(dòng)參數(shù)進(jìn)行修改,如果單憑視覺觀察,是沒有辦法給出精確的數(shù)值,而能力風(fēng)暴機(jī)器人本身帶的傳感器所探測(cè)的信息也沒有辦法傳輸回給計(jì)算機(jī)處理。所以接收能力風(fēng)暴機(jī)器人反饋的信息是數(shù)據(jù)通訊的一個(gè)部分,是我們實(shí)現(xiàn)對(duì)能力風(fēng)暴機(jī)器人實(shí)時(shí)狀態(tài)控制的信息來源。
(3)取代數(shù)據(jù)線進(jìn)行穩(wěn)定數(shù)據(jù)傳輸
通過測(cè)試,WAP200B無線數(shù)傳模塊對(duì)能力風(fēng)暴機(jī)器人的數(shù)據(jù)傳輸相當(dāng)穩(wěn)定,可以與有線傳輸相媲美。當(dāng)參數(shù)設(shè)置DTR信號(hào)線有效時(shí),可對(duì)模塊的頻道、發(fā)射功率進(jìn)行修改。共有64個(gè)頻道。
2.3.2
通訊模塊的經(jīng)濟(jì)性
在不考慮經(jīng)濟(jì)因素的情況下,可以制造出很多很好用的產(chǎn)品,但是這些產(chǎn)品的價(jià)值會(huì)很低,實(shí)驗(yàn)就會(huì)失去意義,也是我們所不會(huì)采納的。因此,在考慮到一定的實(shí)用性的同時(shí),我們有必要對(duì)產(chǎn)品的價(jià)格進(jìn)行一定的考慮。WAP200B無線數(shù)傳模塊不僅功能齊全,并且價(jià)格相對(duì)于廣茂達(dá)公司提供的專供能力風(fēng)暴機(jī)器人使用的無線數(shù)傳模塊要低很多,所以我們使用了WAP200B無線數(shù)傳模塊。并且由于這個(gè)價(jià)格相對(duì)較低。在一支足球機(jī)器人的隊(duì)伍里,如果每一個(gè)機(jī)器人都安裝上無線數(shù)傳模塊,那么使用WAP200B無線數(shù)傳模塊會(huì)令我們的開支減少很多。
第三章 WAP200B無線數(shù)傳模塊
3.1 WAP200B無線數(shù)傳模塊簡(jiǎn)介
3.1.1 WAP200B
無線數(shù)傳模塊特征
(1)抗干擾能力強(qiáng),傳輸穩(wěn)定
WAP200B無線數(shù)傳模塊基于FSK的調(diào)制方式,采用高效前向糾錯(cuò)信道編碼技術(shù),提高了數(shù)據(jù)抗突發(fā)干擾和隨機(jī)干擾的能力,在信道誤碼率為10-2時(shí),可得到實(shí)際誤碼率10-5~10-6,在主從式系統(tǒng)應(yīng)用并且主機(jī)需要定時(shí)發(fā)送時(shí),可以設(shè)置成自動(dòng)跳頻模式,以提高抗干擾能力;內(nèi)置高速 MCU 做FEC(前向糾錯(cuò))處理,通信可靠性可與有線媲美;適用于RS232串口數(shù)據(jù)通訊,主要器件是WAP200B無線數(shù)傳模塊,適用TTL邏輯電平,經(jīng)過MAX202的TTL—RS232、RS232—TTL電平轉(zhuǎn)換,與需要通訊的設(shè)備進(jìn)行連接。
(2)參數(shù)軟件修改,參數(shù)設(shè)置掉電即保存
通訊的頻道數(shù)是64,波特率從1200bps到115200bps,發(fā)射功率可以在線修改。當(dāng)需要修改頻道、波特率、發(fā)射功率時(shí),通過向通訊模塊下發(fā)16進(jìn)制的指令來修改。
通過實(shí)驗(yàn),我們發(fā)現(xiàn)WAP200B無線數(shù)傳模塊修改完參數(shù)之后只有在切斷電源,再重新上電時(shí),參數(shù)才會(huì)改變。在斷電之前,用戶使用的參數(shù)還是原來的,只有在斷電之后再上電,新的參數(shù)才有效。出廠默認(rèn)設(shè)置為:27頻道、波特率115200、校驗(yàn)位N、數(shù)據(jù)位為8、停止位為1、發(fā)射的頻率為434.026MHz。[9]
(3)傳輸機(jī)制透明
WAP200B無線數(shù)傳模塊的傳輸機(jī)制是透明傳輸,也就是說在數(shù)據(jù)發(fā)送時(shí)天線是向外發(fā)射無線電波的,當(dāng)數(shù)據(jù)發(fā)送完畢,WAP200B無線數(shù)傳模塊的天線是用于接收數(shù)據(jù)的,只要沒有數(shù)據(jù)的發(fā)出過程,那么無線數(shù)傳模塊就一直在等待需要發(fā)送的數(shù)據(jù)和無線數(shù)傳模塊天線接收到的無線電波。還有一種模式就是WAP200B無線數(shù)傳模塊處于低功耗待機(jī)狀態(tài),當(dāng)需要工作的時(shí)候,再喚醒數(shù)傳模塊,無線數(shù)傳模塊的數(shù)據(jù)發(fā)送過程是很耗電的,這就可以節(jié)約電量,讓模塊的工作時(shí)間更長(zhǎng)一些。
3.1.2
基本組成、接口特性
如圖3.1,從左至右為電源接口、RS232串口、穩(wěn)壓電源、MAX202電平轉(zhuǎn)換芯片、WAP200B RF Modem、天線、數(shù)據(jù)發(fā)送指示燈、數(shù)據(jù)接收指示燈、參數(shù)調(diào)整指示燈、電源指示燈。
WAP200B無線數(shù)傳模塊接收到的數(shù)據(jù)輸出格式是TTL邏輯電平,在電路板上有一個(gè)MAX202的電平轉(zhuǎn)換芯片用于將無線數(shù)傳模塊輸出的TTL邏輯電平轉(zhuǎn)換為串口RS232電平,以及將串口接收到的數(shù)據(jù)轉(zhuǎn)換成TTL邏輯電平再輸入到WAP200B無線數(shù)傳模塊通過載波將數(shù)據(jù)發(fā)送出去。圖3.1 WAP200B無線數(shù)傳模塊實(shí)物圖
3.1.3
發(fā)射頻率、功率可變










