一看你就是沒有經驗
盡量考慮全面一些。這些都是我根據你的描述做出的自己理解,若有出入,請忽略
1、首先輪詢時如果通訊失敗有錯誤代碼反饋,一般無法聯系主機或者主句無響應,只能認為離線,注意這里的離線是兩種我們歸為一種,沒電離線和斷線離線。注意這里是根據錯誤代碼判斷
2、離線后,做一個標志不再訪問該該站,因為你是2個站,一個bool即可,bool設置為ture,然后訪問2號站,如果2號站訪問成功就訪問,訪問不成功,就把bool設置為false,接著訪問1站。
3、注意這里有2個問題:
a、否訪問成功時,還需判斷運行狀態,最好有能判斷運行狀態的,那個bool和這個運行狀態也要關聯,只有通訊OK且設備運行時才繼續訪問,否則來回的切換。比如1和2號站都訪問成功且沒有運行,這時候就報設備未運行。
b、兩個都訪問不成功時,敲黑板:我說的是訪問不成功時(就不存在運行狀態的判斷了),短時間內輪序次數超過2次即可報異常,比如設備均為運行