안녕하세요.
첫 번째 내용(제품 및 설정 확인)에 이어서 네트워크 설정 및 MQTT 데이터 전송하는 방법을 알아보려고 합니다. 우선 MQTT 테스트를 하기 위해서는 사전준비가 필요합니다. 먼저 MQTT Broker가 있어야 합니다.
간단하게 라즈베리파이 혹은 PC에 설치해서 사용하는 방법이 있는데 이전 글 중에 라즈베리파이에 broker 설치한 내용이 있어 링크 걸어 놓았습니다.
(테스트로 HiveMQ 혹은 test.mosquitto.org 사이트를 이용해 볼 수도 있습니다.)
Broker가 설치한 후, EW11 설정 웹 페이지로 이동합니다. 만약 웹페이지 설정 및 페이지로 들어가는 것을 모른다면 이전 글을 참조하면 됩니다.
1. STA 모드 설정
외부망과 인터넷을 연결하기 위해서 STA모드를 설정합니다.
왼쪽 SYSTEM SETTING 메뉴를 선택합니다.
- WiFi Settings
MQTT 테스트를 위해서 WiFi Mode를 STA로 변경, STA SSID는 가정집 혹은 사무실에서 사용하는 공유기의 SSID를 입력합니다. 정확히 모르겠다면 Scan 버튼을 눌러 나타나는 제품의 SSID를 선택하고, STA KEY에 암호를 입력합니다. 적용하기 위해 하단의 Submit 버튼을 누릅니다.
Scan 해보면 5G대역 공유기는 나타나지 않는 것을 알 수 있습니다.
2. MQTT 환경 설정
COMMUNICATION SETTINGS 메뉴 선택해서 MQTT를 환경설정합니다.
1) 프로토콜 탭 생성
상단의 Add 탭 메뉴를 선택합니다.
2) Basic Settings 설정
Name에 설정할 항목의 이름(Tab에 나타날 이름)을 입력합니다.
Protocol에는 MQTT를 선택합니다. 그러면 하단에 새로운 항목이 나타납니다.
필요에 따라 Tcp Server, Http 등 기타 프로토콜을 변경해서 사용 가능합니다.
3) Socket Settings
Server, Server Port에는 MQTT Broker Server 주소와 포트를 입력합니다. (MQTT 기본 포트는 1883입니다.)
4) Protocol Settings
Protocol Settings 항목에서 MQTT 프로토콜에 필요한 내용을 입력합니다. 테스트를 위해서 기본값을 유지하였고, 사용하고 있는 Broker Server에 맞게 설정합니다.
MQTT Client ID는 장비 구분하기 위한 이름을 입력하고, Broker에 계정 설정이 되어 있다면 MQTT Account, Password를 입력합니다. Ping Period에는 초단위로 입력하고 주고받을 Topic 명을 입력합니다. 그리고 하단에 Submit을 눌러 적용합니다.
5) 저장확인
저장이 완료되면 상단에 탭 하나가 생성됩니다.
3. MQTT 송수신 확인
1) 접속상태 확인
센서 모듈이 MQTT Broker에 접속한 것과 수신여부를 확인하고자 MQTT Explorer 프로그램을 사용했습니다.
MQTT Explorer에서 사용할 Broker에 연결한 후 $SYS->broker->clients 항목을 확인합니다.
EW11 장비의 전원을 켜고, 끄면 active, connected 항목의 숫자가 변하는 것을 확인할 수 있습니다.
2) MQTT 메시지 송신
EW11에서 설정한 MQTT topic으로 MQTT Explorer에서 raw 데이터(abc)를 발행(PUBLISH)합니다.
3) 데이터 수신확인
EW11 설정 웹에서 실제 수신 메시지는 확인할 수 없지만, 수신된 데이터 개수는 확인할 수 있습니다.
STATUS 메뉴를 선택 후 Communication State - 상태를 확인해 보면 raw 데이터로 보낸 3byte(abc)를 받았다는 것을 알 수 있습니다.
4) 485 데이터 MQTT 전송확인
기본 구성은 아래와 같이 MQTT를 이용해서 PC 모니터링하는 것입니다.
가지고 있는 부품으로 하려고 하다 보니 485 데이터를 MQTT로 송신하기 위해서 조금 복잡하게 구성을 했습니다.
PC Serial 프로그램을 센서라고 생각하고, PC에서 RS485 신호를 만들기 위해서 RS232 -> TTL -> RS485 과정을 거치게 했습니다. RS232 to RS485 모듈이 있다면 그것을 사용하면 됩니다.
시리얼 통신(RS232)으로 데이터를 아래의 순서로 전달합니다.
PC(RS232) -> (RS485) -> EW11(모듈) -> (WiFi-MQTT) -> Broker -> PC(MQTT Explorer)
테스트로 PC(RS232)에서 gas123 데이터를 보내면 PC(MQTT Explorer)에 나타나는 것을 확인할 수 있습니다.
위의 내용을 참고로 RS485 데이터를 MQTT 프로토콜을 통해 원하는 곳에 보내 받을 수 있음을 확인하였습니다.
감사합니다.
'IT' 카테고리의 다른 글
BARIX Exstreamer 테스트해보기 (TCP 사용하기) (0) | 2024.06.20 |
---|---|
IRF520 MOSFET 모듈 (12V 전압 제어하기) 사용 후기 (0) | 2024.06.15 |
Eflin-EW11A (RS485 data transfer via Wi-Fi) 제품 확인-1 (제품 및 설정 확인) (2) | 2024.06.11 |
Microsoft sculpt ergonomic keyboard 사용후기 (2) | 2024.06.06 |
Magnetic Helping Hands (회로기판 작업대) 확인해 보기 (0) | 2024.06.01 |