




版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
.z.基于STM32的機(jī)械臂驅(qū)動(dòng)系統(tǒng)設(shè)計(jì)摘要由于機(jī)械臂在各行各業(yè)中得到了愈來(lái)愈廣泛的應(yīng)用,機(jī)械臂控制的多樣化、復(fù)雜化的需要也隨之日趨增多。作為當(dāng)今科技領(lǐng)域研究的一個(gè)熱點(diǎn),提高機(jī)械臂的控制精度、穩(wěn)定性、操作靈活性對(duì)于提高其應(yīng)用水平有著十分重要的意義。本課題主要對(duì)四自由度機(jī)械臂控制系統(tǒng)進(jìn)展了研究與設(shè)計(jì)。作為運(yùn)動(dòng)控制系統(tǒng)的一種,該控制系統(tǒng)主要面向底層,力爭(zhēng)開(kāi)發(fā)出一套穩(wěn)定性高,可靠性強(qiáng)并且定位準(zhǔn)確的工業(yè)機(jī)械臂系統(tǒng)。首先根據(jù)機(jī)械臂系統(tǒng)的控制要求,整體上設(shè)計(jì)出單CPU的系統(tǒng)控制方案,即通過(guò)控制主控制器輸出的PWM波的占空比實(shí)現(xiàn)對(duì)舵機(jī)轉(zhuǎn)動(dòng)的控制,進(jìn)而實(shí)現(xiàn)各個(gè)關(guān)節(jié)的位置控制。在硬件方面,主要論述了如何以ARM微處理器STM32F103ZET6、MG995舵機(jī)、MG945舵機(jī)、超聲波傳感器和電源模塊為主要器件,通過(guò)搭建硬件平臺(tái)和設(shè)計(jì)軟件控制程序構(gòu)建關(guān)節(jié)運(yùn)動(dòng)控制系統(tǒng)。然后按照構(gòu)造化設(shè)計(jì)的思想,依次對(duì)以上各局部的原理和設(shè)計(jì)方法進(jìn)展了分析和探討,給出了實(shí)際的原理圖和電路圖。在軟件設(shè)計(jì)方面,按照模塊化的設(shè)計(jì)思想將控制程序分為初始化模塊和運(yùn)行模塊,并分別對(duì)各個(gè)模塊的程序進(jìn)展設(shè)計(jì)。實(shí)驗(yàn)說(shuō)明,該機(jī)械臂控制系統(tǒng)不僅具有很好的控制精度,還具有很好的穩(wěn)定性、準(zhǔn)確性,而且在很大程度上改善了定位精度。關(guān)鍵詞:四自由度機(jī)械臂,STM32,Corte*-M3,脈沖寬度調(diào)制theDesignofManipulatorDriveSystemBasedonSTM32Author:***Tutor:***AbstractInrecentyears,robotarmiswidelyusedinindustrycontrol,specialrobot,medicaldeviceandhomeservicerobots.Researchofrobotarmcontrolsystemisafocusinrobotarea.Itismeaningfultoincreasetheperformanceinaccuracy,stabilityandfeasibility.Thispaperistheresearchanddesignaboutacontrolsystembasedonafourdegreesfreedom’sdesign.And,westrivetodevelopahighstability,reliabilityandaccuratecontrolsystem.Firstly,accordingtothecontrolrequirementsoftheroboticsystem,theoveralldesignofthesystemcontrolprogramisbasedonasingleCPU.TurnthesteeringcontroltoachievethecontrolofthedutycycleofthePWMwaveoutputbythemaincontroller,soastorealizethepositioncontrolofeachjoint.Intermsofhardware,thepapermainlydiscusseshowtousetheARMmicroprocessorSTM32F103ZET6,MG995Servo,MG945servos,ultrasonicsensorsandpowersupplymoduleasthemaincomponents,buildajointmotioncontrolsystembybuildinghardwareplatformsandsoftwarecontrolprogram.Thenfollowthestructureddesignideas,principlesanddesignmethodssequentiallyovereachpartisanalyzedanddiscussed,andthengivetheactualschematicorcircuitdiagram.Insoftwaredesign,thecontrolprogramisdividedintotherunmodulesandtheinitializationmoduleanddesignprogramofeachmoduleseparately.Controlsysteme*perimentsshowthatthesystemcansignificantlyimprovetheprecisionofcontrol,andimprovesystemstability,accuracy,sothatthepositioningaccuracyoftherobotarmhasbeengreatlyimprovedandenhanced.KeyWords:FourDegreesFreedomRobot,STM32,Corte*-M3,PulseWidthModulation-.z.目錄TOC\h\z\t"章標(biāo)題,1,節(jié)標(biāo)題,2,條標(biāo)題,3,論文正文英文樣式,8,圖片樣式,8,圖片標(biāo)注樣式,8,附錄一級(jí)樣式,1,附錄二級(jí)樣式,2"1緒論1機(jī)械臂概述1機(jī)械臂研究的意義1國(guó)內(nèi)外機(jī)械臂的研究現(xiàn)狀及開(kāi)展趨勢(shì)1機(jī)械臂的分類2機(jī)械臂控制的研究?jī)?nèi)容4機(jī)械臂的驅(qū)動(dòng)方式4機(jī)械臂的機(jī)械構(gòu)造4機(jī)械臂的控制器4機(jī)械臂的控制算法5嵌入式系統(tǒng)簡(jiǎn)介5本文的主要工作62機(jī)械臂控制系統(tǒng)的總體方案設(shè)計(jì)7機(jī)械臂的機(jī)械構(gòu)造設(shè)計(jì)7臂部構(gòu)造設(shè)計(jì)原則7機(jī)械臂自由度確實(shí)定7工作對(duì)象簡(jiǎn)介7機(jī)械臂關(guān)節(jié)控制的總體方案8機(jī)械臂控制器類型確實(shí)定8機(jī)械臂控制系統(tǒng)構(gòu)造9關(guān)節(jié)控制系統(tǒng)的控制策略9本章小結(jié)93機(jī)械臂控制系統(tǒng)硬件設(shè)計(jì)11機(jī)械臂控制系統(tǒng)概述11微處理器選型11主控制模塊設(shè)計(jì)13電源電路13復(fù)位電路14時(shí)鐘電路153.3.4JTAG調(diào)試電路15驅(qū)動(dòng)模塊設(shè)計(jì)16電源模塊設(shè)計(jì)17傳感器模塊設(shè)計(jì)19本章小結(jié)194機(jī)械臂控制系統(tǒng)軟件設(shè)計(jì)20初始化模塊設(shè)計(jì)20系統(tǒng)時(shí)鐘控制204.1.2SysTick定時(shí)器224.1.3TIM定時(shí)器23通用輸入輸出接口GPIO24超聲波傳感器模塊24運(yùn)行模塊設(shè)計(jì)25本章小結(jié)265系統(tǒng)的整機(jī)調(diào)試27硬件調(diào)試27軟件調(diào)試28故障原因及解決方法31本章小結(jié)32結(jié)論33致34參考文獻(xiàn)35附錄37附錄A37附錄B46附錄C47-.z.1緒論早在幾千年前,人類就開(kāi)場(chǎng)了機(jī)器人的制造,以解決人類繁重的勞動(dòng)。例如,古希臘詩(shī)人荷馬在其長(zhǎng)篇敘事詩(shī)"伊利亞特"中,描述了"火和鍛冶之神〞赫菲斯托斯用黃金鍛造出一個(gè)侍女[1]。一直以來(lái),人們也一直致力于將這些美麗的神話變?yōu)楝F(xiàn)實(shí)。1958年世界上的第一臺(tái)機(jī)器人被創(chuàng)造以來(lái),與工業(yè)機(jī)器人相關(guān)的技術(shù)得到了迅猛的開(kāi)展,并且己經(jīng)愈來(lái)愈廣泛的應(yīng)用在機(jī)械、電子、汽車等行業(yè)[2]。如今,機(jī)器人技術(shù)已成為衡量一個(gè)國(guó)家科技水平的標(biāo)志之一[3]。作為近幾十年來(lái)開(kāi)展起來(lái)的一種自動(dòng)設(shè)備,機(jī)械臂可以通過(guò)編寫軟件程序來(lái)完成目標(biāo)任務(wù),它不僅具有人和機(jī)器各自的很多優(yōu)點(diǎn),而且特別具有人的智能性和適應(yīng)性。在作業(yè)過(guò)程中,機(jī)械臂控制的準(zhǔn)確性和對(duì)環(huán)境的適應(yīng)性,已經(jīng)使其在各個(gè)領(lǐng)域有著廣闊的開(kāi)展前景。高級(jí)類型的機(jī)械臂,可以執(zhí)行更復(fù)雜的操作[4]。將機(jī)器臂運(yùn)用于工業(yè)生產(chǎn)過(guò)程,除了可以提高生產(chǎn)率之外,還能夠減弱工人的勞動(dòng)強(qiáng)度,使生產(chǎn)過(guò)程實(shí)現(xiàn)自動(dòng)控制。因此機(jī)械臂在近幾年得到了愈來(lái)愈廣泛的應(yīng)用[5]。機(jī)器人的研究始于二戰(zhàn)后的美國(guó)。1958年第一臺(tái)數(shù)控工業(yè)機(jī)器人誕生后,機(jī)器人在工業(yè)上的應(yīng)用不斷增加,日本、德國(guó)等國(guó)家也相繼開(kāi)場(chǎng)機(jī)器人的研制。中國(guó)對(duì)現(xiàn)代機(jī)器人的研制始于上世紀(jì)70年代后期,80年代進(jìn)入到飛速開(kāi)展時(shí)期。尤其在國(guó)家成立了863方案后,機(jī)器人技術(shù)得到特別的重視,由此中國(guó)在機(jī)器人領(lǐng)域取得了飛速開(kāi)展,相繼研制出示教再現(xiàn)型的搬運(yùn)、焊接、噴漆、裝配等各種工業(yè)機(jī)器人,以及水下作業(yè)、軍事和特種機(jī)器人。機(jī)械臂開(kāi)展?fàn)顩r概括如下:第一代機(jī)械臂,即示教再現(xiàn)方式的機(jī)械臂。目前這種機(jī)械臂仍廣泛應(yīng)用于各種場(chǎng)合。這種工作方式只能按照事先設(shè)置的位置進(jìn)展重復(fù)的動(dòng)作,但是不能感知周圍環(huán)境,其應(yīng)用范圍因此受到一定的限制。這類機(jī)械臂主要工作于原料搬運(yùn)、噴漆、焊接等工作場(chǎng)合。第二代機(jī)械臂,即具有視覺(jué)、觸覺(jué)等外部感覺(jué)功能的機(jī)械臂。這類機(jī)械臂可以根據(jù)周圍環(huán)境的變化進(jìn)展自適應(yīng),故可以完成較為復(fù)雜的工作。圖1.1一汽"紅旗〞轎車機(jī)器人焊接生產(chǎn)線第三代機(jī)械臂,這類機(jī)械臂不僅具有第二代機(jī)械臂的感覺(jué)功能,而且還具有規(guī)劃和決策的功能。從而在環(huán)境發(fā)生變化時(shí)進(jìn)展自主的工作。但是目前這類機(jī)械臂依然處于研究階段,還需要一段時(shí)間才能得到實(shí)際應(yīng)用[6]。圖1.2演奏機(jī)器人從機(jī)械臂幾十年來(lái)的成長(zhǎng)進(jìn)程來(lái)看,高精度,多功能,集成化,系統(tǒng)化以及智能化是機(jī)械臂在以后多年中的開(kāi)展方向。機(jī)械臂一般從運(yùn)動(dòng)坐標(biāo)形式分為直角坐標(biāo)式機(jī)械臂、圓柱坐標(biāo)式機(jī)械臂、極坐標(biāo)式機(jī)械臂和多關(guān)節(jié)式機(jī)械臂。直角坐標(biāo)式機(jī)械臂:由三個(gè)線性關(guān)節(jié)來(lái)確定手爪的位置,通常還帶有附加的旋轉(zhuǎn)關(guān)節(jié)用來(lái)確定末端執(zhí)行器的姿勢(shì)。這類機(jī)械臂雖然控制位置精度高、簡(jiǎn)單,但構(gòu)造繁雜,占地面積大。圓柱坐標(biāo)式機(jī)械臂:由兩個(gè)滑動(dòng)關(guān)節(jié)以及一個(gè)旋轉(zhuǎn)關(guān)節(jié)來(lái)確定手爪的位置,也可以再附加一個(gè)旋轉(zhuǎn)關(guān)節(jié)來(lái)確定部件的位置。其位置精度僅次于直角坐標(biāo)式機(jī)械臂,控制簡(jiǎn)單,但構(gòu)造龐大,移動(dòng)軸的設(shè)計(jì)復(fù)雜。極坐標(biāo)式機(jī)械臂:它由一個(gè)滑動(dòng)關(guān)節(jié)以及兩個(gè)旋轉(zhuǎn)關(guān)節(jié)來(lái)確定手爪的位置,也可以附加一個(gè)旋轉(zhuǎn)關(guān)節(jié)來(lái)確定部件的姿勢(shì)。這類機(jī)械臂占地面積小,構(gòu)造緊湊,但有平衡問(wèn)題,位置誤差與臂長(zhǎng)有關(guān)。多關(guān)節(jié)式機(jī)械臂:其關(guān)節(jié)都是旋轉(zhuǎn)的,類似于人的手臂,是工業(yè)機(jī)械臂中最常見(jiàn)的構(gòu)型。該類機(jī)械臂構(gòu)造緊湊,占地面積小,工作空間大,但是位置精度較差,控制存在耦合,比擬復(fù)雜。圖1.3~1.6分別對(duì)應(yīng)以上四種機(jī)械臂。圖1.3直角坐標(biāo)式機(jī)械臂圖1.4圓柱坐標(biāo)式機(jī)械臂圖1.5極坐標(biāo)式機(jī)械臂圖1.6多關(guān)節(jié)式機(jī)械臂作為驅(qū)動(dòng)方式,通常采用液壓驅(qū)動(dòng)、氣壓驅(qū)動(dòng)和電機(jī)驅(qū)動(dòng)三種類型。液壓式:液壓驅(qū)動(dòng)機(jī)械臂通常由液動(dòng)機(jī)〔各種油缸、油馬達(dá)〕伺服閥、油泵、油箱等組成驅(qū)動(dòng)系統(tǒng),由驅(qū)動(dòng)機(jī)械臂的執(zhí)行機(jī)構(gòu)進(jìn)展工作[7]。氣壓式:其驅(qū)動(dòng)系統(tǒng)通常由氣缸、氣閥、氣罐和空壓機(jī)組成。電動(dòng)式:電力驅(qū)動(dòng)的機(jī)械臂是目前應(yīng)用最廣泛的一種類型。驅(qū)動(dòng)電機(jī)一般采用步進(jìn)電機(jī)、直流伺服電機(jī)或交流伺服電機(jī),其中交流伺服電機(jī)為目前主要的驅(qū)動(dòng)形式。由于電機(jī)速度高,通常還需要減速機(jī)構(gòu)[8]。傳統(tǒng)的機(jī)械臂系統(tǒng)由于占地面積較大,所以在小空間的環(huán)境下不適用。在一些特殊的環(huán)境下,我們需要一種占地面積小而且活動(dòng)靈敏的機(jī)械臂。要實(shí)現(xiàn)機(jī)械手臂的控制,首先要分析機(jī)械手臂的機(jī)械構(gòu)造,其中動(dòng)力源以及動(dòng)力傳遞方法應(yīng)被予以重視。現(xiàn)在,電力傳動(dòng)的機(jī)械臂得到了廣泛的應(yīng)用,在動(dòng)力傳動(dòng)方式上,有連桿式、齒輪式、繩索式等。以關(guān)節(jié)型為主流,80年代創(chuàng)造的適用于裝配作業(yè)的平面關(guān)節(jié)型機(jī)械臂約占總量的1/2[9]。鑒于汽車、建筑、橋梁等行業(yè)的需要,超大型機(jī)械臂應(yīng)運(yùn)而生。選擇一個(gè)性能較好的控制器對(duì)控制功能的實(shí)現(xiàn)來(lái)說(shuō)是十分必要的。工業(yè)控制技術(shù)、軟件和硬件技術(shù)的開(kāi)展,為機(jī)械臂控制器的選擇提供的充分的條件。可編程控制器〔PLC〕由于抗干擾能力強(qiáng),故障率較低,設(shè)備易于擴(kuò)展、維護(hù),開(kāi)發(fā)周期短等特點(diǎn),被廣泛應(yīng)用于工業(yè)場(chǎng)合[10]。但是其本錢很高。數(shù)字信號(hào)處理器〔DSP〕采用數(shù)據(jù)和程序別離的哈佛構(gòu)造和改良的哈佛構(gòu)造,執(zhí)行指令速度更快,它以處理能力強(qiáng)、內(nèi)置較大的存儲(chǔ)器、芯片功耗低及配置資源靈活等特點(diǎn)得到了廣泛的應(yīng)用[11]。但是其本錢較高,高頻干擾很大,功率消耗也很大。FPGA〔Field-ProgrammableGateArray〕靈活,設(shè)計(jì)周期短的特點(diǎn)使其特別適合用于小批量系統(tǒng),提高系統(tǒng)的可靠性和集成度[12]。但是FPGA的功耗非常大,而且跟硬件的的聯(lián)系非常大,使用起來(lái)很有難度[13]。與上述各種微處理器相比,STM32F103ZET6處理器是意法半導(dǎo)體公司STM32系列芯片的一種,STM32F103ZET6采用ARM最新的Corte*-M3內(nèi)核,具有低本錢、高集成度、低功耗等優(yōu)點(diǎn)[14]。ARM微處理器資源豐富,具有很好的通用性,在很多領(lǐng)域都得到了廣泛的應(yīng)用。應(yīng)用于機(jī)械臂系統(tǒng)控制方法多種多樣,包括傳統(tǒng)的PID控制,現(xiàn)代控制的軌跡控制、模糊控制、自適應(yīng)控制等。PID控制的實(shí)用性很強(qiáng)。只要三個(gè)參數(shù)配適宜當(dāng),便可實(shí)現(xiàn)速敏捷、平穩(wěn)準(zhǔn)確的控制。工業(yè)生產(chǎn)上的機(jī)械臂經(jīng)常采用示教再現(xiàn)的方式。模糊控制和自適應(yīng)控制精度高,是現(xiàn)代控制領(lǐng)域中應(yīng)用廣泛的控制方法,尤其表達(dá)在軍工領(lǐng)域和航天領(lǐng)域中。機(jī)械臂的研究?jī)?nèi)容除以上主要內(nèi)容外,智能化傳感器的應(yīng)用、機(jī)器人的編程語(yǔ)言以及網(wǎng)絡(luò)通訊等技術(shù)對(duì)于機(jī)器人系統(tǒng)也有非常重要的意義。在一般情況下,嵌入式系統(tǒng)是"執(zhí)行特殊功能并受內(nèi)部控制器控制的設(shè)備或系統(tǒng)〞,即"嵌入到對(duì)象體系內(nèi)的特定計(jì)算機(jī)系統(tǒng)〞。"嵌入性〞、"專用性〞與"計(jì)算機(jī)系統(tǒng)〞是嵌入式系統(tǒng)的三個(gè)根本要素。它主要負(fù)責(zé)信號(hào)的控制,體積小,可作為一個(gè)部件嵌入到所控制的裝置中。它提供用戶接口、有關(guān)管理信息的輸入輸出等,使設(shè)備及應(yīng)用系統(tǒng)有較高的智能和性價(jià)比。進(jìn)入微型計(jì)算機(jī)機(jī)時(shí)代后,科技人員開(kāi)場(chǎng)了嵌入式系統(tǒng)的研究,之后迅速進(jìn)入到獨(dú)立開(kāi)展的單片機(jī)時(shí)代,隨后又迅速進(jìn)入到電子技術(shù)領(lǐng)域中[15]。嵌入式技術(shù)的開(kāi)展不僅使機(jī)器人在微型化、智能化等方面具有更明顯的優(yōu)勢(shì),同時(shí)又使機(jī)器人的價(jià)格大幅降低,實(shí)現(xiàn)了機(jī)器人在更多領(lǐng)域廣泛的應(yīng)用。該設(shè)計(jì)主要負(fù)責(zé)四自由度機(jī)械臂控制系統(tǒng)相應(yīng)的軟件、硬件的設(shè)計(jì)與開(kāi)發(fā)。該設(shè)計(jì)以四自由度機(jī)械臂為控制根底,以STM32F103ZET6為主控芯片,設(shè)計(jì)的機(jī)械臂控制系統(tǒng),控制精度較高,穩(wěn)定性較強(qiáng),具體的內(nèi)容包括如下幾個(gè)方面:1.對(duì)機(jī)械臂系統(tǒng)的硬件設(shè)計(jì)進(jìn)展分析,具體的電路以及芯片的選擇進(jìn)展了較為詳細(xì)的介紹,并對(duì)其可靠性進(jìn)展了深入的分析。2.對(duì)舵機(jī)的控制理論進(jìn)展了深入的研究,分析討論了控制系統(tǒng)所涉及的主控芯片。3.根據(jù)四自由度機(jī)械臂需要完成的工作任務(wù),編寫了系統(tǒng)的軟件控制程序,對(duì)初始化、運(yùn)行等模塊展開(kāi)了較為詳細(xì)的介紹,之后對(duì)整個(gè)系統(tǒng)進(jìn)展了反復(fù)的調(diào)試,調(diào)試結(jié)果說(shuō)明,所設(shè)計(jì)的機(jī)械臂控制系統(tǒng)可以實(shí)現(xiàn)較為準(zhǔn)確的控制。2機(jī)械臂控制系統(tǒng)的總體方案設(shè)計(jì)作為機(jī)械臂的一個(gè)重要組成局部,手臂不僅起到支撐被抓物體、手爪和其他關(guān)節(jié)的作用,而且還可以驅(qū)動(dòng)手爪抓取物體,并根據(jù)事先預(yù)定的位置將物體搬運(yùn)到指定地點(diǎn)[16]。機(jī)械臂的構(gòu)造形式必須基于其運(yùn)動(dòng)形式、動(dòng)作自由度、抓取質(zhì)量、受力情況和其他的因素來(lái)確定,整個(gè)系統(tǒng)的總質(zhì)量比擬大,受力也比擬復(fù)雜,其運(yùn)動(dòng)部件的質(zhì)量直接影響到機(jī)械臂的剛度和強(qiáng)度。所以,進(jìn)展手臂的設(shè)計(jì)時(shí),一般應(yīng)注意下述要求:〔1〕剛度要大。為了防止機(jī)械臂在運(yùn)動(dòng)過(guò)程中發(fā)生較大的形變,要合理選擇手臂的截面形狀。〔2〕導(dǎo)向性要好。為了防止機(jī)械臂在運(yùn)動(dòng)過(guò)程中發(fā)生不必要的相對(duì)運(yùn)動(dòng),臂桿最好設(shè)計(jì)成方形或是花鍵等形式?!?〕偏重力矩要小。要盡可能減小機(jī)械臂運(yùn)動(dòng)局部的質(zhì)量。該設(shè)計(jì)根據(jù)機(jī)械臂的功能及搬運(yùn)工作的任務(wù)的特點(diǎn)以及類型,為了使其在一定程度上具有操作的靈活性和運(yùn)行性能的良好,經(jīng)過(guò)屢次的比擬、討論后,該設(shè)計(jì)選用多關(guān)節(jié)型的機(jī)械臂,它不僅具有動(dòng)作的角度大的優(yōu)點(diǎn),還可以使機(jī)械臂在更大的空間內(nèi)的運(yùn)動(dòng)。機(jī)械臂的自由度是一個(gè)非常重要的參數(shù),取決于機(jī)械臂的類型及其構(gòu)造,并且在很大程度上直接決定到機(jī)械臂能否完成預(yù)定的任務(wù)。一般來(lái)說(shuō)是根據(jù)機(jī)械臂的用途來(lái)設(shè)計(jì)機(jī)械臂的自由度。自由度越多的機(jī)械臂,具有更大的運(yùn)動(dòng)的靈活性,通用性也越強(qiáng),但構(gòu)造較復(fù)雜,難以實(shí)現(xiàn)。所設(shè)計(jì)的搬運(yùn)機(jī)械臂采用四個(gè)自由度就可以完成設(shè)定的搬運(yùn)任務(wù)。其中機(jī)械臂的手臂的旋轉(zhuǎn)關(guān)節(jié)包括腰關(guān)節(jié)、肩關(guān)節(jié)、肘關(guān)節(jié)和腕關(guān)節(jié)四個(gè)關(guān)節(jié)以及末端手爪的開(kāi)合。在工業(yè)現(xiàn)場(chǎng)采用機(jī)械臂進(jìn)展的工作對(duì)象中袋裝物品和箱裝物品較為是常見(jiàn)的。在一般的情況下,箱裝物品由于具有規(guī)則的外形,多使用吸附式的手爪;而袋裝物品由于具有極易產(chǎn)生形變的特點(diǎn),多使用夾鉗式或者插板式的手爪。在該設(shè)計(jì)中,由于受機(jī)械臂硬件條件的限制,選擇夾鉗式的手爪搬運(yùn)箱裝物品。模擬的箱裝物品的長(zhǎng)、寬、高分別是55mm、36mm和30mm。在進(jìn)展工作對(duì)象的選擇過(guò)程中,共有3種型號(hào)可供選擇。其中長(zhǎng)、寬、高分別是40mm、36mm、和30mm的工作對(duì)象由于超聲波傳感器的反射面較小,所以當(dāng)其已經(jīng)運(yùn)動(dòng)到指定搬運(yùn)位置時(shí),傳感器不能準(zhǔn)確的檢測(cè)到物體,所以控制精度不夠高,放棄采用。而長(zhǎng)、寬、高分別是65mm、36mm和30mm的工作對(duì)象對(duì)于該手爪來(lái)說(shuō)尺寸較大,在抓取和搬運(yùn)的過(guò)程中經(jīng)常出現(xiàn)掉落的現(xiàn)象,所以沒(méi)有采用。作為機(jī)械臂的心臟,機(jī)械臂控制器是根據(jù)程序指令和從傳感器獲得的傳感信息來(lái)控制機(jī)械臂完成事先預(yù)定的動(dòng)作或任務(wù)的裝置,控制器的性能決定了機(jī)械臂控制性能的好壞。從計(jì)算機(jī)構(gòu)造、控制方式方面來(lái)劃分,機(jī)械臂控制器大約可分為3種:?jiǎn)蜟PU集中控制方式、多CPU分布式控制方式、二級(jí)CPU主從式控制方式?!?〕單CPU集中控制方式:?jiǎn)蜟PU集中控制系統(tǒng)必須是一個(gè)強(qiáng)大的控制系統(tǒng),它的全部控制功能是用一臺(tái)功能強(qiáng)大的計(jì)算機(jī)實(shí)現(xiàn)的。Hero-Ⅰ、Robot-Ⅰ等這些時(shí)代較早的機(jī)器人采用的就是這種單CPU集中控制方式的構(gòu)造,但由于在控制的過(guò)程中需要進(jìn)展大量的計(jì)算,因此這種控制方式的控制速度一般比擬慢?!?〕多CPU分布式控制方式:多CPU分布式控制系統(tǒng)的最大特點(diǎn)就是一個(gè)CPU負(fù)責(zé)控制一個(gè)關(guān)節(jié)軸,同時(shí)在上位機(jī)與單軸控制的CPU之間設(shè)計(jì)了一個(gè)并行接口,其主要負(fù)責(zé)上、下位機(jī)的通信,從而保證了數(shù)據(jù)的可靠傳輸?!?〕二級(jí)主從式控制方式:該控制方式需要主從兩個(gè)CPU,即上位機(jī)和下位的單片機(jī)兩層構(gòu)造。上位機(jī)負(fù)責(zé)運(yùn)動(dòng)軌跡的規(guī)劃、運(yùn)動(dòng)學(xué)計(jì)算等任務(wù),根據(jù)預(yù)定的位置,計(jì)算出各個(gè)關(guān)節(jié)的運(yùn)動(dòng)量,以指令形式傳送給下位的微處理器。下位的微處理器根據(jù)指令對(duì)各關(guān)節(jié)進(jìn)展運(yùn)動(dòng)控制。本課題所設(shè)計(jì)的機(jī)械臂系統(tǒng)基于STM32微處理器,利用STM32強(qiáng)大的運(yùn)算和處理能力,采用單CPU集中控制方式即可滿足要求。本課題研究的機(jī)械臂控制系統(tǒng)采用單CPU集中控制方式,系統(tǒng)框圖如下:計(jì)算機(jī)J-Link仿真器計(jì)算機(jī)J-Link仿真器舵機(jī)關(guān)節(jié)執(zhí)行機(jī)構(gòu)STM32關(guān)節(jié)控制系統(tǒng)圖2.1機(jī)械臂控制系統(tǒng)構(gòu)造圖計(jì)算機(jī)用于完成整個(gè)系統(tǒng)的管理、發(fā)送指令、運(yùn)動(dòng)軌跡規(guī)劃等。計(jì)算機(jī)通過(guò)J-Link仿真器將程序下載至STM32微處理器,向關(guān)節(jié)控制系統(tǒng)發(fā)出位置指令,STM32根據(jù)指令輸出PWM波,從而使機(jī)械臂的各個(gè)關(guān)節(jié)轉(zhuǎn)過(guò)指定的角度,進(jìn)而使其按照預(yù)定的軌跡完成搬運(yùn)任務(wù)。本課題設(shè)計(jì)的機(jī)械臂關(guān)節(jié)控制系統(tǒng)以STM32微處理器為核心,對(duì)直流伺服電機(jī)〔舵機(jī)〕進(jìn)展較為準(zhǔn)確的運(yùn)動(dòng)控制。關(guān)節(jié)控制系統(tǒng)的工作原理是:STM32微處理器內(nèi)部的PWM單元產(chǎn)生PWM信號(hào),驅(qū)動(dòng)直流伺服電機(jī)旋轉(zhuǎn)。電機(jī)驅(qū)動(dòng)舵機(jī)內(nèi)部的齒輪組,其輸出端帶動(dòng)一個(gè)線性的比例電位器作為位置檢測(cè),該電位器把轉(zhuǎn)角坐標(biāo)轉(zhuǎn)換為一比例電壓反響給控制線路板,控制線路板將其與輸入的控制脈沖信號(hào)比擬,產(chǎn)生糾正脈沖,并驅(qū)動(dòng)電機(jī)正向或者反向的轉(zhuǎn)動(dòng),使齒輪組的輸出位置與期望值相符,令糾正脈沖最終趨于為0,從而到達(dá)使伺服電機(jī)的準(zhǔn)確定位[17]。該關(guān)節(jié)控制系統(tǒng)的主要特點(diǎn)如下:〔1〕使用以Conte*-M3為內(nèi)核的STM32F103ZET6作為系統(tǒng)的微控制器,與傳統(tǒng)的51單片機(jī)相比起來(lái),具有功耗小,運(yùn)算能力大大增強(qiáng)的優(yōu)點(diǎn)?!?〕采用直流伺服電機(jī)驅(qū)動(dòng)機(jī)械臂的各個(gè)關(guān)節(jié),根據(jù)STM32微控制器輸出的PWM控制信號(hào)的占空比來(lái)確定直流電動(dòng)機(jī)的轉(zhuǎn)速和轉(zhuǎn)向,控制起來(lái)簡(jiǎn)單,準(zhǔn)確。本章介紹了4自由度機(jī)械臂的構(gòu)造形式,根據(jù)腰關(guān)節(jié)、肩關(guān)節(jié)、肘關(guān)節(jié)和腕關(guān)節(jié)4個(gè)旋轉(zhuǎn)關(guān)節(jié)的運(yùn)動(dòng)特點(diǎn),從整體上確定了該機(jī)械臂控制系統(tǒng)的控制方案。首先確定了該關(guān)節(jié)控制系統(tǒng)采用單CPU集中控制方式,然后說(shuō)明了關(guān)節(jié)控制系統(tǒng)的工作原理,最后介紹了本設(shè)計(jì)的關(guān)節(jié)控制系統(tǒng)的一些主要特點(diǎn)。3機(jī)械臂控制系統(tǒng)硬件設(shè)計(jì)機(jī)械臂控制系統(tǒng)通常要滿足如下幾個(gè)根本的要求:〔1〕控制系統(tǒng)的微型化、輕型化和模塊化。因?yàn)闄C(jī)械臂的控制系統(tǒng)是安裝在機(jī)械臂上的,所以為了安裝的方便和減輕機(jī)械臂的負(fù)載,控制系統(tǒng)應(yīng)盡可能實(shí)現(xiàn)微型化和輕型化;另外,為了到達(dá)系統(tǒng)的各單元之間有要求的獨(dú)立性的目的,要盡量實(shí)現(xiàn)模塊化?!?〕控制系統(tǒng)的實(shí)時(shí)性。為了滿足機(jī)械臂的輸入輸出信息量大,并且計(jì)算量大,同時(shí)要保證較高的控制精度的要求,機(jī)械臂控制系統(tǒng)必須具有較好的實(shí)時(shí)性?!?〕系統(tǒng)的穩(wěn)定性和開(kāi)放性。穩(wěn)定是保證系統(tǒng)正常運(yùn)行的前提和保證,所以機(jī)械臂控制系統(tǒng)必須具有一定的穩(wěn)定性以保證系統(tǒng)的低故障率。此外,為了實(shí)現(xiàn)控制系統(tǒng)以后的改良和可以方便的移植到其他的位置,這就要求控制系統(tǒng)具有好的開(kāi)放性[18]。該機(jī)械臂控制系統(tǒng)由主控制模塊、電機(jī)驅(qū)動(dòng)模塊和電源模塊組成,每個(gè)子模塊的功能如下:主控制模塊:作為該控制系統(tǒng)的核心,包括ARMCorte*-M3內(nèi)核和有關(guān)外圍電路,主要負(fù)責(zé)完成PWM波〔控制信號(hào)〕的輸出。驅(qū)動(dòng)模塊:負(fù)責(zé)機(jī)械臂各個(gè)關(guān)節(jié)的驅(qū)動(dòng),由舵機(jī)組成。電源模塊:機(jī)械臂控制系統(tǒng)采用雙電源供電模式,STM32單片機(jī)經(jīng)過(guò)經(jīng)LM2596DC-DC可調(diào)降壓模塊實(shí)現(xiàn)供電。微控制器作為機(jī)械臂運(yùn)動(dòng)控制系統(tǒng)的核心,其性能對(duì)控制效果起著至關(guān)重要的作用,因此高性能的CPU是必需的。微控制器的選擇對(duì)機(jī)械臂系統(tǒng)的設(shè)計(jì)影響很大,所以要在具體分析了該控制系統(tǒng)的特點(diǎn)和要求后選擇適宜的微控制器,應(yīng)基于整個(gè)系統(tǒng)的控制速度及其智能水平兩個(gè)方面,以如下幾個(gè)方面為重點(diǎn)進(jìn)展微控制器的選擇:·系統(tǒng)時(shí)鐘速度·運(yùn)算速度·功能·電機(jī)控制方式·ROM及ROM的大小·控制板的構(gòu)造尺寸目前,應(yīng)用于機(jī)械臂的微控制器有很多種,最廣泛的有8/16位單片機(jī)和數(shù)字信號(hào)處理器兩種。選擇8/16位單片機(jī)進(jìn)展控制系統(tǒng)的設(shè)計(jì)簡(jiǎn)單,開(kāi)發(fā)周期較短,但數(shù)據(jù)處理能力弱,需要附加很多的外部設(shè)備如PID調(diào)節(jié)器和PWM發(fā)生器等才能完成較為復(fù)雜的控制,而且系統(tǒng)的穩(wěn)定性不強(qiáng),開(kāi)發(fā)板尺寸較大。相比于8/16位單片機(jī),數(shù)字信號(hào)處理器具有處理能力強(qiáng)、速度快、開(kāi)發(fā)板體積小等特點(diǎn),但在中斷處理、位處理方面,DSP不如單片機(jī)的資料多,而且芯片的價(jià)格以及其相應(yīng)的開(kāi)發(fā)軟件也比擬貴,針對(duì)性性比擬強(qiáng),但是通用性一般比擬差。具有同等性能的ARM微處理器與DSP相比,資源更加的豐富,通用性明顯增強(qiáng),它所具有的處理速度快、性價(jià)比高、功耗低等優(yōu)點(diǎn)使其得到了廣泛的應(yīng)用。雖然作為32位的微處理器,但是由于ARM內(nèi)部具有16位的Thumb指令集,這使其能夠作為16位的單片機(jī)使用,卻擁有了32位單片機(jī)的處理速度。所以,用單片機(jī)和DSP實(shí)現(xiàn)的系統(tǒng),ARM都可以實(shí)現(xiàn)。在上述分析的根底上,經(jīng)過(guò)反復(fù)比擬,本設(shè)計(jì)采用意法半導(dǎo)體公司的STM32處理器,如圖3.1所示。STM32F103ZET6是基于32位ARMCorte*-M3內(nèi)核的微處理器,不但支持實(shí)時(shí)仿真,而且嵌入了512KB的高速閃存。CPU的最高工作頻率為72MHz,支持Thumb-2。圖3.1STM32STM32的主要特性如下[19~22]:·內(nèi)核為ARM32位的Corte*-M3CPU:·存儲(chǔ)器:512KB的閃存程序存儲(chǔ)器;64KB的SRAM;帶4個(gè)片選的靜態(tài)存儲(chǔ)器控制器。支持CF卡、SRAM、PSRAM、NOR和NAND存儲(chǔ)器?!r(shí)鐘、復(fù)位和電源管理:·低功耗:·3個(gè)12位的模/數(shù)轉(zhuǎn)換器:3倍采樣和保持功能;溫度傳感器。·2通道12位D/A轉(zhuǎn)換器?!?2通道DMA控制器:·調(diào)試模式:串行單線調(diào)試和JTAG接口;Cotte*-M3內(nèi)嵌跟蹤模塊。·112個(gè)快速I/O端口。·11個(gè)定時(shí)器。·13個(gè)通信接口。·CRC計(jì)算單元,96位的芯片唯一代碼。該設(shè)計(jì)的主控制模塊的硬件系統(tǒng)包括電源電路、復(fù)位電路、系統(tǒng)時(shí)鐘電路以及JTAG調(diào)試電路四大組成局部。在硬件電路的設(shè)計(jì)中,電源模塊的設(shè)計(jì)是非常重要的,如果不能妥善處理,不但會(huì)使電路不能正常工作,嚴(yán)重的還可能燒毀電路。因此,在設(shè)計(jì)電源時(shí)務(wù)必要注意如下幾點(diǎn):〔1〕交流輸入和直流輸出盡可能保持更大的距離;〔2〕地線要足夠粗,單點(diǎn)和多點(diǎn)相結(jié)合,同時(shí)別離模擬地和數(shù)字地;〔3〕散熱要好,布局應(yīng)適宜;圖3.2電源電路圖STM32開(kāi)發(fā)板支持的供電方式主要有3種,分別是:·USB接口供電,最大為500mA·外部直流5V供電·JLINKV8電源,包括兩種方式5V和3.3V如上圖所示,當(dāng)電源開(kāi)關(guān)撥到下面時(shí),開(kāi)發(fā)板由外部接口供電。板上的電源轉(zhuǎn)換芯片將USB接口輸入的5V電源轉(zhuǎn)換成3.3V的電源,給處理器和相關(guān)外圍電路供電。當(dāng)電源開(kāi)關(guān)撥到上面時(shí),開(kāi)發(fā)板由USB接口供電。板上的電源轉(zhuǎn)換芯片將USB接口輸入的5V電源轉(zhuǎn)換成3.3V的電源,給處理器和相關(guān)外圍電路供電。圖3.3復(fù)位電路圖如上圖所示,B1為整個(gè)板的復(fù)位按鈕,當(dāng)按鈕被按下時(shí),STM32處理器、液晶、以太網(wǎng)和音頻解碼芯片等都將復(fù)位。STM32的VBAT的供電是由CR1220紐扣電池以及外部電源混合完成的,在有外部電源〔VCC3.3〕的情況下,CR1220紐扣電池不給VBAT供電而由外部電源實(shí)現(xiàn)供電。但是,當(dāng)外部電源斷開(kāi)的情況下,CR1220紐扣電池負(fù)責(zé)給VBAT供電。這樣,VBAT總是有電的,以保證RTC的走時(shí)以及后備存放器的內(nèi)容不喪失。相關(guān)電路如下:圖3.4時(shí)鐘電路圖3.3.4JTAG調(diào)試電路軟件程序的編寫通常是需要屢次的修改才適用的,因此一些比擬先進(jìn)的調(diào)試手段便應(yīng)運(yùn)而生。JTAG仿真調(diào)試手段作為其中的一種,是由ARM公司提出的。如下列圖所示:圖3.5JTAG調(diào)試電路圖通過(guò)JTAG接口,我們可以燒錄和調(diào)試程序,開(kāi)發(fā)板的JTAG接口的硬件連接如上圖所示,可以與目前主流的JLINKV8仿真器配合使用。該機(jī)械臂控制系統(tǒng)包括四個(gè)旋轉(zhuǎn)的腰關(guān)節(jié)、肩關(guān)節(jié)、肘關(guān)節(jié)和腕關(guān)節(jié),以及末端手爪的運(yùn)動(dòng),相應(yīng)的要五個(gè)動(dòng)力源才能完成目標(biāo)作業(yè)。如第一章所述,廣泛使用的驅(qū)動(dòng)方式主要包括液壓驅(qū)動(dòng)、氣壓驅(qū)動(dòng)和電機(jī)驅(qū)動(dòng)。三者各有自己的優(yōu)點(diǎn)和缺點(diǎn),通常對(duì)機(jī)械臂的驅(qū)動(dòng)系統(tǒng)的要求有:〔1〕驅(qū)動(dòng)系統(tǒng)的質(zhì)量不應(yīng)太重,效率也應(yīng)較高;〔2〕響應(yīng)速度快;〔3〕動(dòng)作靈活,位移偏差以及速度偏差均較?。弧?〕平安可靠;〔5〕操作和維護(hù)方便;〔6〕經(jīng)濟(jì)合理,占地面積要盡可能的小?;谏鲜鲵?qū)動(dòng)系統(tǒng)的特點(diǎn)和該機(jī)械臂驅(qū)動(dòng)系統(tǒng)的設(shè)計(jì)要求,該設(shè)計(jì)選用直流伺服電機(jī)負(fù)責(zé)機(jī)械臂各個(gè)關(guān)節(jié)的驅(qū)動(dòng)。該設(shè)計(jì)選用的舵機(jī)型號(hào)為分別MG995、MG945,如圖3.2、3.3,其參數(shù)如下:MG995:〔1〕尺寸:40mm×20mm×36.5mm〔2〕重量:62g〔3〕技術(shù)參數(shù):無(wú)負(fù)載速度0.17秒/60度(4.8V)、0.13秒/60度(6.0V)〔4〕扭矩:13KG〔5〕使用溫度:-30~~+60攝氏度圖3.6MG995舵機(jī)MG945:〔1〕尺寸:40mm×20mm×36.5mm〔2〕重量:70g〔3〕技術(shù)參數(shù):無(wú)負(fù)載速度0.23秒/60度(4.8V)、0.20秒/60度(6.0V)〔4〕扭矩:13KG〔5〕使用溫度:-30~~+60攝氏度圖3.7MG945舵機(jī)一般來(lái)說(shuō),舵機(jī)是由舵盤、減速齒輪組、位置反響電位計(jì)、直流電機(jī)、控制電路板等幾個(gè)重要局部組成的。信號(hào)線把來(lái)自于微控制器的控制信號(hào)傳輸?shù)蕉鏅C(jī)的控制電路板,控制電路板根據(jù)相應(yīng)的控制信號(hào)控制電機(jī)的轉(zhuǎn)動(dòng),同時(shí)電機(jī)帶動(dòng)齒輪組隨之轉(zhuǎn)動(dòng),經(jīng)減速機(jī)構(gòu)減速后傳動(dòng)到輸出舵盤。由于舵機(jī)的輸出軸和位置反響電位計(jì)是連接在一起的,所以在舵盤轉(zhuǎn)動(dòng)的時(shí)候會(huì)帶動(dòng)位置反響電位計(jì),電位計(jì)根據(jù)當(dāng)前位置將一個(gè)電壓信號(hào)反響到控制電路板,然后控制電路板根據(jù)電位計(jì)反響回來(lái)的數(shù)據(jù)決定電機(jī)后續(xù)的轉(zhuǎn)動(dòng)方向和速度,從而使舵機(jī)運(yùn)動(dòng)到指定的位置后停頓運(yùn)動(dòng),可以實(shí)現(xiàn)對(duì)位置的準(zhǔn)確控制。經(jīng)LM2596DC-DC可調(diào)降壓模塊實(shí)現(xiàn)供電。AMS1117是正向低壓降的穩(wěn)壓器,在1A電流下產(chǎn)生1.2V的壓降。它的內(nèi)部所集成有過(guò)熱保護(hù)和限流電路,因此是電池供電和便攜式計(jì)算機(jī)的最正確選擇。其特點(diǎn)是:固定的3.3V輸出電壓,具有1%的精度;低漏失電壓;限流功能;過(guò)熱切斷;溫度范圍-40°C~125°C。經(jīng)常被應(yīng)用于筆記本電腦,掌上電腦,電池充電器,手機(jī),電池供電系統(tǒng),便攜式設(shè)備等。。LM2596開(kāi)關(guān)電壓調(diào)節(jié)器是降壓型電源管理單片集成電路,可以輸出最高達(dá)3A的驅(qū)動(dòng)電流,同時(shí)也有良好的線性和負(fù)載調(diào)節(jié)特性??烧{(diào)型的LM2596甚至可以輸出低于37V的各種電壓。LM2596的特性如下:輸出電壓可調(diào),可調(diào)范圍為1.2V~37V,誤差范圍4%;輸出特性有良好的線性,并且負(fù)載可以調(diào)節(jié);驅(qū)動(dòng)能力較強(qiáng),輸出電流可高達(dá)3A,輸入電壓可高達(dá)40V;采用150kHz的內(nèi)部振蕩頻率,屬于第二代開(kāi)關(guān)電壓調(diào)節(jié)器;功耗小、效率高,具有過(guò)熱保護(hù)和限流保護(hù)功能等。常用于高效率降壓調(diào)節(jié)器,單片開(kāi)關(guān)電壓調(diào)節(jié)器,正、負(fù)電壓轉(zhuǎn)換器等。由LM2596構(gòu)成的5V穩(wěn)壓電路如圖3.9所示。圖3.95V穩(wěn)壓電路本設(shè)計(jì)采用HC-SR04超聲波測(cè)距模塊,檢測(cè)物體距離超聲波傳感器的距離。當(dāng)物體到達(dá)指定位置時(shí),控制器發(fā)出指令,使機(jī)械臂完成動(dòng)作。HC-SR04超聲波測(cè)距模塊由超聲波發(fā)射器、超聲波接收器與控制電路等三局部組成。它的根本工作原理如下:首先,采用TRIG端口觸發(fā)測(cè)距信號(hào),產(chǎn)生至少10μs的高電平信號(hào);然后,超聲波發(fā)射器自動(dòng)發(fā)送8個(gè)40KHz的方波信號(hào),接收器檢測(cè)是否有反射的信號(hào)返回;如果有信號(hào)返回,超聲波模塊通過(guò)ECHO端口輸出一個(gè)高電平,高電平的持續(xù)時(shí)間就是超聲波從發(fā)射到返回的時(shí)間。其時(shí)序圖如下。圖3.10超聲波時(shí)序圖本章首先對(duì)機(jī)械臂的關(guān)節(jié)控制系統(tǒng)的硬件組成進(jìn)展了說(shuō)明,然后按照模塊化的設(shè)計(jì)思想,分別對(duì)以ARM微處理器STM32F103ZET6為核心的主控制模塊、由直流伺服電機(jī)組成的驅(qū)動(dòng)模塊和采用7.2V可充電電池、AMS1117-3.3V穩(wěn)壓芯片和LM2596DC-DC可調(diào)降壓模塊組成的電源模塊和超聲波傳感器模塊的工作原理和設(shè)計(jì)進(jìn)展了仔細(xì)的分析和討論,并給出了相應(yīng)模塊的實(shí)際的電路圖或原理圖。4機(jī)械臂控制系統(tǒng)軟件設(shè)計(jì)如果將硬件比作是機(jī)械臂控制系統(tǒng)的身體,則就可以把軟件比作是是整個(gè)控制系統(tǒng)的大腦,將連接人的思維與系統(tǒng)硬件連接在一起。軟件系統(tǒng)的優(yōu)劣關(guān)系到整個(gè)機(jī)械手系統(tǒng)的正常運(yùn)行、硬件功能的發(fā)揮以及控制性能的優(yōu)劣等[23]。因此,在進(jìn)展軟件程序的設(shè)計(jì)之前,必須要先了解整個(gè)機(jī)械臂控制系統(tǒng)的根本要求,主要有以下三點(diǎn)要求:〔1〕實(shí)時(shí)性:電機(jī)控制一般都是實(shí)時(shí)控制,則,軟件就必須是實(shí)時(shí)控制軟件。實(shí)時(shí)意味著計(jì)算機(jī)必須在一定的期限內(nèi),完成一系列的處理過(guò)程?!?〕可靠性:可靠性是指在運(yùn)行過(guò)程中,系統(tǒng)防止故障發(fā)生,以及故障發(fā)生后排除解決故障的能力。因此,為了提高軟件的可靠性,在軟件設(shè)計(jì)過(guò)程中必須充分考慮電機(jī)在運(yùn)行中出現(xiàn)的不正?,F(xiàn)象。〔3〕維護(hù)方便:好的控制軟件不是一次設(shè)計(jì)、調(diào)試就可以應(yīng)用的,往往是一邊設(shè)計(jì)一邊調(diào)試,經(jīng)過(guò)屢次修改才能到達(dá)控制要求。所以在開(kāi)場(chǎng)整體設(shè)計(jì)時(shí),就必須有好的構(gòu)造,以提高軟件調(diào)試的效率,并保證完成的軟件具有構(gòu)造簡(jiǎn)單、清晰的優(yōu)點(diǎn)。為了能夠使系統(tǒng)調(diào)試更加順利以及功能擴(kuò)展更加方便,該機(jī)械臂控制系統(tǒng)的軟件采用模塊化構(gòu)造設(shè)計(jì),包括系統(tǒng)時(shí)鐘與Systick定時(shí)器模塊,串口通訊模塊,PWM〔TIM2〕波輸出模塊,超聲波傳感器模塊和計(jì)數(shù)〔TIM4,NVIC〕模塊。主程序分為初始化和運(yùn)行兩個(gè)模塊,在程序上電后初始化模塊運(yùn)行一次,運(yùn)行模塊主要用于電機(jī)的控制。初始化模塊主要負(fù)責(zé)完成如下工作:系統(tǒng)時(shí)鐘控制存放器RCC的配置,SysTick定時(shí)器,TIM定時(shí)器,通用輸入輸出接口GPIO,嵌套向量中斷控制器NVIC,PWM波輸出,超聲波傳感器模塊的初始化。采用庫(kù)函數(shù)進(jìn)展編程。STM32CPU的時(shí)鐘源可以來(lái)自內(nèi)部高速振蕩器〔HSI〕、外部高速振蕩器〔HSE〕或者內(nèi)部鎖相環(huán)〔PLL〕。鎖相環(huán)需要以HSI或HSE作為時(shí)鐘來(lái)源,兩者的差異在于內(nèi)部高速震蕩器HSI不能產(chǎn)生穩(wěn)定的8MHz的時(shí)鐘頻率。為了獲得最大的工作頻率,都會(huì)通過(guò)鎖相環(huán)配置出最大的72MHz頻率,供給Corte*-M3內(nèi)核使用。在復(fù)位操作之后,首先開(kāi)啟HSE并等待其穩(wěn)定,從而作為PLL的輸入。其次,確定鎖相環(huán)倍頻數(shù),使內(nèi)核工作在最大頻率下。該設(shè)計(jì)以8MHz的HSE作為時(shí)鐘源,PLL倍頻數(shù)需要設(shè)置為6才能使PLL恰好輸出48MHz的頻率。在PLL設(shè)置好后,Corte*-M3內(nèi)核就以72MHz的頻率運(yùn)行了,此時(shí),還需要通過(guò)改變總線控制存放器設(shè)置AHB和APB總線頻率。AHB和APB2的最高頻率是72MHZ。APB1的最高允許頻率是36MHZ。圖4.1STM32時(shí)鐘樹(shù)本局部的程序流程圖如下:開(kāi)場(chǎng)開(kāi)場(chǎng)復(fù)位系統(tǒng)時(shí)鐘設(shè)置開(kāi)啟外部振蕩器HSE是否成功起振并穩(wěn)定?YN選擇AHB,APB1,APB2頻率使能鎖相環(huán)PLL等待PLL輸出穩(wěn)定,成為時(shí)鐘源完畢圖4.2系統(tǒng)時(shí)鐘初始化流程圖與該流程圖相對(duì)應(yīng)的程序設(shè)計(jì)見(jiàn)附錄C。4.1.2SysTick定時(shí)器SysTick,即系統(tǒng)節(jié)拍時(shí)鐘,它作為ARMCorte*-M3內(nèi)核的一個(gè)內(nèi)設(shè),和STM32微控制器之間并沒(méi)有必然的聯(lián)系。SysTick的存在既能夠提供必要的系統(tǒng)節(jié)拍,為實(shí)時(shí)操作系統(tǒng)的任務(wù)調(diào)度提供一個(gè)有節(jié)奏的"心跳〞,進(jìn)而提高可靠性,又方便了程序在不同器件間的移植。系統(tǒng)初始化時(shí),RCC通過(guò)AHB時(shí)鐘(HCLK)8分頻后作為Corte*系統(tǒng)定時(shí)器(SysTick)的外部時(shí)鐘。通過(guò)對(duì)SysTick控制與狀態(tài)存放器的設(shè)置,可選擇上述時(shí)鐘或Corte*(HCLK)時(shí)鐘作為SysTick時(shí)鐘。系統(tǒng)嘀嗒校準(zhǔn)值固定為9000,當(dāng)系統(tǒng)嘀嗒時(shí)鐘設(shè)定為9MHz(HCLK/8的最大值),產(chǎn)生1ms時(shí)間基準(zhǔn)。本局部的程序流程圖如下:開(kāi)場(chǎng)開(kāi)場(chǎng)設(shè)置Systick重裝載時(shí)間失能Systick定時(shí)器設(shè)定中斷函數(shù),獲取節(jié)拍使能Systick定時(shí)器完畢圖4.3SysTick定時(shí)器初始化流程圖與該流程圖相對(duì)應(yīng)的的程序設(shè)計(jì)見(jiàn)附錄C。4.1.3TIM定時(shí)器STM32微控制器具備高級(jí)定時(shí)器TIM1和TIM82個(gè),通用定時(shí)器TIM2、TIM3、TIM4和TIM54個(gè)以及根本定時(shí)器TIM6和TIM72個(gè),再加上RTC和Systick定時(shí)器,總數(shù)量到達(dá)了10個(gè)。根本定時(shí)器可以為用戶提供準(zhǔn)確的時(shí)間參考;通用定時(shí)器不僅具備時(shí)間參考功能,還具有輸入捕捉、輸出比擬、單脈沖輸出、PWM輸出功能和正交編碼器的特點(diǎn);高級(jí)定時(shí)器更是參加了可以產(chǎn)生帶死區(qū)控制的互補(bǔ)PWM信號(hào)、緊急制動(dòng)、定時(shí)器同步等高級(jí)特征,并最多可以輸出6路PWM信號(hào),可謂是意法半導(dǎo)體賦予STM32的王牌。本設(shè)計(jì)采用TIM2、TIM3的PWM輸出功能和TIM4的計(jì)數(shù)功能。本局部的程序流程圖如下:開(kāi)場(chǎng)開(kāi)場(chǎng)配置PWM輸出引腳設(shè)置定時(shí)器TIM2各輸出通道占空比設(shè)置定時(shí)器TIM3輸出通道1占空比延時(shí)1000ms,等待手臂初始化完成設(shè)置定時(shí)器TIM4計(jì)數(shù)模式完畢圖4.4TIM定時(shí)器初始化流程圖與該流程圖相對(duì)應(yīng)的的程序設(shè)計(jì)見(jiàn)附錄C。GPIO可以說(shuō)是STM32最常用的外設(shè)。STM32F103ZET6提供多達(dá)112個(gè)雙向GPIO,分別分布在A~G這7個(gè)端口中。每個(gè)端口又包括16個(gè)GPIO,都可承受5V的壓降。GPIO可通過(guò)配置存放器工作在如下8種模式:浮空輸入、帶上拉電阻的輸入、帶下拉電阻的輸入、模擬輸入;開(kāi)漏輸出、推挽輸出、復(fù)用推挽輸出、復(fù)用開(kāi)漏輸出。該設(shè)計(jì)中將PA0、PA1、PA2、PA3、PA6作為PWM波的輸出口;PA4、PA5作為L(zhǎng)ED顯示接口;PA7、PA8作為超聲波傳感器信號(hào)的接收發(fā)送接口;PB6、PB7分別作為串口的發(fā)送接收接口。首先,STM32的PA7端口接超聲波傳感器的TRIG口,觸發(fā)測(cè)距信號(hào),發(fā)出10us的高電平信號(hào);然后,超聲波發(fā)射器自動(dòng)發(fā)送8個(gè)40KHz的方波,接收器檢測(cè)返回信號(hào);然后,PA8端口接的ECHO發(fā)給STM32微控制器一個(gè)高電平,用TIM4來(lái)測(cè)量高電平的持續(xù)時(shí)間。本局部的程序流程圖如下:開(kāi)場(chǎng)開(kāi)場(chǎng)配置超聲波模塊引腳配置并使能TIM4觸發(fā)超聲波模塊發(fā)射方波,TIM4開(kāi)場(chǎng)計(jì)數(shù)觸發(fā)超聲波模塊收到反射波,TIM4停頓計(jì)數(shù)完畢圖4.5超聲波模塊初始化流程圖與該流程圖相對(duì)應(yīng)的的程序設(shè)計(jì)見(jiàn)附錄C。運(yùn)行模塊的主要任務(wù)是:控制器輸出PWM波控制舵機(jī)的轉(zhuǎn)向及角度,進(jìn)而實(shí)現(xiàn)對(duì)各個(gè)關(guān)節(jié)的位置控制。主要工作流程為:在系統(tǒng)上電后,超聲波傳感器進(jìn)展循環(huán)掃描,檢測(cè)工件是否到達(dá)指定位置,假設(shè)到達(dá)指定位置,機(jī)械臂的各個(gè)關(guān)節(jié)開(kāi)場(chǎng)運(yùn)動(dòng),完成搬運(yùn)動(dòng)作,否則繼續(xù)掃描。完成一次搬運(yùn)后,機(jī)械臂回到起始位置,進(jìn)入等待狀態(tài),直到下一次動(dòng)作。流程圖如下:將工件搬運(yùn)到位置1將工件搬運(yùn)到位置1YY開(kāi)場(chǎng)RCC,SysTick,TIM,NVIC,GPIO初始化產(chǎn)生PWM波傳感器檢測(cè)物件到位N搬運(yùn)到位置1將工件搬運(yùn)到位置2Y搬運(yùn)到位置2N完畢將工件搬運(yùn)到位置3N圖4.6系統(tǒng)流程圖運(yùn)動(dòng)子程序、宏定義和相關(guān)定義以及完整程序見(jiàn)附錄C。本章首先介紹了軟件控制的總體思想,從宏觀上分為初始化模塊和運(yùn)行模塊;然后分別對(duì)各個(gè)模塊的程序進(jìn)展設(shè)計(jì)。其主要內(nèi)容包括:系統(tǒng)初始化程序設(shè)計(jì)和基于PWM波的舵機(jī)機(jī)制程序設(shè)計(jì)以及相應(yīng)的配置。5系統(tǒng)的整機(jī)調(diào)試作為開(kāi)發(fā)過(guò)程中的重要環(huán)節(jié),系統(tǒng)整機(jī)調(diào)試對(duì)系統(tǒng)運(yùn)行過(guò)程中控制效果的好或是壞有著至關(guān)重要的作用,所以,必須進(jìn)展系統(tǒng)軟件、硬件的調(diào)試。也就是說(shuō)一個(gè)良好的機(jī)械臂控制系統(tǒng)必須經(jīng)過(guò)系統(tǒng)調(diào)試才能到達(dá)控制系統(tǒng)預(yù)期的目的[24]。因?yàn)闄C(jī)械臂工作在高風(fēng)險(xiǎn)的環(huán)境下,所以它必須是可靠的,對(duì)于這樣的硬件,其穩(wěn)定性要求必須很高。一般的情況下首先進(jìn)展硬件的調(diào)試,只有在確定了硬件電路正常的前提下,進(jìn)展軟件的調(diào)試才是有意義的。所以,硬件、軟件的調(diào)試在整個(gè)系統(tǒng)的調(diào)試過(guò)程中都是非常重要的??刂葡到y(tǒng)的硬件主要包括如下幾局部:1.機(jī)械局部;2.電源及穩(wěn)壓模塊;3.直流伺服電機(jī);4超聲波傳感器;5主控制器。對(duì)于機(jī)械局部,對(duì)應(yīng)原理圖,將機(jī)械局部以及舵機(jī)安裝起來(lái),組裝成品,檢查零件安裝是否適宜,松動(dòng)要繼續(xù)固定,直到滿意為止。如所示。圖5.1機(jī)械臂成品對(duì)于電源及穩(wěn)壓模塊,采用萬(wàn)用表測(cè)量的方法確定電源電壓適宜以及穩(wěn)壓模塊正常工作。對(duì)于舵機(jī),采用舵機(jī)測(cè)試儀檢測(cè)和設(shè)定舵機(jī)的虛位、中位和抖動(dòng),用手左右旋轉(zhuǎn)確定舵機(jī)均具有180度轉(zhuǎn)角。對(duì)于超聲波傳感器模塊,將測(cè)試程序?qū)懭肟刂菩酒校ㄟ^(guò)串口顯示的數(shù)據(jù)確定該模塊正常工作。對(duì)于主控制器,將其自帶的芯片相應(yīng)的初始化程序下載至STM32芯片里,然后隊(duì)所需要的各個(gè)引腳的輸出狀況進(jìn)展測(cè)試,如果各個(gè)引腳的輸出正確,就可以證明芯片是正常的。測(cè)試所有硬件局部均正常后,用杜邦線將其按電路原理圖連接起來(lái),同時(shí)注意布線的整齊以及不能影響機(jī)械臂的正常工作。軟件調(diào)試的主要任務(wù)是通過(guò)反復(fù)試湊確定PWM波的占空比,進(jìn)而確定各個(gè)關(guān)節(jié)運(yùn)動(dòng)到指定位置需要轉(zhuǎn)過(guò)的角度。經(jīng)反復(fù)試湊,各個(gè)關(guān)節(jié)在整個(gè)過(guò)程中運(yùn)動(dòng)到指定位置的占空比方以下各表。表5.1機(jī)械臂各關(guān)節(jié)運(yùn)動(dòng)到指定位置的占空比關(guān)節(jié)占空比*1000動(dòng)作腰關(guān)節(jié)肩關(guān)節(jié)肘關(guān)節(jié)腕關(guān)節(jié)手爪-90到+90的理論值25~12525~12525~12525~12525~125-90到+90的實(shí)際值41~9524~10341~9641~9658~76直立狀態(tài)6661696976直立狀態(tài)如圖5.1所示。表5.2機(jī)械臂完成動(dòng)作1各關(guān)節(jié)運(yùn)動(dòng)到指定位置的占空比關(guān)節(jié)占空比*1000動(dòng)作腰關(guān)節(jié)肩關(guān)節(jié)肘關(guān)節(jié)腕關(guān)節(jié)手爪抓取過(guò)程6645808573放置過(guò)程16658708573放置過(guò)程28956859658將工件搬運(yùn)到位置1的分解動(dòng)作如下列圖所示。圖5.2位置1—抓取過(guò)程圖5.3位置1—放置過(guò)程表5.3機(jī)械臂完成動(dòng)作2各關(guān)節(jié)運(yùn)動(dòng)到指定位置的占空比關(guān)節(jié)占空比*1000動(dòng)作腰關(guān)節(jié)肩關(guān)節(jié)肘關(guān)節(jié)腕關(guān)節(jié)手爪抓取過(guò)程6645808573放置過(guò)程16658708573放置過(guò)程24557828858將工件搬運(yùn)到位置2的分解動(dòng)作如下列圖所示:圖5.4位置2—抓取過(guò)程圖5.5位置2—放置過(guò)程表5.4機(jī)械臂完成動(dòng)作3各關(guān)節(jié)運(yùn)動(dòng)到指定位置的占空比關(guān)節(jié)占空比*1000動(dòng)作腰關(guān)節(jié)肩關(guān)節(jié)肘關(guān)節(jié)腕關(guān)節(jié)手爪抓取過(guò)程6645808573放置過(guò)程16658708573放置過(guò)程26680555058將工件搬運(yùn)到位置3的分解動(dòng)作如下列圖所示:圖5.6動(dòng)作3—抓取過(guò)程圖5.7動(dòng)作3—放置過(guò)程在進(jìn)展硬件和軟件的單獨(dú)調(diào)試后,按照系統(tǒng)整體連接原理圖和器件具體接口及功能,將電源、穩(wěn)壓模塊、超聲波傳感器模塊、舵機(jī)及控制器進(jìn)展整體連接。應(yīng)用STM32開(kāi)發(fā)軟件Keil,通過(guò)J-Link仿真器將控制程序?qū)懭肟刂破鳎^察開(kāi)發(fā)板上的電源指示燈及軟件上的提示,等程序下載完成后,即可按復(fù)位鍵進(jìn)展搬運(yùn)動(dòng)作的操作。翻開(kāi)電源模塊的開(kāi)關(guān)和開(kāi)發(fā)板上的電源開(kāi)關(guān),即可聽(tīng)到控制手爪的舵機(jī)發(fā)出輕微的響聲,同時(shí)手爪有小幅度的張合動(dòng)作,這是超聲波傳感器循環(huán)掃描的結(jié)果。即可初步判斷連接正確,并且舵機(jī)也得到了電力供給。移開(kāi)工件不斷接近指定位置,機(jī)械臂沒(méi)有動(dòng)作。當(dāng)工件到達(dá)指定位置時(shí),超聲波傳感器發(fā)送控制信號(hào)給控制器,機(jī)械臂動(dòng)作,完成抓取、搬運(yùn)、放置一系列動(dòng)作后,回到初始位置進(jìn)入等待狀態(tài)。整個(gè)調(diào)試的過(guò)程中,由于受到來(lái)自系統(tǒng)內(nèi)部以及外部的各種干擾,各個(gè)關(guān)節(jié)旋轉(zhuǎn)的角度有輕微的誤差,其中引起位置誤差最嚴(yán)重的因素是由于采用可調(diào)降壓器而使整個(gè)系統(tǒng)在運(yùn)行過(guò)程中電壓不穩(wěn)。解決的方法是在調(diào)試前先用萬(wàn)用表測(cè)量關(guān)節(jié)驅(qū)動(dòng)系統(tǒng)的輸入電壓,進(jìn)展校正,在進(jìn)展幾次調(diào)試確定系統(tǒng)比擬準(zhǔn)確后再投入使用。將物體搬運(yùn)到各個(gè)指定位置的具體誤差如下:位置1的長(zhǎng)和寬分別為45mm和32mm,系統(tǒng)將物體搬運(yùn)到位置1后,在長(zhǎng)度方面放置的很準(zhǔn)確;寬度方面,會(huì)超出指定范圍2mm,產(chǎn)生6.25%的誤差。位置2的長(zhǎng)和寬分別為47mm和33mm,系統(tǒng)將物體搬運(yùn)到位置2后,在長(zhǎng)度方面放置的很準(zhǔn)確;寬度方面,會(huì)超出指定范圍2mm,產(chǎn)生6.06%的誤差。位置3的長(zhǎng)和寬分別為53mm和35mm,系統(tǒng)將物體搬運(yùn)到位置3后,在長(zhǎng)度方面,會(huì)超出指定范圍3mm,產(chǎn)生5.67%的誤差;寬度方面,會(huì)超出指定范圍2mm,產(chǎn)生5.71%的誤差。在進(jìn)展整機(jī)調(diào)試的過(guò)程中,并沒(méi)有很順利,其中出現(xiàn)過(guò)很多問(wèn)題。當(dāng)調(diào)試出現(xiàn)問(wèn)題時(shí),一般的步驟是先進(jìn)展硬件的單獨(dú)調(diào)試以及硬件間接線的檢查,當(dāng)確定硬件沒(méi)有問(wèn)題后再檢查程序是否正確。我們將設(shè)計(jì)中遇到的問(wèn)題以及他們的解決方案列舉出來(lái):1.當(dāng)系統(tǒng)以及單片機(jī)供電后,將程序通過(guò)J-Link仿真器下載至開(kāi)發(fā)板,按下復(fù)位鍵后,本應(yīng)直立的機(jī)械臂并沒(méi)有直立,肩關(guān)節(jié)處有明顯的彎曲,同時(shí)舵機(jī)發(fā)出嗡嗡的聲音。當(dāng)用手將機(jī)械臂拉直后,這種聲音就沒(méi)有了。以上現(xiàn)象說(shuō)明肩關(guān)節(jié)舵機(jī)的扭力不是足夠大能使其直立,所以更換了MG945舵機(jī)。在進(jìn)展舵機(jī)的選型時(shí),扭力是一個(gè)重要數(shù)據(jù),要充分考慮工件的重量以及機(jī)械臂的自重,在留有一定余量的前提下選擇舵機(jī)。2.當(dāng)系統(tǒng)以及開(kāi)發(fā)板供電后,通過(guò)指示燈初步判斷沒(méi)有異常后,按下復(fù)位鍵,整個(gè)系統(tǒng)沒(méi)有按正常程序工作,經(jīng)仔細(xì)排查,發(fā)現(xiàn)控制器和機(jī)械臂之間沒(méi)有共地,將硬件做稍微的改變,控制器和機(jī)械臂實(shí)現(xiàn)共地后該問(wèn)題就得以解決。因?yàn)槿绻刂破骱蜋C(jī)械臂之間沒(méi)有共地時(shí),舵機(jī)就無(wú)法正確識(shí)別控制器輸出的PWM波的上下電平,進(jìn)而導(dǎo)致其不能正常工作。3.在調(diào)試的過(guò)程中,偶爾會(huì)出現(xiàn)當(dāng)工件沒(méi)有接近指定位置時(shí),超聲波傳感器就將信號(hào)傳遞給控制器,導(dǎo)致機(jī)械臂動(dòng)作。當(dāng)遇到這個(gè)問(wèn)題時(shí),仔細(xì)檢查超聲波傳感器返回的數(shù)據(jù),并繪制成折線圖,發(fā)現(xiàn)毛刺現(xiàn)象非常嚴(yán)重。通過(guò)查閱資料得知,超聲波反射時(shí),反射面的大小、角度、凹凸程度都會(huì)影響反射波的頻率,甚至產(chǎn)生駐波。因此,將工件進(jìn)展打磨、拋光,并在軟件上參加數(shù)字濾波程序,上述問(wèn)題才得以解決。4.在最初的幾次調(diào)試過(guò)程中,工件到達(dá)指定位置時(shí),機(jī)械臂剛有去抓取工件的趨勢(shì),卻又立即回到原位,并不斷重復(fù)先后擺動(dòng)。檢查超聲波傳感器返回的數(shù)據(jù)后,發(fā)現(xiàn)毛刺現(xiàn)象非常嚴(yán)重,距離的上一個(gè)測(cè)量值在動(dòng)作范圍以內(nèi),下一個(gè)測(cè)量值就超出了該范圍,因而會(huì)有上述現(xiàn)象產(chǎn)生。在軟件上參加數(shù)字濾波程序后,上述問(wèn)題就得以解決了。5.在進(jìn)展屢次調(diào)試后,經(jīng)常出現(xiàn)整個(gè)系統(tǒng)不按正常程序工作的現(xiàn)象。斷電檢查沒(méi)有發(fā)現(xiàn)任何問(wèn)題,然而當(dāng)再次出現(xiàn)這種問(wèn)題的同時(shí)用萬(wàn)用表測(cè)量電源電壓,發(fā)現(xiàn)帶載電壓過(guò)低,而斷電后測(cè)量,空載電壓正常,說(shuō)明整個(gè)機(jī)械臂系統(tǒng)工作時(shí)是一個(gè)很大的負(fù)載,并且當(dāng)電源電壓較低時(shí),舵機(jī)無(wú)法正常工作。所以,在該系統(tǒng)應(yīng)用的過(guò)程中應(yīng)按時(shí)給電池充電,并適當(dāng)提高降壓模塊的輸出電壓。6.在進(jìn)展整機(jī)調(diào)試的過(guò)程中,由于末端手爪以及被搬運(yùn)的物體的外表較光滑,經(jīng)常出現(xiàn)在將物體搬運(yùn)至位置3的過(guò)程中,物體出現(xiàn)翻轉(zhuǎn)的現(xiàn)象;為解決這個(gè)問(wèn)題,要增加末端手爪的摩擦力,解決的方法是在末端手爪上附加一層橡膠。采用這種方法后,在搬運(yùn)過(guò)程中物體翻轉(zhuǎn)的現(xiàn)象就沒(méi)有再發(fā)生。本章詳細(xì)描述了該機(jī)械臂系統(tǒng)硬件五大局部:機(jī)械局部、電源及穩(wěn)壓模塊、直流伺服電機(jī)、超聲波傳感器和主控制器的調(diào)試過(guò)程和結(jié)果;軟件局部的調(diào)試過(guò)程及結(jié)果。最后,對(duì)整個(gè)調(diào)試過(guò)程中出現(xiàn)的故障進(jìn)展描述和分析,并且通過(guò)反復(fù)試驗(yàn),最終找出錯(cuò)誤所在,并給出了合理的解決方案。結(jié)論機(jī)械臂控制系統(tǒng)是當(dāng)今社會(huì)的一項(xiàng)非常重要的研究課題,盡管其開(kāi)展已經(jīng)有了一段很長(zhǎng)的歷史,但是其開(kāi)展并不完全成熟。無(wú)論是學(xué)術(shù)界、工業(yè)還是在教育教學(xué)方面都一直在進(jìn)展著這方面的研究,距離成熟階段還要有一段時(shí)間。本設(shè)計(jì)是基于STM32四自由度機(jī)械臂驅(qū)動(dòng)系統(tǒng)的設(shè)計(jì),以四自由度機(jī)械臂為控制對(duì)象,以意法半導(dǎo)體公司的STM32系列芯片STM32F103ZET6為主控芯片,輔以可調(diào)降壓轉(zhuǎn)換電路、串口顯示和超聲波傳感器進(jìn)展了系統(tǒng)的硬件的設(shè)計(jì)和研究,并在此根底上,采用先進(jìn)的控制理論,以正確的控制方法為指導(dǎo),進(jìn)展了系統(tǒng)的軟件設(shè)計(jì)。在整個(gè)系統(tǒng)的設(shè)計(jì)中,硬件的設(shè)計(jì)是本論文研究的重點(diǎn),芯片的選型是系統(tǒng)硬件設(shè)計(jì)的保證,并且輔以可靠性分析為指導(dǎo),保證了系統(tǒng)運(yùn)行的可靠性和穩(wěn)定性。通過(guò)編寫控制程序,使主控制器輸出PWM波實(shí)現(xiàn)對(duì)各個(gè)關(guān)節(jié)位置的控制。實(shí)驗(yàn)結(jié)果說(shuō)明,本文設(shè)計(jì)的基于STM32的四自由度機(jī)械臂控制系統(tǒng)能夠滿足中小型機(jī)器人控制器的性能要求,在操作靈活度、控制精度、易操作性等方面都表現(xiàn)出良好的性能。然而,仍有一些缺乏之處需要進(jìn)一步的改良。〔1〕機(jī)械臂和傳感器改造。作為控制對(duì)象,其本身構(gòu)造、性能直接決定實(shí)際運(yùn)行效果。木文采用的機(jī)械臂,尤其機(jī)械臂手爪局部更要進(jìn)一步改良,參加壓力等傳感器,為控制提供較為完整的信息?!?〕自動(dòng)控制算法的完善研究。為了實(shí)現(xiàn)機(jī)械臂自動(dòng)協(xié)調(diào)運(yùn)行,需要有更加完善的控制算法,尤其在輸入?yún)?shù)和機(jī)械臂逆向運(yùn)動(dòng)方程求解方而,需要更加優(yōu)化的算法,使計(jì)算出的控制參數(shù)更加準(zhǔn)確和完整。鑒于上述情況,在以后的工作中,我們應(yīng)該不斷改良、完善,以提高該機(jī)械臂系統(tǒng)的穩(wěn)定性以及可靠性。致在本論文完成之際,首先要感謝的是我的導(dǎo)師***教師的諄諄教導(dǎo)和耐心的指導(dǎo)。在整個(gè)設(shè)計(jì)階段,導(dǎo)師對(duì)我的設(shè)計(jì)做了全面的指導(dǎo)和生活上的熱情關(guān)心,使我不僅在專業(yè)理論方面有了很大的提高,更重要的還是使我在動(dòng)手能力、科研實(shí)踐能力上有了很大的進(jìn)步;***教師嚴(yán)格的教學(xué)作風(fēng),做人的原則,對(duì)工作的認(rèn)真負(fù)責(zé)是我們以后在工作和學(xué)習(xí)上的典范。我還要感謝我的所有同學(xué)們的熱情關(guān)心和無(wú)私幫助,生活上他們給予了很大的關(guān)心,學(xué)習(xí)上給過(guò)很大的幫助,撰寫論文時(shí)他們又給過(guò)很多很好的建議。在課題設(shè)計(jì)階段,尤其應(yīng)該感謝的是***同學(xué)的幫助,在研究過(guò)程中他給了很多的意見(jiàn)和建議。最后,感謝多年來(lái)一直培養(yǎng)教育我的父母和教師們,正是有了他們的指導(dǎo)和教導(dǎo)才成就了今天的我,他們的無(wú)私奉獻(xiàn)是我永遠(yuǎn)也報(bào)答不完的。再一次向所有關(guān)心、幫助我的人表示衷心的感謝!參考文獻(xiàn)李團(tuán)結(jié).機(jī)器人技術(shù)[M].:電子工業(yè)出版社,2009:1.李明.機(jī)器人[M].:上??茖W(xué)技術(shù)出版社,2012:3.黃賢新.工業(yè)機(jī)器人機(jī)械手設(shè)計(jì)[J].裝備制造技術(shù),2012,(3)220-225.郭益友.工業(yè)機(jī)械臂在機(jī)械制造工藝中的開(kāi)展及應(yīng)用[J].淮南職業(yè)技術(shù)學(xué)院學(xué)報(bào),2002,2(2)36-38.方龍,陳丹,肖獻(xiàn)保.基于單片機(jī)的機(jī)械手臂控制系統(tǒng)設(shè)計(jì)[J].計(jì)算機(jī)與信息技術(shù),2012,08(08)89-90.任美玲.機(jī)械臂的研究與進(jìn)展[J].出國(guó)與就業(yè),2012,(2)84-85.劉少麗.淺談工業(yè)機(jī)械手設(shè)計(jì)[J].工業(yè)自動(dòng)化,2011,40(07)45-46.劉忠,朱浩等.工程機(jī)械臂新型液壓驅(qū)動(dòng)技術(shù)研究與仿真[J].中國(guó)機(jī)械工程,2012,23(23).胡睿智.五自由度機(jī)械手臂及控制系統(tǒng)的設(shè)計(jì)[D].:東北大學(xué),2011:5.黃輝先,文美純.多自由度機(jī)械手PLC控制[J].機(jī)床與液壓,2001,(05)92-94.金偉.基于DSP的機(jī)械臂控制系統(tǒng)設(shè)計(jì)[J].自動(dòng)化與儀器儀表,2001,(03)30-32.劉鵬飛,韓九強(qiáng),周挺.基于多DSP的六自由度機(jī)器人伺服控制系統(tǒng)研究[J].微電子學(xué)與計(jì)算機(jī),2005,22(08)5-9.曹歡.基于ARM和FPGA的多自由度機(jī)械臂控制系統(tǒng)設(shè)計(jì)[D].:華東理工大學(xué),2011:7.庫(kù)少平,劉晶.基于STM32F10*和MDK的步進(jìn)電機(jī)控制系統(tǒng)設(shè)計(jì)[J].武漢理工大學(xué)學(xué)報(bào),2009,31(03)107-110.鄭珊珊.基于ARM處理器的鉆孔機(jī)械臂控制系統(tǒng)研究[D].:江西理工大學(xué),2009:5-6.高微,楊中平,趙榮飛.機(jī)械手臂構(gòu)造優(yōu)化設(shè)計(jì)[J].機(jī)械設(shè)計(jì)與制造,2006,(01)13-15.賈偉濤.單片控制機(jī)械手臂的設(shè)計(jì)與制作[J].實(shí)用電子制作—機(jī)電制作,2006,(05)33-34.王迪.基于ARM的采摘機(jī)器人關(guān)節(jié)運(yùn)動(dòng)控制研究[D].:東北林業(yè)大學(xué),2009:12.黃智偉,王兵,朱衛(wèi)華.STM32F32位ARM微控制器應(yīng)用設(shè)計(jì)與實(shí)踐[M].:北京航空航天大學(xué)出版社,2012:3-4.STMicroelectronicsRM0008ReferencemanualSTM32F101**,STM32F102**,STM32F103**,STM32F105**andSTM32F107**advancedARM-based32–bitMCUs[EB/OL]..st..STMicroelectronicsSTM32F101**,STM32F102**,STM32F103**,STM32F105**和STM32F107**,ARM內(nèi)核32位高性能微控制器參考手冊(cè)[EB/OL]..st..STMicroelectronics數(shù)據(jù)手冊(cè)STM32G103*CSTM32G103*DSTM32G103*E[EB/OL]..st..程立艷.五自由度機(jī)械手的抓取設(shè)計(jì)[D].:西華大學(xué),2012:51.李磊.六自由度機(jī)械臂控制系統(tǒng)設(shè)計(jì)[D].:哈爾濱工程大學(xué),2007:66.焦保存.基于四自由度機(jī)械臂控制系統(tǒng)的設(shè)計(jì)與研究[D]:西安電子科技大學(xué),2009:59.附錄附錄A-.z.-.z.中文譯文A用于平安且方便的人機(jī)合作的工業(yè)機(jī)器人的開(kāi)展摘要:本文主要論述了用于平安且方便的人機(jī)合作的機(jī)械臂的開(kāi)展。到目前為止,對(duì)于沒(méi)有受過(guò)機(jī)械臂操作培訓(xùn)的工人來(lái)說(shuō),機(jī)械臂仍然是難以操作的。此外,目前的大多數(shù)工業(yè)機(jī)械臂被用于隔離的生產(chǎn)環(huán)境中,因?yàn)樗赡軙?huì)傷害系統(tǒng)附近的操作人員。為此,本文研究的最終目標(biāo)是:研究即使是沒(méi)有受過(guò)培訓(xùn)的工人也能熟練使用,并且能夠保證在其附近工作的操作人員的平安的機(jī)械臂。本文主要介紹了機(jī)械臂的機(jī)械構(gòu)造,并且對(duì)機(jī)械臂的教學(xué)方法——直接教學(xué)法也有所介紹。關(guān)鍵詞:智能執(zhí)行器,扭矩傳感,直觀教學(xué),平安機(jī)器人機(jī)械臂。到目前為止,對(duì)于沒(méi)有受過(guò)機(jī)械臂操作培訓(xùn)的工人來(lái)說(shuō)機(jī)械臂仍然是難以操作的。此外,目前的大多數(shù)工業(yè)機(jī)械臂被用于隔離的生產(chǎn)環(huán)境中,因?yàn)樗赡軙?huì)傷害系統(tǒng)附近的操作人員。為了克制這些問(wèn)題,我們研究的直接教學(xué)方法,使即使是沒(méi)有受過(guò)專業(yè)培訓(xùn)的工人也能熟練操作機(jī)械臂;同時(shí),我們研究的更加平安的方法,使機(jī)械臂能夠檢測(cè)到危險(xiǎn)的情況,同時(shí)能夠做出正確的反響以確保操作人員的平安。在本文中,介紹了機(jī)械臂的設(shè)計(jì)理念、單自由度扭矩傳感器的智能驅(qū)動(dòng)模塊。智能驅(qū)動(dòng)模塊,可以檢測(cè)由外力引起的扭矩,檢測(cè)到的扭矩可用于平安地操作機(jī)械手。最后,介紹了用于機(jī)械臂的直接教學(xué)算法。目前的機(jī)械臂都有一個(gè)智能驅(qū)動(dòng)模塊,也就是在機(jī)械臂的內(nèi)部有一個(gè)控制器。但在本項(xiàng)研究中,驅(qū)動(dòng)模塊內(nèi)部并沒(méi)有控制器,但我們稱之為智能執(zhí)行器是因?yàn)樗幸粋€(gè)特殊的能力來(lái)檢測(cè)由外部環(huán)境引起的扭矩。例如,如果工人轉(zhuǎn)動(dòng)軸,它可以檢測(cè)由工人引起的外部轉(zhuǎn)矩。如果檢測(cè)到的外部轉(zhuǎn)矩用于控制轉(zhuǎn)軸按控制器的指示運(yùn)動(dòng),執(zhí)行機(jī)構(gòu)必須遵守扭矩控制。如果檢測(cè)到的外部轉(zhuǎn)矩是由機(jī)械臂與操作者之間的碰撞引起的,轉(zhuǎn)軸應(yīng)被控制,以減少檢測(cè)到的外部力矩來(lái)保護(hù)操作者。由此,智能驅(qū)動(dòng)模塊被開(kāi)發(fā),如圖1所示。圖1帶有單自由度扭矩傳感器的智能執(zhí)行器隨著驅(qū)動(dòng)模塊的開(kāi)發(fā),出現(xiàn)了六軸機(jī)器人機(jī)械臂。對(duì)于每個(gè)軸,如圖1所示的驅(qū)動(dòng)模塊將被嵌入到機(jī)械臂的各個(gè)軸用以檢測(cè)由外部環(huán)境引起的外部轉(zhuǎn)矩。如果扭矩傳感器位于末端執(zhí)行器,機(jī)械臂可以檢測(cè)出加載在端部執(zhí)行器的力矩,但它不能檢測(cè)到除了機(jī)械臂末端執(zhí)行器以外的加載在整個(gè)身體上其他部位的力矩。圖2為這種機(jī)械臂及其控制系統(tǒng)。圖2帶有圖1中智能執(zhí)行器的機(jī)械手用于驅(qū)動(dòng)模塊的外部轉(zhuǎn)矩檢測(cè),單自由度的扭矩傳感器是足夠的。如圖3所示。圖3單自由度的扭矩傳感器扭矩傳感器在關(guān)節(jié)軸〔Z軸〕讀取單自由度扭矩信號(hào)。但是,當(dāng)出現(xiàn)3自由度的力或加載在*,Y軸的2自由度的力矩時(shí),那些信號(hào)干擾轉(zhuǎn)矩傳感器的關(guān)節(jié)軸的輸出信號(hào),機(jī)器人控制器便不能準(zhǔn)確的測(cè)量在z軸方向的轉(zhuǎn)矩信號(hào)。因此,一對(duì)穿插滾子軸承被安裝在1自由度的轉(zhuǎn)矩傳感器上,防止3自由度的力和在*,Y軸的2自由度的力矩干擾z軸的扭矩傳感器信號(hào)圖,如圖4所示。在圖4中,你可以看到轉(zhuǎn)矩傳感器和穿插滾子軸承是如何配備在智能執(zhí)行器模塊上的。在這種構(gòu)造中,唯一的關(guān)節(jié)軸轉(zhuǎn)矩信號(hào),如圖4所示,會(huì)影響轉(zhuǎn)矩傳感器的輸出,因?yàn)槠渌牧土乜梢员慌鋫湓谵D(zhuǎn)矩傳感器上穿插滾子軸承所抵消。圖4智能驅(qū)動(dòng)器模塊的構(gòu)造本文所設(shè)計(jì)的機(jī)械臂由帶有扭矩傳感器的6智能驅(qū)動(dòng)模塊組成,它可以檢測(cè)到整個(gè)身體上所有的力和力矩。因此,如果檢測(cè)到的外部轉(zhuǎn)矩是由機(jī)械臂和操作人員之間的碰撞產(chǎn)生的,該軸可以被控制以減少對(duì)操作人員的傷害。該項(xiàng)為人類平安而設(shè)計(jì)的算法并沒(méi)有完成,本文便不做介紹了。圖5每個(gè)關(guān)節(jié)配有一個(gè)扭矩傳感器的機(jī)械臂為了幫助操作人員輕松操作機(jī)械臂,這項(xiàng)研究中討論了直接教學(xué)算法。在本章中將對(duì)此做簡(jiǎn)要介紹。操作人員可以推或拉機(jī)械臂的操盤以指定作業(yè)所需的軌跡〔焊接,去毛刺或感應(yīng)淬火〕,然后機(jī)械手臂會(huì)按操作人員的意圖得到控制,同時(shí)記憶運(yùn)動(dòng)軌跡,在操作人員的教學(xué)過(guò)程完成后機(jī)械臂便回放軌跡。特別地,有時(shí)教學(xué)過(guò)程可以在機(jī)械臂的工作狀態(tài)下完成。如果工件是安裝在任意位置取向,或者如果工件上的信息〔例如,形狀〕是不夠的如果沒(méi)有額外的感官系統(tǒng),視覺(jué),激光掃描儀等,則機(jī)械臂本身是不能正常工作的,。在這種情況下,人類與機(jī)器人合作可以是一個(gè)很好的解決方法。如果操作人員可以很容易地讓機(jī)械臂知道工件上的信息,然后機(jī)械臂可以依據(jù)所收集的信息自己工作。為此,教學(xué)柄和教學(xué)工具被裝配在機(jī)械臂末端執(zhí)行器上。一個(gè)力—扭矩傳感器被配備在教學(xué)柄和教學(xué)工具上,分別如圖6所示。圖1描述了上述概念。在圖1的左側(cè),依據(jù)控制方案得到控制的機(jī)械臂被引導(dǎo)按照力的作用而動(dòng)作。在圖1的右側(cè),機(jī)械臂按照手動(dòng)指導(dǎo)重建工件上的信息來(lái)工作〔如磨削工件〕。圖6手動(dòng)引導(dǎo)的機(jī)械臂在圖6中,操作人員將力和力矩給教學(xué)柄,機(jī)械臂按照符合教學(xué)的力和力矩被控制,最后機(jī)械臂被手動(dòng)引導(dǎo)到接近到操作員打算到達(dá)的工件上。在教學(xué)過(guò)程中工具與工件接觸,所以對(duì)于操作人員來(lái)說(shuō)準(zhǔn)確的控制力和力矩是不容易的。因?yàn)椴僮魅藛T不知道他/她的教學(xué)力將導(dǎo)致多少刀具和工件的接觸力。出于此,提出修改教學(xué)力的方法以減小其與工件外表的小接觸力。機(jī)械
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 公路開(kāi)挖合同范本
- 買衣服購(gòu)銷合同范本
- 養(yǎng)殖配件小窗采購(gòu)合同范本
- 京津冀外包合同范本
- 農(nóng)民承包樹(shù)苗合同范本
- 企業(yè)定制酒合同范本
- 出售農(nóng)機(jī)全套紙合同范本
- 半日制合同范本
- 單位門衛(wèi)聘用合同范本
- 北京正規(guī)購(gòu)車合同范本
- 高考古代詩(shī)歌鑒賞復(fù)習(xí)教案
- 負(fù)數(shù)的認(rèn)識(shí)1202
- After-Effects影視特效設(shè)計(jì)教程完整版全套ppt課件
- 中國(guó)鐵塔建設(shè)維護(hù)工作培訓(xùn)PPT通用通用課件
- 新視野大學(xué)英語(yǔ)第三版Book 2 Unit 1 Text A
- 《夏夜多美》課件(ppt)
- SHD干燥機(jī)說(shuō)明書(shū)(英)
- 社區(qū)院落停車管理制度
- 蘇教版小學(xué)數(shù)學(xué)四年級(jí)下冊(cè)“確定位置”公開(kāi)課教案
- 藍(lán)色卡通風(fēng)格研學(xué)旅行報(bào)告PPT講座學(xué)習(xí)
- 熱軋無(wú)縫鋼管缺陷及產(chǎn)生原因
評(píng)論
0/150
提交評(píng)論