唐會(huì)成
(中國煤炭科工集團(tuán) 太原研究院有限公司, 山西 太原 030006)
隨著電力電子技術(shù)、 計(jì)算機(jī)技術(shù)的快速發(fā)展以為智能化數(shù)字礦山建設(shè)理念的提出, 煤礦采掘設(shè)備的控制技術(shù)對設(shè)備自動(dòng)化、智能化要求與日俱增。傳統(tǒng)的煤礦采掘設(shè)備電氣控制系統(tǒng)主要以電機(jī)回路的傳感器為主, 電機(jī)的過載、缺相保護(hù)采用電流傳感器檢測實(shí)現(xiàn);電機(jī)過熱保護(hù)通過電機(jī)繞組預(yù)置的PTC 熱敏電阻實(shí)現(xiàn)。 煤礦采掘設(shè)備智能化控制發(fā)展, 迫切需求對采掘設(shè)備主要部件運(yùn)行狀態(tài)進(jìn)行實(shí)時(shí)檢測、實(shí)時(shí)傳輸,因此需要對傳感器進(jìn)行集中的科學(xué)管理, 傳感器信號(hào)的數(shù)據(jù)采集系統(tǒng)是設(shè)備的感知系統(tǒng),是設(shè)備自動(dòng)化、智能化控制的基本環(huán)節(jié)[1]。
傳統(tǒng)傳感器信號(hào)采集以模擬量傳輸為主, 多路傳感器信息需要多路傳輸,且容易受到干擾,難以構(gòu)成網(wǎng)絡(luò)化傳輸, 本文提出了多種傳感器信號(hào)多路混合采集的設(shè)計(jì)方法,以STM32 微處理器為核心,通訊接口采用CAN2.0協(xié)議,通過采集器實(shí)現(xiàn)傳感器信息的集中采集與處理,實(shí)現(xiàn)傳感器信息數(shù)字化管理和網(wǎng)絡(luò)化傳輸; 本文根據(jù)自動(dòng)化程序較高的短壁開采設(shè)備連采機(jī)和掘錨機(jī)的設(shè)計(jì)需求,對其應(yīng)用的傳感器種類及信號(hào),確定數(shù)據(jù)采集系統(tǒng)的接口種類和數(shù)量,設(shè)備配備水壓傳感器、液壓系統(tǒng)壓力傳感器、傾角傳感器、位移傳感器、溫度傳感器,根據(jù)功能數(shù)據(jù)采集系統(tǒng)具備5 路模擬量4~20mA 接口;8 路開關(guān)量信號(hào)采集用于電機(jī)過熱保護(hù)信號(hào)檢測。
主控芯片STM32F103ZET6 是意法半導(dǎo)體公司基于“Cortex-M3”內(nèi)核的高性能、低功耗控20 制器,不僅具有豐富的外設(shè)擴(kuò)展能力,在工業(yè)控制領(lǐng)域廣泛應(yīng)用[2]。 該芯片最高72MHz 工作頻率,具有2 個(gè)基本定時(shí)器、4 個(gè)通用定時(shí)器、2 個(gè)高級(jí)定時(shí)器。
系統(tǒng)組成包括主控芯片MCU、各功能模塊供電電源、開關(guān)量采樣隔離、模塊量信號(hào)采樣隔離、CAN 總線通訊及各信息濾波電路等組成,8 路DI 信號(hào)采集可用于電機(jī)過熱保護(hù)或其它開開關(guān)量信號(hào),5 路AI 信號(hào)用于采集4~20mA 標(biāo)準(zhǔn)傳感器信號(hào), 采集器將采集信息通過CAN 總線將信息傳遞給PLC 控制器。 系統(tǒng)硬件框圖如圖1 所示。
圖1 總體方案框圖Fig.1 Overall scheme block diagram
STM32F103ZET6 的GPIO 配置為開關(guān)量輸入, 開關(guān)量采集電路適用于對開關(guān)量信號(hào)進(jìn)行采集, 如設(shè)備行程開關(guān)及電機(jī)PTC 溫度保護(hù)開關(guān)等狀態(tài)信號(hào)。 為了抑制采掘設(shè)備惡劣工作環(huán)境帶來的干擾, 電路采用硬件抗干擾措施,通過PC817 光電耦合器對信號(hào)進(jìn)行光電隔離,從而實(shí)現(xiàn)了外部輸入的采集信號(hào)與STM32 的IO 點(diǎn)實(shí)現(xiàn)電氣隔離, 保護(hù)STM32 芯片不會(huì)因?yàn)橥獠扛蓴_信號(hào)而損壞;為保護(hù)開關(guān)量信號(hào)的可靠性,避免干擾引起的誤動(dòng)作,電路設(shè)計(jì)高電平門檻值為18V, 只有輸入節(jié)點(diǎn)信號(hào)大于18V,光耦PC817 導(dǎo)通,GPIO 輸入為高電平;當(dāng)節(jié)點(diǎn)輸入信號(hào)電壓低于18V 時(shí)PC817 處于截至狀態(tài),GPIO 輸入為低電平;同時(shí)為便于對開關(guān)量信號(hào)的直觀檢測,電路通過LED 發(fā)光二極管對電路進(jìn)行指示,光耦導(dǎo)通時(shí)LED 發(fā)光;為增加對光耦的保護(hù), 防止干擾信號(hào)帶來的電壓突變及尖峰電壓, 在限流電阻R2 的兩端并聯(lián)二極管1N4007[3]。其中一路的開關(guān)量采集電路如圖2 所示。
圖2 開關(guān)量采集電路Fig.2 Switching value acquisition circuit
開關(guān)量采集電路器件參數(shù)匹配, 光耦導(dǎo)通時(shí)電流為4~10mA,輸入點(diǎn)為24V 最高電壓時(shí),光耦導(dǎo)通,R1 和R3構(gòu)成回路,所以:
當(dāng)輸入電壓信號(hào)小于18V,確保光耦截止,即電流小于4mA,電阻R1,R3 和R2 構(gòu)成輸入回路,所以:
在設(shè)計(jì)中,選擇R1=R3=2kΩ,R2=1kΩ。
模擬量轉(zhuǎn)換通過ADC 控制器完成,ADC 即是模擬/數(shù)字轉(zhuǎn)換器, 它可以將不同的模擬量信號(hào)轉(zhuǎn)化成控制器可識(shí)別的數(shù)字量信號(hào),STM32F103ZET6 帶3 個(gè)ADC 控制器, 每個(gè)ADC 控制器具有16 個(gè)外部通道和2 個(gè)內(nèi)部信號(hào)源共18 個(gè)通道;ADC 轉(zhuǎn)換通道根據(jù)實(shí)際使用可設(shè)置為規(guī)則通道組和注入通道組兩種模式[4]。規(guī)則通道組是依據(jù)程序設(shè)置對各個(gè)通道的數(shù)據(jù)依次進(jìn)行采集,循環(huán)執(zhí)行,適用于多通道ADC 數(shù)據(jù)的自動(dòng)傳輸;注入通道組相當(dāng)于中斷采集,優(yōu)先級(jí)比規(guī)則組高,注入組通道可以打斷規(guī)則組通道的采集,適用于關(guān)鍵數(shù)據(jù)的采集,注入組最多可以同時(shí)設(shè)置4 個(gè)通道,是程序有需求是才執(zhí)行ADC 通道的數(shù)據(jù)采集。 本文的設(shè)計(jì)采用規(guī)則組通道, 按順序依次對10路模擬量信號(hào)數(shù)據(jù)進(jìn)行采集。 采集的數(shù)據(jù)結(jié)果通過DMA(內(nèi)存直接存?。┓绞街苯觽鬏?,ADC 轉(zhuǎn)換數(shù)據(jù)傳輸前CPU對DMA 控制器進(jìn)行初始化,GPIO 模擬量口提出DMA 請求,當(dāng)CUP 當(dāng)前任務(wù)完成后,告訴DMA 控制器獲得總線控制權(quán), 在DMA 控制器指揮下,ADC 轉(zhuǎn)換器轉(zhuǎn)換的數(shù)字量信號(hào)直接復(fù)制到程序配置好的變量中,無需CPU 執(zhí)行程序,節(jié)省CPU 資源。
傳感器接口的模擬信號(hào)為4~20mA 的電流信號(hào),所以必須經(jīng)過信號(hào)調(diào)理將其轉(zhuǎn)化為ADC 可檢測的3.3V 以下的電壓信號(hào),ADC 轉(zhuǎn)換器才可以進(jìn)行模擬/數(shù)量轉(zhuǎn)換,輸入到STM32 模擬量電壓信號(hào)范圍必須是0~3.3V,超過3.3V 可能會(huì)燒毀控制器的GPIO 口[5]。
STM32F103 的ADC 分辨率12 位,基準(zhǔn)電壓3.3V,即是3.3V 電壓對應(yīng)控制器數(shù)字量為4095,假定采樣電壓為x,ADC 轉(zhuǎn)換器轉(zhuǎn)換數(shù)字量的值為y,則y=4095x/3.3。
CAN 是控制網(wǎng)絡(luò)(Control Area Network)的簡稱,由德國BOSCH 公司提出,CAN 總線是當(dāng)前工業(yè)控制領(lǐng)域使用最廣泛的現(xiàn)場總線技術(shù)之一, 被廣泛地應(yīng)用于工業(yè)自動(dòng)化、船舶、醫(yī)療設(shè)備、工業(yè)設(shè)備等方面。信號(hào)傳輸采用雙絞線,最高速率可達(dá)1Mbps;支持多種通訊方式,CAN 數(shù)據(jù)采用短幀傳輸,每一幀數(shù)據(jù)的有效數(shù)據(jù)為8 個(gè)字節(jié),降低了受干擾率[6]。
CAN 總線收發(fā)器采用TJA1050, 是一種標(biāo)準(zhǔn)的高速CAN 收發(fā)器,適用于物理總線和CAN 總線協(xié)議控制器之間的接口芯片,通信速率最高可達(dá)1Mbps,具有CAN 協(xié)議控制器與總線上傳輸差分信號(hào)的功能, 主要實(shí)現(xiàn)邏輯電平與CAN 總線信號(hào)“顯性”,“隱性”的轉(zhuǎn)換,為濾除總線上高頻干擾在CANH 和CANL 腳與地之間并聯(lián)2 個(gè)30P 的電容,D7、D8 兩個(gè)二極管可以起到發(fā)生瞬變干擾時(shí)的保護(hù)作用[7]。 CAN 總線接口電路如圖3 所示。
圖3 CAN 總線接口電路Fig.3 CAN bus interface circuit
程序主要包括主程序、初始化程序、CAN 總線通訊程序、數(shù)據(jù)采集及處理程序。主程序負(fù)責(zé)數(shù)據(jù)采集系統(tǒng)各功能循環(huán)調(diào)用, 初始化程序?qū)ο到y(tǒng)時(shí)鐘及GPIO 口進(jìn)行配置,CAN 總線通訊程序采用定時(shí)中斷執(zhí)行,數(shù)據(jù)發(fā)送周期100ms,數(shù)據(jù)采集及處理,負(fù)責(zé)對GPIO 口輸入信號(hào)采集,并設(shè)置軟件濾波函數(shù),提高數(shù)據(jù)的可靠性[8]。 軟件控制流程如圖4 所示。
圖4 軟件控制流程Fig.4 Software control process
采集器外殼采用不銹鋼,標(biāo)準(zhǔn)AO 引入裝置,通過調(diào)試及檢測, 模數(shù)轉(zhuǎn)換線性度良好, 數(shù)據(jù)采集器CAN 總線數(shù)據(jù)偵格式如表1。
采集器發(fā)送數(shù)據(jù)偵0x185 的第1 個(gè)字節(jié)為心跳字節(jié),每100ms 發(fā)送一次該值增加1,PLC 通過該字節(jié)心跳數(shù)據(jù)的變化, 判斷采集器CAN 總線通訊是否正常,第3 個(gè)字節(jié)對應(yīng)數(shù)據(jù)采集器8 路開關(guān)量輸入信號(hào), 最后2 個(gè)字節(jié)第1 路AI 信號(hào);0x285 數(shù)據(jù)偵對應(yīng)4 路模擬量信號(hào),每1 路占用2 個(gè)字節(jié),模擬量信號(hào)測試用0~20mA 信號(hào)發(fā)生器, 分別在0mA、4mA、10mA、16mA、20mA 測試每路AD 轉(zhuǎn)換值[9],用USBCAN 記錄總線數(shù)據(jù)如表2 所示。
表1 CAN 總線數(shù)據(jù)格式Tab.1 Can bus data format
表2 模擬量數(shù)據(jù)Tab.2 Analog data
測試結(jié)果表明,CAN 總線數(shù)據(jù)采集器具有良好的采集轉(zhuǎn)換性能,滿足設(shè)計(jì)要求。
本文結(jié)合連采機(jī)、 掘錨機(jī)等自動(dòng)化水平較高的煤礦采掘設(shè)備應(yīng)用傳感器較多的特點(diǎn),設(shè)計(jì)了基于STM32 的CAN 總線數(shù)據(jù)采集系統(tǒng), 實(shí)現(xiàn)多種傳感器信號(hào)的混合采集,就近完成,減少系統(tǒng)布線,系統(tǒng)結(jié)構(gòu)簡潔,便于系統(tǒng)檢測與維護(hù)[10];主控制器不需要信號(hào)調(diào)理轉(zhuǎn)換模塊,節(jié)約硬件成本;CAN 數(shù)據(jù)采集器的已成功應(yīng)用于連采機(jī)、掘錨機(jī)等設(shè)備, 同時(shí)可為煤礦其它采掘設(shè)備自動(dòng)化升級(jí)改造提供了技術(shù)支持,方便設(shè)備新增傳感器接入控制系統(tǒng)。