唐會成
(中國煤炭科工集團 太原研究院有限公司, 山西 太原 030006)
隨著電力電子技術、 計算機技術的快速發展以為智能化數字礦山建設理念的提出, 煤礦采掘設備的控制技術對設備自動化、智能化要求與日俱增。傳統的煤礦采掘設備電氣控制系統主要以電機回路的傳感器為主, 電機的過載、缺相保護采用電流傳感器檢測實現;電機過熱保護通過電機繞組預置的PTC 熱敏電阻實現。 煤礦采掘設備智能化控制發展, 迫切需求對采掘設備主要部件運行狀態進行實時檢測、實時傳輸,因此需要對傳感器進行集中的科學管理, 傳感器信號的數據采集系統是設備的感知系統,是設備自動化、智能化控制的基本環節[1]。
傳統傳感器信號采集以模擬量傳輸為主, 多路傳感器信息需要多路傳輸,且容易受到干擾,難以構成網絡化傳輸, 本文提出了多種傳感器信號多路混合采集的設計方法,以STM32 微處理器為核心,通訊接口采用CAN2.0協議,通過采集器實現傳感器信息的集中采集與處理,實現傳感器信息數字化管理和網絡化傳輸; 本文根據自動化程序較高的短壁開采設備連采機和掘錨機的設計需求,對其應用的傳感器種類及信號,確定數據采集系統的接口種類和數量,設備配備水壓傳感器、液壓系統壓力傳感器、傾角傳感器、位移傳感器、溫度傳感器,根據功能數據采集系統具備5 路模擬量4~20mA 接口;8 路開關量信號采集用于電機過熱保護信號檢測。
主控芯片STM32F103ZET6 是意法半導體公司基于“Cortex-M3”內核的高性能、低功耗控20 制器,不僅具有豐富的外設擴展能力,在工業控制領域廣泛應用[2]。 該芯片最高72MHz 工作頻率,具有2 個基本定時器、4 個通用定時器、2 個高級定時器。
系統組成包括主控芯片MCU、各功能模塊供電電源、開關量采樣隔離、模塊量信號采樣隔離、CAN 總線通訊及各信息濾波電路等組成,8 路DI 信號采集可用于電機過熱保護或其它開開關量信號,5 路AI 信號用于采集4~20mA 標準傳感器信號, 采集器將采集信息通過CAN 總線將信息傳遞給PLC 控制器。 系統硬件框圖如圖1 所示。

圖1 總體方案框圖Fig.1 Overall scheme block diagram
STM32F103ZET6 的GPIO 配置為開關量輸入, 開關量采集電路適用于對開關量信號進行采集, 如設備行程開關及電機PTC 溫度保護開關等狀態信號。 為了抑制采掘設備惡劣工作環境帶來的干擾, 電路采用硬件抗干擾措施,通過PC817 光電耦合器對信號進行光電隔離,從而實現了外部輸入的采集信號與STM32 的IO 點實現電氣隔離, 保護STM32 芯片不會因為外部干擾信號而損壞;為保護開關量信號的可靠性,避免干擾引起的誤動作,電路設計高電平門檻值為18V, 只有輸入節點信號大于18V,光耦PC817 導通,GPIO 輸入為高電平;當節點輸入信號電壓低于18V 時PC817 處于截至狀態,GPIO 輸入為低電平;同時為便于對開關量信號的直觀檢測,電路通過LED 發光二極管對電路進行指示,光耦導通時LED 發光;為增加對光耦的保護, 防止干擾信號帶來的電壓突變及尖峰電壓, 在限流電阻R2 的兩端并聯二極管1N4007[3]。其中一路的開關量采集電路如圖2 所示。

圖2 開關量采集電路Fig.2 Switching value acquisition circuit
開關量采集電路器件參數匹配, 光耦導通時電流為4~10mA,輸入點為24V 最高電壓時,光耦導通,R1 和R3構成回路,所以:
當輸入電壓信號小于18V,確保光耦截止,即電流小于4mA,電阻R1,R3 和R2 構成輸入回路,所以:
在設計中,選擇R1=R3=2kΩ,R2=1kΩ。
模擬量轉換通過ADC 控制器完成,ADC 即是模擬/數字轉換器, 它可以將不同的模擬量信號轉化成控制器可識別的數字量信號,STM32F103ZET6 帶3 個ADC 控制器, 每個ADC 控制器具有16 個外部通道和2 個內部信號源共18 個通道;ADC 轉換通道根據實際使用可設置為規則通道組和注入通道組兩種模式[4]。規則通道組是依據程序設置對各個通道的數據依次進行采集,循環執行,適用于多通道ADC 數據的自動傳輸;注入通道組相當于中斷采集,優先級比規則組高,注入組通道可以打斷規則組通道的采集,適用于關鍵數據的采集,注入組最多可以同時設置4 個通道,是程序有需求是才執行ADC 通道的數據采集。 本文的設計采用規則組通道, 按順序依次對10路模擬量信號數據進行采集。 采集的數據結果通過DMA(內存直接存取)方式直接傳輸,ADC 轉換數據傳輸前CPU對DMA 控制器進行初始化,GPIO 模擬量口提出DMA 請求,當CUP 當前任務完成后,告訴DMA 控制器獲得總線控制權, 在DMA 控制器指揮下,ADC 轉換器轉換的數字量信號直接復制到程序配置好的變量中,無需CPU 執行程序,節省CPU 資源。
傳感器接口的模擬信號為4~20mA 的電流信號,所以必須經過信號調理將其轉化為ADC 可檢測的3.3V 以下的電壓信號,ADC 轉換器才可以進行模擬/數量轉換,輸入到STM32 模擬量電壓信號范圍必須是0~3.3V,超過3.3V 可能會燒毀控制器的GPIO 口[5]。
STM32F103 的ADC 分辨率12 位,基準電壓3.3V,即是3.3V 電壓對應控制器數字量為4095,假定采樣電壓為x,ADC 轉換器轉換數字量的值為y,則y=4095x/3.3。
CAN 是控制網絡(Control Area Network)的簡稱,由德國BOSCH 公司提出,CAN 總線是當前工業控制領域使用最廣泛的現場總線技術之一, 被廣泛地應用于工業自動化、船舶、醫療設備、工業設備等方面。信號傳輸采用雙絞線,最高速率可達1Mbps;支持多種通訊方式,CAN 數據采用短幀傳輸,每一幀數據的有效數據為8 個字節,降低了受干擾率[6]。
CAN 總線收發器采用TJA1050, 是一種標準的高速CAN 收發器,適用于物理總線和CAN 總線協議控制器之間的接口芯片,通信速率最高可達1Mbps,具有CAN 協議控制器與總線上傳輸差分信號的功能, 主要實現邏輯電平與CAN 總線信號“顯性”,“隱性”的轉換,為濾除總線上高頻干擾在CANH 和CANL 腳與地之間并聯2 個30P 的電容,D7、D8 兩個二極管可以起到發生瞬變干擾時的保護作用[7]。 CAN 總線接口電路如圖3 所示。

圖3 CAN 總線接口電路Fig.3 CAN bus interface circuit
程序主要包括主程序、初始化程序、CAN 總線通訊程序、數據采集及處理程序。主程序負責數據采集系統各功能循環調用, 初始化程序對系統時鐘及GPIO 口進行配置,CAN 總線通訊程序采用定時中斷執行,數據發送周期100ms,數據采集及處理,負責對GPIO 口輸入信號采集,并設置軟件濾波函數,提高數據的可靠性[8]。 軟件控制流程如圖4 所示。

圖4 軟件控制流程Fig.4 Software control process
采集器外殼采用不銹鋼,標準AO 引入裝置,通過調試及檢測, 模數轉換線性度良好, 數據采集器CAN 總線數據偵格式如表1。
采集器發送數據偵0x185 的第1 個字節為心跳字節,每100ms 發送一次該值增加1,PLC 通過該字節心跳數據的變化, 判斷采集器CAN 總線通訊是否正常,第3 個字節對應數據采集器8 路開關量輸入信號, 最后2 個字節第1 路AI 信號;0x285 數據偵對應4 路模擬量信號,每1 路占用2 個字節,模擬量信號測試用0~20mA 信號發生器, 分別在0mA、4mA、10mA、16mA、20mA 測試每路AD 轉換值[9],用USBCAN 記錄總線數據如表2 所示。

表1 CAN 總線數據格式Tab.1 Can bus data format

表2 模擬量數據Tab.2 Analog data
測試結果表明,CAN 總線數據采集器具有良好的采集轉換性能,滿足設計要求。
本文結合連采機、 掘錨機等自動化水平較高的煤礦采掘設備應用傳感器較多的特點,設計了基于STM32 的CAN 總線數據采集系統, 實現多種傳感器信號的混合采集,就近完成,減少系統布線,系統結構簡潔,便于系統檢測與維護[10];主控制器不需要信號調理轉換模塊,節約硬件成本;CAN 數據采集器的已成功應用于連采機、掘錨機等設備, 同時可為煤礦其它采掘設備自動化升級改造提供了技術支持,方便設備新增傳感器接入控制系統。