亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        基于WEB的生產(chǎn)實時監(jiān)控系統(tǒng)的研究與設(shè)計

        2013-07-11 07:43:14孫栓柱周春蕾王其祥
        制造業(yè)自動化 2013年20期
        關(guān)鍵詞:數(shù)據(jù)表頁面客戶端

        孫栓柱,孫 彬,周春蕾,王其祥

        (江蘇方天電力技術(shù)有限公司,南京 211102)

        傳統(tǒng)的生產(chǎn)實時監(jiān)控系統(tǒng)一般采用C/S(Client/Server,客戶端/服務(wù)器)結(jié)構(gòu)。這種結(jié)構(gòu)過于依賴客戶機(jī)的軟件配置,系統(tǒng)的開發(fā)成本和維護(hù)成本較高,同其他信息系統(tǒng)交互性差。同時由于客戶端直接訪問數(shù)據(jù)庫,導(dǎo)致數(shù)據(jù)庫安全級別降低,存在一定的安全風(fēng)險。C/S結(jié)構(gòu)通常只限于小型和相對封閉的企業(yè)局域網(wǎng)。

        隨著互聯(lián)網(wǎng)技術(shù)和WEB技術(shù)的飛速發(fā)展和廣泛應(yīng)用,許多用于監(jiān)控軟件開發(fā)的組態(tài)軟件也開始提供WEB功能。目前大部分組態(tài)軟件均采用ActiveX+JSP技術(shù)實現(xiàn)WEB發(fā)布,為了運(yùn)行ActiveX需要降低瀏覽器安全級別,會對客戶端造成安全威脅。同時,由于采用了JSP技術(shù),在實時監(jiān)控過程中瀏覽器和服務(wù)器之間頻繁傳輸整個監(jiān)控頁面,形成了大量網(wǎng)絡(luò)流量,嚴(yán)重影響實時數(shù)據(jù)的發(fā)布。

        針對以上問題,本文提出了一種基于B/S(Browser/Server,瀏覽器/服務(wù)器)架構(gòu)的生產(chǎn)實時監(jiān)控系統(tǒng)的設(shè)計方案。該方案以開源的關(guān)系型數(shù)據(jù)庫MySQL為數(shù)據(jù)庫管理平臺,同時結(jié)合Flex、EXT、Ajax等富客戶端技術(shù),在瀏覽器中以實時交互方式對生產(chǎn)現(xiàn)場進(jìn)行遠(yuǎn)程監(jiān)控和WEB數(shù)據(jù)發(fā)布。目前在WEB應(yīng)用中廣為流行的富客戶端技術(shù),支持頁面中各圖表組件以并行請求、異步響應(yīng)、動態(tài)更新的方式,無須重新加載整個頁面即可實現(xiàn)按需請求數(shù)據(jù)和局部頁面更新,從而達(dá)到降低網(wǎng)絡(luò)數(shù)據(jù)流量、提高頁面數(shù)據(jù)處理效率的目的,為實現(xiàn)頁面實時數(shù)據(jù)刷新提供了解決方案。在系統(tǒng)實現(xiàn)過程中,以基于J2EE規(guī)范的WebLogic為WEB應(yīng)用服務(wù)框架,用于開發(fā)、集成、部署和管理分布式WEB應(yīng)用和數(shù)據(jù)庫應(yīng)用。

        1 系統(tǒng)應(yīng)用架構(gòu)

        在生產(chǎn)過程現(xiàn)場數(shù)據(jù)量不大、工業(yè)控制計算機(jī)配置較高的情況下,可以將現(xiàn)場的工業(yè)控制計算機(jī)與WEB服務(wù)器、數(shù)據(jù)庫服務(wù)器和通訊服務(wù)器合為一體,監(jiān)測數(shù)據(jù)的采集和控制指令的下達(dá)頻率為1次/秒。典型的系統(tǒng)應(yīng)用架構(gòu)如圖1所示。

        圖1 典型應(yīng)用架構(gòu)

        數(shù)據(jù)采集和控制裝置包括DCS、PLC或者板卡等設(shè)備,通過電纜與現(xiàn)場設(shè)備連接,實時采集生產(chǎn)過程溫度、壓力、流量和濃度等數(shù)據(jù),再通過工業(yè)以太網(wǎng)絡(luò)、RS485和RS232等通訊鏈路上傳至工業(yè)控制計算機(jī)的監(jiān)控系統(tǒng)。監(jiān)控系統(tǒng)接收傳輸上來的生產(chǎn)實時數(shù)據(jù),對其進(jìn)行存儲和計算,并利用實時監(jiān)控圖、曲線和報表等方式進(jìn)行數(shù)據(jù)發(fā)布。運(yùn)行人員通過瀏覽器可以直接訪問生產(chǎn)過程現(xiàn)場數(shù)據(jù)。

        如果運(yùn)行人員需要對現(xiàn)場設(shè)備進(jìn)行操作,可以在工藝監(jiān)控頁面中直接發(fā)出控制命令,通過監(jiān)控服務(wù)器將指令下達(dá)給數(shù)據(jù)采集和控制裝置,實現(xiàn)遠(yuǎn)程控制。

        2 系統(tǒng)邏輯架構(gòu)

        系統(tǒng)通過數(shù)據(jù)采集和控制層完成數(shù)據(jù)采集、轉(zhuǎn)換、傳輸和現(xiàn)場設(shè)備操作;數(shù)據(jù)存儲層實現(xiàn)實時數(shù)據(jù)和統(tǒng)計數(shù)據(jù)的存儲管理,WEB應(yīng)用層則實現(xiàn)WEB數(shù)據(jù)發(fā)布。系統(tǒng)總體架構(gòu)如圖2所示。

        圖2 系統(tǒng)邏輯架構(gòu)

        2.1 數(shù)據(jù)采集和控制層

        數(shù)據(jù)采集和控制層從現(xiàn)場設(shè)備采集運(yùn)行數(shù)據(jù),經(jīng)過數(shù)據(jù)轉(zhuǎn)換及格式化后,將其傳輸?shù)綌?shù)據(jù)存儲層。同時,接收來自數(shù)據(jù)存儲層的遠(yuǎn)程控制指令,對現(xiàn)場設(shè)備進(jìn)行操作。

        2.2 數(shù)據(jù)存儲層

        數(shù)據(jù)存儲層通過采集數(shù)據(jù)接收、控制指令下達(dá)程序與數(shù)據(jù)采集和控制層交互:一方面,獲取監(jiān)測數(shù)據(jù),對其進(jìn)行實時緩存;另一方面,接收來自客戶端瀏覽器的控制指令,將其下達(dá)給數(shù)據(jù)采集和控制層。這種方式避免了數(shù)據(jù)采集和控制層直接訪問數(shù)據(jù)庫,提高了數(shù)據(jù)庫的安全性和穩(wěn)定性。

        實時數(shù)據(jù)庫實現(xiàn)采集數(shù)據(jù)在線實時存儲和歷史數(shù)據(jù)存儲管理;操作記錄數(shù)據(jù)庫存儲用戶遠(yuǎn)程操作日志;統(tǒng)計數(shù)據(jù)庫存實現(xiàn)統(tǒng)計數(shù)據(jù)存儲管理。

        系統(tǒng)以MySQL為數(shù)據(jù)庫管理器。MySQL具有大容量(可以在一張數(shù)據(jù)表中保存超過5千萬條記錄)、運(yùn)行速度快和操作簡單的特點(diǎn)[1],可以很好得滿足秒級數(shù)據(jù)存儲的性能要求。

        系統(tǒng)采用Ibatis和JDBC相結(jié)合的方式,提供對數(shù)據(jù)的持久化支持。Ibatis支持系統(tǒng)大部分?jǐn)?shù)據(jù)操作功能,而對系統(tǒng)中諸如實時數(shù)據(jù)寫入和查詢等對數(shù)據(jù)讀取效率要求較高的功能,則通過具有很高執(zhí)行效率的JDBC完成。

        2.3 WEB應(yīng)用層

        WEB應(yīng)用層采用Struts2技術(shù)框架,利用Flex、EXT和Ajax等技術(shù),實現(xiàn)數(shù)據(jù)列表、工藝圖、趨勢圖和統(tǒng)計報表等富客戶端表現(xiàn)方式,為用戶提供豐富的WEB數(shù)據(jù)發(fā)布功能。

        1)工藝監(jiān)控。對現(xiàn)場生產(chǎn)設(shè)備的運(yùn)行情況、及生產(chǎn)過程的溫度、壓力和流量等進(jìn)行遠(yuǎn)程監(jiān)控,實時反映監(jiān)控對象的總體運(yùn)行性能;同時通過輸入指定值或執(zhí)行操作命令的方式對現(xiàn)場設(shè)備進(jìn)行操作,實現(xiàn)遠(yuǎn)程控制。

        2)實時和歷史趨勢。以實時滾動的方式動態(tài)展示測點(diǎn)最近1小時的數(shù)據(jù)變換趨勢,并提供任意時段的歷史趨勢分析。

        3)統(tǒng)計分析。提供日、月、年等時間粒度的監(jiān)測臺帳和生產(chǎn)報表等固定格式報表的查詢功能和統(tǒng)計數(shù)據(jù)趨勢圖等分析功能。

        4)系統(tǒng)管理。測點(diǎn)維護(hù)功能,設(shè)置測點(diǎn)的標(biāo)簽、單位、量程及報警上下限等屬性;權(quán)限設(shè)置功能,設(shè)置用戶操作權(quán)限和業(yè)務(wù)數(shù)據(jù)查詢范圍。

        3 關(guān)鍵技術(shù)研究

        3.1 實時數(shù)據(jù)存儲

        實時數(shù)據(jù)常用的存儲方式有兩種:數(shù)據(jù)文件和數(shù)據(jù)庫。文件訪問的并發(fā)性較差,不能很好地支持秒級數(shù)據(jù)寫入,且因其缺乏完善的數(shù)據(jù)索引機(jī)制,無法實現(xiàn)對實時和歷史數(shù)據(jù)的快速批量查詢。因此,系統(tǒng)選用數(shù)據(jù)庫作為實時數(shù)據(jù)存儲方式。

        在實時監(jiān)控系統(tǒng)中,數(shù)據(jù)存儲結(jié)構(gòu)通常采用以測點(diǎn)為列、時間戳為記錄標(biāo)識(索引)的數(shù)據(jù)存儲結(jié)構(gòu)。一個監(jiān)控系統(tǒng)采集測點(diǎn)數(shù)一般不超過1000個,實時數(shù)據(jù)表的存儲構(gòu)如圖3所示。圖中列t表示時間戳,P1、P2、…、P1000表示第1到1000個測點(diǎn)的實時數(shù)據(jù)列。

        圖3 實時數(shù)據(jù)表結(jié)構(gòu)

        按照上述存儲結(jié)構(gòu),1年的數(shù)據(jù)記錄將高達(dá)3200萬條,這將嚴(yán)重影響實時數(shù)據(jù)存儲和查詢的效率。因此,系統(tǒng)將數(shù)據(jù)表按月拆分,月數(shù)據(jù)表命名規(guī)則為RT_yyyy_m,其中yyyy表示年份,m表示月份,如:RT_2013_1為2013年1月的數(shù)據(jù)表,RT_2013_12為2013年12月的數(shù)據(jù)表,其他情況以此類推。

        對于跨月的歷史數(shù)據(jù)查詢,如:歷史趨勢圖,數(shù)據(jù)來自多個月數(shù)據(jù)表,系統(tǒng)以存儲過程方式提供統(tǒng)一的歷史數(shù)據(jù)查詢服務(wù),將單月數(shù)據(jù)查詢看作多月查詢的特例,封裝了數(shù)據(jù)表的尋址過程。

        3.2 實時數(shù)據(jù)緩存

        考慮到數(shù)據(jù)更新頻率達(dá)到秒級,為了確保實時數(shù)據(jù)能成功寫庫,不出現(xiàn)數(shù)據(jù)丟失現(xiàn)象,創(chuàng)建實時數(shù)據(jù)緩存表,保存來自現(xiàn)場設(shè)備的最新數(shù)據(jù)。每當(dāng)有新的監(jiān)測數(shù)據(jù)到達(dá)時,即自動將上一批實時數(shù)據(jù)復(fù)制到當(dāng)月數(shù)據(jù)表中,然后用最新到達(dá)的監(jiān)測數(shù)據(jù)覆蓋原來的數(shù)據(jù),完成實時數(shù)據(jù)的動態(tài)更新和遷移。

        實時數(shù)據(jù)緩存表中通常只有1條記錄,因此系統(tǒng)中實時數(shù)據(jù)都直接取自實時數(shù)據(jù)緩存表,而無需從存有近270萬條記錄的月數(shù)據(jù)表中檢索1條實時數(shù)據(jù),有效地縮短了工藝監(jiān)控圖、實時趨勢圖等WEB組件的實時數(shù)據(jù)檢索時間。

        3.3 秒級數(shù)據(jù)刷新

        為實時展現(xiàn)現(xiàn)場采集數(shù)據(jù)和控制現(xiàn)場設(shè)備,工藝監(jiān)控圖采用秒級別數(shù)據(jù)刷新設(shè)計。為實現(xiàn)此目標(biāo),系統(tǒng)采用Flex圖表組件進(jìn)行圖形和數(shù)據(jù)展示,工藝設(shè)備使用圖像標(biāo)簽img,監(jiān)測數(shù)據(jù)使用文本標(biāo)簽Label;采用Remote Object方式,使用AMF(Action Message Format)協(xié)議與服務(wù)端進(jìn)行數(shù)據(jù)交互,這種方式直接訪問后臺對象,將數(shù)據(jù)序列化為二進(jìn)制格式,從而提高數(shù)據(jù)在網(wǎng)絡(luò)上的傳輸速度,縮短客戶端數(shù)據(jù)處理時間,相比較傳統(tǒng)的XML-over-HTTP方式,這是最高效的通信方式[2]。

        在工藝圖組件初始化過程中, RemoteObject對象調(diào)用send方法讀取XML格式監(jiān)控圖,然后由Flex繪制工藝圖。在其后的實時監(jiān)控過程中,僅刷新實時數(shù)據(jù),不再重新繪制工藝圖。完成工藝圖繪制后,啟動定時器定期進(jìn)行Flex刷新,實現(xiàn)實時數(shù)據(jù)自動更新。實時數(shù)據(jù)刷新過程如下所述。

        1)RemoteObject對象以工藝圖測點(diǎn)編碼集合為參數(shù)發(fā)出實時數(shù)據(jù)查詢請求;

        2)服務(wù)端收到請求后,將測點(diǎn)編碼轉(zhuǎn)換成測點(diǎn)標(biāo)識,從實時數(shù)據(jù)緩存表中讀取實時數(shù)據(jù),然后以實時數(shù)據(jù) (測點(diǎn)編碼、實時數(shù)據(jù))集合的形式返回客戶端;

        3)工藝圖組件收到返回結(jié)果后,調(diào)用updatePointsData方法更新頁面測點(diǎn)數(shù)據(jù):遍歷實時數(shù)據(jù)集合,以測點(diǎn)編碼為元素標(biāo)識id定位數(shù)據(jù)標(biāo)簽,用實時數(shù)據(jù)設(shè)置標(biāo)簽的value屬性,依次為每個測點(diǎn)更新實時數(shù)據(jù)。

        3.4 實時趨勢分析

        系統(tǒng)使用實時趨勢圖組件動態(tài)顯示測點(diǎn)最近1小時的數(shù)據(jù)變化曲線。為了實現(xiàn)趨勢圖組件,系統(tǒng)引入了具有豐富表現(xiàn)力的Flex圖表組件,利用客戶端完成各種顯示效果的渲染,使數(shù)據(jù)的交互更為直觀。此外,圖表中的顏色、圖標(biāo)、符號、圖例、標(biāo)題和提示等也都可以進(jìn)行個性化定制[3]。

        系統(tǒng)在Flex自帶的線型圖組件的基礎(chǔ)上,根據(jù)業(yè)務(wù)需要進(jìn)行擴(kuò)展,開發(fā)了實時趨勢圖組件。該組件僅在初始化過程中進(jìn)行1小時歷史數(shù)據(jù)查詢,其后的數(shù)據(jù)刷新過程僅請求實時數(shù)據(jù),從而使組件能快速更新趨勢曲線。實時趨勢圖組件曲線實時刷新過程如圖4所示。

        3.5 統(tǒng)計報表查詢

        系統(tǒng)的統(tǒng)計分析邏輯采用MySQL數(shù)據(jù)庫存儲過程實現(xiàn)。存儲過程是一組具有特定處理功能的SQL語句集,在創(chuàng)建時進(jìn)行了預(yù)編譯,具有較高的執(zhí)行效率。而且,SQL語句以事務(wù)的形式批量執(zhí)行,可以有效地保證數(shù)據(jù)的一致性和完整性。

        統(tǒng)計數(shù)據(jù)返回客戶端后,一般以WEB報表的形式進(jìn)行發(fā)布。WEB 報表使用HTML的table標(biāo)簽展示數(shù)據(jù)集;以Struts2的iterator標(biāo)簽展示數(shù)據(jù)行,實現(xiàn)數(shù)據(jù)記錄到tr標(biāo)簽的循環(huán)轉(zhuǎn)換,通過設(shè)置iterator標(biāo)簽的value屬性實現(xiàn)數(shù)據(jù)綁定;以Struts2的property標(biāo)簽及其value屬性將記錄行的列綁定到td標(biāo)簽,在單元格內(nèi)展示數(shù)據(jù)。

        圖4 實時趨勢圖組件曲線實時刷新過程

        3.6 數(shù)據(jù)安全控制

        1)登錄密碼加密

        用戶登錄密碼采用MD5算法加密,以密文形式存儲。MD5 是Message-Digest Algorithm 5的縮寫,通過對文本應(yīng)用不可逆的字符串變換算法進(jìn)行加密[4]。

        這種密碼加密和存儲方式,不但可以避免用戶密碼被系統(tǒng)管理人員知道,而且由于MD5算法的不可逆性還在一定程度上增加了密碼的安全性。此外,由于密碼以密文形式在網(wǎng)絡(luò)中傳輸,有效地避免了傳輸過程中的泄密問題。

        2)應(yīng)用層安全控制

        用戶在登錄系統(tǒng)時采用驗證碼機(jī)制,防止程序自動登錄造成的性能安全問題,并使用Session會話實現(xiàn)用戶身份驗證保存。

        系統(tǒng)通過Servlet的過濾器機(jī)制,防止用戶通過直接輸入Url的方式訪問未經(jīng)授權(quán)的功能和數(shù)據(jù)。采用Spring的攔截器技術(shù)進(jìn)行權(quán)限控制,保證業(yè)務(wù)數(shù)據(jù)的安全。

        4 系統(tǒng)應(yīng)用

        以江蘇某電廠的煙氣排放實時監(jiān)控系統(tǒng)為例:系統(tǒng)部署在就地監(jiān)控系統(tǒng)工控機(jī)上,電廠操作人員利用瀏覽器通過廠內(nèi)局域網(wǎng)監(jiān)測現(xiàn)場煙氣分析系統(tǒng)數(shù)據(jù)和對系統(tǒng)進(jìn)行遠(yuǎn)程維護(hù)。

        圖5是該廠#4機(jī)脫硫后煙氣排放監(jiān)控系統(tǒng)工藝監(jiān)控頁面。監(jiān)測參數(shù)包括:煙囪進(jìn)口SO2、NOX、煙塵濃度、O2、流速等參數(shù);需遠(yuǎn)程控制的包括標(biāo)定相關(guān)閥門等設(shè)備。頁面右側(cè)是實時趨勢圖,通過單擊工藝圖中的測點(diǎn)標(biāo)簽實現(xiàn)測點(diǎn)選擇。

        圖5 凈煙氣工藝監(jiān)控頁面

        5 結(jié)束語

        采用J2EE、WebLogic、MySQL集成配置方案、結(jié)合Struts2框架和Ajax、Flex等技術(shù),設(shè)計開發(fā)的基于WEB的生產(chǎn)實時監(jiān)控系統(tǒng),實現(xiàn)了生產(chǎn)過程的遠(yuǎn)程監(jiān)控、秒級數(shù)據(jù)在線存儲和統(tǒng)計分析,目前已經(jīng)在多個工業(yè)控制現(xiàn)場得到了應(yīng)用,運(yùn)行穩(wěn)定、可靠。利用瀏覽器模式的遠(yuǎn)程監(jiān)控方式方便了運(yùn)行人員的操作,促進(jìn)了企業(yè)內(nèi)部生產(chǎn)過程信息的共享,同時也大大減輕了系統(tǒng)維護(hù)人員的工作量。

        [1] 吳津津,田睿,李云,劉昊.PHP與MySQL權(quán)威指南[M].北京:機(jī)械工業(yè)出版社,2011.

        [2] 胡毓勵.基于Flex的企業(yè)協(xié)作平臺及其用戶使用挖掘的設(shè)計與實現(xiàn)[D].杭州:浙江大學(xué)計算機(jī)科學(xué)與技術(shù)學(xué)院,2010.

        [3] Adobe Help Resource Center.Flex 3 Developer's Guide[OL].http://livedocs.adobe.com/flex/3/html/help.html?content=Part2_DevApps_1.html.

        [4] 張裔智,趙毅,湯小斌.MD5算法研究[J].計算機(jī)科學(xué),2008,35(7):295-297.

        猜你喜歡
        數(shù)據(jù)表頁面客戶端
        大狗熊在睡覺
        刷新生活的頁面
        湖北省新冠肺炎疫情數(shù)據(jù)表
        黨員生活(2020年2期)2020-04-17 09:56:30
        基于列控工程數(shù)據(jù)表建立線路拓?fù)潢P(guān)系的研究
        縣級臺在突發(fā)事件報道中如何應(yīng)用手機(jī)客戶端
        傳媒評論(2018年4期)2018-06-27 08:20:24
        孵化垂直頻道:新聞客戶端新策略
        傳媒評論(2018年4期)2018-06-27 08:20:16
        基于Vanconnect的智能家居瘦客戶端的設(shè)計與實現(xiàn)
        電子測試(2018年10期)2018-06-26 05:53:34
        圖表
        基于VSL的動態(tài)數(shù)據(jù)表應(yīng)用研究
        河南科技(2014年24期)2014-02-27 14:19:25
        客戶端空間數(shù)據(jù)緩存策略
        日本一区二区三区熟女俱乐部 | 在线观看亚洲av每日更新影片| 日韩一区二区三区熟女| 午夜精品久久久久久久99老熟妇 | 蜜桃一区二区免费视频观看 | 亚洲av激情一区二区| 亚洲乱亚洲乱妇无码麻豆| 日本乱偷人妻中文字幕在线| 色婷婷五月综合亚洲小说| 粉嫩高中生无码视频在线观看| 亚洲av乱码一区二区三区观影| 综合久久精品亚洲天堂| 国产电影无码午夜在线播放| 日本精品αv中文字幕| 亚洲男女免费视频| 国产性感主播一区二区| 久久天天躁狠狠躁夜夜av浪潮| 看全色黄大色大片免费久久| 日本韩国一区二区三区| 白嫩少妇在线喷水18禁| 美女扒开大腿让男人桶| 性大片免费视频观看| 吃下面吃胸在线看无码| 成人大片免费在线观看视频| 日韩精品极品视频在线观看免费 | 无码人妻久久一区二区三区蜜桃| 无码少妇一区二区性色av| 中文字幕无码不卡免费视频| 久久久精品2019免费观看| 最新国产女主播在线观看| 久久久久人妻一区二区三区| 亚洲av无码成人黄网站在线观看| 欧美h久免费女| 伊人久久大香线蕉av色婷婷色| 少妇被粗大的猛进出69影院| 十八岁以下禁止观看黄下载链接 | 文字幕精品一区二区三区老狼| 亚洲男人综合久久综合天堂| 天堂网在线最新版www| 国产一级毛片AV不卡尤物| 日本熟妇免费一区二区三区|