工業(yè)以太網和CAN總線在污水處理系統中的應用
3 CAN總線的實現
3.1 CAN總線硬件組成
本系統采用的是微處理器P89C668,外加CAN控制器SJA1000、CAN 收發(fā)器TJA1050 以及以太網通信控制器RTL8019AS,組成一個通信協議轉換網關模塊,功能模塊如圖3所示。
圖3 功能模塊圖
P89C668是本系統的主要控制部分,實現對網絡芯片以及CAN器件的控制,并進行兩者之間的協議轉換。CAN控制器SJA1000應用BasicCAN工作模式,這種模式支持具有很多新特性的CAN2.0B協議,支持錯誤分析功能,對CAN收發(fā)器進行控制,為微控制器提供了控制CAN總線的簡單接口。收發(fā)器是CAN協議控制器和物理總線的接口,分別為總線和CAN控制器提供不同的傳輸和接收能力。在微控制器對CAN控制器進行相應配置后,收發(fā)器自動完成相應的CAN總線操作。CAN收發(fā)器和CAN控制器是通過光耦實現總線上各CAN節(jié)點間的光電隔離,而且光耦電路的兩個電源VCC和VDD必須采用小功率電源隔離模塊進行電源的完全隔離。以太網通信控制器,給微控制器提供控制以太網的簡單接口,使微控制器只需要對其進行相應讀寫即可完成對以太網的操作。隔離濾波器用于提高網絡通信的抗干擾能力。
網關主要完成CAN總線到以太網的協議轉換。它由CAN控制器協議轉換模塊和以太網控制器協議轉換模塊兩部分組成,網關硬件中微處理器起核心作用。CAN控制器協議轉換模塊硬件電路由三部分組成:微處理器、CAN通信控制器、CAN總線收發(fā)器。以太網控制器協議轉換模塊主要由微處理器、以太網通信控制器和隔離濾波器組成。以太網通信控制器RTL8019AS是一種高集成度的全雙工10MbPS以太網控制芯片,實現了基于ETHERNET協議的MAC層的全部功能,完成數據包的接收和發(fā)送功能。
3.2 CAN軟件實現
在PCC中進行CAN I/O操作,在硬件配置中選擇CAN通信接口,在軟件配置表中配置CAN I/O屬性。定義從站的站號應該與實際連接的硬件站號設置一致。利用CAN進行連網數據通信,用CANopen指令對CAN接口進行初始化。用CANopen在初始化程序中初始化CAN控制器。初始化之前,參數enable置1,設定通信速率為Baud rate,定義CAN接口參數。系統將反饋CAN通信接口的標識號US—ident,此標識號將在CAN函數庫中讀寫數據的功能塊上使用。CANwrite功能塊將數據寫在總線上,在循環(huán)任務中調用。這些數據可以通過給定的can—id號往總線上發(fā)送。
PCC的CAN幀最多可用8個字節(jié)的信息進行讀寫。這部分通過調用CAN函數庫來實現,其中包括CANOPEN,CANWRITE,CANREAD等。CANOPEN函數包括完成對CAN總線的初始化。
需要注意的是CAN總線的初始化必須包含在初始化例程INITsP中。CANOPEN(1,BAND—RATE,COB—ANZ,ADR(ERROR—ADR),0,0,US—IDENT,STATUS)其中BAND—RATE=25,即代表波特功率為250K。US—IDENT是調用CAN初始化得到的反饋到PCC的CAN的ID,在CAN總線的讀寫過程都將用到該參數。CAN總線的寫信息通過在優(yōu)先級較高的進程中采用CANWRITE函數,其函數參數定義如下:CANWRITE(ENABLE,US—IDENT,CAN— ID,DATA— ADR,DATA— LNG,STATUS),enable=1,US—idenf為在CANopen()初始化中建立的US—idenf。CAN—id為數據目標CAN模塊有關的CAN數據楨的ID。DATE—ADR為發(fā)送數據模塊的首地址。DATA—LNG為發(fā)送的數據長度。其最大值為8。如果以CAN—ID為幀地址數據被成功發(fā)送則status:0,反之sta.tus=錯誤代碼。
系統的結構框圖如圖4所示。
圖4 CAN總線結構框圖
4 系統軟件實現和上位組態(tài)
4.1 軟件編程
下位PCC的網絡組態(tài)和硬件配置及編程全部在B&R編程工具中完成,它全面支持全集成自動化功能,可將數據管理、通信、編程同時集成在一個環(huán)境中去完成。應用這種便利的方法,在完成對三個站點的網絡組態(tài)和通信連接后,進行編程調試,實現了各個站的控制要求。
貝加萊PCC控制器采用分時多任務操作系統和多樣化的應用軟件的設計,是基于多任務環(huán)境下設計程序,采用大型應用軟件的模塊化設計思想,應用程序的運行周期則與程序長短無關,而是由操作系統的循環(huán)周期決定。其系統軟件使用AutomationStudio編程語言,包括:常規(guī)PLC使用的指令表語言如梯形圖、結構文本、SQF、指令表,而且還支持高級語言如BASIC語言和C語言 ,使開發(fā)人員可以很好的選擇自己熟悉的編程方法。本系統使用高級語言C進行編程,其運算時間快,而且容易實現模塊化編程,可以使控制更加快速和精確,以達到更好的控制目標。
4.2 控制系統上位機設計
上位機軟件采用組態(tài)王貝加萊專用版Kingview for B&R 1.0,除具有組態(tài)王6.53所具備的功能外,還具有以下特點:(1)以驅動的方式支持貝加萊所有的產品;(2)支持冗余服務器、冗余CPU、冗余網絡;(3)支持自動上載PCC中的變量;(4)支持結構體和數組變量類型。
為過程控制和現場監(jiān)控開發(fā)的監(jiān)控系統軟件。在組態(tài)時充分利用其強大的上下位全集成功能,大大節(jié)約了開發(fā)時問并增強了系統的透明訪問度。在利用上位工具組態(tài)王實現主要功能如下,(1)監(jiān)視功能:全面實時顯示各工藝參數值和各設備當前狀態(tài),以及故障報警、報表等。(2)調節(jié)功能:對各調節(jié)閥進行手/自動調節(jié)以及對工藝參數的設定等功能。
主控界面的組態(tài)由于系統設備較多,需要將系統流程及設備操作界面分別呈現在多張畫面內。畫面問的切換使用組態(tài)王內部按鈕的鼠標動作來實現。
5 結束語
該系統針對污水處理自動控制系統,采用工業(yè)以太網和CAN縱向集成的技術,主要介紹了CAN總線的實現,總線與工業(yè)以太網之間的協議轉換。充分利用貝加萊PCC編程靈活,可靠性高與CAN總線充分結合,將以太網進一步延伸到工業(yè)現場級,使控制系統結構具有最大的開放性、互操作性和實時性。在完全達到技術要求的基礎之上,為以后的擴展和升級留下足夠的空間,系統已經應用于蘭州某縣污水處理廠,功能完善、運行穩(wěn)定、自動化程度高,完全滿足其控制要求,各站運行平穩(wěn),各方面性能都得到廠方的好評。
評論