基于慧魚模型下的循跡小車設計_第1頁
基于慧魚模型下的循跡小車設計_第2頁
基于慧魚模型下的循跡小車設計_第3頁
基于慧魚模型下的循跡小車設計_第4頁
基于慧魚模型下的循跡小車設計_第5頁
已閱讀5頁,還剩45頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

湖北理工學院畢業(yè)設計(論文)PAGE摘要利用慧魚創(chuàng)意模型組合拼建后輪驅動的電動小車模型,其動力裝置安裝在底板,由發(fā)動機提供?;埕~創(chuàng)意組合模型是一種技術含量較高,經拼接后形成的工程類模型,是展示科學原理和科學技術的理想教學器材。而本文設計是以德國慧魚創(chuàng)意積木所搭建而成的模擬機器人為基本構架,通過圈形式人機界面LLwin,再由智慧型電腦界面板去控制驅動機器人,使機器人的細節(jié)部分動作達到我們的要求,再而取代我們以后常用的由硬體描述語言所驅動的構架,通過慧魚模型拼接組裝,程序編制,任務達到要求,簡明扼要的闡釋了機械之間的配合關系,各種傳感器安裝使用,軟件編寫,實現對伺服電機,電磁線圈的控制,操作簡單易懂,更加方便快捷。自動循跡小車是智能機器人的一種,這種智能小車可以適應不同的環(huán)境,在不受濕度,溫度,磁場及重力等條件影響下可發(fā)揮很大的作用。關鍵詞:智能機器人慧魚模型循跡小車邊界識別AbstractFischertechnikmodelsuseacombinationofcreativespellbuiltrear-wheeldriveelectriccarmodels,thepowerdeviceinstalledinthefloor,providedbytheengine.Fischercreativecombinationmodelisahigh-tech,engineeringmodelformedaftersplicing,istodemonstratethescientificprinciplesandidealsofscienceandtechnologyteachingequipment.Inthispaper,designstudiosandGermanFischercreativebuildingblocksaremade??ofsimulatedrobotbuiltasabasicframework,intheformofman-machineinterfacebyringLLwin,thenbyintelligentcomputerinterfaceboardtocontrolthedriverobots,robotpartstomakethedetailsofactiontoachieveourrequirements,Welaterusedagainandreplacedbyahardwaredescriptionlanguagedrivenarchitecture,withthemodelbystitchingassembly,programming,meettherequirementsofthetask,withaconciseexplanationoftherelationshipbetweenmechanical,Installanduseavarietyofsensors,softwaredevelopment,toachieveservomotors,solenoidcontrol,easytounderstand,fasterandmoreconvenient.Automatictrackingcarisanintelligentrobot,thissmartcarcanadapttodifferentenvironments,canplayasignificantroleintheunaffectedbyhumidity,temperature,magneticfieldandgravityconditionsaffected.Keywords:Robot;Fischertechnik;TourLine;Boundaryidentication目錄摘要 1第1章緒論 11.1課題背景與選題意義 11.2慧魚機器人 11.3設備與制作環(huán)境介紹 21.4研制小車過程 21.5設計工作原理 21.6慧魚模型操作規(guī)程: 31.7慧魚機器人發(fā)展前景 3第2章.總體設計 52.1機器人的設計方法 52.2參數及部件設定 52.3基本構件 6第3章硬件設計 103.1ROBO接線設計 103.2紅外線控制設備 103.3慧魚ROBO接口板 113.4ROBOI/O擴展板 14第4章程序設計 164.1軟件介紹 164.2程序單元的介紹 17第5章C語言下的循跡小車程序設計 25第6章實驗慧魚機器人步驟 346.1組裝模型 346.2編程控制 35第7章結論 36致謝 38參考文獻 39PAGEPAGE39第1章緒論1.1課題背景與選題意義由于機器人技術的發(fā)展和快速的被人們和科學研究所廣泛運用,由此可知科學家對于機器人的功能和工作環(huán)境也相對提高,除了一些超強的記憶能力和邏輯思考能力,還有在機器人的能不結構以及外部形體上,科學家們更希望機器人能夠進一步的模仿人類,對于外界信息的選集,也通過各種傳感器的使用,試圖達到類似人類各種感官的功能,選集外在環(huán)境變化,一旦外在環(huán)境發(fā)生了改變,機器人也會隨著環(huán)境的變化,自身做出反應的動作,更新自己的條件發(fā)射資料庫,達到類似于人類后天學習的功能。移動式機器人分為車輪式,特殊車輪式,不限軌道式,不行式等,如果是在平坦的地面上移動,那么車輪式是最有效率的,,不但機構的構架簡單易懂,且具有很強的使用性,但是缺點在于不能在凹凸不平的地面上行走,除此之外,由于普通車輪無法再階梯或者有高低差距的地面上行走,所以需要研究一種有車輪,三種以上連接構造的特殊形態(tài)。本次課題即為慧魚模型機器人設計及其控制器實現機器人的行走以及自動躲避障礙,當機器人在軌道中行走做出動作時,遇到障礙物或者能打斷行走的物體時,會通過微動開關將信息傳回到電路板中,然后系統進行判斷,再配合計數器的面對程序來使機器人躲避障礙并且進行下一個路徑動作,再達到目標。1.2慧魚機器人怎么樣利用慧魚創(chuàng)意模型來構造我們所需求的機器人是我們需要思考和學習的,而在機器人拼接的過程中,傳感器如紅外傳感器,動力裝置如發(fā)動機的拼接也是必不可少的,然后加上許多的機械零部件,組成所需要的機器人模型,正如本文所介紹利用慧魚各個構件進行拼接,最后建立后輪驅動電動小車模型,該后輪驅動電動小車后輪裝有1個電機,通過電機的旋轉帶動車輪轉動。動力來源于電機M,這是慧魚創(chuàng)意組合模型組合包中的大功率發(fā)動機,擁有固定的減速比為30∶1的齒輪組,動力經過渦輪蝸桿傳動傳至車輪,來帶動小車運動。車架由彈簧連接來實現柔性連接,從而方便汽車轉向,避免轉彎時發(fā)生干涉。1.3設備與制作環(huán)境介紹先從一個簡單測試的安裝系統來檢查接口板和各個傳感器的基本功能特點。然后我們繼而可以組裝起一個簡單的模型來,讓它具備一定的功能,隨后可以調試更多的程序來嘗試更加復雜的系統。而在拼接過程中,小車需要各種各樣的零部件來增加其活躍性和靈敏性,這就需要一個完整和科學的制作環(huán)境,在一個固定的環(huán)形跑道上,安裝不同的障礙物,設定不同的調試程序,讓智能小車能夠在程序的牽引下成功的繞過障礙,并且最終完成所需步驟。1.4研制小車過程第一個階段是可編程的示教階段,展現出智能小車,由于本身不具備有傳感器,所以不能接收外界所發(fā)出的信息,所以在行駛過程中不能根據外界環(huán)境的變化而發(fā)生調整,故而其應用范圍狹窄。第二個階段是具有一定的感覺功能和自動適應能力后的離線編程型的智能小車。這種小車具備了一定的簡單外部傳感器,如紅外傳感器,它可以確定自身的位置和方向,通過已經編排好的程序來進行運行。第三個階段是能夠感應外界環(huán)境變化的智能小車,此類小車可以面對復雜的環(huán)境變化,然后精確地分析外界信息的來源,再做出正確的反應,這樣的機器人小車配備了多個傳感器,可以有效的適應各種環(huán)境。1.5設計工作原理機器人指的是可程式控制的機械,可分為以下兩個部分。(1)機械構架本次設計機器人的機械構架采用慧魚創(chuàng)意模型組成,它的優(yōu)點在于方便組裝,能在設計的初級階段起到一定的輔助作用,減少制作成本以及更好的觀察設計時的可行性和優(yōu)缺點,以便更好的改進設計中的缺點,一般所用到的機械如齒輪,發(fā)動機,傳感器等都可以在零部件中找到,功能也相當。該架構由兩個絲桿和一個發(fā)動機連接而成,兩個絲桿街上傳動齒輪或者渦輪蝸桿就能實現對小車的運動控制了。(2)程序的整體采用了主/從結構的編程方式,主要是為了解決更多不同頻率的循環(huán)和不同循環(huán)之間的信息交替使用。程序中嵌入了并聯在一起的機器人反解模型及控制算法,采用了全局變量,局部變量,共享變量等來實現各個程序模塊之間的信息交換,依此來避免兩個循環(huán)同時操作一個對象一類的競爭問題的出現,稱為同步技術。由于程序內容比較大,反應的信息量大,所以程序再管理上,我們也充分利用了LLwin里的高級編程技巧,如,在面向機器人的軌跡控制與I/O邏輯控制程序時,像回零,連續(xù)運轉,單個軸向調增,軌跡選擇,系統自我調試等。該軟件一方面負責完成對智能小車驅動環(huán)節(jié)(電機)的精確同步控制,同時實現了末端執(zhí)行器的軌跡控制;而另一方面,該軟件需完成一組通用的I/O輸入輸出控制,實現對機構運動時的控制以及協調。驅動軟件可實現單軸或多軸的運動控制,D/A轉換,I/O硬件控制集合,它包含了軸配置,運動類型設置,電機的運行和停止操作設定。1.6慧魚模型操作規(guī)程:1.實驗前先按照清單寫下零件的數量和種類;2.了解零件的拆分方式和大致的分裝的規(guī)律;3.檢查密封袋的封裝口;4.每次只取出所需要的零件;5.取完零件后需將袋子封裝好;6.拆除模型之后需將零件放回拆裝前的袋子;7.實驗完成后再次慶典零件個數防止丟失。1.7慧魚機器人發(fā)展前景慧魚創(chuàng)意模型主要提供了包括組合包,培訓模型,工業(yè)模型三大塊。包含了機械,液壓,氣動,遙控,機電一體化等科學知識于一身,利用工業(yè)標準的基本構件如機械元件,電器元件,氣動元件等,再加上一些傳感器,執(zhí)行器和控制器等和一些軟件的配合使用,運用設計構思和實踐理論的分析,實現了任何技術過程的原理重現,更加可以實現工業(yè)生產過程中的模擬操作過程,從而為實驗教學和科研發(fā)展提供了理論成果?;埕~教具作為簡單便捷的操作用具廣泛運用于各方面的創(chuàng)新思維教學上,并且獲得了無數專家學者的好評,同時在歐洲,美洲等各大高校中廣泛運用,當來到中國之后,也廣泛運用于國內各大高等學府,它以濃厚的趣味性和開發(fā)創(chuàng)新性,使學生能夠更加直觀方便的把抽象的復雜的理論知識,通過模型的建立來具體化,大大的激發(fā)了我們的學習能力和動手能力,對于我們了解機械運動以及工業(yè)機械設備控制等都有著很大的好處,是我們學習機電一體化最理想的教學器材。

第2章.總體設計2.1機器人的設計方法機器人的設計一定要做到目標明確,通過對命題的分析我們得到了比較清晰開闊的設計思路。作品的設計需要有系統性規(guī)范性和創(chuàng)新性。設計過程中需要綜合考慮材料、加工、制造成本等給方面因素。自動循跡小車的設計是提高機器人性能的關鍵。在設計方法上我們借鑒了參數化設計、優(yōu)化設計、系統設計等現代設計發(fā)發(fā)明理論方法。采用了CAD、PROE等軟件輔助設計。下面是我們設計機器人的流程(如圖)圖2.1總體方案2.2參數及部件設定利用慧魚各個構件進行拼接,最后建立后輪驅動電動小車模型,該后輪驅動電動小車后輪裝有1個電機,通過電機的旋轉帶動車輪轉動。動力來源于電機M,這是慧魚創(chuàng)意組合模型組合包中的大功率馬達,擁有固定的減速比為30∶1的法蘭齒輪組,動力經過渦輪蝸桿傳動傳至車輪,來帶動小車運動。車架由彈簧連接來實現柔性連接,從而方便汽車轉向,避免轉彎時發(fā)生干涉。小車沒有偏轉輪及其偏轉輪轉向系統,沒有自由輪和半自由輪,后車輪通過渦輪蝸桿與電機相連由電機控制。不管是直行或是轉彎,所有車輪,任何時候,都嚴格遵循行駛意圖轉動,不受任何干擾。車輪通過齒輪與電機相連,前后結構相同。實現了用改變兩側電機的調速的汽車動力差速轉向,行駛非常穩(wěn)定可靠。它還可較高速轉彎。同側前后車輪轉速始終相等,前后車輪行駛軌跡始終重合。小車轉小彎時,車身、車輪行駛寬度也幾乎不變,也就是沒有內輪差,完全避免了轉小彎時內后輪無法通過的現象。小車在小彎道行駛時也更加方便、靈活和自由。此外,小車中沒有主減速器和差速器,電機小巧,越野通過性好,簧下質量小,行駛平順性好,整車中也不用分動器和差速鎖等,沒有轉向機構,也就不再需要其它動力系統和操縱系統,電動機功率全用于驅動牽引。因此,小車動力相當強悍。2.3基本構件一.六面拼接體如圖所示,六面拼接體的6個面上各有一個U形槽或凸起的接頭,兩者相互配合,實現六面體的連接。它有多種長度,可根據模型的不同加以選用。在實現有角度連接時,可選用三角形連接體,這些連接體有多種角度7.5°,15°,30°等,具體角度在其側面有標注。圖2.3六面體構件圖2.4楔形構件二.齒形構件慧魚模型的齒形構件種類較多,有斜齒,直齒;齒軸,齒條;單齒輪,組合齒輪等。圖2.5齒形構件三.渦輪,蝸桿慧魚模型的蝸桿的類型較多,除圖所示的渦輪外,所有的外嚙合齒輪都可以用作渦輪。圖2.6渦輪蝸桿四.導軌和連桿慧魚模型提供了多種長度的金屬,塑料桿件,如圖所示可用作導軌,連桿和傳動軸等。五.開關慧魚模型的開關有三個針腳:1針腳和2針腳形成常閉開關;1針腳和3針腳形成常開開關。當按鍵被按下,開關通斷狀態(tài)改變,即1和2針腳斷開,1和3針腳接通。如果開關接入慧魚接口板的兩個針腳接通,那么計算機認為該開關處于1狀態(tài);否則開關處于0狀態(tài)。根據開關的狀態(tài)改變,其在慧魚模型中常起到機構的限位,定位作用。開關也常與脈沖齒輪配合,對運動件的運行位置進行精確定位。將脈沖齒輪與電機相連,電機每轉動一圈,脈沖齒輪壓下開關4次,使開關在0,1狀態(tài)間變化8次,即0→1,1→0各變化4次。通過檢測開關狀態(tài)變化的次數,可精確控制電機的轉動圈數,從而精確控制機構的位置,如圖所示。圖2.7開關類別六.傳感器光敏傳感器:用于檢測光源強度,當光線足夠強時,傳感器內部的電路閉合,與接口板相連的1,2針腳處于接通狀態(tài),接口板檢測到該光敏傳感器處于1狀態(tài);否則為0狀態(tài)。它可與燈泡一起使用,作為定位和限位開關;也可利用深色物體吸收光線,淺色物體反射光線的原理來鑒別物體顏色的深淺。磁敏傳感器:用于檢測環(huán)境中磁場的強度,當磁場強度達到一定值后,傳感器內部電路閉合,其通斷狀態(tài)發(fā)生改變,原理與光敏傳感器相同。熱敏傳感器:熱敏傳感器是一個模擬信號傳感器,接口板檢測到的是其電阻的阻值,其電阻的阻值隨溫度的上升而減小。

第3章硬件設計3.1ROBO接線設計程序控制的硬件部分包括:慧魚接口板(ROBOInter-face)1塊,COM口電纜線1根,慧魚可充電電源1塊,電線若干。利用COM口與電腦通信,將電機M連接到慧魚接口板(ROBOInter-face)的輸出M通過控制電機的轉速實現汽車的S彎道行駛。3.2紅外線控制設備紅外線遠距離控制設備使得慧魚模型的許多功能更加容易控制。這套設備包括一個功能強大的遙控器和一個微處理控制的接收裝置。將接收裝置直接安裝在模型上,可控制3個電機或燈泡。遙控器產生不可見的紅外線。一個微控制器被安裝在接收設備上,它接收光信號,控制指定的電機。在封閉的空間內,它的有效范圍為10m。也可能在一個模型中使用兩個接收器,并用一個遙控器控制兩個接收器。圖3.1紅外控制示意圖一.遙控器電源:兩節(jié)1.5V,AAA型號的電池,遙控距離為10m。7,8號鍵,遙控器用于控制接收器上M1電機的正轉和反轉。按一次電機旋轉,再按一次則電機停轉。9,10號鍵控制M2電機正反轉,1,2號鍵控制M3電機正反轉,與7,8號鍵不同:按下按鍵電機旋轉,放開按鍵電機停轉。3,4,5號鍵分別控制M1,M2,M3的轉速:按一次電機的轉速降低;再按一次則電機回到原先轉速。當你用一個遙控器控制兩個接收器時,按壓6號鍵遙控器就可轉到控制接收器2,接收器1不再接收信號。如需控制原先的接收器1,則按壓11號鍵即可。按下遙控器的各鍵時LED指示燈點亮。圖3.2遙控按鈕顯示二.接收器使用9V直流電源,通過圖中電源線1與電源連接。實驗室提供了可充電電源。M1-M3連接電機。接收器的紅外線探測二極管安裝在圖中4所示位置,接收器安裝在模型上時需確保該二極管不被遮擋。接收器接通電源后,綠色發(fā)光二極管點亮,一旦接收器接收到信號,發(fā)光二極管閃爍。圖3.3接收器示意圖3.3慧魚ROBO接口板ROBO接口板用于計算機與慧魚模型之間的通訊。它能將來自軟件的命令轉化成電機運轉,也能將來自掃描器,感光晶體管,簧片觸點和熱敏電阻等傳感器的信號轉換成能被計算機處理的信號。圖3.4慧魚接口板1.電源慧魚ROBO接口板使用9V,1000MA直流電源,有兩處電源接口,如圖1,3所示,插孔1用于連接9V直流電源,插孔3用于電池電源,并且由插孔1優(yōu)先提供電源。接口板接入電源后,所有發(fā)光二極管首先被測試,然后6,7綠色發(fā)光二極管交替閃爍,標志著接口板準備就緒。2.數字信號輸入接口I1-I8插孔12作為數字傳感器如按鈕,感光晶體管和簧片觸點開關的接入口。當傳感器閉合,感光器感光時,接口板檢測到數字信號1并反饋給計算機,否則數字信號為0。3.模擬阻抗輸入接口AX,AY插孔11是連接電位計,感光電阻和熱敏電阻的接口。檢測范圍0-5.5KΩ。4.模擬電壓輸入接口A1,A2插孔10是輸入電壓為0-10V傳感器的接口。5.距離傳感器輸入接口D1,D2插孔9用于連接距離傳感器。6.紅外線輸入紅外線接收二極管使用,那么紅外線控制設備的手動發(fā)射器按鍵能被作為數字信號輸入。7.紅外線遙控器鍵的設置接口板上的輸出M1-M3可以用發(fā)射器上的相應的鍵控制電機是否運轉及其轉速。輸出M4能用鍵1和2激活,這兩個鍵也能正常轉換接收器1和接收器2。M4的電機轉速不能由發(fā)射器改變。8.26個針腳插座如圖所示通過這些針腳可以再次為模型提供所有的輸入和輸出端,這樣就可以將模型通過帶狀傳輸線和26個單針插座連接到接口板上。針腳功能如表如圖3.5所示。針腳針腳功能針腳針腳功能1提供9V電源14142模擬連接,傳感器,固定儀表輸入的地線,但不能用于O1-O8電源輸出的負極15153AX16164AY17175A118186A219O17距離傳感器D120O28距離傳感器D221O39固定儀表輸入22O410O1-O8電源輸出的負極23O5111124O6121225O7131326P8圖3.5針腳功能表9.ROBOI/O擴展板插口如圖所示,使用ROBOI/O擴展板可增加輸入,輸出的接口數量。一個擴展板可額外增加4個調速的電機輸出,8個數字輸入和一個0-5.5KΩ的模擬阻抗輸入。10.接口板程序標準的ROBO接口板程序軟件是圖形化的程序語言,ROBO程序語言。接口板按下列操作方式運作。(1)在線模式。接口板通過USB接口,排線,無線電數據線一直與計算機相連。程序在計算機上運行,顯示器作為用戶的接口板。(2)智能接口板模式通過上圖的5指示按鈕連續(xù)按壓3s以上,接口板就轉換到“智能接口板模式”。此時圖中7所指示的發(fā)光二極管閃爍。這樣接口板能用LLWin3.0軟件在線控制,程序不能下載。再次按壓圖中5指示按鈕,就能回到自動模式。(3)下載模式。在這種操作模式下程序被加載到接口板,并能獨立于計算機運作。接口板的Flash存儲器能存儲兩個程序,即使失去電源,程序也會被保留。程序也能下載到其RAM存儲器中,但只要失去電源或Flash存儲器的程序運行后,RAM存儲器中的程序就會被刪除。3.4ROBOI/O擴展板ROBOI/O擴展板能增加ROBO接口板的輸入和輸出。擴展板與接口板之間用10個針腳的排線相連。擴展板也能通過USB接口與計算機相連,由在線模式激活。圖3.6慧魚擴展板1.電源接入端使用9V,1000mA直流電源,有兩處電源接口,插孔1用于連接9V直流電源,插孔2用于電池電源,并且由插孔1優(yōu)先提供電源。2.輸出端M1-M4或O1-O8M1-M4可控制4個電機的正轉,反轉,8個轉速,停轉。O1-O8可控制8個燈泡或電磁鐵。3.數字輸入端I1-I8用于連接傳感器如:掃描器,簧片接觸式開關,感光晶體管。4.模擬阻抗輸入接口AX插孔3是連接電位計,感光電阻和熱敏電阻的接口。檢測范圍0-5.5KΩ。5.與ROBO接口板的連接ROBOI/O擴展板能用所給的10個針腳的排線ROBO接口板相連。排線的一端連接ROBOI/O擴展板的“Ext.IN”,另一端連接到ROBO接口板上的“Ext”處。一旦ROBOI/O擴展板連接到接口板上且兩者均連接上電源后,ROBOI/O擴展板上的綠色發(fā)光二極管“Ext.mode”閃爍,此時擴口板準備就緒。在擴展板上“Ext.OUT”處最多只能連接3個擴展板。圖3.7擴展板連接接口板6.與計算機的連接ROBOI/O擴展板能通過USB接口與計算機連接,作為獨立的接口板使用:沒有與ROBO接口板連接的USB模式。這種模式在擴展板只有與計算機相連才能使用,既不能下載程序到擴展板上。擴展板第一次與計算機相連時必須安裝驅動程序。當擴展板從USB接口處接收到數據時綠色發(fā)光二極管“USBmode”閃爍。如果發(fā)光二極管“Ext.mode和“USBmode”交替閃爍,那么擴展板處于自動搜索模式,即擴展板等待來自ROBO接口板或USB接口的數據。第4章程序設計4.1軟件介紹慧魚模型組裝完成并與計算機相連后,必須通過軟件來實行對模型的控制。ROBOpro軟件在Windows平臺上運行,使用圖形化的控制單元。在編寫程序之前需進行測試,很明顯,我們首先必須先將接口板和電腦相連,方便稍后可以測試我們要新建的程序,根據所連接的接口板,必須進行適當的軟件設置和連接的測試。一旦連接正確建立,我們就可以通過接口板測試窗口來測試接口板和與它相連的模型。測試窗口顯示了接口板的各種輸入和輸出:一.數字量I1-I8I1-I8是接口板數字量輸入。可接受各種傳感器。數字量輸入智能有兩種狀態(tài)分別為0和1.或者是Y和N。開關盒光電傳感器或者是磁性傳感器都可用作數字量輸入來連接。二.發(fā)動機輸出M1-M4M1-M4是接口板的輸出。在這里可以連接執(zhí)行器,可以是發(fā)動機,電磁鐵或者燈。這四路發(fā)動機可以改變方向和8級調速。速度可以用滑塊的數量來控制,一旁也有數字作為速度顯示出來,如果你要測試輸出量的話,可以將一個發(fā)動機接收到輸出端。在測完硬件之后,接口板和連接在上面的開關和發(fā)動機測試完成后,可開始編程。我們利用ROBOpro軟件精確地畫出這張流程圖,并依此為連接硬件創(chuàng)建控制程序。其他任務可由軟件完成。如下圖所示圖4.1小車行駛程序圖4.2程序單元的介紹一.當所需要的程序單元被拖進編程窗口之后,必須將其連接在一起才能形成可執(zhí)行的程序。如圖所示連接方式。圖4.2程序單元連接方式如果移動程序中的單元,ROBOPro程序會以合理路線來調成程序單元的連線?;蛘咴谕ㄟ^移動程序單元就能在兩個程序單元間自動形成連線,方法是將一個程序單元的入口移動至另一個程序單元的出口處。二.基本程序單元“start”單元:每個程序都必須有這個開始單元,否則程序不會被執(zhí)行,如果同時有幾個單元,那么他們會一起啟動,開始單元不能更改屬性?!癊nd”單元:如果一個過程被終止,那么在最后一個單元的出口就要連接結束單元。不同單元的出口可以連接在同一個結束單元,當程序一直循環(huán)時程序可以無結束單元?!癉igitalBranch”單元:數字分支單元。運用此單元,可以根據I1-I8的數字輸入值,控制程序流向。“AnalogBranch”模擬分支單元?;埕~接口板上有6個模擬輸入接口:2個電阻輸入接口AX,AY;兩個電壓接口A1,A2;兩個距離傳感器接口D1,D2。用這個分支單元可以比較輸入值和設定值大小不同,從而控制程序從出口流出?!癟imedelay”:延時單元。通過該單元可以展緩程序的執(zhí)行下一個單元。‘Motoroutput’:電機輸出單元。運用這個單元可以轉換接口板上M1-M4任何一組的兩個接線柱的輸出。此但愿不僅僅可以控制電機,還可以控制燈泡和電磁閥??刂齐姍C時,可以設定電機轉速和換向。三.主程序與子程序如圖所示圖4.3主程序與子程序生成圖用子程序使模型實現以下功能:(1)使模型處于初始位置(I1,I2開關閉合)。(2)設置啟動開關15,要求如下,按下時主程序不執(zhí)行;松開開關后,主程序執(zhí)行。即此開關下降沿觸發(fā)。(3)主功能:M1電機旋轉10圈;M2電機旋轉幾圈后燈泡M3即亮,并且每隔1S會閃爍一次,在閃爍5次之后燈泡將熄滅。(4)程序結束:如下圖所偶是程序結束后的助攻能子程序。圖4.4電機轉向圖當程序控制電機先以轉速8逆時針旋轉,每隔疫苗降低一次轉速,直到電機停止轉動;然后電機順時針旋轉,每隔1S增加一次轉速,直到電機轉速為8的時候,電機停止轉動,此時程序結束。則有以下程序圖。圖4.5電機循環(huán)啟停圖在運轉后為電機轉動要求所示結果。四.Control(控制)單元控制單元接口板輸入類似開關和傳感器,但無實體。Button(按鍵)面板單元:能如同連接到慧魚接口板上的傳感器或開關一樣使用該按鍵單元。其通過“PanelInput”單元受程序控制。一旦通過“PanelInput”單元的屬性窗口將其與“Button”單元連接,“PanelInput”單元的圖標,名稱將發(fā)生變化。該單元像接口板的數字輸入,能連接到程序單元的數據入口,按下“Button”單元,其輸出值為1,否則其值為0。其屬性如圖所示。圖4.6程序單元接口Slider(滑塊)單元:滑塊單元的使用與連接到接口板模擬輸入的電位計的使用方法相同。與按鍵單元不同的是,滑塊單元不僅僅能輸出0和1,而且能輸出許多不同的值,這些與模擬輸出一致。輸出值的范圍能在其屬性窗口中設定。如圖可知。一旦通過“PanelInput”單元的屬性窗口將其與“Slider”單元連接,“panelinput”單元的圖標,名稱將發(fā)生變化。而滑塊單元常與命令單元數據輸入口連接,控制電機轉速。圖4.7生成滑塊單元五.Panels儀表板單元在慧魚程序中能定義自己的儀表板,它能更加容易的控制復雜模型。儀表板能顯示在電腦屏幕上,智能以在線模式工作。在慧魚軟件上選擇“Panel”功能鍵,即可創(chuàng)建一個儀表板。在灰色區(qū)域能插入儀表板單元,儀表板單元隸屬于主程序或者子程序,因此在創(chuàng)建儀表板單元的時候,在子程序組中選擇出正確的子程序至關重要。儀表板單元通常是指在主程序下創(chuàng)建的包括顯示單元和控制單元。用顯示單元可以顯示各種變量的值或文本信息??刂茊卧墓δ苋邕壿嬢斎雮鞲衅?。對每一個插入到“Panel”中的儀表板單元,在程序中都有其對應的單元:“Panelinput”對應于“Panel”中的儀表板單元,在程序中都有與其對應的單元:“panelinput”對應于“panel”中的控制單元,“paneloutput”對應顯示單元。1.43.程序單元的運用LLwin3.0軟件的程序也是由一系列可視化的單元構成,其單元的圖標和屬性窗口與ROBOPRO程序有一定的區(qū)別。1.輸出單元(Output):該單元可控制發(fā)動機,燈泡,電磁鐵的狀態(tài)。在Output中可選擇輸出單元控制的接口板輸出端口M1-M8;在Type中確定端口控制的輸出設備,在Action中設置對應設備的運轉情況。2.輸入單元(input):該單元可接收接口板上的開關,光敏三極管,簧片觸點的信號。在input選項中可選擇輸入單元的接口板端口E1-E22;在TYPE選項中可選擇輸入設備的類型。3.邊沿觸發(fā)單元(Edge):該單元一旦接收到指定輸入設備出現特定的觸發(fā)沿便向下執(zhí)行,否則在此等待。在input中設定輸入端口,在Edge中選擇觸發(fā)沿的狀態(tài),前者為上升沿;后者為下降沿。4.定位脈沖計數單元(Position):該單元對指定端口的輸入設備產生的脈沖信號進行計數,脈沖次數與設定值進行比較,一旦兩者相等,程序向下執(zhí)行。在input中指定脈沖計數的端口;在counter中,如果選中Usestandardcount(使用標準計數器),則程序自動分配計數器Z1-Z16對應輸入端口E1-E16。如果要自定義計數器,則不要勾選該功能,并在Counter中輸入計數變量;在Result中輸入用于比較的數值;在Counterdirection(計數方向)中可設置計數器正計數+(增加)或負計數-(減少)。5.復位單元(reset):一旦程序執(zhí)行中出現該單元設定的狀態(tài),那么程序將復位后重新執(zhí)行。復位單元為獨立單元,不需與其他單元連接。一個程序項目中智能有一個復位單元。在Condition中可輸入復位的條件,如果輸入的是接口板端口名,當E2端口的輸入設備的狀態(tài)再由1→0時,程序重新開始執(zhí)行。Dondition中也可以輸入方程或邏輯條件,如果輸入“Var2>10”,那么當變量2的值大于10時程序復位;若輸入“E1ORVar3=5”,那么一旦E1由0變1時或變量3等于5時,程序復位。6.停止單元(stop):與復位單元類似,但其功能是停止輸出端口的輸出,即與M1-M8端口連接的設備停止運轉,而程序可繼續(xù)執(zhí)行。7.終端顯示單元(Terminal):該單元功能較多,可在程序運行時顯示輸出端口的狀態(tài),信息,也可作為數字輸入端口,模擬輸入端口,可停止和復位程序等。終端顯示單元為獨立單元,不需要與其他的單元連接在一起。如圖所示。圖4.8A:顯示接口板輸出端口M1-M8的狀態(tài)。B:顯示指定變量的值,參數EA-ED的值,任意的整數,但需要與顯示單元配合使用。C:文字顯示窗口,與信息單元配合使用,最大可顯示17個字符串。D:參數EA-ED輸入窗口,在程序運行時可通過該窗口修改參數的值。E:數字輸入按鍵,可作為開關使用,鼠標左鍵單擊該按鍵松開,表示開關閉合,輸入數字信號1;再次單擊,開關斷開,輸入數字信號0。F:數字輸入按鍵,可作為開關使用,鼠標左鍵單擊該按鍵不放,表示開關閉合,輸入數字信號1;松開按鍵,開關斷開,輸入數字信號0。G:停止按鍵,在程序運行時單擊該按鍵可停止輸出端口上的運行設備。H:復位按鍵,在程序運行時單擊該按鍵可使程序復位,再次單擊該按鍵,程序重新執(zhí)行。8.顯示單元:該單元可用于在終端顯示單元中顯示指定變量的值,模擬輸入值EX-EY,參數EA-ED的值和特定數值。,如圖所示,在Display中選擇顯示位置,即選擇在終端顯示單元B區(qū)的左側還是右側顯示,在Value中可設定要顯示的數值,變量,參數。圖4.99.信息單元:該單元可在終端顯示單元的C區(qū)文字顯示窗口中顯示最長為17個字符串的信息,在Text欄中可輸入需要顯示的文本。10.顯示值單元:該單元可顯示指定變量的當前值。其為獨立單元,不需要與其他單元相互連接,同時直接在對話框中輸入變量名或輸入端口名,在程序執(zhí)行過程中就能顯示其數值。11.變量單元:該單元用于將變量值加1或者減1,常用于計數,在Varuable中輸入變量名或者標準計數器名,可使用的變量名從Var1-Var99,標準計數器名從Z1-Z16。12.比較單元:該單元式判斷輸入的條件的真假,符合所給條件,程序從1分支流出,否則從0分支流出,如圖所示,在Condition中輸入方程式就可以了,在Branchtotheright中選擇0或1的分支為右邊流出的分支。圖4.9113.等待單元:該單元能使程序保持以前的執(zhí)行狀態(tài),直至其等待的時間結束,程序再繼續(xù)執(zhí)行下去。在Duration中可輸入等待時間,在Type中如果選擇Defined,那么程序將在等待設定的時間再繼續(xù)執(zhí)行;如果選擇Random,那么程序將在設定的時間內隨機等待一定時間久繼續(xù)執(zhí)行。

第5章C語言下的循跡小車程序設計用C語言模塊化編程,將各模塊編寫為各個功能函數,程序清晰、實時性高。機器人行駛模塊:在行駛過程中,安裝在機器人左端的紅外傳感器A檢測到的黑白線條分別對應全局變量toc的不同數值,通過檢測toc的數值從而控制兩個減速直流電機的轉速差進行左右修調,達到機器人在規(guī)定范圍內行使。安裝在機器人中部的紅外傳感器B檢測到黑線時,全局變量value加1,通過檢測value的數值確定機器人在軌道中的位置,從而使機器人在適當的地點作出相應的動作。該方案使得機器人能在偏離線路時做到自我修正,可以平穩(wěn)有效的在指定的范圍內行駛,適應性強。則可編寫以下程序:源程序:inttime;intvalue=0;intbt=0;intsw=0;intuld=0;inttoc=2;inticc=0;intds=0;floatx=50.0;floaty=50.0;floatz=50.0;floatdistance=200;intservopin1=5;intservopin2=6;intservopin3=7;intTrigPin1=14;intEchoPin1=15;intTrigPin2=16;intEchoPin2=17;intTrigPin3=10;intEchoPin3=11;intMA1=9;intDO=18;intMOT_B_1=4;intMOT_B_2=8;intMOT_B_PWM=3;intMOT_A_1=20;intMOT_A_2=21;intMOT_A_PWM=22;voidMoter_work(intspe2,intspe1){digitalWrite(MOT_A_1,LOW);digitalWrite(MOT_A_2,HIGH);analogWrite(MOT_A_PWM,spe1);digitalWrite(MOT_B_1,HIGH);digitalWrite(MOT_B_2,LOW);analogWrite(MOT_B_PWM,spe2);}floatchaoshengbo(intTrigPin,intEchoPin){floata;digitalWrite(TrigPin,LOW);delayMicroseconds(2);digitalWrite(TrigPin,HIGH);delayMicroseconds(10);digitalWrite(TrigPin,LOW);time=pulseIn(EchoPin,HIGH);distance=time/58.0;distance=(int(distance*100.0))/100.0;a=distance;delay(30);returna;}voidservopulse(intangle,intpin){intpulsewidth=(angle*11)+500;digitalWrite(pin,HIGH);delayMicroseconds(pulsewidth);digitalWrite(pin,LOW);delayMicroseconds(20000-pulsewidth);}voidCatch(){inti;delay(1000);for(i=0;i<200;i++)servopulse(105,servopin2);delay(1000);for(i=0;i<200;i++)servopulse(120,servopin1);delay(1000);for(i=0;i<200;i++)servopulse(68,servopin2);delay(1000);for(i=0;i<200;i++)servopulse(95,servopin3);delay(1000);for(i=0;i<200;i++)servopulse(0,servopin1);}voidSeize(intval){if(sw){sw=0;Moter_work(0,0);for(inti=0;i<200;i++)servopulse(val,servopin3);delay(1000);z=chaoshengbo(TrigPin3,EchoPin3);while((x<20.0&&x>0.0)||(y<20.0&&y>0.0)){if(z<20.0&&z>0.0){delay(1100);Moter_work(0,0);Catch();break;}else{Work(48,25,23,45);delay(15);x=chaoshengbo(TrigPin1,EchoPin1);y=chaoshengbo(TrigPin2,EchoPin2);z=chaoshengbo(TrigPin3,EchoPin3);}}delay(500);}}voidWave(){x=chaoshengbo(TrigPin1,EchoPin1);y=chaoshengbo(TrigPin2,EchoPin2);if((x>20.0||x<0.0)&&(y>20.0||y<0.0)){delay(10);if((x>20.0||x<0.0)&&(y>20.0||y<0.0))sw=1;}if(x<20.0&&x>0.0){Seize(16);x=100.0;delay(500);Moter_work(63,63);}if(y<20.0&&y>0.0){Seize(176);y=100.0;delay(500);Moter_work(63,63);}}voidWork(intright0,intleft0,intright1,intleft1){if(bt){toc=digitalRead(MA1);delay(10);if(digitalRead(MA1)!=toc)toc=2;}switch(toc){case0:Moter_work(right0,left0);break;case1:Moter_work(right1,left1);break;case2:Moter_work(63,63);break;}}voidsetup(){pinMode(MOT_A_1,OUTPUT);pinMode(MOT_A_2,OUTPUT);pinMode(MOT_A_PWM,OUTPUT);pinMode(MOT_A_1,OUTPUT);pinMode(MOT_A_2,OUTPUT);pinMode(MOT_A_PWM,OUTPUT);pinMode(TrigPin1,OUTPUT);pinMode(EchoPin1,INPUT);pinMode(TrigPin2,OUTPUT);pinMode(EchoPin2,INPUT);pinMode(TrigPin3,OUTPUT);pinMode(EchoPin3,INPUT);pinMode(servopin1,OUTPUT);pinMode(servopin2,OUTPUT);pinMode(servopin3,OUTPUT);pinMode(DO,INPUT);pinMode(MA1,INPUT);}voidloop(){switch(value){case1:bt=1;break;case39:Moter_work(0,0);while(1);break;}if(ds==0){if(digitalRead(DO)==0){delay(10);if(digitalRead(DO)==0)ds=1;}}if(ds){if(digitalRead(DO)==1){delay(10);if(digitalRead(DO)==1){value++;ds=0;}}}Wave();Work(75,25,23,70);}經多次實驗,該方案可使機器人在偏離預定路線時做到自我修正,機器人能在規(guī)定范圍內平穩(wěn)有效的行駛,并且在指定區(qū)域內作出相應動作。

第6章實驗慧魚機器人步驟6.1組裝模型目的:熟悉慧魚模型的構件和拼裝方法。模型必須像在組裝圖中展示的那樣,一步一步組裝起來。組裝圖中新安裝的組件顏色為其自身的顏色,而前面已裝的組件為白色。在開始一個新的步驟之前,先找出所有該步驟需要的組件,并把它們裝配到模型上,除非已用完了拿出來的組件,否則不要開始下一步,注意保證組件的安裝位置與圖紙相同,以免重裝,組裝圖中有各電機,開關,感光器等元器件與慧魚接口板的連接位置。在實驗室進行慧魚模型小車組裝工作,首先將如圖6.1所示六面體模型和齒輪,渦輪蝸桿,取出多組,并且長度大小不一致。圖6.1六面體模型與齒輪模型然后通過楔形卡槽將六面體構件連接固定,并且串聯起來,當整體框架搭建完成之后,如圖所示電機通過六面體孔連接軸再與渦桿相連接,而蝸桿再連接上渦輪,渦輪固定在車輪軸上,這樣簡單的傳動方式如圖6.2所示就確定了。車輪車輪軸渦輪蝸桿電機電源車輪車輪軸渦輪蝸桿電機電源圖6.2傳動示意圖在傳動方式確定之后,我們將進行電路分析,進行驅動小車。首選,將線頭一端連接在電機上,然后根據慧魚模型開關原理,將另一頭連接在開關的標號1處,然后用另一根線將開關處的線頭接出來,線的另一端便可以連接到電源上,同理,電機的另一個接口可以用銅線連接出來,然后通過三角座連接在電源上,當按下開關后,小車便可以向前行走,再次按下開關,小車便停止。這樣就基本實現了小車的啟動和停止,也證實小車的驅動裝置和傳動系統沒有問題,而小車要實現后退,其實質就是實現電機的反轉,由于實驗室慧魚材料有限,最終我選擇用另一條線再次接入電機(與第一次接線相反)然后如上所述方式再次連線,在連接電源后,小車實現了后退。至此,本次小車的驅動與傳動部分如圖6.3所示基本完成。圖6.3小車實物示意圖然后再用各種慧魚拼件將小車的各個部分拼接的更加緊湊一點,使小車整體外觀看起來美觀。6.2編程控制模型組裝完成后,必須將其與計算機連接才能編程控制。將9V電源下接入慧魚接口板的1中,此時6,7綠色發(fā)光二極管交替閃爍,標志接口板準備就緒。再將接口板通過串口16與計算機相連。在熟悉ROBO程序界面和其他程序單元之后,編程控制慧魚模型實現模型的規(guī)定動作。且編程時所需條件及需解決問題。(1)一旦出現程序單元規(guī)定的狀況后,將執(zhí)行下一個程序單元。即M1-M4,O1-O8的電器程序控制單元的執(zhí)行時瞬時的。(2)由于電機與接口板插孔的不同鏈接將使電機在同一命令下轉向不同,所需編程應用Test鍵明確每個電機的轉動方向如何運轉。(3)由于開關常用于限位作用,故這些開關的初始狀態(tài)必須清楚,因而開關最后都連接為同一種狀態(tài)。第7章結論本次設計利用了慧魚模型教學用具及其創(chuàng)意組合模型來建立的機器人小車模型,通過ROBO接口板與LLwin軟件的程序設計形成了自動循跡小車模型的構造,本文既介紹了設計自動循跡小車的研究背景,和國內外發(fā)展現狀以及本次課題研究的意義,同時通過查閱資料介紹了本次課題所需要

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論