張銀河,王雪雷,謝海云,董 波
1.天津大學,天津 300000
2.邯鄲卓立精細板材有限公司,河北邯鄲 056000
3.京鼎工程建設有限公司,北京 100000
在當今現場總線中,工業監控系統中普遍采用的是基于RS485 總線的半雙工通訊方式,只能構成主從式結構系統,通信方式也只能以主站輪詢的方式進行,系統的實時性、可靠性較差。這種通訊方式信息傳輸速度慢,很難滿足大規模工業自動化安全監控系統對實時性的要求。針對普通通信協議的不足,本文提出了采用CAN 總線實現的無主式通訊方式。
系統從功能上分類,可分為:核心PLC 子系統、CAN 總線監控子系統、語音仲裁等。PLC 子系統是CAN 總線監控系統的上一級控制單位,也是系統的核心控制;語音仲裁是協助CAN總線監控系統實現數字語音功能的部件。由此可見,CAN 總線監控系統是整個系統的核心,也是聯絡其他各子系統的橋梁。
CAN 總線系統包括ARM 系統主控制板、ARM 系統電話板、ARM 系統閉鎖板、ARM 系統尾端板。系統的網絡結構圖如圖1所示。

圖1 CAN 總線系統的網絡連接示意圖
CAN 總線監控系統的所有電路板核心MCU 處理器是STM32F107VCT6,該處理器基于ARM V7 架構的Cortex-M3 內核,主頻72Mhz,內部含有256K 字節的FLASH 和64K 字節的SRAM。鏈接與CAN 總線上的各種功能的電路板,通過STM32F107VCT6自帶的CAN 接口芯片,在電路板上設計以CAN 信號隔離器,就能掛接到CAN 總線上。通過這4 中電路板,系統實現工業現場各種信號的采集和外圍設備的控制。
系統的硬件電路包括AMBE-1000 電路設計、CSP1027-S 電路設計、音頻輸入輸出電路設計、DMA5601 語音芯片電路設計等部分功能電路。

圖2 STM32 系統語音功能設計結構圖
數字語音系統的工作原理如圖2 所示。在系統中,模擬語音數據有2 個來源:一個是DMA5601 芯片輸出的模擬語音數據流,另一個是由外部麥克風直接輸入的模擬語音數據流。在不同的STM32 電路板上,AMBE-1000 數字語音系統的模擬語音數據源不同。STM32 主控板的模擬語音數據源是DMA5601 芯片提供的,STM32 電話板的模擬語音數據源是麥克風提供的。
STM32 數字語音系統的工作原理是:由麥克風或DMA5601芯片提供的模擬語音數據經過語音采集電路送到CSP1027 進行A/D 轉換得到數字語音信號;CSP1027 將A/D 轉換后的數字語音信號傳送給AMBE-1000;AMBE-1000 通過其內部的編碼器將數字語音信號進行編碼,得到壓縮了的編碼語音數據,然后將編碼語音數據傳送給STM32 微控制器;STM32 微控制器將編碼語音數據經過程序邏輯處理后,得到CAN 協議的壓縮數字語音數據,然后將其通過其內置CAN 控制器傳送到CAN 收發器;CAN 收發器將CAN 協議的數字語音數據發送到CAN 總線上實現模擬語音數據的遠傳。
當CAN 總線上有了通訊數據后,CAN 收發器接收數據后傳送給STM32 芯片的內置CAN 控制模塊,STM32 芯片CPU 從其CAN 控制器中提取所接收的數據進行處理;當所接收的數據為壓縮的數字語音數據時,STM32 控制器會將該語音數據以并口(或串口)的方式傳送給AMBE-1000 語音編碼/譯碼芯片;AMBE-1000 首先進行數據譯碼得到數字語音數據,然后將數字語音數據傳送給CSP1027 進行D/A 轉換;CSP1027 將經D/A 轉換得到的模擬語音數據流傳送給語音運放芯片LM386 進行信號放大;LM386 輸出的放大功率的語音信號通過揚聲器得到聲學的語音。AMBE-1000 同STM32 的接口電路如圖3(B)所示。

CAN 總線可以以較低的成本、較高的實時處理能力,在惡劣的強電磁干擾環境下可靠地工作。CAN 總線具有較高的效率是因為總線僅僅被那些請求總線、但懸而未決的站利用,這些請求是根據報文在整個系統中的重要性按順序處理的。CAN 控制器工作于多主方式,網絡中的各節點都可根據總線訪問優先權 ,采用無損結構的逐位仲裁的方式競爭向總線發送數據。CAN協議廢除了站地址的編碼,而代之以對通信數據進行編碼,這可使CAN 總線上不同的節點同時接收到相同的數據。
本系統應用CAN 總線技術、音頻信號處理技術、傳感信息智能感知處理技術和多種網絡的網絡接入技術,解決監測監控系統在10Km 距離的信號傳輸問題、復雜環境下的語音信號高分貝、清晰傳輸和多傳感器信息采集、控制處理問題。
采用雙CAN 總線通信技術,通過將傳感器信息采集及控制傳輸總線與數字語音傳輸總線在物理結構上分開架設,而核心處理中又合為一體的網絡構建方法,使得雙CAN 總線傳輸網絡的通信更加安全可靠。在雙CAN 總線傳輸網絡沿線開發智能感知傳輸平臺,該平臺集數據檢測傳輸、語音播報、語音呼叫、綜合保護、網絡連接等功能為一體,同CAN 總線監控系統協調工作,可以更快速、可靠地實現整個系統的綜合自動化控制。
系統CAN 總線的數據鏈路層和物理層直接繼承標準的CAN通訊技術,但由于要滿足超長距離的通訊要求、隨機數據通訊的可靠性要求,使得系統無法直接使用CANopen、DeviceNet、CANaerospace 等典型的CAN 應用協議。因此,本系統中,我們需要進行CAN 通訊協議的開發與設計。主板同CAN 總線上其他設備的CAN 通訊協議設計如下表1 所示。

表2 主控板與電話板、閉鎖板及尾端板通訊協議
系統約定,同一個時間里,CAN 總線上的語音信息只能是一個語音設備發出的信息。所以,CAN 總線上的語音系統設計有一個仲裁機制來實現此語音仲裁功能。結合CAN 總線的自診斷防沖撞和自恢復的功能,使的系統的語音系統更加的可靠。
[1]李寧,基于MDK的STM32處理器開發應用,北京航空航天大學出版社,2008.10.
[2]MCU技術支持,STM32F系列ARM內核32位高性能微控制器參考手冊,意法半導體(中國) ,2010,1.