- Vad är Bluetooth Low Energy (BLE)?
- Hur använder iBeacon-teknik BLE?
- Hur iBeacon är viktigt?
- Komponenter krävs
- Ställa in HM10 BLE-modulen i iBeacon-läge
- Använda BLE Scanner Android App för iBeacon
Termerna Beacon och iBeacon används ofta omväxlande. iBeacon introducerades av Apple och är Apples implementering av trådlös Bluetooth-teknik (low energy) (BLE) för att tillhandahålla ett annat sätt för platsbaserad information och tjänster till Apples iPhones och andra iOS-enheter. Teknikstandarden gör det möjligt för mobilappar (som körs på både iOS- och Android-enheter) att samla in information från Beacons i den fysiska världen och visa informationen på telefoner.
Vad är Bluetooth Low Energy (BLE)?
BLE liknar Bluetooth-protokollet med en skillnad i strömförbrukning. BLE är en trådlös personlig nätverksteknik som används för att överföra data över en kort sträcka och är utformad för låg energiförbrukning. BLE var designad för att köra under en lång tidsperiod även med ett CR2032-myntbatteri. BLE upprätthåller kommunikationsområdet som det tidigare klassiska Bluetooth.
Hur använder iBeacon-teknik BLE?
Med iBeacon-tekniken har Apple standardiserat formatet för BLE-reklam. Standardformatet består av fyra huvudstycken som är UUID, Major, Minor, Tx Power. För att förstå alla villkor tydligare, ta ett exempel på Apple Electronics där antalet butiker måste ställas in i olika länder. Beskrivningen av var och en är som följer:
UUID: UUID är en 16-byte sträng som används för att identifiera antalet Beacon från en stor grupp Beacons. Detta identifierar fyrarna för en viss applikation. Till exempel, om Apple upprätthåller en kedja med offline-elektronisk butik, kommer alla Beacon att dela samma UUID som säger att fyren tillhör Apple.
Major: Detta är en 2-byte sträng som används för att identifiera mindre grupp Beacon från en stor grupp Beacon. Så om Beacon tillhör Apple och Apple har installerat 10 beacons i en stad för 10 butiker kommer Apple att lära känna att vilket beacon tillhör vilken butik i samma stad.
Mindre: Detta är en 2-byte-sträng som används för att identifiera den enskilda fyren från en grupp fyrar. Antag att Apple har ställt in 50 Beacons i en butik, så genom att använda Minor kan Apple hitta det där kunden befinner sig i butiken.
Tx Power: Tx Power används för att bestämma närheten eller avståndet från fyren. Närheten måste väljas före kalibrering och bör vara hårdkodad i förväg. Den valda närheten ger ett beräknat avstånd som ska tas som baslinje för enheter.
Till exempel: Det redan inställda och sändande beaconet ser ut som följande:
UUID: 36BFDA543784CAD5
Major: 45
Mindre: 7
Vi kommer att ställa in alla dessa parametrar i denna handledning med hjälp av en BLE-moduluppsättning i iBeacon Mode.
För att lära dig mer om BLE-teknik, se vår tidigare artikel om BLE med ESP32.
Hur iBeacon är viktigt?
Med den ökande populariteten för Target Margeting kan iBeacon spela en viktig roll. Genom att bilda ett iBeacon-nätverk kommer alla varumärken, återförsäljare eller butiker att kunna hitta aktiviteten och andra viktiga kundbeteendedata som vidare kan användas för att skicka mycket meningsfull, kontextuell och hyperlokal på kundens smartphone. Om vi tar ett exempel på Apple som ovan, antar att en kund med en smartphone passerar i närheten av en Apple Electronic Store.
När appen installerad på kundens smartphone hör en iBeacon installerad i butiken kan appen skicka informationen via iBeacon med alla erbjudanden och butiksinformation. Om kunden tycker att erbjudandet är attraktivt och vill köpa kan han sedan gå in och köpa från butiken. Utöver detta kan iBeacon ha andra applikationer som betalningar, kundanalys och applikationer på flygplatser, temaparker, konsertlokaler och många andra områden. Potentialen i iBeacon-tekniken är obegränsad och ännu inte upptäckt.
I denna handledning kommer vi att demonstrera iBeacon med hjälp av Bluetooth 4.0-baserad HM10 BLE-modul. Men innan du börjar är det viktigt att ta en titt på hur man ändrar eller blinkar firmware för Clone HM-10-modulen om du använder en Cloned HM10-modul eftersom de flesta HM10-modulen som finns på marknaden är klonade. Vi använde också HM10 Bluetooth-modul med Arduino för att styra en LED.
Denna HM10 BLE iBeacon-handledning visar hur du ställer in HM10-modulen som iBeacon och upptäcker dess detaljer som RSSI (närhet, avstånd) i Android-appen.
Komponenter krävs
Hårdvara:
- HM10 BLE-modul
- USB till TTL-omvandlare
- Tröjor
Programvara:
- Arduino IDE
- Android-app (BLE-skanner)
BLE HM10 som används i denna handledning använder HM10 firmware v540 som finns tillgänglig på den officiella jnhuamao-webbplatsen.
Ställa in HM10 BLE-modulen i iBeacon-läge
Inledningsvis sätta BLE HM10 modulen i iBeacon läget. Följ stegen nedan för att ställa in HM10 i iBeacon-läge.
- Anslut HM10-modulen och USB / TTL-omvandlaren med följande anslutningar.
HM10-modulstift |
USB / TTL-omvandlare |
Rx |
Tx |
Tx |
Rx |
Vcc |
5V |
Gnd |
Gnd |
- Öppna Arduino IDE och välj COM-porten på USB / TTL-omvandlaren
- Öppna nu Serial Monitor för Arduino IDE och välj Baud Rate på '9600' och välj också 'No Line Ending' på Serial Monitor.
- Skriv följande AT-kommandon i sekvensläge efter varandra efter att ha fått OK-svar från HM10.
AT + FÖRNY
AT + RESET
PÅ
AT + MARJ0x1000
AT + MINO0x0007
AT + ADVI5
AT + NAMEiBeacon
AT + ADTY3
AT + IBEA1
AT + DELO2
AT + PWRM0
AT + RESET
Obs! De röda markerade värdena i AT-kommandot kan konfigureras av användaren. Det kan ändras av användaren enligt deras exempel.
Beskrivningen av alla AT-kommandon som används ovan är som följer:
- AT + FÖRNY (återställer fabriksinställningarna)
- AT + RESET (startar om HM10)
- AT (AT-test)
- AT + MARJ0x1000 (Ställer iBeacon Major Number till 0x1000 HEX omvandlat till 4096 i DEC)
- AT + MINO0x0007 (Ställer iBeacon Minor Number till 0x1000 HEX omvandlat till 4096 i DEC)
- AT + ADVI5 (Ställer in reklamintervall till 5 dvs 546,25 millisekunder)
- AT + NAMEiBeacon (Ställ in HM-10-modulnamnet till iBeacon. Ändra det enligt användning)
- AT + ADTY3 (Ställer in HM10 som inte kan anslutas för att spara ström och ingen klient kan ansluta till modulen hjälper till att spara mer ström)
- AT + IBEA1 (Aktiverar iBeacon-läge på HM10)
- AT + DELO2 (Ställer bara iBeacon i Broadcast-läge för att spara ström. HM10 kan sända sin närvaro och söka efter andra enheter eftersom det är en Bluetooth-sändtagare)
- AT + PWRM0 (gör det möjligt för HM10 att automatiskt sova och minska strömförbrukningen från 8 till 0,18 mA. Dock kommer iBeacon alltid att sända)
Efter körning av alla AT-kommandon ser Serial Monitor ut som nedan:
AT-kommandosvaret skrivs ut seriellt utan någon ny rad. Du kan enkelt göra skillnad mellan svaret på två AT-kommandon eftersom efter varje AT-kommando svarar HM10 OK. Så, om kommandot är AT + FÖRNYA kommer HM10 att svara OK + FÖRNYA och liknande för andra AT-kommandon.
. Det kan nu sända UUID, Major, Minor och andra detaljer. För att se de sända detaljerna finns det ett antal iBeacon Android-appar tillgängliga, ladda ner valfri iBeacon Android-app från Play Store eller Apple Store och du kommer att kunna hitta HM10-modulen i iBeacon-läge. I denna handledning använder vi en Android-app ” BLE Scanner ”.
För att inaktivera iBeacon-läget använder du bara kommandot AT + IBEA0. Och gör sedan Advertising Scan Respable Connectable genom att skicka AT + ADTY0. Och återställ sedan bara HM10 genom att skicka AT + RESET.
Använda BLE Scanner Android App för iBeacon
- Ladda ner BLE Scanner-appen från Play Store och öppna den.
- Skärmen ser ut som nedan.
- Fliken 'Near By' används för att se alla tillgängliga iBeacons. För att börja söka efter iBeacon, antingen dra ner skärmen eller gå till sökikonen längst upp till höger på skärmen. Detta börjar söka efter iBeacons.
- Efter att ha sökt i iBeacon kommer du att kunna se RSSI, UUID, Major och Minor för iBeacon. RSSI ändras om du tar bort mobilen eller iBeacon från varandra. Här på den här skärmen är RSSI (-50). Detta kan ses i demonstrationsvideon i slutet av denna artikel.
- Efter att ha tagit bort smarttelefonen från iBeacon HM10 ändras RSSI-värdet från -50 till -81. Dessa värden kommer att förändras om du flyttar någon av enheterna.
RSSI-signalens acceptabla värden är som följer:
Signalstyrka |
TL; DR |
Krävs för |
|
---|---|---|---|
-30 dBm |
Fantastisk |
Max uppnåelig signalstyrka. Klienten kan bara vara några meter från AP för att uppnå detta. Inte typiskt eller önskvärt i den verkliga världen. |
Ej tillämpligt |
-67 dBm |
Mycket bra |
Lägsta signalstyrka för applikationer som kräver mycket tillförlitlig leverans av datapaket i tid. |
VoIP / VoWiFi, strömmande video |
-70 dBm |
Okej |
Minsta signalstyrka för pålitlig paketleverans. |
E-post, webb |
-80 dBm |
Inte bra |
Lägsta signalstyrka för grundläggande anslutning. Paketleverans kan vara opålitlig. |
Ej tillämpligt |
-90 dBm |
Oanvändbar |
Närmar sig eller drunknar i bullergolvet. Någon funktionalitet är mycket osannolikt. |
Ej tillämpligt |
- För att hitta iBeacon i närhetsvyn, gå bara till närhetsikonen längst upp till höger bredvid sökikonen. Skärmen visar alla tillgängliga iBeacon med RSSI-signal.
Detta avslutar självstudien om hur du konfigurerar HM10 BLE-modulen som iBeacon. Om du har några tvivel eller förslag, vänligen skriv till vårt forum eller kommentera nedan.