[BLE 실내 측위 프로젝트] 7. NRF51822 비콘 테스트 및 초기 설정
·
💡Project/✅ BLE Indoor Positioning
드디어 알리에서 구매한 NRF51822 BLE4.2 비콘이 도착했다. 개당 6000원에 배터리 4개 정도 해서 3만 원 정도에 구매했다. 다음 글로 삼변측량에 대해 포스팅할 예정이지만, 비콘으로 실내 측위를 위해선 최소 3개의 비콘이 필요하다.조립은 간단하다 배터리 장착 후 나사 3개만 조여주면 된다.beacon 구매 후 beacon을 초기 설정할 필요가 있다. 설정 방법은 제작사에서 제공하는 Holyiot-beacon을 설치하면 된다.우선, 하나의 비콘만 동작 중이며 다운로드한 앱을 실행할 경우 아래와 같이 화면에 표시된다.비콘의 연결을 위해선 최초의 비밀번호를 요구한다. 내가 구매한 비콘의 경우 초기 비밀번호는 aa14061112 이다.비콘을 연결하고 나면, password, major, minor,..
[BLE 실내 측위 프로젝트] 6. RSSI 변동을 해결하기 위한 이동 평균 필터
·
💡Project/✅ BLE Indoor Positioning
BLE RSSI의 문제점은 위 그림과 같다.4.5m 이상에서는 제대로 된 거리를 계산할 수 없음. (나중에는 통신 거리가 더 길어진 BLE5.0에 대해 알아볼 예정)실제 환경에서는 많은 외부 요인으로 인해 RSSI 변동이 발생해 거리의 오차가 발생함.📌 1. 이동 평균 필터RSSI 변동을 해결하기 위한 방법은 여러 가지가 있는데 그 중 가장 간단한 이동평균 필터이다.원리는 간단하다. 하나의 윈도우 사이즈만큼 그룹을 묶는다.그룹의 평균 값을 대푯값으로 잡는다.한 칸씩 이동한다. (Convolution 1D와 같은 원리)이 간단한 방법으로 스무딩 효과를 낼 수 있다. RSSI 값이 확 튀었을 때 이를 완화시켜주는 효과를 낸다. 당연히 단점도 존재한다.  delay가 발생한다. 윈도우 사이즈만큼 평균 내기 ..
[BLE 실내 측위 프로젝트] 5. BLE Beacon의 RSSI 값에서 거리를 계산하는 방법 (feat.log distance path los
·
💡Project/✅ BLE Indoor Positioning
📈 1. Log distance path loss modelRSSI는 수신 신호 강도 표시기를 나타낸다. 스마트폰과 같은 수신 장치에서 볼 수 있는 비콘의 신호 강도이다. 신호 강도는 거리와 전송 세기에 따라 다르다. RSSI를 이용하여 거리를 구하는 식은 아래와 같다.d : distance(거리)n : 보정 상수 (2~4: 보통 2를 사용)α : 1m에서 측정된 RSSIRSSI : 측정된 현재 RSSI🔗 2. Codeimport "dart:math";void main() { int n = 2; // constant N int alpha = -63; // rssi at 1m int rssi = -80; // measured rssi num m = pow(10.0,((alph..
[BLE 실내 측위 프로젝트] 4. BLE advertising packet 기본 구성
·
💡Project/✅ BLE Indoor Positioning
📌 1. BLE Packet BLE의 패킷 타입은 두 가지가 있다. Advertising channl PDUs : 기기 감지 및 브로드캐스팅Data channel PDUs : 데이터 전송용​실내 측위에서는 데이터 전송이 따로 필요 없으므로 Advertising channel PDUs에 대해서만 언급한다.​ Packet types은 아래 테이블과 같다. 보통 비콘의 타입은 ADV_IND가 일반적이다. 특정 중앙 장치를 특정하지 않고 모든 주변 기기와 연결할 수 있다.Payload는 최대 37바이트 중에서 6바이트는 Advertisement Address, 나머지 0 ~ 31바이트는 Advertisement Data이다.BLE 비콘에는 각 제조사에 따라 다양한 패킷 포맷을 가진다. 그중 가장 유명한 것이 ..
[BLE 실내 측위 프로젝트] 3. Flutter BLE Scan Demo Program, RSSI monitoring
·
💡Project/✅ BLE Indoor Positioning
하이제니스 님의 포스팅에 포함된 코드를 일부 수정하였습니다.https://blog.naver.com/chandong83/222414483554BLE 통신 스케줄 및 안드로이드 동작에 관한 포스팅을 보고 와야 어느 정도 이해하기 편하다.📌  ​1.  패키지 설치 및 설정flutter_blue 대신 flutter_blue_plus 패키지를 설치한다.flutter_blue는 더 이상 업데이트하지 않고 안드로이드 12 권한 이슈가 있으므로, flutter_blue_plus를 설치한다.$ flutter pub add flutter_blue_plus설치하게 되면 알아서 dependecies가 추가된다.⚙️ 1. android/app/build.gradle : SDK 최소 버전 19로 설정Android { def..
[BLE 실내 측위 프로젝트] 2. Bluetooth Low Energy(BLE) 통신 스케줄, 안드로이드 함께 이해하기
·
💡Project/✅ BLE Indoor Positioning
BLE 통신을 하기 전에 통신 스케줄에 대해 이해하고 가면 좋다. BLE의 물리 계층 먼저 간단하게 짚고 간다. BLE는 2.4GHz 대역을 사용하며, (2.402 GHz ~ 2.4835 GHz) : 2 MHz 간격으로 40개 채널로 구성된다. Advertising 채널은 37, 38, 39 (2402 MHz, 2426 MHz, 2480 MHz)를, Adaptive Frequency Hopping 방식을 사용한다.📌 실내 측위 (Indoor Positioning)Advertiser은 송신부, Scanner는 수신부라고 생각하면 편하다. 실내 측위 프로젝트는 따로 기기 간 연결을 필요로 하지 않고, Device discovery 모드만 사용한다. 실내 측위에 간략히 설명하자면, Advertiser가 모든..
[BLE 실내 측위 프로젝트] 1. Flutter_blue 설정 (feat.안드로이드12 권한 이슈)
·
💡Project/✅ BLE Indoor Positioning
개인 프로젝트인 BLE 실내 측위 첫 글이다. 우선, flutter에서 ble 관련 패키지를 설치한다. 대표적으로 ble 관련 패키지는 3개가 있다. flutter_ble_libflutter_reactive_bleflutter_blueflutter_ble_lib는 업데이트가 느려, 2번과 3번 중 골라야 하는데, 오늘 자 기준으로 flutter_blue가 최신 버전이 있어 flutter_blue를 사용한다. flutter 패키지는 pub.dev에서 설치할 수 있다. 혹은 아래 명령어를 통해 설치할 수 있다.$ flutter pub add flutter_blue설치하게 되면 자동적으로 pubspec.yaml 파일의 dependecies에 추가된다.  하지만, flutter_blue의 경우 안드로이드 12에..
[무선 통신] Dependency between RSSI and Distance - BLE
·
통신
Dependency between RSSI and Distance - BLE vctec.co.kr/product/nrf52832-%EC%95%84%EB%91%90%EC%9D%B4%EB%85%B8-%ED%98%B8%ED%99%98-ble-%ED%94%BC%EB%8D%94-%EB%B3%B4%EB%93%9C-adafruit-feather-nrf52-bluefruit-le-nrf5283/11424/ nRF52832 아두이노 호환 BLE 피더 보드 (Adafruit Feather nRF52 Bluefruit LE - nRF52832) 상품결제정보 결제는 신용카드, 실시간 계좌이체, 무통장 입금 등을 선택하여 진행하실 수 있습니다. 세금계산서 발행을 요청하실 경우에는 결제방법을 무통장 입금으로 선택하시고 사업자등 ..
[무선 통신] Bluetooth Low Energy(BLE) 1. Physical Layer
·
통신
microchipdeveloper.com/wireless:start Wireless Communications - Developer Help Microchip offers a broad portfolio of wireless solutions which are cost effective and very easy to implement. Depending on your application requirements, you can choose the product that fits your needs from our various transmitters, receivers, transceivers microchipdeveloper.com 위 IEEE Develope Document를 통해 스터디를 하며, 개..
[무선 통신] 실내 측위를 위한 삼변측량
·
통신
안녕하세요. Bluetooth Low Energy를 이용해 실내 측위에 대해 알아보겠습니다. 실내에 iBeacon 4개가 설치되어 있습니다. iBeacon는 Advertise의 Payload가 30bytes입니다. (일반 ble는 31bytes) Payload에는 Tx Power(송신 세기 : dBm), RSSI(수신 세기 : dBm)이 있습니다. Tx Power와 RSSI가 있으면 Advertise와 Scanner 사이의 Distance를 구할 수 있습니다. Distance[m] = 10 ^ ( (Tx Power – RSSI) / (10 * N) ) (N = 보정 상수) 최소 세 개 정도의 Distance를 구할 수 있다면, 실내 좌표를 구할 수 있다는 것이 Trilateration(삼변 측량)입니다...
18진수
'BLE' 태그의 글 목록