본문으로 바로가기
homeimage
  1. Home
  2. 컴퓨터/프로그래밍
  3. MODBUS 통신 프로그램 테스트에는 ModbusPoll 강력 추천

MODBUS 통신 프로그램 테스트에는 ModbusPoll 강력 추천

· 댓글개 · 바다야크

MODBUS 프로토콜의 장점

장치 제어를 위한 통신 프로그램을 작성한다면 MODBUS 프로토콜을 강력하게 추천합니다. MODBUS 프로토콜이 완벽해서가 아니라 꽤 오랫동안 사용해 와서 지원하는 장비가 많고 개발에 도움을 주는 프로그램이 다양하기 때문입니다. 만일 여럿이 함께 개발하거나 다른 업체와 협업한다면 더욱 MODBUS 프로토콜을 권합니다.

통신 프로그램의 어려운 점 하나는 잘잘못을 따지는 것입니다. 서로 협의하에 프로토콜을 결정하겠지만, 문제는 각자가 프로토콜을 작성한다는 것입니다. 물론 자기가 만든 프로그램이니까 오류 없이 잘 만들었다고 생각하겠지만, 개발 단계에 버그 없는 프로그램은 거의 없습니다.

디버깅 중에 이상한 증상이 발생해서 상대방에게 얘기하면 개발자 대부분은 어떻게 테스트했는지 물어보고 이상이 없으면 자기 코드에 잘못이 없나 확인하지만, 소양이 덜된 개발자는 일단 상대방을 의심부터 합니다. 이런 인간들은 목소리도 커서 싸우다가 지치는데요, 협업에서 중요한 것은 교류입니다. 서로의 의견으로 나의 실수를 깨달을 수 있고, 상대방의 오류를 찾을 수도 있습니다.

자기 프로그램은 몇 년째 이상 없이 잘 사용한다는 말만 되풀이하는 오징어가 의외로 많습니다. 이럴 때는 어쩔 수 없이 상황을 재현해서 보여 주어야 하는데, 내 할 일도 바쁜데 남의 프로그램까지 디버깅해 주는 꼴이니 얼마나 짜증이 납니까. 때로는 프로그램을 짜서 확인시켜 주는대도, 그것도 직접 만든 것이라고 믿지 않는 경우도 있습니다.

이럴 때 잘잘못을 쉽게 확인할 수 있는 검증 프로그램이 있다면 한결 수월합니다. 누구나 인정하는 검증 프로그램이 있으면 싸울 필요가 없습니다.

MODBUS 프로토콜이 좋은 점은 Modbus Poll 이라는 훌륭한 테스트 프로그램이 있기 때문입니다. Modbus Poll로 확인했다, 또는 Modbus Poll로 확인해 보라고 하면 끝입니다. 상대방이 건방지게 행동하면 Modbus Poll을 모르냐 하면 깨깽합니다. 가지고 있는 거 달라고 하는 사람도 있어요. 유료이니 인터넷에서 구하시라고 하면 됩니다.

이런 대응이 가능한 이유는 Modbus Poll은 오랫동안 많은 개발자가 사용해 오면서 경험을 바탕으로 신뢰하기 때문입니다. 작성한 프로그램으로 장치 제어가 되지 않는다면, Modbus Poll로 확인해서 그래도 역시 안 된다면, 통신 라인 이상/하드웨어 이상/설정 오류/테스트 오류입니다. 그렇지 않다면 100% 상대방 잘못입니다.

어느 쪽의 문제인지 빠르게 확인하지 못하면 내 프로그램의 버그인 줄 알고 이상 없는 코드만 수정하다가 시간만 허비하게 됩니다. 개발된 장비를 Modbus Poll로 확인해서 내보내면 부담이 한결 줄어듭니다. 제어가 안 된다고 하면 Modbus Poll로 확인해 보라고 하고, 그래도 안 된다고 연락이 오면 어떻게 테스트했는지를 확인합니다.

Modbus Poll 간단 사용법

Modbus Poll
Modbus Poll

Modbus Poll 9.4.5입니다. Modbus RTU, Modbus ASCII, Modbus TCP/IP, Modbus RTU Over TCP/IP, Modbus ASCII Over TCP/IP, Modbus UDP/IP, Modbus RTU Over UDP/IP, Modbus ASCII Over UDP/IP를 지원합니다.

Modbus Poll - Modbus TCP/IP
Modbus Poll - Modbus TCP/IP

Modbus Poll은 장비와 연결부터 시작합니다. MODBUS TCP/IP로 연결하는 모습인데요, UI가 직관적이어서 설명서가 따로 필요 없을 정도입니다.

접속 후에는 장비로부터 주기적으로 읽어 들여서 통신이 잘 되는 확인할 수 있습니다. F8키를 눌러서 읽기와 쓰기 정의를 합니다.

지속적으로 읽기를 위한 정보를 입력하고 Apply 버튼 또는 OK 버튼을 클릭하면 Slave ID의 장치에 지정한 주소와 MODBUS 함수로 반복적으로 값을 읽어 들입니다.

값 변경 즉, 쓰기는 그리드에서 더블 클릭하고 값을 넣어 준 후 Send 버튼을 클릭하면 됩니다.

또는 쓰기 함수를 직접 지정하여 실행할 수 있습니다.

또는 함수에 해당하는 버튼 클릭으로 더욱 빠르게 실행할 수 있습니다.

메인메뉴>>Display>>Communication Traffic를 실행하면 장비와 주고받는 데이터를 볼 수 있습니다.

장비 제어 프로토콜로 MODBUS를 추천하며, MODBUS 프로그램을 작성한다면 테스트와 검증 프로그램으로 Modbus Poll을 추천합니다. 물론 내돈내산이고 광고 글이 아닙니다. Modbus Poll로 개발 기간을 단축하고 무엇보다도 싸울 일이 없어져서 고마운 프로그램이라 블로그에 솔직한 생각을 올렸습니다.

SNS 공유하기
💬 댓글 개
최근글
이모티콘창 닫기
울음
안녕
감사해요
당황
피폐

이모티콘을 클릭하면 댓글창에 입력됩니다.