1 控制器的軟件構(gòu)造
該控制系統(tǒng)最大的特點(diǎn)在于位置、速度、電流三種控制方式可隨時(shí)變更。為了獲得可調(diào)的直流電壓,利用電力電子器件的完全可控性,采用PWM脈寬調(diào)制技術(shù),直接將恒定的直流電壓調(diào)制成可變大小和極性的直流電壓作為電機(jī)的電樞端電壓,實(shí)現(xiàn)系統(tǒng)的平滑調(diào)速。在每一個(gè)控制周期,三種控制模式獨(dú)立計(jì)算,控制器將計(jì)算結(jié)果以PWM信號(hào)形式輸出到電機(jī)驅(qū)動(dòng)器,同時(shí)電機(jī)的位置、速度和電流能實(shí)時(shí)測(cè)量并送到主控微機(jī),從而機(jī)器人的各個(gè)關(guān)節(jié)能根據(jù)不同的外部環(huán)境采取不同的控制方式。該控制器的控制原理如圖1所示。
為了實(shí)現(xiàn)上述目標(biāo),在控制器軟件的開(kāi)發(fā)上,采用了模塊化和子程序嵌套的設(shè)計(jì)思想??刂破鞯挠?jì)算周期T為400μs,每一個(gè)周期劃分成32個(gè)處理模塊,利用中斷處理在每一個(gè)處理模塊(t=12.5μs)中對(duì)電機(jī)位置譯碼的脈沖進(jìn)行計(jì)數(shù)測(cè)量??刂破鬈浖?gòu)造及主要模塊的功能如圖2所示。
2 操作指令
該控制器的操作指令包括控制指令、設(shè)定指令、詢問(wèn)指令等。指令格式的最高字節(jié)為命令字節(jié),即控制器的ID號(hào)和Code(指令號(hào))。ID指出控制器的識(shí)別號(hào)碼,Code指出指令代碼,它們各占4位。
需要注意的是,對(duì)于控制和設(shè)定指令,緊隨命令字節(jié)的是n個(gè)字節(jié)組成的控制或設(shè)定指令數(shù)據(jù),但詢問(wèn)指令僅有命令字節(jié),沒(méi)有指令數(shù)據(jù)。
2.1 控制指令
伺服控制系統(tǒng)的三種控制模式均有相應(yīng)的控制指令。
位置控制應(yīng)用于進(jìn)行連續(xù)點(diǎn)控制的插補(bǔ)點(diǎn)位置控制。位置控制數(shù)據(jù)由三個(gè)字節(jié)的有符號(hào)數(shù)來(lái)表示,其最大值和最小值分別為223-1(=7FFFFFH)和-223+1(=800000H)。其中,0H~7FFFFF為電機(jī)的正方向,800000H~FFFFFFH為電機(jī)的負(fù)方向。位置控制指令的格式如圖3所示。
速度控制應(yīng)用于機(jī)器人關(guān)節(jié)以一定速度運(yùn)動(dòng)的場(chǎng)合。速度控制數(shù)據(jù)由一個(gè)字節(jié)的有符號(hào)數(shù)來(lái)表示,其最大值和最小值分別為27-1(=7F)和-27+1(=80)。
其中,0H~7F為電機(jī)的正方向,80H~FFH為電機(jī)的負(fù)方向。在速度控制模式下,需要停止指令、目標(biāo)值為零的速度或電流控制指令或到達(dá)極限位置時(shí),系統(tǒng)才能停止運(yùn)行。
電流控制(轉(zhuǎn)矩控制)不僅可以應(yīng)用于電機(jī)的轉(zhuǎn)動(dòng)方向和電流的控制方向相同的場(chǎng)合,還可以應(yīng)用在外力作用下,電機(jī)處于停止?fàn)顟B(tài)或電機(jī)的轉(zhuǎn)動(dòng)方向和電流的控制方向相反的場(chǎng)合。電流控制指令的格式和數(shù)據(jù)字節(jié)的最大最小值與速度控制指令相同。在電流控制模式下,停止方式也和速度控制模式相同。
位置速度復(fù)合控制應(yīng)用于一般位置控制,包括啟動(dòng)階段的加速控制、速度控制、到達(dá)目標(biāo)前的減速控制和位置控制四個(gè)部分。位置速度復(fù)合控制指令的控制數(shù)據(jù)包括3個(gè)字節(jié)的目標(biāo)位置數(shù)據(jù),1個(gè)字節(jié)的目標(biāo)速度數(shù)據(jù),1個(gè)字節(jié)的最大電流數(shù)據(jù),共5個(gè)字節(jié)。各數(shù)據(jù)的最大最小值分別對(duì)應(yīng)同上。
2.2 設(shè)定指令
控制增益設(shè)定指令用于設(shè)定位置、速度和電流控制的比例和積分常數(shù)。其指令格式如圖4所示。
運(yùn)動(dòng)范圍設(shè)定指令用于設(shè)定機(jī)器人關(guān)節(jié)的極限位置,其指令格式如圖5所示。其中動(dòng)作端A和動(dòng)作端B分別表示正方向的最大和最小位置。
系統(tǒng)設(shè)定主要用于根據(jù)控制系統(tǒng)的需要設(shè)定各種系統(tǒng)數(shù)據(jù)。設(shè)定數(shù)據(jù)由一個(gè)字節(jié)的無(wú)符號(hào)數(shù)來(lái)表示。
2.3 詢問(wèn)指令
詢問(wèn)指令的主要功能是查詢各電機(jī)的位置、速度和電流數(shù)據(jù),并且發(fā)信側(cè)只有接收到受信側(cè)返回的數(shù)據(jù)后才能發(fā)送下一個(gè)詢問(wèn)指令,即詢問(wèn)指令通過(guò)一問(wèn)一答的形式進(jìn)行通信。詢問(wèn)指令僅由命令字節(jié)組成。
位置詢問(wèn)指令的返信數(shù)據(jù)格式同圖3。
速度和電流詢問(wèn)指令的返信數(shù)據(jù)均只有一個(gè)命令字節(jié)和一個(gè)數(shù)據(jù)字節(jié)。其返信數(shù)據(jù)的格式如圖6所示。
3 通 信
3.1 控制系統(tǒng)連接方式
由于該控制器的通信接口為RS 485,PC機(jī)一般只有常用的RS 232串行通信口,主控微機(jī)通過(guò)轉(zhuǎn)換器將標(biāo)準(zhǔn)的RS 232C轉(zhuǎn)換為RS 485后與控制器連接。一個(gè)串口可接16個(gè)控制器??刂破靼ù?lián)通信接口,電機(jī)位置傳感器脈沖接收接口,電機(jī)電流檢測(cè)A/D轉(zhuǎn)換接口,PWM控制輸出接口和其他I/O接口。主控微機(jī)、控制器、驅(qū)動(dòng)器和電機(jī)的連接如圖7所示。
當(dāng)主控微機(jī)對(duì)控制器進(jìn)行控制時(shí),所有的控制器均接收指令。每個(gè)控制器對(duì)接收的指令首先要進(jìn)行ID校驗(yàn),如果接收的數(shù)據(jù)ID與本身的ID號(hào)一致,則執(zhí)行該指令,否則忽略該指令,如圖8所示。
3.2 通信時(shí)間
主控微機(jī)和控制器之間的通信速率為38 400 b/s。在每一個(gè)控制周期,設(shè)計(jì)了兩次接收和送信程序,即控制器在一個(gè)控制周期最多可同時(shí)接收和送出兩個(gè)字節(jié)的數(shù)據(jù)。需要注意的是,主控微機(jī)和控制器之間采用的是10位為一幀的異步串行通信方式,因此每個(gè)字節(jié)的通信時(shí)間還應(yīng)包括幀的起始位和停止位的傳輸時(shí)間。若傳輸兩個(gè)字節(jié)的數(shù)據(jù),則通信時(shí)間為[2×(8+2)×1 000]/38 400=0.521 ms,依此類推,即可計(jì)算出各指令的通信時(shí)間。主要指令及其通信時(shí)間如表1所示。[!--empirenews.page--]
3.3 通信錯(cuò)誤處理機(jī)制
由于外界干擾或電壓波動(dòng)等原因,主控微機(jī)和控制器之間的通信可能會(huì)出現(xiàn)錯(cuò)誤,導(dǎo)致數(shù)據(jù)丟失,受信側(cè)不能正常接收數(shù)據(jù)或系統(tǒng)運(yùn)行錯(cuò)誤。為了確保通信的連續(xù)性和可靠性,設(shè)計(jì)了通信錯(cuò)誤處理機(jī)制。
由于各指令的通信時(shí)間均在2 ms之內(nèi),如果受信側(cè)在2 ms之內(nèi)依然沒(méi)有接收到完整的數(shù)據(jù),則認(rèn)為通信出現(xiàn)錯(cuò)誤,系統(tǒng)將進(jìn)行恢復(fù)處理。受信側(cè)會(huì)把已接收的數(shù)據(jù)清零并等待重新接收,送信側(cè)將再次發(fā)送數(shù)據(jù)。如此循環(huán),如果發(fā)送三次之后依然不能恢復(fù)正常通信,系統(tǒng)將停止運(yùn)行。
3.4 通信協(xié)議軟件
通信協(xié)議軟件在Windows XP操作系統(tǒng)上用匯編語(yǔ)言開(kāi)發(fā)而成,其編制方案簡(jiǎn)要介紹如下:
(1)主控微機(jī)發(fā)送數(shù)據(jù)
當(dāng)主控微機(jī)發(fā)送數(shù)據(jù)時(shí),需要自動(dòng)記錄指令的命令字節(jié),即需要記錄接收該指令的控制器ID號(hào)以及指令號(hào)Code。
(2)控制器接收數(shù)據(jù)
控制器接收數(shù)據(jù)時(shí),首先將會(huì)進(jìn)行ID校驗(yàn),如果一致則接收,然后根據(jù)指令號(hào)Code決定需要接收的數(shù)據(jù)字節(jié)數(shù)。如果指令I(lǐng)D號(hào)與自身的ID號(hào)不一致或者在2 ms內(nèi)沒(méi)有接收到完整的數(shù)據(jù),控制器將會(huì)把已接收的數(shù)據(jù)清零并等待主控微機(jī)重新發(fā)送。
(3)控制器發(fā)送數(shù)據(jù)
當(dāng)控制器接收到詢問(wèn)指令,并確認(rèn)ID一致后,將返回該指令的命令字節(jié)(ID+Code)和相應(yīng)的詢問(wèn)數(shù)據(jù)。對(duì)于控制指令和設(shè)定指令,則只返回一個(gè)命令字節(jié)(ID+Code)。
(4)主控微機(jī)接收數(shù)據(jù)
主控微機(jī)接收到控制器返回的數(shù)據(jù)后,對(duì)于控制和設(shè)定指令,將會(huì)把返回的數(shù)據(jù)與發(fā)送記錄相比較,如果一致則刪除發(fā)送記錄,否則,認(rèn)為通信有誤,進(jìn)行出錯(cuò)處理;對(duì)于詢問(wèn)指令,將把接收到的數(shù)據(jù)顯示或儲(chǔ)存以備后用。
4 實(shí) 驗(yàn)
圖9是開(kāi)發(fā)出來(lái)的控制器和驅(qū)動(dòng)器。根據(jù)軟件設(shè)計(jì)方案編制和調(diào)試程序后進(jìn)行了位置控制、速度控制、電流控制的實(shí)機(jī)實(shí)驗(yàn)。
位置控制實(shí)驗(yàn)結(jié)果如圖10所示。位置控制的單位是編碼器的脈沖數(shù)(Pulse)。圖10指出當(dāng)目標(biāo)位置是2 795時(shí),位置控制能夠精確地控制電機(jī)到達(dá)指定的位置。通過(guò)多次重復(fù)實(shí)驗(yàn),其誤差均小于±0.2脈沖。
速度控制實(shí)驗(yàn)結(jié)果如圖11所示。速度控制以脈沖數(shù)/周期(Pulse/0.4 ms)為單位。
圖11指出當(dāng)目標(biāo)速度是30 Pulse/O.4 ms時(shí),速度控制能夠精確地控制電機(jī)以指定的速度運(yùn)行。通過(guò)多次重復(fù)實(shí)驗(yàn),其誤差均小于±2 Pulse/O.4 ms。
電流控制實(shí)驗(yàn)結(jié)果如圖12所示。電流控制以電機(jī)的額定電流與最大指令比(A/7 FH)為單位。圖12指出當(dāng)目標(biāo)電流是2 A時(shí),電流控制能夠精確地控制電機(jī)在指定的電流下運(yùn)行。通過(guò)多次重復(fù)實(shí)驗(yàn),其誤差均小于±O.1 A。
實(shí)驗(yàn)表明本文提出的控制器位置精度、速度精度、電流精度能滿足多軸服務(wù)機(jī)器人的需要。
5 結(jié) 語(yǔ)
提出的控制器為嵌入式服務(wù)機(jī)器人控制器的研究和開(kāi)發(fā)提供了一種新的控制和通信模式。實(shí)驗(yàn)結(jié)果指出該控制器的控制精度能滿足多軸服務(wù)機(jī)器人的需要。該項(xiàng)目的研究將有助于推動(dòng)我國(guó)服務(wù)機(jī)器人控制器的發(fā)展,具有較好的應(yīng)用前景。
經(jīng)過(guò)幾十年發(fā)展,嵌入式技術(shù)已經(jīng)用在了我們生活中的方方面面,但是嵌入式始終都帶有小眾,專業(yè)性強(qiáng)的屬性,讓很多非嵌入式領(lǐng)域的同學(xué)望而卻步。近十幾年的發(fā)展,物聯(lián)網(wǎng)覆蓋了越來(lái)越多領(lǐng)域,包括了家居,商業(yè),工業(yè),農(nóng)業(yè)等領(lǐng)域,不僅吸引...
關(guān)鍵字: 嵌入式 物聯(lián)網(wǎng) 技術(shù)隨著IT技術(shù)飛速發(fā)展,互聯(lián)網(wǎng)已經(jīng)進(jìn)入了“物聯(lián)網(wǎng)”時(shí)代。物聯(lián)網(wǎng)中需要的大量設(shè)備不在依賴人與人之間的交互產(chǎn)生聯(lián)系,更多通過(guò)協(xié)議、通信、程序設(shè)計(jì)等方式連接到一處。即 “物聯(lián)網(wǎng)”的目的則是讓所有的物品都具有計(jì)算機(jī)的智能但并不以通...
關(guān)鍵字: 嵌入式 物聯(lián)網(wǎng) 計(jì)算機(jī)萬(wàn)物智聯(lián)時(shí)代,嵌入式技術(shù)及其應(yīng)用的形態(tài)將更加豐富和多元,同時(shí)也將日益呈現(xiàn)深度物理融合、混合架構(gòu)共存、群體智能協(xié)同、網(wǎng)絡(luò)安全攸關(guān)等諸多新的計(jì)算特性。顯然,經(jīng)典的嵌入式系統(tǒng)體系結(jié)構(gòu)、軟硬件技術(shù)和開(kāi)發(fā)方法都已很難應(yīng)對(duì)新趨勢(shì)下的...
關(guān)鍵字: 嵌入式 物聯(lián)網(wǎng) 計(jì)算機(jī)物聯(lián)網(wǎng)是新一代信息技術(shù)的重要組成部分,是互聯(lián)網(wǎng)與嵌入式系統(tǒng)發(fā)展到高級(jí)階段的融合。通用計(jì)算機(jī)經(jīng)歷了從智慧平臺(tái)到互聯(lián)網(wǎng)的獨(dú)立發(fā)展道路;嵌入式系統(tǒng)則經(jīng)歷了智慧物聯(lián)到局域智慧物聯(lián)的獨(dú)立發(fā)展道路。
關(guān)鍵字: 嵌入式 物聯(lián)網(wǎng) 計(jì)算機(jī)隨著工業(yè)4.0、醫(yī)療電子、智能家居、物流管理和電力控制等快速的發(fā)展和推進(jìn),嵌入式系統(tǒng)利用自身的技術(shù)特點(diǎn),逐漸成為眾多行業(yè)的標(biāo)配產(chǎn)品。嵌入式系統(tǒng)具有可控制、可編程、成本低等,它在未來(lái)的工業(yè)和生活中有著廣闊的應(yīng)用前景。在現(xiàn)在...
關(guān)鍵字: 嵌入式 物聯(lián)網(wǎng) 人工智能長(zhǎng)久來(lái)看,嵌入式只會(huì)越來(lái)越火,隨著人工智能時(shí)代的發(fā)展,嵌入式必定又將迎來(lái)一次浪潮和技術(shù)的巨大變革。人工智能越是想要表達(dá)智能水平,就越要依靠嵌入式技術(shù),嵌入式技術(shù)將朝著自動(dòng)化控制和人機(jī)交互發(fā)展。嵌入式因其體積小、可靠性高、...
關(guān)鍵字: 嵌入式 物聯(lián)網(wǎng) 人工智能