[아두이노#255] (#2/광센서/온습도/이산화탄소/센서) nRF24L01을 이용한 1:1 양방향 무선통신 원격제어 시리즈!(녹칸다/포로리야공대가자)
프로그래밍/nRF24L01 2021. 4. 21. 00:20
(#2/광센서/온습도/이산화탄소/센서) nRF24L01을 이용한 1:1 양방향 무선통신 원격제어 시리즈!(녹칸다/포로리야공대가자)
-RF무선통신 모듈중 가장 저렴한 nRF24L01을 이용한 원격제어 시리즈로 구성한다!
-큰 범주로 1:1단방향, 1:1양방향, 1:N단방향, 1:N양방향, N:N단방향, N:N양방향이 있다!(어디까지 할지는 모름)
-이번 시리즈는 nRF24L01을 이용한 1:1양방향 무선통신으로 2대의 아두이노가 데이터를 주고받는 것을 목표로 한다!
-상황에 따라 트랜스미터(송신기)와 리시버(수신기)의 역할이 전환되므로 송신기/수신기로 부르기는 안맞는것 같다!
-개념상 마스터와 슬레이브로 인지하는게 더 좋을 것 같다!
-nRF24L01모듈이 달린 2개의 아두이노보드를 각각 A와 B라고하자!
-A를 마스터로 설정하고 B를 슬레이브로 설정한다!
-(예제1) A에서 B에 연결된 광센서(CDS)의 값을 요청하고 결과를 시리얼모니터에 출력해보자!
-(예제2) A에 버튼과 FND모듈(TM1637)을 연결하고 버튼을 누르면 B에 광센서값을 요청한다음 A의 FND모듈에 그 결과를 양방향 통신으로 출력해보라!
-(예제3) A에서 B에 연결된 온습도센서(DHT11)의 값을 요청하고 결과를 시리얼모니터에 출력해보자!
-(예제4) A에 버튼과 FND모듈(TM1637)을 연결하고 버튼을 누르면 B에 온습도값을 요청한다음 A의 FND모듈에 그 결과를 양방향 통신으로 출력해보라!
-(예제5) A에서 B에 연결된 이산화탄소센서(MHZ19B)의 값을 요청하고 결과를 시리얼모니터에 출력해보자!
-(예제6) A에 버튼과 FND모듈(TM1637)을 연결하고 버튼을 누르면 B에 이산화탄소값을 요청한다음 A의 FND모듈에 그 결과를 양방향 통신으로 출력해보라!
관련라이브러리(nRF24L01)
관련라이브러리(DHT11)
https://github.com/adafruit/DHT-sensor-library
관련라이브러리(MHZ19B)
https://github.com/strange-v/MHZ19
관련라이브러리(TM1637)