新聞中心

EEPW首頁(yè) > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > 一款基于STM32的運(yùn)動(dòng)控制卡設(shè)計(jì)

一款基于STM32的運(yùn)動(dòng)控制卡設(shè)計(jì)

作者: 時(shí)間:2014-04-02 來(lái)源:網(wǎng)絡(luò) 收藏

摘要:在深入分析了意法半導(dǎo)體公司推出的、高速總線以及運(yùn)動(dòng)控制卡的功能和結(jié)構(gòu)特點(diǎn)的基礎(chǔ)上,設(shè)計(jì)了一款可直接插在插槽中的伺服運(yùn)動(dòng)控制卡。不僅可大大降低了成本,更為開放式數(shù)控系統(tǒng)的研究提供了一個(gè)全新的思路。結(jié)果表明,本文所設(shè)計(jì)的伺服控制卡滿足了目前控制系統(tǒng)的性能和要求。

本文引用地址:http://m.butianyuan.cn/article/235828.htm

關(guān)鍵詞:PMSM;;運(yùn)動(dòng)控制卡;

伴隨著計(jì)算機(jī)的普及,PC的性能、可靠性及應(yīng)用環(huán)境也已經(jīng)今非昔比,在工業(yè)領(lǐng)域方面PC擁有大量的支持軟件用以改善用戶界面、圖形顯示、動(dòng)態(tài)仿真、故障診斷、網(wǎng)絡(luò)通訊等諸多功能,此外,在總線的開發(fā)也因PC豐富的接口資源和模塊化設(shè)計(jì)而變得簡(jiǎn)單。因此,基于PC的開放式數(shù)控系統(tǒng)絕對(duì)是未來(lái)控制系統(tǒng)主流主流方向,發(fā)展開放式和形成具有自主產(chǎn)權(quán)軟件型數(shù)字控制系統(tǒng),是我國(guó)數(shù)控發(fā)展邁出實(shí)質(zhì)性突破和趕超世界先進(jìn)水平的一次良機(jī)。因此,文中研究課題主要對(duì)數(shù)控系統(tǒng)實(shí)際要求出發(fā),結(jié)合PC和高性價(jià)比的ARM系列芯片,利用模糊控制算法,設(shè)計(jì)一款性能穩(wěn)定,高精度的伺服控制器,為推進(jìn)伺服技術(shù)的發(fā)展具有重要意義。

1 系統(tǒng)結(jié)構(gòu)

本系統(tǒng)采用的是“PC+運(yùn)動(dòng)控制卡”形式。其中,計(jì)算機(jī)機(jī)作為上位機(jī),可以滿足控制環(huán)節(jié)多、軌跡復(fù)雜、強(qiáng)柔性的設(shè)備的控制要求。

以ARM為核心的控制卡作為下位機(jī),主要負(fù)責(zé)總線通信、步進(jìn)和伺服電機(jī)的控制,這樣就形成了以ARM的CPU和計(jì)算機(jī)CPU主從式雙CPU控制模式。計(jì)算機(jī)的多任務(wù)調(diào)度和強(qiáng)大的處理能力,加上微處理芯片的現(xiàn)場(chǎng)適應(yīng)能力及高性價(jià)比,使得系統(tǒng)開放性好,可靠性高,并基本滿足現(xiàn)階段絕大多數(shù)工業(yè)控制的要求。

?

?

2 運(yùn)動(dòng)控制卡硬件設(shè)計(jì)

2.1 雙口RAM與STM和CH365的連接

本文基于PCI總線的運(yùn)動(dòng)控制卡硬件方面主要包括2個(gè)部分:1)最小系統(tǒng),2)PCI總線。選用雙口RAM芯片IDT7025作為STM32與CH365雙向通訊的緩沖芯片。

本設(shè)計(jì)中,雙口RAM IDT7025作為STM32與PC都可以讀寫RAM中的數(shù)據(jù),RAM右端與PCI通信芯片CH365連接,這樣就可以映射到CH365的存儲(chǔ)空間;左端口則與STM32相連,便于STM32的隨時(shí)訪問(wèn)。其中IDT7025需要5 V電壓供電,而ARM芯片的供電電壓時(shí)3.3 V,所以需要電壓轉(zhuǎn)換,這里選擇了SN74LVTH16245。這部分的連接如圖2所示。本文將雙口RAM分成兩個(gè)獨(dú)立的存儲(chǔ)空間;高4 k空間用于計(jì)算機(jī)向STM32傳送控制指令,低4 k空間用于STM32向PC傳遞反饋的數(shù)據(jù)。

?

?

2.2 CH365與PCI接口實(shí)現(xiàn)

CH365與PCI部分的連接如圖3所示。圖中,電容C1~C4完成電源的去耦,C2~C4是大小為0.1 μF的高頻瓷片電容,PCB設(shè)計(jì)過(guò)程中就近并聯(lián)在芯片CH365的三組電源輸入輸出引腳上。而地址線A15~A0作為偏移地址,數(shù)據(jù)總線D7~D0配置為讀操作時(shí)的數(shù)據(jù)輸入,以及寫操作時(shí)的數(shù)據(jù)輸出。IOP_RD為提供I/O讀操作時(shí)片選脈沖信號(hào),同樣,IOP_WR用于提供I/O寫操作時(shí)的片選信號(hào),MEM_RD用于提供存儲(chǔ)器讀選通脈沖信號(hào),MEM_WR用于提供存儲(chǔ)器寫選通脈沖信號(hào),上述引腳的讀寫選通脈沖信號(hào)都是低電平有效。在I/O讀寫過(guò)程中,CH365的A7~A0輸出I/O端口提供給其他設(shè)備的有效的位偏移地址,偏移地址也可以被譯碼產(chǎn)生二級(jí)片選信號(hào)去適應(yīng)控制的要求。同樣,在I/O讀寫過(guò)程當(dāng)中,CH365的A15~A10的電平保持恒定,內(nèi)部寄存器可以在輸出之前決定要輸出狀態(tài),A9~A8負(fù)責(zé)完整的輸出PCI總線地址,通過(guò)對(duì)CH365的A9~A0的輸出地址的譯碼就可以使用芯片擁有的本地硬件定址功能,通過(guò)MER_WR引腳向CH365芯片發(fā)送本地定址的請(qǐng)求,最終實(shí)現(xiàn)與ISA總線相兼容的地址范圍內(nèi)的I/O端口定址。因此,在讀寫操作發(fā)生的過(guò)程中,CH365的A14~A0輸出提供的有效偏移地址;CH365的A15電平維持不變,由內(nèi)部寄存器提前設(shè)定電平高低,用實(shí)現(xiàn)地址線擴(kuò)展或者頁(yè)面選擇;而區(qū)分各個(gè)端口則通過(guò)CH365的A7~A0的地址譯碼來(lái)完成。

?

?

3 運(yùn)動(dòng)控制卡軟件設(shè)計(jì)

3.1 參數(shù)自調(diào)整在線插值模糊控制算法

經(jīng)典的在線模糊PID算法的實(shí)現(xiàn)實(shí)質(zhì)上是一個(gè)查表輸出的過(guò)程,因?yàn)檎`差與誤差變化率均被不可避免的模糊量化相對(duì)取整,使控制器凋節(jié)出現(xiàn)死區(qū),控制參數(shù)的分區(qū)會(huì)引起的調(diào)節(jié)不細(xì)。從理論上講,只要不斷增加控制模糊化量個(gè)數(shù),進(jìn)行等級(jí)細(xì)分,但它勢(shì)必受計(jì)算機(jī)字長(zhǎng)限制,使模糊控制沒(méi)有了優(yōu)勢(shì)。

在線插值算法等同于將論域內(nèi)的分檔趨于無(wú)窮大,即通過(guò)線性插值的方式在控制規(guī)則表相鄰分檔之間增添無(wú)窮個(gè)新的、細(xì)分化的控制規(guī)則,對(duì)原有的控制規(guī)則加以完善,是一種快速精確的而且切實(shí)可行的控制算法。

?

?

參數(shù)自調(diào)整在線插值模糊控制器如圖4所示。量化參數(shù)、比例系數(shù)Ku都會(huì)影響系統(tǒng)動(dòng)、靜態(tài)性能,調(diào)節(jié)比例因子的因果關(guān)系很直觀,最終也會(huì)起到影響Ke和Kec的作用,選擇在線自調(diào)整Ku值能夠起到良好的效果,不至系統(tǒng)過(guò)于復(fù)雜而影響實(shí)時(shí)性。

文中利用在線差值控制算法的特點(diǎn),設(shè)計(jì)了算法實(shí)現(xiàn)的軟件流程,如圖5所示。

?

?

3.2 操作系統(tǒng)下的功能實(shí)現(xiàn)

為滿足多任務(wù)的調(diào)度和系統(tǒng)實(shí)時(shí)性的要求,軟件的整體實(shí)現(xiàn),本設(shè)計(jì)引入μC/OS-Ⅱ操作系統(tǒng)。

3.2.1 RTL8019AS底層驅(qū)動(dòng)程序

通常情況下,用戶根據(jù)硬件芯片型號(hào)找到RTL8019AS底層驅(qū)動(dòng)程序庫(kù)的編寫所需要的文檔資料即可編寫相關(guān)的底層函數(shù),其主要功能函數(shù)如下:

NicInit()一RTL8019AS的初始化;

NicClose()一關(guān)閉RTL8019AS芯片數(shù)據(jù)收發(fā)功能;

NicReset()一復(fù)位RTL8019AS芯片;

EtherOutput()一數(shù)據(jù)包輸出;

Etherlnput()一數(shù)據(jù)包接收。

網(wǎng)絡(luò)通信還需要底層RTL8019AS驅(qū)動(dòng)程序支持,參考R,rL8019AS以及AT91FR40162,即可編寫出針對(duì)此系統(tǒng)的RTL8019AS底層驅(qū)動(dòng)程序。

3.2.2 基于μC/OS-Ⅱ?qū)崟r(shí)操作系統(tǒng)主函數(shù)及相關(guān)任務(wù)的編寫與嵌入

?

?

4 結(jié)束語(yǔ)

對(duì)上述的程序進(jìn)行調(diào)試后,并結(jié)合硬件調(diào)試表明文中所設(shè)計(jì)的運(yùn)動(dòng)控制卡能夠?qū)崿F(xiàn)準(zhǔn)確的位置及速度控制,受控電機(jī)運(yùn)行平穩(wěn),基本能實(shí)現(xiàn)對(duì)電機(jī)的控制功能,通信穩(wěn)定。對(duì)于長(zhǎng)期的穩(wěn)定性測(cè)試,現(xiàn)在浙江紹興某襪機(jī)公司的試著運(yùn)營(yíng)階段,初期表現(xiàn)良好。

pid控制相關(guān)文章:pid控制原理


伺服電機(jī)相關(guān)文章:伺服電機(jī)工作原理


pid控制器相關(guān)文章:pid控制器原理




關(guān)鍵詞: STM32 PCI

評(píng)論


相關(guān)推薦

技術(shù)專區(qū)

關(guān)閉