版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
1、 基于 STM32 的機械臂驅(qū)動系統(tǒng)設(shè)計摘 要由于機械臂在各行各業(yè)中得到了愈來愈廣泛的應(yīng)用,機械臂控制的多樣化、復(fù)雜化的需要也隨之日趨增多。作為當(dāng)今科技領(lǐng)域研究的一個熱點,提高機械臂的控制精度、穩(wěn)定性、操作靈活性對于提高其應(yīng)用水平有著十分重要的意義。本課題主要對四自由度機械臂控制系統(tǒng)進(jìn)行了研究與設(shè)計。作為運動控制系統(tǒng)的一種,該控制系統(tǒng)主要面向底層,力爭開發(fā)出一套穩(wěn)定性高,可靠性強并且定位準(zhǔn)確的工業(yè)機械臂系統(tǒng)。首先根據(jù)機械臂系統(tǒng)的控制要求,整體上設(shè)計出單 CPU 的系統(tǒng)控制方案,即通過控制主控制器輸出的 PWM 波的占空比實現(xiàn)對舵機轉(zhuǎn)動的控制,進(jìn)而實現(xiàn)各個關(guān)節(jié)的位置控制。在硬件方面,主要論述了如
2、何以 ARM 微處理器STM32F103ZET6、MG995 舵機、MG945 舵機、超聲波傳感器和電源模塊為主要器件,通過搭建硬件平臺和設(shè)計軟件控制程序構(gòu)建關(guān)節(jié)運動控制系統(tǒng)。然后按照結(jié)構(gòu)化設(shè)計的思想,依次對以上各部分的原理和設(shè)計方法進(jìn)行了分析和探討,給出了實際的原理圖和電路圖。在軟件設(shè)計方面,按照模塊化的設(shè)計思想將控制程序分為初始化模塊和運行模塊,并分別對各個模塊的程序進(jìn)行設(shè)計。實驗表明,該機械臂控制系統(tǒng)不僅具有很好的控制精度,還具有很好的穩(wěn)定性、準(zhǔn)確性,而且在很大程度上改善了定位精度。關(guān)鍵詞:四自由度機械臂,STM32,Cortex-M3,脈沖寬度調(diào)制the Design of Manip
3、ulator Drive System Based on STM32 Author:XXX Tutor:XXXAbstractIn recent years, robot arm is widely used in industry control, special robot, medical device and home service robots. Research of robot arm control system is a focus in robot area. It is meaningful to increase the performance in accuracy
4、, stability and feasibility.This paper is the research and design about a control system based on a four degrees freedoms design. And, we strive to develop a high stability, reliability and accurate control system.Firstly, according to the control requirements of the robotic system, the overall desi
5、gn of the system control program is based on a single CPU. Turn the steering control to achieve the control of the duty cycle of the PWM wave output by the main controller, so as to realize the position control of each joint. In terms of hardware, the paper mainly discusses how to use the ARM microp
6、rocessor STM32F103ZET6, MG995 Servo, MG945 servos, ultrasonic sensors and power supply module as the main components, build a joint motion control system by building hardware platforms and software control program. Then follow the structured design ideas, principles and design methods sequentially o
7、ver each part is analyzed and discussed, and then give the actual schematic or circuit diagram. In software design, the control program is divided into the run modules and the initialization module and design program of each module separately.Control system experiments show that the system can signi
8、ficantly improve the precision of control, and improve system stability, accuracy, so that the positioning accuracy of the robot arm has been greatly improved and enhanced. Key Words: Four Degrees Freedom Robot, STM32, Cortex-M3, Pulse Width Modulation 東北大學(xué)秦皇島分校畢業(yè)設(shè)計(論文) 第 II 頁目 錄1 緒論.11.1 機械臂概述.11.1
9、.1 機械臂研究的意義.11.1.2 國內(nèi)外機械臂的研究現(xiàn)狀及發(fā)展趨勢.11.1.3 機械臂的分類.21.2 機械臂控制的研究內(nèi)容.41.2.1 機械臂的驅(qū)動方式.41.2.2 機械臂的機械結(jié)構(gòu).41.2.3 機械臂的控制器.41.2.4 機械臂的控制算法.51.3 嵌入式系統(tǒng)簡介.51.4 本文的主要工作.62 機械臂控制系統(tǒng)的總體方案設(shè)計.72.1 機械臂的機械結(jié)構(gòu)設(shè)計.72.1.1 臂部結(jié)構(gòu)設(shè)計原則.72.1.2 機械臂自由度的確定.72.2 工作對象簡介.72.3 機械臂關(guān)節(jié)控制的總體方案.82.3.1 機械臂控制器類型的確定.82.3.2 機械臂控制系統(tǒng)結(jié)構(gòu).92.3.3 關(guān)節(jié)控制系
10、統(tǒng)的控制策略.92.4 本章小結(jié).93 機械臂控制系統(tǒng)硬件設(shè)計.113.1 機械臂控制系統(tǒng)概述.113.2 微處理器選型.113.3 主控制模塊設(shè)計.133.3.1 電源電路.133.3.2 復(fù)位電路.143.3.3 時鐘電路.153.3.4 JTAG 調(diào)試電路.153.4 驅(qū)動模塊設(shè)計.163.5 電源模塊設(shè)計.17 東北大學(xué)秦皇島分校畢業(yè)設(shè)計(論文) 第 III 頁3.6 傳感器模塊設(shè)計.193.7 本章小結(jié).194 機械臂控制系統(tǒng)軟件設(shè)計.204.1 初始化模塊設(shè)計.204.1.1 系統(tǒng)時鐘控制.204.1.2 SysTick 定時器 .224.1.3 TIM 定時器.234.1.4 通
11、用輸入輸出接口 GPIO.244.1.5 超聲波傳感器模塊.244.2 運行模塊設(shè)計.254.3 本章小結(jié).265 系統(tǒng)的整機調(diào)試.275.1 硬件調(diào)試.275.2 軟件調(diào)試.285.3 故障原因及解決方法.315.4 本章小結(jié).32結(jié) 論.33致 謝.34參考文獻(xiàn).35附 錄.37附錄 A.37附錄 B.46附錄 C.47 東北大學(xué)秦皇島分校畢業(yè)設(shè)計(論文) 第 0 頁1 緒論1.1 機械臂概述1.1.1 機械臂研究的意義早在幾千年前,人類就開始了機器人的制造,以解決人類繁重的勞動。例如,古希臘詩人荷馬在其長篇敘事詩伊利亞特中,描述了“火和鍛冶之神”赫菲斯托斯用黃金鍛造出一個侍女1。一直以來
12、,人們也一直致力于將這些美麗的神話變?yōu)楝F(xiàn)實。1958 年世界上的第一臺機器人被發(fā)明以來,與工業(yè)機器人相關(guān)的技術(shù)得到了迅猛的發(fā)展,并且己經(jīng)愈來愈廣泛的應(yīng)用在機械、電子、汽車等行業(yè)2。如今,機器人技術(shù)已成為衡量一個國家科技水平的標(biāo)志之一3。作為近幾十年來發(fā)展起來的一種自動設(shè)備,機械臂可以通過編寫軟件程序來完成目標(biāo)任務(wù),它不僅具有人和機器各自的很多優(yōu)點,而且特別具有人的智能性和適應(yīng)性。在作業(yè)過程中,機械臂控制的準(zhǔn)確性和對環(huán)境的適應(yīng)性,已經(jīng)使其在各個領(lǐng)域有著廣闊的發(fā)展前景。高級類型的機械臂,可以執(zhí)行更復(fù)雜的操作4。將機器臂運用于工業(yè)生產(chǎn)過程,除了可以提高生產(chǎn)率之外,還能夠減弱工人的勞動強度,使生產(chǎn)過程
13、實現(xiàn)自動控制。因此機械臂在近幾年得到了愈來愈廣泛的應(yīng)用5。1.1.2 國內(nèi)外機械臂的研究現(xiàn)狀及發(fā)展趨勢機器人的研究始于二戰(zhàn)后的美國。1958 年第一臺數(shù)控工業(yè)機器人誕生后,機器人在工業(yè)上的應(yīng)用不斷增加,日本、德國等國家也相繼開始機器人的研制。中國對現(xiàn)代機器人的研制始于上世紀(jì) 70 年代后期,80 年代進(jìn)入到飛速發(fā)展時期。尤其在國家成立了 863 計劃后,機器人技術(shù)得到特別的重視,由此中國在機器人領(lǐng)域取得了飛速發(fā)展,相繼研制出示教再現(xiàn)型的搬運、焊接、噴漆、裝配等各種工業(yè)機器人,以及水下作業(yè)、軍事和特種機器人。機械臂發(fā)展?fàn)顩r概括如下:第一代機械臂,即示教再現(xiàn)方式的機械臂。目前這種機械臂仍廣泛應(yīng)用于
14、各種場 東北大學(xué)秦皇島分校畢業(yè)設(shè)計(論文) 第 1 頁合。這種工作方式只能按照事先設(shè)置的位置進(jìn)行重復(fù)的動作,但是不能感知周圍環(huán)境,其應(yīng)用范圍因此受到一定的限制。這類機械臂主要工作于原料搬運、噴漆、焊接等工作場合。第二代機械臂,即具有視覺、觸覺等外部感覺功能的機械臂。這類機械臂可以根據(jù)周圍環(huán)境的變化進(jìn)行自適應(yīng),故可以完成較為復(fù)雜的工作。圖 1.1 一汽“紅旗”轎車機器人焊接生產(chǎn)線第三代機械臂,這類機械臂不僅具有第二代機械臂的感覺功能,而且還具有規(guī)劃和決策的功能。從而在環(huán)境發(fā)生變化時進(jìn)行自主的工作。但是目前這類機械臂依然處于研究階段,還需要一段時間才能得到實際應(yīng)用6。圖 1.2 演奏機器人 東北大
15、學(xué)秦皇島分校畢業(yè)設(shè)計(論文) 第 2 頁從機械臂幾十年來的成長進(jìn)程來看,高精度,多功能,集成化,系統(tǒng)化以及智能化是機械臂在以后多年中的發(fā)展方向。1.1.3 機械臂的分類機械臂一般從運動坐標(biāo)形式分為直角坐標(biāo)式機械臂、圓柱坐標(biāo)式機械臂、極坐標(biāo)式機械臂和多關(guān)節(jié)式機械臂。直角坐標(biāo)式機械臂:由三個線性關(guān)節(jié)來確定手爪的位置,通常還帶有附加的旋轉(zhuǎn)關(guān)節(jié)用來確定末端執(zhí)行器的姿勢。這類機械臂雖然控制位置精度高、簡單,但結(jié)構(gòu)繁雜,占地面積大。圓柱坐標(biāo)式機械臂:由兩個滑動關(guān)節(jié)以及一個旋轉(zhuǎn)關(guān)節(jié)來確定手爪的位置,也可以再附加一個旋轉(zhuǎn)關(guān)節(jié)來確定部件的位置。其位置精度僅次于直角坐標(biāo)式機械臂,控制簡單,但結(jié)構(gòu)龐大,移動軸的設(shè)計
16、復(fù)雜。極坐標(biāo)式機械臂:它由一個滑動關(guān)節(jié)以及兩個旋轉(zhuǎn)關(guān)節(jié)來確定手爪的位置,也可以附加一個旋轉(zhuǎn)關(guān)節(jié)來確定部件的姿勢。這類機械臂占地面積小,結(jié)構(gòu)緊湊,但有平衡問題,位置誤差與臂長有關(guān)。多關(guān)節(jié)式機械臂:其關(guān)節(jié)都是旋轉(zhuǎn)的,類似于人的手臂,是工業(yè)機械臂中最常見的構(gòu)型。該類機械臂結(jié)構(gòu)緊湊,占地面積小,工作空間大,但是位置精度較差,控制存在耦合,比較復(fù)雜。圖 1.31.6 分別對應(yīng)以上四種機械臂。 圖 1.3 直角坐標(biāo)式機械臂 圖 1.4 圓柱坐標(biāo)式機械臂 東北大學(xué)秦皇島分校畢業(yè)設(shè)計(論文) 第 3 頁 圖 1.5 極坐標(biāo)式機械臂 圖 1.6 多關(guān)節(jié)式機械臂1.2 機械臂控制的研究內(nèi)容1.2.1 機械臂的驅(qū)動
17、方式作為驅(qū)動方式,通常采用液壓驅(qū)動、氣壓驅(qū)動和電機驅(qū)動三種類型。液壓式:液壓驅(qū)動機械臂通常由液動機(各種油缸、油馬達(dá))伺服閥、油泵、油箱等組成驅(qū)動系統(tǒng),由驅(qū)動機械臂的執(zhí)行機構(gòu)進(jìn)行工作7。氣壓式:其驅(qū)動系統(tǒng)通常由氣缸、氣閥、氣罐和空壓機組成。電動式:電力驅(qū)動的機械臂是目前應(yīng)用最廣泛的一種類型。驅(qū)動電機一般采用步進(jìn)電機、直流伺服電機或交流伺服電機,其中交流伺服電機為目前主要的驅(qū)動形式。由于電機速度高,通常還需要減速機構(gòu)8。1.2.2 機械臂的機械結(jié)構(gòu)傳統(tǒng)的機械臂系統(tǒng)由于占地面積較大,所以在小空間的環(huán)境下不適用。在一些特殊的環(huán)境下,我們需要一種占地面積小而且活動靈敏的機械臂。要實現(xiàn)機械手臂的控制,首
18、先要分析機械手臂的機械結(jié)構(gòu),其中動力源以及動力傳遞方法應(yīng)被予以重視。現(xiàn)在,電力傳動的機械臂得到了廣泛的應(yīng)用,在動力傳動方式上,有連桿式、齒輪式、繩索式等。以關(guān)節(jié)型為主流,80 年代發(fā)明的適用于裝配作業(yè)的平面關(guān)節(jié)型機械臂約占總量的 1/29。鑒于汽車、建筑、橋梁等行業(yè)的需要,超大型機械臂應(yīng)運而生。1.2.3 機械臂的控制器選擇一個性能較好的控制器對控制功能的實現(xiàn)來說是十分必要的。工業(yè)控制技術(shù)、軟件和硬件技術(shù)的發(fā)展,為機械臂控制器的選擇提供的充分的條件。 東北大學(xué)秦皇島分校畢業(yè)設(shè)計(論文) 第 4 頁可編程控制器(PLC)由于抗干擾能力強,故障率較低,設(shè)備易于擴展、維護(hù),開發(fā)周期短等特點,被廣泛應(yīng)
19、用于工業(yè)場合10。但是其成本很高。數(shù)字信號處理器(DSP)采用數(shù)據(jù)和程序分離的哈佛結(jié)構(gòu)和改進(jìn)的哈佛結(jié)構(gòu),執(zhí)行指令速度更快,它以處理能力強、內(nèi)置較大的存儲器、芯片功耗低及配置資源靈活等特點得到了廣泛的應(yīng)用11。但是其成本較高,高頻干擾很大,功率消耗也很大。FPGA(FieldProgrammable Gate Array)靈活,設(shè)計周期短的特點使其特別適合用于小批量系統(tǒng),提高系統(tǒng)的可靠性和集成度12。但是 FPGA 的功耗非常大,而且跟硬件的的聯(lián)系非常大,使用起來很有難度13。與上述各種微處理器相比,STM32F103ZET6 處理器是意法半導(dǎo)體公司 STM32 系列芯片的一種,STM32F10
20、3ZET6 采用 ARM 最新的 Cortex-M3 內(nèi)核,具有低成本、高集成度、低功耗等優(yōu)點14。ARM 微處理器資源豐富,具有很好的通用性,在很多領(lǐng)域都得到了廣泛的應(yīng)用。 1.2.4 機械臂的控制算法應(yīng)用于機械臂系統(tǒng)控制方法多種多樣,包括傳統(tǒng)的 PID 控制,現(xiàn)代控制的軌跡控制、模糊控制、自適應(yīng)控制等。PID 控制的實用性很強。只要三個參數(shù)配合適當(dāng),便可實現(xiàn)速敏捷、平穩(wěn)準(zhǔn)確的控制。工業(yè)生產(chǎn)上的機械臂經(jīng)常采用示教再現(xiàn)的方式。模糊控制和自適應(yīng)控制精度高,是現(xiàn)代控制領(lǐng)域中應(yīng)用廣泛的控制方法,尤其體現(xiàn)在軍工領(lǐng)域和航天領(lǐng)域中。機械臂的研究內(nèi)容除以上主要內(nèi)容外,智能化傳感器的應(yīng)用、機器人的編程語言以及
21、網(wǎng)絡(luò)通訊等技術(shù)對于機器人系統(tǒng)也有非常重要的意義。1.3 嵌入式系統(tǒng)簡介在一般情況下,嵌入式系統(tǒng)是“執(zhí)行特殊功能并受內(nèi)部控制器控制的設(shè)備或系統(tǒng)”,即“嵌入到對象體系內(nèi)的特定計算機系統(tǒng)”?!扒度胄浴?、“專用性”與“計算機系統(tǒng)”是嵌入式系統(tǒng)的三個基本要素。它主要負(fù)責(zé)信號的控制,體積小,可作為一個部件嵌入到所控制的裝置中。它提供用戶接口、有關(guān)管理信息的輸入輸出等,使設(shè)備及應(yīng)用系統(tǒng)有較高的智能和性價比。進(jìn)入微型計算機機時代后,科技人員開始了嵌入式系統(tǒng)的研究,之后迅速進(jìn)入到獨立發(fā)展的單片機時代,隨后又迅速進(jìn)入到電子技術(shù) 東北大學(xué)秦皇島分校畢業(yè)設(shè)計(論文) 第 5 頁領(lǐng)域中15。嵌入式技術(shù)的發(fā)展不僅使機器人
22、在微型化、智能化等方面具有更明顯的優(yōu)勢,同時又使機器人的價格大幅降低,實現(xiàn)了機器人在更多領(lǐng)域廣泛的應(yīng)用。1.4 本文的主要工作該設(shè)計主要負(fù)責(zé)四自由度機械臂控制系統(tǒng)相應(yīng)的軟件、硬件的設(shè)計與開發(fā)。該設(shè)計以四自由度機械臂為控制基礎(chǔ),以 STM32F103ZET6 為主控芯片,設(shè)計的機械臂控制系統(tǒng),控制精度較高,穩(wěn)定性較強,具體的內(nèi)容包括如下幾個方面:1.對機械臂系統(tǒng)的硬件設(shè)計進(jìn)行分析,具體的電路以及芯片的選擇進(jìn)行了較為詳細(xì)的介紹,并對其可靠性進(jìn)行了深入的分析。2.對舵機的控制理論進(jìn)行了深入的研究,分析討論了控制系統(tǒng)所涉及的主控芯片。3.根據(jù)四自由度機械臂需要完成的工作任務(wù),編寫了系統(tǒng)的軟件控制程序,
23、對初始化、運行等模塊展開了較為詳細(xì)的介紹,之后對整個系統(tǒng)進(jìn)行了反復(fù)的調(diào)試,調(diào)試結(jié)果表明,所設(shè)計的機械臂控制系統(tǒng)可以實現(xiàn)較為精確的控制。 東北大學(xué)秦皇島分校畢業(yè)設(shè)計(論文) 第 6 頁2 機械臂控制系統(tǒng)的總體方案設(shè)計2.1 機械臂的機械結(jié)構(gòu)設(shè)計2.1.1 臂部結(jié)構(gòu)設(shè)計原則作為機械臂的一個重要組成部分,手臂不僅起到支撐被抓物體、手爪和其他關(guān)節(jié)的作用,而且還可以驅(qū)動手爪抓取物體,并根據(jù)事先預(yù)定的位置將物體搬運到指定地點16。機械臂的結(jié)構(gòu)形式必須基于其運動形式、動作自由度、抓取質(zhì)量、受力情況和其他的因素來確定,整個系統(tǒng)的總質(zhì)量比較大,受力也比較復(fù)雜,其運動部件的質(zhì)量直接影響到機械臂的剛度和強度。所以,
24、進(jìn)行手臂的設(shè)計時,一般應(yīng)注意下述要求:(1)剛度要大。為了避免機械臂在運動過程中發(fā)生較大的形變,要合理選擇手臂的截面形狀。(2)導(dǎo)向性要好。為了避免機械臂在運動過程中發(fā)生不必要的相對運動,臂桿最好設(shè)計成方形或是花鍵等形式。(3)偏重力矩要小。要盡可能減小機械臂運動部分的質(zhì)量。該設(shè)計根據(jù)機械臂的功能及搬運工作的任務(wù)的特點以及類型,為了使其在一定程度上具有操作的靈活性和運行性能的良好,經(jīng)過多次的比較、討論后,該設(shè)計選用多關(guān)節(jié)型的機械臂,它不僅具有動作的角度大的優(yōu)點,還可以使機械臂在更大的空間內(nèi)的運動。2.1.2 機械臂自由度的確定機械臂的自由度是一個非常重要的參數(shù),取決于機械臂的類型及其結(jié)構(gòu),并且
25、在很大程度上直接決定到機械臂能否完成預(yù)定的任務(wù)。一般來說是根據(jù)機械臂的用途來設(shè)計機械臂的自由度。自由度越多的機械臂,具有更大的運動的靈活性,通用性也越強,但結(jié)構(gòu)較復(fù)雜,難以實現(xiàn)。所設(shè)計的搬運機械臂采用四個自由度就可以完成設(shè)定的搬運任務(wù)。其中機械臂的 東北大學(xué)秦皇島分校畢業(yè)設(shè)計(論文) 第 7 頁手臂的旋轉(zhuǎn)關(guān)節(jié)包括腰關(guān)節(jié)、肩關(guān)節(jié)、肘關(guān)節(jié)和腕關(guān)節(jié)四個關(guān)節(jié)以及末端手爪的開合。2.2 工作對象簡介在工業(yè)現(xiàn)場采用機械臂進(jìn)行的工作對象中袋裝物品和箱裝物品較為是常見的。在一般的情況下,箱裝物品由于具有規(guī)則的外形,多使用吸附式的手爪;而袋裝物品由于具有極易產(chǎn)生形變的特點,多使用夾鉗式或者插板式的手爪。在該設(shè)計
26、中,由于受機械臂硬件條件的限制,選擇夾鉗式的手爪搬運箱裝物品。模擬的箱裝物品的長、寬、高分別是 55mm、36mm 和 30mm。在進(jìn)行工作對象的選擇過程中,共有 3 種型號可供選擇。其中長、寬、高分別是40mm、36mm、和 30mm 的工作對象由于超聲波傳感器的反射面較小,所以當(dāng)其已經(jīng)運動到指定搬運位置時,傳感器不能準(zhǔn)確的檢測到物體,所以控制精度不夠高,放棄采用。而長、寬、高分別是 65mm、36mm 和 30mm 的工作對象對于該手爪來說尺寸較大,在抓取和搬運的過程中經(jīng)常出現(xiàn)掉落的現(xiàn)象,所以沒有采用。2.3 機械臂關(guān)節(jié)控制的總體方案2.3.1 機械臂控制器類型的確定作為機械臂的心臟,機械
27、臂控制器是根據(jù)程序指令和從傳感器獲得的傳感信息來控制機械臂完成事先預(yù)定的動作或任務(wù)的裝置,控制器的性能決定了機械臂控制性能的好壞。從計算機結(jié)構(gòu)、控制方式方面來劃分,機械臂控制器大約可分為 3 種:單CPU 集中控制方式、多 CPU 分布式控制方式、二級 CPU 主從式控制方式。(1)單 CPU 集中控制方式:單 CPU 集中控制系統(tǒng)必須是一個強大的控制系統(tǒng),它的全部控制功能是用一臺功能強大的計算機實現(xiàn)的。Hero-、Robot- 等這些時代較早的機器人采用的就是這種單 CPU 集中控制方式的結(jié)構(gòu),但由于在控制的過程中需要進(jìn)行大量的計算,因此這種控制方式的控制速度一般比較慢。(2)多 CPU 分
28、布式控制方式:多 CPU 分布式控制系統(tǒng)的最大特點就是一個CPU 負(fù)責(zé)控制一個關(guān)節(jié)軸,同時在上位機與單軸控制的 CPU 之間設(shè)計了一個并行接口,其主要負(fù)責(zé)上、下位機的通信,從而保證了數(shù)據(jù)的可靠傳輸。(3)二級主從式控制方式:該控制方式需要主從兩個 CPU,即上位機和下位的單 東北大學(xué)秦皇島分校畢業(yè)設(shè)計(論文) 第 8 頁片機兩層結(jié)構(gòu)。上位機負(fù)責(zé)運動軌跡的規(guī)劃、運動學(xué)計算等任務(wù),根據(jù)預(yù)定的位置,計算出各個關(guān)節(jié)的運動量,以指令形式傳送給下位的微處理器。下位的微處理器根據(jù)指令對各關(guān)節(jié)進(jìn)行運動控制。本課題所設(shè)計的機械臂系統(tǒng)基于 STM32 微處理器,利用 STM32 強大的運算和處理能力,采用單 CP
29、U 集中控制方式即可滿足要求。2.3.2 機械臂控制系統(tǒng)結(jié)構(gòu)本課題研究的機械臂控制系統(tǒng)采用單 CPU 集中控制方式,系統(tǒng)框圖如下:圖 2.1 機械臂控制系統(tǒng)結(jié)構(gòu)圖計算機用于完成整個系統(tǒng)的管理、發(fā)送指令、運動軌跡規(guī)劃等。計算機通過 J-Link仿真器將程序下載至 STM32 微處理器,向關(guān)節(jié)控制系統(tǒng)發(fā)出位置指令,STM32 根據(jù)指令輸出 PWM 波,從而使機械臂的各個關(guān)節(jié)轉(zhuǎn)過指定的角度,進(jìn)而使其按照預(yù)定的軌跡完成搬運任務(wù)。2.3.3 關(guān)節(jié)控制系統(tǒng)的控制策略本課題設(shè)計的機械臂關(guān)節(jié)控制系統(tǒng)以 STM32 微處理器為核心,對直流伺服電機(舵機)進(jìn)行較為精確的運動控制。關(guān)節(jié)控制系統(tǒng)的工作原理是:STM3
30、2 微處理器內(nèi)部的 PWM 單元產(chǎn)生 PWM 信號,驅(qū)動直流伺服電機旋轉(zhuǎn)。電機驅(qū)動舵機內(nèi)部的齒輪組,其輸出端帶動一個線性的比例電位器作為位置檢測,該電位器把轉(zhuǎn)角坐標(biāo)轉(zhuǎn)換為一比例電壓反饋給控制線路板,控制線路板將其與輸入的控制脈沖信號比較,產(chǎn)生糾正脈沖,并驅(qū)動電機正向或者反向的轉(zhuǎn)動,使齒輪組的輸出位置與期望值相符,令糾正脈沖最終趨于為 0,從而達(dá)到使伺服電機的精確定位17。計算機J-Link仿真器舵機關(guān)節(jié)執(zhí)行機構(gòu)STM32關(guān)節(jié)控制系統(tǒng) 東北大學(xué)秦皇島分校畢業(yè)設(shè)計(論文) 第 9 頁該關(guān)節(jié)控制系統(tǒng)的主要特點如下:(1)使用以 Contex-M3 為內(nèi)核的 STM32F103ZET6 作為系統(tǒng)的微控
31、制器,與傳統(tǒng)的 51 單片機相比起來,具有功耗小,運算能力大大增強的優(yōu)點。(2)采用直流伺服電機驅(qū)動機械臂的各個關(guān)節(jié),根據(jù) STM32 微控制器輸出的PWM 控制信號的占空比來確定直流電動機的轉(zhuǎn)速和轉(zhuǎn)向,控制起來簡單,準(zhǔn)確。2.4 本章小結(jié)本章介紹了 4 自由度機械臂的結(jié)構(gòu)形式,根據(jù)腰關(guān)節(jié)、肩關(guān)節(jié)、肘關(guān)節(jié)和腕關(guān)節(jié)4 個旋轉(zhuǎn)關(guān)節(jié)的運動特點,從整體上確定了該機械臂控制系統(tǒng)的控制方案。首先確定了該關(guān)節(jié)控制系統(tǒng)采用單 CPU 集中控制方式,然后說明了關(guān)節(jié)控制系統(tǒng)的工作原理,最后介紹了本設(shè)計的關(guān)節(jié)控制系統(tǒng)的一些主要特點。 東北大學(xué)秦皇島分校畢業(yè)設(shè)計(論文) 第 10 頁3 機械臂控制系統(tǒng)硬件設(shè)計3.1
32、機械臂控制系統(tǒng)概述機械臂控制系統(tǒng)通常要滿足如下幾個基本的要求:(1)控制系統(tǒng)的微型化、輕型化和模塊化。因為機械臂的控制系統(tǒng)是安裝在機械臂上的,所以為了安裝的方便和減輕機械臂的負(fù)載,控制系統(tǒng)應(yīng)盡可能實現(xiàn)微型化和輕型化;另外,為了達(dá)到系統(tǒng)的各單元之間有要求的獨立性的目的,要盡量實現(xiàn)模塊化。(2)控制系統(tǒng)的實時性。為了滿足機械臂的輸入輸出信息量大,并且計算量大,同時要保證較高的控制精度的要求,機械臂控制系統(tǒng)必須具有較好的實時性。(3)系統(tǒng)的穩(wěn)定性和開放性。穩(wěn)定是保證系統(tǒng)正常運行的前提和保證,所以機械臂控制系統(tǒng)必須具有一定的穩(wěn)定性以保證系統(tǒng)的低故障率。此外,為了實現(xiàn)控制系統(tǒng)以后的改進(jìn)和可以方便的移植到
33、其他的位置,這就要求控制系統(tǒng)具有好的開放性18。該機械臂控制系統(tǒng)由主控制模塊、電機驅(qū)動模塊和電源模塊組成,每個子模塊的功能如下:主控制模塊:作為該控制系統(tǒng)的核心,包括 ARM Cortex-M3 內(nèi)核和有關(guān)外圍電路,主要負(fù)責(zé)完成 PWM 波(控制信號)的輸出。驅(qū)動模塊:負(fù)責(zé)機械臂各個關(guān)節(jié)的驅(qū)動,由舵機組成。電源模塊:機械臂控制系統(tǒng)采用雙電源供電模式,STM32 單片機經(jīng)過 AMS1117-3.3V 穩(wěn)壓芯片供電,舵機驅(qū)動模塊采用 7.2V 可充電電池經(jīng) LM2596 DC-DC 可調(diào)降壓模塊實現(xiàn)供電。3.2 微處理器選型微控制器作為機械臂運動控制系統(tǒng)的核心,其性能對控制效果起著至關(guān)重要的作用,
34、因此高性能的 CPU 是必需的。微控制器的選擇對機械臂系統(tǒng)的設(shè)計影響很大,所以要在具體分析了該控制系統(tǒng)的特點和要求后選擇合適的微控制器,應(yīng)基于整個系統(tǒng) 東北大學(xué)秦皇島分校畢業(yè)設(shè)計(論文) 第 11 頁的控制速度及其智能水平兩個方面,以如下幾個方面為重點進(jìn)行微控制器的選擇:系統(tǒng)時鐘速度運算速度功能電機控制方式ROM 及 ROM 的大小控制板的結(jié)構(gòu)尺寸目前,應(yīng)用于機械臂的微控制器有很多種,最廣泛的有 8/16 位單片機和數(shù)字信號處理器兩種。選擇 8/16 位單片機進(jìn)行控制系統(tǒng)的設(shè)計簡單,開發(fā)周期較短,但數(shù)據(jù)處理能力弱,需要附加很多的外部設(shè)備如 PID 調(diào)節(jié)器和 PWM 發(fā)生器等才能完成較為復(fù)雜的控
35、制,而且系統(tǒng)的穩(wěn)定性不強,開發(fā)板尺寸較大。相比于 8/16 位單片機,數(shù)字信號處理器具有處理能力強、速度快、開發(fā)板體積小等特點,但在中斷處理、位處理方面,DSP 不如單片機的資料多,而且芯片的價格以及其相應(yīng)的開發(fā)軟件也比較貴,針對性性比較強,但是通用性一般比較差。具有同等性能的 ARM 微處理器與 DSP 相比,資源更加的豐富,通用性明顯增強,它所具有的處理速度快、性價比高、功耗低等優(yōu)點使其得到了廣泛的應(yīng)用。雖然作為32 位的微處理器,但是由于 ARM 內(nèi)部具有 16 位的 Thumb 指令集,這使其能夠作為16 位的單片機使用,卻擁有了 32 位單片機的處理速度。所以,用單片機和 DSP 實
36、現(xiàn)的系統(tǒng),ARM 都可以實現(xiàn)。在上述分析的基礎(chǔ)上,經(jīng)過反復(fù)比較,本設(shè)計采用意法半導(dǎo)體公司的 STM32 處理器,如圖 3.1 所示。STM32F103ZET6 是基于 32 位 ARM Cortex-M3 內(nèi)核的微處理器,不但支持實時仿真,而且嵌入了 512KB 的高速閃存。CPU 的最高工作頻率為72MHz,支持 Thumb-2。 東北大學(xué)秦皇島分校畢業(yè)設(shè)計(論文) 第 12 頁圖 3.1 STM32STM32 的主要特性如下1922:內(nèi)核為 ARM32 位的 Cortex-M3 CPU:存儲器:512KB 的閃存程序存儲器; 64KB 的 SRAM;帶 4 個片選的靜態(tài)存儲器控制器。支持
37、CF 卡、SRAM、PSRAM、NOR 和 NAND存儲器。時鐘、復(fù)位和電源管理:低功耗:3 個 12 位的模/數(shù)轉(zhuǎn)換器:3 倍采樣和保持功能;溫度傳感器。2 通道 12 位 D/A 轉(zhuǎn)換器。12 通道 DMA 控制器:調(diào)試模式:串行單線調(diào)試和 JTAG 接口;Cottex-M3 內(nèi)嵌跟蹤模塊。112 個快速 I/O 端口。11 個定時器。13 個通信接口。CRC 計算單元,96 位的芯片唯一代碼。 東北大學(xué)秦皇島分校畢業(yè)設(shè)計(論文) 第 13 頁3.3 主控制模塊設(shè)計該設(shè)計的主控制模塊的硬件系統(tǒng)包括電源電路、復(fù)位電路、系統(tǒng)時鐘電路以及 JTAG 調(diào)試電路四大組成部分。3.3.1 電源電路在硬
38、件電路的設(shè)計中,電源模塊的設(shè)計是非常重要的,如果不能妥善處理,不但會使電路不能正常工作,嚴(yán)重的還可能燒毀電路。因此,在設(shè)計電源時務(wù)必要注意如下幾點:(1)交流輸入和直流輸出盡可能保持更大的距離;(2)地線要足夠粗,單點和多點相結(jié)合,同時分離模擬地和數(shù)字地;(3)散熱要好,布局應(yīng)合適;圖 3.2 電源電路圖STM32 開發(fā)板支持的供電方式主要有 3 種,分別是:USB 接口供電,最大為 500mA外部直流 5V 供電JLINK V8 電源,包括兩種方式 5V 和 3.3V 如上圖所示,當(dāng)電源開關(guān)撥到下面時,開發(fā)板由外部接口供電。板上的電源轉(zhuǎn)換芯片將 USB 接口輸入的 5V 電源轉(zhuǎn)換成 3.3V
39、 的電源,給處理器和相關(guān)外圍電路供電。當(dāng)電源開關(guān)撥到上面時,開發(fā)板由 USB 接口供電。板上的電源轉(zhuǎn)換芯片將 USB接口輸入的 5V 電源轉(zhuǎn)換成 3.3V 的電源,給處理器和相關(guān)外圍電路供電。3.3.2 復(fù)位電路 東北大學(xué)秦皇島分校畢業(yè)設(shè)計(論文) 第 14 頁圖 3.3 復(fù)位電路圖如上圖所示,B1 為整個板的復(fù)位按鈕,當(dāng)按鈕被按下時,STM32 處理器、液晶、以太網(wǎng)和音頻解碼芯片等都將復(fù)位。3.3.3 時鐘電路STM32 的 VBAT 的供電是由 CR1220 紐扣電池以及外部電源混合完成的,在有外部電源(VCC3.3)的情況下,CR1220 紐扣電池不給 VBAT 供電而由外部電源實現(xiàn)供電
40、。但是,當(dāng)外部電源斷開的情況下, CR1220 紐扣電池負(fù)責(zé)給 VBAT 供電。這樣,VBAT 總是有電的,以保證 RTC 的走時以及后備寄存器的內(nèi)容不丟失。相關(guān)電路如下:圖 3.4 時鐘電路圖3.3.4 JTAG 調(diào)試電路軟件程序的編寫通常是需要多次的修改才適用的,因此一些比較先進(jìn)的調(diào)試手段 東北大學(xué)秦皇島分校畢業(yè)設(shè)計(論文) 第 15 頁便應(yīng)運而生。JTAG 仿真調(diào)試手段作為其中的一種,是由 ARM 公司提出的。如下圖所示:圖 3.5 JTAG 調(diào)試電路圖通過 JTAG 接口,我們可以燒錄和調(diào)試程序,開發(fā)板的 JTAG 接口的硬件連接如上圖所示,可以與目前主流的 JLINK V8 仿真器配
41、合使用。3.4 驅(qū)動模塊設(shè)計該機械臂控制系統(tǒng)包括四個旋轉(zhuǎn)的腰關(guān)節(jié)、肩關(guān)節(jié)、肘關(guān)節(jié)和腕關(guān)節(jié),以及末端手爪的運動,相應(yīng)的要五個動力源才能完成目標(biāo)作業(yè)。如第一章所述,廣泛使用的驅(qū)動方式主要包括液壓驅(qū)動、氣壓驅(qū)動和電機驅(qū)動。三者各有自己的優(yōu)點和缺點,通常對機械臂的驅(qū)動系統(tǒng)的要求有:(1)驅(qū)動系統(tǒng)的質(zhì)量不應(yīng)太重,效率也應(yīng)較高;(2)響應(yīng)速度快;(3)動作靈活,位移偏差以及速度偏差均較?。唬?)安全可靠;(5)操作和維護(hù)方便;(6)經(jīng)濟合理,占地面積要盡可能的小?;谏鲜鲵?qū)動系統(tǒng)的特點和該機械臂驅(qū)動系統(tǒng)的設(shè)計要求,該設(shè)計選用直流伺服 東北大學(xué)秦皇島分校畢業(yè)設(shè)計(論文) 第 16 頁電機負(fù)責(zé)機械臂各個關(guān)節(jié)的
42、驅(qū)動。該設(shè)計選用的舵機型號為分別 MG995、MG945,如圖 3.2、3.3,其參數(shù)如下:MG995:(1)尺寸:40mm20mm36.5mm (2)重量:62g(3)技術(shù)參數(shù):無負(fù)載速度 0.17 秒/60 度(4.8V) 、0.13 秒/60 度(6.0V) (4)扭矩:13KG (5)使用溫度:-30+60 攝氏度 (6)死區(qū)設(shè)定:4 微秒 (7)工作電壓:3.0V-7.2V圖 3.6 MG995 舵機MG945:(1)尺寸:40mm20mm36.5mm (2)重量:70g(3)技術(shù)參數(shù):無負(fù)載速度 0.23 秒/60 度(4.8V) 、0.20 秒/60 度(6.0V) (4)扭矩:
43、13KG (5)使用溫度:-30+60 攝氏度 (6)死區(qū)設(shè)定:5 微秒 (7)工作電壓:4.8V-7.2V圖 3.7 MG945 舵機 東北大學(xué)秦皇島分校畢業(yè)設(shè)計(論文) 第 17 頁一般來說,舵機是由舵盤、減速齒輪組、位置反饋電位計、直流電機、控制電路板等幾個重要部分組成的。信號線把來自于微控制器的控制信號傳輸?shù)蕉鏅C的控制電路板,控制電路板根據(jù)相應(yīng)的控制信號控制電機的轉(zhuǎn)動,同時電機帶動齒輪組隨之轉(zhuǎn)動,經(jīng)減速機構(gòu)減速后傳動到輸出舵盤。由于舵機的輸出軸和位置反饋電位計是連接在一起的,所以在舵盤轉(zhuǎn)動的時候會帶動位置反饋電位計,電位計根據(jù)當(dāng)前位置將一個電壓信號反饋到控制電路板,然后控制電路板根據(jù)電
44、位計反饋回來的數(shù)據(jù)決定電機后續(xù)的轉(zhuǎn)動方向和速度,從而使舵機運動到指定的位置后停止運動,可以實現(xiàn)對位置的精確控制。3.5 電源模塊設(shè)計機械臂控制系統(tǒng)采用雙電源供電模式,STM32 單片機經(jīng)過 AMS1117-3.3V 穩(wěn)壓芯片供電,舵機驅(qū)動模塊采用 7.2V 可充電電池經(jīng) LM2596 DC-DC 可調(diào)降壓模塊實現(xiàn)供電。AMS1117 是正向低壓降的穩(wěn)壓器,在 1A 電流下產(chǎn)生 1.2V 的壓降。它的內(nèi)部所集成有過熱保護(hù)和限流電路,因此是電池供電和便攜式計算機的最佳選擇。其特點是:固定的 3.3V 輸出電壓,具有 1的精度;低漏失電壓;限流功能;過熱切斷;溫度范圍-40C 125C。經(jīng)常被應(yīng)用于
45、筆記本電腦,掌上電腦,電池充電器,手機,電池供電系統(tǒng),便攜式設(shè)備等。由 AMS1117-3.3V 芯片構(gòu)成的 3.3V 穩(wěn)壓電路如圖 3.8 所示。 東北大學(xué)秦皇島分校畢業(yè)設(shè)計(論文) 第 18 頁圖 3.8 3.3V 穩(wěn)壓電路LM2596 開關(guān)電壓調(diào)節(jié)器是降壓型電源管理單片集成電路,可以輸出最高達(dá) 3A 的驅(qū)動電流,同時也有良好的線性和負(fù)載調(diào)節(jié)特性??烧{(diào)型的 LM2596 甚至可以輸出低于 37V 的各種電壓。LM2596 的特性如下:輸出電壓可調(diào),可調(diào)范圍為 1.2V37V,誤差范圍 4%;輸出特性有良好的線性,并且負(fù)載可以調(diào)節(jié);驅(qū)動能力較強,輸出電流可高達(dá) 3A,輸入電壓可高達(dá) 40V;
46、采用 150kHz 的內(nèi)部振蕩頻率,屬于第二代開關(guān)電壓調(diào)節(jié)器;功耗小、效率高,具有過熱保護(hù)和限流保護(hù)功能等。常用于高效率降壓調(diào)節(jié)器,單片開關(guān)電壓調(diào)節(jié)器,正、負(fù)電壓轉(zhuǎn)換器等。由 LM2596 構(gòu)成的 5V 穩(wěn)壓電路如圖 3.9 所示。圖 3.9 5V 穩(wěn)壓電路3.6 傳感器模塊設(shè)計 東北大學(xué)秦皇島分校畢業(yè)設(shè)計(論文) 第 19 頁本設(shè)計采用 HC-SR04 超聲波測距模塊,檢測物體距離超聲波傳感器的距離。當(dāng)物體到達(dá)指定位置時,控制器發(fā)出指令,使機械臂完成動作。HC-SR04 超聲波測距模塊由超聲波發(fā)射器、超聲波接收器與控制電路等三部分組成。它的基本工作原理如下:首先,采用 TRIG 端口觸發(fā)測距
47、信號,產(chǎn)生至少 10s 的高電平信號;然后,超聲波發(fā)射器自動發(fā)送 8 個 40KHz 的方波信號,接收器檢測是否有反射的信號返回;如果有信號返回,超聲波模塊通過 ECHO 端口輸出一個高電平,高電平的持續(xù)時間就是超聲波從發(fā)射到返回的時間。其時序圖如下。圖 3.10 超聲波時序圖3.7 本章小結(jié)本章首先對機械臂的關(guān)節(jié)控制系統(tǒng)的硬件組成進(jìn)行了說明,然后按照模塊化的設(shè)計思想,分別對以 ARM 微處理器 STM32F103ZET6 為核心的主控制模塊、由直流伺服電機組成的驅(qū)動模塊和采用 7.2V 可充電電池、AMS1117-3.3V 穩(wěn)壓芯片和 LM2596 DC-DC 可調(diào)降壓模塊組成的電源模塊和超
48、聲波傳感器模塊的工作原理和設(shè)計進(jìn)行了仔細(xì)的分析和討論,并給出了相應(yīng)模塊的實際的電路圖或原理圖。 東北大學(xué)秦皇島分校畢業(yè)設(shè)計(論文) 第 20 頁4 機械臂控制系統(tǒng)軟件設(shè)計如果將硬件比作是機械臂控制系統(tǒng)的身體,那么就可以把軟件比作是是整個控制系統(tǒng)的大腦,將連接人的思維與系統(tǒng)硬件連接在一起。軟件系統(tǒng)的優(yōu)劣關(guān)系到整個機械手系統(tǒng)的正常運行、硬件功能的發(fā)揮以及控制性能的優(yōu)劣等23。因此,在進(jìn)行軟件程序的設(shè)計之前,必須要先了解整個機械臂控制系統(tǒng)的基本要求,主要有以下三點要求:(1)實時性:電機控制一般都是實時控制,那么,軟件就必須是實時控制軟件。實時意味著計算機必須在一定的期限內(nèi),完成一系列的處理過程。(
49、2)可靠性:可靠性是指在運行過程中,系統(tǒng)防止故障發(fā)生,以及故障發(fā)生后排除解決故障的能力。因此,為了提高軟件的可靠性,在軟件設(shè)計過程中必須充分考慮電機在運行中出現(xiàn)的不正?,F(xiàn)象。(3)維護(hù)方便:好的控制軟件不是一次設(shè)計、調(diào)試就可以應(yīng)用的,往往是一邊設(shè)計一邊調(diào)試,經(jīng)過多次修改才能達(dá)到控制要求。所以在開始整體設(shè)計時,就必須有好的結(jié)構(gòu),以提高軟件調(diào)試的效率,并保證完成的軟件具有結(jié)構(gòu)簡單、清晰的優(yōu)點。為了能夠使系統(tǒng)調(diào)試更加順利以及功能擴展更加方便,該機械臂控制系統(tǒng)的軟件采用模塊化結(jié)構(gòu)設(shè)計,包括系統(tǒng)時鐘與 Systick 定時器模塊,串口通訊模塊,PWM(TIM2)波輸出模塊,超聲波傳感器模塊和計數(shù)(TIM
50、4,NVIC)模塊。主程序分為初始化和運行兩個模塊,在程序上電后初始化模塊運行一次,運行模塊主要用于電機的控制。4.1 初始化模塊設(shè)計初始化模塊主要負(fù)責(zé)完成如下工作:系統(tǒng)時鐘控制寄存器 RCC 的配置, SysTick 定時器,TIM 定時器,通用輸入輸出接口 GPIO ,嵌套向量中斷控制器 NVIC, PWM 波輸出,超聲波傳感器模塊的初始化。采用庫函數(shù)進(jìn)行編程。4.1.1 系統(tǒng)時鐘控制 東北大學(xué)秦皇島分校畢業(yè)設(shè)計(論文) 第 21 頁STM32 CPU 的時鐘源可以來自內(nèi)部高速振蕩器(HSI)、外部高速振蕩器(HSE)或者內(nèi)部鎖相環(huán)(PLL)。鎖相環(huán)需要以 HSI 或 HSE 作為時鐘來源
51、,兩者的差別在于內(nèi)部高速震蕩器 HSI 不能產(chǎn)生穩(wěn)定的 8MHz 的時鐘頻率。為了獲得最大的工作頻率,都會通過鎖相環(huán)配置出最大的 72MHz 頻率,供給 Cortex-M3 內(nèi)核使用。在復(fù)位操作之后,首先開啟 HSE 并等待其穩(wěn)定,從而作為 PLL 的輸入。其次,確定鎖相環(huán)倍頻數(shù),使內(nèi)核工作在最大頻率下。該設(shè)計以 8MHz 的 HSE 作為時鐘源, PLL 倍頻數(shù)需要設(shè)置為 6 才能使 PLL 恰好輸出 48MHz 的頻率。在 PLL 設(shè)置好后,Cortex-M3 內(nèi)核就以 72MHz 的頻率運行了,此時,還需要通過改變總線控制寄存器設(shè)置 AHB 和 APB 總線頻率。 AHB 和 APB2
52、的最高頻率是72MHZ。APB1 的最高允許頻率是 36MHZ。 東北大學(xué)秦皇島分校畢業(yè)設(shè)計(論文) 第 22 頁圖 4.1 STM32 時鐘樹本部分的程序流程圖如下: 東北大學(xué)秦皇島分校畢業(yè)設(shè)計(論文) 第 23 頁圖 4.2 系統(tǒng)時鐘初始化流程圖與該流程圖相對應(yīng)的程序設(shè)計見附錄 C。4.1.2 SysTick 定時器SysTick ,即系統(tǒng)節(jié)拍時鐘,它作為 ARM Cortex-M3 內(nèi)核的一個內(nèi)設(shè),和 STM32微控制器之間并沒有必然的聯(lián)系。SysTick 的存在既能夠提供必要的系統(tǒng)節(jié)拍,為實時操作系統(tǒng)的任務(wù)調(diào)度提供一個有節(jié)奏的“心跳”,進(jìn)而提高可靠性,又方便了程序在不同器件間的移植。開
53、始復(fù)位系統(tǒng)時鐘設(shè)置開啟外部振蕩器 HSE是否成功起振并穩(wěn)定?YN選擇 AHB,APB1,APB2 頻率使能鎖相環(huán) PLL等待 PLL 輸出穩(wěn)定,成為時鐘源結(jié)束 東北大學(xué)秦皇島分校畢業(yè)設(shè)計(論文) 第 24 頁系統(tǒng)初始化時,RCC 通過 AHB 時鐘(HCLK)8 分頻后作為 Cortex 系統(tǒng)定時器(SysTick)的外部時鐘。通過對 SysTick 控制與狀態(tài)寄存器的設(shè)置,可選擇上述時鐘或Cortex(HCLK)時鐘作為 SysTick 時鐘。系統(tǒng)嘀嗒校準(zhǔn)值固定為 9000,當(dāng)系統(tǒng)嘀嗒時鐘設(shè)定為 9MHz(HCLK/8 的最大值),產(chǎn)生 1ms 時間基準(zhǔn)。本部分的程序流程圖如下:圖 4.3
54、SysTick 定時器初始化流程圖與該流程圖相對應(yīng)的的程序設(shè)計見附錄 C。4.1.3 TIM 定時器STM32 微控制器具備高級定時器 TIM1 和 TIM8 2 個,通用定時器TIM2、TIM3、TIM4 和 TIM5 4 個以及基本定時器 TIM6 和 TIM7 2 個,再加上 RTC 和 Systick 定時器,總數(shù)量達(dá)到了 10 個。基本定時器可以為用戶提供準(zhǔn)確的時間參考;通用定時器不僅具備時間參考功能,還具有輸入捕捉、輸出比較、單脈沖輸出、 PWM 輸出功能和正交編碼器的特點;高級定時器更是加入了可以產(chǎn)生帶死區(qū)控制的互補 PWM 信號、緊急制動、定時器同步開始設(shè)置 Systick 重
55、裝載時間失能 Systick 定時器設(shè)定中斷函數(shù),獲取節(jié)拍使能 Systick 定時器結(jié)束 東北大學(xué)秦皇島分校畢業(yè)設(shè)計(論文) 第 25 頁等高級特征,并最多可以輸出 6 路 PWM 信號,可謂是意法半導(dǎo)體賦予 STM32 的王牌。本設(shè)計采用 TIM2、TIM3 的 PWM 輸出功能和 TIM4 的計數(shù)功能。本部分的程序流程圖如下:圖 4.4 TIM 定時器初始化流程圖與該流程圖相對應(yīng)的的程序設(shè)計見附錄 C。4.1.4 通用輸入輸出接口 GPIOGPIO 可以說是 STM32 最常用的外設(shè)。STM32F103ZET6 提供多達(dá) 112 個雙向 GPIO ,分別分布在 AG 這 7 個端口中。每
56、個端口又包括 16 個 GPIO ,都可承受5V 的壓降。GPIO 可通過配置寄存器工作在如下 8 種模式:浮空輸入、帶上拉電阻的輸入、帶下拉電阻的輸入、模擬輸入;開漏輸出、推挽輸出、復(fù)用推挽輸出、復(fù)用開漏輸出。該設(shè)計中將 PA0、PA1、PA2、PA3、PA6 作為 PWM 波的輸出口;PA4、PA5 作開始配置 PWM 輸出引腳設(shè)置定時器 TIM2 各輸出通道占空比設(shè)置定時器 TIM3 輸出通道 1 占空比延時 1000ms,等待手臂初始化完成設(shè)置定時器 TIM4 計數(shù)模式結(jié)束 東北大學(xué)秦皇島分校畢業(yè)設(shè)計(論文) 第 26 頁為 LED 顯示接口;PA7、PA8 作為超聲波傳感器信號的接收
57、發(fā)送接口;PB6、PB7 分別作為串口的發(fā)送接收接口。4.1.5 超聲波傳感器模塊首先,STM32 的 PA7 端口接超聲波傳感器的 TRIG 口,觸發(fā)測距信號,發(fā)出10us 的高電平信號;然后,超聲波發(fā)射器自動發(fā)送 8 個 40KHz 的方波,接收器檢測返回信號;然后,PA8 端口接的 ECHO 發(fā)給 STM32 微控制器一個高電平,用 TIM4 來測量高電平的持續(xù)時間。本部分的程序流程圖如下:圖 4.5 超聲波模塊初始化流程圖與該流程圖相對應(yīng)的的程序設(shè)計見附錄 C。4.2 運行模塊設(shè)計運行模塊的主要任務(wù)是:控制器輸出 PWM 波控制舵機的轉(zhuǎn)向及角度,進(jìn)而實現(xiàn)對各個關(guān)節(jié)的位置控制。主要工作流
58、程為:在系統(tǒng)上電后,超聲波傳感器進(jìn)行循環(huán)掃描,檢測工件是否到開始配置超聲波模塊引腳配置并使能 TIM4觸發(fā)超聲波模塊發(fā)射方波,TIM4 開始計數(shù)觸發(fā)超聲波模塊收到反射波,TIM4 停止計數(shù)結(jié)束 東北大學(xué)秦皇島分校畢業(yè)設(shè)計(論文) 第 27 頁達(dá)指定位置,若到達(dá)指定位置,機械臂的各個關(guān)節(jié)開始運動,完成搬運動作,否則繼續(xù)掃描。完成一次搬運后,機械臂回到起始位置,進(jìn)入等待狀態(tài),直到下一次動作。流程圖如下: 東北大學(xué)秦皇島分校畢業(yè)設(shè)計(論文) 第 28 頁圖 4.6 系統(tǒng)流程圖運動子程序、宏定義和相關(guān)定義以及完整程序見附錄 C。4.3 本章小結(jié)本章首先介紹了軟件控制的總體思想,從宏觀上分為初始化模塊和
59、運行模塊;然后分別對各個模塊的程序進(jìn)行設(shè)計。其主要內(nèi)容包括:系統(tǒng)初始化程序設(shè)計和基于 PWM 波的舵機機制程序設(shè)計以及相應(yīng)的配置。將工件搬運到位置 1YY開始RCC,SysTick,TIM,NVIC,GPIO 初始化產(chǎn)生 PWM 波傳感器檢測物件到位N搬運到位置 1將工件搬運到位置 2Y搬運到位置 2N結(jié)束將工件搬運到位置 3N 東北大學(xué)秦皇島分校畢業(yè)設(shè)計(論文) 第 29 頁 東北大學(xué)秦皇島分校畢業(yè)設(shè)計(論文) 第 30 頁5 系統(tǒng)的整機調(diào)試作為開發(fā)過程中的重要環(huán)節(jié),系統(tǒng)整機調(diào)試對系統(tǒng)運行過程中控制效果的好或是壞有著至關(guān)重要的作用,所以,必須進(jìn)行系統(tǒng)軟件、硬件的調(diào)試。也就是說一個良好的機械臂
60、控制系統(tǒng)必須經(jīng)過系統(tǒng)調(diào)試才能達(dá)到控制系統(tǒng)預(yù)期的目的24。因為機械臂工作在高風(fēng)險的環(huán)境下,所以它必須是可靠的,對于這樣的硬件,其穩(wěn)定性要求必須很高。一般的情況下首先進(jìn)行硬件的調(diào)試,只有在確定了硬件電路正常的前提下,進(jìn)行軟件的調(diào)試才是有意義的。所以,硬件、軟件的調(diào)試在整個系統(tǒng)的調(diào)試過程中都是非常重要的。5.1 硬件調(diào)試控制系統(tǒng)的硬件主要包括如下幾部分:1.機械部分;2.電源及穩(wěn)壓模塊;3.直流伺服電機;4 超聲波傳感器;5 主控制器。對于機械部分,對應(yīng)原理圖,將機械部分以及舵機安裝起來,組裝成品,檢查零件安裝是否合適,松動要繼續(xù)固定,直到滿意為止。如圖 5.1 所示。 東北大學(xué)秦皇島分校畢業(yè)設(shè)計(
溫馨提示
- 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)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 學(xué)校貼磚合同范例
- 包地合同范例定金
- 青海農(nóng)牧科技職業(yè)學(xué)院《主任工作原理》2023-2024學(xué)年第一學(xué)期期末試卷
- 舞蹈培訓(xùn)指導(dǎo)合同范例
- 銀行客戶資金托管合同范例
- 2024至2030年中國超薄光電鼠標(biāo)行業(yè)投資前景及策略咨詢研究報告
- 環(huán)磷酸腺苷行業(yè)深度研究報告
- 2024年智能電動擋車器項目可行性研究報告
- 2024年帽子機項目可行性研究報告
- 產(chǎn)房護(hù)士培訓(xùn)的收獲與總結(jié)
- 美容護(hù)膚招商方案
- 新概念英語課件NCE1-lesson57-58(共21張)
- 《HSK標(biāo)準(zhǔn)教程1》第4課課件
- 國開2023秋《人文英語3》第5-8單元作文練習(xí)參考答案
- 水平四《排球正面雙手傳球》教學(xué)設(shè)計
- 測樹學(xué)完整分
- 私密項目商業(yè)計劃書
- 黑龍江省黑河北安市2024屆中考二模數(shù)學(xué)試題含解析
- 計算機系統(tǒng)權(quán)限修改審批表
- xx新農(nóng)村建設(shè)項目可行性研究報告(方案)
- 國企總經(jīng)理崗位聘任書范本
評論
0/150
提交評論