張銀河,王雪雷,謝海云,董 波
1.天津大學,天津 300000
2.邯鄲卓立精細板材有限公司,河北邯鄲 056000
3.京鼎工程建設有限公司,北京 100000
在當今現(xiàn)場總線中,工業(yè)監(jiān)控系統(tǒng)中普遍采用的是基于RS485 總線的半雙工通訊方式,只能構成主從式結構系統(tǒng),通信方式也只能以主站輪詢的方式進行,系統(tǒng)的實時性、可靠性較差。這種通訊方式信息傳輸速度慢,很難滿足大規(guī)模工業(yè)自動化安全監(jiān)控系統(tǒng)對實時性的要求。針對普通通信協(xié)議的不足,本文提出了采用CAN 總線實現(xiàn)的無主式通訊方式。
系統(tǒng)從功能上分類,可分為:核心PLC 子系統(tǒng)、CAN 總線監(jiān)控子系統(tǒng)、語音仲裁等。PLC 子系統(tǒng)是CAN 總線監(jiān)控系統(tǒng)的上一級控制單位,也是系統(tǒng)的核心控制;語音仲裁是協(xié)助CAN總線監(jiān)控系統(tǒng)實現(xiàn)數(shù)字語音功能的部件。由此可見,CAN 總線監(jiān)控系統(tǒng)是整個系統(tǒng)的核心,也是聯(lián)絡其他各子系統(tǒng)的橋梁。
CAN 總線系統(tǒng)包括ARM 系統(tǒng)主控制板、ARM 系統(tǒng)電話板、ARM 系統(tǒng)閉鎖板、ARM 系統(tǒng)尾端板。系統(tǒng)的網絡結構圖如圖1所示。
圖1 CAN 總線系統(tǒng)的網絡連接示意圖
CAN 總線監(jiān)控系統(tǒng)的所有電路板核心MCU 處理器是STM32F107VCT6,該處理器基于ARM V7 架構的Cortex-M3 內核,主頻72Mhz,內部含有256K 字節(jié)的FLASH 和64K 字節(jié)的SRAM。鏈接與CAN 總線上的各種功能的電路板,通過STM32F107VCT6自帶的CAN 接口芯片,在電路板上設計以CAN 信號隔離器,就能掛接到CAN 總線上。通過這4 中電路板,系統(tǒng)實現(xiàn)工業(yè)現(xiàn)場各種信號的采集和外圍設備的控制。
系統(tǒng)的硬件電路包括AMBE-1000 電路設計、CSP1027-S 電路設計、音頻輸入輸出電路設計、DMA5601 語音芯片電路設計等部分功能電路。
圖2 STM32 系統(tǒng)語音功能設計結構圖
數(shù)字語音系統(tǒng)的工作原理如圖2 所示。在系統(tǒng)中,模擬語音數(shù)據有2 個來源:一個是DMA5601 芯片輸出的模擬語音數(shù)據流,另一個是由外部麥克風直接輸入的模擬語音數(shù)據流。在不同的STM32 電路板上,AMBE-1000 數(shù)字語音系統(tǒng)的模擬語音數(shù)據源不同。STM32 主控板的模擬語音數(shù)據源是DMA5601 芯片提供的,STM32 電話板的模擬語音數(shù)據源是麥克風提供的。
STM32 數(shù)字語音系統(tǒng)的工作原理是:由麥克風或DMA5601芯片提供的模擬語音數(shù)據經過語音采集電路送到CSP1027 進行A/D 轉換得到數(shù)字語音信號;CSP1027 將A/D 轉換后的數(shù)字語音信號傳送給AMBE-1000;AMBE-1000 通過其內部的編碼器將數(shù)字語音信號進行編碼,得到壓縮了的編碼語音數(shù)據,然后將編碼語音數(shù)據傳送給STM32 微控制器;STM32 微控制器將編碼語音數(shù)據經過程序邏輯處理后,得到CAN 協(xié)議的壓縮數(shù)字語音數(shù)據,然后將其通過其內置CAN 控制器傳送到CAN 收發(fā)器;CAN 收發(fā)器將CAN 協(xié)議的數(shù)字語音數(shù)據發(fā)送到CAN 總線上實現(xiàn)模擬語音數(shù)據的遠傳。
當CAN 總線上有了通訊數(shù)據后,CAN 收發(fā)器接收數(shù)據后傳送給STM32 芯片的內置CAN 控制模塊,STM32 芯片CPU 從其CAN 控制器中提取所接收的數(shù)據進行處理;當所接收的數(shù)據為壓縮的數(shù)字語音數(shù)據時,STM32 控制器會將該語音數(shù)據以并口(或串口)的方式傳送給AMBE-1000 語音編碼/譯碼芯片;AMBE-1000 首先進行數(shù)據譯碼得到數(shù)字語音數(shù)據,然后將數(shù)字語音數(shù)據傳送給CSP1027 進行D/A 轉換;CSP1027 將經D/A 轉換得到的模擬語音數(shù)據流傳送給語音運放芯片LM386 進行信號放大;LM386 輸出的放大功率的語音信號通過揚聲器得到聲學的語音。AMBE-1000 同STM32 的接口電路如圖3(B)所示。
CAN 總線可以以較低的成本、較高的實時處理能力,在惡劣的強電磁干擾環(huán)境下可靠地工作。CAN 總線具有較高的效率是因為總線僅僅被那些請求總線、但懸而未決的站利用,這些請求是根據報文在整個系統(tǒng)中的重要性按順序處理的。CAN 控制器工作于多主方式,網絡中的各節(jié)點都可根據總線訪問優(yōu)先權 ,采用無損結構的逐位仲裁的方式競爭向總線發(fā)送數(shù)據。CAN協(xié)議廢除了站地址的編碼,而代之以對通信數(shù)據進行編碼,這可使CAN 總線上不同的節(jié)點同時接收到相同的數(shù)據。
本系統(tǒng)應用CAN 總線技術、音頻信號處理技術、傳感信息智能感知處理技術和多種網絡的網絡接入技術,解決監(jiān)測監(jiān)控系統(tǒng)在10Km 距離的信號傳輸問題、復雜環(huán)境下的語音信號高分貝、清晰傳輸和多傳感器信息采集、控制處理問題。
采用雙CAN 總線通信技術,通過將傳感器信息采集及控制傳輸總線與數(shù)字語音傳輸總線在物理結構上分開架設,而核心處理中又合為一體的網絡構建方法,使得雙CAN 總線傳輸網絡的通信更加安全可靠。在雙CAN 總線傳輸網絡沿線開發(fā)智能感知傳輸平臺,該平臺集數(shù)據檢測傳輸、語音播報、語音呼叫、綜合保護、網絡連接等功能為一體,同CAN 總線監(jiān)控系統(tǒng)協(xié)調工作,可以更快速、可靠地實現(xiàn)整個系統(tǒng)的綜合自動化控制。
系統(tǒng)CAN 總線的數(shù)據鏈路層和物理層直接繼承標準的CAN通訊技術,但由于要滿足超長距離的通訊要求、隨機數(shù)據通訊的可靠性要求,使得系統(tǒng)無法直接使用CANopen、DeviceNet、CANaerospace 等典型的CAN 應用協(xié)議。因此,本系統(tǒng)中,我們需要進行CAN 通訊協(xié)議的開發(fā)與設計。主板同CAN 總線上其他設備的CAN 通訊協(xié)議設計如下表1 所示。
表2 主控板與電話板、閉鎖板及尾端板通訊協(xié)議
系統(tǒng)約定,同一個時間里,CAN 總線上的語音信息只能是一個語音設備發(fā)出的信息。所以,CAN 總線上的語音系統(tǒng)設計有一個仲裁機制來實現(xiàn)此語音仲裁功能。結合CAN 總線的自診斷防沖撞和自恢復的功能,使的系統(tǒng)的語音系統(tǒng)更加的可靠。
[1]李寧,基于MDK的STM32處理器開發(fā)應用,北京航空航天大學出版社,2008.10.
[2]MCU技術支持,STM32F系列ARM內核32位高性能微控制器參考手冊,意法半導體(中國) ,2010,1.