- CVI 정보나눔(www.cvi.kr)
- 스터디
- 개발메모
개발메모(형식에 매이지 않는 짤막한 개발 낙서)
글 수 173
RS232 통신과 달리
TCP 통신을 할 때에는 Server와 Client 간의 연결이 해제되는 것을 대체로 쉽게 감지할 수 있습니다.
Server가 연결을 끊든, Client가 끊든 연결되어 있는 상대측에 Disconnect 정보를 전달하는 것 같습니다.
하지만, LAN 선이 뽑힌다거나 하면, 연결이 끊어져 어떠한 신호도 전달받지 못하는 데도
Server 프로그램에서는 금방 연결이 해제된 것으로 나타나지만,
Client 프로그램에서는 연결이 유지되고 있는 것으로 나타납니다.
이를 방지하기 위해,
정기적으로 패킷을 송수신하여 연결이 유지되고 있는 것을 확인하는 방법도 있겠습니다.
매번 송수신하지 않으려면, 송신만 하더라도 약 20초 정도 지나니까 연결이 해제된 것이 확인이 되네요.
이 20초 정도가 어떻게 해서 나온 시간인지는 좀더 알아봐야겠지만,
통신이 끊어진 것을 확인할 수 있는 또다른 방법도 될 수 있겠습니다.
파나소닉 PV200 비전 컨트롤러로부터 비전 검사한 이미지를 화면캡쳐로 가져오는데,
어떤 경우에는 LAN선이 연결되어 있음에도 연결이 끊어져 있는 경우가 간혹 생기는데,
그걸 감지 못하는 경우가 생겨서 알아본 중간결과입니다.
2016-10-11