[아두이노#470] (ESPNOW#2) ESP8266보드의 센서데이터를 ESPNOW로 단방향으로 전송하는 방법!(녹칸다/포로리야공대가자)
프로그래밍/ESPNOW 2022. 4. 26. 22:50
(ESPNOW#2) ESP8266보드의 센서데이터를 ESPNOW로 단방향으로 전송하는 방법!
녹칸다의 ESPNOW 시리즈이다!
ESP보드는 제조사에서 제공하는 보드끼리 통신하는 프로토콜이 있다!
그것이 바로 ESPNOW이다!
ESP32나 ESP8266보드에 별도의 장치를 추가하지 않더라도 서로 통신이 가능하다!
1:1로 구성할수 있고 1:N으로 구성할수 있고 N:N으로 구성할 수 있고 단방향, 양방향 모두 가능한것 같다!
이번편은 ESP8266보드 2대를 준비해서 한쪽에는 센서를 연결하고 다른쪽에는 센서데이터를 출력할 수 있도록 ESPNOW로 구현해보도록 하자!
센서는 녹칸다가 가지고 있는 것이 매우 많으니 아래 있는 것중 마음에 드는걸로 해보자!
광센서(CDS), 온습도센서(DHT-11), 이산화탄소센서(MH-Z19), 미세먼지센서(PMS7003), 조도센서(GY-30), 온도센서(DS18B20) 등등
여유가 있으면 센서데이터를 수신하는 보드쪽에 OLED나 LCD를 연결해서 값을 시각적으로 출력해보도록 하자!
(실제로한거)
1.컨트롤러에 CDS를 부착하고 측정된 센서값을 슬레이브로 전송해서 시리얼모니터에 출력하시오!

2.온습도센서를 연결해서 ESPNOW로 전송하시오!(구조체로 전송하시오)

3.이산화탄소센서를 연결하고 ESPNOW로 전송하시오!

4.미세먼지센서를 연결해서 ESPNOW로 전송하시오!

5.DS18B20의 측정값을 ESPNOW로 전송하시오!

6.조도센서(BH1750)의 측정값을 ESPNOW로 전송하시오!

7.슬레이브에서 전달받은 조도센서의 측정값을 FND모듈(TM1637)에 출력하시오!

8.컨트롤러에서 슬레이브쪽으로 성공적으로 데이터를 전송했으면 녹색LED를 켜고 실패했으면 빨간LED를 켜도록 하시오!

9.슬레이브에서 성공적으로 데이터를 수신중인 상황이면 녹색LED, 그렇지 않으면 빨간 LED를 켜시오!

관련라이브러리(DHT11/1.3.8)
https://github.com/adafruit/DHT-sensor-library
관련라이브러리(MHZ19B/1.1.1)
https://github.com/strange-v/MHZ19
관련라이브러리(PMS7003/1.1.0)
https://github.com/fu-hsi/pms
관련라이브러리(ds1820/3.9.0)
github.com/milesburton/Arduino-Temperature-Control-Library
www.pjrc.com/teensy/td_libs_OneWire.html
관련라이브러리(BH1750)
https://github.com/claws/BH1750
관련라이브러리(TM1637/1.2.0)
https://github.com/avishorp/TM1637