|
一.前言
yunxingshizutaishizutairuanjianxinjintichudexindegainian。yunxingshizutaishizaiyunxinghuanjingxiaduiyiyougongchengjinxingxiugai,tianjiaxindegongneng。tabutongyuzaixianzutai,zaixianzutaishizaigongchengyunxingdetongshi,jinruzutaihuanjing,zaizutaihuanjingzhongduigongchengjinxingxiugai。eryunxingshizutaishizaiyunxinghuanjingzhongzhijiexiugaigongcheng。yunxingshizutaigaibianleyiwangbixujinrufuzadezutaihuanjingxiugaigongchengyingyongdelishi,geizutairuanjiandailailexindehuoli,bingyushizhezutairuanjianxindefazhanfangxiang。
為wei了le說shuo明ming什shen麼me是shi運yun行xing時shi組zu態tai讓rang我wo們men先xian打da個ge比bi方fang。我wo們men可ke以yi將jiang工gong程cheng組zu態tai比bi作zuo是shi建jian造zao房fang屋wu。房fang屋wu在zai建jian造zao前qian先xian設she計ji好hao圖tu紙zhi,然ran後hou按an照zhao圖tu紙zhi進jin行xing施shi工gong,工gong程cheng驗yan收shou後hou房fang屋wu的de大da小xiao、結構就固定下來了。交付住戶使用後,住戶自己是不能輕易改變房屋的結構(除非他本人就是建築師且有合法手續),更不能擴展房屋的大小。如果對房屋進行改造,必須請建築師設計,由建築工人來施工。
傳統的組態與之類似,工程組態好並交付用戶使用後,工程中包括的功能就固定不變了。如果要擴充、修改工程的功能,就必須請熟悉該工程的組態工程師進入組態環境進行修改。
ruguofangwujianhaohou,yonghunenggougenjuzijidexuyaofangbiandegaibianfangjiandeneibujiegou,huozhekuodafangwudekongjian,najiangshiduomeqieyideshi。jiarujianzaoshijiangfangjiandeqiangbizuochengkeyidong、可拉伸的,並且預留了製作牆壁、門men窗chuang等deng構gou造zao房fang屋wu所suo需xu的de機ji器qi,你ni就jiu自zi己ji就jiu可ke以yi將jiang平ping房fang變bian成cheng樓lou房fang,將jiang樓lou房fang加jia高gao。當dang然ran建jian築zhu師shi很hen難nan為wei你ni製zhi作zuo出chu這zhe樣yang的de設she備bei,但dan是shi組zu態tai軟ruan件jian卻que可ke以yi做zuo到dao這zhe些xie。
組態工程師可以在構建工程後,有預見的設計出該工程的擴展工具。擴展工具用來生成擴展工程時所需的畫麵、畫麵中的構件、連接的硬件設備、新xin的de測ce點dian等deng。擴kuo展zhan工gong具ju完wan全quan是shi跟gen該gai工gong程cheng或huo該gai應ying用yong領ling域yu相xiang關guan,工gong具ju一yi般ban隻zhi包bao含han針zhen對dui該gai應ying用yong的de有you限xian的de幾ji種zhong部bu件jian,但dan是shi卻que能neng夠gou滿man足zu該gai工gong程cheng以yi後hou擴kuo展zhan。因yin為wei讓rang技ji術shu人ren員yuan(非組態工程師)zhangwozhexiegongjubizhangwobaoluowanxiangdekaifahuanjingyaorongyideduo,yinciyonghuzijishaojiazhidaojiuhenrongyiwanchenggongchengdehouqiweihugongzuole。lingwaiyouyukuozhangongjuzhitigongyouxiandegongneng,rangyonghufancuowudejihuiyejiuxiaoduole。
二.運行時組態的優點
- 縮短工期。對於一具體工程項目,如果能將項目中用到的模式歸納出來,做成模板(該模板可以通過前麵提到的擴展工具運行時生成),那(na)麼(me)我(wo)們(men)無(wu)須(xu)等(deng)到(dao)整(zheng)個(ge)工(gong)程(cheng)做(zuo)完(wan)就(jiu)可(ke)以(yi)將(jiang)其(qi)投(tou)入(ru)運(yun)行(xing)了(le)。即(ji)隻(zhi)要(yao)工(gong)程(cheng)中(zhong)需(xu)要(yao)的(de)製(zhi)作(zuo)工(gong)具(ju)完(wan)成(cheng)後(hou),你(ni)就(jiu)可(ke)以(yi)讓(rang)最(zui)終(zhong)用(yong)戶(hu)在(zai)運(yun)行(xing)時(shi)自(zi)己(ji)增(zeng)加(jia)功(gong)能(neng)了(le)。讓(rang)用(yong)戶(hu)在(zai)運(yun)行(xing)環(huan)境(jing)中(zhong)修(xiu)改(gai)和(he)完(wan)善(shan),直(zhi)至(zhi)整(zheng)個(ge)工(gong)程(cheng)完(wan)成(cheng)。該(gai)工(gong)作(zuo)模(mo)式(shi)充(chong)分(fen)發(fa)揮(hui)了(le)組(zu)態(tai)工(gong)程(cheng)師(shi)和(he)技(ji)術(shu)工(gong)人(ren)自(zi)身(shen)的(de)優(you)勢(shi),快(kuai)速(su)完(wan)成(cheng)工(gong)程(cheng)項(xiang)目(mu)。因(yin)為(wei)組(zu)態(tai)工(gong)程(cheng)師(shi)對(dui)組(zu)態(tai)軟(ruan)件(jian)熟(shu)悉(xi),而(er)技(ji)術(shu)工(gong)人(ren)對(dui)其(qi)應(ying)用(yong)熟(shu)悉(xi),讓(rang)他(ta)們(men)分(fen)工(gong)做(zuo)自(zi)己(ji)熟(shu)悉(xi)的(de)事(shi)情(qing),項(xiang)目(mu)進(jin)度(du)當(dang)然(ran)就(jiu)快(kuai)了(le)。
- 解決了設備、畫(hua)麵(mian)不(bu)確(que)定(ding)問(wen)題(ti)。有(you)些(xie)工(gong)程(cheng)本(ben)來(lai)就(jiu)存(cun)在(zai)這(zhe)樣(yang)的(de)需(xu)求(qiu)。如(ru)在(zai)煤(mei)礦(kuang)安(an)全(quan)監(jian)測(ce)中(zhong),作(zuo)業(ye)現(xian)場(chang)具(ju)有(you)流(liu)動(dong)性(xing),其(qi)監(jian)測(ce)的(de)設(she)備(bei)是(shi)經(jing)常(chang)變(bian)化(hua)的(de)。這(zhe)就(jiu)要(yao)求(qiu)組(zu)態(tai)軟(ruan)件(jian)中(zhong)的(de)測(ce)點(dian)和(he)監(jian)視(shi)畫(hua)麵(mian)根(gen)據(ju)情(qing)況(kuang)不(bu)斷(duan)調(tiao)整(zheng)。我(wo)們(men)不(bu)可(ke)能(neng)用(yong)常(chang)規(gui)的(de)辦(ban)法(fa)將(jiang)各(ge)種(zhong)情(qing)況(kuang)事(shi)先(xian)窮(qiong)舉(ju)出(chu)來(lai),也(ye)不(bu)可(ke)能(neng)每(mei)次(ci)改(gai)變(bian)都(dou)要(yao)求(qiu)現(xian)場(chang)的(de)技(ji)術(shu)人(ren)員(yuan)進(jin)入(ru)複(fu)雜(za)的(de)開(kai)發(fa)環(huan)境(jing)進(jin)行(xing)修(xiu)改(gai)。而(er)現(xian)場(chang)應(ying)用(yong)模(mo)式(shi)比(bi)較(jiao)穩(wen)定(ding),這(zhe)樣(yang)我(wo)們(men)就(jiu)易(yi)於(yu)建(jian)造(zao)其(qi)運(yun)行(xing)時(shi)擴(kuo)展(zhan)工(gong)具(ju)。運(yun)行(xing)時(shi)組(zu)態(tai)對(dui)此(ci)是(shi)非(fei)常(chang)適(shi)用(yong)的(de)。
- 動態生成、精簡畫麵。已往動態場景的實現需要在組態環境中必須一一羅列,然後在畫麵元素中加入隱藏、xianxiandonghua,zhizuoweihufeichangfansuo。zaiyunxingshizhexieyuansubuguanyongdaoyufoudouyaoweiqifenpeikongjian,zaochengyidinglangfei。dongtaishengchengjishukeyizaixuyaoshichuangjian,budanshihuamianjianhua,tongshiyejianxiaolexitongkaixiao。
- 精簡組態環境。動態生成點、畫麵所使用的構件都是與當前應用相關的,無關的構件不會出現在運行時的“組態”環境中。運行時的“組態”shiweijutiyingyongliangshenzhizuode。xiangduiyukaifahuanjingzhongdezutaiyaodanyideduo,gongchangdejishurenyuanyehenrongyizhangwo。zhejibaozhenglezuizhongyingyongchengxudekekuozhanxing,youbaozhengleyunxing“組態”的簡單性、方便性。
- 維wei護hu方fang便bian。傳chuan統tong意yi義yi的de組zu態tai是shi在zai工gong程cheng組zu態tai完wan成cheng後hou,應ying用yong程cheng序xu的de功gong能neng已yi經jing固gu化hua好hao了le。如ru果guo需xu要yao修xiu改gai或huo增zeng加jia新xin功gong能neng,還hai必bi須xu進jin入ru開kai發fa環huan境jing重zhong新xin配pei置zhi。這zhe一yi般ban需xu要yao精jing通tong開kai發fa環huan境jing,並bing且qie熟shu悉xi該gai工gong程cheng的de工gong程cheng師shi來lai完wan成cheng。如ru果guo工gong程cheng不bu是shi本ben單dan位wei完wan成cheng的de,還hai要yao涉she及ji到dao升sheng級ji改gai造zao,甚shen至zhi另ling立li項xiang目mu的de費fei用yong。動dong態tai生sheng成cheng可ke以yi保bao證zheng係xi統tong有you一yi定ding程cheng度du的de擴kuo展zhan性xing,並bing且qie可ke以yi由you工gong廠chang的de一yi般ban技ji術shu人ren員yuan來lai完wan成cheng。
- liyuzutairuanjianxiangxingyehuafazhan。xingyegongchengshikeyizhenduizijidexingyexuqiu,peizhiyunxingshisuoxugoujian,rangputongjishurenyuanshiyong,zhejiuxingchenglesanjiyingyongmoshi。ruanjiangongchengshijizhongjinglikaifalinghuodeshouduan,xingyegongchengshizhiliyuxingyegoujiandegoujian,zuizhongjishurenyuanshixianzijideyingyongluoji。sanjiyingyongmoshijiangdadajiasuzutairuanjianxingyehuajincheng。
三.安全性問題。
如果在運行時可以隨便增加、修改、刪除工程中的畫麵、畫麵中的元素、數shu據ju庫ku中zhong的de點dian。這zhe豈qi不bu是shi很hen危wei險xian嗎ma?是shi的de,確que實shi很hen危wei險xian。如ru果guo沒mei有you保bao護hu措cuo施shi,運yun行xing時shi生sheng成cheng就jiu會hui帶dai來lai很hen多duo的de麻ma煩fan。我wo們men可ke以yi通tong過guo以yi下xia兩liang項xiang安an全quan措cuo施shi來lai保bao護hu運yun行xing時shi的de工gong程cheng。
1.係統保護措施:
- 隻有具有特定權限的用戶才能進行運行時組態。
- 隻有畫麵的創建者可以修改畫麵元素,其他用戶無權修改。
- 特權用戶可以在工程完善後,禁止運行組態功能。
2.設計時保護
youyuyunxingshidegongjushiyouzutaigongchengshishengchengde,yinciyunxingshizutaideziyouduwanquanyouzutaigongchengshizhangwo。zhejiuyaoqiuzutaigongchengshiduiyunxingshitigongdeshouduanyaojiayixianzhi,buyaotigongguoduode、bubiyaodelinghuoxing,tongshiduixiugaiduixiangtigongbiyaodebaohucuoshi。lirutigongleyunxingshizutaidiandegongju,jiuyoubiyaoduiyiyoudedianjinxingbaohu,tongshiduiyonghutianjiadediandeshuliangyaojinxingxianzhi。tongyangduiyuhuamianxiugaiyeshiruci,buxuyaoyunxingshixiugaidehuamianjiubuyaoshezhi“運行時編輯”權限。
總之,組態人員既要給用戶提供擴展功能的手段,又要對其加以足夠的限製,以保證係統安全運行。
四.運行時組態的實現
目前,無論是國內還是國外組態軟件對運行時組態支持都很少,尤其是運行時添加設備、添加變量等各家組態軟件基本沒有提供任何支持。對於支持VBA腳jiao本ben的de組zu態tai軟ruan件jian,雖sui然ran可ke通tong過guo編bian寫xie程cheng序xu實shi現xian畫hua麵mian的de動dong態tai生sheng成cheng,但dan是shi這zhe畢bi竟jing是shi非fei可ke視shi化hua的de手shou段duan。紫zi金jin橋qiao監jian控kong組zu態tai軟ruan件jian在zai這zhe方fang麵mian做zuo了le初chu步bu嚐chang試shi。下xia麵mian以yi紫zi金jin橋qiao監jian控kong組zu態tai軟ruan件jian為wei例li說shuo明ming運yun行xing時shi組zu態tai的de實shi現xian方fang法fa。
運行時組態包括運行時數據庫組態和運行時圖形組態兩部分,下麵分別說明:
運行時數據庫組態包括:對下列內容動態增加、刪除和修改:
- I/O設備。
- 數據庫點。
- I/O連接項,網絡連接。
- 曆史保存項。
界麵中腳本支持以上操作,並且修改完上述內容後數據庫不需要重新啟動,馬上就能生效,並且不會影響已有數據庫點的正常運行。
一般的應用中隻會涉及到有限的幾種設備類型和幾種點類型。對於每種設備或點類型我們要在畫麵中建立相應的窗口,該窗口用於對I/O設備或點進行維護。下麵是一簡單的點定義窗口:
運行時點組態畫麵示例
2.畫麵組態
運行時加入圖形對象包括腳本創建對象和運行中手工填加圖形對象兩種方式,下麵分別介紹。
2.1腳本動態生成圖形的步驟
- 定義圖形對象樣板。
- 通過下列腳本替換已有對象、增加新對象、替換對象中引用的變量。常用的腳本函數如下:
- 調用RepObj函數替換對象。
- 調用AddObj函數增加新對象。
- 調用RepVar函數替換變量。
- 調用DelObj函數刪除對象。
- 在窗口外部可以通過調用RepVarWin對選定對象進行變量替換。
- 將修改完的畫麵保存到主服務器,其他客戶端的畫麵將自動更新,這一步不是必須的,如果不需要保存到服務器,可以忽略此步。
- 運行時切換到“編輯”模式,這時可以手動加入、修改、刪除調整樣板對象。並可以對圖元對象中引用的變量進行替換。
在運行時手工添加圖形對象相對更為靈活,其操作基本步驟如下:
- 在窗口參數中選中“允許運行編輯”複選框。若啟動了安全管理,那麼還要指定具有“運行時編輯畫麵”權限帳戶,隻有該賬戶能夠進行動態生成對象。
- 製作工具畫麵。在該畫麵中添加運行時需要的工具,每個工具要打成子圖、單元或圖形模板,並將其置於拖拽框對象之下。
- 通過導航樹中的“畫麵”選項卡中的“操作麵板”添加工具畫麵。也可以沒有該步驟。
- 在運行時,通過拖拽工具畫麵中的對象,增加圖形對象。
- 保存修改,將修改內容傳送到服務器端(此步驟不是必須的)。
運行時手工添加的圖形對象,在組態時要預先繪製好,並bing加jia入ru到dao工gong具ju畫hua麵mian中zhong。運yun行xing時shi通tong過guo拖tuo拽zhuai方fang式shi將jiang其qi繪hui製zhi到dao相xiang應ying的de畫hua麵mian,然ran後hou修xiu改gai其qi關guan聯lian變bian量liang等deng操cao作zuo,最zui後hou保bao存cun到dao服fu務wu器qi,實shi現xian動dong態tai添tian加jia圖tu形xing對dui象xiang的de操cao作zuo。

運行時生成畫麵示例
五.發展方向 組態軟件行一般稱為通用組態軟件。“通用”一(yi)詞(ci)表(biao)示(shi)它(ta)可(ke)以(yi)適(shi)合(he)各(ge)種(zhong)應(ying)用(yong)領(ling)域(yu)。不(bu)同(tong)的(de)應(ying)用(yong)領(ling)域(yu)雖(sui)然(ran)存(cun)在(zai)許(xu)多(duo)共(gong)性(xing)的(de)東(dong)西(xi),但(dan)是(shi)行(xing)業(ye)的(de)差(cha)異(yi)是(shi)客(ke)觀(guan)存(cun)在(zai)的(de)。差(cha)異(yi)表(biao)現(xian)在(zai)畫(hua)麵(mian)的(de)組(zu)織(zhi)形(xing)式(shi),組(zu)成(cheng)部(bu)件(jian),構(gou)建(jian)邏(luo)輯(ji)。如(ru)果(guo)讓(rang)組(zu)態(tai)軟(ruan)件(jian)能(neng)夠(gou)包(bao)羅(luo)萬(wan)象(xiang)來(lai)適(shi)應(ying)各(ge)行(xing)各(ge)業(ye),那(na)麼(me)呈(cheng)現(xian)給(gei)用(yong)戶(hu)的(de)軟(ruan)件(jian)將(jiang)過(guo)於(yu)複(fu)雜(za),最(zui)終(zhong)會(hui)使(shi)得(de)組(zu)態(tai)軟(ruan)件(jian)本(ben)身(shen)的(de)友(you)好(hao)性(xing)太(tai)差(cha),失(shi)去(qu)其(qi)存(cun)在(zai)的(de)意(yi)義(yi)。如(ru)前(qian)所(suo)述(shu),運(yun)行(xing)時(shi)動(dong)態(tai)生(sheng)成(cheng)的(de)元(yuan)素(su)是(shi)在(zai)組(zu)態(tai)環(huan)境(jing)下(xia)生(sheng)成(cheng)的(de)。行(xing)業(ye)工(gong)程(cheng)師(shi)可(ke)以(yi)在(zai)組(zu)態(tai)環(huan)境(jing)下(xia)構(gou)建(jian)其(qi)應(ying)用(yong)領(ling)域(yu)所(suo)需(xu)模(mo)件(jian),然(ran)後(hou)讓(rang)專(zhuan)業(ye)技(ji)術(shu)人(ren)員(yuan)運(yun)用(yong)自(zi)己(ji)熟(shu)知(zhi)的(de)構(gou)件(jian)在(zai)運(yun)行(xing)時(shi)搭(da)建(jian)自(zi)己(ji)的(de)應(ying)用(yong)。這(zhe)樣(yang)就(jiu)使(shi)組(zu)態(tai)軟(ruan)件(jian)形(xing)成(cheng)三(san)級(ji)應(ying)用(yong)模(mo)式(shi):軟件工程師-行業工程師-專(zhuan)業(ye)技(ji)術(shu)人(ren)員(yuan)。軟(ruan)件(jian)工(gong)程(cheng)師(shi)注(zhu)重(zhong)的(de)是(shi)給(gei)行(xing)業(ye)工(gong)程(cheng)師(shi)提(ti)供(gong)靈(ling)活(huo)的(de)手(shou)段(duan),行(xing)業(ye)工(gong)程(cheng)師(shi)構(gou)件(jian)行(xing)業(ye)模(mo)件(jian),專(zhuan)業(ye)技(ji)術(shu)人(ren)員(yuan)構(gou)件(jian)最(zui)終(zhong)的(de)應(ying)用(yong)。這(zhe)才(cai)會(hui)使(shi)組(zu)態(tai)軟(ruan)件(jian)深(shen)入(ru)到(dao)行(xing)業(ye),這(zhe)也(ye)正(zheng)式(shi)組(zu)態(tai)軟(ruan)件(jian)未(wei)來(lai)發(fa)展(zhan)之(zhi)道(dao)。
|