본문으로 바로가기
homeimage

MODBUS

해당되는 글 9
  • thumbnail
    컴퓨터/프로그래밍

    모드버스 프로토콜 작성 방법 및 주의사항

    이 글은 모드버스 프로토콜을 처음 접하면서 프로그램을 구현해야 하는 분을 위한 글입니다. 모드버스 질의에 대한 응답을 어떻게 구현하는지에 대한 설명이며, 코드를 작성하기 전에 미리 알고 있으면 헷갈리거나 헛수고를 줄일 수 있을 것으로 생각합니다. 아울러 모드버스 프로그램 작성에 도움이 되는 팁을 소개합니다. 모드버스 프로토콜 작성 시 주의 사항 모든 모드버스 Function Code를 작성해야 하나요? 결론부터 말씀드리면 아닙니다. 만일 내 장비가 온도계이고 어떤 설정도 없이 현재 온도 값만을 제공한다면 읽기 Function code 4만 작성해도 됩니다. 또는 내 장비가 조명 시스템이고 10개의 조명이 달려 있는데, 번호에 따라 On/Off를 할 수 있다면 Function code 6만 작성해도 됩니다..
  • thumbnail
    컴퓨터/프로그래밍

    모드버스 통신 오류 시 응답 방법

    모드버스 통신 패킷 오류 시 응답? 무시? 한 개의 통신 라인에 여러 개의 디바이스가 물린 rs485에서 통신 패킷이 깨진 데이터를 수신했을 경우 다시 보내 달라고 요청해야 할까요? 아니면 무시하고 기다려야 할까요? 답부터 말씀드리면 요청하거나 응답해서는 안 됩니다. 어? rs485 통신의 대표 프로토콜인 모드버스에는 예외 상황 코드로 응답하는 내용이 있는데?라고 반문하실 수 있습니다. 그러나 모드버스의 예외 상황 코드에는 통신 패킷 오류에 대한 내용이 없습니다. 즉, 수신된 데이터가 올바른지 CRC 값을 확인했더니 틀렸다면 그 통신 패킷은 무시해야 합니다. 1:1 통신인 rs232에서는 다시 보내 달라고 요청할 수 있어도 1:N에서는 걸러내야 합니다. 이유는 통신 패킷에 오류가 있다면 슬레이브 주소가 ..
  • thumbnail
    컴퓨터/프로그래밍

    모드버스 통신 테스트 프로그램 추천

    마스터 모드버스 통신 테스트 프로그램 ModbusPoll 모드버스 통신 테스트 프로그램은 읽기·쓰기를 요청하는 마스터(Master)와 마스터의 요청을 실행하고 응답하는 슬래이브(Slave)로 나뉩니다. 마스터가 클라이언트이라면 슬레이브가 서버인 것이죠. 모드버스 마스터 통신 테스트 프로그램으로는 ModbusPoll을 추천합니다. 잘 만들기도 했지만, 무엇보다도 공신력이 있어서 다른 개발자와 언쟁하는 불상사를 줄여줍니다. 내가 만든 장비와 통신이 안 된다라고 문의가 오면 ModbusPoll로 확인하라고 하면 끝입니다. ModbusPoll로는 되는데 그 개발자의 프로그램에서는 안 된다면 그분의 코드에 버그가 있는 것입니다. 계속해서 자기 쪽은 이상이 없다고 고집하면 ModbusPoll을 모르냐고 반박하면 됩..
  • thumbnail
    컴퓨터/프로그래밍

    MODBUS-RTU 프로토콜 쉽게 이해하기

    MODBUS 프로토콜 이 글은 시리얼 통신을 잘 알고 있지만, MODBUS-RTU를 처음 접하는 분을 위해 저의 경험을 바탕으로 작성했습니다. 시리얼 통신을 꽤 오랫동안 다루었지만, MODBUS-RTU를 처음 접했을 때는 지금껏 사용해 오던 프로토콜하고는 느낌이 달라서 왜 이렇게 생겨 먹은 것인 지부터 이해해야 했습니다. 보통 시리얼 통신은 장비에 맞추어 작성합니다. 장비에 어떤 입출력이 있고 무엇을 제어해야 하는지와 구해야 할 정보에 따라서 프로토콜을 설계합니다. 즉, 장비와 프로젝트에 따라서 프로토콜이 바뀌고 그때마다 프로그램을 수정하거나 새로 작성합니다. [내용 추가] 모드버스는 함수에 따라 패킷 구성이 다릅니다. 함수마다 요구하는 내용이 다르기 때문이죠. 그래서 "모드버스 프로토콜 기본구성"이라는..
  • thumbnail
    컴퓨터/프로그래밍

    MODBUS-RTU 구현 시 주의 사항

    MODBUS-RTU 경험담 MODBUS-RTU 프로그램을 작성하면서 겪었던 경험담을 올립니다. 좀 당황스러운 일인데, 경험에 따라 생각이 다를 수 있어서 반드시 이래야 한다는 것은 아니지만, rs485 라인에 MODBUS-RTU 통신을 하는 분께 도움이 되지 않을까 해서 올립니다. 사건의 발단은 말 많고 탈 많은 rs485 통신 때문입니다. rs485 통신은 현장에 따라 희비가 극명합니다. 똑같은 시스템을 설치하는데도 어느 곳은 오전에 시작해서 오전에 끝나는데, 어떤 곳은 밤늦게까지 속을 썩입니다. rs485 통신은 장거리 통신이 가능하고 노이즈에 강하지만, 어디까지나 rs232와 비교해서입니다. rs485 통신을 이론으로만 따졌다가는 고생을 많이 하게 되는데요, 노이즈에 강한 통신이어도 현장에서는 통신..
  • thumbnail
    컴퓨터/프로그래밍

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

    MODBUS 프로토콜의 장점 장치 제어를 위한 통신 프로그램을 작성한다면 MODBUS 프로토콜을 강력하게 추천합니다. MODBUS 프로토콜이 완벽해서가 아니라 꽤 오랫동안 사용해 와서 지원하는 장비가 많고 개발에 도움을 주는 프로그램이 다양하기 때문입니다. 만일 여럿이 함께 개발하거나 다른 업체와 협업한다면 더욱 MODBUS 프로토콜을 권합니다. 통신 프로그램의 어려운 점 하나는 잘잘못을 따지는 것입니다. 서로 협의하에 프로토콜을 결정하겠지만, 문제는 각자가 프로토콜을 작성한다는 것입니다. 물론 자기가 만든 프로그램이니까 오류 없이 잘 만들었다고 생각하겠지만, 개발 단계에 버그 없는 프로그램은 거의 없습니다. 디버깅 중에 이상한 증상이 발생해서 상대방에게 얘기하면 개발자 대부분은 어떻게 테스트했는지 물어..
  • thumbnail
    컴퓨터/주변 장치·부속품

    모드버스 게이트웨이 기산 KG30X 사용 방법

    MODBUS RTU to MODBUS TCP Gateway 여러 가지 장비와 통신하는데 rs485 라인에 MODBUS RTU를 많이 사용하는데요, 주변 환경에 따라 통신이 안 되면 정말 답답하죠. 어느 장비까지 통신이 되는지 확인하고 어떤 장비를 연결할 때부터 통신이 안 된다면 원인을 찾아서 케이블 위치를 옮기거나 심하게는 다른 곳으로 돌리기도 하는데요, 물려 있는 모든 장비와 원활히 통신하기 위해서 다음 장비, 다음 장비 반복 작업을 계속하다 보면 매우 지칩니다. rs485 통신이 최대 1.2km까지 통신할 수 있고 이론 상으로는 노이즈에 강하다고 해도 rs232보다 좋다는 것이지 주변 영향을 많이 받습니다. 이런 경우 rs484 to rs485 리피터를 사용하는데요, 주변에 HUB가 있다면 MODBU..
  • thumbnail
    컴퓨터/주변 장치·부속품

    목사 모드버스 TCP 게이트웨이 MOXA MGate MB3180 설정 방법

    MOXA MODBUS Ethernet·Serial Gateway 목사 모드버스 TCP 게이트웨이 MOXA MGate MB3180을 드디어(?) 사용해 보았습니다. "드디어"라고 말씀드리는 이유는 모 회사 제품을 사용했다가 여러 번 헛고생을 했던 터라 꼭 MOXA 제품을 사용해 보고 싶었기 때문입니다. rs485 MODBUS 망을 이더넷으로 연결해야 하는데, 그렇게 하려면 MODBUS-RTU와 MODBUT-TCP로 전환해 주어야 합니다. 다행히 네트워크를 잘 아는 동료가 모드버스 이더넷과 시리얼을 변환해 주는 모드버스 TCP 게이트웨이가 있다면서 구매하려면 꼭 MOXA로 하라고 추천하더군요. 그 회사 제품을 여러 번 사용했는데 한 번도 속을 썩인 적이 없다고 말이죠. 단점은 딱 하나, 비싸답니다. 잘 만든..
  • thumbnail
    컴퓨터/주변 장치·부속품

    MODBUS TCP Gateway 사용 후기

    MODBUS RTU 망과 이더넷을 연결 MODBUS 통신 프로토콜을 자세히 보면 뭔가 좀 이상하고 이해 안 되는 부분이 있지만, 표준처럼 많은 곳에서 사용하다 보니 장치 간의 통신은 MODBUS가 편합니다. 특히, 처음 보는 장치라도 그 장치가 MODBUS 통신을 제공하고 기능별로 잘 작성된 MODBUS Table을 갖추었다면 개발 시간을 많이 줄일 수 있습니다. 일단, 개발자끼리 싸울 일이 없어서 좋습니다. 코딩 대로 작동이 안 될 때, 서로 잘잘못을 따질 필요 없이 인증된 MODBUS 테스터로 확인하면 됩니다. 상대방이 고집 피우면 MODBUS 테스터 확인하라고 하면 끝입니다. 하드웨어 잘못이 아닌 이상 MODBUS 테스터 프로그램으로 기능이 확인되면 할 말이 없죠. ▲ 제어해야 될 장치가 서로 다른..
    최근글
    이모티콘창 닫기
    울음
    안녕
    감사해요
    당황
    피폐

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