基于STM32的機(jī)械臂運(yùn)動(dòng)控制分析設(shè)計(jì)_第1頁(yè)
基于STM32的機(jī)械臂運(yùn)動(dòng)控制分析設(shè)計(jì)_第2頁(yè)
已閱讀5頁(yè),還剩22頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

1、機(jī)器人測(cè)大作業(yè)課程設(shè)計(jì)i課程設(shè)計(jì)名稱(chēng):基于STM32的機(jī)械臂運(yùn)動(dòng)控制分析設(shè)計(jì)專(zhuān)業(yè)班級(jí):自動(dòng)1302學(xué)生姓名:張鵬濤學(xué)號(hào):201323020219指導(dǎo)教師:曹毅課程設(shè)計(jì)時(shí)間:2016-4-282016-5-16指導(dǎo)教師意見(jiàn):成績(jī):簽名:年月日目錄IV機(jī)器人測(cè)控課程設(shè)計(jì)第一章運(yùn)動(dòng)模型建立V1.1弓言V1.2機(jī)器人運(yùn)動(dòng)學(xué)模型的建立V1.2.1運(yùn)動(dòng)學(xué)正解VII第二章機(jī)械臂控制系統(tǒng)的總體方案設(shè)計(jì)VIII2.1機(jī)械臂的機(jī)械結(jié)構(gòu)設(shè)計(jì)VIII2.1.1臂部結(jié)構(gòu)設(shè)計(jì)原則VIII2.1.2機(jī)械臂自由度的確定IX2.2機(jī)械臂關(guān)節(jié)控制的總體方案IX2.2.1機(jī)械臂控制器類(lèi)型的確定IX2.2.2 機(jī)械臂控制系統(tǒng)結(jié)構(gòu)X2

2、.2.3關(guān)節(jié)控制系統(tǒng)的控制策略X第三章機(jī)械臂控制系統(tǒng)硬件設(shè)計(jì)XI3.1機(jī)械臂控制系統(tǒng)概述XI3.2微處理器選型XII3.3主控制模塊設(shè)計(jì)XII3.3.1電源電路XII3.3.2復(fù)位電路XIII3.3.3時(shí)鐘電路XIII3.3.4JTAG調(diào)試電路XIV3.4驅(qū)動(dòng)模塊設(shè)計(jì)XV3.5電源模塊設(shè)計(jì)XVI第四章機(jī)械臂控制系統(tǒng)軟件設(shè)計(jì)XVII4.1初始化模塊設(shè)計(jì)XVII4.1.1系統(tǒng)時(shí)鐘控制XVII4.1.2 SysTick定時(shí)器XVIII4.1.3 TIM定時(shí)器XIX4.1.4通用輸入輸出接口GPIOXX4.1.5超聲波傳感器模塊XX總結(jié)XXII參考文獻(xiàn)XXIII附錄AXXIV附錄BXXVIII機(jī)器人測(cè)

3、控課程設(shè)計(jì)設(shè)計(jì)要求:設(shè)計(jì)一個(gè)兩連桿機(jī)械臂,具體參數(shù)自行設(shè)計(jì),建立其運(yùn)動(dòng)學(xué)模型,然后在此基礎(chǔ)上完成該機(jī)械臂兩點(diǎn)間的路徑規(guī)劃,并給出仿真結(jié)果。設(shè)計(jì)完成上述目標(biāo)的控制系統(tǒng),控制器可以自行選擇(單片機(jī),ARM,DSP,PLC等),其他硬件部分根據(jù)系統(tǒng)所需要完成的功能自行選擇,基本要求要體現(xiàn)系統(tǒng)的輸入,輸出信號(hào)和人機(jī)交互界面,畫(huà)出整個(gè)系統(tǒng)的硬件結(jié)構(gòu)(電路模塊,驅(qū)動(dòng)模塊,控制模塊等)和軟件部分。iii機(jī)器人測(cè)控課程設(shè)計(jì)摘要由于機(jī)械臂在各行各業(yè)中得到了愈來(lái)愈廣泛的應(yīng)用,機(jī)械臂控制的多樣化、復(fù)雜化的需要也隨之日趨增多。作為當(dāng)今科技領(lǐng)域研究的一個(gè)熱點(diǎn),提高機(jī)械臂的控制精度、穩(wěn)定性、操作靈活性對(duì)于提高其應(yīng)用水平有

4、著十分重要的意義。經(jīng)過(guò)仔細(xì)的分析和研究之后,我選擇的是STM32單片機(jī)進(jìn)行控制,而自由臂選擇工業(yè)中常見(jiàn)的四自由臂進(jìn)行設(shè)計(jì)和建模分析,運(yùn)動(dòng)的控制選用舵機(jī)進(jìn)行控制。首先根據(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ī)為主要器件,通過(guò)搭建硬件平臺(tái)和設(shè)計(jì)軟件控制程序構(gòu)建關(guān)節(jié)運(yùn)動(dòng)控制系統(tǒng)。然后按照結(jié)構(gòu)化設(shè)計(jì)的思想,依次對(duì)以上各部分的原理和設(shè)計(jì)方法進(jìn)行了分析和探討,給出了實(shí)際的原理圖和電路圖。在軟件設(shè)計(jì)方面,按照模塊化的

5、設(shè)計(jì)思想將控制程序分為初始化模塊和運(yùn)行模塊,并分別對(duì)各個(gè)模塊的程序進(jìn)行設(shè)計(jì)。關(guān)鍵詞:四自由度機(jī)械臂,STM32,運(yùn)動(dòng)模型,脈沖寬度調(diào)制8第一章運(yùn)動(dòng)模型建立1.1弓I言機(jī)器人運(yùn)動(dòng)學(xué)描述了機(jī)器人關(guān)節(jié)與組成機(jī)器人的各剛體之間的運(yùn)動(dòng)關(guān)系。機(jī)器人在工作時(shí),要通過(guò)空間中一系列的點(diǎn)組成的三維空間點(diǎn)域,這一系列空間點(diǎn)構(gòu)成了機(jī)器人的工作范圍,此工作范圍可通過(guò)運(yùn)動(dòng)學(xué)正解求得。此外,根據(jù)機(jī)器人末端執(zhí)行器的位置和姿態(tài)要求,通過(guò)運(yùn)動(dòng)學(xué)逆解求得各個(gè)關(guān)節(jié)轉(zhuǎn)角,可以實(shí)現(xiàn)對(duì)機(jī)器人進(jìn)行運(yùn)動(dòng)分析、離線編程、軌跡規(guī)劃等工作。機(jī)器人控制的目的就在于它能快速確定位置,這使得機(jī)器人的運(yùn)動(dòng)學(xué)正逆解問(wèn)題變得更為重要。只有計(jì)算與運(yùn)動(dòng)學(xué)正逆解問(wèn)題

6、相關(guān)的變換關(guān)系在盡可能短時(shí)間內(nèi)完成,才能達(dá)到快速準(zhǔn)確的目的。在運(yùn)動(dòng)學(xué)方程正解過(guò)程中,只體現(xiàn)在矩陣相乘關(guān)系上,相對(duì)簡(jiǎn)單。12機(jī)器人運(yùn)動(dòng)學(xué)模型的建立本文所研究的機(jī)器人由四個(gè)旋轉(zhuǎn)關(guān)節(jié)和四個(gè)連桿組成,故為四自由度機(jī)器人,如圖1.1所示。用齊次坐標(biāo)來(lái)描述機(jī)器人各連桿相對(duì)于參考坐標(biāo)系的空間幾何關(guān)系;用4x4的齊次變換矩陣來(lái)描述相鄰兩桿的空間幾何關(guān)系;從而推導(dǎo)出機(jī)器人手爪坐標(biāo)系相對(duì)于參考坐標(biāo)系的空間位姿關(guān)系,利用該法得到的D-H參數(shù)如表1所示。嗆0比-J1T-1呱叫1叫1班1叫】如一|.001連桿變換了表示連桿坐標(biāo)系i相對(duì)于i-1的變換,根據(jù)連桿變換的通式:(1)圖1.2機(jī)器人連桿坐標(biāo)系表1機(jī)器人連桿的D-

7、H參數(shù)i-1也關(guān)節(jié)變量范圉連桿參數(shù)/mm100-15-+90必=12020-90)02-30-+90旳=120300-60-+90d4=11040-90-180+180500偽0d,=120其中:cffi=cos仇;sOi=sin0i;cac;_T=cos_;=sin企fl-si00sicl0Q抄二001J_n001-得到各連桿之間的變換矩陣-乜0(T010-cl0000L(2)A機(jī)器人測(cè)控課程設(shè)計(jì)L3-i30叮c4-5400j3c3000014汀二0010-s4-e400.0001-0001一(3)1000-0100=001心-0001-(4)式中:sl,s2,s3,s4;cl,c2,cs3

8、,c4分別表示sin01,sin02,sin03,sin04;cosGl,cosG2,cosG3,cos04以下同。由矩陣(1)可知:連桿變換了依賴(lài)于打小.川四個(gè)參數(shù)和,其中只有一個(gè)參數(shù)是變化的,對(duì)于本文所研究的機(jī)器人,顯然只有為變量,其余三個(gè)參數(shù)為常量。1.2.1運(yùn)動(dòng)學(xué)正解機(jī)器人運(yùn)動(dòng)學(xué)正解指:在已知機(jī)器人各關(guān)節(jié)變量ei(i=1,.,n)的基礎(chǔ)上,求解出機(jī)器人末端執(zhí)行器的位置矢量p和姿態(tài)矢量n,o,a的過(guò)程。將連桿變換矩陣(2)(4)相乘,便得到了該機(jī)器人手爪的運(yùn)動(dòng)學(xué)方程二曽黑胃罠丁二汎丁二(5)現(xiàn)叫叫必+円Jay敗必+PX礪礪心+乩001其中,機(jī)器人手爪姿態(tài)方程為ni=cc2c3(A4-s1

9、x4n.=jIc2c3r4s1j2s3c4-cj4n.=-s2c3Hc2j3e4込=-clc2c3c4+cl52.k3.?4+a1c4Oj-51c2c3r4+jlj2s3*4-clo4+應(yīng)一訂屛t=ec2.f3cl.2c3皿、=-51c2s3-si.?2e3a.=,s23(?2(?3VI機(jī)器人測(cè)控課程設(shè)計(jì)機(jī)器人手爪的位置方程為px=clc2(-/4s3+a2)-d4clc2c3p、-sc2(-ds3+偽)一心$L$2r?3p.二-s2(-心3+a2)-d4c3c2+為檢驗(yàn)所得結(jié)果的正確性,取01=90,02=0,03=-90,04=0計(jì)算廠的值。結(jié)果為:0】00-ILO000與圖1所示機(jī)器人手

10、爪的位姿完全一致,表明所得結(jié)果正確。這樣只要知道關(guān)節(jié)變量01,02,03和,04的值,就可以完全確定機(jī)器人手爪的位置和姿態(tài)。第二章機(jī)械臂控制系統(tǒng)的總體方案設(shè)計(jì)21機(jī)械臂的機(jī)械結(jié)構(gòu)設(shè)計(jì)211臂部結(jié)構(gòu)設(shè)計(jì)原則作為機(jī)械臂的一個(gè)重要組成部分,手臂不僅起到支撐被抓物體、手爪和其他關(guān)節(jié)的作用,而且還可以驅(qū)動(dòng)手爪抓取物體,并根據(jù)事先預(yù)定的位置將物體搬運(yùn)到指定地點(diǎn)。機(jī)械臂的結(jié)構(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ī)械臂

11、在運(yùn)動(dòng)過(guò)程中發(fā)生較大的形變,要合理選擇手臂的截面形狀。(2) 導(dǎo)向性要好。為了避免機(jī)械臂在運(yùn)動(dòng)過(guò)程中發(fā)生不必要的相對(duì)運(yùn)動(dòng),臂桿最好設(shè)計(jì)成方形或是花鍵等形式。X機(jī)器人測(cè)控課程設(shè)計(jì)(3)偏重力矩要小。要盡可能減小機(jī)械臂運(yùn)動(dòng)部分的質(zhì)量。該設(shè)計(jì)根據(jù)機(jī)械臂的功能及搬運(yùn)工作的任務(wù)的特點(diǎn)以及類(lèi)型,為了使其在一定程度上具有操作的靈活性和運(yùn)行性能的良好,經(jīng)過(guò)多次的比較、討論后,該設(shè)計(jì)選用多關(guān)節(jié)型的機(jī)械臂,它不僅具有動(dòng)作的角度大的優(yōu)點(diǎn),還可以使機(jī)械臂在更大的空間內(nèi)的運(yùn)動(dòng)。2.1.2機(jī)械臂自由度的確定機(jī)械臂的自由度是一個(gè)非常重要的參數(shù),取決于機(jī)械臂的類(lèi)型及其結(jié)構(gòu),并且在很大程度上直接決定到機(jī)械臂能否完成預(yù)定的任務(wù)。

12、一般來(lái)說(shuō)是根據(jù)機(jī)械臂的用途來(lái)設(shè)計(jì)機(jī)械臂的自由度。自由度越多的機(jī)械臂,具有更大的運(yùn)動(dòng)的靈活性,通用性也越強(qiáng),但結(jié)構(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)合。22機(jī)械臂關(guān)節(jié)控制的總體方案2.2.1機(jī)械臂控制器類(lèi)型的確定作為機(jī)械臂的心臟,機(jī)械臂控制器是根據(jù)程序指令和從傳感器獲得的傳感信息來(lái)控制機(jī)械臂完成事先預(yù)定的動(dòng)作或任務(wù)的裝置,控制器的性能決定了機(jī)械臂控制性能的好壞。從計(jì)算機(jī)結(jié)構(gòu)、控制方式方面來(lái)劃分,機(jī)械臂控制器大約可分為3種:?jiǎn)蜟PU集中控制方式、多CPU分布式控制方式、二級(jí)

13、CPU主從式控制方式。(1) 單CPU集中控制方式:?jiǎn)蜟PU集中控制系統(tǒng)必須是一個(gè)強(qiáng)大的控制系統(tǒng),它的全部控制功能是用一臺(tái)功能強(qiáng)大的計(jì)算機(jī)實(shí)現(xiàn)的。Hero-丨、Robot-I等這些時(shí)代較早的機(jī)器人采用的就是這種單CPU集中控制方式的結(jié)構(gòu),但由于在控制的過(guò)程中需要進(jìn)行大量的計(jì)算,因此這種控制方式的控制速度一般比較慢。(2) 多CPU分布式控制方式:多CPU分布式控制系統(tǒng)的最大特點(diǎn)就是遣%fl當(dāng)衣辱一個(gè)CPU負(fù)責(zé)控制一個(gè)關(guān)節(jié)軸,機(jī)器人測(cè)控課程設(shè)計(jì)同時(shí)在上位機(jī)與單軸控制的CPU之間設(shè)計(jì)了一個(gè)并行接口,其主要負(fù)責(zé)上、下位機(jī)的通信,從而保證了數(shù)據(jù)的可靠傳輸。(3) 二級(jí)主從式控制方式:該控制方式需要主從

14、兩個(gè)CPU,即上位機(jī)和下位的單片機(jī)兩層結(jié)構(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集中控制方式即可滿(mǎn)足要求。2.2.2機(jī)械臂控制系統(tǒng)結(jié)構(gòu)本課題研究的機(jī)械臂控制系統(tǒng)采用單CPU集中控制方式,系統(tǒng)框圖如下:圖2.1機(jī)械臂控制系統(tǒng)結(jié)構(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ā)出位置指令,STM3

15、2根據(jù)指令輸出PWM波,從而使機(jī)械臂的各個(gè)關(guān)節(jié)轉(zhuǎn)過(guò)指定的角度,進(jìn)而使其按照預(yù)定的軌跡完成搬運(yùn)任務(wù)。2.2.3關(guān)節(jié)控制系統(tǒng)的控制策略本課題設(shè)計(jì)的機(jī)械臂關(guān)節(jié)控制系統(tǒng)以STM32微處理器為核心,對(duì)直流伺服電機(jī)(舵機(jī))進(jìn)行較為精確的運(yùn)動(dòng)控制。關(guān)節(jié)控制系統(tǒng)的工作原理是:STM32微處理器內(nèi)部的PWM單元產(chǎn)生PWMXII機(jī)器人測(cè)控課程設(shè)計(jì)信號(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),使齒輪組的輸出位置與期望值相符,令糾

16、正脈沖最終趨于為0,從而達(dá)到使伺服電機(jī)的精確定位17。該關(guān)節(jié)控制系統(tǒng)的主要特點(diǎn)如下:(1) 使用以Contex-M3為內(nèi)核的STM32F103ZET6作為系統(tǒng)的微控制器,與傳統(tǒng)的51單片機(jī)相比起來(lái),具有功耗小,運(yùn)算能力大大增強(qiáng)的優(yōu)點(diǎn)。(2) 采用直流伺服電機(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)確。第三章機(jī)械臂控制系統(tǒng)硬件設(shè)計(jì)31機(jī)械臂控制系統(tǒng)概述機(jī)械臂控制系統(tǒng)通常要滿(mǎn)足如下幾個(gè)基本的要求:(1) 控制系統(tǒng)的微型化、輕型化和模塊化。(2) 控制系統(tǒng)的實(shí)時(shí)性。(3) 系統(tǒng)的穩(wěn)定性和開(kāi)放性。該機(jī)械臂扌空制系統(tǒng)由主扌空制

17、模塊、電機(jī)驅(qū)動(dòng)模塊和電源模塊組成,每個(gè)子模塊的功能如下:主控制模塊:作為該控制系統(tǒng)的核心,包括ARMCortex-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ò)AMS1117-3.3V穩(wěn)壓芯片供電,舵機(jī)驅(qū)動(dòng)模塊采用7.2V可充電電池經(jīng)LM2596DC-DC可調(diào)降壓模塊實(shí)現(xiàn)供電。XIII機(jī)器人測(cè)控課程設(shè)計(jì)32微處理器選型微控制器作為機(jī)械臂運(yùn)動(dòng)控制系統(tǒng)的核心,如下幾個(gè)方面為重點(diǎn)進(jìn)行微控制器的選擇:系統(tǒng)時(shí)鐘速度運(yùn)算速度功能電機(jī)控制方式ROM及ROM的大小扌空制板的結(jié)構(gòu)尺寸

18、經(jīng)過(guò)反復(fù)比較,本設(shè)計(jì)采用意法半導(dǎo)體公司的STM32處理器,如圖3.1所示。STM32F103ZET6是基于32位ARMCortex-M3內(nèi)核的微處理器,不但支持實(shí)時(shí)仿真,而且嵌入了512KB的高速閃存。CPU的最高工作頻率為72MHz,支持Thumb-2。圖3.1STM3233主控制模塊設(shè)計(jì)該設(shè)計(jì)的主控制模塊的硬件系統(tǒng)包括電源電路、復(fù)位電路、系統(tǒng)時(shí)鐘電路以及JTAG調(diào)試電路四大組成部分。331電源電路在硬件電路的設(shè)計(jì)中,電源模塊的設(shè)計(jì)是非常重要的,如果不能妥善處理,不但會(huì)使電路不能正常工作,嚴(yán)重的還可能燒毀電路。因此,在設(shè)計(jì)電源時(shí)務(wù)必XI機(jī)器人測(cè)控課程設(shè)計(jì)機(jī)器人測(cè)控課程設(shè)計(jì)要注意如下幾點(diǎn):(1

19、) 交流輸入和直流輸出盡可能保持更大的距離;(2) 地線要足夠粗,單點(diǎn)和多點(diǎn)相結(jié)合,同時(shí)分離模擬地和數(shù)字地;(3) 散熱要好,布局應(yīng)合適;圖3.2電源電路圖如上圖所示,開(kāi)發(fā)板由7.2V接口供電。板上的電源轉(zhuǎn)換芯片將7.2V接口輸入的7.2V電源轉(zhuǎn)換成5V的電源,然后轉(zhuǎn)換成3.3V給處理器和相關(guān)外圍電路供電。3.3.2復(fù)位電路圖3.3復(fù)位電路圖如上圖所示,B1為整個(gè)板的復(fù)位按鈕,當(dāng)按鈕被按下時(shí),STM32處理器、TFT彩屏等都將復(fù)位。3.3.3時(shí)鐘電路STM32的VBAT的供電是由外部電源完成的,在有外部電源(VCC3.3)的情況下,VBAT供電而由外部電源實(shí)現(xiàn)供電。但是,當(dāng)外部電源斷開(kāi)的情況下

20、,RTC的走時(shí)以及后備寄存器的內(nèi)容就會(huì)丟失。相關(guān)電路如下:圖3.4時(shí)鐘電路圖3.3.4JTAG調(diào)試電路軟件程序的編寫(xiě)通常是需要多次的修改才適用的,因此一些比較先進(jìn)的調(diào)試手段便應(yīng)運(yùn)而生oJTAG仿真調(diào)試手段作為其中的一種,是由ARM公司提出的。本設(shè)計(jì)采用占用10口資源少的SWD調(diào)試,只需JTAG仿真器上的4根線就能完成,如下圖所示:通過(guò)SWD接口,我們可以燒錄和調(diào)試程序,開(kāi)發(fā)板的JTAG接口的硬件連接如上圖所示,可以與目前主流的JLINKV8仿真器配合使用。XVI機(jī)器人測(cè)控課程設(shè)計(jì)34驅(qū)動(dòng)模塊設(shè)計(jì)通常對(duì)機(jī)械臂的驅(qū)動(dòng)系統(tǒng)的要求有:(1) 驅(qū)動(dòng)系統(tǒng)的質(zhì)量不應(yīng)太重,效率也應(yīng)較高;(2) 響應(yīng)速度快;(

21、3) 動(dòng)作靈活,位移偏差以及速度偏差均較??;(4) 安全可靠;(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,如圖3.2、3.3,其參數(shù)如下:MG995:(1)尺寸:40mmx20mmx36.5mm(2)重量:62g(3) 技術(shù)參數(shù):無(wú)負(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.6MG995舵機(jī)一般來(lái)

22、說(shuō),舵機(jī)是由舵盤(pán)、減速齒輪組、位置反饋電位計(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ī)XVII圖3.83.3V穩(wěn)壓電路機(jī)器人測(cè)控課程設(shè)計(jì)構(gòu)減速后傳動(dòng)到輸出舵盤(pán)。由于舵機(jī)的輸出軸和位置反饋電位計(jì)是連接在一起的,所以在舵盤(pán)轉(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ì)位置的精確扌空制。35電源模塊設(shè)計(jì)機(jī)械臂控制

23、系統(tǒng)采用雙電源供電模式,STM32單片機(jī)經(jīng)過(guò)AMS1117-3.3V穩(wěn)壓芯片供電,舵機(jī)驅(qū)動(dòng)模塊采用7.2V可充電電池經(jīng)LM2596DC-DC可調(diào)降壓模塊實(shí)現(xiàn)供電。AMS1117是正向低壓降的穩(wěn)壓器,在1A電流下產(chǎn)生1.2V的壓降。它的內(nèi)部所集成有過(guò)熱保護(hù)和限流電路,因此是電池供電和便攜式計(jì)算機(jī)的最佳選擇。由AMS1117-3.3V芯片構(gòu)成的3.3V穩(wěn)壓電路如圖3.8所示。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.

24、2V37V,誤差范圍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)換等。XVIII機(jī)器人測(cè)控課程設(shè)計(jì)由LM2596構(gòu)成的5V穩(wěn)壓電路如圖3.9所示。12VnrsgulatedDCInput+VINLM25965.05.0V-|68033嚴(yán)卜DI1N58242T53ON/OFFGNOFtsdbck4OulpjtRgulatdOutput3ALoad0125B-3fl1圖3.95V穩(wěn)壓

25、電路第四章機(jī)械臂控制系統(tǒng)軟件設(shè)計(jì)41初始化模塊設(shè)計(jì)初始化模塊主要負(fù)責(zé)完成如下工作:系統(tǒng)時(shí)鐘控制寄存器RCC的配置,SysTick定時(shí)器,TIM定時(shí)器,通用輸入輸出接口GPIO,嵌套向量中斷控制器NVIC,PWM波輸出,超聲波傳感器模塊的初始化。采用庫(kù)函數(shù)進(jìn)行編程。411系統(tǒng)時(shí)鐘控制STM32CPU的時(shí)鐘源可以來(lái)自?xún)?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頻率,供給Cortex-M3內(nèi)核使用。流程

26、圖如下:圖4.2系統(tǒng)時(shí)鐘初始化流程圖4.1.2SysTick定時(shí)器SysTick,即系統(tǒng)節(jié)拍時(shí)鐘,它作為ARMCortex-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分頻后作為Cortex系統(tǒng)定時(shí)器(SysTick)的外部時(shí)鐘。通過(guò)對(duì)SysTick控制與狀態(tài)寄存器的設(shè)置,可選擇上述時(shí)鐘或Cortex(HCLK)時(shí)鐘作為SysTick時(shí)鐘。系統(tǒng)嘀嗒校準(zhǔn)值固定為9000,當(dāng)系統(tǒng)嘀嗒時(shí)鐘設(shè)定

27、為9MHz(HCLK/8的最大值),產(chǎn)生1ms時(shí)間基準(zhǔn)。本部分的程序流程圖如下:圖4.3SysTick定時(shí)器初始化流程圖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í)器可以為用戶(hù)提供準(zhǔn)確的時(shí)間參考;通用定時(shí)器不僅具備時(shí)間參考功能,還具有輸入捕捉、輸出比較、單脈沖輸出、PWM輸出功能和正交編碼器的特點(diǎn);高級(jí)定時(shí)器更是加入了可以產(chǎn)生帶死區(qū)控制的互補(bǔ)PWM信號(hào)、緊急制動(dòng)、定時(shí)器同步等高級(jí)特征,并最多可以輸出6路PWM

28、信號(hào),可謂是意法半導(dǎo)體賦予STM32的王牌。本設(shè)計(jì)采用TIM2、TIM3的PWM輸出功能和TIM4的計(jì)數(shù)功能。本部分的程序流程圖如下:XXI機(jī)器人測(cè)控課程設(shè)計(jì)圖4.4TIM定時(shí)器初始化流程圖4.1.4通用輸入輸出接口GPIOGPIO可以說(shuō)是STM32最常用的外設(shè)。STM32F103ZET6提供多達(dá)112個(gè)雙向GPIO,分別分布在AG這7個(gè)端口中。每個(gè)端口又包括16個(gè)GPIO,都可承受5V的壓降。GPIO可通過(guò)配置寄存器工作在如下8種模式:浮空輸入、帶上拉電阻的輸入、帶下拉電阻的輸入、模擬輸入;開(kāi)漏輸出、推挽輸出、復(fù)用推挽輸出、復(fù)用開(kāi)漏輸出。該設(shè)計(jì)中將PAO、PA1、PA2、PA3、PA6作為PWM波的輸出口;PA4、PA5作為L(zhǎng)ED顯示接口;PA7、PA8作為超聲波傳感器信號(hào)的接收發(fā)送接口;PB6、PB7分別作為串口的發(fā)送接收接口(人機(jī)交

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶(hù)所有。
  • 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ì)用戶(hù)上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶(hù)上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶(hù)因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論