• <tr id="yyy80"></tr>
  • <sup id="yyy80"></sup>
  • <tfoot id="yyy80"><noscript id="yyy80"></noscript></tfoot>
  • 99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看 ?

    CP600核電機組模擬機接口系統(tǒng)選型和通信程序設(shè)計

    2015-10-29 01:18:45文樹林中核運行管理有限公司浙江嘉興314300
    中國科技縱橫 2015年11期
    關(guān)鍵詞:模擬機線程鏈路

    文樹林(中核運行管理有限公司,浙江嘉興 314300)

    CP600核電機組模擬機接口系統(tǒng)選型和通信程序設(shè)計

    文樹林
    (中核運行管理有限公司,浙江嘉興314300)

    接口系統(tǒng)是模擬機仿真服務(wù)器和盤臺設(shè)備之間進行通信的紐帶。接口系統(tǒng)的選擇和通訊程序的設(shè)計關(guān)系到整個模擬機系統(tǒng)的性能。研華ADAM-5000/TCP接口系統(tǒng)和與之對應(yīng)的通訊程序,在中核運行管理有限公司CP600機組模擬機上已經(jīng)得成功應(yīng)用。其接口系統(tǒng)的選型和通信程序的功能、流程、技術(shù)特點等都對今后核電廠模擬機建造具有參考價值。

    接口系統(tǒng)通訊程序數(shù)據(jù)傳輸

    1 概述

    模擬機接口系統(tǒng)是模擬機仿真服務(wù)器和模擬機盤臺設(shè)備之間進行通信的紐帶。其主要功能是將模擬機盤臺設(shè)備的操作信號(比如開關(guān)、按鈕動作、控制器調(diào)節(jié)信號等)及時傳送到模擬機仿真服務(wù)器,同時將經(jīng)過仿真服務(wù)器運算處理后的信息發(fā)送到盤臺設(shè)備進行顯示(比如報警、指示燈的閃爍,指示儀表、記錄儀的顯示等等),即在整個模擬機中起著上通下達的作用。接口系統(tǒng)的選擇和通訊程序的設(shè)計關(guān)系到整個模擬機系統(tǒng)的性能。

    2 背景

    中核運行管理有限公司CP600機組現(xiàn)有兩臺模擬機。因培養(yǎng)操縱員的需要,于2006年決定建第二臺CP600機組的模擬機。第二臺模擬機的建造方案是對第一臺模擬機進行復(fù)制和改進。原1#模擬機接口系統(tǒng)采用的美國RTP公司的EIOBC接口系統(tǒng),由于該接口系統(tǒng)已經(jīng)停產(chǎn),所以需要對接口系統(tǒng)進行重新選擇和設(shè)計。

    3 接口系統(tǒng)選型

    核電站的計算機仿真涉及動力系統(tǒng)、控制系統(tǒng)、各大輔助系統(tǒng)等,與一般計算機控制系統(tǒng)相比,其I/O點多、數(shù)據(jù)通信量特別大,系統(tǒng)仿真涉及靜態(tài)和動態(tài)、正常態(tài)和故障態(tài)全過程。所以能否保證仿真機的實時性與可靠性成為選用何種接口設(shè)備的重要參考依據(jù)。經(jīng)深入調(diào)研、綜合分析及實踐驗證,我們對新的模擬機接口系統(tǒng)有著如下要求:

    響應(yīng)速度快、采集精度高——模擬機在事故工況下需要演繹一些瞬間的物理過程,要求I/O接口系統(tǒng)可獲得大量的動態(tài)信息,所以接口系統(tǒng)采樣速度的快慢與精度的高低是模擬機實時性與逼真度的重要保證。

    結(jié)構(gòu)緊湊、維修方便——由于模擬機主服務(wù)器位于仿真機房,而開關(guān)按鈕和儀表設(shè)備分散在各功能盤,所以出于接線靈活、維修方便等原因考慮,所有的I/O信號必須通過放置于就地控制盤柜的采集板卡采集。所以,新的接口系統(tǒng)采集模塊體積不能過大,以安裝維修方便為原則。

    表1 接口系統(tǒng)設(shè)備名稱和功能

    圖1 共享內(nèi)存區(qū)盤臺信息的存放形式

    設(shè)備造價低、維護成本低——在保證設(shè)備性能的前提下,以設(shè)備造價低為原則。

    當(dāng)時我們通過市場調(diào)查,初步選擇了三家公司的接口系統(tǒng)產(chǎn)品:美國RTP公司EIOBC的升級產(chǎn)品,臺灣研華公司ADAM-5000/ TCP接口系統(tǒng),和亞仿公司的耐博接口系統(tǒng)。模擬機維護人員對這三家產(chǎn)品進行了深入的測試研究和對比,研華ADAM-5000/TCP接口系統(tǒng)有如下優(yōu)勢:

    研華公司是專業(yè)生產(chǎn)接口系統(tǒng)的公司,科技實力雄厚,接口系統(tǒng)廣泛應(yīng)用于各種大型工業(yè)和火電廠的仿真產(chǎn)品上,性能能夠滿足核電廠模擬機的要求。

    研華接口系統(tǒng)采用分布式結(jié)構(gòu),硬件還帶有自診斷功能,使用和維修方便。

    圖2 主程序流程

    價格相對比較實惠,維護成本較低,研華公司在杭州和上海都設(shè)有代理點,購買產(chǎn)品和備品備件比較方便。

    最終我們選擇了研華ADAM-5000/TCP接口系統(tǒng)作為2#模擬機的接口系統(tǒng)。

    國產(chǎn)接口系統(tǒng)在2號模擬機上成功應(yīng)用后,1號模擬機在后來的改造過程中也換成了研華ADAM-5000/TCP接口系統(tǒng)。

    4 接口系統(tǒng)的體系結(jié)構(gòu)

    模擬機接口系統(tǒng)采用研華ADAM-5000/TCP系列產(chǎn)品,接口系統(tǒng)所包含的設(shè)備型號和功能見表1。接口系統(tǒng)詳細的配置圖見圖6,系統(tǒng)共由10個UNO-2668及各自連接的若干個ADAM-5000/ TCP組成。數(shù)據(jù)輸入/輸出模塊安裝在ADAM-5000/TCP底座上,ADAM-5000/TCP通過以太網(wǎng)與UNO-2668進行實時通信,UNO-2668連接到仿真服務(wù)器,構(gòu)成服務(wù)器-UNO2668-ADAM-5000/ TCP的三層網(wǎng)絡(luò)結(jié)構(gòu)(表1)。

    除了硬件的組合之外,還要開發(fā)與之相適應(yīng)的通信軟件,這樣才能使接口系統(tǒng)良好地運行起來。通信軟件的軟件的質(zhì)量和功能直接關(guān)系到規(guī)模如此龐大的ADAM-5000/TCP的系統(tǒng)能否穩(wěn)定運行以及維護是否方便等等。為此,模擬機維護人員對這套接口系統(tǒng)進行了細致深入的研究,在研華技術(shù)工程師的支持下,開發(fā)了用于模擬機的接口通信軟件,該通信軟件實際運行良好。

    5 模擬機接口通信程序設(shè)計

    按照通信程序的工作過程,接口通信的基本功能可以劃分為兩個方面:第一是建立TCP連接;第二是連接建立好之后進行數(shù)據(jù)通信。

    圖3 與服務(wù)器進行通信的線程流程圖

    圖4 與ADAM-5000/TCP的通信線程流程

    第一步建立連接,包括與服務(wù)器建立連接和與各ADAM5000 TCP建立連接。與服務(wù)器建立連接只要具備一定socket通信編程方面的知識很快就能順利完成;與ADAM5000TCP建立連接則按照產(chǎn)品供貨商都提供的產(chǎn)品開發(fā)說明書的指導(dǎo),也能很順利地實現(xiàn)。

    第二步連接建立后的數(shù)據(jù)接收和發(fā)送即數(shù)據(jù)傳輸,這是通信程序的關(guān)鍵,數(shù)據(jù)的傳輸又包括兩個方面,UNO與服務(wù)器的數(shù)據(jù)傳輸以及UNO與ADAM5000TCP的數(shù)據(jù)傳輸。這兩方面的數(shù)據(jù)傳輸關(guān)系到如何保證服務(wù)器上的數(shù)據(jù)準(zhǔn)確地對應(yīng)到盤臺上面的設(shè)備上(接口模塊相應(yīng)的端口上),因此,確定數(shù)據(jù)傳輸格式是開發(fā)接口通信程序之前要解決的首要問題。而要確定數(shù)據(jù)傳輸格式,則先要理解對模擬機上的數(shù)據(jù)映射原理。在此我們不妨簡要介紹一下接口模擬機上的數(shù)據(jù)映射原理。在仿真服務(wù)器上開辟有一個共享數(shù)據(jù)區(qū),該數(shù)據(jù)區(qū)中存放有整個接口系統(tǒng)的所有AI/AO/DI/DO模塊的數(shù)據(jù),其數(shù)據(jù)存放方式見圖1;圖中,iox_ptr地址指針指向共享內(nèi)存區(qū)起始地址,start[DO]、 start[AO]、 start[DI]、 start[AI]為相應(yīng)信息相對于iox_ptr的偏移量。DO、DI板為16位,在內(nèi)存中每個模塊(板卡)占用兩個字節(jié);AO、AI每個端口占用兩個字節(jié)。

    以上是整套模擬機接口系統(tǒng)所有的接口模塊數(shù)據(jù)在服務(wù)器的共享內(nèi)存中的存放方式,要想獲得某一條鏈路的某種類型的接口模塊數(shù)據(jù),則首先要統(tǒng)計出該條鏈路之前所有鏈路上的這種模塊的數(shù)量,然后根據(jù)這個數(shù)量計算出本條鏈路上模塊數(shù)據(jù)的偏移地址。比如說,我們想獲得第三條鏈路上的所有DO數(shù)據(jù)(假定為5個DO模塊),則首先要統(tǒng)計出前兩條鏈路的上的DO模塊數(shù)(假定為20),那么第三條鏈路的DO數(shù)據(jù)的開始地址為:iox_ptr + start[DO]+20× 2,從該地址開始的10個字節(jié)(5個DO模塊共占10個字節(jié))為第三條鏈路的所有DO模塊數(shù)據(jù)。AO/DI/AI模塊數(shù)據(jù)依此類推。由上可見,UNO從服務(wù)器上獲取數(shù)據(jù)以整條鏈路的數(shù)據(jù)為單位、且同種模塊的類型數(shù)據(jù)放在一起進行傳輸較為方便。所以仿真服務(wù)器和UNO之間的數(shù)據(jù)通信方式確定為UNO接收到的數(shù)據(jù):DO+AO;UNO發(fā)送出去的數(shù)據(jù)為DI+AI。在此要特別說明的是,仿真服務(wù)器和UNO上都有相同的整條鏈路的模塊配置信息,所以傳輸?shù)淖止?jié)數(shù)可通過配置信息計算出來。

    圖5 通信程序的數(shù)據(jù)流示意

    圖6 接口系統(tǒng)配置圖

    以整條鏈路為單位接收到數(shù)據(jù)后,還要對數(shù)據(jù)進行分解,對應(yīng)到相應(yīng)的ADAM5000TCP上。程序中的處理方法為UNO從仿真服務(wù)器上接收到DO/AO數(shù)據(jù)后,存放在指定的內(nèi)存區(qū),然后,各個ADAM5000TCP對應(yīng)的通信線程計算各自模塊的偏移地址,從內(nèi)存區(qū)的特定位置讀取所需數(shù)據(jù)進行發(fā)送,這個過程只需細心防止偏移地址計算錯誤,在此不再贅述。DI/AI的過程則剛好相反,從各個ADAM5000TCP上采集到數(shù)據(jù)后,計算好偏移量之后存放到指定內(nèi)存區(qū),最后整條鏈路的數(shù)據(jù)一起發(fā)送到仿真服務(wù)器。

    6 程序流程及技術(shù)說明

    6.1程序基本流程

    程序的流程分三部分,主程序流程、與服務(wù)器進行通信的線程流程、與ADAM-5000/TCP進行通信的線程流程。

    主程序流程見圖2,主程序的主要功能包括:

    (1)根據(jù)配置信息完成程序所必須的數(shù)據(jù)初始化;

    (2)進行內(nèi)存分配,建立公共數(shù)據(jù)區(qū);

    (3)創(chuàng)建并啟動與服務(wù)器進行通信的線程;

    (4)創(chuàng)建并啟動與ADAM-5000/TCP進行通信的線程。

    與服務(wù)器進行通信的線程流程見圖3,該線程的主要功能是建立與服務(wù)器的連接并與服務(wù)器進行實時數(shù)據(jù)交換,從服務(wù)器獲取本鏈路內(nèi)的輸出數(shù)據(jù)并寫入公共數(shù)據(jù)區(qū),同時從公共數(shù)據(jù)區(qū)讀取本鏈路內(nèi)采集到的輸入數(shù)據(jù)并發(fā)送到服務(wù)器。

    與ADAM-5000/TCP進行通信的線程流程見圖4,這類線程的個數(shù)為UNO2668實際連接的ADAM-5000/TCP個數(shù),即每個ADAM-5000/TCP都對應(yīng)一個線程進行通信。該線程的主要功能是建立與ADAM-5000/TCP的連接,從公共數(shù)據(jù)區(qū)讀取和寫入數(shù)據(jù),向ADAM-5000/TCP發(fā)送命令字和輸出數(shù)據(jù)同時接收ADAM-5000/TCP的響應(yīng)數(shù)據(jù)。

    程序的數(shù)據(jù)流見圖5。與服務(wù)器進行通信的線程將輸出數(shù)據(jù)寫入共享數(shù)據(jù)區(qū)的輸出部分供各個ADAM-5000/TCP通信線程讀取。輸入數(shù)據(jù)則相反。

    6.2程序主要技術(shù)說明

    對于每一個ADAM-5000/TCP通信都對應(yīng)一個線程,各ADAM-5000/TCP通信線程以及與服務(wù)器的通信線程邏輯上都是并行運行的,盡可能地利用了CPU的能力,運行效率高。

    在與ADAM-5000/TCP的通信線程內(nèi)采用命令字方式編程而不是調(diào)用動態(tài)鏈接庫的方式,提高了程序的執(zhí)行速度,因為如果采用調(diào)用動態(tài)鏈接庫方式則程序運行時存在函數(shù)調(diào)用的開銷。

    每個ADAM-5000/TCP上安裝的卡件類型和數(shù)目都各不相同,在最初構(gòu)建程序結(jié)構(gòu)時,對每個ADAM-5000/TCP根據(jù)其上安裝的卡件類型和數(shù)量編寫特定的發(fā)送和接收的指令,這樣編程每個線程內(nèi)的程序代碼都不同,編程工作量很大,而且后期的維護工作也很困難。針對該問題,筆者經(jīng)過深入研究,找到一種解決辦法,該方法通過讀取配置信息來自動判斷各5000TCP底座上的采集卡件類型和數(shù)量以及卡件的安裝位置,各ADAM-5000/TCP的通信線程根據(jù)獲取的信息來發(fā)送和接收數(shù)據(jù),這樣程序?qū)崿F(xiàn)了高度的自動化,而且所有的通信線程的程序代碼是完全一樣的,這樣即大大減少了開發(fā)工作量,同時以后的維護工作也變得相對簡單,當(dāng)?shù)鬃纤惭b的卡件類型或數(shù)量、位置等發(fā)生變更時只需更改相應(yīng)的配置信息即可。

    通信程序要求各ADAM5000TCP底座上的板卡必須按照AI、AO、DI、DO模塊的順序排列,而且要求連續(xù)排列(卡與卡之間不能有空槽,最后一塊卡后可以有空槽),這樣設(shè)計一方面簡化了程序的開發(fā),另一方面規(guī)范了硬件安裝,便于維護。

    為保證實時性,在通信程序中進行了數(shù)據(jù)發(fā)送和接收的時間測試,測試結(jié)果表明硬件性能能滿足要求。

    7 結(jié)語

    研華ADAM-5000/TCP接口系統(tǒng)和通訊程序已成功應(yīng)用在中核運行管理有限公司CP600機組的兩臺模擬機上。對今后核電廠模擬機建造具有參考價值。

    猜你喜歡
    模擬機線程鏈路
    家紡“全鏈路”升級
    天空地一體化網(wǎng)絡(luò)多中繼鏈路自適應(yīng)調(diào)度技術(shù)
    移動通信(2021年5期)2021-10-25 11:41:48
    廈航第五臺模擬機正式交付
    廈門航空(2017年10期)2018-01-04 05:14:15
    應(yīng)用道路模擬機進行整車強化壞路試驗研究
    淺談linux多線程協(xié)作
    腹腔鏡虛擬模擬機在腹腔鏡技能培訓(xùn)中的作用分析
    空客A320模擬機FD1+2可用性的討論
    河南科技(2015年7期)2015-03-11 16:23:13
    基于3G的VPDN技術(shù)在高速公路備份鏈路中的應(yīng)用
    高速光纖鏈路通信HSSL的設(shè)計與實現(xiàn)
    Linux線程實現(xiàn)技術(shù)研究
    江华| 广元市| 滦南县| 台州市| 北票市| 桦南县| 余干县| 三亚市| 太和县| 涟源市| 重庆市| 云龙县| 水富县| 陆川县| 秭归县| 六安市| 富阳市| 河津市| 定州市| 灵石县| 循化| 浦东新区| 垣曲县| 东阿县| 香河县| 共和县| 贵港市| 分宜县| 法库县| 祁连县| 宁津县| 和顺县| 蚌埠市| 庆城县| 公安县| 龙门县| 宝坻区| 上蔡县| 乐平市| 平凉市| 清徐县|