- Cos'è Bluetooth Low Energy (BLE)?
- In che modo la tecnologia iBeacon utilizza BLE?
- Quanto è importante iBeacon?
- Componenti richiesti
- Impostazione del modulo HM10 BLE in modalità iBeacon
- Utilizzo dell'app Android BLE Scanner per iBeacon
I termini della tecnologia Beacon e iBeacon sono spesso usati in modo intercambiabile. iBeacon è stato introdotto da Apple ed è l'implementazione di Apple della tecnologia wireless Bluetooth Low Energy (BLE) per fornire un modo diverso di informazioni e servizi basati sulla posizione agli iPhone e ad altri dispositivi iOS di Apple. Lo standard tecnologico consente alle app mobili (in esecuzione su dispositivi iOS e Android) di raccogliere le informazioni dai beacon nel mondo fisico e mostrare le informazioni sui telefoni.
Cos'è Bluetooth Low Energy (BLE)?
BLE è simile al protocollo Bluetooth con una differenza di consumo energetico. Il BLE è una tecnologia di rete personale wireless che viene utilizzata per trasmettere dati a breve distanza ed è progettata per un basso consumo energetico. Il BLE è stato progettato per funzionare per un lungo periodo di tempo anche utilizzando una batteria a bottone CR2032. Il BLE mantiene il raggio di comunicazione simile al suo precedente Classic Bluetooth.
In che modo la tecnologia iBeacon utilizza BLE?
Con la tecnologia iBeacon, Apple ha standardizzato il formato per la pubblicità BLE. Il formato standard è composto da quattro pezzi principali che sono UUID, Major, Minor, Tx Power. Per comprendere più chiaramente ogni termine, prendi un esempio di Apple Electronics in cui il numero di negozi deve essere impostato in diversi paesi. La descrizione di ciascuno è la seguente:
UUID: l'UUID è una stringa di 16 byte che viene utilizzata per identificare il numero di Beacon da un ampio gruppo di Beacon. Questo identifica i beacon per una particolare applicazione. Ad esempio, se Apple mantiene una catena di negozi elettronici offline, tutti i beacon condivideranno lo stesso UUID dicendo che il beacon appartiene ad Apple.
Major: questa è una stringa di 2 byte utilizzata per identificare un gruppo più piccolo di Beacon da un grande gruppo di Beacon. Quindi, se il Beacon appartiene ad Apple e Apple ha installato 10 beacon in una città per 10 negozi, Apple verrà a sapere quale beacon appartiene a quale negozio nella stessa città.
Minor: Questa è una stringa di 2 byte che viene utilizzata per identificare il singolo Beacon da un gruppo di Beacon. Supponiamo che Apple abbia installato 50 Beacon in un negozio, quindi utilizzando il Minor, Apple sarà in grado di trovare quello in cui si trova il cliente nel negozio.
Tx Power: Il Tx Power viene utilizzato per determinare la prossimità o la distanza dal faro. La prossimità deve essere scelta prima della calibrazione e deve essere codificata in anticipo. La prossimità scelta fornisce una distanza stimata che deve essere presa come linea di base dai dispositivi.
Ad esempio: il Beacon già configurato e trasmesso avrà il seguente aspetto:
UUID: 36BFDA543784CAD5
Maggiore: 45
Minore: 7
In questo tutorial imposteremo tutti questi parametri utilizzando un modulo BLE impostato in modalità iBeacon.
Per saperne di più sulla tecnologia BLE, controlla il nostro precedente articolo su BLE con ESP32.
Quanto è importante iBeacon?
Con la crescente popolarità di Target Margeting, iBeacon può svolgere un ruolo significativo. Formando la rete iBeacon, qualsiasi marchio, rivenditore o negozio sarà in grado di localizzare l'attività e altri importanti dati sul comportamento del cliente che possono essere ulteriormente utilizzati per inviare sullo smartphone del cliente altamente significativi, contestuali e iperlocali. Prendendo l'esempio di Apple come sopra, supponiamo che un cliente con uno smartphone passi vicino a un Apple Electronic Store.
Quando l'app installata sullo smartphone del Cliente sente un iBeacon installato nel negozio, l'app è in grado di inviare i dati tramite iBeacon con tutte le offerte ei dettagli del negozio. Se il cliente trova l'offerta attraente e desidera acquistare, può entrare e acquistare dal negozio. Oltre a questo, iBeacon può avere alcune altre applicazioni come pagamenti, analisi di acquirenti / clienti e applicazioni in aeroporti, parchi a tema, sale per concerti e molte altre aree. Il potenziale della tecnologia iBeacon è illimitato e ancora da scoprire.
In questo tutorial, dimostreremo iBeacon utilizzando il modulo HM10 BLE basato su Bluetooth 4.0. Ma prima di iniziare, è importante dare un'occhiata a Come modificare o aggiornare il firmware del modulo Clone HM-10 se si utilizza un modulo HM10 clonato poiché la maggior parte dei moduli HM10 disponibili sul mercato sono clonati. Abbiamo anche utilizzato il modulo Bluetooth HM10 con Arduino per controllare un LED.
Questo tutorial HM10 BLE iBeacon dimostrerà come configurare il modulo HM10 come iBeacon e scoprirne i dettagli come RSSI (Proximity, Distance) sull'app Android.
Componenti richiesti
Hardware:
- Modulo BLE HM10
- Convertitore da USB a TTL
- Ponticelli
Software:
- IDE Arduino
- App Android (scanner BLE)
BLE HM10 utilizzato in questo tutorial utilizza il firmware HM10 v540 disponibile sul sito Web ufficiale di jnhuamao.
Impostazione del modulo HM10 BLE in modalità iBeacon
Impostare inizialmente il modulo BLE HM10 in modalità iBeacon. Per impostare l'HM10 in modalità iBeacon, segui i passaggi seguenti.
- Collegare il modulo HM10 e il convertitore USB / TTL con i seguenti collegamenti.
Perni del modulo HM10 |
Convertitore USB / TTL |
Rx |
Tx |
Tx |
Rx |
Vcc |
5V |
Gnd |
Gnd |
- Apri l'IDE di Arduino e seleziona la porta COM del convertitore USB / TTL
- Ora apri il monitor seriale dell'IDE di Arduino e seleziona il Baud Rate di "9600" e seleziona anche "No Line Ending" su Serial Monitor.
- Digitare i seguenti comandi AT in modalità sequenza uno dopo l'altro, dopo aver ottenuto la risposta OK da HM10.
AT + RENEW
AT + RESET
A
AT + MARJ0x1000
AT + MINO0x0007
AT + ADVI5
AT + NAMEiBeacon
AT + ADTY3
AT + IBEA1
AT + DELO2
AT + PWRM0
AT + RESET
Nota: i valori contrassegnati in rosso nel comando AT sono configurabili dall'utente. Può essere modificato dall'utente secondo i propri esempi.
La descrizione di tutti i comandi AT usati sopra è la seguente:
- AT + RENEW (Ripristina le impostazioni di fabbrica)
- AT + RESET (riavvia l'HM10)
- AT (AT Test)
- AT + MARJ0x1000 (imposta il numero principale iBeacon su 0x1000 HEX convertito in 4096 in DEC)
- AT + MINO0x0007 (Imposta il numero minore iBeacon su 0x1000 HEX convertito a 4096 in DEC)
- AT + ADVI5 (imposta l'intervallo di pubblicità su 5 ovvero 546,25 millisecondi)
- AT + NAMEiBeacon (Imposta il nome del modulo HM-10 su iBeacon. Cambialo in base all'uso)
- AT + ADTY3 (imposta HM10 non collegabile per risparmiare energia e nessun client può connettersi al modulo aiuta a risparmiare più energia)
- AT + IBEA1 (abilita la modalità iBeacon su HM10)
- AT + DELO2 (Imposta l'iBeacon in modalità Broadcast solo per risparmiare energia. L'HM10 può trasmettere la sua presenza e scansiona altri dispositivi in quanto è un ricetrasmettitore Bluetooth)
- AT + PWRM0 (consente a HM10 di dormire automaticamente e ridurre il consumo di energia da 8 a 0,18 mA. L'iBeacon trasmetterà comunque)
Dopo aver eseguito tutti i comandi AT, Serial Monitor appare come di seguito:
La risposta dei comandi AT viene stampata in serie senza alcuna nuova riga. Puoi facilmente fare la differenza tra la risposta di due comandi AT poiché dopo ogni comando AT, l'HM10 risponde OK. Quindi, se il comando è AT + RENEW, HM10 risponderà OK + RENEW e analogamente per altri comandi AT.
. Ora può trasmettere UUID, Major, Minor e altri dettagli. Per vedere i dettagli trasmessi, ci sono un certo numero di app Android iBeacon disponibili, scarica qualsiasi app Android iBeacon dal Play Store o dall'Apple store e sarai in grado di trovare il modulo HM10 impostato in modalità iBeacon. In questo tutorial utilizziamo un'app Android " BLE Scanner ".
Per disabilitare la modalità iBeacon, è sufficiente utilizzare il comando AT + IBEA0. Quindi rendere collegabile la risposta alla scansione della pubblicità inviando AT + ADTY0. E quindi resettare semplicemente l'HM10 inviando AT + RESET.
Utilizzo dell'app Android BLE Scanner per iBeacon
- Scarica l'app BLE Scanner dal Play Store e aprila.
- Lo schermo appare come di seguito.
- La scheda "Near By" verrà utilizzata per vedere tutti gli iBeacons disponibili. Per iniziare a cercare iBeacon, apri lo schermo verso il basso o vai all'icona di ricerca nell'angolo in alto a destra dello schermo. Questo inizierà a cercare gli iBeacons.
- Dopo aver cercato in iBeacon, sarai in grado di vedere RSSI, UUID, Major e Minor di iBeacon. L'RSSI cambierà se allontanate il cellulare o l'iBeacon l'uno dall'altro. Qui in questa schermata, l'RSSI è (-50). Questo può essere visto nel video dimostrativo fornito alla fine di questo articolo.
- Dopo aver tolto lo smartphone da iBeacon HM10, il valore RSSI cambia da -50 a -81. Questi valori continueranno a cambiare se si sposta uno dei dispositivi.
I valori accettabili del segnale RSSI sono i seguenti:
La potenza del segnale |
TL; DR |
Richiesto per |
|
---|---|---|---|
-30 dBm |
Sorprendente |
Massima potenza del segnale raggiungibile. Il client può trovarsi solo a pochi metri dall'AP per ottenere questo risultato. Non tipico o desiderabile nel mondo reale. |
N / A |
-67 dBm |
Molto buona |
Potenza minima del segnale per applicazioni che richiedono una consegna molto affidabile e tempestiva di pacchetti di dati. |
VoIP / VoWiFi, streaming video |
-70 dBm |
Va bene |
Potenza minima del segnale per una consegna affidabile dei pacchetti. |
E-mail, web |
-80 dBm |
Non bene |
Potenza minima del segnale per la connettività di base. La consegna dei pacchetti potrebbe non essere affidabile. |
N / A |
-90 dBm |
Inutilizzabile |
Avvicinarsi o annegare nel rumore di fondo. Qualsiasi funzionalità è altamente improbabile. |
N / A |
- Per trovare l'iBeacon nella vista di prossimità, basta andare sull'icona di prossimità nell'angolo in alto a destra, accanto all'icona di ricerca. Lo schermo mostrerà tutti gli iBeacon disponibili con segnale RSSI.
Questo termina il tutorial sulla configurazione del modulo BLE HM10 come iBeacon. Se hai dubbi o suggerimenti scrivi al nostro forum o commenta qui sotto.