[C#윈폼147] (HttpListener#5/센서데이터 수집 및 기록2) 웹서버와 사물인터넷(IoT) 보드(ESP8266) 데이터베이스(MYSQL) 연동시리즈!(녹칸다/포로리야)
프로그래밍/C# HttpListener 2021. 5. 17. 22:15
(HttpListener#5/센서데이터 수집 및 기록2) 웹서버와 사물인터넷(IoT) 보드(ESP8266) 데이터베이스(MYSQL) 연동시리즈!
-이번 시리즈는 C#윈폼과 사물인터넷보드(Wemos d1r1/ESP8266) 사이의 상호작용에 관련된 것이다!
-때때로 IoT보드를 사용해보면 외부의 조력이 필요한 경우가 있다!
-특정한 상황에서 의사결정을 지원해줄 모니터링 서버라던지 데이터를 저장해줄 DB가 필요할때가 있다!
-C#윈폼에 HttpListener를 이용해서 웹서버를 작동시키고 사물인터넷보드를 지원해주는 API를 구현해보고자 한다!
-이때 C#윈폼은 웹서버(WebServer)가 되는 것이고 사물인터넷보드는 웹클라이언트(WebClient)가 되는 것이다!
-사물인터넷보드가 필요한 내용을 Request하면 C#윈폼은 결과를 Response해주는 API같은 형태인 것이다!
-HttpListener시리즈는 다양한 개념이 연계되어야 하기 때문에 만만치 않을 것이다!
-5편에서는 2편에서 진행했던 센서데이터 수집 및 기록 예제를 버전업 해보도록 한다!
-2편에서 진행된 예제는 아래와 같다!
-1. 사물인터넷보드에 광센서(CDS)를 연결하고 C#윈폼으로 전송해서 모니터링 해보기!
-2. 사물인터넷보드에 온습도센서(DHT11)를 연결하고 C#윈폼으로 전송해서 모니터링 해보기!
-3. 사물인터넷보드에 이산화탄소센서(MH-Z19B)를 연결하고 C#윈폼으로 전송해서 모니터링 해보기!
-4. (1~3)의 결과를 데이터베이스(MYSQL)에 저장해보기!
-5. 사물인터넷보드가 웹서버에 데이터를 성공적으로 업로드 했으면 녹색LED를 켜고 실패했으면 적색 LED를 켜보도록 해보자!
-일단 2편에서 진행했던 내용을 그대로 복구한다!
-5편에서는 C#윈폼으로 구현한 웹클라이언트가 서버에 달라붙는것을 목표로 해본다!
-2편에서 진행된 예제는 IoT장비에서 쏜 데이터를 C#윈폼 웹서버에 기록하고 스마트폰으로 확인하는 것이었다!
-C#윈폼 웹클라이언트가 접속하면 DB에 기록된 데이터를 일부 추출해서 서버에서 클라이언트로 보내주는 것으로 해보자!
-C#윈폼으로 구현한 앱이 2개가 되는데 C#끼리 웹서버, 웹클라이언트 통신이라고 보면 될 것 같다!
-월요일이라 좀 널널하게 한다는 느낌도 있고 여러종류의 웹클라이언트가 붙을 수 있다는 것을 보여주고자 한다!
(C#프로젝트-웹서버)
(C#프로젝트-웹클라이언트 3종세트)
(사물인터넷보드용 코드)
(HttpListener 2편)