鄭衛(wèi)東,房玉吉
(1.海軍裝備部艦船辦公室,北京,100071;2.中國(guó)艦船研究設(shè)計(jì)中心,武漢 430064)
?
越障移動(dòng)機(jī)構(gòu)控制系統(tǒng)設(shè)計(jì)
鄭衛(wèi)東1,房玉吉2
(1.海軍裝備部艦船辦公室,北京,100071;2.中國(guó)艦船研究設(shè)計(jì)中心,武漢 430064)
按照模塊化的設(shè)計(jì)理念,以數(shù)字信號(hào)處理器(DSP)為主控制單元,通過復(fù)雜可編程邏輯器件(CPLD)進(jìn)行功能拓展,封裝成電機(jī)控制模塊,通過CAN通信方式將各模塊與上位機(jī)連接,形成開放式運(yùn)動(dòng)控制系統(tǒng),縮短系統(tǒng)開發(fā)周期,提高系統(tǒng)的開放性及可重構(gòu)性。
數(shù)字信號(hào)處理器;復(fù)雜可編程邏輯器件;運(yùn)動(dòng)控制
隨著遠(yuǎn)洋船舶總尺度不斷增加,船員生活品質(zhì)的不斷提高,船上日常物品包括食品、生活垃圾等的頻繁運(yùn)輸與船舶通道內(nèi)的“立板式”障礙的矛盾越來越突出,迫切需要有效的運(yùn)輸工具。為此,提出一種移動(dòng)機(jī)構(gòu),如圖1所示。
整個(gè)機(jī)構(gòu)共需要12個(gè)驅(qū)動(dòng)電機(jī),包括6個(gè)驅(qū)動(dòng)擺臂的擺臂電機(jī)和6個(gè)驅(qū)動(dòng)車輪轉(zhuǎn)動(dòng)的行走電機(jī),本文主要對(duì)該機(jī)構(gòu)的控制系統(tǒng)進(jìn)行設(shè)計(jì)分析。
由于移動(dòng)機(jī)構(gòu)越障過程的復(fù)雜性及控制的精確性,要求對(duì)所有的驅(qū)動(dòng)電機(jī)均實(shí)現(xiàn)閉環(huán)矢量控制,這都對(duì)控制系統(tǒng)種主控制模塊的運(yùn)算速度提出了較高要求,傳統(tǒng)單片機(jī)構(gòu)成的運(yùn)動(dòng)控制器,由于其數(shù)據(jù)處理能力有限,系統(tǒng)相對(duì)封閉,可靠性和穩(wěn)定性差,因此很難實(shí)現(xiàn)高性能閉環(huán)矢量控制[2]。TI公司推出的TMS320F2407微處理器,是一款專用于電機(jī)控制和運(yùn)動(dòng)控制的芯片,它不僅具備高速的數(shù)據(jù)處理能力,而且片內(nèi)集成了豐富的電機(jī)控制外圍部件[3],是高速高精度電機(jī)運(yùn)動(dòng)控制的理想選擇。
由于TMS320F2407的正交編碼信號(hào)通道僅有2路,若要實(shí)現(xiàn)對(duì)多個(gè)驅(qū)動(dòng)電機(jī)的閉環(huán)控制便要復(fù)用其他引腳采集電機(jī)的編碼器信號(hào),還要在芯片內(nèi)部編寫信號(hào)采集及處理程序,這樣對(duì)芯片的軟、硬件均會(huì)造成浪費(fèi),降低系統(tǒng)的性能。復(fù)雜可編程邏輯器件(CPLD) 具有速度快、可以多路并行、靈活性大、設(shè)計(jì)開發(fā)簡(jiǎn)單以及可靠性高等優(yōu)點(diǎn)[2],可以方便地實(shí)現(xiàn)對(duì)TMS320F2407的功能擴(kuò)展,完成對(duì)電機(jī)編碼器信號(hào)的采集及處理,這樣DSP2407與 CPLD封裝成一個(gè)控制模塊,實(shí)現(xiàn)對(duì)3個(gè)電機(jī)的閉環(huán)控制。
為實(shí)現(xiàn)對(duì)多個(gè)控制模塊的統(tǒng)一控制,保證越障運(yùn)動(dòng)的協(xié)調(diào),設(shè)置一臺(tái)上位機(jī)完成對(duì)越障機(jī)構(gòu)的運(yùn)動(dòng)規(guī)劃及控制。上位機(jī)與各控制模塊之間通過控制器局域網(wǎng)(controller area network,CAN)總線進(jìn)行通信。CAN作為在工業(yè)領(lǐng)域廣泛應(yīng)用的一種總線,具有實(shí)時(shí)性好、抗干擾能力強(qiáng)、成本低、可靠性高、波特率高及開放性好等特點(diǎn),很適合用來搭建機(jī)器人的多電機(jī)控制系統(tǒng)[4],控制系統(tǒng)組成框架如圖2所示。
每個(gè)運(yùn)動(dòng)控制模塊對(duì)3個(gè)驅(qū)動(dòng)電機(jī)進(jìn)行閉環(huán)控制,整個(gè)系統(tǒng)共需要4個(gè)運(yùn)動(dòng)控制模塊,實(shí)現(xiàn)對(duì)12個(gè)電機(jī)的閉環(huán)控制,控制模塊通過CAN總線與上位機(jī)進(jìn)行通信,接受上位機(jī)的統(tǒng)一指令。
為實(shí)現(xiàn)對(duì)驅(qū)動(dòng)電機(jī)的閉環(huán)控制,在每個(gè)電機(jī)上安裝光電編碼器,一般光電編碼器會(huì)有3路脈沖信號(hào)輸出,分別為A,B,Z相,A、B相在相位上相差90°,如圖3所示。
當(dāng)A或B相信號(hào)中有一個(gè)發(fā)生變化時(shí),就記錄一次2者的信號(hào)值。當(dāng)A相信號(hào)超前B相信號(hào)1/4個(gè)周期時(shí),電機(jī)正轉(zhuǎn),相反,A相信號(hào)落后B相信號(hào)1/4個(gè)周期時(shí),電機(jī)反轉(zhuǎn),通過A、B相信號(hào)的相位差來判斷驅(qū)動(dòng)電機(jī)的旋轉(zhuǎn)方向。這樣在一個(gè)信號(hào)變化周期內(nèi)會(huì)得到4組信號(hào)值,相當(dāng)于對(duì)碼盤信號(hào)的采集頻率提高了4倍,相應(yīng)的測(cè)量精度也提高了4倍。Z相在電機(jī)旋轉(zhuǎn)一圈時(shí)才會(huì)輸出一個(gè)脈沖信號(hào),用于定位基準(zhǔn)點(diǎn)。通過計(jì)數(shù)單位時(shí)間內(nèi)A、B相輸出的脈沖個(gè)數(shù)可以得到驅(qū)動(dòng)電機(jī)的轉(zhuǎn)速,通過對(duì)照基準(zhǔn)信號(hào)可以得到電機(jī)的位置。通過Quartus II對(duì)光電編碼器信號(hào)采集處理程序的仿真如圖4所示。
CPLD要將處理后的光電編碼器信號(hào)發(fā)送至DSP,可以通過SPI、SCI或總線方式。SPI和SCI均為串行通信,傳輸速度相對(duì)較低,但不會(huì)占用過多的硬件資源,且SPI相對(duì)于SCI在軟件編程方面的工作量較小,相對(duì)簡(jiǎn)單,所以一般選擇SPI串行通信作為DPLD與DSP之間的信息傳輸方式。通過CPLD程序編譯軟件設(shè)置74165移位寄存器,可以方便地實(shí)現(xiàn)CPLD與DSP內(nèi)SPI的對(duì)接。圖4為Quartus II庫(kù)中的74165移位寄存器。
74165移位寄存器共8位,8位數(shù)據(jù)在移位/置入控制引腳STLD為低電平時(shí)并行置入寄存器,當(dāng)STLD為高電平時(shí),禁止并行置入。時(shí)鐘引腳(CLK,CLKIN)功能相同,可交換使用。由于驅(qū)動(dòng)電機(jī)碼盤脈沖信號(hào)計(jì)數(shù)器的位數(shù)為16位,需要16位的寄存器來接收。將2個(gè)74165移位寄存器串聯(lián),即將其中1個(gè)的串行數(shù)據(jù)輸出口連接至另1個(gè)的串行數(shù)據(jù)輸入口,將CLKIN端子作為片選端子,CLK端子作為時(shí)鐘輸入端子。在CPLD內(nèi)設(shè)置4個(gè)74165移位寄存器,完成對(duì)2個(gè)驅(qū)動(dòng)電機(jī)的碼盤脈沖信號(hào)采集,2組碼盤脈沖采集信號(hào)均通過SPI串行通信方式將信號(hào)發(fā)送至DSP。由于DSP只有1個(gè)SPI端口,2組碼盤脈沖采集信號(hào)需要共用1條傳輸通道,為防止2組碼盤信號(hào)的相互干擾,在2組信號(hào)的輸出段各增加1個(gè)3態(tài)緩沖門,將整個(gè)碼盤采集、處理、發(fā)送程序封裝成1個(gè)獨(dú)立的模塊,每個(gè)模塊對(duì)應(yīng)2臺(tái)。
驅(qū)動(dòng)電機(jī)碼盤信號(hào)的計(jì)數(shù)器為將2個(gè)74165移位寄存器串聯(lián)完成對(duì)1個(gè)光電編碼器信號(hào)的采集處理、1個(gè)CPLD可以負(fù)責(zé)2個(gè)光電編碼器信號(hào)。為2組串聯(lián)的移位寄存器的STLD引腳接入來自同一信號(hào)源的置位信號(hào),當(dāng)置位信號(hào)到來時(shí),數(shù)據(jù)被同時(shí)鎖存到移位寄存器內(nèi),保證控制精度。
DSP2407A自身帶有1個(gè)串行通訊接口模塊SPI,它是1個(gè)高速、同步串行接口,主要用于DSP與其他處理器或外設(shè)之間的數(shù)據(jù)通信,當(dāng)不使用SPI進(jìn)行通信時(shí),該引腳可作為一般的I/O接口。該通信方式的數(shù)據(jù)長(zhǎng)度為1~16位可編程,傳輸速率也可以通過調(diào)整波特率的形式進(jìn)行編程,由于本模塊中的數(shù)據(jù)傳輸方向僅為由CPLD至DSP,并不是雙向傳輸,所以僅使用SPI通信模塊的2個(gè)引腳即可。
由于整個(gè)控制系統(tǒng)有12臺(tái)閉環(huán)控制的驅(qū)動(dòng)電機(jī),4個(gè)運(yùn)動(dòng)控制模塊,為實(shí)現(xiàn)對(duì)移動(dòng)機(jī)構(gòu)的精確控制,保證動(dòng)作的協(xié)調(diào)性,需要有1臺(tái)上位機(jī)進(jìn)行統(tǒng)一控制,結(jié)合以DSP為核心的控制系統(tǒng)的特點(diǎn),采用CAN總線方式作為上位機(jī)與控制模塊間的通信方式。
CAN通信構(gòu)架示意于圖6。CAN總線只需要CAN_H和CAN_L 2根通信線,其他控制模塊可以通過DSP自帶的CAN通信接口直接連接至總線上。
DSP內(nèi)嵌的CAN通信模塊有6個(gè)通信郵箱,用于數(shù)據(jù)信息的接收和發(fā)送。由于1個(gè)以DSP為核心的控制模塊控制3臺(tái)電機(jī),選取其中的1個(gè)郵箱便可滿足本控制系統(tǒng)的通信需求,對(duì)于擺臂電機(jī),除首尾各8位的校驗(yàn)位,其余各位用于存儲(chǔ)3個(gè)擺臂電機(jī)的轉(zhuǎn)向及位置;對(duì)于行走電機(jī),除首尾各8位的校驗(yàn)位,其余各位用于存儲(chǔ)3個(gè)行走電機(jī)的速度大小及方向。
通過CPLD擴(kuò)展DSP的控制功能,共同構(gòu)成驅(qū)動(dòng)電機(jī)閉環(huán)控制控制模塊,作為多電機(jī)控制系統(tǒng)的基本單元,通過CAN總線接受上位機(jī)的統(tǒng)一指令,縮短控制系統(tǒng)的開發(fā)周期及工作量,顯著提供系統(tǒng)的開放性及可重構(gòu)性。
[1] 房玉吉,李瑋.一種新型船用運(yùn)輸機(jī)構(gòu)[J].船海工程,2016,45(2):121-123.
[2] 劉洋,趙金.基于DSP+CPLD的多軸矢量運(yùn)動(dòng)控制器的設(shè)計(jì)[J].電氣傳動(dòng),2005,35(12):15-17.
[3] 戴曉星,顏曉河.基于TMS320F240的雙閉環(huán)調(diào)速系統(tǒng)[J].機(jī)電工程,2007,24(12):79-81.
[4] 楊坤,李聲晉,盧剛,等.基于CAN總線的輪腿式機(jī)器人控制系統(tǒng)設(shè)計(jì)[J].2009(4):28-31.
[5] 房玉吉.輪腿復(fù)合式移動(dòng)機(jī)器人越障分析與控制系統(tǒng)設(shè)計(jì)[D].哈爾濱:哈爾濱工業(yè)大學(xué),2010.
Design of the Obstacle-climbing Mechanism
ZHENG Wei-dong1, FANG Yu-ji2
(1.Ship Office of Naval Department of PLAN, Beijing 100071, China; 2.China Ship Development and Design Center, Wuhan 430064, China)
In accordance with the modular design concept, an open motion control system is designed, with CAN as a means of communication between the control module and the host computer, with the DSP as the core, using the CPLD for function expansion. It shortened the development period and improved the openness and re-configurability of the system.
DSP; CPLD; motion control
10.3963/j.issn.1671-7953.2017.03.024
2017-03-07
國(guó)家部委基金資助項(xiàng)目
鄭衛(wèi)東(1965—),男,學(xué)士,高級(jí)工程師
研究方向:船舶保障系統(tǒng)
U664.6
A
1671-7953(2017)03-0106-03
修回日期:2017-03-27