반응형

https://youtu.be/_P324PKZirc

(ESPNOW#7) 메시네트워크에서 여러개의 노드가 종단점으로 데이터를 업로드 방법!
녹칸다의 ESPNOW 시리즈이다!
ESP보드는 제조사에서 제공하는 보드끼리 통신하는 프로토콜이 있다!
그것이 바로 ESPNOW이다!

ESP32나 ESP8266보드에 별도의 장치를 추가하지 않더라도 서로 통신이 가능하다!
1:1로 구성할수 있고 1:N으로 구성할수 있고 N:N으로 구성할 수 있고 단방향, 양방향 모두 가능한것 같다!

이번편은 #6에서와 동일하게 ESPNOW mesh network를 구성하고 새로운 개념을 집어넣어보도록 하자!
ESP8266보드 6대를 이용하는 아주 고난이도의 예제이다!
보드를 순서대로 A,B,C,D,E,F라고 이름을 붙혀보자!
 ↗ⓑ→ⓓ↘
ⓐ  ×  ⓕ
 ↘ⓒ→ⓔ↗
A는 B와C에게 전송한다!
B는 D와 E에게 전송한다!
C는 D와 E에게 전송한다!
D는 F에게 전송한다!
E는 F에게 전송한다!

여기서 시나리오는 A에서 생산된 정보를 F까지 전달하는게 목적이었다!
그러나 B, C, D, E 노드는 과연 데이터를 전달해주는 역할만 해야겠는가?
데이터를 중계해주는 중계노드로 활용하면서 자기자신도 센서데이터를 전달할 수는 없는가?

A에서 정보가 B쪽으로 넘어오면 다음으로 넘겨주되 자기자신의 센서데이터도 다음으로 넘겨주게 된다면 이러한 문제는 간단히 해결될 것 같다!
(사실 녹칸다 생각에는 ESPNOW를 활용할때 이런 전략이 바람직할 것 같다)

아주 큰 면적을 ESPNOW 메시네트웍으로 커버한다고 하면 센서데이터를 담당하는 전용보드와 중계만 담당하는 노드로 명확히 구분되기 보다는, 중계기이면서 센서데이터를 넘겨야하는 형태가 대부분일 것이라 예상한다!

 

(실제로한거)

1.보드 A,B,C 3개를 준비하고 A에서 B로 B에서 C로 데이터를 옮긴다! 이때 A와 B에 센서가 둘다 연결되어있을때 C에게 센서데이터를 수집할 수 있도록하시오(476편예제를 수정해서 활용하시오)

 

481-1-1(1번보드).txt
0.00MB
481-1-2(2번보드).txt
0.00MB
481-1-3(3번보드).txt
0.00MB

2.A,B,C,D 보드 4개를 준비하고 A에서 B로 B에서 C로 C에서 D로 데이터를 전달하고 최종적으로 D에서 데이터를 출력하시오!

481-2-1(1번보드).txt
0.00MB
481-2-2(2번보드).txt
0.00MB
481-2-3(3번보드).txt
0.00MB
481-2-4(4번보드).txt
0.00MB

3.(2)번예제에서 만든 구조체가 온습도센서만 업로드한다고 가정하고 수정해보시오!

481-3-1(보드1번).txt
0.00MB
481-3-2(보드2번).txt
0.00MB
481-3-3(보드3번).txt
0.00MB
481-3-4(보드4번).txt
0.00MB

4.6개의 보드를 활용해서 소규모 메시네트워크를 구성하고 모든 노드가 가상의 온습도센서가 있다고 할때 센서데이터를 가장 끝에 있는 노드에게 전송해서 출력시키시오!

481-4-1(보드1번).txt
0.00MB
481-4-2(보드2번).txt
0.00MB
481-4-3(보드3번).txt
0.00MB
481-4-4(보드4번).txt
0.00MB
481-4-5(보드5번).txt
0.00MB
481-4-6(보드6번).txt
0.00MB

5.메시네트웍에 모든 노드가 불행하게도 업로드하는 주기가 동기화가 되어버린다면 네트워크가 아주 busy해진다! 약간 서로 어긋나게 전송하려면 어떤 전략을 쓸건가?

481-5-1.txt
0.00MB
481-5-2.txt
0.00MB
481-5-3.txt
0.00MB
481-5-4.txt
0.00MB
481-5-5.txt
0.00MB
481-5-6.txt
0.00MB

6.노드가 다른노드에게 데이터를 전송할때 자신에게 등록된 peer리스트중에 랜덤하게 하나를 선택해서 전송하시오!(기본원리)

481-6(7번예제를위한기본원리).txt
0.00MB

7.(6)예제를 완전체로 구현하시오!

481-7-1.txt
0.00MB
481-7-2.txt
0.00MB
481-7-3.txt
0.00MB
481-7-4.txt
0.00MB
481-7-5.txt
0.00MB
481-7-6.txt
0.00MB

반응형
Posted by 덕력킹
,