但堂詠 張國慶 張紅亮
摘要:基于STM32與eView觸摸屏,設(shè)計了一款新型半導(dǎo)體激光器控制系統(tǒng),并成功應(yīng)用于基于半導(dǎo)體激光器的激光熔覆與淬火自動化設(shè)備之中,通過試用,該控制系統(tǒng)性能穩(wěn)定可靠。詳細闡述了該控制系統(tǒng)的硬件電路與軟件系統(tǒng)的設(shè)計思路與總體方案,該控制系統(tǒng)以STM32F103ZET6為核心,基于Modbus通信協(xié)議,通過RS232串口連接,具有良好的可靠性及一定的防呆性,交互性強,具有自動報警與自診斷功能,控制響應(yīng)速度快、控制精度高、較易擴展控制功能,能滿足整機系統(tǒng)集成的要求,可推廣應(yīng)用于工業(yè)過程控制和智能自動化控制領(lǐng)域。
關(guān)鍵詞:STM32;人機交互;Modbus協(xié)議;半導(dǎo)體激光器;控制系統(tǒng)
中圖分類號:TN248.4 文獻標(biāo)志碼:A 文章編號:1009—9492(2021)03—0155—03
0引言
近年來,隨著激光技術(shù)的飛速發(fā)展與日漸成熟,其在許多領(lǐng)域得到了廣泛應(yīng)用。相較于CO、YAG等傳統(tǒng)激光器,半導(dǎo)體激光器具有體積小、質(zhì)量輕、效率高、能耗小和壽命長等優(yōu)點,廣泛應(yīng)用于材料加工與制造、無線激光通信、醫(yī)療與測量等領(lǐng)域中。
現(xiàn)階段,激光器的控制系統(tǒng)可謂種類繁多,既有傳統(tǒng)的開關(guān)控制,也有比較人性化的超級終端控制,還有一些PLC及單片機控制等,這些控制系統(tǒng)各有優(yōu)缺點。傳統(tǒng)開關(guān)控制較易出錯,系統(tǒng)可靠性較差,交互性也不足;超級終端與PLC控制成本較高,靈活性不足,不易實現(xiàn)整機系統(tǒng)集成;較多的單片機控制還沒有正真應(yīng)用,多處于仿真與實驗階段等。針對當(dāng)前半導(dǎo)體控制系統(tǒng)的種種不足,本文基于STM32與eView觸摸屏,實現(xiàn)了對半導(dǎo)體激光器控制系統(tǒng)的設(shè)計與應(yīng)用,較好地解決了這些問題,成功應(yīng)用于工程實踐之中。
1激光器控制系統(tǒng)總體方案
1.1半導(dǎo)體激光器控制系統(tǒng)基本要求
半導(dǎo)體激光器控制系統(tǒng)基本要求如下。
(1)控制系統(tǒng)的工作界面友好、簡單,普通工作人員都可以操作。
(2)具有防呆性,防止誤操作。
(3)控制性能可靠、穩(wěn)定,抗干擾能力強,控制精度高,控制響應(yīng)速度快。
(4)能滿足系統(tǒng)集成的需求,實現(xiàn)激光器在整體應(yīng)用中的集成和控制。
(5)能實時顯示通信狀態(tài),具有自動報警與自診斷功能。
1.2核心控制器選擇
本系統(tǒng)采用STM32F103ZET6作為核心控制器,其基于ARM Cortex-M3內(nèi)核,具有高性能、低成本、低功耗的嵌入式應(yīng)用特點,內(nèi)核最高工作頻率可達72 MHz,內(nèi)部資源包括64 kh SRAM、512 kb FLASH、8個定時器、2個DMA控制器、3個SPI、2個IC、5個串口、3個12位ADC、1個12位DAC、1個SDIO接口、1個FSMC接口以及112個通用10口,LQFP144封裝等。
1.3系統(tǒng)總體方案確定
基于半導(dǎo)體激光器在激光熔覆與激光淬火行業(yè)中的應(yīng)用,本文設(shè)計了集成半導(dǎo)體激光器控制系統(tǒng)的激光熔覆與激光淬火自動化設(shè)備并成功投入實際應(yīng)用,經(jīng)生產(chǎn)實踐驗證,該控制系統(tǒng)性能穩(wěn)定,能夠滿足工業(yè)生產(chǎn)的需求,其總體控制方案如圖1所示。該自動化設(shè)備工作時,觸摸屏為系統(tǒng)提供正常工作所需的加工工藝及參數(shù),同時實時監(jiān)測并顯示系統(tǒng)的運行狀態(tài),當(dāng)系統(tǒng)運行發(fā)生故障時則產(chǎn)生報警。操作控制器則根據(jù)觸摸屏提供的工藝參數(shù)統(tǒng)籌協(xié)調(diào)半導(dǎo)體激光器、冷水機組、機器人控制系統(tǒng)及送粉器,按照其各自設(shè)定的參數(shù)協(xié)調(diào)工作。
2激光器控制系統(tǒng)具體設(shè)計
2.1系統(tǒng)硬件電路
硬件電路如圖2所示,主要包括以STM32F103ZET6為核心的操作控制器、步科MT4300C觸摸屏、半導(dǎo)體激光發(fā)生器控制系統(tǒng)、冷水機組控制系統(tǒng)、送粉器控制系統(tǒng)以及以SP3232為核心的TTL電平與RS232電平雙向轉(zhuǎn)換電路。半導(dǎo)體激光發(fā)生器與MT4300C分別通過RS232串口與微控制器(STM32F103ZET6)的串口1、2相連,機器人控制系統(tǒng)、冷水機組控制系統(tǒng)、送粉器控制系統(tǒng)的啟、停分別由3個繼電器控制,繼電器則由STM32F103ZET6的3個I/O口分別控制。
2.2系統(tǒng)軟件
2.2.1 Modbus通信協(xié)議選擇
作為人機界面(HMI)與單片機控制系統(tǒng)(MCU)之間實現(xiàn)主從通信模式的主要選擇之一,Modbus協(xié)議得到了廣泛的應(yīng)用,MT4300C支持Modbus協(xié)議。Modbus協(xié)議支持ASCII和RTU 2種傳輸方式。相對于ASCII模式,RTU模式具有更高的通信效率。在RTU模式下,當(dāng)將HMI作為主設(shè)備,MCU作為從設(shè)備時,適合應(yīng)用于1個主機與多個從機通信,采用Modbus RTU協(xié)議通信;當(dāng)將MCU作為主設(shè)備,HMI作為從設(shè)備時,適合應(yīng)用于1個主機與1個從機通信,采用Modbus RTU Slave協(xié)議通信。當(dāng)采用Modbus RTU Slave協(xié)議時,MCU作為主設(shè)備,可以主動發(fā)起通信,相較采用Modbus RTU協(xié)議,CPU占用率低,極大地節(jié)約了硬件資源。同時在MCU中,不需編寫復(fù)雜的中斷服務(wù)函數(shù),只需編寫簡單的通信讀,寫程序即可,實現(xiàn)起來更容易,本文采用Modbus RTUSlave協(xié)議進行通信。表1所示為常用Modbus支持的部分功能碼,也是本控制軟件系統(tǒng)中用到的功能碼,表2—3所示為Modbus RTU Slave協(xié)議的消息幀格式。
2.2.2軟件設(shè)計
軟件設(shè)計包含主控系統(tǒng)(主站)程序設(shè)計、人機界面(從站)程序設(shè)計。
(1)主控系統(tǒng)程序
基于STM32庫函數(shù),利用STM32常用的開發(fā)工具Keil MDK進行主控系統(tǒng)設(shè)計。主控系統(tǒng)服務(wù)程序由各功能模塊組成,主要包括串口初始化模塊、數(shù)據(jù)幀的構(gòu)造模塊、數(shù)據(jù)幀發(fā)送模塊、數(shù)據(jù)幀接收模塊、CRC校驗?zāi)K、應(yīng)答幀解析等功能模塊。主控系統(tǒng)程序工作流程如下:當(dāng)主控系統(tǒng)程序啟動后,首先構(gòu)造主站(STM32F103ZET6)查詢、從站(觸摸屏)應(yīng)答、激光器控制及激光器應(yīng)答數(shù)據(jù)幀,初始化串口并打開,主站(STM32F103ZET6)向從站(觸摸屏)發(fā)出通信請求,讀取觸摸屏當(dāng)前設(shè)定的加工工藝及相關(guān)參數(shù),解析應(yīng)答幀,讀取加工工藝及參數(shù),依據(jù)加工工藝及參數(shù),控制冷水機組、半導(dǎo)體激光器、機器人及送粉器按照加工工藝要求協(xié)同工作,同時將半導(dǎo)體激光器的反饋參數(shù)送觸摸屏實時顯示,實現(xiàn)半導(dǎo)體激光器自動報警與自診斷功能,主控系統(tǒng)程序流程如圖3所示。
數(shù)據(jù)幀的構(gòu)造、發(fā)送、解析必須嚴格按照Modbus RTU Slave協(xié)議進行,才能夠完成正常的通信。數(shù)據(jù)是否按照要求接收完畢,需要檢查,如數(shù)據(jù)接收不完整,則需要重新接收;接收的數(shù)據(jù)是否正確,需要進行CRC校驗,如果該數(shù)據(jù)不能通過CRC校驗,則舍棄重新接收,如果通過校驗,才能進行應(yīng)答幀解析,保證了數(shù)據(jù)通信的可靠性。
(2)人機界面程序
利用上海某公司的Kinco HMIware組態(tài)編輯軟件,可以方便進行人機界面程序設(shè)計并寫入MT4300C中。該軟件界面友好,采用圖形化編程,操作簡單易上手,為用戶提供了一個強大的集成開發(fā)環(huán)境。人機界面服務(wù)程序的組成主要包括如下幾大部分:①權(quán)限與密碼保護,包括觸摸屏使用授權(quán)、用戶權(quán)限管理、項目密碼保護等功能模塊;②加工工藝及參數(shù)的設(shè)定,包括加工工藝選擇(激光修復(fù)與激光熱處理)、開關(guān)冷水機組、開關(guān)激光器及功率設(shè)定、開關(guān)機器人、開關(guān)送粉器等功能模塊組成;③加工狀態(tài)及故障報警顯示模塊。人機界面程序設(shè)計流程如圖4所示。
在正式選擇加工工藝之前,需要按照機器人控制系統(tǒng)中編制完成的程序使機器人試運行,只有機器人運行軌跡符合設(shè)定的加工要求才能進行正式的加工,此部分功能單獨手動啟動。在進行激光熔覆加工時,只有送粉器能正常運行并且送粉速率符合要求時,才能啟動冷水機組與激光器,送粉速率不符合要求,需單獨調(diào)節(jié)送粉器。同時,開啟激光器的前提條件是必須先開啟冷水機組,只有在關(guān)閉激光器30 s后,才能關(guān)閉冷水機組,以防由于溫度過高,燒壞激光器。此部分可通過Kinco HMIware組態(tài)編輯軟件中的宏代碼編程實現(xiàn),作業(yè)員在操作時,具有防呆功能,以免誤操作而燒壞激光器。
2.2.3系統(tǒng)通信參數(shù)設(shè)定
基于Modbus RTU Slave協(xié)議的串口數(shù)據(jù)傳輸模式,為保障主站與從站之間的成功通信,在同一網(wǎng)絡(luò)上的所有設(shè)備必須設(shè)置相同的傳輸模式及通信參數(shù),本設(shè)計中,共用到了觸摸屏與STM32F103ZET6串口2、激光器與STM32F103ZET6串口1二對串口通信,相關(guān)參數(shù)設(shè)置如表4所示。
3性能測試與分析
實驗以國內(nèi)某半導(dǎo)體激光器為實驗對象,以STM32F103ZET6為核心的MCU控制系統(tǒng)作為主站控制器,步科MT4300C及半導(dǎo)體激光控制器作為從站,采用RS232串口通信模式,當(dāng)激光器接收到MCU發(fā)出的指令時,執(zhí)行對應(yīng)功能,部分指令如表5所示。
模擬時,將電腦端當(dāng)作激光器,采用串口調(diào)試助手進行程序調(diào)試,調(diào)試結(jié)果如圖5~6所示。經(jīng)過模擬測試表明,觸摸屏能夠較好地滿足人機界面的設(shè)計要求,并且能夠在人機界面、MCU主控系統(tǒng)與半導(dǎo)體激光器三者之間建立穩(wěn)定、可靠的通信,具有一定的防呆功能,如操作開關(guān)冷水機與開關(guān)激光時,存在需先開冷水機,后開激光,關(guān)時次序則需相反,否則不能執(zhí)行相關(guān)操作。其具有自動報警和自診斷功能。該系統(tǒng)能滿足該激光淬火與激光熔覆設(shè)備集成控制系統(tǒng)的要求。
與超級終端控制相比,該控制系統(tǒng)具有明顯價格優(yōu)勢,而且體積更小,便于設(shè)備小型化。與PLC控制相比,該控制系統(tǒng)不僅具有成本優(yōu)勢,同時主控制器STM32F103ZET6具有112個通用10接口,可擴展性遠遠超過現(xiàn)行采用的PLC。與傳統(tǒng)開關(guān)控制相比,可使設(shè)備較好地集成,極大地解決了設(shè)備布線的凌亂,增強了人機交互、自動報警與自診斷功能。與傳統(tǒng)單片機控制相比,成本基本相差無幾,但由于主控制器STM32F103ZET6工作頻率最高可達72 MHz,遠大于傳統(tǒng)的8位或16位單片機,決定了該控制器響應(yīng)速度遠快于傳統(tǒng)的單片機控制,控制精度也有所提升。
4結(jié)束語
本文基于STM32與eView觸摸屏,實現(xiàn)了對半導(dǎo)體激光器控制系統(tǒng)的重新設(shè)計與實現(xiàn),與傳統(tǒng)的控制方式相比,具有明顯優(yōu)點。其操作界面更加簡單友好,電路連接簡單,易于實現(xiàn);經(jīng)測試,通信性能可靠、穩(wěn)定,響應(yīng)速度更快;具有防呆性與自診斷新功能,避免了誤操作的可能性,同時可快速查找故障;可擴展性強,便于系統(tǒng)集成。目前,該套控制系統(tǒng)已應(yīng)用于廣州某公司激光熔覆與熱處理設(shè)備之中,運行穩(wěn)定可靠,性價比高,正接受實際工業(yè)生產(chǎn)的考驗。