宋 健,曾穎峰
(四川工程職業(yè)技術(shù)學(xué)院電氣信息工程系,四川 德陽618000)
隨著現(xiàn)代經(jīng)濟(jì)快速發(fā)展,制造業(yè)生產(chǎn)規(guī)模不斷擴(kuò)大,我國已成為全球機(jī)床市場最大的生產(chǎn)國和消費(fèi)國。當(dāng)前,在我國數(shù)控加工領(lǐng)域廣泛使用的計(jì)算機(jī)數(shù)控系統(tǒng)(CNC)主要包括從國外進(jìn)口的發(fā)那科、西門子、三菱、海德漢等知名國際品牌和廣數(shù)、華中數(shù)控和凱恩帝等國產(chǎn)數(shù)控系統(tǒng)。但是,無論是進(jìn)口還是國產(chǎn)數(shù)控系統(tǒng),產(chǎn)品結(jié)構(gòu)開放性差[1]、價(jià)格高,并且均以通用CNC編程加工為主,對操作者編程加工能力及操作技能要求高,大大制約了生產(chǎn)的普及型和多樣性。
本文以STM32F103VC嵌入式[2]處理器為核心,設(shè)計(jì)了一種結(jié)構(gòu)簡單、速度響應(yīng)快、操作方便、性價(jià)比高、安全性好且適用于車、銑加工的數(shù)控系統(tǒng)。
CNC設(shè)計(jì)的關(guān)鍵點(diǎn)在于結(jié)合機(jī)床加工范圍和加工能力,如何實(shí)現(xiàn)軸(主軸、進(jìn)給軸)的精準(zhǔn)運(yùn)動(dòng)控制功能和M、S、T等輔助功能。
系統(tǒng)結(jié)構(gòu)設(shè)計(jì)如圖1所示,系統(tǒng)構(gòu)架采用功能模塊式結(jié)構(gòu)和RS485通信主從控制模式,功能模塊包括STM32F103VC主芯片運(yùn)動(dòng)控制、觸摸屏輸入、PLC輔助控制、模擬主軸變頻控制、伺服進(jìn)給脈沖控制和編碼器解碼反饋等幾個(gè)部分。
圖1 系統(tǒng)結(jié)構(gòu)
STM32F103VC作為運(yùn)動(dòng)控制器主芯片[3],有很高的運(yùn)算處理能力和高速高響應(yīng)特性,能實(shí)現(xiàn)單周期32位乘法運(yùn)算,最高工作頻率可達(dá)72MHz,1.25DMIPS/MHz,中斷延遲時(shí)間80~160ns;同時(shí),STM32F103VC擁有80個(gè)I/O端口,16個(gè)外部中斷,8個(gè)定時(shí)器,能獨(dú)立處理4個(gè)正交編碼器脈沖計(jì)數(shù),有2個(gè)12位的DAC通道,5個(gè)USART接口。
為避免STM32F103VC直接驅(qū)動(dòng)顯示屏的操作界面從而影響伺服運(yùn)動(dòng)控制的處理速度,采用觸摸屏RS485接口組態(tài)完成加工信息的相互傳遞,將加工坐標(biāo)、進(jìn)給速度及其它初始化數(shù)據(jù)通過RS485接口傳遞給STM32F103VC,STM32F103VC對數(shù)據(jù)進(jìn)行分析處理并根據(jù)操作要求實(shí)現(xiàn)進(jìn)給軸控制。
如圖2所示為伺服控制功能接口(X軸)所示,STM32F103VC外接25個(gè)行列式矩陣功能鍵盤,采用線反轉(zhuǎn)法編程識別鍵號,實(shí)現(xiàn)X/Y/Z軸正負(fù)向運(yùn)動(dòng)、進(jìn)給倍率和主軸倍率增減、主軸正反停、刀架換刀、軸伺服使能以及復(fù)位等按鍵功能。I/O輸入設(shè)置為浮空模式,輸出設(shè)置為推挽模式,為保證得到正確的響應(yīng),設(shè)置了RC串聯(lián)濾波按鍵消抖功能,按鍵連接I/O端為 PC0、PC1、PC3~PC5,PE2~PE6。對于 X 軸伺服驅(qū)動(dòng)器進(jìn)給脈沖,選用速度、方向脈沖輸入端為光耦隔離輸入的驅(qū)動(dòng)器(例如:松下Minas A4系列驅(qū)動(dòng)器),則僅需通過STM32F103VC內(nèi)部定時(shí)器中斷輸出控制PA13電平高低,用以控制速度,而PA14則作為方向信號控制。為驗(yàn)證進(jìn)給位置、速度的準(zhǔn)確性,引入編碼器信號反饋。因伺服驅(qū)動(dòng)器增量式編碼器反饋多采用差分輸出模式,故選用AM26LS32AC四路高速差動(dòng)電路接收器,將差分信號轉(zhuǎn)化為A、B、Z脈沖信號供STM32F103VC內(nèi)部定時(shí)器進(jìn)行編碼器模式計(jì)數(shù)。在此,X軸編碼器反饋的A、B正交信號接收端為TIM5_CH1、TIM5_CH2即PA0、PA1輸入端。
圖2 伺服控制功能接口
STM32F103VC作為主站,實(shí)時(shí)訪問觸摸屏,要求其上傳進(jìn)給軸傳動(dòng)比、絲桿螺距、運(yùn)動(dòng)控制軌跡類型和反向間隙等。通過反饋數(shù)據(jù)以及相應(yīng)的功能按鍵進(jìn)行插補(bǔ)運(yùn)算,發(fā)出進(jìn)給脈沖控制伺服驅(qū)動(dòng)器作進(jìn)給運(yùn)動(dòng)。例如,要求在XY平面內(nèi)從起點(diǎn)(10、10)到終點(diǎn)(100、200)位置實(shí)現(xiàn)直線的銑削運(yùn)動(dòng),XY軸傳動(dòng)比均為1∶1,XY軸絲桿螺距均為8 mm,進(jìn)給量為0.1 mm/r,主軸速度為1 000 r/min,編碼器線數(shù)為2 500,電子齒數(shù)為4倍頻,則可計(jì)算出其脈沖當(dāng)量為0.0008 mm,再將坐標(biāo)值轉(zhuǎn)化為脈沖當(dāng)數(shù)。如圖3所示,采用逐點(diǎn)比較插補(bǔ)法[4],通過計(jì)算當(dāng)前點(diǎn)P與起點(diǎn)的斜率,判斷位于理想直線的上方還是下方,依據(jù)給定速度和倍率,調(diào)整定時(shí)器中斷周期,向x或y軸驅(qū)動(dòng)器發(fā)出1個(gè)進(jìn)給脈沖信號,直至到達(dá)終點(diǎn)。
圖3 逐點(diǎn)比較直線插補(bǔ)
為滿足數(shù)控機(jī)床主軸在不同的加工工藝條件下均能獲得理想的速度,主軸的控制通常要求調(diào)速范圍寬且能實(shí)現(xiàn)無級調(diào)速,因此選用變頻器控制方式。變頻器速度控制有總線控制、多段速控制、模擬信號控制等多種方法,考慮到模擬信號控制方式適用性寬廣,在此采用STM32F103VC芯片的DAC控制功能進(jìn)行速度控制。
圖4為電壓比例放大電路,STM32F103VC內(nèi)部的DAC輸出電壓(0~3.3 V)經(jīng)PA4端口送至同相比例放大器LM358,轉(zhuǎn)化為0~10 V線性電壓,作為變頻器給定,配合變頻器的V/F曲線功能即可得到準(zhǔn)確的頻率輸出,從而實(shí)現(xiàn)主軸電機(jī)轉(zhuǎn)速控制功能。
圖4 電壓比例放大電路
考慮到數(shù)控車床通常要求具備螺紋加工功能,主軸控制引入速度反饋功能,將主軸編碼器輸出的差分信號送入另一片AM26LS32AC中,再將處理后得到的A、B正交脈沖信號接入定時(shí)器編碼方式的TIM3_CH1、TIM3_CH2接口,即 PA6、PA7輸入端。如此,可檢測到主軸轉(zhuǎn)動(dòng)的方向和速度,配合進(jìn)給運(yùn)動(dòng)實(shí)現(xiàn)螺紋加工。
該數(shù)控系統(tǒng)的設(shè)計(jì)采取1主2從模式,STM32F 103VC控制器為主機(jī),PLC輔助控制以及觸摸屏控制為從機(jī),通過RS485組態(tài)通信,采用標(biāo)準(zhǔn)的Modbus通信協(xié)議[5]。
數(shù)控系統(tǒng)中設(shè)置了兩個(gè)從站,輔助控制器PLC以及操作觸摸屏,其中,PLC選取臺達(dá)DVP24ES200T,該機(jī)自帶16個(gè)輸入點(diǎn)和8個(gè)輸出點(diǎn)。輸入地址分配如表1所示,主要用于X/Y/Z軸的限位、回零、急停和刀位檢測等信號輸入。
表1 輸入地址分配
輸出地址分配如表2所示,主要用于冷卻、潤滑、主軸正反轉(zhuǎn)、刀架換刀及卡盤卡緊、放松等輔助功能的控制。
表2 輸出地址分配
人機(jī)界面[6]載體選用昆侖通態(tài)TPC7062i觸摸屏,該觸摸屏以Cortex-A8 CPU為核心,主頻600 MHz,配置RS485接口1個(gè)。人機(jī)界面選項(xiàng)主要包括參數(shù)輸入、故障診斷、坐標(biāo)變換、加工仿真以及編程操作等,編程操作界面如圖5所示,該界面區(qū)別于傳統(tǒng)CNC界面模式,加工指令采用對話框模式操作,加工指令主要包括點(diǎn)到點(diǎn)運(yùn)行(PTP)指令、直線加工指令(LINE)、順圓弧加工指令(CIRC)、逆圓加工指令以及樣條曲線加工指令(SPL)等,操作方便快捷;同時(shí),該界面還具備加工信息實(shí)時(shí)反饋功能。
圖5 編程操作界面
安全性、可靠性和穩(wěn)定性是衡量數(shù)控系統(tǒng)性能的重要指標(biāo)。為此,針對急停和行程限位等重要信號,本系統(tǒng)采用雙CPU模式和異同CPU架構(gòu),以實(shí)現(xiàn)機(jī)床的緊急停止功能。如圖6所示,急停信號采用雙通道形式,一路常閉觸點(diǎn)連接PLC的X0接口,另一路常閉觸點(diǎn)送入高速光耦6N136,6N136輸出再送入STM32F103VC的PA5端口,X0和PA5均采用中斷編程方式,進(jìn)行邏輯或處理。若X0檢測輸入斷開,則PLC立刻切斷伺服進(jìn)給供電以及停止主軸旋轉(zhuǎn);若PA5檢測輸入斷開,則立刻停止發(fā)送速度信號并進(jìn)行制動(dòng),若在一定時(shí)間間隔內(nèi)僅檢測到X0或PA5信號斷開,則立刻停車、報(bào)警,要求檢查急停信號通路故障,以確保安全。
圖6 急停安全接口
為實(shí)現(xiàn)數(shù)控加工的多樣性、普及型及簡單化操作,本文選用STM32F103VC嵌入式32位單片機(jī)作為數(shù)控系統(tǒng)的主控芯片,采用了一種主從結(jié)構(gòu)設(shè)計(jì)模式實(shí)現(xiàn)對機(jī)床的控制功能,經(jīng)對伺服進(jìn)給控制、變頻主軸控制、PLC輔助控制、人機(jī)交互組態(tài)以及安全結(jié)構(gòu)等環(huán)節(jié)進(jìn)行測試與驗(yàn)證,證明本系統(tǒng)設(shè)計(jì)實(shí)用、合理和安全,為低成本、高效率的通用性數(shù)控系統(tǒng)設(shè)計(jì)提供了一定的借鑒和幫助。