- BLE 및 Bluetooth 비콘이란 무엇입니까?
- BLE 기술은 어떻게 작동하고 비콘과 함께 사용됩니까?
- Eddystone 비콘은 무엇입니까?
- 요구 사항
- Eddystone Beacon 용 Raspberry Pi 설정
- Tx 전력을 보정하여 전송 신호 전력 최적화
- Eddystone 블루투스 비콘의 응용
Bluetooth는 데이터를 무선으로 전송하고, 다른 장치를 제어하고, 홈 자동화 시스템을 구축하는 등의 혁신적인 기술 중 하나입니다. 그러나 Bluetooth를 사용하여 주변 장치에 정보를 브로드 캐스트하여 중요한 정보를 쉽게 표시 할 수 있다는 사실에 대해 궁금한 적이 있으십니까? 체크 아웃 등. Google에서 개발 한 프로토콜이 있으며이 작업을 수행 하기 위해 Raspberry Pi에 쉽게 배포하여 Bluetooth Beacon 브로드 캐스터로 만들 수 있습니다.
이 튜토리얼에서는 BLE (Bluetooth Low Energy) 및 Bluetooth 비콘 에 대해 알아보고 URL을 브로드 캐스트하기 위해 Raspberry Pi 에 Eddystone Bluetooth 비콘을 설치합니다. Bluetooth가 내장되어 있기 때문에 Raspberry Pi를 Bluetooth Beacon으로 변환하기가 매우 쉽습니다.
BLE 및 Bluetooth 비콘이란 무엇입니까?
블루투스 로우 에너지는 이름 고전 블루투스에 비해 소비하는 적은 전력을 나타냅니다한다. 사전 정의 된 주기적 업데이트를 통해 필요할 때 데이터를 전송함으로써 가능합니다. 그러나 클래식 Bluetooth와 달리 파일 또는 음악을 전송하는 데 사용되지 않습니다. BLE 장치는 Bluetooth V4.0과 함께 작동하며 저전력으로 서버 또는 클라이언트로 작동 할 수 있으므로 BLE를 비콘, 스마트 시계, 피트니스 밴드 등에 이상적인 선택으로 만들 수 있습니다. 반면에 클래식 Bluetooth는 단순한 단순 구형입니다. 파일 및 기타 데이터를 전송하는 데 사용하는 Bluetooth 프로토콜. 거의 모든 BLE 장치에는 이와 관련된 클래식 Bluetooth 기능이 있습니다. 이전에 ESP32로 BLE에 대해 자세히 설명했습니다.
![]()
블루투스 비콘:
비콘은 근처의 전자 장치에 일부 메시지를 브로드 캐스트 하고 브로드 캐스터 로 작동하는 하드웨어 장치입니다. 이 기술을 사용하면 휴대용 장치가 비콘 장치에 가까이있을 때 일부 작업을 수행 할 수 있습니다. 이제 BLE 및 클래식 Bluetooth를 사용하여 비콘을 구현할 수 있습니다. 대부분의 스마트 폰 및 기타 전자 장치는 BLE와 호환되며 비콘 수신기 로 사용할 수 있으므로 BLE 비콘을 구현하면 기존의 Bluetooth 비콘과 비교하여 전력 소비를 줄이는 것이 더 효율적입니다.
평균적으로 Bluetooth 저에너지 비콘은 BLE 신호를 80 미터 까지 전송할 수 있습니다 .
BLE 기술은 어떻게 작동하고 비콘과 함께 사용됩니까?
BLE는 근거리 통신을 위해 설계된 저전력 소비 기술이며 높은 데이터 전송률보다 배터리 수명이 더 중요한 요소에 선호됩니다. 이 통신의 데이터 전송은 단방향입니다. BLE 비콘은 일정한 시간 간격으로 작은 데이터 패킷을 전송합니다. 이러한 데이터 패킷은 스마트 폰에 설치된 비콘 스캐너 앱을 통해 수신 및 디코딩됩니다. 이렇게 수신 된 데이터는 제품 홍보 또는 메시지 푸시와 같은 작업을 트리거합니다.
블루투스 비콘에서 ID 번호는 BLE 채널을 통해 매초 10 번 전송됩니다. 그런 다음이 ID 번호는 Bluetooth 지원 장치에서 수신되고 비콘 스캐너 앱에서 인식되며, 클라우드에 저장된 앱 또는 콘텐츠 다운로드와 같은 작업에 연결하고 스마트 폰에 표시합니다.
Eddystone 비콘은 무엇입니까?
Eddystone은 BLE 장치에 단방향 메시지를 브로드 캐스트 할 수 있도록 Google 에서 개발 한 프로토콜입니다. Eddystone-URL 프레임은 피지컬 웹의 백본을 형성하여 주변에서 웹 콘텐츠를 검색하는 데 도움이됩니다. Beacon은 Eddystone 프로토콜을 사용하여 4 가지 유형의 데이터 를 브로드 캐스트 할 수 있습니다. 다음과 같습니다.
- URL 주소 브로드 캐스트를위한 Eddystone-URL
- 비콘 ID 브로드 캐스트를위한 Eddystone-UID
- 장치 온도, 배터리 강도 등과 같은 비콘 원격 측정을 방송하기위한 Eddystone-TLM
- 보안을위한 Eddystone-EID.
iOS 지원 장치 용인 iBeacon과 같은 다른 유형의 비콘도 있지만 Eddystone은 Android 장치 전용입니다. 또한 Google은 Nearby Notifications를 중단 했으므로 이제 사용자는 방송 된 콘텐츠를 표시 할 특수 비콘 스캐너 앱을 설치해야합니다.
이 튜토리얼에서는 Raspberry Pi를 Eddystone Beacon으로 사용하고 Eddystone URL을 사용하여 URL 주소를 브로드 캐스팅하는 데 중점을 두어 누구나 Android 장치의 도움으로 브로드 캐스트 된 정보에 쉽게 액세스 할 수 있도록합니다.
요구 사항
여기에서는이 Bluetooth 비콘을 구축하는 데 Raspberry Pi 만 필요합니다. Raspbian Jessie 또는 최신 OD가 설치된 Raspberry Pi 2 이상이어야합니다.
여기서는 SSH를 사용하여 랩톱에서 Raspberry Pi에 액세스합니다. 랩톱에서 VNC 또는 원격 데스크톱 연결을 사용하거나 Raspberry pi를 모니터에 연결할 수 있습니다. 여기에서 모니터없이 헤드리스로 Raspberry Pi를 설정하는 방법에 대해 자세히 알아보십시오.
Eddystone Beacon 용 Raspberry Pi 설정
Raspberry Pi 에서 Eddystone 브로드 캐스터 를 설정하는 것은 매우 쉽습니다. 3 개의 명령 만 포함됩니다.
이는 hciconfig commad를 사용하여 액세스 할 수있는 HCI (호스트 컨트롤러 인터페이스)를 구성하여 수행 할 수 있습니다. 이 명령을 사용하여 수행 할 수있는 작업을 확인하려면 터미널에 아래 명령을 입력하십시오.
hciconfig -h
1. 먼저 아래 명령을 사용하여 Raspberry Pi에서 Bluetooth 장치 를 활성화 해야합니다.
sudo hciconfig hci0 위로
2. 이제 아래 명령을 사용하여 Bluetooth를 "광고 및 연결 불가" 장치 로 설정 해야합니다.
sudo hciconfig hci0 leadv 3
3. 위의 명령은 장치가 방송 서비스를 실행하도록합니다. 이제 다른 프레임 정보와 16 진수 형식의 URL을 포함하는 다음 명령에 비콘 데이터를 입력하기 만하면됩니다. 비콘 방송을 시작하려면 아래 명령을 실행하십시오.
sudo hcitool -i hci0 cmd 0x08 0x0008 1c 02 01 06 03 03 aa fe 14 16 aa fe 10 00 02 63 69 72 63 75 69 74 64 69 67 65 73 74 07 00 00 00
이 명령은 URL http://circuitdigest.com을 브로드 캐스트합니다.
스마트 폰에서 방송 된 메시지를 확인하려면 Android 스마트 폰에 피지컬 웹 앱 또는 비콘 스캐너를 다운로드하고 스캔을 시작하세요. 아래와 같이 앱에 방송 된 링크가 표시됩니다. 링크를 클릭하여 웹 사이트를 방문하고 브라우저에서 엽니 다.
![]()
이제 메시지의 16 진수 코딩을 이해하겠습니다. 아래 표에는 코드에있는 모든 값에 대한 설명이 나와 있습니다.
|
값 |
기술 |
|---|---|
|
0x08 |
#OGF = 작업 그룹 필드 = Bluetooth 명령 그룹 = 0x08 |
|
0x0008 |
#OCF = 작업 명령 필드 = HCI_LE_Set_Advertising_Data = 0x0008 |
|
1c |
길이. 16 진수 1c는 뒤에 오는 바이트 수인 23 진수로 변환됩니다. |
|
02 |
길이 |
|
01 |
플래그 데이터 유형 값 |
|
06 |
플래그 데이터 |
|
03 |
길이 |
|
03 |
16 비트 서비스 UUID 데이터 유형 값의 전체 목록 |
|
aa |
16 비트 Eddystone UUID |
|
fe |
16 비트 Eddystone UUID |
|
14 |
길이. 16 진수 14는 뒤에 오는 바이트 수인 15 진수로 변환됩니다. |
|
16 |
서비스 데이터 데이터 유형 값 |
|
aa |
16 비트 Eddystone UUID |
|
fe |
16 비트 Eddystone UUID |
|
10 |
프레임 유형 = URL |
|
00 |
TX 전력 (보정되어야 함) |
|
02 |
URL 체계 (http: // = 0x02) |
|
63 |
16 진수의 'c' |
|
69 |
16 진수의 'i' |
|
72 |
16 진수의 'r' |
|
63 |
16 진수의 'c' |
|
75 |
16 진수의 'u' |
|
69 |
16 진수의 'i' |
|
74 |
16 진수의 't' |
|
64 |
16 진수의 'd' |
|
69 |
16 진수의 'i' |
|
67 |
16 진수의 'g' |
|
65 |
16 진수의 'e' |
|
73 |
16 진수의 's' |
|
74 |
16 진수의 't' |
|
07 |
.com (.com = 0x07) |
|
00 |
|
|
00 |
|
|
00 |
Raspberry Pi Bluetooth Beacon을 사용하여 사용자 지정 URL 을 브로드 캐스트 하려면 온라인 도구를 사용하여 URL 문자를 16 진수로 변환하고 위의 명령에 입력하면됩니다. 전송할 수있는 최대 문자는 16 자입니다. URL이 너무 길면 bitly.com과 같은 URL 단축 서비스를 사용하여 길이를 줄인 다음 위 표의 데이터에 맞 춥니 다.
각 문자를 16 진수로 변환하는 것은 매우 번거롭고 시간이 많이 걸립니다. 따라서 작업을 쉽게 수행하려면 방송 할 URL을 입력하기 만하면되는 Eddystone URL 명령 계산기가 있습니다. 그러면 명령이 이와 같이 준비됩니다.
![]()
블루투스 비콘은 이제 URL을 브로드 캐스팅하고 정상적으로 작동하지만 블루투스 비콘과의 정확한 거리를 얻기 위해 위 명령의 값 중 하나 인 Tx 전력을 보정해야합니다.
Tx 전력을 보정하여 전송 신호 전력 최적화
Eddystone 프레임에는 전송되는 구성 요소가 거의 없으며 Tx 전력은 신호의 강도를 알려주는 구성 요소 중 하나입니다. 수신기는 신호 강도를 디코딩하여 Beacon 브로드 캐스터와의 거리를 찾습니다. Tx power의 값은 -12에서 10까지 범위가 될 수 있습니다. 정확한 거리를 얻으려면 hit와 trial 방법으로 값을 찾아야합니다. 이를 위해 Eddystone 메시지 명령에서 Tx 전력 값을 조정하고 Beacon 스캐너 앱을 연 상태에서 스마트 폰을 1m 거리에 두십시오. 이제 명령에 Tx 전력 값을 0에서 음수 값으로 입력하십시오. 십진수 값을 16 진수 형식으로 변환하는 것을 잊지 마십시오. 이렇게하려면 온라인 값 변환기 도구를 사용하여 쉽게 디코딩하고 변환 된 값의 마지막 두 자리를 가져옵니다. 제 경우에는 헥사 값이 f4입니다.. 스캐너 앱에서 거리를 확인하고 약 1m가 될 때까지 값을 조정 한 후 정확한 거리로 Eddystone URL 브로드 캐스터를 사용하십시오.
Eddystone 블루투스 비콘의 응용
다음은 BLE 비콘의 몇 가지 사용 사례입니다.
- BLE 지원 소매: 이 기술은 흥미로운 제안 및 판매를 광고하여 매장 주변의 고객을 유치하는 데 사용할 수 있습니다.
- BLE 비콘 지원 이벤트: 손쉬운 결제 결제로 이벤트 및 경기장에서 쉽게 등록하는 데 사용할 수 있습니다.
- 부동산의 BLE 비콘: 가까운 부동산에 대한 모든 세부 정보를 확인하고 원터치로 예약 할 수 있습니다.
요구 사항에 따라 생각하고 구현할 수있는 다른 많은 응용 프로그램이 있습니다.
따라서 Raspberry Pi를 사용하여 Eddystone을 사용하여 메시지 또는 URL을 Bluetooth 비콘 으로 변환하여 브로드 캐스트 할 수 있습니다. 아래 데모 비디오를 확인하십시오.
/>