陳立奇
(湖南信息學(xué)院 電子信息學(xué)院,長(zhǎng)沙 410151)
電機(jī)作為工業(yè)生產(chǎn)加工的主要?jiǎng)恿︱?qū)動(dòng)設(shè)備,具有使用方便、運(yùn)行可靠、成本低的特點(diǎn),在工業(yè)領(lǐng)域發(fā)揮了重要的作用[1]。近年來(lái),隨著現(xiàn)代工業(yè)產(chǎn)業(yè)的快速發(fā)展,電機(jī)在工業(yè)領(lǐng)域內(nèi)得到了廣泛的應(yīng)用,傳統(tǒng)電機(jī)的運(yùn)行方式已經(jīng)無(wú)法滿足當(dāng)今工業(yè)生產(chǎn)需求。因此,研究人員通過(guò)對(duì)電機(jī)控制系統(tǒng)進(jìn)行創(chuàng)新改造,采用數(shù)字式控制系統(tǒng)的新技術(shù)以完善電機(jī)的控制系統(tǒng),提高電機(jī)的工作效率和控制系統(tǒng)工作的可靠性,并且有利于電機(jī)系統(tǒng)在使用中的不斷升級(jí)完善,延長(zhǎng)電機(jī)的使用壽命[2]。
隨著數(shù)字式控制系統(tǒng)的應(yīng)用,利用單片機(jī)與電機(jī)控制系統(tǒng)的有效結(jié)合,發(fā)揮了智能化、數(shù)字化的特點(diǎn),提高了整個(gè)電機(jī)控制系統(tǒng)的運(yùn)行效率。通過(guò)設(shè)計(jì)者的不斷研究探索,電機(jī)控制系統(tǒng)在嵌入式單機(jī)片的整體設(shè)計(jì)過(guò)程中,不僅需要硬件平臺(tái)設(shè)計(jì)與軟件平臺(tái)有效地結(jié)合在一起,還要實(shí)現(xiàn)單機(jī)片與電機(jī)的契合性,以保障電機(jī)作為動(dòng)力系統(tǒng)在運(yùn)行過(guò)程中滿足單機(jī)整體的良好運(yùn)轉(zhuǎn),從而提高電機(jī)控制系統(tǒng)的整體運(yùn)用效率[3]。因此,在電機(jī)控制系統(tǒng)進(jìn)行嵌入式單機(jī)片的設(shè)計(jì)具有重要的意義,基于此種背景,提出了基于單片機(jī)的嵌入式多電機(jī)智能控制系統(tǒng)設(shè)計(jì)研究。數(shù)字式控制系統(tǒng)采用高性能數(shù)字式控制芯片, 使得電機(jī)的調(diào)速控制范圍廣、使用壽命長(zhǎng)、維護(hù)方便,大大提高了電機(jī)的工作效率和可靠的性能[4]。
在系統(tǒng)總體架構(gòu)設(shè)計(jì)中,單片機(jī)的嵌入式多電機(jī)智能控制系統(tǒng)采用DSP28335為核心處理器,SN65HVD230為CAN總線收發(fā)機(jī)的架構(gòu)設(shè)計(jì),方案的整體架構(gòu)如圖1所示。
系統(tǒng)總體架構(gòu)包括上位機(jī)、驅(qū)動(dòng)電路、CAN接口和各電路等,系統(tǒng)運(yùn)行時(shí)上位機(jī)發(fā)送命令,通過(guò)CAN接口傳送給驅(qū)動(dòng)器模塊,CAN接口負(fù)責(zé)上位機(jī)與驅(qū)動(dòng)器之間的信息傳遞連接,驅(qū)動(dòng)器將接收到的命令進(jìn)行對(duì)電機(jī)的運(yùn)行控制,并實(shí)時(shí)對(duì)電機(jī)運(yùn)動(dòng)過(guò)程中的電壓和電流信息及時(shí)反饋給上位機(jī),確保系統(tǒng)安全穩(wěn)定的運(yùn)行[1]。
在系統(tǒng)硬件結(jié)構(gòu)設(shè)計(jì)中,由于采用嵌入式單片機(jī) dsPIC20F芯片,因此不需要過(guò)多的外設(shè)裝置就可以進(jìn)行正常的電機(jī)控制操作[5]。這是因?yàn)榍度胧絾纹瑱C(jī)dsPIC20F芯片包括了豐富的內(nèi)部資源,不僅能夠保證電機(jī)的運(yùn)行效率,還減少了外設(shè)裝置的使用數(shù)量,有效降低設(shè)備成本,使控制工作更加簡(jiǎn)便,優(yōu)化了系統(tǒng)運(yùn)行效果[6]。
基于單片機(jī)的嵌入式多電機(jī)智能控制系統(tǒng)硬件結(jié)構(gòu)設(shè)計(jì)如圖2所示。
圖2 系統(tǒng)硬件結(jié)構(gòu)設(shè)計(jì)
系統(tǒng)硬件結(jié)構(gòu)設(shè)計(jì)如圖2所示,單片機(jī)的電機(jī)控制系統(tǒng)采用dsPIC20F芯片控制信號(hào)。在工作流程中,首先由系統(tǒng)內(nèi)的感應(yīng)器對(duì)電機(jī)轉(zhuǎn)子的位置進(jìn)行采樣,再與設(shè)定數(shù)據(jù)進(jìn)行比較計(jì)算,然后把兩者之間的轉(zhuǎn)速差轉(zhuǎn)化為相應(yīng)的信號(hào),最后發(fā)送到控制芯片[7]。由于控制芯片預(yù)先設(shè)定了控制指令,因此會(huì)向驅(qū)動(dòng)模塊發(fā)出特定的信號(hào),并傳送到相應(yīng)的驅(qū)動(dòng)模塊,控制芯片根據(jù)接收到的信號(hào)發(fā)出控制指令反饋給電機(jī),從而完成全部的控制過(guò)程。電機(jī)的整體旋轉(zhuǎn)速度應(yīng)當(dāng)根據(jù)實(shí)際的工作環(huán)境來(lái)選擇一個(gè)合適的旋轉(zhuǎn)速度,提高電機(jī)的工作效率[8]。
選用AD_TCP-01型號(hào)A/D 數(shù)據(jù)采集器,該局域網(wǎng)A/D數(shù)據(jù)采集器采用IP協(xié)議控制PC主機(jī)進(jìn)行通訊,傳輸距離遠(yuǎn)且穩(wěn)定可靠,在300米范圍內(nèi)可通過(guò)互聯(lián)網(wǎng)進(jìn)行超遠(yuǎn)程控制與傳輸,每塊A/D轉(zhuǎn)換采集板都分配一個(gè)唯一IP地址,通過(guò)該地址進(jìn)行數(shù)據(jù)傳輸。該型號(hào)采集器控制器具有6路10位高速轉(zhuǎn)換通道,同時(shí)對(duì)外部輸入模擬量進(jìn)行模數(shù)轉(zhuǎn)換,并將轉(zhuǎn)換結(jié)果通過(guò)以太網(wǎng)向PC主機(jī)快速輸出。輸出數(shù)據(jù)幀固定字節(jié)如下所示:
幀頭固定格式為0×55,具有6個(gè)通道,每個(gè)通道具體轉(zhuǎn)換結(jié)果為2字節(jié)數(shù)據(jù)如表1所示。
表1 幀頭通道轉(zhuǎn)換結(jié)果
幀頭固定格式為0×AA;
每路A/D轉(zhuǎn)換數(shù)值計(jì)算公式如下所示:
(1)
A/D 數(shù)據(jù)采集器采用 WJ28 數(shù)據(jù)采集轉(zhuǎn)換模塊,包括信號(hào)隔離、電源隔離、線性化、A/D 轉(zhuǎn)換和 RS-485 串行通信等,通過(guò)對(duì)電機(jī)與傳感器之間的信號(hào)采集轉(zhuǎn)換,完成對(duì)模擬信號(hào)的檢測(cè),確保通訊正常。數(shù)據(jù)采集器可承受 3000 VDC 隔離電壓,具有較強(qiáng)的抗干擾性能,在系統(tǒng)控制中發(fā)揮了重要的作用,保證了電機(jī)設(shè)備正??煽康倪\(yùn)行。
驅(qū)動(dòng)模塊采用直流電路的方式,系統(tǒng)主要包括電動(dòng)機(jī)、控制器、功率轉(zhuǎn)換器等,在設(shè)計(jì)過(guò)程中根據(jù)驅(qū)動(dòng)模塊直流電路開(kāi)展直流電機(jī)的設(shè)計(jì)模式。
該電路選用M57962AL是厚模單列直插式封裝模式,如圖3所示。
圖3 M57962AL芯片的直插式封裝驅(qū)動(dòng)模式
驅(qū)動(dòng)模塊電路在正常工作中電流為 2.5 A,當(dāng)瞬間驅(qū)動(dòng)電機(jī)運(yùn)轉(zhuǎn)時(shí),可以提供的電流強(qiáng)度達(dá)到5~6 A。在驅(qū)動(dòng)模塊電路內(nèi)部還伴有過(guò)流保護(hù)測(cè)量電路,能夠進(jìn)行有效的過(guò)流保護(hù)作用,確保電路處于正常工作狀態(tài)之中。
選用NMRV075步進(jìn)電機(jī)具有伺服蝸輪蝸桿rv減速機(jī)小型減速器帶電機(jī)齒輪箱,重量比較輕,外殼采用鋁合金鑄造,強(qiáng)度優(yōu)越且外觀精美,散熱性高,使用壽命長(zhǎng),動(dòng)作無(wú)噪音,與電機(jī)連接較為簡(jiǎn)便。該電機(jī)作為一種實(shí)用傳動(dòng)設(shè)備,更符合單片機(jī)需求,不需要聯(lián)軸器連結(jié),適合全方位安裝,輸出扭矩也相對(duì)較大。該電機(jī)結(jié)構(gòu)如圖4所示。
圖4 NMRV步進(jìn)電機(jī)結(jié)構(gòu)
該步進(jìn)電機(jī)的LED和鍵盤模塊如圖5所示。
圖5 LED和鍵盤模塊
根據(jù)圖5可知,單片機(jī)的步進(jìn)電機(jī)控制系統(tǒng)通過(guò)設(shè)計(jì)3*4鍵盤與*SLED數(shù)碼管,實(shí)現(xiàn)了人與機(jī)器的對(duì)話,實(shí)現(xiàn)智能化控制操作。操作人員通過(guò)鍵盤輸入,控制系統(tǒng)將鍵盤輸入的信息進(jìn)行掃描,接口器件8279負(fù)責(zé)鍵盤的輸入與LDE輸出,可以有效提高單片機(jī)的工作效率。同時(shí),通過(guò)LDE管可以清晰觀測(cè)到步進(jìn)機(jī)的運(yùn)轉(zhuǎn)、啟動(dòng)、轉(zhuǎn)動(dòng)方向等,及時(shí)掌握步進(jìn)機(jī)的轉(zhuǎn)向和轉(zhuǎn)速的動(dòng)態(tài),避免發(fā)生故障。
軟件平臺(tái)設(shè)計(jì)中采用嵌入式 μClinux實(shí)時(shí)操作系統(tǒng),根據(jù)實(shí)際工作需求從系統(tǒng)應(yīng)用程序調(diào)度函數(shù),通過(guò)對(duì)調(diào)度函數(shù)中尋找的最高任務(wù)進(jìn)行任務(wù)切換操作。嵌入式實(shí)時(shí)操作系統(tǒng)不僅有效減少了單片機(jī)工作的承載,同時(shí)還能夠在操作過(guò)程中進(jìn)行實(shí)時(shí)性的任務(wù)操作或及時(shí)的中斷處理,提高了電機(jī)工作的安全性和可靠性。
在單片機(jī)的嵌入式多電機(jī)智能控制系統(tǒng)任務(wù)流程設(shè)計(jì)中,將 CPU、操作系統(tǒng)、主要任務(wù)控制塊和TCB優(yōu)先級(jí)表進(jìn)行初始化,并創(chuàng)建空任務(wù)和新任務(wù),同時(shí)在新創(chuàng)建的任務(wù)中創(chuàng)建其他的新任務(wù),最后調(diào)用OSSTART()函數(shù)啟動(dòng)多任務(wù)調(diào)度,流程圖如圖6所示。
圖6 調(diào)度流程
整個(gè)單片機(jī)程序是由多個(gè)功能器件驅(qū)動(dòng)程序組成,通過(guò)中斷脈沖信號(hào)后計(jì)算運(yùn)轉(zhuǎn)步數(shù)和圈數(shù),并實(shí)時(shí)記錄,再將采集到的數(shù)據(jù)通過(guò)接口電路傳遞給單片機(jī),供單片機(jī)進(jìn)行計(jì)算處理和控制開(kāi)關(guān)狀態(tài)信息處理,實(shí)現(xiàn)對(duì)電機(jī)運(yùn)轉(zhuǎn)速度的有效控制。具體按程序設(shè)計(jì)流程如圖7所示。
圖7 單片機(jī)程序設(shè)計(jì)
通過(guò)對(duì)PC上位機(jī)優(yōu)化設(shè)計(jì),采用晶振中設(shè)置的USART模塊,由VB6.0對(duì)相關(guān)的控制軟件進(jìn)行編寫(xiě),采用MSComm軟件進(jìn)行實(shí)時(shí)通訊,確保任務(wù)執(zhí)行的準(zhǔn)確性,實(shí)現(xiàn)了智能化電機(jī)控制系統(tǒng)。上位機(jī)利用單片機(jī)中相關(guān)設(shè)置實(shí)現(xiàn)人與機(jī)的對(duì)話,通過(guò)單片機(jī)軟件在設(shè)置中存儲(chǔ)執(zhí)行命令,進(jìn)行人與機(jī)的對(duì)話,可以完成實(shí)時(shí)多任務(wù)的運(yùn)行或中斷,提高了系統(tǒng)運(yùn)行效率,保證了電機(jī)安全可靠的運(yùn)行。
為使軟件程序達(dá)到最優(yōu)設(shè)計(jì),對(duì)電機(jī)控制系統(tǒng)中的主程序和中斷服務(wù)子程序進(jìn)行優(yōu)化控制設(shè)計(jì)。優(yōu)化后的主程序和中斷服務(wù)子程序不僅能夠完成數(shù)據(jù)計(jì)算 、定值更新、故障判斷、A/ D轉(zhuǎn)換、開(kāi)關(guān)量輸入輸出、通信等一系列功能程序,同時(shí)還可以進(jìn)行多功能任務(wù)的實(shí)施。
電機(jī)控制的系統(tǒng)任務(wù)的設(shè)置與采集需要根據(jù)實(shí)際工作環(huán)境進(jìn)行設(shè)計(jì),外部數(shù)據(jù)信號(hào)根據(jù)用戶設(shè)置的采集通道采集,并根據(jù)任務(wù)設(shè)置完成LCD模塊和數(shù)據(jù)處理程序模塊、本地?cái)?shù)據(jù)采集程序模塊、數(shù)據(jù)儲(chǔ)存程序模塊,完成數(shù)據(jù)采集、處理及存儲(chǔ)。然后發(fā)送給數(shù)據(jù)處理模塊,經(jīng)過(guò)對(duì)接收數(shù)據(jù)的數(shù)字濾波處理后,過(guò)濾后的數(shù)據(jù)存儲(chǔ)在公共數(shù)據(jù)緩沖區(qū)中,供LCD模塊顯示或供網(wǎng)絡(luò)服務(wù)程序使用。再將Flash中的數(shù)據(jù)以數(shù)據(jù)標(biāo)準(zhǔn)格式,存儲(chǔ)在公共緩沖區(qū)中;與此同時(shí),配置鍵盤模塊,以設(shè)置采集到的參數(shù)為依據(jù),可對(duì)電機(jī)設(shè)備進(jìn)行現(xiàn)場(chǎng)實(shí)時(shí)控制。
在完成基于單片機(jī)的嵌入式多電機(jī)智能控制系統(tǒng)設(shè)計(jì)工作之后,需對(duì)其運(yùn)行穩(wěn)定性進(jìn)行實(shí)驗(yàn)驗(yàn)證分析,為此,需選取Proteus仿真軟件作為驗(yàn)證方式。
Proteus仿真軟件是在仿真引擎電路下設(shè)計(jì)的,不僅具有模數(shù)混合電路,更具有特色仿真功能,支持dsPIC20F單片機(jī)設(shè)計(jì)系統(tǒng)運(yùn)行。在Proteus仿真系統(tǒng)內(nèi)構(gòu)件的模型是與硬件電路一致的,因此,構(gòu)件的實(shí)驗(yàn)環(huán)境是具有可操作性的。
Proteus中示波器使用情況如圖8所示。
圖8 Proteus中示波器使用情況
圖中的左下角CH1和CH2按鈕可以選擇DC模式或是AC模式,而圖中右上角的CH1和CH2按鈕可以選擇不同通道進(jìn)行信息傳輸。
電機(jī)正轉(zhuǎn)、停止和反轉(zhuǎn)的反饋信息如表2~4所示。
表2 電機(jī)正轉(zhuǎn)
表3 電機(jī)停止
表4 電機(jī)反轉(zhuǎn)
依據(jù)電機(jī)正轉(zhuǎn)、停止和反轉(zhuǎn)的反饋信息對(duì)基于單片機(jī)嵌入式多電機(jī)智能控制系統(tǒng)運(yùn)行情況進(jìn)行調(diào)試分析。
4.3.1 電機(jī)正轉(zhuǎn)
針對(duì)電機(jī)正轉(zhuǎn)反饋信息,對(duì)其5個(gè)時(shí)間標(biāo)識(shí)下的數(shù)據(jù)采集情況進(jìn)行分析,如圖9所示。
圖9 電機(jī)正轉(zhuǎn)數(shù)據(jù)采集情況
由圖9可知:在08:45:02.179.0時(shí)間標(biāo)識(shí)下,數(shù)據(jù)量采集波形呈直線上升-不變-下降趨勢(shì),最高數(shù)據(jù)采集量可達(dá)到590 db;在08:45:02.193.0時(shí)間標(biāo)識(shí)下,數(shù)據(jù)量采集波形呈曲線上升-下降趨勢(shì),最高數(shù)據(jù)采集量可達(dá)到750 db;在08:45:02.207.0時(shí)間標(biāo)識(shí)下,數(shù)據(jù)量采集波形呈曲線上升-下降趨勢(shì),最高數(shù)據(jù)采集量可達(dá)到730 db;在08:45:02.220.0時(shí)間標(biāo)識(shí)下,數(shù)據(jù)量采集波形呈曲線上升-下降趨勢(shì),最高數(shù)據(jù)采集量可達(dá)到740 db;在08:45:02.233.0時(shí)間標(biāo)識(shí)下,數(shù)據(jù)量采集波形呈曲線上升-下降趨勢(shì),最高數(shù)據(jù)采集量可達(dá)到700 db。
4.3.2 電機(jī)停止
針對(duì)電機(jī)停止反饋信息,對(duì)其4個(gè)時(shí)間標(biāo)識(shí)下的數(shù)據(jù)采集情況進(jìn)行分析,如圖10所示。
圖10 電機(jī)停止數(shù)據(jù)采集情況
由圖10可知:在08:45:02.783.0時(shí)間標(biāo)識(shí)下,數(shù)據(jù)量采集波形呈直線上升-不變-下降趨勢(shì),最高數(shù)據(jù)采集量可達(dá)到420 db;在08:45:02.790.0時(shí)間標(biāo)識(shí)下,最高數(shù)據(jù)采集量可達(dá)到440 db;在08:45:02.805.0時(shí)間標(biāo)識(shí)下,最高數(shù)據(jù)采集量可達(dá)到440 db;在08:45:02.820.0時(shí)間標(biāo)識(shí)下,數(shù)據(jù)量采集波形呈曲線上升-下降趨勢(shì),最高數(shù)據(jù)采集量可達(dá)到400 db。
4.3.3 電機(jī)反轉(zhuǎn)
針對(duì)電機(jī)反轉(zhuǎn)反饋信息,對(duì)其5個(gè)時(shí)間標(biāo)識(shí)下的數(shù)據(jù)采集情況進(jìn)行分析,如圖11所示。
圖11 電機(jī)正轉(zhuǎn)數(shù)據(jù)采集情況
由圖11可知:在08:46:03.379.0時(shí)間標(biāo)識(shí)下,最高數(shù)據(jù)采集量可達(dá)到920db;在08:46:03.385.0時(shí)間標(biāo)識(shí)下,最高數(shù)據(jù)采集量可達(dá)到980 db;在08:46:03.394.0時(shí)間標(biāo)識(shí)下,數(shù)據(jù)量采集波形呈曲線上升-下降趨勢(shì),最高數(shù)據(jù)采集量可達(dá)到980 db;在08:46:03.409.0時(shí)間標(biāo)識(shí)下,數(shù)據(jù)量采集波形呈曲線上升-下降趨勢(shì),最高數(shù)據(jù)采集量可達(dá)到800 db;在08:46:03.424.0時(shí)間標(biāo)識(shí)下,數(shù)據(jù)量采集波形呈曲線上升-下降趨勢(shì),最高數(shù)據(jù)采集量可達(dá)到970 db。
根據(jù)上述數(shù)據(jù)采集結(jié)果,將傳統(tǒng)系統(tǒng)與所設(shè)計(jì)系統(tǒng)的控制效果進(jìn)行對(duì)比分析,結(jié)果如表5所示。
表5 兩種系統(tǒng)控制效果對(duì)比分析
通過(guò)對(duì)比結(jié)果可知,采用所設(shè)計(jì)系統(tǒng)的最高控制效果可達(dá)到0.996,而傳統(tǒng)系統(tǒng)最高控制效果可達(dá)到0.691,由此可知,基于單片機(jī)的嵌入式多電機(jī)智能控制系統(tǒng)調(diào)試效果較好。
隨著電子、通信技術(shù)的快速發(fā)展,電機(jī)控制已經(jīng)實(shí)現(xiàn)智能化控制,尤其是數(shù)字信號(hào)電機(jī)控制系統(tǒng),利用單機(jī)芯片優(yōu)越性能,簡(jiǎn)化了系統(tǒng)結(jié)構(gòu)設(shè)計(jì),提高了運(yùn)行速度和工作性能。采用模塊設(shè)計(jì)方案對(duì)硬件結(jié)構(gòu)和軟件平臺(tái)進(jìn)行科學(xué)合理的設(shè)計(jì),實(shí)現(xiàn)了復(fù)雜的控制功能?,F(xiàn)代電機(jī)控制系統(tǒng)簡(jiǎn)化了電路的設(shè)計(jì),并帶有保護(hù)電路功能,設(shè)計(jì)連線在芯片的范圍內(nèi),提高了系統(tǒng)工作的可靠性和抵抗外界干擾的能力。單機(jī)控制系統(tǒng)通過(guò)用戶需求可以自行設(shè)置任務(wù)參數(shù),以滿足用戶的實(shí)際需要,能夠?qū)崟r(shí)完成多任務(wù)的控制管理,發(fā)揮了良好的應(yīng)用效果。嵌入式單片機(jī)控制系統(tǒng)具有成本低、節(jié)能環(huán)保的特點(diǎn),提高了電機(jī)的工作效率,保證了電機(jī)運(yùn)行的安全性和可靠性,在工業(yè)領(lǐng)域和相關(guān)應(yīng)用企業(yè)發(fā)揮了重要的作用。
通過(guò)嵌入式單片機(jī)的整體設(shè)計(jì)研究,應(yīng)明確單片機(jī)芯片體系的設(shè)計(jì)方案,依據(jù)電機(jī)的電力體系結(jié)構(gòu)開(kāi)展嵌入式單片機(jī)的硬件設(shè)計(jì),科學(xué)合理地搭配各種硬件設(shè)施,并對(duì)軟件體系進(jìn)行優(yōu)化設(shè)計(jì),以保證軟件的控制功能,從而實(shí)現(xiàn)多種不同的運(yùn)行功能,確保電機(jī)控制系統(tǒng)中嵌入式單機(jī)片的設(shè)計(jì)滿足控制多任務(wù)的需求。