嵌入式多軸運動控制系統(tǒng)軟硬件實現(xiàn)方案
運動控制技術(shù)是推動新的技術(shù)革命和新的產(chǎn)業(yè)革命的關(guān)鍵技術(shù),高速、高精度始終是運動控制技術(shù)追求的目標。運動控制技術(shù)能夠快速發(fā)展主要得益于計算機、高速數(shù)字處理器(DSP)、自動控制、網(wǎng)絡(luò)技術(shù)的發(fā)展,不僅應(yīng)用于數(shù)控機床、工業(yè)機器人、輕工、紡織、化工、冶金等傳統(tǒng)行業(yè),還在國防、航空航天等多個領(lǐng)域得到廣泛應(yīng)用。數(shù)控技術(shù)、機器人技術(shù)更是一個國家運動控制技術(shù)發(fā)展水平的重要標志。隨著國民經(jīng)濟發(fā)展,數(shù)控技術(shù)為了滿足不同加工領(lǐng)域的要求也有了的長足進步,但對于大型的,高精密、高速數(shù)控裝備和數(shù)控系統(tǒng)仍需要進口,大大制約了我國裝備制造業(yè)和加工能力的提升。
當前,基于PC和運動控制器的開放式數(shù)控系統(tǒng)得到了很大發(fā)展,運動控制器在系統(tǒng)中接收PC控制指令,運算后轉(zhuǎn)換成控制信號到伺服驅(qū)動部分,從而快速構(gòu)建數(shù)控平臺。開發(fā)人員可以根據(jù)運動控制器提供的驅(qū)動程序,進行二次開發(fā),滿足用戶的各種特殊需求。目前,PC和運動控制器構(gòu)成的開放式數(shù)控系統(tǒng)的研究核心在于運動控制器的關(guān)鍵技術(shù),因為數(shù)控機床的高速、高精和高可靠性等指標主要取決于運動控制器的性能。數(shù)字信號處理器(DSP)的發(fā)展,使運動控制過程的運算能力有了很大程度的提高,利用DSP開發(fā)的運動控制器性能越來越穩(wěn)定,功能也日趨強大。DSP強大的運算能力使運動控制過程中復(fù)雜的運動控制算法能夠得到很好的支持,使運動控制系統(tǒng)能有效進行運動規(guī)劃、高速實時多軸插補、誤差補償和更復(fù)雜的運動學(xué)、動力學(xué)計算,使得運動控制精度更高、速度更快、運動更加平穩(wěn)。因此,以DSP為控制核心結(jié)合FPGA模塊的嵌入式運動控制器成為發(fā)展的主流。
運動控制器中運動控制算法作為關(guān)鍵技術(shù),其復(fù)雜程度、精確性、可靠性直接影響控制系統(tǒng)的控制性能。因此,對相關(guān)運動控制算法及其在運動控制器中的實現(xiàn)進行研究,有利于達到控制過程的高速、高精度和高可靠性。
本課題研究內(nèi)容
本論文工作的主要研究內(nèi)容是設(shè)計研究基于PCI總線并以DSP為核心的運動控制卡,對運動控制卡的硬件部分進行設(shè)計,并在此基礎(chǔ)上對運動控制卡的軟件進行設(shè)計,從而可以為后續(xù)開發(fā)研制成熟產(chǎn)品提供良好的軟硬件平臺。主要的研究內(nèi)容如下:
1.運動控制卡總體方案設(shè)計。對運動控制卡的整體結(jié)構(gòu)進行分析,利用模塊化設(shè)計的思想設(shè)計一些主要功能,并在此基礎(chǔ)上設(shè)計本運動控制卡的總體設(shè)計方案,主要包括硬件部分的設(shè)計方案和軟件部分的設(shè)計方案。
2.運動控制卡的硬件設(shè)計。根據(jù)運動控制卡的硬件設(shè)計方案,對DSP芯片和PCI接口芯片等主要芯片的功能和特點進行研究,選擇適合本運動控制卡的芯片。在此基礎(chǔ)上進行運動控制卡的硬件設(shè)計工作,包括DSP的電源電路模塊、時鐘電路模塊、JTAG接口模塊、外擴存儲器模塊、步進電機的驅(qū)動模塊、上下位機通訊模塊以及輸入輸出接口模塊的設(shè)計工作,在提高系統(tǒng)的穩(wěn)定性方面,需要進行硬件抗干擾設(shè)計。
3.系統(tǒng)軟件設(shè)計。并采用模塊化程序設(shè)計方法,對DSP主控程序進行設(shè)計,包括DSP初始化模塊、DSP與PC機的實時通信模塊設(shè)計;在插補控制算法上,利用比逐點比較法精度更高的最小偏差法,設(shè)計直線和圓弧的插補算法并給出插補流程圖。
運動控制器設(shè)計要求
本文設(shè)計的運動控制器要求能應(yīng)用于數(shù)控行業(yè)、機器人控制系統(tǒng)等領(lǐng)域。要求高速處理數(shù)據(jù)的能力,具有高集成度、高可靠性。主要性能指標和技術(shù)要求如下:
(1)具有4路模擬信號輸出,輸出電壓范圍為-10V 到+10V,同時具有 4路脈沖信號輸出,脈沖輸出頻率可達 4MHz,能控制交、直流步進電機和伺服電機。
(2)具有 4 路正交編碼器信號輸入接口,能采集 4 路增量式光電編碼器反饋信號,采集頻率可達 2MHz,能實現(xiàn)對電機速度和位置的實時檢測,滿足速度閉環(huán)和控制閉環(huán)控制系統(tǒng)的需要,位置寄存器的長度達到 32 位。
(3)設(shè)計并行通信接口能與 PC 機實現(xiàn)高速實時通信,同時設(shè)計 RS232 通信接口。
(4)采用開放式模塊化設(shè)計,同時實現(xiàn)高集成度。
(5)具有豐富的 I/O 接口,以實現(xiàn)對電機的控制和其他開關(guān)量信號的控制,比如限位信號、報警信號、原點檢測等。
(6)具有高速的運算處理能力,系統(tǒng)反應(yīng)快,系統(tǒng)時鐘頻率為 150MHz。
(7)具有 S 曲線、T 型曲線、電子齒輪等運動控制方式,同時能實現(xiàn)多軸插補功能,能實現(xiàn)較復(fù)雜的算法。
(8)具有良好的軟件接口和功能豐富的函數(shù)庫,滿足多方面應(yīng)用的需要。在實現(xiàn)上述性能與指標的同時,在設(shè)計中我們還應(yīng)該遵循可靠性、模塊化、整體性、低成本等原則以此增強產(chǎn)品的市場競爭力。
設(shè)計方案:
硬件設(shè)計結(jié)構(gòu)圖:
硬件設(shè)計結(jié)構(gòu)圖
電源電路負責提供各模塊的電源,對 DSP 進行了 SRAM 和 FLASH 擴展,時鐘電路負責提供 DSP 和 FPGA 所需的時鐘信號,雙口 RAM用于負責 DSP 與 PCI總線的并行通信,電平轉(zhuǎn)換電路負責 RS232 與 DSP 之間的電平轉(zhuǎn)換。I/O 隔離負責各路 I/O 信號的光電隔離,專用輸入/輸出是一些電機控制中所必須有的 I/O 信號,通用輸入/輸出可用于其它 I/O 信號的控制,在 FPGA 模塊中設(shè)計了 D/A 轉(zhuǎn)換電路、脈沖輸出電路和編碼器輸入模塊。
FPGA硬件結(jié)構(gòu)圖
脈沖輸出接口模塊主要任務(wù)是發(fā)送脈沖序列和方向指令給伺服驅(qū)動器,實現(xiàn)對電機的位移,速度,方向的控制。編碼器電路則是實現(xiàn)電機狀態(tài)的反饋,包括方向、速度等。A/D、D/A 模塊主要實現(xiàn)運動控制器跟伺服電機間模擬量與數(shù)字量之間的處理。I/O 接口則實現(xiàn)各種開關(guān)量信號的控制。本文沒有設(shè)計 A/D 轉(zhuǎn)換模塊,因為 DSP 自帶的 A/D 轉(zhuǎn)換接口可以滿足需求。在精度要求高的數(shù)控工業(yè)制造時可以用高精度 A/D 轉(zhuǎn)換芯片(如 AD7663)來實現(xiàn),通過 FPGA 設(shè)計的A/D 接口傳遞給 DSP。
軟件總體設(shè)計
整個運動控制軟件系統(tǒng)可分為兩大塊:PC 層的軟件和 DSP 層的軟件。人機交互界面主要是提供包括工藝流程、軌跡規(guī)劃、狀態(tài)監(jiān)控等功能,提供用戶操作的界面環(huán)境。初始化程序后,對人機界面輸入的數(shù)據(jù)進行處理,代碼編譯生成相應(yīng)的控制指令。設(shè)備驅(qū)動程序接口層是與硬件相關(guān)的一層,負責對運動控制器的硬件設(shè)備進行管理和控制,同時進行數(shù)據(jù)通信處理。DSP層的軟件通過對 PC層傳遞下來的指令代碼進行解析,然后實施具體的插補算法運算,并控制電機運動。同時將底層的狀態(tài)信息反饋給 PC 機。