在實(shí)際的應(yīng)用中,,有一些現(xiàn)場(chǎng)值無法從設(shè)備中直接取得,,需要通過手工錄入的方式將數(shù)據(jù)上傳,,在上傳的過程中需要有一種反饋機(jī)制來確認(rèn)操作是否成功。
在人工錄入機(jī)上建立2個(gè)數(shù)字I/O點(diǎn),。當(dāng)操作工錄入完數(shù)據(jù)選擇提交后,,前置機(jī)點(diǎn)Data.pv會(huì)接收到隨時(shí)間變化點(diǎn)Send.pv 的數(shù)值,然后Data.pv又將數(shù)值傳給Recv.pv,,最后人工錄入機(jī)判斷Send.pv和Recv.pv的數(shù)值是否相等,,如果相等說明回路暢通,人工錄入的數(shù)據(jù)能夠傳遞到前置機(jī)上,,否則人工錄入的數(shù)據(jù)不能傳遞到前置機(jī)上,。
在人工錄入機(jī)上定義遠(yuǎn)程數(shù)據(jù)源:
在公共-〉數(shù)據(jù)源下增加遠(yuǎn)程數(shù)據(jù)源,在“數(shù)據(jù)源定義”對(duì)話框內(nèi)選擇“遠(yuǎn)程節(jié)點(diǎn)”并填寫遠(yuǎn)程計(jì)算機(jī)的IP地址,,這里的IP地址為前置機(jī)地址,。 在人工錄入機(jī)上建立數(shù)字I/O點(diǎn):Z_Send.pv和Z_Recv.pv,指定Z_Recv.pv的外部連接為上面定義的遠(yuǎn)程數(shù)據(jù)源,。 在前置機(jī)上定義遠(yuǎn)程數(shù)據(jù)源:一般已經(jīng)定義,。 在前置機(jī)上定義數(shù)字I/O點(diǎn):Z_Data.pv,指定該點(diǎn)的外部連接為人工錄入機(jī)的遠(yuǎn)程數(shù)據(jù)源,。
雙擊人工錄入工程中的“提交”按鈕,,可以看見一文本框,在該文本框的最后增加以下內(nèi)容: ////////////////////////////// 1Z_SEND.PV = $SYSTEM.LONGTIME; 2delay(1000); 3if Z_RECV.PV == Z_SEND.PV then 4msgbox("提交成功,!"); 5Display("儲(chǔ)一光明錄入目錄"); 6else 7msgbox("提交失敗,,請(qǐng)重新提交!"); 8endif; 第一行表示將當(dāng)前時(shí)間距離1970年1月1日的時(shí)間賦值給Z_SEND.PV,;第二行延時(shí)1秒,,給數(shù)據(jù)傳輸預(yù)留時(shí)間;第三行判斷傳出的值和接收的值是否相同,;第四行,,數(shù)值相同提示成功;第五行,,返回到登陸界面,;第六行如果數(shù)值不同;第七行,,彈出失敗提示,。 |