專業的流量儀表資料網

在線編程技術在CAN現場設備中的應用2004年9月(1)

摘要  在線編程(in application programming)是通過微機系統上的I/O口對系統進行編程的方法,這種方法給工業儀器儀表中傳感器修正系數的更換或控制軟件的升級帶來了方便,特別是對具備遠程下載能力的系統,其修正系數的更換或是控制程序的升級可以通過通信網絡來實現。本文所介紹的是如何在通用單片機為處理器的工業儀器儀表中實現在線編程的方法。

關鍵詞   在線編程    微處理器   智能儀器

0 引言

   現代工業現場控制和生產自動化領域中的傳感器、智能儀器儀表和執行機構大都通過總線與控制器構成自動化控制系統。傳感器、智能儀器儀表和執行機構通常分布在很廣的范圍內,它們與控制器之間需要一種可靠性高、適合于工業現場環境使用的通信系統,這就是現場總線。在現場總線的基礎上開發具有在線編程(in  application programming)功能的CAN現場設備可以更高速地實現現場地組態、調試和維護。

1 CAN 總線技術和在線編程技術

  CAN(controller  area  network)是一種具有ISO標準的先進串行通信協議,最初是由德國Bosch公司為解決現代汽車中眾多的測試儀器和控制器之間的數據交換而開發的一種串行通信總線,1993年成為國際標準(ISO11898:道路車輛的高速控制器局域網數字信息交換標準)。由于它的技術性能優異,被認為是最有前途的現場總線之一。CAN總線的主要特點是[1]

   ①最大傳輸速率1Mbit/s(40m),最大傳輸距離10km(5kbit/s)。傳輸介質可以是雙絞線、同軸電纜和光纖。

②采用點對點、一點對多點、全局廣播等幾種方式發送數據,可實現全分布多機系統,且無主從機之分。

③對信息塊進行編碼,采用非破壞性總線優先級仲裁技術,仲裁的依據是信息塊的標識符。

④支持4類報文幀:數據幀、遠程幀、超載幀和出錯幀。

⑤采用面向控制的短幀結構,數據段的長度為0~8字節,從而使得每幀數據出錯率低且實時性好。

⑥運行CRC(cyclic  redundancy  check)校驗技術,具有較強的錯誤控制和重發的功能,出錯率極低等等。

在線編程(IAP)技術是一種通過微處理系統上的I/O口對微處理系統的用戶程序進行重新編制的技術。這種技術不需打開儀器儀表的機殼和拔下內部的CPU或程序存儲器便能完成儀器儀表的傳感器修正系數的更換或是監控軟件的升級。這種技術應用于現場總線系統中無疑能使工業自動化系統的組態、調試和維護更加快速。

2 CAN總線系統的組成

   控制系統的網絡結構一般分為三個層次:第一層網絡為中央控制層;第二層網絡為子系統管理層;第三層網絡為現場設備控制層。

   CAN總線技術主要應用在第三層上,它作為控制局域網實現分布式的智能化控制。對現場設備的監控和管理以及第二層網絡與第三層網絡之間的通信通常是由工業控制機來實現的(圖1)

               圖1 現場總線控制系統德網絡結構圖

   CAN 現場設備處于網絡結構的底層,接受工控機的管理并實現對子過程和對象的監控。

3 具有在線編程技術的CAN現場設備的電路設計

   從圖1可以看出,CAN現場設備根據不同的控制過程和對象其監控部分的功能是不同的,但它們具有一個共性;滿足CAN的技術規范。以CAN技術規范為基礎加入CAN現場設備的在線編程功能也可以視為一個共性。由于這里沒有涉及具體的控制過程和對象,所以將討論的重點放在具有在線編程技術的CAN 現場設備的共性上。

   在具體設計中,與CAN 技術規范相關的電路采用了Phips公司的高性能CAN總線收發器82C250。CAN總線控制器采用的是Phips公司的P87C592。P87C592具有與51系列兼容的微處理器,同時也具備了CAN總線控制的功能,它的使用可以簡化電路的設計。

                                圖2 相關電路圖

采用了P87C592的具有在線編程功能的CAN現場設備相關電路如圖2所示。電路中具備了CAN總線控制器功能的CPU的引腳P3.5、WR、RD和PSEN通過74HC00、74HC08和74HC32組成了對程序存儲器工作狀態進行控制的電路,程序存儲器采用了SST公司的Flash存儲器39SF512。39SF512具有單一5V編程電壓的特點,其容量為64k  Byte,它的A0-A15 和D0-D7腳按照單片機系統的慣例與P87C592的 P0口和P2口相連接。

以這種方式設計的具有在線編程功能的系統工作于兩種狀態:第一種狀態是引導、下載和在線編程工作狀態;第二種狀態是用戶程序工作狀態。這兩種狀態的區分是通過CPU對其引腳P35的置位來完成的。 P35為高電平時,系統工作于引導、下載和在線編程工作狀態,這和CPU在復位后P35的狀態相吻合。這時的單片機系統將Flash存儲器39SF512作為數據存儲器來操作,在執行了MOVX@DPTR,A指令后,P87C592的WR信號可以通過門電路作用于存儲器39SF512的寫控制引腳,完成對存儲器39SF512的在線編程,P35為低電平時,系統工作于用戶程序工作狀態,P87C592在完成了對系統的初始化后,執行CLR P35和LJMP 4000H兩條指令,便將系統引導到用戶程序的工作狀態。

4 在線編程功能的軟件編程

   在CAN現場設備中實現在線編程功能時,對程序在存儲器中的安排有著嚴重的要求:P87C592單片機內部程序存儲器放置的是引導程序,其中包括最基本的通信程序和寫Flash的程序,它的任務就是完成通過系統上的I/O口獲得需要更新換代的程序數據,并將其寫入Flash。這部分程序的長度不能超過16k  Byte。39SF512存儲器中放置的是用戶程序(即在需要時可以改寫的程序,共64-16=48kByte)。具有在線編程功能的CAN 現場設備中的系統程序在編時寫要分成兩個主體:第一個是下載、Flash編程和引導程序主體;第二個是用戶程序主體。它們的子程序不能互相調用,這樣用戶程序在升級時就不用考慮兩個程序主體之間的關系了。在通用單片機系統上實現在線編程功能的程序框圖如圖3所示。

          圖3  在通用單片機上實現在線編程功能的程序程序框圖


 


無錫求信流量儀表有限公司
技術論文資料平臺提供
以上資料摘錄自《自動化儀表》雜志
電磁流量計 渦街流量計 流量計 蒸汽流量計 渦輪流量計 污水流量計
提醒:轉貼請注明出處

猫 咪app 成 人 抖 音