新聞資訊
新聞詳情
如何防止更新程序造成通訊中斷
日期:2024-11-21 00:23
瀏覽次數:1590
摘要:CRBasic程序
假設一個數據記錄器站在收集您的測量數據,距離您大約三個小時甚至更久的路程。要真正到達您的站點,不僅要開三個小時的車,并且還要在一座白雪覆蓋的山上徒步一個多小時。
幾天前,您更改了CRBasic數據記錄器程序,但是不確定更新的效果。但是您需要進行更改,并將更新后的程序發送給數據記錄器。不幸的是,這是您*后一次從服務器上連接上它。
盡管您發現了導致您失去通信的數據記錄器程序中的錯誤,但是需要花費大量時間去現場糾正程序,還有其他方法嗎?
完成以上步驟,您的站點現在已經啟動并運行,數據記錄器已經恢復了日志記錄數據,并且您不必花費數小時來回于站點站點來完成此工作。盡管RunProgram()指令還有許多其他用途,但是在這個應用程序中,它可能會使您避免意外的旅行。
注意:盡管這個應用程序聽起來很神奇,但RunProgram()指令不是故障**指令。如果將RunProgram()與其他指令(如SetSetting())組合在一起,可能會出現并發癥。如果您正在使用程序中的SetSetting()指令,請與Campbell Scientific聯系。提示:經常下載數據并保存數據記錄器程序配置文件,當前備份始終是一種良好的實踐。
幾天前,您更改了CRBasic數據記錄器程序,但是不確定更新的效果。但是您需要進行更改,并將更新后的程序發送給數據記錄器。不幸的是,這是您*后一次從服務器上連接上它。
盡管您發現了導致您失去通信的數據記錄器程序中的錯誤,但是需要花費大量時間去現場糾正程序,還有其他方法嗎?
有一個簡單的解決方案可以防止您的程序更新導致與站點的通信中斷。在CRBasic程序中,使用RunProgram()指令,并引用新程序將要替換的程序名。在下面的示例中,RunProgram()指令引用了前面一個名為ProgNameRev1.cr6的程序。注意,RunProgram()指令被放置在一個條件If Then/EndIf指令中——剛好位于計時器下面。
這段代碼允許您新上傳的程序運行10分鐘(足夠的時間來測試您的通信是否受到影響)。然后它自動返回到您的前一個程序。
如果您發送新程序,數據記錄器似乎正在按計劃運行,通信也在正常運行,那么您可以繼續注釋或刪除代碼的“ChangeBack”部分。然后再次發送程序。完成以上步驟,您的站點現在已經啟動并運行,數據記錄器已經恢復了日志記錄數據,并且您不必花費數小時來回于站點站點來完成此工作。盡管RunProgram()指令還有許多其他用途,但是在這個應用程序中,它可能會使您避免意外的旅行。
注意:盡管這個應用程序聽起來很神奇,但RunProgram()指令不是故障**指令。如果將RunProgram()與其他指令(如SetSetting())組合在一起,可能會出現并發癥。如果您正在使用程序中的SetSetting()指令,請與Campbell Scientific聯系。提示:經常下載數據并保存數據記錄器程序配置文件,當前備份始終是一種良好的實踐。