發布日期:2022-07-15 點擊率:43
1、引 言
目前遠程測控系統一般都采用以太網和現場總線混合控制網絡。由于現場總線多種標準共存局面的存在,嚴重地影響了自身追求的開放性、分散性和完全互操作性的特點。隨著Internet技術的迅速發展,以太網和TCP/IP協議已成為世界范圍內的事實標準。基于TCP/IP的以太網可滿足控制系統的各個層次的需求,并具有實現現場設備層和企業管理層的無縫連接、低成本等現場總線技術無法比擬的優點。專家預言,基于以太網傳輸的嵌入式Internet網絡將會成為下一代工業控制網絡的重要選擇,并將帶來工業控制網絡新的變革。
8位普通微處理器(尤其是51系列單片機)因其體積小、可靠性高、控制功能強、性能價格比高、易于推廣應用等顯著優點,廣泛應用于國民經濟的各個領域(國際上自70年代開始,國內自80年代以來),尤其是測控領域。然而以8位普通處理器為核心的嵌入式系統因系統資源、處理速度有限等因素仍排斥在Internet之外,這勢必將會影響基于Internet工業控制網絡的發展。因此解決如何利用現有嵌入式系統接人Internet有很大的研究價值及市場前景。
2、嵌入式Web服務器
為使51單片機接人Internet,就必須在51單片機系統內建立一個可供遠程主機能夠訪問的Web服務器。主要的困難在于,Internet上面的各種通信協議對于存儲器、運算速度等的要求比較高,支持TCP/IP等Internet協議將占用大量系統資源,這就要求我們建立一個嵌入式瘦web服務器。
2.1 硬件設計
筆者在實驗中開發了一個簡潔的硬件平臺,命名為51板,其硬件原理圖如圖1所示。其中51單片機選用的是8位微處理器AT89C58,指令集和MS.5l系列兼容,因其片內帶有32K閃存,因此可不擴展外部程序存儲器,簡化硬件電路。另外擴展了一片外部 的62256,用來處理網絡傳輸的II)包、任務切換和應用程序的數據緩存。利用AT89C58單片機內部有一個全雙工的串行接口,組成RS232串口,作為與其它串口設備通訊用。RTL8019AS是由臺灣Realtek公司生產的高度集成的以太網控制器,它負責實現以太網媒介訪問層(MAC)和物理層(PHY)的所有功能,經隔離后與RJ.45相連。
圖1 51板的硬件原理框圖
2.2 軟件設計
由于51單片機程序空間及內存RAM的限制,這決定了51單片機與電腦在實現Web服務器時存在諸多差別,諸如:在51單片機里不能使用WINDOWS、UNIX、LINUX等多任務操作系統,更不能支持比較完整的TCP/IP協議,存放收到的以太網數據包的RAM是固定的,而不是動態分配的。所以盡管UNIX、LINUX 的源代碼公開,但在其上實現的Web服務器的源代碼并不能夠直接移植到51單片機上。另外采用實時操作系統RTOS,價格昂貴,不利于低成本開發。為此我們為51板開發了整個軟件包,主要包括如下四個方面的內容:
網卡的驅動程序:其中包括RTLS019初始化、讀取和設置 19的MAC地址及RTLS019發送和處理以太網程序等。需要注意的是有關芯片的地址定義及訪問方式要與硬件電路相符。
(1) TCP/IP 協議族的實現
TCP/IP是一個協議族,它由幾百種網絡通信協議組成,TCP協議和IP協議只是此協議族中的兩個成員,但由于其地位重要,因此通常使用TCP/IP來代表整個協議族。嵌入式Internet作為一種TCP/IP協議的嵌入式應用,其功能是特定的,而且一般來說嵌入式系統資源也非常有限,所以它不要求或不可能實現所有的TCP/IP協議,因此有必要對TCP/IP協議精簡。
通過對TCP/II)四層協議和系統需求的分析,我們選擇并實現了以下協議:超文本傳輸協議HTTP(定義了一種請求/應答機制來從Web服務器獲取文檔)、傳輸控制協議TCP(為在服務器和客戶端之間傳遞HTIP請求/應答提供一個可靠的通信信道)、網際協議II)(它使異構網絡之間的通信成為可能)、Internet互聯網控制報文協議ICMP(實現診斷ping,檢查低層協議層)、地址解析協議ARP(用來把高層II)地址與低層物理硬件地址動態捆綁起來)。
(2) Web服務器的實現
Web服務器用來監聽用戶端的服務請求,根據用戶請求的類型提供相應的服務。用戶端使用Web瀏覽器和web服務器進行通信。Web服務器在接收到用戶端的請求后,處理用戶請求并返回需要的數據。
網頁采用HTMI 格式,存貯在程序存儲器中,通過普通的線性查詢技術尋找客戶端請求的文件。傳統服務器只提供固定的網頁,實質上是一個文件服務器。但這樣的服務器不適合應用于測控系統,沒多大實用價值。為使Web服務器變得實用,則要求Web服務器與瀏覽器之間具有交互能力,網頁中含有動態內容,允許在已存在的頁中插入動態數據,我們采取了變量替換的方法。
作者:張海平,熊靜琪