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