[C#윈폼75] 아두이노와 RS485toUSB로 1:N통신 2편! 온습도(DHT11) 미세먼지(GP2Y10) 가스센서(MQ6) 제어해보기!(녹칸다/포로리야공대가자)
프로그래밍/RS485모드버스(modbus) 2021. 1. 27. 00:36
아두이노와 RS485toUSB로 1:N통신 2편! 온습도(DHT11) 미세먼지(GP2Y10) 가스센서(MQ6) 제어해보기!
-아두이노끼리 RS485통신으로 1:N통신을 구현한 예제는 마무리 하고 시즌2로 넘어가는 예제이다!
-이번편의 메인테마는 C#을 이용해서 RS485를 활용할 수 있는 GUI를 winform으로 구현하고 제어를 하거나 모니터링 해보는 것이다!
-기본에 어떤 방식으로 제어하는지는 모르겠고 녹칸다의 개인적인?방식으로 츄라이를 해보는 예제이다!
-rs485를 usb로 변환해주는 아주 저렴하면서 좋은 제품이 있다!(USB to RS485 혹은 RS485 to USB 검색!)
-PC에 모듈을 연결하고 아두이노 3대를 준비해서 각각 RS485모듈을 하나씩 달아준다!
-그러면 PC와 아두이노 3대가 서로 데이터를 주고 받을 수 있는 상태가 될 것이다!
-데이터는 Request & Response 방식으로 구현해볼 생각이다! 그리고 슬레이브가 온라인인지 오프라인인지도 체크해보자!
-아두이노 3대를 각각 A, B, C라고 해보자!
-A에는 온습도센서(DHT11)을 연결하고 B에는 미세먼지센서(GP2Y10)을 연결하고 C에는 가스센서(MQ6)를 연결한다!
-winform에서 A,B,C에게 데이터를 요청하고 반환되는 값을 적절한 컨트롤을 이용해서 출력하고 결과를 CSV로 저장할 수 있도록 해보자!
C#예제 75-1 (온습도센서용 코드)
아두이노에 온습도센서를 D4에 연결했다!
온습도센서의 결과를 윈폼으로 RS485를 이용해서 전송해보자!
C#예제 75-2 (미세먼지센서용 코드)
아두이노에 미세먼지센서를 아날로그핀을 A0에 디지털핀을 D4에 연결했다!
미세먼지센서의 결과를 윈폼으로 RS485를 이용해서 전송해보자!
C#예제 75-3 (LPG가스센서용 코드)
아두이노에 MQ-6를 A0에 연결했다!
가스센서의 결과를 윈폼으로 RS485를 이용해서 전송해보자!
USB to RS485 드라이버
http://www.wch.cn/download/CH341SER_EXE.html
C#레퍼런스강의(#74-1)
아두이노레퍼런스강의(#124)
미세먼지센서러퍼런스강의(#36-1)
관련라이브러리(MQsensors)
https://github.com/miguel5612/MQSensorsLib
관련라이브러리(DHT11)