Modbus 프로토콜 소개

freeFree Technical Resource

This content is free to read, suitable for basic learning and search traffic.

Modbus 프로토콜 소개

Mod bus 는 개방 형 프로토 콜 이며 , 이는 제조 업 체가 로 열 티 를 지불 하지 않고 무료로 사용할 수 있음을 의미합니다 .업 계에서 표준 통신 프로토 콜 이 되었으며 현재 산업 전자 장치를 연결 하는 가장 일반적인 방법입니다 . Mod bus 는 일반적으로 계 기 및 제어 장치 에서 온 도 와 습 도를 측정 하고 결과를 컴퓨터 로 전송 하는 시스템 과 같은 메 인 컨트롤 러 또는 데이터 수집 시스템 으로 신호 를 전송 하는 데 사용됩니다 . Mod bus 는 일반적으로 SC ADA (Mon itor ing and Data Ac quis ition) 시스템 에서 모니터링 컴퓨터를 R TU (R emo te Terminal Unit) 와 연결 하는 데 사용됩니다 .

Mod bus 는 장치 간의 직 렬 라 인을 통해 전송 됩니다 .가장 간단한 설정 은 두 장치 (마 스터 및 슬 레이 브) 의 직 렬 포 트를 연결 하는 단일 직 렬 케이블 입니다 .

Modbus 프로토콜 소개Figure

데이터는 비트 라고 불리는 일련 의 1 과 0 의 형태로 전송 됩니다 .각 비 트는 전 압 으로 전송 됩니다 . 0 은 양 수 전 압 으로 전송 되고 1 은 음 수 전 압 으로 전송 됩니다 .이 비트 들은 빠르게 전송 됩니다 .일반적인 전송 속 도는 9, 600 보 트 (초 당 비트) 입니다 .

He x 란 무엇입니까 ?

문제를 해결할 때 전송 된 실제 원 시 데이터를 확인 하는 것이 유용 합니다 . 1 과 0 의 긴 문자 열 은 읽기 어렵 기 때문에 비 트가 함께 결합 되어 16 진 수로 표시 됩니다 .각 4 비트 블록 은 0 에서 F 까지 의 16 개의 문자 중 하나로 표시 됩니다 .

각 8 비트 블록 (바 이트 라고 함) 은 00 에서 FF 까지 의 256 개의 문자 쌍 중 하나로 표시 됩니다 .

표준 Mod bus 에 데이터를 저장 하는 방법은 무엇입니까 ?

정보는 4 개의 다른 테이블 에 있는 슬 레이 브 에 저장 됩니다 .두 개의 테이블 은 이 산 값 (코 일) 과 두 개의 숫자 값 (레 지 스터) 을 저장 / 닫 습니다 .각 코 일 과 레 지 스터 에는 읽기 전 용 테이블 과 읽기 및 쓰 기 테이블 이 있습니다 .각 테이블 에는 999 9 개의 값 이 있습니다 .각 코 일 또는 접촉 은 1 비트 이며 00 00 과 270 E 사이의 데이터 주 소가 할 당 됩니다 .각 레 지 스터 는 1 단어 = 16 비트 = 2 바 이트 이며 데이터 주 소는 00 00 과 270 E 사이 입니다 .

코 일 / 레 지 스터 번호 는 실제 메시 지에 나타나 지 않기 때문에 위치 이름 으로 간주 될 수 있습니다 .데이터 주 소는 메시 지에 사용됩니다 .예를 들어 , 번호 4000 1 인 첫 번째 보유 레 지 스터 는 데이터 주소 00 00 을 가지고 있습니다 .이 두 값 의 차 이는 오 프 셋 입니다 .각 테이블 에는 다른 오 프 셋 이 있습니다 . 1, 1000 1, 3000 1 및 4000 1

노예 신 분 증 이란 무엇입니까 ?

네트워크 의 각 슬 레이 브 스테 이션 에는 1 에서 24 7 까지 의 고유 한 셀 주 소가 할 당 됩니다 .마스터 스테 이션 이 데이터를 요청 할 때 , 전송 하는 첫 번째 바 이트 는 슬 레이 브 스테 이션 주소 입니다 .따라서 각 슬 레이 브 는 첫 번째 바 이트 후에 메시지를 무시 할지 여 부를 알 수 있습니다 .

기능 코드 란 무엇입니까 ?

호스트 가 전송 하는 두 번째 바 이트 는 기능 코드 입니다 .이 숫 자는 슬 레이 브 가 액세스 할 테이블 과 테이블 에서 읽을 것인지 쓸 것인지 에 대해 알려 줍니다 .

CR C 란 무엇입니까 ?

CR C 는 Cy c lic Red undan cy Check 의 약 자 입니다 .오류 검 출 을 위해 각 mod bus 메시 지의 끝에 두 바 이트 를 추가 합니다 .메시지 내 의 각 바 이트 는 CR C 계산 에 사용됩니다 .수신 장 치는 또한 CR C 를 계산 하고 송 신 장치 로부터 의 CR C 와 비교 한다 .메시 지의 비트 가 잘못 수신 되면 CR C 가 달라 지고 오류 가 발생합니다 .

데이터 유형 이란 무엇입니까 ?

예 제 FC 03 에 따르면 레 지 스터 40 10 8 에는 16 비트 10 10 11 10 0 100 000 1 로 변환 되는 AE 41 이 포함되어 있습니다 !근데 이게 무슨 뜻 이야 ?글 쎄 , 그것은 무언가를 의미 할 수 있습니다 .레 지 스터 (40 10 8) 는 이들 16 비트 데이터 유형 중 하나 로서 정의 될 수 있다 :

A 16 비트 부 호 없는 정 수 (0 에서 65 5 35 사이의 정 수) 레 지 스터 40 10 8 에는 AE 41 = 44 60 9 (16 진 수로 10 진 수로 변환) 가 포함되어 있습니다 .

A 16 비트 부 호 정 수 (-3 27 68 에서 32 7 67 사이의 정 수) AE 41 = - 20, 9 27 (16 진 수 에서 하나의 패키 지로 변환 , 32 7 67 보다 큰 경우 65 5 36 10 진 수를 빼 기)

A 두 문 자의 AS C II 문자 열 (2 개의 문 자를 입력) AE 41 = ® A

이 산 켜 기 / 끄 기 값 (이 작업 방식 은 16 비트 정 수 0 또는 1 의 값 에 대한 16 진 수 데이터가 00 00 또는 000 1 이 될 것입니다) 레 지 스트 리 40 10 8 과 결합 될 수 있습니다 .

40 10 9 이러한 32 비트 데이터 형 식을 형성 합니다 .

A 32 비트 부 호 없는 정 수 (0 과 42 9 49 67 29 5 사이의 숫자) 40 10 8, 40 10 9 = AE 41 5 65 2 = 29 23 5 17 5 22

32 비트 부 호 정 수 ( - 2, 14 7, 48 3, 64 8 과 2, 14 7, 48 3, 64 7 사이의 숫자) AE 41 5 65 2 = - 1, 37 1, 44 9, 77 4

A 32 비트 이 중 정 밀 도 I EEE 부동 소 수 점 숫자 .이것은 모든 실 수 (소 수 점이 있는 숫자) 를 32 비트 로 표현 할 수 있는 수 학적 공식 이며 , 정 밀 도는 약 7 자 릿 수 입니다 . AE 41 5 65 2 = - 4. 39 59 78 E - 11 4 바 이트 또는 2 단어를 입력 하는 스 프 레 드시 트 I EEE 부동 소 수 점 계산 기 입니다 .복 사 본 을 다운로드 하려면 마 우스 오른쪽 버튼 을 클릭 하고 대상 다른 이름으로 저장 을 선택 합니다 .

4 자 AS C II 문자 열 (4 개의 문 자로 입력 됨) AE 41 5 65 2 = ® AV R 더 많은 레 지 스터 를 결합 하여 더 긴 AS C II 문자 열 을 형성 할 수 있습니다 .각 레 지 스터 는 두 개의 AS C II 문자 (2 바 이트) 를 저장 하는 데 사용됩니다 .

바 이트 및 단어 정 렬 은 무엇입니까 ?

Mod bus 사 양 은 데이터가 레 지 스터 에 저장 되는 방법을 정확하게 정의 하지 않습니다 .따라서 일부 제조 업 체는 먼저 높은 바 이트 를 저장 하고 전송 하고 낮은 바 이트 를 저장 하는 장치 에 모 드 버 스를 구현 했습니다 . (41이전 (AE)또는 다른 사람들은 먼저 낮은 바 이트 를 저장 하고 전송 합니다 (AE 이전의 41).마찬가지로 , 레 지 스터 가 결합 되어 32 비트 데이터 형 식을 나타 낼 때 , 일부 장 치는 첫 번째 레 지 스터 에 높은 16 비트 (높 은 단어) 를 저장 하고 나머지 낮은 단어는 두 번째 레 지 스터 에 저장 되며 (5 65 2 이전 AE 41), 다른 장 치는 반대 입니다 (5 65 2 이전 AE 41) 수신 장치 가 그것을 기대 하는 방법을 아는 한 , 바 이트 또는 단어를 보내는 순 서는 중요하지 않습니다 .예를 들어 , 숫자 29, 23 5, 17 5, 5 22 를 32 비트 부 호 없는 정 수로 보내 려면 네 가지 방법 중 하나로 정 렬 할 수 있습니다 .

AE 41 5 65 2 높은 바 이트 첫 번째 높은 단어 첫 번째

5 65 2 AE 41 높은 바 이트 첫 번째 낮은 단어 먼저

첫 번째는 41 AE 5 25 6 낮은 바 이트 첫 번째 높은 단어 입니다 .

5 25 6 41 AE 낮은 바 이트 첫 번째 낮은 단어 먼저

Mod bus Map 란 무엇입니까 ?

mod bus 매 핑 은 데이터가 무엇인지 정의 하는 개별 슬 레이 브 목록 일 뿐입니다 (예를 들어 압 력 또는 온 도 판 독 값).

  • 데이터가 저장 되는 위치 (테 이블 및 데이터 주소)
  • 데이터가 저장 되는 방법 (데이 터 유형 , 바 이트 및 단어 정 렬)

일부 장 치는 제조 업 체가 정의 한 고정 매 핑 을 사용하여 구축 됩니다 .다른 장 치는 운영 자가 필요 에 맞 게 사용자 정의 지도 를 구성 하거나 프로그래밍 할 수 있도록 합니다 .

Mod bus AS C II 와 Mod bus R TU 의 차이 점은 무엇입니까 ?

Mod bus R TU 와 Mod bus AS C II 는 동일한 프로토 콜 을 사용합니다 .유일한 차이 점은 라 인을 통해 전송 되는 바 이트 가 R TU 를 사용하여 이 진 으로 표시 되고 Mod bus R TU 를 사용하여 읽을 수있는 AS C II 로 표시 된다는 것입니다 . R TU 에 대한 중요한 참고 사항 은 R TU 메시 지에 Start _ of _ text 표시 가 없다는 것입니다 .통신 의 수신 자는 새 메시 지의 시작 을 결정 하기 위해 " 침 묵 " 시간을 사용합니다 . AS C II 에는 텍스트 시작 표시 가 있습니다 .바이 너 리 메시 지는 AS C II 보다 짧 기 때문에 이론 적으로 전송 / 수신 속 도가 빠 릅니다 . H MI / SC ADA 에서 약 100 ms 의 업데이트 속도를 볼 수 있으며 통신 중 하나를 선택할 수 있습니다 .

요 약 :

  • R TU 를 사용할 수 있습니다 .
  • R TU 가 Win NT 에서 시간 초 과 문제가 있거나 300 b ps 또는 전화 접속 모 뎀 과 같은 느 린 통신 매 체를 사용할 때 AS C II 를 사용하는 경우 Mod bus 를 위한 대부분의 O PC 서버 는 AS C II 및 R TU 통신 을 지원 합니다 .

확장 레 지 스터 주소 란 무엇입니까 ?

아 날 로그 출 력 보유 레 지 스터 의 범위 는 4000 1 에서 49 99 9 사이 이기 때문에 레 지 스터 가 999 9 개 이상 있을 수 없다는 것을 의미합니다 .이것은 일반적으로 대부분의 응용 프로그램 에서 충분 하지만 , 더 많은 레 지 스터 가 있을 수 있습니다 .레 지 스터 4000 1 내지 49 99 9 는 데이터 주소 00 00 내지 270 E 에 대응 한다 .나머지 270 F 에서 F FF F 까지 의 데이터 주 소를 활용 하면 6 배 이상의 레 지 스터 를 사용할 수 있으며 총 6 5, 53 6 개의 레 지 스터 를 사용할 수 있습니다 .이것은 4000 1 에서 10 55 36 까지 의 레 지 스터 번호 에 해당 합니다 .많은 mod bus 소프트웨어 드라이 버 (마 스트 PC 용) 는 4000 1 에서 49 999 까지 의 제한 으로 작성 되어 있으며 슬 레이 브 장치 의 확장 레 지 스터 에 액세스 할 수 없습니다 .많은 슬 레이 브 장치 에서는 확장 레 지 스터 를 사용하는 매 핑 을 지원 하지 않습니다 .그러나 다른 한편 으로 일부 슬 레이 브 는 이러한 레 지 스터 를 지원 하며 일부 마스터 소프트웨 어는 특히 사용자 정의 소프트웨어를 작성 할 때 액세스 할 수 있습니다 .

By te from Station Ad dr essing 은 어떻게 작동 합니까 ?

단일 바 이트 는 일반적으로 슬 레이 브 주 소를 정의 하는 데 사용 되며 네트워크 의 각 슬 레이 브 에는 고유 한 주 소가 필요 하기 때문에 네트워크 의 슬 레이 브 수는 256 으로 제한 됩니다 .모 드 버 스 사 양 에 정의 된 제한 은 24 7 으로 훨씬 낮 습니다 .이 제한 을 초 과 하면 프로토 콜 을 수정 하여 두 바 이트 를 주소 로 사용할 수 있습니다 .주 인과 노예 는 모두 이러한 변화를 지지 해야 한다 .이 중 바 이트 주소 지정 은 네트워크 의 슬 레이 브 수 를 65 5 35 으로 제한 합니다 .기본적으로 Simp ly Mod bus 소프트웨 어는 1 바 이트 주 소를 사용합니다 . 255 보다 큰 주 소를 입력 하면 소프트웨 어는 자동 으로 2 바 이트 주소 로 전환 하고 2 바 이트 주소 지정 이 수 동 으로 꺼 질 때까지 모든 주 소에 대해 이 모 드를 유지 합니다 .

Related Tags
Put this resource to use in a real project?

Go to the Tool Center for message parsing, CRC verification and device debugging, or submit your requirements for selection and integration advice.

Engineer Membership

Turn this article into actionable debugging resources

After activation, you can use advanced message parsing, resource pack downloads, code examples, engineering cases and priority technical support, suitable for real project delivery.

Unlimited Advanced Tools
Resource & Code Packs
Complete Engineering Case Library
Priority Technical Support

Leave a Reply

Your email address will not be published. Required fields are marked *.