Город МОСКОВСКИЙ
02:22:17

[아두이노#562] ESP32의 BLE를 이용해서 iBeacon으로 작동시켜보고, 주변 iBeacon을 검색해서 거리 측정해보기!(녹칸다ESP32#12)

Аватар
Кotlin Ревью
Просмотры:
52
Дата загрузки:
02.12.2023 02:00
Длительность:
02:22:17
Категория:
Обучение

Описание

https://bota.tistory.com/2171
[아두이노#562] ESP32의 BLE를 이용해서 iBeacon으로 작동시켜보고, 주변 iBeacon을 검색해서 거리 측정해보기!(녹칸다ESP32#12)

녹칸다의 ESP32시리즈이다!
제목 그대로 과거의 녹칸다는 IoT보드로 ESP8266보드만 활용했다!
ESP32에 대한 수요도 늘어나는것 같고 제일 중요한 것은 지금의 녹칸다가 ESP32보드가 필요하게 되었다!
ESP8266으로 만들어진 예제들을 ESP32버전으로 바꾸는게 주요 주제라고 할 수 있다!
그와 동시에 약간의 설명도 첨가해서 이것저것 예제를 만들어보도록 하자!
(ESP8266과 ESP32의 차이점을 강조해서 진행해보도록함!)
(근데 거의 80~90%는 거기서 거기인듯!)

(참고자료1 ESP32핀맵)
https://docs.espressif.com/projects/esp-idf/en/latest/esp32/hw-reference/esp32/user-guide-devkitm-1.html
(참고자료2 INPUT_PULLUP가능핀)
불가능 34,35,2,36,39
가능 32, 33,25,26,14,27,12,13,22,23,19,21,5,18,16,17,4,15
(참고자료3 ESP32의 I2C핀)
SDA : 21
SCL : 22
(참고자료4 ESP32의 SPI핀)
SCK : 18
MOSI : 23
MISO : 19
CS : 5
(참고자료5 ESP32의 Serial핀)
RX : 16
TX : 17

(참고자료6 녹칸다의 BLE로 거리를 측정하는 공식)
pow(10,((TXPOWER-RSSI)/20.0));

이번편은 ESP32의 BLE를 활용해보도록 하자!
BLE는 기존 블루투스 통신이라고 하는 bluetooth classic(2.0)과는 사뭇 다른 개념이다!
BLE로 CLASSIC처럼 1:1 통신을 할 수 있긴 하지만 그것은 다른 대안이 있으므로 생략한다!

2.0에서 할 수 없고 BLE에서만 할 수 있는 기능을 살펴보는 것이다!
먼저 애플에서 iBeacon이라는 개념을 과거에 만들어 냈다!(애플에서 한건지 원래있는건지는 확인 필요)

스마트폰에 BLE가 장착되고 주변 비콘과 통신을해서 뭔가 새로운 서비스를 만들어 내려고 했기 때문이다!
BLE의 핵심은 연결을 하지 않고 통신을 하는데 있다!

지금 ESP32로 아래 2가지 형태로 작동시키는게 가능하다!
1.ESP32가 iBeacon이 되어서 스마트폰에 의해서 검색이 된다!(ESP32에 특정한 값을 입력하는게 가능함)
2.ESP32가 스마트폰 역할을 하며 주변에 있는 iBeacon을 검색한다!

1번과 같은 경우 ESP32가 어떻게 하면 스마트폰에 값을 전송해줄것인가가 핵심이다!
그러나 스마트폰이 BLE로 데이터를 받아서 시각화할만한 앱을 직접 구현하기가 어려우므로 가볍게만 해보자!

2번과 같은 경우 ESP32가 주변 비콘을 검색할 수 있고 비콘이 보내는 각종 정보를 수신할 수 있다!
이때 비콘이 무선신호를 송신하는 송신파워인 TXPOWER값과 ESP32가 수신할때 수신파워인 RSSI값을 이용하면 거리를 측정가능하다!

거리를 측정가능하다는 것은 하나의 연구주제이고 무선신호의 강도로 거리를 "예측"하는 것이다!
이것으로 정확한 거리가 몇cm이다 이런것은 평가가 불가능하겠지만 가까이 있다 멀리있다 정도는 알 수 있다!

오늘 녹칸다의 주제는 비콘과의 거리를 이용해서 다양한 응용서비스를 나름대로 만들어 보는 것이다!
그리고 향후 ESP32가 3개 이상의 비콘과 통신하면서 거리를 측정하게 된다면 실내 위치측위(실내GPS)로 개념을 확장 할 수 있다!
(이것은 많은 실험과 연구가 필요하다)

Рекомендуемые видео