雙足步行機(jī)器人_第1頁
雙足步行機(jī)器人_第2頁
雙足步行機(jī)器人_第3頁
雙足步行機(jī)器人_第4頁
雙足步行機(jī)器人_第5頁
已閱讀5頁,還剩201頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡介

雙足步行機(jī)器人目錄第1章緒論1.1機(jī)器人概述1.1.1機(jī)器人發(fā)展史1.1.2機(jī)器人的分類1.1.3機(jī)器人的定義與三定律1.1.4機(jī)器人技術(shù)發(fā)展動向1.1.5類人機(jī)器人技術(shù)1.1.6機(jī)器人系統(tǒng)理論機(jī)械系統(tǒng)人工心理智能控制人工生命1.1.7雙足步行機(jī)器人1.2各國研究狀況1.2.1日本和韓國日本本田公司日本索尼公司其他日本機(jī)器人研究主要代表人物韓國的機(jī)器人發(fā)展1.2.2美國和歐洲1.3國內(nèi)研究狀況1.4其他相關(guān)技術(shù)1.5相關(guān)參考資料1.5.1學(xué)術(shù)會議和期刊1.5.2網(wǎng)站1.6小結(jié)參考文獻(xiàn)第2章雙足步行機(jī)器人相關(guān)理論與方法2.1概述2.2雙足步行機(jī)器人相關(guān)理論與方法的形成及發(fā)展2.2.1穩(wěn)定性與控制方法2.2.2雙足步行機(jī)器人行為發(fā)生方法2.2.3人機(jī)接口方法人機(jī)接口方法的改進(jìn)人機(jī)接口方法的發(fā)展趨勢2.3理論難點(diǎn)2.3.1人工智能理論2.3.2人工心理與人工情感2.3.3遺傳算法的應(yīng)用2.3.4基于仿生學(xué)原理的步態(tài)控制2.3.5動力學(xué)模型動力學(xué)分析ZMP穩(wěn)定性判據(jù)2.3.6人機(jī)交互的實(shí)現(xiàn)方法2.4小結(jié)參考文獻(xiàn)第3章雙足步行機(jī)器人的相關(guān)技術(shù)3.1動作自動生成——行為數(shù)據(jù)庫技術(shù)3.23D虛擬仿真技術(shù)3.3雙足步行機(jī)器人建模的方法與技術(shù)3.3.1ADAMS建模方法3.3.2模型的數(shù)據(jù)轉(zhuǎn)換3.4多智能體技術(shù)3.4.1智能體通信技術(shù)通信方式通信語言通信模型通信服務(wù)器通信服務(wù)3.4.2多智能體機(jī)器人系統(tǒng)的數(shù)據(jù)通信與協(xié)調(diào)控制3.5小結(jié)參考文獻(xiàn)第4章雙足步行機(jī)器人實(shí)驗(yàn)平臺4.1雙足步行機(jī)器人控制系統(tǒng)4.2雙足步行機(jī)器人的上位機(jī)軟件4.2.1初始化設(shè)定模塊4.2.2機(jī)器人的運(yùn)行模式與通信協(xié)議4.2.3雙足步行機(jī)器人控制端軟件4.2.4多機(jī)器人控制4.3總體設(shè)計(jì)架構(gòu)4.4小結(jié)參考文獻(xiàn)第5章雙足步行機(jī)器人的行為生成技術(shù)5.1多智能體控制的實(shí)現(xiàn)5.1.1多智能體的特點(diǎn)5.1.2多機(jī)器人動作協(xié)調(diào)設(shè)計(jì)及轉(zhuǎn)化程序的實(shí)現(xiàn)5.1.3“千手觀音”機(jī)器人多智能體控制的實(shí)現(xiàn)5.2雙足步行機(jī)器人的情感模型、行為決策及情緒熵5.2.1隱馬爾可夫模型5.2.2情感模型及行為決策的設(shè)計(jì)5.2.3機(jī)器人情感轉(zhuǎn)移控制的具體實(shí)現(xiàn)5.2.4情緒熵的選取5.3雙足步行機(jī)器人的語音控制5.3.1語音在雙足步行機(jī)器人控制平臺上的實(shí)現(xiàn)5.3.2語音數(shù)據(jù)庫的設(shè)計(jì)5.4雙足步行機(jī)器人動作的設(shè)計(jì)5.4.1基于情感方面的動作設(shè)計(jì)5.4.2基于性格方面的動作設(shè)計(jì)5.5小結(jié)參考文獻(xiàn)第6章雙足機(jī)器人情感化步態(tài)6.1引言6.2情感模型相關(guān)理論6.3基于歐式空間的人工情感模型及Ekman情感理論6.4雙足機(jī)器人步態(tài)情感模型的建立6.5基于情感的雙足運(yùn)動系統(tǒng)參考文獻(xiàn)第7章雙足步行機(jī)器人技術(shù)的課程實(shí)驗(yàn)實(shí)驗(yàn)一典型PIC單片機(jī)控制芯片的編程實(shí)驗(yàn)實(shí)驗(yàn)二常用傳感器實(shí)驗(yàn)實(shí)驗(yàn)三舵機(jī)控制實(shí)驗(yàn)實(shí)驗(yàn)四機(jī)械結(jié)構(gòu)設(shè)計(jì)與認(rèn)識實(shí)驗(yàn)實(shí)驗(yàn)五簡單動作調(diào)試實(shí)驗(yàn)實(shí)驗(yàn)六動作數(shù)據(jù)編程實(shí)驗(yàn)實(shí)驗(yàn)七上位機(jī)編程實(shí)驗(yàn)實(shí)驗(yàn)八雙足步行機(jī)器人串行口通信實(shí)驗(yàn)實(shí)驗(yàn)九ZMP實(shí)驗(yàn)實(shí)驗(yàn)十多智能體協(xié)調(diào)控制實(shí)驗(yàn)十一復(fù)雜動作實(shí)驗(yàn)實(shí)驗(yàn)十二語音控制程序?qū)嶒?yàn)第7章雙足步行機(jī)器人技術(shù)的課程實(shí)驗(yàn)雙足步行機(jī)器人是一個集多學(xué)科于一體的綜合平臺,制作雙足步行機(jī)器人具有很強(qiáng)的實(shí)踐性,只有讀者親自動手做多學(xué)科的相關(guān)實(shí)驗(yàn),才能夠更加深入地掌握其相關(guān)的制作技術(shù)。本章通過PIC單片機(jī)編程、舵機(jī)控制、機(jī)械結(jié)構(gòu)設(shè)計(jì)與認(rèn)識、動作調(diào)試、上位機(jī)編程、 ZMP實(shí)驗(yàn)、多智能體協(xié)調(diào)控制、語音控制等12個實(shí)驗(yàn),講授了雙足步行機(jī)器人具體的制作方法與基本技術(shù)。實(shí)驗(yàn)一典型PIC單片機(jī)控制芯片的編程實(shí)驗(yàn)一、實(shí)驗(yàn)?zāi)康氖煜IC單片機(jī)和MPLAB-IDE編程環(huán)境。了解MPLABICD2在線調(diào)試器的作用及安裝,熟悉連接和配置MPLABICD2。學(xué)會創(chuàng)建工程文件、編寫源文件代碼并對源文件進(jìn)行編譯。熟悉使用MPLABICD2在線調(diào)試器的調(diào)試和下載程序。實(shí)驗(yàn)設(shè)備 PC一臺、 MPLAB安裝軟件、 MPLABICD2在線調(diào)試器、目標(biāo)電路板。實(shí)驗(yàn)原理與說明 1. PIC單片機(jī)簡介雙足步行機(jī)器人的控制芯片為Microchip公司生產(chǎn)的PIC系列16F877A單片機(jī),所以下面主要介紹的是PIC中檔系列單片機(jī)16F877A,16F877A引腳排列如圖7-1所示。PIC共有35條指令,每條指令字長為14位,其指令向上兼容,整個指令系統(tǒng)的指令按操作方式大體可分成3類:字節(jié)操作類指令。位操作類指令。立即數(shù)操作和控制操作類。PIC系列單片機(jī)是采用精簡指令集計(jì)算(RISC)結(jié)構(gòu)體系,所以尋址方式既少又簡單。尋址方式根據(jù)操作數(shù)來源不同,可分為立即數(shù)尋址、寄存器間接尋址、直接尋址和位尋址4種。每條指令字長為14位,由于篇幅有限,僅在表7-1中列出了設(shè)計(jì)時(shí)所用到的字節(jié)操作指令、位操作指令和立即數(shù)操作與控制操作指令。表7-2是表7-1操作碼字符的說明。表7-2操作碼字符說明字符 說 明f寄存器地址(0x00~07F)d表示目的寄存器選擇。 d=0,結(jié)果存于W中; d=1,結(jié)果存于寄存器f中。默認(rèn)值d=1W工作寄存器(累加器)b某8位寄存器f內(nèi)的位地址k立即數(shù)、常量或標(biāo)號以上都是匯編指令,不易記憶、不易讀、不易移植。雙足步行機(jī)器人采用通俗易懂的C語言來開發(fā)。MPLAB-IDE編程環(huán)境MPLAB集成開發(fā)環(huán)境(IDE)是綜合的編輯器、項(xiàng)目管理器和設(shè)計(jì)平臺,適用于使用Microchip公司的PIC系列單片機(jī)進(jìn)行嵌入式設(shè)計(jì)的應(yīng)用開發(fā)。MPLABICD2在線調(diào)試器ICD2是(in-circuitdebugger)的英文縮寫,中文是“在線調(diào)試”的意思。數(shù)字“2”,是因?yàn)樗荌CD1的改進(jìn)版,支持調(diào)試更多Flash存儲器芯片。ICD2的作用是讓用戶查看單片機(jī)內(nèi)部的寄存器數(shù)據(jù),幫助我們學(xué)習(xí)及發(fā)現(xiàn)程序問題。ICD2本身既是一個調(diào)試器,同時(shí)也是一個燒入器。因?yàn)樵诰€調(diào)試本身就是要求通過ICD2把目標(biāo)代碼下載到芯片內(nèi)部,只不過調(diào)試時(shí)多寫了一部分監(jiān)控代碼而已。如果不需要進(jìn)行在線調(diào)試,就可以把ICD2看作為一個編程工具,把目標(biāo)代碼下載后,拔掉ICD2和目標(biāo)板的連線,單片機(jī)就可以獨(dú)立運(yùn)行了。四、實(shí)驗(yàn)步驟1.安裝PIC單片機(jī)MPLAB-IDE編程環(huán)境及ICD2在線調(diào)試器并創(chuàng)建工程安裝MPLABIDE從光盤安裝,將光盤放入驅(qū)動器內(nèi),跟隨屏幕上的菜單安裝MPLABIDE。 也可瀏覽光盤,打開“softdown”文件夾,解壓文件,雙擊其中的“MPLAB v7.50Install.exe”進(jìn)行安裝。MPLABIDE里沒有自帶C編譯器,安裝完MPLABIDE后需要安裝Hi-techPICCCompil-er (參考安裝說明書安裝即可,此軟件需自行下載或購買)。安裝MPLABICD2前面,我們已經(jīng)安裝完了MPLABIDE編程環(huán)境,一般在安裝目錄下,有一個安裝MPLABICD2的操作指南ezicd2.htm:C:\ProgramFiles\MPLABIDE\Utilities\MPUsbIRU\ezicd2.htm,打開后按照它的說明一步一步地安裝即可。如果目錄下沒有這個文檔,則可按照與MPLABICD2配套的安裝說明書進(jìn)行安裝即可。運(yùn)行MPLABIDE雙擊桌面上MPLABIDE的圖標(biāo),或者選擇Start→Programs→MicrochipMPLABIDE→MPLABIDE。屏幕上首先會顯示MPLABIDE的商標(biāo)圖案,然后出現(xiàn)MPLABIDE的主窗口,如圖7-2所示。創(chuàng)建工程在圖7-2所示的對話框中,選擇菜單Project→ProjectWizard,單擊“下一步”按鈕,選擇對話框中的PIC16F877A器件,在出現(xiàn)的如圖7-3所示框中,單擊“下一步”按鈕,出現(xiàn)圖7-4所示的對話框。 圖7-2 MPLABIDE的主窗口如圖7-4所示的對話框中,Hoolsuite語言工具,單擊“下一步”按鈕,出現(xiàn)圖7-5所示對話框。在圖7-5所示對話框中,輸入工程名和工程所在的路徑,這里我們設(shè)工程名為first,保存在D:\frist文件下,單擊“下一步”按鈕。出現(xiàn)圖7-6所示的對話框。此時(shí)我們還沒有哪些已存在的文件需要添加到工程中,因此直接點(diǎn)擊下一步。圖7-4工程向?qū)нx擇語言工具圖7-5工程名和工程路徑設(shè)置單擊完成,項(xiàng)目工程建立完成。2.編譯程序單擊File→New新建一個文件,編寫程序代碼,如下:圖7-6添加已存在的文件到工程中 #include <pic.h> //PIC16F877的頭文件 voidmain(void) { unsignedinti=0; for(i;i<10;i++) printf("ThisismyfirstPICprogram"); while(1); }單擊File→Save保存這個文件到D:\frist文件下,文件名為first.c。添加first.c到工程中去。用右鍵單擊Sourcefiles,選擇“AddFiles”,找到first.c,點(diǎn)擊“打開”即可,具體操作如圖7-7、圖7-8所示。圖7-7添加剛編譯好的文件到工程中圖7-8完成添加保存工程,單擊File→SaveWorkspace。單擊Project→BuildAll。在Output窗口中可以看到編譯結(jié)果,如圖7-9所示。圖7-9通過Output查看編譯結(jié)果假如文件匯編失敗,檢查下列兩項(xiàng),然后重新編譯項(xiàng)目:①檢查編輯器窗口中所輸入代碼的拼寫和格式。如果匯編器在輸出窗口中報(bào)告錯誤,則在該錯誤信息上雙擊鼠標(biāo), MAPLAB會打開源代碼窗口,并且在源代碼窗口的左邊空白處顯示綠色箭頭標(biāo)志。②檢查是否為PICmicro器件使用了正確的匯編器。選擇Project→SetLanguageToolLocations,然后檢查顯示出的文件路徑。如果路徑正確,單擊“Cancel”按鈕;如果路徑錯誤,則更改路徑,然后單擊OK按鈕,如圖7-10所示。圖7-10設(shè)置語言工具單擊View→ProgramMemory可以觀察程序存儲器,如圖7-11所示。圖7-11程序存儲器3.連接MPLABICD2將ICD2通過電纜連接到計(jì)算機(jī)上。用獨(dú)立充電電池給目標(biāo)演示板供電(為單向接插件)。將ICD2連接到目標(biāo)演示板上(排線中的藍(lán)色線靠近目標(biāo)板電源)。選中MPALABIDE的Debugger→SelectTool→MPLABICD2,如圖7-12所示。圖7-12選擇調(diào)試工具進(jìn)入MPLABICD2SetupWizard一步一步設(shè)置,如圖7-13所示。圖7-13選擇ICD2設(shè)置向?qū)Р襟E一:選擇ICD2的USB連接模式,如圖7-14所示。步驟二:選擇ICD2的供電方式,如圖7-15所示。步驟三:使能ICD2和IDE自動連接,如圖7-16所示。步驟四:使能ICD2自動下載所需的操作系統(tǒng),如圖7-17所示。步驟五:單擊“完成”按鈕,完成向?qū)гO(shè)置,如圖7-18所示。單擊完成后,點(diǎn)擊Debugger→Connect,進(jìn)行ICD2與目標(biāo)板的通信連接,如圖7-19所示。圖7-14選擇ICD2的USB連接模式圖7-15設(shè)置ICD2的供電方式圖7-16使能ICD2和IDE自動連接圖7-17使能ICD2自動下載圖7-18完成向?qū)гO(shè)置圖7-19通過ICD2進(jìn)行連接調(diào)試如果出現(xiàn)了圖7-20所示的信息,說明連接成功,可以用來調(diào)試了。圖7-20連接成功4.調(diào)試程序設(shè)置芯片的配置字,如圖7-21所示,單擊Configure→ConfigurationBits…,嚴(yán)格按照圖7-22進(jìn)行配置。圖7-21選擇配置芯片配置字編譯程序,單擊Project→BuildAll,如圖7-23所示。下載程序,單擊Debugger→Program,如圖7-24所示。下載完畢后,可以設(shè)置程序斷點(diǎn),觀察程序執(zhí)行情況及變量實(shí)時(shí)的值。首先單擊View→Watch,打開變量監(jiān)視框,如圖7-25所示。圖7-22芯片配置字配置方法圖7-23編譯成功圖7-24調(diào)試模式下進(jìn)行程序下載圖7-25調(diào)出查看窗口對變量進(jìn)行監(jiān)視比如我們要觀察程序運(yùn)行時(shí)變量i值的情況,單擊“Watch”窗口的“AddSymbol”按鈕,如圖7-26、圖7-27所示。,設(shè)置斷點(diǎn)、調(diào)試,可以全速運(yùn)行、單步連續(xù)運(yùn)行、單步跨過運(yùn)行和復(fù)位四種模式來調(diào)試。如圖中所示的語句處設(shè)置斷點(diǎn),則可雙擊該語句對應(yīng)的左邊灰色區(qū)域,則出現(xiàn)斷點(diǎn),然后再通過調(diào)試工具欄中四種調(diào)試模式對應(yīng)的按鈕進(jìn)行斷點(diǎn)調(diào)試。以本實(shí)驗(yàn)為例,設(shè)置好斷點(diǎn)后,不斷點(diǎn)擊可以通過“Watch”窗口看到“i”值的變化情況,如圖7-28所示。圖7-26準(zhǔn)備添加所要查看的變量到查看窗口圖7-27已添加所要查看的變量到查看窗口圖7-28斷點(diǎn)調(diào)試并查看變量值的變化五、思考題創(chuàng)建工程的過程中應(yīng)注意哪些問題?答:1)先要檢查MPLAB軟件是否正確安裝完畢。檢查HT-PIC軟件是否正確安裝完畢。在創(chuàng)建工程前確定本工程采用匯編語言還是C語言編寫,從而確定是否選擇HI-TECHPICCToolsuite編譯器。4)工程保存路徑中不要包含中文字符。4)2.安裝和配置需要注意哪些問題?答:1)安裝MPLAB-ICD2的驅(qū)動程序一定要按照說明文件安裝,以免出現(xiàn)不能連接等異常情況。2)仿真頭的接線和單片機(jī)上的接頭要配合正確,否則容易燒壞仿真器。3)配置時(shí)要注意芯片的類型和設(shè)置芯片的配置字是否正確。3.調(diào)試模式和編程模式的切換需要注意哪些事項(xiàng)?答:1)先關(guān)閉掉原來的模式,比如當(dāng)前是Debug模式,先進(jìn)Debugger→SelectTools下設(shè)成None,再進(jìn)入Programer去選。2)切換后芯片的配置字會發(fā)生改變,需要重新配置,否則程序可能無法正確運(yùn)行。實(shí)驗(yàn)二常用傳感器實(shí)驗(yàn)作為感知、采集、轉(zhuǎn)換、傳輸和處理各種信息必不可少的功能器件傳感器,已成為與計(jì)算機(jī)同等重要的技術(shù)工具。本次實(shí)驗(yàn)主要讓同學(xué)們了解超聲波傳感器、霍爾傳感器、溫度傳感器、紅外傳感器。一、實(shí)驗(yàn)?zāi)康?)熟悉機(jī)器人技術(shù)中常見傳感器的原理和使用。1)綜合使用PIC單片機(jī)資源,理解中斷定時(shí)器的原理。鞏固C語言能力,掌握傳感器使用的時(shí)序關(guān)系。實(shí)驗(yàn)設(shè)備 PC一臺(MPLABIDE環(huán)境)、 MPLABICD2一臺、實(shí)驗(yàn)板一塊(集成各種傳感器)、供電電源(12V)、萬用表一臺、示波器一臺及數(shù)根接插線。實(shí)驗(yàn)板載傳感器:超聲波傳感器(接受探頭、發(fā)送探頭)、溫度傳感器(DS18B20)、霍爾傳感器、光電傳感器。實(shí)驗(yàn)原理與說明霍爾傳感器霍爾傳感器有以下幾個主要應(yīng)用:磁場測量、電流測量、轉(zhuǎn)速和脈沖測量、信號的運(yùn)算和測量、拉力和壓力測量。本次試驗(yàn)采用的傳感器是磁場測量傳感器。它的最簡單的原理就是當(dāng)傳感器連接到電路中以后,當(dāng)其處在強(qiáng)磁場中時(shí)它的DQ信號線就會輸出低電平,離開強(qiáng)磁場的時(shí)候它輸出高電平。但是它對磁場的極性是有要求的,必須用正確的極性對準(zhǔn)霍爾傳感器,它才能輸出低電平。我們利用這種特性可以應(yīng)用在很多地方,比如在機(jī)器人的導(dǎo)軌上適當(dāng)?shù)丶由蠋讉€霍爾傳感器,通過這種方式我們就可以定位出導(dǎo)軌上的機(jī)構(gòu)所在的位置了。它的外觀及連線如圖7-29所示。光電傳感器對射式光電傳感器包含在結(jié)構(gòu)上相互分離且光軸相對放置的發(fā)射器和接收器,發(fā)射器發(fā)出的光線直接進(jìn)入接收器。當(dāng)被檢測物體經(jīng)過發(fā)射器和接收器之間且阻斷光線時(shí),光電傳感器就產(chǎn)生了開關(guān)信號。當(dāng)檢測物體是不透明時(shí),對射式光電傳感器是最可靠的檢測模式。這種遮擋式光傳感器可以應(yīng)用在很多地方,比如電動機(jī)轉(zhuǎn)速的測定。安裝在門的兩側(cè)可以用來防盜。在對射管沒有被不透明物體遮擋時(shí),發(fā)射管發(fā)出的光線能被接收管接收到,這時(shí)對射管的信號線輸出低電平,當(dāng)發(fā)射管的光線被不透明的物體遮擋住時(shí),接收管不能接受到信號,這時(shí)對射管輸出高電平。如圖7-30所示。 圖7-29霍爾傳感器外觀及連線圖 圖7-30光電傳感器發(fā)射接收端有無遮擋示意圖溫度傳感器新型數(shù)字溫度傳感器DS18B20具有體積更小、精度更高、適用電壓更寬、采用一線總線、可組網(wǎng)等優(yōu)點(diǎn),在實(shí)際應(yīng)用中取得了良好的測溫效果。DS18B20的主要特性:適應(yīng)電壓范圍更寬,電壓范圍為3.0~5.5V,在寄生電源方式下可由數(shù)據(jù)線供電。獨(dú)特的單線接口方式,DS18B20在與微處理器連接時(shí)僅需要一條口線即可實(shí)現(xiàn)微處理器與DS18B20的雙向通信。DS18B20支持多點(diǎn)組網(wǎng)功能,多個DS18B20可以并聯(lián)在唯一的三線上,實(shí)現(xiàn)組網(wǎng)多點(diǎn)測溫。DS18B20在使用中不需要任何外圍元件,全部傳感元件及轉(zhuǎn)換電路集成在形如一只晶體管的集成電路內(nèi)。溫度范圍-55~+125℃,在-10~+85℃時(shí)精度為±0.5℃。可編程的分辨率為9~12位,對應(yīng)的可分辨溫度分別為0.5℃、0.25℃、0.125℃和0.0625℃,可實(shí)現(xiàn)高精度測溫。 7)在9位分辨率時(shí),最多在93.75ms內(nèi)把溫度轉(zhuǎn)換為數(shù)字, 12位分辨率時(shí)最多在75.0ms內(nèi)把溫度值轉(zhuǎn)換為數(shù)字,速度更快。測量結(jié)果直接輸出數(shù)字溫度信號,以“一線總線”串行傳送給CPU,同時(shí)可傳送CRC校驗(yàn)碼,具有極強(qiáng)的抗干擾糾錯能力。負(fù)壓特性。電源極性接反時(shí),芯片不會因發(fā)熱而燒毀,但不能正常工作。它的外形及連線如圖7-31所示。4.超聲波傳感器超聲測距是一種非接觸式的檢測方式。與其他方法相比,如電磁的或光學(xué)的方法,它不受光線、被測對象顏色等影響。對于被測物處于黑暗、有灰塵、煙霧、電磁干擾、有毒等惡劣的環(huán)境下有一定的適應(yīng)能力。因此在液位測量、機(jī)械手控制、車輛自動導(dǎo)航、物體識別等方面有廣泛應(yīng)用。特別是應(yīng)用于空氣中的測距,由于空氣中波速較慢,其回波信號中包含的沿傳播方向上的結(jié)構(gòu)信息很容易檢測出來,具有很高的分辨力,因而其準(zhǔn)確度也較其他方法為高;而且超聲波傳感器具有結(jié)構(gòu)簡單、體積小、信號處理可靠等特點(diǎn)。這種技術(shù)常被應(yīng)用于避障技術(shù)中。同學(xué)們掌握這個傳感器的使用方法,對學(xué)習(xí)機(jī)器人技術(shù)是非常有幫助的。超聲波測距的原理如圖7-32所示。圖7-31溫度傳感器DS18B20外觀及連線圖 圖7-32超聲波傳感器測距原理圖發(fā)射探頭發(fā)射超聲波,當(dāng)超聲波遇到障礙物后聲波被反射回來,并被接受探頭接收到,控制單片機(jī)記錄超聲波從發(fā)射到接受超聲波的時(shí)間,利用超聲波在空氣中的傳播速度就可以計(jì)算出障礙物的距離:S=vt/2。我們使用的超聲波傳感器是壓電式超聲波傳感器ZR4016、ZT40-16,它們的原理如圖7-32所示,壓電式超聲波發(fā)生器實(shí)際上是利用壓電晶體的諧振來工作的。超聲波發(fā)生器內(nèi)部結(jié)構(gòu)如圖7-33所示,它有兩個壓電晶片和一個共振板。當(dāng)它的兩極外加脈沖信號,其頻率等于壓電晶片的固有振蕩頻率時(shí),壓電晶片將會發(fā)生共振,并帶動共振板振動,便產(chǎn)16生超聲波。反之,如果兩電極間未外加電壓,當(dāng)共振板接收圖7-33超聲波傳感器內(nèi)部結(jié)構(gòu)圖到超聲波時(shí),將壓迫壓電晶片作振動,將機(jī)械能轉(zhuǎn)換為電信號,這時(shí)它就成為超聲波接收器了。但是接收到的信號是非常微弱的,所以我們要把它放大,以使單片機(jī)能夠檢測到它的大小。四、實(shí)驗(yàn)步驟實(shí)驗(yàn)板的布置如圖7-34所示。圖7-34傳感器實(shí)驗(yàn)板布置(正式)圖1.霍爾傳感器要求:連接完整的電路,在單片機(jī)上下載程序?qū)崿F(xiàn)在奇數(shù)次中斷時(shí)(霍爾傳感器在奇數(shù)次檢測到磁場時(shí))所有LED燈循環(huán)點(diǎn)亮,偶數(shù)次中斷時(shí)(霍爾傳感器在偶數(shù)次檢測到磁場時(shí))關(guān)閉LED。步驟:給試驗(yàn)板加電(注:電源電壓12V,電源極性不能接反,當(dāng)電源部分指示燈點(diǎn)亮?xí)r表明試驗(yàn)板加電正確)。用萬用表測量霍爾傳感器的信號線,信號線為J1端子中間的插針,地線為J5端子的上測,觀察電平值,這時(shí)將強(qiáng)磁鐵靠近霍爾傳感器,觀察電壓值是否變低了,如果電壓值沒有足夠低,這時(shí)把磁鐵翻過一面再靠近霍爾傳感器,然后再觀察霍爾傳感器的信號線的電平變化,霍爾傳感器的檢測結(jié)果是否存在極性問題,請同學(xué)們在實(shí)驗(yàn)室驗(yàn)證。觀察實(shí)驗(yàn)板原理圖,找出單片機(jī)的RB0 (33號引腳),并用插接線連接霍爾傳感器的信號線與單片機(jī)的外部中斷引腳———RB0。在MPLABIDE環(huán)境下利用MPLABICD2把源程序下載到單片機(jī)中,步驟如實(shí)驗(yàn)一中所敘述,并用磁鐵驗(yàn)證該實(shí)驗(yàn)。霍爾傳感器在奇數(shù)次檢測到磁場時(shí)如圖7-35所示,此時(shí)4個燈全亮?;魻杺鞲衅髟谄鏀?shù)次檢測到磁場時(shí),此時(shí)4個燈全滅。請同學(xué)們做完每個實(shí)驗(yàn)后將接插線拆除。5)仔細(xì)閱讀源代碼,并說明源代碼實(shí)現(xiàn)的功能(完成思考題1)。6)請同學(xué)們試著獨(dú)立編寫程序完成上面要求的功能。2.光電傳感器要求:用單片機(jī)的中斷功能記錄光電對射管被遮擋的次數(shù),并在四位LED數(shù)碼管的低兩位顯示出來。只要求記錄99次以下的遮擋次數(shù)。圖7-35霍爾傳感器實(shí)驗(yàn)演示圖步驟:用萬用表測量光電傳感器的信號線,并觀察其電平值,這時(shí)用一個紙片擋在發(fā)射管與接受管之間,再觀察電壓值是否變低了,撤離遮擋物以后電平恢復(fù)原置值,注意光電傳感器的信號線為J1端子右側(cè)第3個插針。具體操作如圖7-36所示。圖7-36傳感器操作示意圖觀察實(shí)驗(yàn)板原理圖,找出單片機(jī)的RB0引腳,然后用插接線連接光電傳感器的信號線與單片機(jī)的外部中斷引腳———RB0,并對照程序與實(shí)驗(yàn)板原理圖用接插線連接四位LED數(shù)碼管與單片機(jī),J7端子插針由下向上分別為個、十、百、千,因此J7端子個位插針與單片機(jī)RA3(5號引腳)相連,J7端子十位插針與單片機(jī)RA2(4號引腳)相連,其他不連,最后運(yùn)行程序后兩位數(shù)碼管顯示出遮擋次數(shù)。3)在MPLABIDE環(huán)境下利用MPLABICD2把源程序下載到單片機(jī)中,并驗(yàn)證實(shí)驗(yàn)。3)4)仔細(xì)閱讀參考源代碼并理解每條語句的相關(guān)功能(完成思考題2)。5)獨(dú)立編寫程序完成上述要求的功能。5)3.溫度傳感器要求:使用溫度傳感器測定周圍環(huán)境溫度,用攝氏度為單位,并且通過串口通信發(fā)送到計(jì)算機(jī)的串口助手中顯示出來,要求波特率為9600bit/s,并且在數(shù)碼管上顯示溫度值精確到攝氏度。步驟:觀察溫度傳感器的外形,這里溫度傳感器的信號線在J1端子左邊第1個插針,同學(xué)們在以后的獨(dú)立開發(fā)應(yīng)用中不要弄錯。觀察實(shí)驗(yàn)板原理圖,找出單片機(jī)的RA1 (3號引腳),用插接線連接溫度傳感器的信號線與單片機(jī)的外部中斷引腳———RA1 (可以連到其他普通IO口上,本程序以連接到AR1為例),并對照程序用接插線連接四位LED數(shù)碼管與單片機(jī), J7端子個位與單片機(jī)RRC1 (16號引腳)相連, J7端子十位與單片機(jī)RC0 (15號引腳)相連。在MPLABIDE環(huán)境下利用MPLABICD2把源程序下載到單片機(jī)中,并在實(shí)驗(yàn)板上驗(yàn)證。仔細(xì)閱讀溫度傳感器的源代碼,在閱讀的過程中,把主要精力放在主函數(shù)上,了解溫度傳感器的操作順序(命令的發(fā)送順序),各個功能模塊函數(shù)已經(jīng)實(shí)現(xiàn),由于同學(xué)們的課程時(shí)間較緊張,在這里不要求同學(xué)們自己編寫了,完成思考題3即可。4.超聲波傳感器超聲波的發(fā)送電路是通過LC振蕩實(shí)現(xiàn)電壓放大的,而在振蕩的過程中存在瞬間短路現(xiàn)象,如圖7-37所示,當(dāng)SEND為高電平時(shí),晶體管處于導(dǎo)通狀態(tài),這是電源通過電感經(jīng)過晶體管直接流入地,這個瞬間要求很短,經(jīng)過一個短暫的瞬態(tài),電感中的電流已經(jīng)達(dá)到了一定的大小,此時(shí)SEND變?yōu)榈碗娖?,晶體管截止,電流不能通過晶體管,但是由于電感的自感效應(yīng),會在電容量兩端充電,并且電壓升到將近30V,如此反復(fù),就在晶體管的集電極形成了振蕩的電壓,我們給出的SEND端信號為40kHz的方波信號,而在集電極處我們得到了峰-峰值約為30V的振蕩電壓,我們將這個電壓加到超聲波的發(fā)射探頭上就可以發(fā)射一定功率的超聲波了。而這種發(fā)射電路,就決定了我們絕對不能讓SEND端的高電平時(shí)間過長,只要不是在發(fā)射狀態(tài)就必須要求ESND端處于低電平狀態(tài)。S電路示意如圖7-37所示。要求:實(shí)現(xiàn)超聲波測距,并且在數(shù)碼管上顯示出具體值。步驟:觀察實(shí)驗(yàn)板原理圖,找出單片機(jī)的RB0(33號引腳)與RC2(17號引腳),用接插線將SEND端(JP2端子的下側(cè)插針)與RC2相連(RC2是單片機(jī)的PWM輸出端),將RECEIVE端(JP2端子的上側(cè)插針)與RB0相連(外部中斷)。注意:板子上的SEND和RE-CEIVE寫反了。 圖7-37超聲波傳感器振蕩電路示意對照程序與實(shí)驗(yàn)板原理圖用接插線連接四位LED數(shù)碼管與單片機(jī),J7端子個、十、百、千插針分別與單片機(jī)RA3(5號引腳)、RA2(4號引腳)、RA1(3號引腳)、RA0(2號引腳)相連。在MPLABIDE環(huán)境下利用MPLABICD2把源程序下載到單片機(jī)中,并對照程序與實(shí)驗(yàn)板原理圖用接插線連接四位LED數(shù)碼管與單片機(jī)。超聲波傳感器實(shí)驗(yàn)運(yùn)行結(jié)果如圖7-38所示。圖7-38傳感器實(shí)驗(yàn)運(yùn)行結(jié)果用示波器觀察發(fā)射探頭上的波形,認(rèn)真體會超聲波測距的原理。用示波器觀察接收端的信號波形,用兩路示波器同時(shí)觀察發(fā)送與接收端的波形,體會時(shí)差測距的思想。仔細(xì)閱讀給出的源代碼并理解相關(guān)語句的功能(完成思考題4)。五、思考題在霍爾傳感器實(shí)驗(yàn)中給出的源代碼實(shí)現(xiàn)的功能是什么?用簡潔的語言概括出來。答:在奇數(shù)次中斷到來時(shí)點(diǎn)亮所有4個LED燈,偶數(shù)次中斷到來時(shí)關(guān)閉所有LED燈。設(shè)計(jì)一個光電對射管的簡單應(yīng)用。談?wù)勛约旱膭?chuàng)意。利用光電開關(guān)還可以進(jìn)行產(chǎn)品流水線的產(chǎn)量統(tǒng)計(jì)、對裝配件是否到位及裝配質(zhì)量進(jìn)行檢測,例如瓶蓋是否壓上、商標(biāo)是否漏貼(見圖7-39),以及送料機(jī)構(gòu)是否斷料(見圖7-40)等。此外,利用光電傳感器可以檢測布料的有無和寬度。利用遮擋式光電傳感器檢測布料的下垂度,其結(jié)果可用于調(diào)整布料在傳送中的張力,利用安裝在框架上的光電傳感器可以發(fā)現(xiàn)漏裝產(chǎn)品的空箱,比利用油缸將空箱推出。 圖7-39瓶子罐裝檢測示意圖 圖7-40送料機(jī)構(gòu)檢測示意圖總結(jié)溫度傳感器的命令發(fā)送的順序?答: (注:如果命令發(fā)送順序發(fā)送不正確,溫度傳感器不能工作,還有在傳輸數(shù)據(jù)的過程中關(guān)鍵部分的延時(shí)也是要求很嚴(yán)格的,在應(yīng)用中如果命令順序正確而溫度值不能讀出,大多數(shù)情況下都是在數(shù)據(jù)傳輸過程中的時(shí)間延遲不正確,但是本次試驗(yàn)中的這部分源代碼已經(jīng)給出,要求同學(xué)們深刻理解溫度傳感器的使用方法,做到在以后的應(yīng)用中會用溫度傳感器測定環(huán)境溫度。)在測量距離的過程中,發(fā)射探頭為什么不能一直都發(fā)送超聲波,而是采用瞬間發(fā)送然后停止發(fā)送的方法實(shí)現(xiàn)測量距離的功能。答:超聲波傳感器在測量較遠(yuǎn)距離的障礙物是非常有優(yōu)勢的,然而在物體里測量系統(tǒng)非常緊的時(shí)候就顯得有劣勢了。這主要是因?yàn)槌暡ǖ臏y距過程是這樣的,首先在很短的時(shí)間內(nèi)(0.25ms左右大約發(fā)射10個周期的超聲波)然后就關(guān)閉發(fā)射,打開中斷等待超聲波的發(fā)射波。當(dāng)反射波到來時(shí)經(jīng)過發(fā)射電路后,觸發(fā)單片機(jī)的中斷,在發(fā)射和中斷觸發(fā)這段時(shí)間內(nèi)就是超聲波在物體與測距儀間的傳播時(shí)間,如果我們采用連續(xù)發(fā)射的方式,在超聲波發(fā)出并發(fā)射回來后,超聲波在接收探頭處就是連續(xù)存在的,這對于單片機(jī)來說此種形式的信息里是不存在距離信息的,是不能完成測距的。實(shí)驗(yàn)三舵機(jī)控制實(shí)驗(yàn)一、實(shí)驗(yàn)?zāi)康?)了解舵機(jī)的原理和控制方法。1)2)掌握單片機(jī)的定時(shí)器模塊的使用。3)學(xué)會利用定時(shí)器來生成PWM波。實(shí)驗(yàn)設(shè)備PC一臺(PC上安裝MPLABIDE軟件)、在線調(diào)試器MPLABICD2、目標(biāo)電路板、舵機(jī)一個。實(shí)驗(yàn)原理1.舵機(jī)的工作原理機(jī)器人的動力來源都是舵機(jī),嵌入式系統(tǒng)主要控制的對象就是舵機(jī),對舵機(jī)必須有一個清楚的認(rèn)識。舵機(jī)是一種位置伺服的驅(qū)動器,適用于那些需要角度不斷變化并具有保持力矩的控制系統(tǒng)。舵機(jī)的工作原理是:控制電路板接受來自信號線的控制信號,控制電動機(jī)轉(zhuǎn)動,電動機(jī)帶動一系列齒輪組,減速后傳動至輸出舵盤。舵機(jī)的輸出軸和位置反饋電位器是相連的,舵盤轉(zhuǎn)動的同時(shí),帶動位置反饋電位器,電位器將輸出一個電壓信號到控制電路板,進(jìn)行反饋,然后控制電路板根據(jù)所在位置決定電動機(jī)的轉(zhuǎn)動方向和速度,從而達(dá)到目標(biāo)停止??刂菩盘栍山邮諜C(jī)的通道進(jìn)入信號調(diào)制芯片,獲得直流偏置電壓。它內(nèi)部有一個基準(zhǔn)電路,產(chǎn)生周期為20ms,寬度為1.5ms的基準(zhǔn)信號,將獲得的直流偏置電壓與電位器的電壓比較,獲得電壓差輸出。最后,電壓差的正負(fù)輸出到電動機(jī)驅(qū)動芯片,決定電動機(jī)的正反轉(zhuǎn)。當(dāng)電動機(jī)轉(zhuǎn)速一定時(shí),通過級聯(lián)減速齒輪帶動電位器旋轉(zhuǎn),使得電壓差為0,電動機(jī)停止轉(zhuǎn)動。舵機(jī)內(nèi)部結(jié)構(gòu)如圖7-41所示。電動機(jī):為舵機(jī)提供動力。減速箱:將電動機(jī)的高轉(zhuǎn)速降低,并獲得大的轉(zhuǎn)矩。電位器:為系統(tǒng)提供輸出軸的反饋。電子控制板:用來分析控制信號和反饋位置直接的關(guān)系,控制電動機(jī)正轉(zhuǎn)、反轉(zhuǎn)還是停機(jī)。真正的舵機(jī)如圖7-42所示。 圖7-41舵機(jī)內(nèi)部結(jié)構(gòu) 圖7-42真實(shí)舵機(jī)圖片2.舵機(jī)的PWM控制方式采用的是日本KONDO公司生產(chǎn)的KRS786ICS舵機(jī),這種舵機(jī)是專門為雙足步行機(jī)器人設(shè)計(jì)的舵機(jī),其具體參數(shù)見表7-3。 表7-3 KRS786ICS舵機(jī)參數(shù)舵機(jī)名稱尺寸/mm重量/g速度力矩/N·cm周期/ms控制范圍/ (°)KRS786ICS31×16×30.2350.23s/60°77.428~20-90~90舵機(jī)的控制信號的特征,如圖7-43所示,舵機(jī)控制信號為周期從8~20ms可以任意選擇的脈寬調(diào)制(PWM)信號,脈沖寬度為0.7~2.3ms的范圍,對應(yīng)于-90°~90°的轉(zhuǎn)角范圍,如圖7-44所示。舵機(jī)控制信號的高電平為3~6V,低電平為0~0.8V。與直流電動機(jī)相比較,舵機(jī)的控制要簡單很多,主要是因?yàn)樗幸粋€內(nèi)置的控制器,于是對嵌入式控制系統(tǒng)的要求就簡單很多。只要嵌入式系統(tǒng)獲取PC下載給它的數(shù)據(jù)之后,根據(jù)數(shù)據(jù)值向各個舵機(jī)發(fā)送周期性脈沖就可以了,只是脈寬不同而已。 圖7-43舵機(jī)的控制信號 圖7-44舵機(jī)的角度和脈沖寬度之間的關(guān)系圖今后為了運(yùn)算和使用方便,把舵機(jī)的-90°規(guī)定為0°,把舵機(jī)的90°規(guī)定為180°,相當(dāng)于把參考坐標(biāo)系向左移動了90°,即如圖7-45所示的本系統(tǒng)中使用的舵機(jī)角度和脈沖寬度之間的關(guān)系圖,并且將舵機(jī)的控制信號定為周期是20ms的脈寬調(diào)制信號,其中脈沖寬度從0.5~2.5ms,相對應(yīng)舵盤的位置為0~180°,呈線性變化。也就是說,給它提供一定的脈寬,它的輸出軸就會保持在一個相對應(yīng)的角度上,無論外界轉(zhuǎn)矩怎樣改變,直到給它提供一個另外寬度的脈沖信號,它才會改變輸出角度到新的對應(yīng)的位置上。 3.利用PIC(PIC16F877A)單片機(jī)定時(shí)器1生 圖7-45實(shí)用的舵機(jī)角度和成PWM控制信號 脈沖寬度之間的關(guān)系圖 PIC單片機(jī)有Timer0、 Timer1、 Timer2三個定時(shí)器,雙足步行機(jī)器人用Timer0做看門狗,以防止程序跑飛;用Timer1來定時(shí)比較,生成24路PWM波。下面就介紹一下Timer1(Timer0和Timer2在一些用法方面和Timer1相似)。Timer1模塊是由兩個可讀寫的8位寄存器(TMR1H和TMR1L)組成的16位定時(shí)器/計(jì)數(shù)器。TMR1寄存器(TMR1H:TMR1L)從0000h開始加1記數(shù),一直加到FFFFh后,再加1又循環(huán)回到0000h。如果允許Timer1中斷,則定時(shí)器溢出的時(shí)候中斷標(biāo)志位TMR1IF置位,而產(chǎn)生Timer1中斷。中斷的使能/禁止可以通過置位/清除TMR1IE中斷使能位來設(shè)置。T1CON:Timer1控制寄存器,用來控制Timer1的工作模式,其數(shù)據(jù)位定義如圖7-46所示。 圖7-46 Timer1控制寄存器T1CON的數(shù)據(jù)位定義bit7∶6未定義,始終讀為“0”。bit5∶4 T1CKPS1: T1CKPS0:Timer1輸入時(shí)鐘預(yù)分頻選擇 11=1∶8預(yù)分頻值; 10=1∶4預(yù)分頻值; 01=1∶2預(yù)分頻值; 00=1∶1預(yù)分頻值。bit3 T1OSCEN: Timer1內(nèi)部振蕩器使能位。當(dāng)T1OSCEN=1時(shí):打開內(nèi)部振蕩器,反相放大器工作,需外接晶體產(chǎn)生振蕩時(shí)鐘。 當(dāng)T1OSCEN=0時(shí):振蕩器被關(guān)閉。振蕩器的反相器和反饋電阻被關(guān)。bit2 T1SYNC: Timer1外部時(shí)鐘輸入同步控制位。當(dāng)TMR1CS=1時(shí):不同步外部時(shí)鐘。 當(dāng)TMR1CS=0時(shí):同步外部時(shí)鐘。 TMR1CS=0時(shí)Timer1使用內(nèi)部時(shí)鐘。bit1 TMR1CS: Timer1時(shí)鐘源選擇位。當(dāng)TMR1CS=1時(shí):選擇T1OSO/T1CKI引腳的外部時(shí)鐘(上升沿計(jì))。當(dāng)TMR1CS=0時(shí):選擇內(nèi)部時(shí)鐘(FOSC/4)。bit0 TMR1ON: Timer1使能位 當(dāng)TMR1ON=1時(shí):使能Timer1。 當(dāng)TMR1ON=1時(shí):關(guān)閉Timer1。雙足步行機(jī)器人用到的是Timer1的定時(shí)功能,將TMR1CS(T1CON控制寄存器bit1)清0,選擇TMR1工作在定時(shí)器模式。在這種模式下,定時(shí)器的輸入時(shí)鐘是內(nèi)部時(shí)鐘頻率的4分頻(fOSC/4)。因?yàn)閮?nèi)部時(shí)鐘總是同步的,所以同步控制位T1SYNC(T1CON控制寄存器bit2)此時(shí)不起作用。 Timer1初始化: voidInitTimer (void){ OPTION| =0x0F; //開啟看門狗,分頻為1∶128 (Timer0) T1CON=0; //工作在定時(shí)模式 TMR1IE=0; //關(guān)中斷 TMR1IF=0; //清除溢出標(biāo)志}由于我們使用的舵機(jī)控制波形為高電平延時(shí)在0.5~2.5ms的方波,我們可以通過Timer1定時(shí),比如我們要讓某一引腳(如RD1)輸出高電平延時(shí)為1.5ms,周期為20ms的方波,我們可以這樣做:①RD1=高電平;②延時(shí)1.5ms;③RD1=低電平;④延時(shí)18.5ms;⑤重復(fù)Ⅰ—Ⅳ。所以我們只需要再寫一個延時(shí)函數(shù)即可,代碼如下: voidDelay (U8TH,U8TL){ TMR1H = TH; //LoaddelaytimeHighTMR1L=TL;//LoaddelaytimeLowTMR1ON=1;//打開timer1 while (! TMR1IF) //等待計(jì)數(shù)溢出 CLRWDT (); //清除看門狗 TMR1IF = 0; //清除標(biāo)志位 TMR1ON = 0; //關(guān)閉timer1 }很顯然,我們只要知道延時(shí)1.5ms,單片機(jī)需要運(yùn)行多少條指令就行了。下面就來詳細(xì)計(jì)算一下:PIC單片機(jī)晶振為20MHz,定時(shí)器的輸入時(shí)鐘是內(nèi)部時(shí)鐘頻率的4分頻(fOSC/4),也就是說,一條指令需要(4/fOSC)s=4/20MHz=0.2μs,定時(shí)1.5ms就需要執(zhí)行1.5ms/0.2μs=7500條指令,所以定時(shí)器每次重裝的計(jì)數(shù)初值為0xffff-7500,即TMR1=0xffff-7500,從而得出: TMR1H=(0xffff - 7500)/256=HIGH; TMR1L=(0xffff - 7500)%256=LOW; NST uS H(x)((0xffff-((x)?(FOSC/4/1000000)))/256) TIMECONST uS L(x)((0xffff-((x)?(FOSC/4/1000000)))%256)來表示x微秒的時(shí)間常數(shù)。 這樣, Delay(TIME CONST uS H(Angle)、 TIME CONST uS L(Angle))就表示延時(shí)Angle微秒了。我們要生成連續(xù)的周期為20ms、高電平延在0.5~2.5ms的方波來控制舵機(jī)就很容易了(因?yàn)楦唠娖窖釉?.5~2.5ms,所以低電平延在17.5~19.5ms),代碼如下:voidPWM(U16Angle){ DUOJI RUN;//高電平正時(shí) Delay(TIME CONST uS H(Angle),TIME CONST uS L(Angle)); DUOJI STOP;//低電平延時(shí)17.5ms Delay(TIMECONST uS H(10000),TIMECONST uS L(10000));Delay(TIMECONST uS H(7500),TIME CONST uS L(7500));//減去高電平時(shí)間,確保周期在20ms Delay(TIME CONST uS H(2500-Angle),TIME CONST uS L(2500-Angle));} 注意控制舵機(jī)必須是連續(xù)的方波,一個周期的方波是不行的,所以連續(xù)調(diào)用PWM ()就可以了。四、實(shí)驗(yàn)步驟運(yùn)行MPLABIDE要啟動IDE,安裝后雙擊桌面上的圖標(biāo)。創(chuàng)建項(xiàng)目→ProjectWizard,單擊下一步,選擇器件PIC16F877A,單擊下一步。2)選擇語言工具:在ActiveToolsuite框中選HI-TECHPICCToolsuite,單擊下一步。輸入工程名和工程所在的路徑,單擊下一步;這里我們設(shè)工程名為frist,存在路徑d:\first\下。如果所建工程路徑下已經(jīng)有了寫好的C文件,可以直接添加到工程中,若沒有,直接單擊下一步。單擊完成,項(xiàng)目工程建立完成。3.編寫程序具體步驟如下:1)單擊File→New新建一個文件,編寫程序代碼,完整代碼如下(注意RD1引腳要設(shè)為輸出):/?;????????????????????????????????????????????????????????????????????;?;? 北京科技大學(xué)王志良類人機(jī)器人實(shí)驗(yàn)室;?;? FileInformation ?;?;?Filename:PWM.C;?Function :熟悉Timer定時(shí)器的使用,熟悉使用定時(shí)器生成PWM波來控制Notice U:PIC16F877A;?;? Latestversioninformation ?;?Author :xuwenxue;?ModifiedDate :2006-8-21;?Version :v1.0.1;? Historyversioninfomation ?;?Author :xuwenxue;?Createddate :2006-8-21;?Version :v1.0.0;? ?;????????????????????????????????????????????????????????????????????/#include<pic.h>//包含PIC頭文件typedefunsignedcharU8;//無符號8位(0~255) typedefsignedcharI8; //有符號8位(-128~127) typedefunsignedintU16; //無符號16位(0~65535) typedefsignedintI16; //有符號16位(-32768~32767) #defineFOSC20000000 //定義晶振為20MHz #defineINS 5 //定義1μs所需的指令數(shù) #defineDUOJIRD1 //舵機(jī)控制口定為CH4通道,對應(yīng)引腳為RD1 #defineDUOJI RUNDUOJI=1 //PWM波的高電平,高電平的時(shí)間對應(yīng)舵機(jī)的轉(zhuǎn)//角,0.5~2.5ms對應(yīng)0~180° #defineDUOJI STOPDUOJI=0 //PWM波的低電平 //#defineTIME CONST uS H(x) ((0xffff-((x)?(FOSC/4/1000000)))/256) //#defineTIME CONST uS L(x) ((0xffff-((x)?(FOSC/4/1000000)))%256) #defineTIMECONST uS H(x) ((0xffff-((x)?INS))/256) #defineTIMECONST uS L(x) ((0xffff-((x)?INS))%256)?/?????????????????????????????????????????????????????????????????? ?Function: voidInitTimer(void) ?Use: Initializetimers ?Inputparameter:none ?Outputparameter:none????????????????????????????????????????????????????????????????????/ voidInitTimer(void) { OPTION|= 0x0F; //開啟看門狗,分頻為1∶128(Timer0) T1CON = 0; //工作在定時(shí)模式 TMR1IE = 0; //關(guān)中斷 TMR1IF = 0; //清除溢出標(biāo)志 }?/?????????????????????????????????????????????????????????????????? ?Function: voidDelay(U8TH,U8TL) ?Use: Accuratedelayfunction(usingtimer1) ?Inputparameter:TH:ValueforTMR1H;TL:ValueforTMR1L ?Outputparameter:none????????????????????????????????????????????????????????????????????/ voidDelay(U8TH,U8TL) {TMR1H=TH;//LoaddelaytimeHighTMR1L=TL;//LoaddelaytimeLowTMR1ON=1;//打開timer1while(!TMR1IF);//等待計(jì)數(shù)溢出CLRWDT();//清除看門狗 TMR1IF = 0; //清除標(biāo)志位 TMR1ON = 0; //關(guān)閉timer1 } /? voidDelay(U8TH,U8TL) { #asm BCFSTATUS,RP0 movlwTH movwfTMR1H//LoaddelaytimeHigh movlwTL movwfTMR1L//LoaddelaytimeLowbsfT1CON,TMR1ONloopbtfscPIR1,TMR1IF//asm(clrwdt) bcfPIR1,TMR1IF bcfT1CON,TMR1ON #endasm } ?//???????????????????????????????????????????????????????????????????? ?Function: voidPWM(U16Angle) ?Use: PWMfunction(usingtimer1) ?Inputparameter:Angle:Valueforthepositionofthemotor ?Outputparameter:none????????????????????????????????????????????????????????????????????/ voidPWM(U16Angle) { DUOJI RUN; //高電平時(shí)間,對應(yīng)舵機(jī)角度 Delay(TIME CONST uS H(Angle),TIME CONST uS L(Angle)); DUOJI STOP; Delay(TIME CONST uS H(10000),TIMECONST uS L(10000)); Delay(TIME CONST uS H(7500),TIMECONST uS L(7500)); //確保周期為20ms Delay(TIME CONST uS H(2500-Angle),TIME CONST uS L(2500-Angle)); } voidmain(void) { U16i=0; InitTimer(); //初始化定時(shí)器 TRISD&=~(1<<1); //設(shè)置RD1為輸出,以便輸出PWM while(1) { i++; if((i<250)&&(i>0)) PWM(500);//高電平延時(shí)為0.5ms,周期為20ms方波,舵機(jī)對應(yīng)位置應(yīng)為0° elseif((i<500)&&(i>=250)) PWM(1500);//高電平延時(shí)為1.5ms,周期為20ms方波,舵機(jī)對應(yīng)位置應(yīng)為90° elsePWM(2400);//高電平延時(shí)為2.4ms,周期為20ms方波,舵機(jī)對應(yīng)位置應(yīng)為180° if(i>750)i=0; } }我們通過改變PWM函數(shù)的參數(shù)在500~2500之間變動就可以實(shí)現(xiàn)舵機(jī)轉(zhuǎn)角變化了,可以在程序中設(shè)置一個i,每20ms加一,到一定時(shí)間程序自己改變函數(shù)的參數(shù)就行了。實(shí)現(xiàn)舵機(jī)轉(zhuǎn)速的變化也是這個道理,只是改變的時(shí)間長短的不同。保存這個文件到d: \first\文件下,文件名為first.c。添加first.c到工程中去,右鍵單擊sourcefiles,選擇“addfiles”,找到fisrt.c,加進(jìn)去即可。保存工程,單擊File→SaveWorkspace。連接MPLABICD2具體步驟如實(shí)驗(yàn)一所示。調(diào)試程序設(shè)置芯片的配置字、編譯程序和下載程序等如實(shí)驗(yàn)一所示,下載完程序之后,將ICD2和目標(biāo)演示板斷開,將舵機(jī)連到RD1插口,我們就會看到舵機(jī)的舵盤轉(zhuǎn)動起來,先轉(zhuǎn)90°,再轉(zhuǎn)90°,然后再回轉(zhuǎn)180°,用示波器看一下輸出的波形對不對。五、思考題舵機(jī)是如何控制的,和普通直流電動機(jī)有什么不同?答:通過周期在20ms左右,高電平在一定范圍的PWM波來控制,不同舵機(jī)高電平范圍不同,具體看舵機(jī)參數(shù)。直流電動機(jī)也可以通過PWM來控制,所不同的是,直流電動機(jī)PWM是用來調(diào)速的,而舵機(jī)則是調(diào)位置的,事實(shí)上舵機(jī)內(nèi)部也是個小直流,不過在舵機(jī)內(nèi)部還有個用來反饋電路板,通過PWM來調(diào)整所要轉(zhuǎn)的角度。簡述利用Timer1生成PWM的過程? 答: TIMER1就是用來定時(shí),先將某引腳置高(低),定時(shí)一段時(shí)間后再將該引腳置低(高),再定時(shí)一段時(shí)間將該引腳置高(低),如此反復(fù)即可。Timer1最多能定時(shí)多長時(shí)間?答:這需要根據(jù)外圍晶振的頻率來定,我們知道單片機(jī)一條指令耗時(shí):(4/fosc)s。Timer1是一個16位定時(shí)器,所以能從0加到65535,也就是說最多能加65536個指令,當(dāng)從0加到65535時(shí)也就定時(shí)了65536?(4/fosc)s,這也是最大值。比如我們的晶振是20MHz的,所以最多能延時(shí)13.1072ms,所以要注意程序中(TIMECONSTuSH(x),TIMECONSTuSL(x))的x是有限制的,X≤13107。實(shí)驗(yàn)四機(jī)械結(jié)構(gòu)設(shè)計(jì)與認(rèn)識實(shí)驗(yàn)一、實(shí)驗(yàn)?zāi)康恼J(rèn)識雙足步行機(jī)器人的自由度。掌握雙足步行機(jī)器人機(jī)械結(jié)構(gòu)。熟悉舵機(jī)初始角度和初始姿態(tài)對安裝機(jī)器人的影響。學(xué)會組裝雙足步行機(jī)器人。實(shí)驗(yàn)設(shè)備機(jī)器人組裝件一套、舵機(jī)17臺、機(jī)器人控制器一個、若干螺釘。實(shí)驗(yàn)原理與說明關(guān)于機(jī)器人自由度的說明自由度從廣義上來說就是在某一方向上能夠旋轉(zhuǎn)或移動。它是機(jī)器人性能中一個重要的參數(shù),和舵機(jī)聯(lián)系在一起,一般來說,有多少個舵機(jī)就有多少個自由度。在設(shè)計(jì)機(jī)器人的機(jī)械結(jié)構(gòu)時(shí),要考慮到機(jī)器人的仿人特點(diǎn)。在每個關(guān)節(jié)處都要設(shè)立自由度,那樣才能完成類似人的動作。比如設(shè)計(jì)機(jī)器人腿,至少要有5個自由度,分別是髖關(guān)節(jié)上的兩個自由度、膝關(guān)節(jié)上的一個自由度、還有踝關(guān)節(jié)上的兩個自由度,這樣就可以完成類似人的前進(jìn)、后退、抬腿、俯身等動作,如圖7-47所示。機(jī)器人機(jī)械結(jié)構(gòu)配件圖7-48所示的機(jī)器人,是將17臺舵機(jī)以搭積木的方式搭成人形的。機(jī)體大部分是由舵機(jī)組成的,各個舵機(jī)之間是由一些鈑金件連接而成。為了保證舵機(jī)之間能夠有效地連接,同時(shí)17個舵機(jī)要組裝成一個人形,需要有合理的機(jī)械配件。圖7-49所示的就是機(jī)器人所需的配件。四、實(shí)驗(yàn)步驟實(shí)驗(yàn)(一)機(jī)器人組裝用螺釘將安裝的配件按圖7-50的方式組裝在一起,注意有的配件有許多小孔,在組裝時(shí),必須按圖7-50的方式組裝,否則圖7-47機(jī)器人自由度說明機(jī)器人的整體外形將會有變化,不利于原有程序操縱。 圖7-48機(jī)器人平臺 圖7-49所需配件圖7-50組裝方式示意圖用M2×33mm螺釘將配件和舵機(jī)組裝在一起,如圖7-51所示。注意在安裝腳部舵機(jī)時(shí),首先將舵機(jī)的外殼放到里面,然后將舵機(jī)的數(shù)據(jù)線從配件的側(cè)面方孔穿過。這樣安裝才能不損壞數(shù)據(jù)線和舵機(jī)外殼。圖7-51配件舵機(jī)組裝示意組裝機(jī)器人的兩個上肢,每個上肢由兩個舵機(jī)組成,具有2個自由度。安裝前將舵機(jī)初始的角度設(shè)定在90°,這樣有利于舵機(jī)有擺動的余地。因?yàn)榇硕鏅C(jī)最大動作角度是180°,當(dāng)把安裝角度設(shè)在90°時(shí),與配件相配合不會發(fā)生運(yùn)動干涉,可以順利地完成一些指定的動作,如圖7-52所示。圖7-52機(jī)器人上肢組裝機(jī)器人的兩個下肢,每個下肢由4個舵機(jī)組成,具有4個自由度。安裝前還是將舵機(jī)初始的角度設(shè)定在90°,另外注意在安裝時(shí),大腿的內(nèi)側(cè)有配件固定如圖7-53所示。組裝機(jī)器人軀干,由4個舵機(jī)組成,具有4個自由度,控制胳膊前后旋轉(zhuǎn)和大腿左右擺動。安裝前還是將舵機(jī)初始的角度設(shè)定在90°,許多配件是由螺釘固定,為了美觀和拆卸方便,螺母均放在里面。在安裝時(shí),先從一面開始安裝,這樣有利于緊固螺釘。此處由于受到空間的限制,操作比較困難,那么在安裝時(shí)一定要注意每個螺釘必須緊固牢靠,防止松懈,如圖7-54所示。安裝機(jī)器人控制器和機(jī)器頭,此處安裝比較容易。先將上肢兩個舵機(jī)和機(jī)器頭舵機(jī)的數(shù)據(jù)線放在控制器板的下面,這樣有利于整體布置數(shù)據(jù)線。然后用3個螺釘將控制器固定在板件上。組裝成一個整體,分別將上 圖7-53機(jī)器人下肢肢和下肢與軀干連接在一起。注意在安裝時(shí),大腿是處于并攏狀態(tài),胳膊處于伸直狀態(tài),如圖7-55所示。圖7-54機(jī)器人軀干部圖7-55整體組裝圖按照以上步驟就會完成機(jī)器人機(jī)械機(jī)構(gòu)的組裝。在組裝前,首先要有整體的布局,然后再分步組裝。相信通過以上的圖片和文字,你一定會成功組裝成一個具有17個自由度的雙足步行機(jī)器人。實(shí)驗(yàn)(二)舵機(jī)初始位置的角度和姿態(tài)對調(diào)試動作的影響1)為了表現(xiàn)機(jī)器人擬人特性,當(dāng)通電以后要讓機(jī)器人處于立正狀態(tài)也稱作初始位置(Homeposition)。初始位置是機(jī)器人類似于人類,在重力的作用下,正處于能量最低的消耗狀態(tài)。在每個機(jī)器人組裝完畢后,首先調(diào)試出的就是初始位置狀態(tài)。圖7-56和圖7-57分別是機(jī)器人處于初始位置的正面和側(cè)面圖。1) 圖7-56機(jī)器人正面圖 圖7-57機(jī)器人側(cè)面圖舵機(jī)的初始角度是在安裝時(shí)各個舵機(jī)所處的角度。一般的情況下,我們都將舵機(jī)調(diào)節(jié)為90°,這樣便于安裝。安裝時(shí),大家可能有這樣的體會:不讓胳膊處于伸直狀態(tài),讓它處于垂下狀態(tài)和軀干上的舵機(jī)連接。如果這樣就會發(fā)現(xiàn),剛安裝的胳膊不能夠舉過頭部,需要重新安裝。因?yàn)閯偛虐惭b的兩個舵機(jī)發(fā)生了運(yùn)動干涉,各個舵機(jī)具有耦合關(guān)系,雖然兩個舵機(jī)均處于90°的狀態(tài),但是安裝以后兩個舵機(jī)的活動空間發(fā)生了變化。讀者可以按照舵機(jī)的不同初始角度值來組裝機(jī)器人,看看產(chǎn)生何種結(jié)果?機(jī)器人的初始姿態(tài)是指將各個舵機(jī)連接在一起時(shí)機(jī)器人所處的姿態(tài)。在將胳膊和大腿與軀干連接時(shí),舵機(jī)的初始角度都調(diào)到90°,但是沒有按照圖7-55的姿態(tài)安裝,可能就會產(chǎn)生某一個舵機(jī)活動干涉,不能夠完成類人動作。讀者可以按照不同的姿態(tài)安裝機(jī)器人看看產(chǎn)生何種結(jié)果。五、思考題1.說一說本實(shí)驗(yàn)17個自由度機(jī)器人的自由度分別用于控制哪個方向的?答:上肢有6個自由度,分別是肩部兩個自由度和肘部一個自由度。肩部兩個自由度分別控制胳膊前后旋轉(zhuǎn)和上下擺動,肘部一個自由度控制上下擺動。左右肢對稱共6個自由度。下肢共有10個自由度,分別是腳部兩個自由度、膝關(guān)節(jié)一個自由度、髖關(guān)節(jié)兩個自由度。腳部兩個自由度分別控制腳前后和左右的擺動,膝關(guān)節(jié)一個自由度控制小腿前后擺動,髖關(guān)節(jié)兩個自由度分別控制大腿前后和左右擺動。左右肢對稱,共10個自由度。3()頭部一個自由度控制頭部的左右旋轉(zhuǎn)。(2.說出Homeposition值和初始角度值的區(qū)別?答:Homeposition值是指當(dāng)機(jī)器人通電以后,要讓機(jī)器人處于立正狀態(tài)時(shí),17個舵機(jī)的角度值。它是在每個機(jī)器人組裝完畢后,首先調(diào)試出的,然后才能將機(jī)器人用于實(shí)踐操作。初始角度值是在組裝機(jī)器人時(shí),為了使17個舵機(jī)運(yùn)動不發(fā)生干涉而且具有良好操縱性,將17個舵機(jī)的角度值分別調(diào)到90°,就是初始角度值。它是在機(jī)器人組裝時(shí),各個舵機(jī)和連接件之間的相對角度。3.請說出舵機(jī)的初始角度為90°和機(jī)器人的初始姿態(tài)如圖7-55所示是不是安裝機(jī)器人唯一方法?為什么?答:舵機(jī)的初始角度為90°和機(jī)器人的初始姿態(tài)如圖7-55不是安裝機(jī)器人唯一方法。因?yàn)槎鏅C(jī)和連接件之間的相對角度可以是任意值,不一定是90°,但是為了容易看到兩者之間的角度,也就是垂直或平行關(guān)系,一般將舵機(jī)在安裝時(shí)調(diào)到90°。實(shí)驗(yàn)五簡單動作調(diào)試實(shí)驗(yàn)一、實(shí)驗(yàn)?zāi)康?)掌握雙足步行機(jī)器人上位機(jī)控制軟件的操作。1)2)熟悉雙足步行機(jī)器人上位機(jī)軟件如何控制舵機(jī)的轉(zhuǎn)動。3)學(xué)會機(jī)器人初始位置Homeposition的調(diào)試。3)4)學(xué)習(xí)使用上位機(jī)控制軟件,完成簡單動作———招手的調(diào)試,體會速度控制方式不同對動作的影響。實(shí)驗(yàn)設(shè)備PC一臺(裝有VC程序,雙足步行機(jī)器人上位機(jī)控制軟件)、無線收發(fā)裝置(包含無線收發(fā)盒、串口通信線和USB數(shù)據(jù)線)一套、類人雙足步行機(jī)器人一臺,7.4V充電電池一塊、電池充電設(shè)備(包含12V/1A穩(wěn)壓直流電源和平衡充電器)一套。實(shí)驗(yàn)原理與說明關(guān)于Homeposition的說明:Homeposition,是機(jī)器人良好站立、腿部各舵機(jī)受力均勻時(shí)的姿態(tài)名稱。每一個動作數(shù)據(jù)的開始和最后都是使用的這個姿態(tài)。機(jī)器人在安裝完畢之后,應(yīng)首先調(diào)試出Homeposition。圖7-58和圖7-59分別是機(jī)器人處于Homeposition的正面和側(cè)面圖。 圖7-58 Homeposition正面圖 圖7-59 Homeposition側(cè)面圖因?yàn)槊恳粋€動作數(shù)據(jù)的開始和最后都是使用Homeposition這個姿態(tài),它的調(diào)試至關(guān)重要,調(diào)試過程要遵循以下原則:,機(jī)器人良好直立、腿部各舵機(jī)受力均勻,如圖7-59所示肩關(guān)節(jié)、髖關(guān)節(jié)、膝關(guān)節(jié)、踝關(guān)節(jié)四個舵機(jī)側(cè)面的舵盤在同一個直線上,兩條腿調(diào)試結(jié)束后各對應(yīng)舵機(jī)在同一平面上。實(shí)驗(yàn)步驟的實(shí)驗(yàn)(一)中具體介紹如何調(diào)試Homeposition。實(shí)驗(yàn)前準(zhǔn)備檢查機(jī)器人電池電量是否充足,用萬用表測量電池放電接頭兩端電壓,若小于6V,則需要更換電池,并對原有電池充電。檢查機(jī)器人各舵機(jī)連線,確保完好無損,若發(fā)現(xiàn)有連線斷接,或者刮破外絕緣皮等現(xiàn)象,則要先進(jìn)行簡單處理,如重新接線、貼絕緣膠布等措施。檢查舵機(jī)連接件是否變形,若有變形,則需更換該部件。機(jī)器人檢查完好之后,確保一切正常才可開電,否則后果自負(fù)。如圖7-60和圖7-61所示連接無線收發(fā)裝置,它共有兩條連接線,一端按照圖示方式連接,另外一端分別接計(jì)算機(jī)的串口1和USB接口,連接好之后則指示燈亮,打開上位機(jī)軟件,界面如圖7-62所示,如圖7-63所示單擊菜單欄“設(shè)定串口參數(shù)”, 圖7-60無線發(fā)射裝置彈出如圖7-64所示界面,按照圖示進(jìn)行設(shè)置,單擊“OK”,退出軟件并重新啟動。啟動軟件后,用鼠標(biāo)拖動動作數(shù)據(jù)滑塊中的任意一個,則該裝置的指示燈將會如圖7-65所示不停閃爍,說明反應(yīng)連接無誤,運(yùn)行良好。否則,檢查連線并重新連接,直到正常為止。圖7-61無線發(fā)射裝置連接方法圖7-62上位機(jī)軟件界面圖7-63菜單欄示意圖 圖7-64串口設(shè)置對話框 圖7-65無線發(fā)射裝置正常運(yùn)行五、實(shí)驗(yàn)步驟實(shí)驗(yàn)(一)調(diào)試并存儲Homeposition如圖7-66所示將機(jī)器人背部面板上兩個小開關(guān)同時(shí)撥到圖示位置,使機(jī)器人處于無圖7-66機(jī)器人控制電路板線控制(或同時(shí)撥到相反位置并將主機(jī)的串口線接到電路板上采取有線方式調(diào)節(jié)),在此采用無線方式,打開機(jī)器人電源,控制板上三個指示燈均亮。清楚掌握各舵機(jī)轉(zhuǎn)動角度增大和減小時(shí)機(jī)器人的動作變化,來填寫表7-4,只有掌握這個表,才能自如地通過上位機(jī)控制軟件來調(diào)節(jié)機(jī)器人的動作。注意我們都以從背面來觀察機(jī)器人的角度來得到下面各個舵機(jī)在度數(shù)變化時(shí)的轉(zhuǎn)動方向。填寫之后通過上位機(jī)程序上的滾動條來驗(yàn)證結(jié)果。注意:在表7-4中的第1個與第5個舵機(jī)的欄中填入方向?yàn)椤扒昂蟆?,?、3、6、7個舵機(jī)的欄中填入方向?yàn)椤皟?nèi)外”,第4個與第8、13個舵機(jī)的欄中填入方向?yàn)椤白笥摇?,?、10、11、14、15、16個舵機(jī)的欄中填入的方向?yàn)椤扒昂蟆?,?2個與第17個舵機(jī)的欄中填入“順逆時(shí)針轉(zhuǎn)動”。請同學(xué)們認(rèn)真填寫,之后通過上位機(jī)程序上的滾動條來驗(yàn)證結(jié)果。表7-4各舵機(jī)度數(shù)變化的轉(zhuǎn)動方向(從背面看各舵機(jī)變化情況)舵機(jī)號1234567891011121314151617增大大臂后擺大臂向里小臂向里頭部左擺大臂前擺大臂向外小臂向外髖關(guān)節(jié)左擺髖關(guān)節(jié)前擺膝關(guān)節(jié)后擺踝關(guān)節(jié)后擺踝關(guān)節(jié)順時(shí)針轉(zhuǎn)髖關(guān)節(jié)左擺髖關(guān)節(jié)后擺膝關(guān)節(jié)前擺踝關(guān)節(jié)前擺踝關(guān)節(jié)順時(shí)針轉(zhuǎn)減小大臂前擺大臂向外小臂向外頭部右擺大臂后擺大臂向里小臂向里髖關(guān)節(jié)右擺髖關(guān)節(jié)后擺膝關(guān)節(jié)前擺踝關(guān)節(jié)前擺踝關(guān)節(jié)逆時(shí)針轉(zhuǎn)髖關(guān)節(jié)右擺髖關(guān)節(jié)前擺膝關(guān)節(jié)后擺踝關(guān)節(jié)后擺踝關(guān)節(jié)逆時(shí)針轉(zhuǎn)根據(jù)圖7-67的機(jī)器人舵機(jī)對應(yīng)圖,通過上位機(jī)控制軟件的滑塊來調(diào)節(jié)舵機(jī)的度數(shù)(圖7-67中機(jī)器人各舵機(jī)編號與圖7-68動作數(shù)據(jù)滑塊一一對應(yīng),例如1號對應(yīng)與CH1,依次類比下去),調(diào)試出機(jī)器人初始位置Homeposition。調(diào)試機(jī)器人初始位置的方法:①機(jī)器人電路板初次打開電源,各舵機(jī)處于保持狀態(tài),因此打開電源之前可先手動調(diào)整各舵機(jī)位置讓其有較大的活動范圍,避免上電之后調(diào)

溫馨提示

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

最新文檔

評論

0/150

提交評論