앞서 Wago의 PLC 제품군이 ID/PW를 open 하면서 컨트롤러에서 PLC 기능 외에 다양한 기능들을 sub로 구현할 수 있게 됨을 알게 되었습니다. 여기서 소개할 내용은 공장 자동화 및 향후 에너지 솔루션을 위해 Raspberry PI를 통해 DB서버를 구축하고 Grafana를 통해 모니터링 할 수 있는 방법 그리고 휴대폰에서 접속하여 확인할 수 있는 방법까지 소개할 예정입니다.
개략도는 아래와 같습니다.
통신 프로토콜 별로 나눠서 설명을 하자면,
1. Wago의 MID 센서와 MODBUS RTU
https://www.wago.com/global/energy-measurement-technology/energy-meter-mid24/p/879-3000#details
MID 센서에 관련된 내용은 상기 링크를 확인해주세요.
MID 센서는 AC 단상, 3상 사용중인 전력양에 대한 데이터를 MODBUS RTU 로 상위에 전달해줍니다.
굳이 MID 센서를 사용한 이유는 아래와 같습니다.
2. 허브를 통해 다른 PLC에서 데이터를 가져갈 수 있도록 구성
기존 현장에서 시스템이 꾸려진 경우 일부 데이터를 취득하여 모니터링이 가능하도록 구성했습니다.
Wago PLC는 EtherCAT master, Modbus, EtherNET/IP, CANopen 등 다양한 산업용 통신 프로토콜을 지원하고 있습니다.
https://www.wago.com/global/plcs-%E2%80%93-controllers/compact-controller-100/p/751-9401#details
CC100 컨트롤러에 관련된 상세 내용은 상기 링크를 확인해 주세요.
CC100 컨트롤러는 앞서 다른 글에서 소개한 Codesys 3.5를 탑재한 PLC입니다.
다음으로 Raspberry PI 와 CC100 구성입니다.
Raspberry PI는 docker를 통해 다음과 같은 Container 들을 설치 할 예정입니다.
1. Node-red : CC100 에서 획득한 데이터를 통신으로 받고 InfluxDB 에 전달하는 용도로 사용됩니다.
2. Influx DB : 센서 데이터를 축적하는 DB로 사용할 예정입니다.
InfluxDB는 시계열 데이터 (시간에 따라 축적해야 되는 데이터) 를 쌓기에 편리한 DB 입니다.
3. Grafana : InfluxDB 에 쌓인 데이터를 보여주기에 편리한 GUI를 구축하는 용도 입니다.
4. Portainer : docker 관리를 시각화 할 수 있어서 처음 접하는 유저들에게 쉽게 접근할 수 있도록 해 줍니다.
CC100은 Codesys를 통해 Modbus TCP 통신으로 Raspberry PI와 통신이 가능하며, MQTT 도 사용 가능합니다.
또한 CC100 자체적으로 node-red를 설치하여 MID센서와 직접 Modbus RTU 통신을 하며 데이터를 취득하고 전달 할 수도 있습니다. 통신방식은 아직 정하진 않았지만 순차적으로 다 소개하는 편으로 생각하고 있습니다.
저는 데이터 쌓는 서버의 용도로 Raspberry PI 를 사용하였지만 사실 현장에 사용하기에 적합하지는 않죠, 다만 테스트 및 구현의 용도로 사용하는 것이니 이 점 참고하시면 좋을 것 같습니다. 더불어 지금 사용하는 Raspberry PI를 Cloud로 바꾸게 되면 sensor 데이터를 Cloud까지 올릴 수 있게 됩니다. ( Cloud로 사용하지 않는 이유는 비용 때문입니다. )
다음으로 통신 부분입니다.
Raspberry PI 는 회사 내 ipTime 에 무선으로 연결되어 있고, ipTime 은 다시 무선으로 공유기에 붙어 있습니다.
휴대폰을 통해 공유기 사설 IP에 접속하여 port fowarding을 통해 Raspberry PI에 있는 Grafana에 접속하여 센서 데이터를 모니터링 할 예정입니다.
위와 같은 구성은 보안에 대한 부분은 전혀 고려하지 않고 단순 테스트 목적으로 진행하였습니다.
이 점 참고해 주시면 감사하겠습니다.
다음 글에서 구현 방법에 대해 소개하도록 하겠습니다.
[Raspberry PI] Sensor to DB #5 Docker 설치 (0) | 2025.09.15 |
---|---|
[Raspberry PI] Sensor to DB #4 Pi Connect, SSH 연결 (0) | 2025.09.15 |
[Raspberry PI] Sensor to DB #3 Raspberry Pi Network, 한글폰트 (0) | 2025.09.15 |
[Raspberry PI] Sensor to DB #2 Raspberry Pi OS 설치 (0) | 2025.09.12 |