




版權(quán)說(shuō)明:本文檔由用戶(hù)提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、題 目 基于LM629的機(jī)器人單關(guān)節(jié)控制器設(shè)計(jì) 摘 要近年來(lái)隨著人工智能技術(shù)、計(jì)算機(jī)技術(shù)以及網(wǎng)絡(luò)技術(shù)等相關(guān)技術(shù)的飛速發(fā)展,機(jī)器人在各個(gè)領(lǐng)域已經(jīng)得到了廣泛的應(yīng)用,成為了一類(lèi)關(guān)鍵的基礎(chǔ)裝備。機(jī)器人單關(guān)節(jié)控制器是機(jī)器人的重要組成部分,每個(gè)完整的機(jī)器人控制系統(tǒng)都是由單個(gè)的機(jī)器人單關(guān)節(jié)控制器所組成,因此機(jī)器人單關(guān)節(jié)控制器對(duì)機(jī)器人控制系統(tǒng)起著決定性的作用。LM629是美國(guó)國(guó)家半導(dǎo)體公司生產(chǎn)的可編程全數(shù)字精密運(yùn)動(dòng)控制芯片,內(nèi)置PID算法和梯形圖發(fā)生器能夠自動(dòng)生成速度曲線(xiàn),平穩(wěn)地加速、減速。本文采用LM629精密運(yùn)動(dòng)控制芯片、AT89C51CC03單片機(jī)和少量的驅(qū)動(dòng)電路構(gòu)成了基于LM629和CAN總線(xiàn)的機(jī)器人
2、單關(guān)節(jié)控制器。實(shí)驗(yàn)表明,由AT89C51CC03和LM629建立的CAN總線(xiàn)的機(jī)器人單關(guān)節(jié)控制器,不僅簡(jiǎn)化了機(jī)器人控制系統(tǒng)軟、硬件設(shè)計(jì),提高系統(tǒng)可靠性,減輕設(shè)計(jì)工作量,而且提高了系統(tǒng)性能,具有反應(yīng)快,控制精度高、實(shí)時(shí)性能好等優(yōu)點(diǎn)。通過(guò)對(duì)機(jī)器人單關(guān)節(jié)控制器的軟硬件設(shè)計(jì)和反復(fù)的調(diào)試,所制作的機(jī)器人單關(guān)節(jié)控制器已經(jīng)初步完成了預(yù)定的功能。AT89C51CC03單片機(jī)對(duì)LM629進(jìn)行控制和初步的數(shù)據(jù)處理,通過(guò)CAN現(xiàn)場(chǎng)總線(xiàn)與主機(jī)或其他設(shè)備進(jìn)行實(shí)時(shí)通信,可以組成現(xiàn)場(chǎng)總線(xiàn)控制系統(tǒng)。在本次畢業(yè)設(shè)計(jì)中完成了機(jī)器人單關(guān)節(jié)控制器的設(shè)計(jì)制作及軟件系統(tǒng)的設(shè)計(jì)調(diào)試。關(guān)鍵詞 LM629運(yùn)動(dòng)控制器 51單片機(jī) CAN總線(xiàn) T
3、itle Design of Simplex Articulatory Controller of Robot Based on LM629 AbstractIn recent years, with correlation technology, artificial intelligence technology, computer technology as well as networking rapid development, robot has already obtained application widespread in each domain and become a
4、kind of essential foundation equipment. The simplex articulatory controller of robot is one of the most constituent of robot. Each complete control system of robot is composed by the simplex articulatory controller of robot. Therefore, the simplex articulatory controller of robot is playing the deci
5、sive role in the control system of robot. LM629 is a programmable control chip of precise movement which produced by Semiconductor Company in USA. It contains the PID algorithm and the trapezoidal chart generator which can produce the velocity curve automatically, acceleration and deceleration stead
6、ily. This article used the LM629, AT89C51CC03 and a few actuation electric circuits to constitute the simplex articulatory controller of robot based on LM629 and CAN bus. The experiment indicates the simplex articulatory controller of robot which is made up by AT89C51CC03 and LM629 can simplify desi
7、gn of the robot control system of software and hardware, enhance reliability of the system, reduce work load of the design. It has merits including respond quickly control precision high, real time and so on. By the debugging repeatedly and design of software and hardware, the simplex articulatory c
8、ontroller of robot has already completed the predetermined function initially. The AT89C51CC03 carries on the control and the preliminary data processing to LM629, carries on the real-time communication through the CAN bus and the main engine or other equipment, may compose the field bus control sys
9、tem. It has completed manufacture of the simplex articulatory controller of robot and debugging of the software system in this project.Keywords LM629 movement controller 51 MCU CAN bus目 次1 緒論11.1 機(jī)器人單關(guān)節(jié)控制器的研究背景及應(yīng)用11.2 機(jī)器人單關(guān)節(jié)控制器研究現(xiàn)狀22 機(jī)器人單關(guān)節(jié)控制器的主體設(shè)計(jì)42.1 機(jī)器人單關(guān)節(jié)控制器的總體設(shè)計(jì)42.2 機(jī)器人單關(guān)節(jié)控制器的方案論證52.3 機(jī)器人單關(guān)節(jié)控制器
10、的組成83 LM629運(yùn)動(dòng)控制器選擇93.1 LM629的特點(diǎn)93.2 LM629的操作理論93.3 LM629讀和寫(xiě)操作113.4 旋轉(zhuǎn)編碼器接口124 CAN現(xiàn)場(chǎng)總線(xiàn)134.1 CAN通信協(xié)議134.2 CAN控制器配置145 機(jī)器人單關(guān)節(jié)控制器硬件設(shè)計(jì)165.1 位置檢測(cè)模塊設(shè)計(jì)165.2 運(yùn)動(dòng)模塊設(shè)計(jì)175.3 CAN通訊模塊設(shè)計(jì)226 機(jī)器人單關(guān)節(jié)控制器軟件設(shè)計(jì)326.1 單片機(jī)的C語(yǔ)言程序設(shè)計(jì)說(shuō)明336.2 系統(tǒng)對(duì)象字典346.3 控制器總體程序流程圖357 機(jī)器人單關(guān)節(jié)控制器的制作及調(diào)試36結(jié) 論37致 謝38參 考 文 獻(xiàn)39附 錄A . 40附 錄B . 41附 錄C . 4
11、6緒論 機(jī)器人單關(guān)節(jié)控制器的研究背景及應(yīng)用 機(jī)器人單關(guān)節(jié)控制器的研究背景近年來(lái)隨著人工智能技術(shù)、計(jì)算機(jī)技術(shù)以及網(wǎng)絡(luò)技術(shù)等相關(guān)技術(shù)的發(fā)展,對(duì)智能機(jī)器人的研究越來(lái)越多。機(jī)器人控制器成為各種智能控制方法(包括動(dòng)態(tài)避障、群體協(xié)作策略)的良好載體;同時(shí),以現(xiàn)場(chǎng)總線(xiàn)為代表的控制網(wǎng)絡(luò)在工業(yè)以及其他控制系統(tǒng)中扮演著不可缺少的角色。機(jī)器人控制系統(tǒng)開(kāi)始從集散控制系統(tǒng)(DCS)向現(xiàn)場(chǎng)總線(xiàn)控制系統(tǒng)(FCS)過(guò)度,現(xiàn)場(chǎng)總線(xiàn)將成為控制領(lǐng)域的主流。CAN總線(xiàn)由于具有可靠性高、成本低、容易實(shí)現(xiàn)等優(yōu)點(diǎn),在控制系統(tǒng)中得到廣泛的應(yīng)用。由于機(jī)器人的各個(gè)組成部分構(gòu)成網(wǎng)絡(luò)化的分布式系統(tǒng),為了開(kāi)展多智能的調(diào)度、規(guī)劃等控制,所以對(duì)機(jī)器人控制
12、器的研究越來(lái)越受到重視。特別是在智能工程、控制工程以及機(jī)器人工程等領(lǐng)域起著舉足輕重的作用。機(jī)器人控制系統(tǒng)之間的雙向信息交換和實(shí)時(shí)數(shù)據(jù)傳輸需通過(guò)控制器來(lái)完成,因此其控制器的運(yùn)算工作量和通信工作量都很大。如果采用集中控制,CPU的運(yùn)算速度難以滿(mǎn)足實(shí)時(shí)性和高保真的性能要求。采用基于現(xiàn)場(chǎng)總線(xiàn)的分布式控制,把大量的伺服控制和傳感器信息處理放在每個(gè)智能控制器節(jié)點(diǎn)來(lái)處理,有利于進(jìn)一步提高控制系統(tǒng)的性能。機(jī)器人單關(guān)節(jié)控制器的傳感器較多,線(xiàn)路比較復(fù)雜,線(xiàn)束的布局往往直接影響系統(tǒng)的性能。大量的布線(xiàn)不僅影響使用和維修,而且也不美觀。 機(jī)器人單關(guān)節(jié)控制器的主要應(yīng)用機(jī)器人單關(guān)節(jié)控制器針對(duì)于各種智能機(jī)器人、工業(yè)機(jī)器人、航
13、天機(jī)器人等的設(shè)計(jì),對(duì)機(jī)器人各個(gè)關(guān)節(jié)進(jìn)行實(shí)時(shí)的控制,因此機(jī)器人單關(guān)節(jié)控制器不僅可以對(duì)機(jī)器人的各個(gè)關(guān)節(jié)控制進(jìn)行管理,而且在各個(gè)智能節(jié)點(diǎn)設(shè)備,也可以應(yīng)用,特別是在研究和開(kāi)發(fā)領(lǐng)域,更是不可或缺的工具。機(jī)器人單關(guān)節(jié)控制器作為一種很有潛力的高級(jí)機(jī)器人技術(shù),在航天、軍工、核工業(yè)、深海探測(cè)等特殊工作環(huán)境下正在大顯身手,而且在微創(chuàng)手術(shù)、生物醫(yī)學(xué)、虛擬現(xiàn)實(shí)和地下開(kāi)采等領(lǐng)域也扮演著越來(lái)越重要的角色。機(jī)器人單關(guān)節(jié)控制器是系統(tǒng)的關(guān)鍵設(shè)備,其性能好壞直接影響整個(gè)系統(tǒng)的可靠、穩(wěn)定性。 機(jī)器人單關(guān)節(jié)控制器研究現(xiàn)狀國(guó)外研究現(xiàn)狀國(guó)外的研究成果:目前,美國(guó)、英國(guó)、日本、新加坡、德國(guó)、法國(guó)、澳大利亞等國(guó)家都早已研制出機(jī)器人單關(guān)節(jié)控制
14、。如:東芝試制家用機(jī)器人“ApriAlpha” 該概念模型配備了新開(kāi)發(fā)的利用分散對(duì)象技術(shù)的開(kāi)放式機(jī)器人控制器,因此可以很容易追加新功能。另外該公司建立了利用分散對(duì)象技術(shù)的“開(kāi)放式機(jī)器人控制器架構(gòu)(ORCA)”并且基于該架構(gòu)新開(kāi)發(fā)出控制器。采用模塊化設(shè)計(jì)的IRC5控制器是ABB公司最近推出的第五代機(jī)器人控制器,它標(biāo)志著機(jī)器人控制技術(shù)領(lǐng)域的一次最重大。值得指出的是,由于將處理速度更高的微處理器引入至機(jī)器人控制器,從而顯著地提高了機(jī)器人運(yùn)動(dòng)控制性能,使機(jī)器人制造商能將諸如減振算法、前饋控制、預(yù)測(cè)算法等先進(jìn)的現(xiàn)代控制理論嵌入到機(jī)器人控制器內(nèi)。圖1-1為帶機(jī)器人單關(guān)節(jié)控制器的機(jī)械手實(shí)物照片:圖1-1 帶
15、機(jī)器人單關(guān)節(jié)控制器的機(jī)械手實(shí)物照片國(guó)內(nèi)研究現(xiàn)狀我國(guó)目前的研究狀況:國(guó)家863計(jì)劃在“八五”、“九五”和“十五”期間分別將機(jī)器人技術(shù)作為主題,制定了相應(yīng)的高技術(shù)研究發(fā)展規(guī)劃。“八五”期間重點(diǎn)圍繞惡劣環(huán)境的室外移動(dòng)機(jī)器人,用于處理核廢料的遙控移動(dòng)作業(yè)機(jī)器人,壁面爬行機(jī)器人,水下無(wú)纜自治機(jī)器人,高精度裝配機(jī)器人等五種類(lèi)型開(kāi)展先進(jìn)機(jī)器人控制技術(shù)研究。“九五”期間重點(diǎn)圍繞汽車(chē),家電等工業(yè)機(jī)器人產(chǎn)業(yè)化與以水下6000米機(jī)器人為代表的特種機(jī)器人等方面開(kāi)展了先進(jìn)機(jī)器人關(guān)鍵技術(shù)與應(yīng)用示范研究?!笆濉逼陂g進(jìn)一步拓寬了機(jī)器人技術(shù)向自動(dòng)化裝備技術(shù)方面的發(fā)展,一方面圍繞國(guó)家急需的關(guān)鍵基礎(chǔ)裝備,包括高精尖數(shù)控機(jī)床,全斷
16、面盾構(gòu)掘進(jìn)機(jī)與工程機(jī)械自動(dòng)化生產(chǎn)線(xiàn)等開(kāi)展了相應(yīng)關(guān)鍵技術(shù)與應(yīng)用示范研究另一方面圍繞國(guó)家社會(huì)發(fā)展需求的機(jī)器人與自動(dòng)化裝備,包括深海載人潛器、仿人仿生機(jī)器人,危險(xiǎn)作業(yè)與反恐防爆機(jī)器人醫(yī)療外科機(jī)器人等方面 開(kāi)展了先進(jìn)機(jī)器人控制器研究。機(jī)器人控制器在我國(guó)應(yīng)用的主要問(wèn)題是:機(jī)器人控制器價(jià)格昂貴,許多企業(yè)和科學(xué)研究機(jī)構(gòu)無(wú)法接受;機(jī)器人控制器的許多標(biāo)定基礎(chǔ)是以外國(guó)標(biāo)準(zhǔn)進(jìn)行的,由于技術(shù)保密,系統(tǒng)參數(shù)的修定只能由機(jī)器人控制器生產(chǎn)廠(chǎng)家來(lái)進(jìn)行,無(wú)法適應(yīng)我國(guó)產(chǎn)品品種多的現(xiàn)狀??傊瑹o(wú)論從高校還是從企業(yè)來(lái)看,對(duì)機(jī)器人控制器的研究都已有很大的進(jìn)展,雖然還是落后于發(fā)達(dá)國(guó)家的研究水平,但隨著我國(guó)對(duì)科研研究力度的加大,對(duì)機(jī)器人單
17、關(guān)節(jié)控制的研究將更為深入,相信在不久的將來(lái)會(huì)研制出更加先進(jìn)的機(jī)器人控制器。 機(jī)器人單關(guān)節(jié)控制器的主體設(shè)計(jì)機(jī)器人單關(guān)節(jié)控制包括硬件電路和軟件系統(tǒng)。硬件電路是軟件系統(tǒng)的載體,因此,設(shè)計(jì)機(jī)器人單關(guān)節(jié)控制的電氣部分先得確定硬件電路的設(shè)計(jì)方案,然后再通過(guò)軟件系統(tǒng)控制其工作。 機(jī)器人單關(guān)節(jié)控制器的總體設(shè)計(jì) 總體設(shè)計(jì)思想 基于LM629精密運(yùn)動(dòng)控制器,利用CAN現(xiàn)場(chǎng)總線(xiàn)與其他設(shè)備控制器進(jìn)行通信。通過(guò)調(diào)研決定選取單片機(jī)AT89C51CC03作為控制器的核心,C語(yǔ)言作為設(shè)計(jì)程序語(yǔ)言。機(jī)器人單關(guān)節(jié)控制總體設(shè)計(jì)方框圖如下圖2-1:圖2-1機(jī)器人單關(guān)節(jié)控制總體設(shè)計(jì)方框圖 擬解決的主要問(wèn)題和研究的主要內(nèi)容擬解決的主要問(wèn)
18、題:微處理芯片(AT89C51CC03)硬件電路設(shè)計(jì)及用高級(jí)語(yǔ)言C的程序設(shè)計(jì);LM629精密運(yùn)動(dòng)控制芯片的硬件電路設(shè)計(jì)及程序設(shè)計(jì);CAN現(xiàn)場(chǎng)總線(xiàn)通信的軟件設(shè)計(jì);擬研究的主要內(nèi)容:AT89C51CC03的接口電路設(shè)計(jì)及C語(yǔ)言編程與PCB圖的設(shè)計(jì);選擇LM629精密運(yùn)動(dòng)控制芯片以及光電編碼器的確定;CAN現(xiàn)場(chǎng)總線(xiàn)原理及應(yīng)用; 機(jī)器人單關(guān)節(jié)控制器的方案論證 硬件電路的方案AT89C51CC03是ATMEL公司推出的一款內(nèi)帶CAN控制器增強(qiáng)型80C51單片機(jī)。由于內(nèi)置CAN控制器,具有抗干擾能力強(qiáng)和性能價(jià)格比高等優(yōu)點(diǎn),特別是在機(jī)器人控制和實(shí)時(shí)通訊方面更具有其獨(dú)特的魅力。AT89C51CC03具有完善的
19、CAN控制器,利用TXDC和RXDC兩個(gè)引腳來(lái)作為CAN通信接口。通過(guò)此功能可以方便的組成基于CAN總線(xiàn)的分布式控制系統(tǒng),實(shí)現(xiàn)數(shù)據(jù)的實(shí)時(shí)傳輸和交換。AT89C51CC03單片機(jī)內(nèi)部嵌入的ADC模塊具有10位數(shù)字量精度,共有8個(gè)模擬通道,不用外加專(zhuān)門(mén)的ADC即可以對(duì)模擬信號(hào)進(jìn)行數(shù)字信號(hào)的轉(zhuǎn)化。因此,AT89C51CC03可以作為機(jī)器人單關(guān)節(jié)控制器的微處理器。如圖2-2 AT89C51CC03片內(nèi)資源示意圖:圖2-2 AT89C51CC03 片內(nèi)資源示意圖如圖2-3 AT89C51CC03片PLCC封裝的外觀示意圖:圖2-3 AT89C51CC03的PLCC封裝的外觀示意圖AT89C51CC03增
20、強(qiáng)型51單片機(jī)的主要特點(diǎn):80C51內(nèi)核;256 B的片內(nèi)RAM;2K的片內(nèi)ERAM;2K的EEPROM;雙數(shù)據(jù)指針;64KB片內(nèi)可編程序Flash存儲(chǔ)器;14個(gè)中斷向量,其具有4個(gè)優(yōu)先級(jí)的中斷;工作時(shí)鐘頻率2MHz60MHz;3級(jí)程序存儲(chǔ)器保密;32+4個(gè)可編程I/O口;3個(gè)16位定時(shí)器/計(jì)數(shù)器;1個(gè)21位的看門(mén)狗;5通道16位的PCA;8通道10位的ADC;CAN控制器,全面支持CAN2.0A、CAN2.0B協(xié)議; 軟件系統(tǒng)的方案在編寫(xiě)單片機(jī)程序時(shí),可以用匯編語(yǔ)言編寫(xiě),也可以用C高級(jí)語(yǔ)言來(lái)編寫(xiě),還可以用兩者混合編程。C語(yǔ)言作為高級(jí)語(yǔ)言,它更接近和體現(xiàn)人的設(shè)計(jì)思想;C高級(jí)語(yǔ)言是目前流行的一種
21、計(jì)算機(jī)語(yǔ)言,它主要用于單片機(jī)和一般微型計(jì)算機(jī)。C高級(jí)語(yǔ)言程序設(shè)計(jì)快、可讀性好、可靠性高、可移植性好、代碼轉(zhuǎn)換質(zhì)量高。單片機(jī)C高級(jí)語(yǔ)言的特點(diǎn)是同時(shí)兼有高級(jí)語(yǔ)言和匯編語(yǔ)言的優(yōu)點(diǎn),還能像匯編語(yǔ)言那樣直接利用CPU的硬件特性進(jìn)行程序設(shè)計(jì),直接操作單片機(jī)的硬件和接口。C高級(jí)語(yǔ)言目標(biāo)模塊還可以同匯編連接組成一個(gè)完整的程序,目前在單片機(jī)應(yīng)用領(lǐng)域,C高級(jí)語(yǔ)言越來(lái)越受到人們的重視。使用C高級(jí)語(yǔ)言的工作效率高,其生成的機(jī)器代碼質(zhì)量也是高水平的。 總體方案的確定總體方案:基于LM629運(yùn)動(dòng)控制芯片和內(nèi)帶CAN控制器的AT89C51CC03單片機(jī)構(gòu)成的機(jī)器人單關(guān)節(jié)控制器,機(jī)器人單關(guān)節(jié)控制器示意圖如下圖2-4所示。運(yùn)動(dòng)
22、控制芯片LM629通過(guò)8位數(shù)據(jù)線(xiàn)和6根控制線(xiàn)與單片機(jī)AT89C51CC03的IO 口相連。單片機(jī)通過(guò)數(shù)據(jù)線(xiàn)向LM629發(fā)送位置或速度命令、設(shè)定PID調(diào)節(jié)參數(shù),或者從LM629中讀取速度、加速度等數(shù)值。LM629輸出的脈寬調(diào)制幅度信號(hào)和方向信號(hào),經(jīng)過(guò)功率放大后驅(qū)動(dòng)直流電動(dòng)機(jī)。增量式光電編碼器提供閉環(huán)控制所需的反饋信號(hào)(A、B、IN),梯形圖發(fā)生器計(jì)算出位置或速度模式下所需控制的運(yùn)動(dòng)軌跡。AT89C51CC03為L(zhǎng)M629提供加速度、速度和目標(biāo)位置量,在每個(gè)采樣周期用這些值來(lái)計(jì)算出新的命令和位置給定值,將其作為指令值。由增量式光電編碼器檢測(cè)電動(dòng)機(jī)的實(shí)際位置,其輸出信號(hào)經(jīng)過(guò)LM629四倍頻后進(jìn)行解碼
23、,形成位置反饋值。指令值與反饋值的差值作為數(shù)字PID校正環(huán)節(jié)的輸入。通過(guò)數(shù)字調(diào)節(jié)器PID計(jì)算,LM629輸出脈寬調(diào)制信號(hào)PWMM 和方向信號(hào)PWMS用于控制,進(jìn)而驅(qū)動(dòng)電動(dòng)機(jī)運(yùn)動(dòng)到指定的位置。LM629在進(jìn)行位置控制的同時(shí),還對(duì)速度進(jìn)行控制。LM629在接受到主機(jī)送來(lái)的位置信號(hào)后,按梯形圖生成加速、勻速、減速的速度曲線(xiàn),曲線(xiàn)與坐標(biāo)橫軸所包圍的面積就是指定的位置。PID算法中的比例、積分和微分系數(shù)有時(shí)需要進(jìn)行修改,因此將它們存貯在單片機(jī)的中。控制器和主機(jī)可以通過(guò)CAN現(xiàn)場(chǎng)總線(xiàn)進(jìn)行實(shí)時(shí)通信。機(jī)器人單關(guān)節(jié)控制器示意圖如圖2-4所示: 圖2-4 機(jī)器人單關(guān)節(jié)控制器示意圖 機(jī)器人單關(guān)節(jié)控制器的組成基于LM
24、629的機(jī)器人單關(guān)節(jié)控制器,由傳感器電路,控制電路,單片機(jī)接口電路,CAN現(xiàn)場(chǎng)總線(xiàn)接口電路以及應(yīng)用程序軟件等組成。傳感器電路:把位移信號(hào)和轉(zhuǎn)數(shù)信號(hào)轉(zhuǎn)化成電信號(hào)。傳感器電路是機(jī)器人單關(guān)節(jié)控制器的輸入部分,是系統(tǒng)的數(shù)據(jù)源??刂齐娐罚簩?duì)數(shù)據(jù)的采集、初步處理和執(zhí)行控制的芯片,并通過(guò)接口電路與單片機(jī)進(jìn)行數(shù)據(jù)傳輸。單片機(jī)接口電路:?jiǎn)纹瑱C(jī)和運(yùn)動(dòng)控制芯片以及CAN現(xiàn)場(chǎng)總線(xiàn)通信接口所需要的電路。單片機(jī)接口電路是機(jī)器人單關(guān)節(jié)控制器數(shù)據(jù)交換及控制處理的基礎(chǔ)。CAN現(xiàn)場(chǎng)總線(xiàn)接口電路:對(duì)單片機(jī)傳來(lái)的數(shù)據(jù)通過(guò)接口電路與主機(jī)或者其他設(shè)備控制器進(jìn)行數(shù)據(jù)傳輸。 LM629運(yùn)動(dòng)控制器選擇LM629致力于運(yùn)動(dòng)控制處理器與一些直流和
25、無(wú)刷直流飼服電動(dòng)機(jī)或其他具有積分增量位置反饋信號(hào)的伺服機(jī)制的設(shè)計(jì)。這部分執(zhí)行高精密數(shù)字運(yùn)動(dòng)控制所要求的精密實(shí)時(shí)計(jì)算任務(wù)。微處理器控制軟件接口因一個(gè)高級(jí)別命令集而更便利。LM629有8位輸出,這8位輸出可驅(qū)動(dòng)一個(gè)8位或12位的DAC。這個(gè)組成需要建立一個(gè)伺服系統(tǒng)簡(jiǎn)化直流電動(dòng)機(jī)/驅(qū)動(dòng)器、旋轉(zhuǎn)編碼器、數(shù)模轉(zhuǎn)換、功率放大器和LM629。它提供一個(gè)8位脈寬調(diào)制(PWM)輸出,用于直接驅(qū)動(dòng)H開(kāi)關(guān)(H-switches)。這部分在NMOS中制作并封裝為28管腳雙列直插形式或24管腳貼片封裝形式。最大頻率為6MHZ和8MHZ的版本均用到后綴-6或-8,分別地用于表示不同的版本。它們由SDA把SDA中心處理器和
26、單元設(shè)計(jì)為一體?;谝陨现T多優(yōu)點(diǎn),我們選擇LM629作為機(jī)器人單關(guān)節(jié)控制器的運(yùn)動(dòng)控制芯片。LM629的特點(diǎn)32位位置、速度和加速度寄存器16位的可編程數(shù)字化PID過(guò)濾器可編程微分采樣周期8位或12位DAC輸出數(shù)據(jù)(LM628)8位信號(hào)級(jí)PWM輸出數(shù)據(jù)(LM629)內(nèi)部梯形速率特性發(fā)生器在運(yùn)動(dòng)期間可以改變速率、目標(biāo)位置和過(guò)濾器參數(shù)位置和速度兩種操作模塊實(shí)時(shí)可編程微處理器中斷8位異步并行微處理器接口標(biāo)準(zhǔn)脈沖輸入的積分增量編碼器在28管腳雙列直插式封裝或一個(gè)24管腳貼片封裝的優(yōu)點(diǎn)(只有LM629) LM629的操作理論應(yīng)用LM629建立一個(gè)伺服系統(tǒng)。微處理器通過(guò)I/O端口與LM629通信更易規(guī)劃梯形
27、速度特性和數(shù)字補(bǔ)償濾波器。DAC輸出送入外部數(shù)模轉(zhuǎn)換器產(chǎn)生功率放大的信號(hào)且驅(qū)動(dòng)電動(dòng)機(jī)運(yùn)動(dòng)。旋轉(zhuǎn)編碼器為趨近位置提供反饋伺服回路。梯形速度特性發(fā)生器為位移操作模式或速度操作模式計(jì)算所要求的軌跡。在操作狀態(tài),LM629用期望位置(特性發(fā)生器位置)減去實(shí)際位置(反饋位置)得到位置偏離被數(shù)字過(guò)濾器用來(lái)驅(qū)動(dòng)電動(dòng)機(jī)運(yùn)動(dòng)到期望位置。 位置反饋接口LM629經(jīng)由旋轉(zhuǎn)編碼器接入電動(dòng)機(jī),提供了三個(gè)輸入端:兩個(gè)積分信號(hào)輸入和一個(gè)標(biāo)準(zhǔn)脈沖輸入。積分信號(hào)用于保持電動(dòng)機(jī)的精密位置軌跡。每次一個(gè)積分輸入出現(xiàn)邏輯變換時(shí),LM629的內(nèi)部位置寄存器隨之增加或減少。編碼器提供的周期被四倍頻。每個(gè)編碼器信號(hào)輸入與LM629時(shí)鐘同步
28、。一些編碼器提供的可選INDEX 脈沖輸出每旋轉(zhuǎn)一周呈現(xiàn)一個(gè)邏輯低電平狀態(tài)。如果用戶(hù)使用LM629這樣編程,當(dāng)三個(gè)編碼器輸入都是邏輯低電平時(shí)將把絕對(duì)的電動(dòng)機(jī)位置記錄到專(zhuān)用的寄存器。 速度軌跡發(fā)生梯形速率特性發(fā)生器計(jì)算電動(dòng)機(jī)相對(duì)時(shí)間的期望位置。在位置操作模式,微處理器詳細(xì)說(shuō)明加速度,最大速率和最終位置。LM629利用這些數(shù)據(jù)通過(guò)標(biāo)明的加速度影響運(yùn)動(dòng)直到達(dá)到最大速率或直到在標(biāo)明的最終位置減速度開(kāi)始停止。減速度等于加速度。在運(yùn)動(dòng)過(guò)程的任何時(shí)刻,最大速率和/或目標(biāo)位置可以改變,而且電動(dòng)機(jī)將相應(yīng)地加速或減速。當(dāng)在速率模式操作時(shí),電動(dòng)機(jī)以指定的加速度加速到指定的速度而且保持指定的速率直到命令結(jié)束。以不變速
29、度接近期望位置保持速率。如果在速率操作模式運(yùn)動(dòng)有干擾,長(zhǎng)期的平均速度保持不變。如果電動(dòng)機(jī)不能保持指定的速率(例如閉環(huán)引起的),期望位置將繼續(xù)增加,結(jié)果導(dǎo)致非常大的位置偏差。如果這種情形沒(méi)被發(fā)覺(jué),對(duì)電動(dòng)機(jī)的壓迫力隨之減小,電動(dòng)機(jī)為了與預(yù)期位置(仍然是被指定的期望值)一致會(huì)達(dá)到一個(gè)很高的速率。這種情形很容易被發(fā)覺(jué)。 PID反饋濾波器 LM629運(yùn)用PID濾波器補(bǔ)償控制環(huán)。通過(guò)應(yīng)用一個(gè)與位置偏差成比例的恢復(fù)力加于電動(dòng)機(jī)上,電動(dòng)機(jī)在期望位置有效,加上偏差的積分,加上偏差的微分。下面的離散時(shí)間等式說(shuō)明了LM629的控制執(zhí)行:在這里u(n)為電動(dòng)機(jī)在采樣時(shí)間n的控制信號(hào)輸出,e(n)為在采樣時(shí)間n的位置偏
30、差,n表示微分采樣速度,而且kp,ki,kd為用戶(hù)下載的離散時(shí)間濾波器參數(shù)。第一個(gè)階段,比例階段,提供一個(gè)與位置偏差成比例的恢復(fù)力。第二個(gè)階段,積分階段,提供一個(gè)隨著時(shí)間增長(zhǎng)的恢復(fù)力,而且因此確保靜態(tài)位置偏差為0。第三個(gè)階段,微分階段,提供一個(gè)與位置偏差的變化速率成比例的壓力。在操作中,濾波器運(yùn)算法則接收從總的連接回路得來(lái)的16位偏差信號(hào)。這個(gè)偏差信號(hào)充滿(mǎn)16位以保證可預(yù)知的行為。另外乘上濾波器參數(shù)kp,偏差信號(hào)加到先前的偏差上(組成積分信號(hào)),而且以所選擇的積分采樣周期所確定的速度,再減去先前的偏差(從積分信號(hào))。所有濾波器乘法都為16位操作;只有乘積的底部16位有用。 積分信號(hào)保持24位,
31、但只有頂部16位有用。這個(gè)測(cè)量技術(shù)結(jié)果導(dǎo)致參數(shù)ki值的更可用(不敏感)范圍。這16位正好轉(zhuǎn)換為8位且與濾波器參量ki相乘組成一組由于電動(dòng)機(jī)控制輸出。這個(gè)乘積的相對(duì)級(jí)與參數(shù)il相比較,而且至少適當(dāng)?shù)貥?biāo)記量然后加入電動(dòng)機(jī)控制信號(hào)。每個(gè)微分采樣周期,微分信號(hào)與參數(shù)kd相乘。這個(gè)乘積加入到每個(gè)采樣周期的電動(dòng)機(jī)控制輸出,獨(dú)立于用戶(hù)所選擇的微分采樣周期。kp,限制的ki和kd產(chǎn)生階段被相加組成一個(gè)16位數(shù)。依賴(lài)于輸出模式(字號(hào)),高8位或高12位成為電動(dòng)機(jī)控制輸出信號(hào)。 LM629讀和寫(xiě)操作 當(dāng)端口選擇端(PS)為邏輯低電平時(shí),微處理器通過(guò)主機(jī)I/O端口向LM629寫(xiě)入數(shù)據(jù)。期望命令編碼應(yīng)用到并行端口且寫(xiě)
32、輸入被激活。當(dāng)WR輸入為上升沿時(shí)命令字鎖入LM629。當(dāng)寫(xiě)命令字時(shí)需要首先讀狀態(tài)字而且核對(duì)被稱(chēng)作“busy bit”(Bit0)的狀態(tài)。當(dāng)busy bit為邏輯高電平時(shí),不會(huì)發(fā)生命令寫(xiě)狀態(tài)。busy bit決不可能保持邏輯高電平狀態(tài)長(zhǎng)于100ps,而且在15到25ps之內(nèi)顯著降低。 微處理器用相似的方法讀LM629的狀態(tài)字:當(dāng)PS為邏輯低電平時(shí)激活讀(RD)輸入;當(dāng)RD為低電平時(shí)狀態(tài)信息保持不變。當(dāng)PS(Pin 16)邏輯高電平時(shí)發(fā)生寫(xiě)和讀數(shù)據(jù)到/從LM629(就像寫(xiě)命令和讀狀態(tài))。這些寫(xiě)和讀通常是雙字節(jié)字的整數(shù)(從1到7),而且每個(gè)字的首字節(jié)更為重要。每個(gè)字節(jié)都需要寫(xiě)(WR)或讀(RD)觸發(fā)
33、。當(dāng)傳輸數(shù)據(jù)字時(shí),需要首先讀狀態(tài)字和核對(duì) “busy bit”的狀態(tài)。當(dāng)busy bit為邏輯低電平時(shí),用戶(hù)可以隨之傳輸一個(gè)數(shù)據(jù)字的雙字節(jié),但busy bit必須重新核對(duì)而且在試圖傳輸下一個(gè)字節(jié)前被確認(rèn)為邏輯低電平(當(dāng)傳輸多字節(jié)字時(shí))。數(shù)據(jù)傳輸通過(guò)LM629內(nèi)部中斷完成;當(dāng)LM629可能不對(duì)數(shù)據(jù)傳輸(或命令字)產(chǎn)生中斷時(shí),busy bit將通告微處理器。當(dāng)busy bit為高電平時(shí)寫(xiě)命令,命令將被忽略。當(dāng)寫(xiě)命令字或讀或?qū)憯?shù)據(jù)的第二個(gè)字節(jié)時(shí),busy bit迅速變?yōu)檫壿嫺唠娖健?旋轉(zhuǎn)編碼器接口 旋轉(zhuǎn)(位置反饋)編碼器接口由三相組成:相A(管腳2),相B(管腳3)和標(biāo)準(zhǔn)脈沖(管腳1)。標(biāo)準(zhǔn)脈沖輸出
34、對(duì)一些編碼器無(wú)效。LM629將與兩種編碼器類(lèi)型工作,但命令SIP和RDIP在沒(méi)有標(biāo)準(zhǔn)脈沖時(shí)沒(méi)有意義(或者為了這個(gè)輸入選擇兩個(gè)輸入中的一個(gè),要確定不使用時(shí)將管腳1置為高電平)。一些注意事項(xiàng)相對(duì)于使用在高高斯噪音環(huán)境下有更多優(yōu)點(diǎn)。如果噪音添加入編碼器輸入(一個(gè)或兩個(gè)輸入)且直到下一個(gè)編碼器轉(zhuǎn)換才持續(xù),LM628譯編器邏輯將拒絕它。模仿積分?jǐn)?shù)值或經(jīng)由編碼器轉(zhuǎn)換的噪音必須通過(guò)近似EMI設(shè)計(jì)來(lái)消除。簡(jiǎn)易數(shù)字過(guò)濾設(shè)計(jì)僅僅減小噪音的易感性(這將會(huì)總是有寬于過(guò)濾器可以消除的噪音脈沖)。此外,任何噪音過(guò)濾設(shè)計(jì)都將減小譯碼器帶寬。在LM629中已經(jīng)規(guī)定不包括有利于提供最大可能譯碼器帶寬的噪音過(guò)濾器(由于簡(jiǎn)易過(guò)濾不
35、消除噪音的問(wèn)題)。試圖驅(qū)動(dòng)與簡(jiǎn)單TTL線(xiàn)相當(dāng)長(zhǎng)距離的編碼器信號(hào)也能以信號(hào)衰減(短暫的上升時(shí)間和/或響聲)的形式成為“噪音”的一個(gè)來(lái)源。這也能引起一個(gè)系統(tǒng)丟失位置的完整性。也許能通過(guò)在編碼器輸入上使用平衡鏈驅(qū)動(dòng)器和接收器擁有對(duì)噪音感應(yīng)更有效的對(duì)策。LM628/LM629芯片圖如下圖3-1所示:圖3-1 LM628/LM629芯片圖 CAN現(xiàn)場(chǎng)總線(xiàn) CAN通信協(xié)議CAN通信協(xié)議2.0B規(guī)定了4種不同的幀格式:數(shù)據(jù)幀、遠(yuǎn)程幀、錯(cuò)誤幀和超載幀。其中數(shù)據(jù)幀用來(lái)傳輸數(shù)據(jù)的,遠(yuǎn)程幀用于請(qǐng)求數(shù)據(jù),超載幀用于擴(kuò)展幀序列的延遲時(shí)間,而當(dāng)局部檢測(cè)出錯(cuò)條件后產(chǎn)生一個(gè)全局信號(hào)出錯(cuò)幀。在這里,我們使用的是CAN2.0B協(xié)
36、議。 CAN2.0B標(biāo)準(zhǔn)幀CAN標(biāo)準(zhǔn)信息幀為11個(gè)字節(jié),包括兩部分:信息和數(shù)據(jù)部分。前3個(gè)字節(jié)為信息部分,如表4-1所示:表4-1 CAN2.0B標(biāo)準(zhǔn)幀7654321字節(jié)1FFRTRXXDLC(數(shù)據(jù)長(zhǎng)度)字節(jié)2(報(bào)文識(shí)別碼)ID.10ID.3字節(jié)3ID.2ID.0RTR字節(jié)4數(shù)據(jù)1字節(jié)5數(shù)據(jù)2字節(jié)6數(shù)據(jù)3字節(jié)7數(shù)據(jù)4字節(jié)8數(shù)據(jù)5字節(jié)9數(shù)據(jù)6字節(jié)10數(shù)據(jù)7字節(jié)11數(shù)據(jù)8注:字節(jié)1為幀信息:第7位(FF)表示幀格式,在標(biāo)準(zhǔn)幀中,F(xiàn)F=0;第6位(RTR)表示幀的類(lèi)型,RTR=0表示為數(shù)據(jù)幀,RTR=1表示為遠(yuǎn)程幀;DLC表示在數(shù)據(jù)幀時(shí)實(shí)際的數(shù)據(jù)長(zhǎng)度。字節(jié)2、字節(jié)3為報(bào)文識(shí)別碼,11位有效。字節(jié)4字
37、節(jié)11為數(shù)據(jù)幀的實(shí)際數(shù)據(jù),遠(yuǎn)程幀時(shí)無(wú)效。 CAN 2.0B擴(kuò)展幀CAN擴(kuò)展幀信息為13B,包括兩部分:信息和數(shù)據(jù)部分。前5個(gè)字節(jié)為信息部分,如表4-2所示:表4-2 CAN2.0B擴(kuò)展幀7654321字節(jié)1FFRTRXXDLC(數(shù)據(jù)長(zhǎng)度)字節(jié)2(報(bào)文識(shí)別碼)ID.28ID.21字節(jié)3ID.20ID.13字節(jié)4ID.12ID.5字節(jié)5ID.4ID.0XXX字節(jié)6數(shù)據(jù)1字節(jié)7數(shù)據(jù)2字節(jié)8數(shù)據(jù)3字節(jié)9數(shù)據(jù)4字節(jié)10數(shù)據(jù)5字節(jié)11數(shù)據(jù)6字節(jié)12數(shù)據(jù)7字節(jié)13數(shù)據(jù)8至于數(shù)據(jù)幀對(duì)于不同的CAN上層協(xié)議,存在著不同的定義,本機(jī)器人單關(guān)節(jié)控制器使用的是CAN2.0B標(biāo)準(zhǔn)幀,應(yīng)用層由用戶(hù)定義,因?yàn)镃AN只提供了
38、物理層和數(shù)據(jù)鏈路層。 CAN控制器配置CAN控制器在應(yīng)用時(shí),根據(jù)所要完成功能的不同而需要做的不同配置做具體描述。這包括報(bào)文對(duì)象初始化處理、發(fā)送對(duì)象配置、接收對(duì)象配置、中斷處理配置;另外,還有發(fā)送對(duì)象、位定時(shí)寄存器等配置。報(bào)文對(duì)象初始化處理報(bào)文RAM中的報(bào)文對(duì)象配置在使用前必須由CPU來(lái)初始化為零或者被設(shè)置為無(wú)效。報(bào)文對(duì)象的配置是通過(guò)相應(yīng)的接口寄存器來(lái)設(shè)置其屏蔽碼、仲裁場(chǎng)、控制場(chǎng)和數(shù)據(jù)場(chǎng)值,而這一設(shè)置過(guò)程由相應(yīng)的命令寄存器來(lái)完成。當(dāng)CAN控制寄存器中的GRES位置零,CAN控制器中的協(xié)議控制器、狀態(tài)機(jī)制和報(bào)文處理機(jī)將控制CAN的內(nèi)部數(shù)據(jù)流。接收到的報(bào)文通過(guò)接收濾波后都存放在報(bào)文RAM中,而得到傳
39、輸請(qǐng)求的報(bào)文都要移入CAN控制器的移位寄存器中并通過(guò)CAN總線(xiàn)傳出。發(fā)送對(duì)象的配置當(dāng)報(bào)文對(duì)象作為發(fā)送對(duì)象時(shí),仲裁寄存器將被應(yīng)用,它們定義了即將發(fā)送的報(bào)文識(shí)別符和類(lèi)型,如果使用11位識(shí)別符(標(biāo)準(zhǔn)幀),那么使用的是ID0ID11,而ID12ID28將被忽視。如果TxIE位被置位,則TxOK位在此報(bào)文對(duì)象被成功發(fā)送后被置位;如果RxENA位被置位,在接收到匹配的遠(yuǎn)程幀將引起TxRqst位被置位。若數(shù)據(jù)寄存器將被使用,TxRqst和RxENA在數(shù)據(jù)有效前不會(huì)被置位。屏蔽寄存器可以用來(lái)允許相同識(shí)別符的數(shù)據(jù)幀組被接收。中斷處理在所有中斷中,狀態(tài)中斷具有最高優(yōu)先級(jí),報(bào)文對(duì)象的中斷優(yōu)先級(jí)隨著報(bào)文編號(hào)的增大而減
40、小。如果有幾個(gè)中斷產(chǎn)生,那么CAN中斷寄存器將指向優(yōu)先級(jí)最高的中斷,而不是按中斷先后順序排列。狀態(tài)中斷通過(guò)讀取狀態(tài)寄存器來(lái)清除,報(bào)文中斷通過(guò)清除報(bào)文對(duì)象的ENCH n位來(lái)清除。處于中斷寄存器中的中斷識(shí)別符ENCH n能表明中斷的原因,如果這個(gè)寄存器的值為0,沒(méi)有中斷產(chǎn)生;否則,有中斷發(fā)生。CPU控制著狀態(tài)寄存器的改變是否可以引起中斷;當(dāng)中斷寄存器的值不為0(CANCONCH控制寄存器中的IE位)時(shí)中斷隊(duì)列是否有效。CPU有兩種方式判斷報(bào)文中斷源,每一種是判斷中斷寄存器中的ENCH n位;另一種是順序掃描中斷發(fā)生寄存器。 機(jī)器人單關(guān)節(jié)控制器硬件設(shè)計(jì)機(jī)器人單關(guān)節(jié)控制器硬件電路是控制系統(tǒng)的載體,主要
41、包括位置檢測(cè)模塊、運(yùn)動(dòng)模塊和CAN通訊模塊。位置檢測(cè)模塊用于把采集過(guò)來(lái)的信號(hào)處理為控制器可以識(shí)別的信號(hào);CAN通訊模塊用于電平轉(zhuǎn)換以使其他機(jī)器通過(guò)CAN協(xié)議通信;運(yùn)動(dòng)模塊用于控制運(yùn)動(dòng)。AT89C51CC03單片機(jī)是數(shù)據(jù)通信和控制的核心,也是位置檢測(cè)模塊、運(yùn)動(dòng)模塊和CAN通訊模塊不可或缺的組成部分。 位置檢測(cè)模塊設(shè)計(jì)機(jī)器人控制器主要有兩種傳感器,一種是用于感知機(jī)器人局部環(huán)境的紅外傳感器;另外一種則是檢測(cè)電動(dòng)機(jī)軸位置的增量式光電編碼器。本文主要介紹電動(dòng)機(jī)軸位置反饋信號(hào)的檢測(cè),采用檢測(cè)電動(dòng)機(jī)軸位置的增量式光電編碼器。電路將增量式光電編碼器輸出的差動(dòng)信號(hào)(A+、A-、B+、B-、,Z+、,Z-)經(jīng)過(guò)A
42、M26LS32差分放大器合成單端信號(hào)A、B、IN。合成后的單端信號(hào)A、B、IN分別與LM629的管腳A 、B、IN相連。利用差動(dòng)信號(hào)傳輸,可以有效地解決干擾問(wèn)題和遠(yuǎn)距離傳輸問(wèn)題。為了進(jìn)一步消除干擾,在輸入端每根線(xiàn)上都加上一個(gè)濾波電容,在每根差動(dòng)的信號(hào)線(xiàn)上接一個(gè)用于線(xiàn)路阻抗匹配的限流電阻。增量式碼盤(pán)反饋的脈沖信號(hào)經(jīng)過(guò)四倍頻后,提高了分辨率。A和B的邏輯狀態(tài)每改變一次,LM629的位置寄存器就加(減)1。當(dāng)碼盤(pán)的A、 B、IN都為低電平時(shí),產(chǎn)生一個(gè)Index信號(hào)送人寄存器,記錄電動(dòng)機(jī)的絕對(duì)位置。圖5-1為位置檢測(cè)模塊電路,其中CON8為增量式旋轉(zhuǎn)編碼器接口。圖5-1 位置檢測(cè)模塊電路 運(yùn)動(dòng)模塊設(shè)計(jì)
43、 運(yùn)動(dòng)模塊電路運(yùn)動(dòng)模塊的核心芯片是LM629精密運(yùn)動(dòng)控制器。LM629精密運(yùn)動(dòng)控制器的8位數(shù)據(jù)口D0D7與AT89C51CC03單片機(jī)的P0.0P0.7口相連,單片機(jī)的P1.0與LM629的CS片選端相連,用于控制片選(低電平有效)。AT89C51CC03單片機(jī)的P3.7、P3.6(RD、WR)分別與LM629的讀/寫(xiě)端(RD、WR)相連,用于控制讀/寫(xiě)操作(低電平有效)。AT89C51CC03單片機(jī)的P1.1與LM629的命令/數(shù)據(jù)控制端(PS)相連,用于控制命令/數(shù)據(jù)。LM629接收來(lái)自AT89C51CC03單片機(jī)的位置、速度或加速度等命令,經(jīng)過(guò)內(nèi)部梯形圖發(fā)生器和PID調(diào)節(jié)器的運(yùn)算,輸出脈
44、寬調(diào)制信號(hào)和方向信號(hào),由引腳PWMM(脈寬調(diào)制信號(hào))和PWMS輸出(方向控制信號(hào))。功率放大部分主要由L298N芯片和續(xù)流二極管組成。L298N是雙極性H橋功率放大驅(qū)動(dòng)器,與LM629輸出信號(hào)PWMM和PWMS通過(guò)一個(gè)邏輯門(mén)電路相連,控制直流電機(jī)的正、反轉(zhuǎn)和停止。LM629精密運(yùn)動(dòng)控制器與AT89C51CC03單片機(jī)的連接電路如下圖5-2所示:圖5-2 LM629與AT89C51CC03接口電路 運(yùn)動(dòng)控制初始化LM629準(zhǔn)備工作前,必須初始化LM629運(yùn)動(dòng)控制芯片,設(shè)置各個(gè)控制參數(shù),否則LM629將無(wú)法正常工作。在初始化時(shí),首先復(fù)位LM629,向LM629寫(xiě)入控制命令字0X00,將命令字寫(xiě)入L
45、M629控制寄存器中,等待LM629空閑時(shí)再進(jìn)行下一個(gè)命令字的輸入。然后設(shè)置LM629輸出為8位,定義零位,設(shè)置中斷等操作。LM629初始化過(guò)程如下圖5-3所示:NY定義零位 0X02設(shè)置輸出端口碼為8位復(fù)位LM629寫(xiě)入命令字0X00將命令字鎖入LM629檢測(cè)LM629是否忙?設(shè)置中斷配置開(kāi) 始 結(jié) 束圖5-3 LM629初始化流程圖LM629的初始化程序如下:/* 復(fù)位命令 */void LM629_RESET(void) /*復(fù)位*/ P0=0x00; /*0X05=PORT8命令*/WR_COMMAND(); WR_HIGH(); LM629_BUSY(); /*如果忙,則一直循環(huán)*/
46、 /* 設(shè)置輸出端口號(hào)碼為8位 */void LM629_PORT8(void) /*設(shè)置輸出端口號(hào)碼為8位*/ P0=LM_PORT8_CMD; /*0X05=PORT8命令*/WR_COMMAND(); WR_HIGH(); LM629_BUSY(); /*如果忙,則一直循環(huán)*/ /* 定義零位 */ void LM629_DFH(void)/*定義零位*/ P0=LM_DFH_CMD; /*DFH命令=0x02*/WR_COMMAND(); WR_HIGH(); LM629_BUSY(); /* 設(shè)置指定位置 */void LM629_SIP(void) /*SIP命令:設(shè)置指定位置 0
47、3Hex*/ P0=LM_SIP_CMD; WR_COMMAND(); WR_HIGH(); LM629_BUSY(); /* LM629初始化 */Void LM629_Init(void) LM629_RESET( ); /*復(fù)位命令*/LM629_PORT8( ); LM629_DFH( ); /* 定義零位*/LM629_SIP( ); 運(yùn)動(dòng)控制模塊工作時(shí),由控制器對(duì)LM629給出加速度、速度和目標(biāo)位置值,每個(gè)采樣周期都用這些值計(jì)算出新的命令和位置給定值并送人求和點(diǎn)。由編碼器檢測(cè)電機(jī)的實(shí)際位置,其輸出信號(hào)經(jīng)過(guò)LM629內(nèi)部的位置解碼器解碼后作為求和點(diǎn)的另一個(gè)輸入與給定值相減,得到的誤差
48、值作為數(shù)字PID校正環(huán)節(jié)的輸入??梢苑奖愕卣{(diào)整PID控制器的參數(shù)從而滿(mǎn)足穩(wěn)定性、響應(yīng)時(shí)間、超調(diào)量等要求。對(duì)于特性參數(shù)固定不變的負(fù)載,可在運(yùn)動(dòng)控制之前向LM629寫(xiě)入PID參數(shù);而對(duì)于運(yùn)動(dòng)過(guò)程中特性參數(shù)發(fā)生變化的負(fù)載,可以在運(yùn)動(dòng)過(guò)程中,隨時(shí)改變PID參數(shù)以適應(yīng)不同特性需求。除了加速度,所有的運(yùn)動(dòng)參數(shù)均可在運(yùn)動(dòng)過(guò)程中加以改變。其控制流程圖如5-4所示:0X0C 0X08 0X07 0X0A 0X0B 0X00 0X05 0X02 0X03 0X1B 主機(jī)控制命令?復(fù)位/異常 控制命令PID/運(yùn)動(dòng) 控制命令狀態(tài)/信息 控制命令0X1F 0X01.開(kāi) 始結(jié) 束圖5-4 LM629運(yùn)動(dòng)控制流程圖 用戶(hù)命
49、令集下面的文字描述了LM629的用戶(hù)命令集。一些命令函數(shù)可以單獨(dú)使用,一些命令函數(shù)需要帶上必要的控制參數(shù)。例如,命令STT(Start motion)不需要附加的數(shù)據(jù);命令LFIL(Load FILter parameters)需要附加的數(shù)據(jù)(derivative-term采樣周期和/或?yàn)V波器參數(shù))。命令有下列功能:初始化、中斷控制、濾波器控制、軌跡控制和數(shù)據(jù)報(bào)告。每個(gè)命令名下面為它的命令函數(shù)。初始化命令 下面四個(gè)LM629用戶(hù)命令用于首先初始化系統(tǒng)。 復(fù)位命令:復(fù)位LM629 命令函數(shù):LM629_RESET(void) PORT8命令:設(shè)置輸出端口號(hào)碼為8位 命令函數(shù):LM629_PORT
50、8(void) DFH命令:定義零位 命令函數(shù):LM629_DFH(void) 中斷控制命令 下面七個(gè)LM629用戶(hù)命令在用于中斷主機(jī)的情形使用。為了潛在中斷條件經(jīng)由管腳17準(zhǔn)確地中斷微處理器,與命令MSKI一起的中斷任務(wù)數(shù)據(jù)的相應(yīng)位必須被設(shè)置為邏輯高電平(無(wú)任務(wù)狀態(tài))。 所有中斷的辨識(shí)經(jīng)過(guò)讀和分析狀態(tài)字都被微處理器所認(rèn)識(shí)。盡管所有的中斷經(jīng)由命令MSKI均被屏蔽,每個(gè)情形的狀態(tài)仍然映射到狀態(tài)字。 SIP命令:設(shè)置指定位置 命令函數(shù):LM629_SIP(void) LPEI命令:下載中斷的位置偏移 命令函數(shù):LM629_LPEI(uint16 PositionError) LPES命令:下載停止
51、的位置偏差 命令函數(shù):LM629_LPES(uint16 PositionError) MSKI命令:MASK中斷 命令函數(shù):LM629_MSKI(uint16 mask) RSTI命令:復(fù)位中斷 命令函數(shù):LM629_RSTI(uint16 mask)濾波器控制命令 下面的兩個(gè)LM629的用戶(hù)命令用于設(shè)置派生階段的周期,目的在于調(diào)整為所需的濾波器參數(shù)與系統(tǒng)協(xié)調(diào),而有控制這些系統(tǒng)改變的時(shí)間。 LFIL命令:下載濾波器參數(shù) 命令函數(shù):LM629_LFIL(uint16 command_word,uint16 kp_data,uint16 ki_data,uint16 kd_data,uint16
52、 il_data) UDF命令:修改濾波器 命令函數(shù):LM629_UDF(void)軌跡控制命令 下面的兩個(gè)LM629用戶(hù)命令用于設(shè)置軌跡控制參量(位置、速度、加速度)、操作模式(位置或速度)和方向(只有速度模式)滿(mǎn)足描述一個(gè)期望運(yùn)動(dòng)或選擇手動(dòng)停止模式和控制這些系統(tǒng)變換周期的要求。 LTRJ命令:下載軌跡參量 命令函數(shù):LM629_LTRJ(uint32 command_word,uint32 acceleration_data,uint32 velocity_data,uint32 position_data) STT命令:開(kāi)始運(yùn)動(dòng)控制 命令函數(shù):LM629_STT(void)數(shù)據(jù)報(bào)告命令下
53、面7個(gè)LM629用來(lái)獲得從LM629各種寄存器來(lái)的數(shù)據(jù)。報(bào)告狀態(tài)、位置和速度信息。除RDSTAT外,數(shù)據(jù)都是在首先向命令端口寫(xiě)入相應(yīng)命令后從LM629數(shù)據(jù)端口讀得。 RDSTAT命令:讀狀態(tài)字 命令函數(shù):LM629_RDSIGS(void) RDIP命令: 讀標(biāo)準(zhǔn)位置 命令函數(shù):LM629_RDIP(void) RDDP命令: 讀期望位置 命令函數(shù):LM629_RDDP(void) RDRP命令: 讀實(shí)際位置 命令函數(shù):LM629_RDRP(void) RDDV命令: 讀取期望速率 命令函數(shù):LM629_RDDV(void) RDRV命令: 讀準(zhǔn)確速率 命令函數(shù):LM629_RDRV(void
54、) RDSUM命令:讀綜合階段總和值 命令函數(shù):LM629_RDSUM(void) CAN通訊模塊設(shè)計(jì) AT89C51CC03的CAN控制器AT89C51CC03單片機(jī)的CAN控制器有以下幾部分構(gòu)成:CAN內(nèi)核、報(bào)文RAM(與AT89C51CC03內(nèi)部 RAM相互獨(dú)立)、報(bào)文狀態(tài)寄存器和控制寄存器。在使用CAN控制器時(shí),重點(diǎn)和難點(diǎn)是對(duì)CAN控制器的寄存器的使用,其內(nèi)部寄存器的分類(lèi)及其主要功能如下:CAN控制器協(xié)議寄存器該協(xié)議寄存器是用來(lái)配置CAN控制器,處理各種中斷,監(jiān)控總線(xiàn)狀態(tài)以及置控制器為測(cè)試模式。CAN控制器協(xié)議寄存器可使用AT89C51CC03單片機(jī)的特殊功能寄存器通過(guò)索引方式間接訪(fǎng)問(wèn),其中有些還可以很方便的通過(guò)AT89C51CC03內(nèi)部特殊功能寄存器直接尋址來(lái)訪(fǎng)問(wèn)
溫馨提示
- 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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 現(xiàn)場(chǎng)急救培訓(xùn)講座
- 店鋪人員培訓(xùn)課件
- 課題研究報(bào)告的內(nèi)容
- 云南大學(xué)本科論文系統(tǒng)
- 酒店設(shè)計(jì)培訓(xùn)
- 指揮部流程建設(shè)標(biāo)準(zhǔn)化實(shí)施路徑
- 幼兒園教師講故事培訓(xùn)
- 泌尿外科護(hù)理要點(diǎn)與操作規(guī)范
- 鏟車(chē)安全培訓(xùn)知識(shí)
- 胸外傷病人的護(hù)理
- 2009-2022歷年河北省公安廳高速交警總隊(duì)招聘考試真題含答案2022-2023上岸必備帶詳解版4
- 六年級(jí)信息技術(shù)下冊(cè)《走進(jìn)人工智能》優(yōu)質(zhì)課獲獎(jiǎng)?wù)n件
- 工程開(kāi)工報(bào)告表
- 勞動(dòng)法課件(完整版)
- 營(yíng)運(yùn)車(chē)輛智能視頻監(jiān)控系統(tǒng)管理制度范本及動(dòng)態(tài)監(jiān)控管理制度
- 完整版:美制螺紋尺寸對(duì)照表(牙數(shù)、牙高、螺距、小徑、中徑外徑、鉆孔)
- 偏頭痛PPT課件(PPT 43頁(yè))
- (完整版)入河排污口設(shè)置論證基本要求
- 10kV架空線(xiàn)路施工方案
- 2022年人教版小學(xué)數(shù)學(xué)一年級(jí)下冊(cè)期中測(cè)試卷二(含答案)
- 關(guān)于恒溫恒濕項(xiàng)目裝修方案及裝修細(xì)部做法
評(píng)論
0/150
提交評(píng)論