[問答] 多機台監控

作者: noodleT (麵T)   2016-09-24 16:53:49
抱歉,我整個重新編輯清楚一點。
機台 監控電腦
CNC_A
PC_1
CNC_B
PC_2
CNC_C ...
...
網路上有多台機台(CNC)與監控電腦(PC),
最終目的是要讓 PC 可以隨時知道 CNC 狀況。
目前需考慮三個條件:
1.工廠環境的網路品質不好
2.CNC 不要設固定 IP,也就是 CNC、PC 互相都不知道對方 IP 及數量
3.不要設固定通訊 port,因為該 port 如果先被 PC 上其他程式佔走就 GG 了
作法:
1.CNC 在 port5000~6000 之間找兩個可用的 port,並設監聽,例如:
UDP Broadcast Listener = 192.168.1.100:5002
TCP Listener = 192.168.1.100:5003
2.PC 在 port5000~6000 之間找一個可用的 port ,一樣設為監聽:
TCP Listener = 192.168.1.105:5007
3.PC 開啟一個新的 UDP Client,
對區網內所有範圍在 5000~6000 的 port 進行廣播,廣播內容為:
"我是 PC,我的 TCP 為 192.168.1.105:5007"
4.CNC 接到後,開啟一個新的 TCP Client 並回應到 PC 的 5007 port 上:
"我是 CNC,我的 TCP 為 192.168.1.100:5003"
5.PC 以後若需要 CNC 資料,
則開一個新的 TCP Client 發送訊息給 CNC 的 5003 port:
"請把XXX資料送到 192.168.1.105:5007"
上面的 TCP Client 都不會等待對方的 Listener 回應資料。
不等待的原因就是怕網路品質太差、對方忙碌,
對方將要回應的資料準備好後直接回應到對應的窗口即可。
我不知道這樣構想是不是太"搞剛"?
有沒有其他更適合的做法?
※ 編輯: noodleT (118.171.111.225), 09/25/2016 01:36:58
作者: asdfghjklasd (好累的大一生活)   2016-09-25 01:27:00
你想怎做就怎做啊.這有什麼問題?

Links booklink

Contact Us: admin [ a t ] ucptt.com