산양 파워 콘 모니터 시스템 개발

⑥ ESP-WROOM-02에 RS485 보드 추가

그런데 ESP-WROOM-02에 RS-485 인터페이스를 설치해, 라이브러리를 사용해, 산요씨의 파와콘과 통신하는 이야기입니다.

걸리기 전의 상황은, 9대의 파워 콘이 SLAVE로 1대의 LCD 패널이 MASTER가 되어 있었습니다. 이 LCD 패널을 내가 만드는 마이크로 컴퓨터로 대체하는 것이 목표입니다.

참고로 한 것은 "https://javatea.adiary.jp/0116」입니다.
amazon에서 구입한 "EasyWordMall MAX485 RS-485 TTL-RS-485 모듈 컨버터"가 비슷한 배선으로 사용할 수 있었습니다.
이때 내 손에 있던 것은 Arduino UNO, 전자 타로 ESP-WROOM-02 개발 보드였습니다.



이 페이지에 쓰여진 대로,
・DI(data in) to pin 11
・RO (receive out) to pin 10
· DE (data enable) and RE (receive enable) jumpered together and to pin 3
· Vcc and Gnd connected

같이 연결했습니다. 여기서 잊지 말아야 할 것이… RS485의 종단 저항입니다.
이 장치는 RS485의 종단에 위치하므로 100 ~ 120Ω의 저항을 신호선 AB 사이에 넣어 둡니다.

Arduino의 라이브러리에서 "MODBUS"를 검색하면 5 개의 라이브러리가 히트합니다.



제가 사용하는 것은 MODBUS RTU MASTER이기 때문에 위에서 3개가 후보가 되었습니다.
다양한 시행 착오의 결과로 ModbusMaster by Doc Walker의 것을 사용했습니다.
( htps //w w. 아 루즈이의 ぃb 라리 s. 니후 / ぃ b 라리 s / 모 d s s r )

⑦ ESP-WROOM-02 프로그래밍
Modbus 통신에서는
· 마스터가 슬레이브에 명령을 발행
· 슬레이브가 마스터에게 명령에 대한 답변을 반환합니다.
반복합니다. 이번에는 슬레이브가 1 ~ 9까지 있기 때문에,
패턴이 3가지 있습니다.
아래 표는 산양 파워 콘의 레지스터 정보입니다.
첫 번째 통신은 레지스터 C000 ~ C002
두 번째 통신은 레지스터 C100 ~ C10F
세 번째 통신은 레지스터 C020 ~ C03F


(이 표는 내가 예상한 것입니다, 참고까지 사용하십시오)
그래프에 원하는 것은, 그 시간에 있어서의 발전량 W와 누적의 발전량 Wh이기 때문에, 지금까지 많은 데이터는 필요하지 않습니다만, 취할 수 있는 데이터는 모두 기록하고 싶어져, 꽤 방대한 데이터가 축적되어 버려 네.
그래프를 기록하는 시간폭은 10분 정도 있으면 하루의 발전량의 변화를 깨끗이 표시할 수 있다고 생각했으므로, 파와콘과의 통신 간격을 10분으로 했더니, 다소 지연이 나와 버려, 11분 후에 기록되어 버리거나해서 곤란하게 되었습니다.
원래 데이터의 취득 시간은 마이크로 컴퓨터 측의 타이머가 아니고, 서버로 데이터가 INSERT되었을 때에 해 버렸기 때문에, 1~9의 데이터의 등록 시간이 각각 어긋나 버리고 있어, 그래프로 할 때에 능숙하지 않다 입니다. 또한 이전 10분 간격
에 잘 쓰이지 않는 데이터가 발생하면 10분간 데이터가 존재하지 않는 곳이 생겨
버립니다. 이것은 향후의 개량점으로서 마이크로컴퓨터쪽으로 10분분의 데이터를 축적해, 10분마다 서버에 POST하도록(듯이) 할까라고 생각하고 있습니다.

이 후에는 타부치씨, 델타씨의 파워 콘에 대해, 그래프의 방법에 대해, 주변을 설명할 수 있으면 좋겠습니다.

좋은 웹페이지 즐겨찾기