基于STM32數(shù)據(jù)傳輸轉(zhuǎn)換接口器的設計與實現(xiàn)
引言
在當今高速實時數(shù)字信號處理系統(tǒng)中,涉及的數(shù)據(jù)對象趨于多樣化,這些數(shù)據(jù)通常采用不同的電氣接口,具有不同的傳輸速率、傳輸方向?,F(xiàn)代機電一體化控制設備中,如工業(yè)加注機、設備清洗機控制系統(tǒng)基本是PLC與顯示屏加儀表等構成的小型計算機控制系統(tǒng)。但現(xiàn)在工業(yè)已經(jīng)進入了數(shù)字化、智能化時代,進入物聯(lián)網(wǎng)領域,要求信息共享,生產(chǎn)過程信息化、網(wǎng)絡化管理,提高生產(chǎn)效率,降低人員勞動強度。所以要滿足上述需求,保留原有設備及控制系統(tǒng),進行新老交替,則需要在原有控制柜基礎上增加數(shù)據(jù)交換接口模塊,如圖1所示?;诖?,我們以數(shù)字信號處理器STM32為核心,設計了適于多種標準接口數(shù)據(jù)傳輸接口器,以實現(xiàn)系統(tǒng)的數(shù)據(jù)交互。
圖1具有數(shù)據(jù)傳輸交換接口器的控制系統(tǒng)框架
1、接口器原理
該接口器以STM32F微控制器為核心,配一RS-232電平轉(zhuǎn)換芯片,RS-485轉(zhuǎn)換芯片,以太網(wǎng)控制芯片,EP-PROM存儲芯片、SD卡以及時鐘控制芯片來實現(xiàn)各種數(shù)據(jù)的轉(zhuǎn)換以及存儲。
系統(tǒng)主要分了5個部分:電源管理模塊,實時時鐘模塊,大批量數(shù)據(jù)存儲模塊,標準數(shù)據(jù)轉(zhuǎn)換接口模塊和輸入輸出模塊,如圖2所示。
圖2數(shù)據(jù)交換接口器原理框架
2、硬件設計
2.1、接口器控制核心
該接口器核心是ST系列的工業(yè)級單片機芯片STM32F107VCT6。該芯片是ARMCortex-M3內(nèi)核的32位微控制器,具有極強的抗干擾能力,寬電壓2-3.5V使用范圍,硬件集成了乘除算法,便于進行復雜的浮點運算,該芯片的升級版具有DSP功能,運算能力強,速度快;可嵌入操作系統(tǒng),其運算能力較工業(yè)控制機強的多??刂破魍鈬娐愤x用2個外部晶體諧振器,頻率分別是25MHz和32.768kHz。一個單獨的25MHz晶體可以為整個系統(tǒng)和所有包括以太網(wǎng)和全速USBOTG的外設提供時鐘。一個單獨32.768kHz的低速外部晶體諧振器為實時時鐘或者其它定時功能提供一個低功耗且精確的時鐘源。用戶可以通過多個分頻器來配置AHB和APB,從而使得系統(tǒng)的各個外設都能獲得合適的時鐘。
2.2、電源管理模塊
由于現(xiàn)在的工業(yè)現(xiàn)場所使用的設備一般都是24V直流供電,該接口器采用了24V直流供電。接口器的控制核心芯片電壓為3.3V,所以為了滿足要求,就必需要進行一系列的電壓轉(zhuǎn)換過程,從而滿足各個功能模塊的供電需求。
該接口器有繼電器輸出,為了防止數(shù)字信號受到模擬信號的干擾,選用LM2596-5.0芯片、DC-DC隔離開關電源模塊19D-05S05R、兩片SPX1117芯片。如圖3所示,該電路輸出兩路3.3V電源,實現(xiàn)模擬地和數(shù)字地的隔離。19D-05S05R隔離模塊防浪涌、防電磁干擾、抑制尖峰電流設計。該電路十分穩(wěn)定可靠,同時加二極管D1實現(xiàn)反向保護。
圖3電源管理模塊框架
2.3、大量數(shù)據(jù)存儲模塊
該接口器擴展1片容量為256K的AT25256的EEP-ROM芯片。該芯片的擦寫周期為100000次,數(shù)據(jù)保存時間大于200年,應用穩(wěn)定可靠。主要應用存放重要數(shù)據(jù)和參數(shù)。該芯片與STM32接口方式采用的是SPI同步串行總線通信方式。為滿足現(xiàn)場頻繁儲存的大量數(shù)據(jù),該接口器設計一個標準的SD卡接口,如圖4所示,最大可擴展到2GB,使用的SD卡是SPI模式通信,從而達到數(shù)據(jù)的快速存儲、實時記錄以及供上位機通過RS232/RS485總線、以太網(wǎng)調(diào)用的目的。
圖4SD卡與STM32接口電路
2.4、實時時鐘模塊
該接口器設計了一個實時時鐘控制器,主要用于實時數(shù)據(jù)記錄時的時間參考,同時也提供一個實時時鐘,該系統(tǒng)采用的時鐘芯片是RX8025。RX8025是愛普生(EP-SON)公司生產(chǎn)的一種采用I2C總線接口的實時時鐘芯片,內(nèi)置高精度可調(diào)整的32.768kHz的水晶振子,工作穩(wěn)定可靠,具有很強的抗干擾能力。同時它的功能非常完善,支持多達6種中斷事件產(chǎn)生中斷,可以啟動2種鬧鈴功能,當芯片振動停止時可以實現(xiàn)自動檢測,可以進行時鐘精度調(diào)整以及電源電壓監(jiān)視功能。另外內(nèi)部振蕩回路是以固定電壓驅(qū)動,因而可獲得受電壓變動影響小且穩(wěn)定的32.768kHz時鐘輸出。如圖5所示。
圖5實時時鐘電路
2.5、標準通訊接口
該接口器的核心功能模塊便是數(shù)據(jù)轉(zhuǎn)換接口,它包括4種接口,分別是標準RS-232接口,RS-485接口,標準RJ-45接口和標準MiniUSB2.0接口。這4種接口可謂是目前市場上各種終端設備使用最多的數(shù)據(jù)接口了。RS-232接口選用MAX3232芯片進行電平匹配,RS-485選用SP3485芯片實現(xiàn)RS485協(xié)議。為實現(xiàn)通訊隔離,該接口電平全部采用高速ADUM1311磁耦隔離進行隔離,該隔離芯片最大傳輸速率達25MBPS。利用STM32F107內(nèi)部集成的MAC控制器[10]通過RMII接口方式和DP83848芯片相連即可,原理如圖6所示。
圖6以太網(wǎng)與STM32接口電路
2.6、輸入輸出接口
接口器提供了四路繼電器輸入和四路光耦隔離輸出,為了配合新增輔助設備動作,實現(xiàn)過程聯(lián)動控制。輸入電路采用光電隔離芯片TLP181,增加滯回電路、反向穩(wěn)壓管防抖動等電路;輸出采用ULN2003接+24V繼電器,電路增加電容及反向二極管防抖動和電流沖擊。該I/O的電路設計參考了世界品牌的PLC的I/O電路,可靠程度很高。
3、軟件設計
該軟件設計沒有采用嵌入式操作系統(tǒng)的移植,而采用單片機類C語言編程,因為它具有簡潔緊湊、靈活方便,容易掌握,用戶應用廣泛,生成目標代碼質(zhì)量高和適用范圍大可移植性強等特點,故可編寫高可靠的功能函數(shù)。
4、測試結果
4.1、RS-232以及RS-485軟件仿真及測試
測試程序主要實現(xiàn)數(shù)據(jù)在2個串口之間的相互傳輸?,F(xiàn)在很多機電控制柜上的老式PLC不具備大批量數(shù)據(jù)的存儲能力,因此無法實現(xiàn)數(shù)據(jù)的查詢。利用接口器可以作一個過渡,把大量數(shù)據(jù)存儲到處理器上,通過雙串口功能來解決這一難題。該測試的硬件連接如圖7所示,使用2個串口調(diào)試助手仿真軟件來接收不同串口發(fā)送的數(shù)據(jù),模擬軟件的仿真結果如圖8、圖9所示。
圖7 RS-232/485仿真及測試
測試的時候,利用串口1模擬數(shù)據(jù)接收端,串口2模擬數(shù)據(jù)發(fā)送端,當串口1接收到數(shù)據(jù)時,把接收到的數(shù)據(jù)原封不動地通過串口2發(fā)送出去。經(jīng)過長時間的測試結果分析可知,2個串口無論是哪個作為接收端或者發(fā)送端都能正確無誤的接收和發(fā)送數(shù)據(jù),數(shù)據(jù)無丟失。以此可以證明該處理器通過RS232/485輸出數(shù)據(jù)很可靠,另外該程序還完成了RS-232轉(zhuǎn)RS-485的功能,通過RS-485接口接收工業(yè)現(xiàn)場采集到的數(shù)據(jù),然后再通過串口發(fā)送給計算機進行數(shù)據(jù)存儲及分析,實現(xiàn)遠程監(jiān)控。該RS-485接口實現(xiàn)了64臺設備組網(wǎng)控制的驗證。
4.2、以太網(wǎng)程序的仿真及測試
該接口器使用的是STM32F微控制器和DP83848芯片來實現(xiàn)以太網(wǎng)的控制。該控制器內(nèi)部集成了MAC控制模塊,該模塊符合IEEE802.3協(xié)議。并且ST公司提供了MAC相關的一些驅(qū)動程序,這就為我們的開發(fā)提供了很大的方便。本程序使用了一個開源的TCP/IP協(xié)議棧,該協(xié)議棧為我們提供了非常豐富的接口函數(shù),移植完成以后我們可以直接使用這些接口函數(shù)來進行編程。據(jù)此編寫了該通訊的功能軟件函數(shù),實現(xiàn)UDP協(xié)議傳輸和TCP協(xié)議傳輸。測試硬件連接圖如圖10所示,計算機和模塊同時連接到同一個路由器上。計算機設定一個固定IP地址,接口器網(wǎng)絡功能模塊也設定了一個固定的IP地址,把程序下載到模塊以后上電運行,網(wǎng)絡模塊就可以和計算機進行通信了。利用以太網(wǎng)調(diào)試助手來實現(xiàn)對該功能程序進行調(diào)試,UDP通信結果如圖11所示,TCP通信結果如圖12所示。數(shù)據(jù)在反復通訊顯示,長時間的烤機證明,網(wǎng)絡通訊效果也很好。
圖10以太網(wǎng)通訊仿真及測試
5、結束語
本文針對工業(yè)現(xiàn)場的小控制柜設計的數(shù)據(jù)傳輸轉(zhuǎn)換接口器,通過該接口可實現(xiàn)條形碼的識別、數(shù)據(jù)實時存儲、數(shù)據(jù)無線傳輸?shù)裙δ?,可將原控制系統(tǒng)功能擴大。微控制器STM32F107VCT6是非常可靠的工業(yè)級芯片,配以可靠的功能芯片可構成十分可靠的接口器。該數(shù)據(jù)傳輸轉(zhuǎn)換接口器可滿足一般工業(yè)控制系統(tǒng)數(shù)據(jù)傳輸要求,現(xiàn)已初步在實際得到應用。