<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>

新聞中心

EEPW首頁(yè) > 嵌入式系統 > 設計應用 > 基于Web的網(wǎng)絡(luò )儲油罐群遠程監控系統研究

基于Web的網(wǎng)絡(luò )儲油罐群遠程監控系統研究

作者: 時(shí)間:2009-06-18 來(lái)源:網(wǎng)絡(luò ) 收藏

3.2 CAN智能I/O的設計
節點(diǎn)是上信息的接收和發(fā)送站,本設計采用由獨立的通信控制芯片與單片機接口構成的智能節點(diǎn)。CAN總線(xiàn)智能節點(diǎn)硬件設計包括:A/D和D/A轉換部分、看門(mén)狗硬件電路、CAN總線(xiàn)通信接口,其主要硬件結構如圖2 所示。
油罐的油位、油溫和油泵的進(jìn)/出口壓力以及油泵的主軸溫度由變送器進(jìn)行測量,其輸出信號經(jīng)過(guò)多路復用、A/D轉換器送入單片機,輸出控制每個(gè)油泵和調節其進(jìn)口和出口壓力的信息由單片機經(jīng)D/A轉換器送達執行機構。本設計中采用ATEM公司的單片機AT89S52(具有下載軟件的功能及輔助接口),SJA1000可以完成CAN的物理層和數據鏈路層的所有協(xié)議功能,它和高速光電隔離電路6N137以及CAN驅動(dòng)器PCA82C250構成了與CAN總線(xiàn)相連的通道[4]。
CAN總線(xiàn)智能節點(diǎn)的軟件設計關(guān)鍵是CAN總線(xiàn)通信接口程序,其主要功能是將采集進(jìn)來(lái)的數據經(jīng)過(guò)處理,通過(guò)定時(shí)中斷發(fā)送到服務(wù)器端,同時(shí)通過(guò)接收中斷接收處理來(lái)自服務(wù)器端的數據查詢(xún)、設置命令和控制命令。
命令碼主要體現在ID標識符上,由于采用的是標準幀格式發(fā)送CAN信息幀,因此,ID標識符為11位。其結構如下:ID0~ID5表示大型儲液罐群罐號,如“000000”為“1”號罐;ID6~ID8表示大型儲液罐群的被控量,如“000~100”分別為液位、溫度、重量、進(jìn)油閥和出油閥;ID9~ID10表示命令字,如“10”為設置命令,“11”為控制命令。
程序主要包括初始化程序、接收處理程序和發(fā)送處理程序。其重點(diǎn)和難點(diǎn)是SJA1000的初始化,包括工作方式的設置、接收濾波的設置、接收屏蔽寄存器(AMR)和接收代碼寄存器(ACR)的設置、波特率參數設置和中斷使能寄存器的設置等。
現場(chǎng)控制模塊數據的收發(fā)是大量的,也是實(shí)時(shí)性需要的,但是在機上的控制通常只是常規的監視和調整,不需要太高的實(shí)時(shí)性,同時(shí)也為了的暢通,上位機與機上的同步數據刷新率不必設的太高,一般可以設置為采樣多個(gè)數據后一次性發(fā)送[5]。

本文引用地址:http://dyxdggzs.com/article/152452.htm

4 系統的中間層設計
中間層是一個(gè)多層結構,主要負責數據讀取、數據轉發(fā)、數據處理、管理及監控等功能,由CAN總線(xiàn)的網(wǎng)關(guān)、數據庫和WEB服務(wù)器組成。
4.1 監控單元的設計
監控單元由含CAN適配卡的工控機(上位機)和后臺數據處理程序組成。上位機通過(guò)CAN總線(xiàn)智能適配卡PCI-5110與CAN總線(xiàn)進(jìn)行通信。本程序采用C++Builder編寫(xiě),有強大的人機交互功能,方便操作人員使用。
數據庫采用Microsoft SQL Server 7.0, 負責存儲從控制系統中采集的數據、向系統發(fā)送的控制數據以及對進(jìn)行各種計算直接產(chǎn)生的中間數據,并對歷史數據進(jìn)行存儲和歸檔,實(shí)現控制程序、罐群基本信息和監控信息等的管理功能。它包括當月數據庫、歷史數據庫、系統參數數據庫和儲罐容積表數據庫。當月數據庫中的數據超過(guò)規定的時(shí)間后就會(huì )自動(dòng)地轉存到歷史數據庫中。在系統運行過(guò)程中,操作員在輸入正確密碼后,可根據需要對各種數據庫進(jìn)行查詢(xún)、刪除、保存或打印等操作。
4.2 服務(wù)器的建立
Snap是C++ Builder 6.0最新的WebApplication開(kāi)發(fā)架構,使用不象Web Service那樣需要熟悉套接字Socket,并且在編寫(xiě)服務(wù)器或客戶(hù)應用程序前也無(wú)須了解應用程序要提供或使用的服務(wù),可進(jìn)行WEB快速應用開(kāi)發(fā)。在開(kāi)發(fā)數據庫應用程序方面有強勁的功能,其ADO數據庫連接控件具有很好地連接各種數據庫的功能。
有以下特征:支持CGI(Common Gateway Interface)Web服務(wù)器應用程序、支持對客戶(hù)請求的多線(xiàn)程處理、提供Web模塊的緩存技術(shù)以便更快地對用戶(hù)消息進(jìn)行響應、支持交叉平臺WebSnap把B/S應用的開(kāi)發(fā)代入了一個(gè)全新的領(lǐng)域,真正做到了零客戶(hù)端配置。



評論


相關(guān)推薦

技術(shù)專(zhuān)區

關(guān)閉
国产精品自在自线亚洲|国产精品无圣光一区二区|国产日产欧洲无码视频|久久久一本精品99久久K精品66|欧美人与动牲交片免费播放
<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>