[C#윈폼144] (HttpListener#2/센서데이터 수집 및 기록) 웹서버와 사물인터넷(IoT) 보드(ESP8266) 데이터베이스(MYSQL) 연동시리즈!(녹칸다/포로리야공대가자)
프로그래밍/C# HttpListener 2021. 5. 11. 22:28
(HttpListener#2/센서데이터 수집 및 기록) 웹서버와 사물인터넷(IoT) 보드(ESP8266) 데이터베이스(MYSQL) 연동시리즈!
-이번 시리즈는 C#윈폼과 사물인터넷보드(Wemos d1r1/ESP8266) 사이의 상호작용에 관련된 것이다!
-때때로 IoT보드를 사용해보면 외부의 조력이 필요한 경우가 있다!
-특정한 상황에서 의사결정을 지원해줄 모니터링 서버라던지 데이터를 저장해줄 DB가 필요할때가 있다!
-C#윈폼에 HttpListener를 이용해서 웹서버를 작동시키고 사물인터넷보드를 지원해주는 API를 구현해보고자 한다!
-이때 C#윈폼은 웹서버(WebServer)가 되는 것이고 사물인터넷보드는 웹클라이언트(WebClient)가 되는 것이다!
-사물인터넷보드가 필요한 내용을 Request하면 C#윈폼은 결과를 Response해주는 API같은 형태인 것이다!
-HttpListener시리즈는 다양한 개념이 연계되어야 하기 때문에 만만치 않을 것이다!
-2편에서는 센서데이터 수집 및 기록이라는 컨셉으로 예제를 구현해보자!
-C#윈폼에서 돌고있는 웹서버 쪽으로 사물인터넷보드에서 생산된 정보를 전송해보는 예제이다!
-1. 사물인터넷보드에 광센서(CDS)를 연결하고 C#윈폼으로 전송해서 모니터링 해보기!
-2. 사물인터넷보드에 온습도센서(DHT11)를 연결하고 C#윈폼으로 전송해서 모니터링 해보기!
-3. 사물인터넷보드에 이산화탄소센서(MH-Z19B)를 연결하고 C#윈폼으로 전송해서 모니터링 해보기!
-4. (1~3)의 결과를 데이터베이스(MYSQL)에 저장해보기!
-5. 사물인터넷보드가 웹서버에 데이터를 성공적으로 업로드 했으면 녹색LED를 켜고 실패했으면 적색 LED를 켜보도록 해보자!
(C#프로젝트, 업로드 용량문제로 MYSQL부분은 빼고 압축함!)
(사물인터넷보드용 코드)
(광센서CDS)


(온습도DHT11)


(이산화탄소MHZ19B)


ESP8266개발환경세팅(#132)
관련라이브러리(DHT11)
https://github.com/adafruit/DHT-sensor-library
관련라이브러리(MHZ19B)


