Vai al contenuto

Fisica e Tecnologia

Sappiamo che molti di voi amano smanettare. Quindi, per gli studenti interessati e motivati, ecco ulteriori informazioni e software fai-da-te.

Informazioni sulla Pubblicità BLE

Nota: se hai suggerimenti per migliorare l'esposizione, per favore utilizza i dettagli.

Per quegli animi coraggiosi con il coraggio di creare il proprio attrezzatura di raccolta dati, forniamo informazioni sul protocollo di pubblicità BLE che BroodMinder utilizza. Infatti i nostri stessi dispositivi BroodMinder-CELL, WiFi e -SubHub utilizzano la pubblicità per ascoltare i dispositivi e inoltrare i dati direttamente a MyBroodMinder.com.

Ci sono diversi bei programmi BLE Explorer disponibili. I nostri preferiti sono:

  • Android & iOS – nrfConnect di Nordic Semiconductor. La versione per Android è la migliore, ma utilizziamo entrambe tutto il tempo. Ha una bella funzione di grafico del livello del segnale.
  • PC – Bluetooth LE Explorer di Microsoft. Sfortunatamente, questo programma non mostra i dati di pubblicità.
  • Mac – BlueSee – Questa app sembra funzionare bene e mostra i dati del produttore nel pacchetto di pubblicità.

Probabilmente noterai che i primi 3 byte dell'ID del dispositivo sono sempre 06:09:16, seguiti dall'ID del dispositivo particolare che è sempre Model:ID:ID. Alcuni dispositivi (iOS e Mac) nascondono il vero ID, quindi lo includiamo anche nel campo del nome nel pacchetto di pubblicità estesa.

Composizione del Pacchetto Pubblicitario per BroodMinder

Quando leggi i pacchetti pubblicitari da BLE, puoi identificare i prodotti BroodMinder guardando quanto segue.

I dati avranno un aspetto simile a questo - questo esempio è relativo al dispositivo 43:30:07

Evento di Risposta di Scansione GAP ------------------------------------------------------------------------------------

ble_evt_gap_scan_response: rssi=-77, packet_type=0, mittente=[ 07 30 43 80 07 00 ], tipo_di_indirizzo=0, bond=255, dati=[ 02 01 06 02 0a 03 18 ff 8d 02 2b 15 02 00 02 21 00 d0 62 00 ff 7f 05 80 37 07 30 43 00 00 00 ]

Nota: I valori sono in decimale a meno che non siano preceduti da 0x

1) Controlla il flag "Dati Specifici del Produttore" Byte 6,7 = 0x18, 0xff

2) Controlla se IF, LLC è il produttore Byte 8,9 = 0x8d, 0x02

I byte da 10 a 29 sono i dati del BroodMinder come descritto di seguito. DeviceModelIFllc_1 = 0x2b (43d = scala) DeviceVersionMinor_1 = 0x15 (21d) DeviceVersionMajor_1 = 0x02 (FW 2.21) Elapsed_2V2 = 0x21 (33d) Temperature_2V2 = 0x62d0 WeightL_2V2 = 0x7FFF WeightR_2V2 = 0x8005

La mappatura per tutti i modelli è sulla pagina successiva

PRIMARIO
Byte Tipo Valore Parametro
0 Lunghezza campo Ad 02
1 Tipo campo 01 Connettibile
2 Valore 06 Scoperta Generale LE, Connettibile, Dispositivo Singolo
3 Lunghezza campo Ad 02
4 Tipo campo 0A Potenza di trasmissione
5 Valore 03 Potenza in DB
6 Lunghezza campo Ad 24
7 Tipo campo FF Dati del produttore
8 Valore 8d IF, LLC = 0x028d, 653
9 Valore 02 IF, LLC = 0x028d, 653
10 Valore Modello
11 Valore Versione Minore
12 Valore Versione Maggiore
13 Valore Temperatura in tempo reale 47/49/56/57/58 (SM&XLR)
14 Valore Batteria
15 Valore Tempo trascorso
16 Valore Tempo trascorso
17 Valore Temperatura 47 e oltre è centicenigrade + 5000
18 Valore Temperatura
19 Valore Temperatura in tempo reale 2 47/49/56/57/58 (SM e XLR)
20 Valore Peso sinistro
21 Valore Peso sinistro
22 Valore Peso destro
23 Valore Peso destro
24 Valore Umidità sarà 0 per 41/47/49/52
25 Valore Peso sinistro 2/SM_Tempo0 49/57/58 (XLR)
26 Valore Peso sinistro 2/SM_Tempo1 49/57/58 (XLR)
27 Valore Peso destro 2/SM_Tempo2 49/57/58 (XLR)
28 Valore Peso destro 2/SM_Tempo3 49/57/58 (XLR)
29 Valore Peso totale in tempo reale / Stato Swarm 47/49/56/57/58 (SM e XLR)
30 Valore Peso totale in tempo reale 47/49/56/57/58 (SM e XLR)
SECONDIARIO Pacchetto di Advertising Esteso
Byte Tipo Valore Parametro
0 Lunghezza campo Ad 09
1 Tipo 09 Nome Locale Completo
2 4' nome ascii
3 2'
4 :'
5 0'
6 0'
7 :'
8 0'
9 0'

Nota: BRM52 BroodMinder-SubHub è diverso come spiegato di seguito.

Ecco le equazioni

if (NumeroModello == 41 | NumeroModello == 42 | NumeroModello == 43)
{
    temperaturaGradiF = e.data[byteNumAdvTemperature_2V2] + (e.data[byteNumAdvTemperature_2V2 + 1] << 8);
    temperaturaGradiF = (temperaturaGradiF / Math.Pow(2, 16) * 165 - 40) * 9 / 5 + 32;
}
else
{
    double temperaturaGradiC = e.data[byteNumAdvTemperature_2V2] + (e.data[byteNumAdvTemperature_2V2 + 1] << 8);
    temperaturaGradiC = (temperaturaGradiC - 5000) / 100;
    temperaturaGradiF = temperaturaGradiC * 9 / 5 + 32;
}
    umiditaPercentuale = e.data[byteNumAdvHumidity_1V2];
if (NumeroModello == 43)
{
    pesoL = e.data[byteNumAdvWeightL_2V2 + 1] * 256 + e.data[byteNumAdvWeightL_2V2 + 0] - 32767;
    pesoScalaL = pesoL / 100;
    pesoR = e.data[byteNumAdvWeightR_2V2 + 1] * 256 + e.data[byteNumAdvWeightR_2V2 + 0] - 32767;
    pesoScalaR = pesoR / 100;
} 
else if (NumeroModello == 49 | NumeroModello == 57 | NumeroModello == 58)
{
    pesoR = e.data[byteNumAdvWeightL_2V2 + 1] * 256 + e.data[byteNumAdvWeightL_2V2 + 0] - 32767;
    weightScaledR = weightR / 100;
    weightL = e.data[byteNumAdvWeightR_2V2 + 1] * 256 + e.data[byteNumAdvWeightR_2V2 + 0] - 32767;
    weightScaledL = weightL / 100;
    weightR2 = e.data[byteNumAdvWeightL2_2V2 + 1] * 256 + e.data[byteNumAdvWeightL2_2V2 + 0] - 32767;
    weightScaledR2 = weightR2 / 100;
    weightL2 = e.data[byteNumAdvWeightR2_2V2 + 1] * 256 + e.data[byteNumAdvWeightR2_2V2 + 0] - 32767;
    weightScaledL2 = weightL2 / 100;
}
realTimeTemperature = ((float)(e.data[byteNumAdvRealTimeTemperature2] * 256 + e.data[byteNumAdvRealTimeTemperature1] - 5000) / 100) * 9 / 5 + 32;

realTimeWeight = (float)(e.data[byteNumAdvRealTimeWeight2] * 256 + e.data[byteNumAdvRealTimeWeight1] - 32767 ) / 100 ;

SM_Time è il tempo Unix dell'ultimo evento di temperatura. Time0 = LSB, Time3 = MSB, sarà il tempo trascorso dall'avvio se l'ora non è stata impostata nel dispositivo tramite una sincronizzazione del dispositivo.

BRM-52 BroodMinder-SubHub

Il -SubHub fa una pubblicità ingannevole. La pubblicità cambia ogni 5 secondi per inviare un dispositivo diverso. Scorrerà tutti i dispositivi (incluso se stesso) e poi si ripeterà.

Li chiamiamo Annunci Falsi. A seconda del sistema operativo utilizzato, potresti o meno (ad esempio, iOS) essere in grado di vedere il vero ID del dispositivo (ad esempio 06:09:16:52:01:23). Ecco perché posizioniamo l'ID del dispositivo nell'ottavo byte della pubblicità estesa. Nota anche che è difficile leggere la pubblicità estesa per alcuni dispositivi; tuttavia, per quelli, di solito puoi leggere il vero ID del dispositivo.

L'ID Falso risiede nei byte 13, 19 e 30. Il processo è il seguente:

  1. Stabilire se si tratta di un -SubHub dall'ID (sia il vero ID che l'ID nella pubblicità estesa). Sarà sempre 52:xx:xx.
  2. Se si tratta di un dispositivo "52", analizzare i byte 13/19/30. Ad esempio, 43/01/23 diventerà 43:01:23
  3. Analizzare il resto del pacchetto pubblicitario in base al tipo di dispositivo in base al byte del modello (byte 10)

Facile facile 😉

Fisica BroodMinder-W

Ci sono molte modalità in cui la bilancia dell'arnia BroodMinder può essere utilizzata e poiché misura solo una frazione del peso totale dell'alveare, il design e il posizionamento del supporto ausiliario e il posizionamento della bilancia BroodMinder diventano parte integrante del sistema di misurazione del peso totale dell'alveare. Generalmente, maggiore è lo sforzo dedicato a questo aspetto, migliori saranno i risultati. I sistemi di supporto all'alveare mostrati di seguito variano dal più semplice al più sofisticato con incertezza più elevata a minore. Sta all'utente singolo decidere cosa implementare.

NOTA: la fonte di errore più tipica è un supporto inadeguato sotto la bilancia. Questo può causare comportamenti strani poiché l'alveare si flette mentre si espande e si contrae a causa del sole, della pioggia, della temperatura, ecc. Fornire un supporto piatto migliorerà i risultati. Una soluzione rapida è posizionare un foglio di compensato da ¾" (o equivalente) sotto le bilance.

NOTA AGGIUNTIVA: Se tutto ciò che desideri vedere è il flusso del miele, non è necessario un buon supporto. Dovrai semplicemente ignorare le variazioni giornaliere. Sarai comunque in grado di osservare il cambiamento complessivo del peso.

a) Disposizione Predefinita

Questa è la disposizione predefinita con la bilancia all'anteriore dell'alveare e un 2x4 come supporto ausiliario (punto di appoggio) sul retro:

image-20230409132020233

Ecco alcuni calcoli relativi alla configurazione:

Ipotesi

Il peso dell'alveare W è distribuito in modo uniforme e il centro di gravità si trova al centro dell'alveare. Per semplicità, il volo frontale della griglia inferiore non viene considerato. Si suppone che il peso dell'alveare sia del 100%.

Calcoli

image-20230409132049073

Quando si utilizza del legname da 2x4 standard come supporto posteriore e si allinea con il retro dell'alveare, il peso totale dell'alveare W può essere calcolato dal peso sulla bilancia S come:

image-20230409132117498

Pertanto, utilizzare 2,09 come fattore scala predefinito per l'alveare nell'app se si utilizza questa configurazione. Naturalmente questo può essere regolato una volta disponibili alcune misurazioni del peso.

Il grafico qui sotto mostra il fattore di correzione della bilancia per diverse disposizioni della bilancia e del fulcro. L'asse X è la posizione del punto di fulcro in pollici dal retro dell'alveare. Le diverse linee rappresentano la posizione della linea centrale della bilancia in pollici dal retro dell'alveare. Le frecce mostrano l'esempio sopra.

image-20230409132140051

b) Disposizione Alternativa 1

In base a quanto sopra, il supporto ausiliario dovrebbe essere posizionato a 1" dal retro dell'alveare. Si consiglia di fissare un pezzo di rifinitura sulla parte superiore del 2x4. Questo aiuterà a posizionare con precisione il supporto ausiliario.

image-20230409132159801

Ora Abbiamo bracci momentanei E e F uguali e il fattore di correzione della bilancia dell'arnia diventa 2.0, che è il valore predefinito nell'app mobile. Tuttavia, ci sono anche altri fattori influenti che non dovrebbero essere trascurati. Il vero punto di fulcro del supporto ausiliario si trova tra il retro dell'arnia e il davanti del supporto ausiliario a causa delle variazioni del livello del sistema di supporto e del potenziale rilievo del listello stesso 2×4.

c) Disposizione Alternativa 2

Si può utilizzare un diverso sistema di supporto che ha un punto di fulcro definito e non è influenzato dall'allineamento della struttura di supporto:

Prendi un pezzo di pino o quercia, spesso circa ¾" e largo 2". La lunghezza deve essere uguale alla larghezza dell'arnia. Pratica un piccolo taglio in esso. Il taglio deve essere profondo quanto la larghezza della lama del seghetto. Fissa questo pezzo sul lato inferiore del fondo dell'arnia. Allinealo a filo con il retro. Poi posiziona un pezzo di angolo in alluminio 1" per 1/8" 6061 o 6063, della stessa lunghezza della striscia di legno, sotto di esso per sostenere l'arnia. Il angolo in alluminio si trova nel taglio. L'altezza totale dell'angolo in alluminio e del legno deve essere uguale o leggermente maggiore dell'altezza della bilancia per garantire che l'arnia sia perfettamente orizzontale o leggermente inclinata in avanti per garantire il drenaggio dell'acqua lontano dall'entrata dell'arnia.

d) Bilanciamento Laterale

Tutti i sistemi di supporto sopra descritti sono influenzati da uno spostamento del peso laterale non definito poiché l'arnia è poggiata su più di tre punti. Ci sono due punti alla parte anteriore all'interno della bilancia dell'arnia e un supporto lineare sul retro dell'arnia. Questo potrebbe causare un sovraccarico su una delle celle di carico della bilancia e pertanto, di solito è necessario un bilanciamento laterale se il sistema di supporto sotto l'arnia non è una piattaforma continua, cioè blocchi di cemento separati per la parte anteriore e posteriore dell'arnia.

Leggi il peso da ciascuna cella di carico individualmente passando alla visualizzazione in tempo reale con l'app. In questa modalità, il peso sulla bilancia viene mostrato come % Sinistra, % Destra. Il lato destro della bilancia è il lato con l'adesivo di identificazione del dispositivo. Se la differenza tra sinistra e destra è inferiore al 10%, non è necessaria alcuna azione ulteriore.

Se non lo è, regola la bilancia sul lato con il peso inferiore fino a quando i pesi corrispondono. In alternativa, è possibile regolare la bilancia sotto il supporto posteriore sul lato opposto al peso più basso.

e) Supporto dell'Arnia a 3 Punti

C'è un modo per evitare la necessità di bilanciamento laterale introducendo un vero sistema di supporto a 3 punti. Le parti sono simili a quelle usate nella disposizione 2 ma anziché utilizzare un angolo da 1", per questa disposizione avrai bisogno di un angolo da ¾". Un foro da 7/32" è praticato nel mezzo della tavola anziché tagliare un'incisione. Viene utilizzata una vite per macchine scanalata da ¼" x 0,5" come supporto centrale. La vite praticherà i propri filetti nella tavola. Lo scanalato nella testa della vite è allineato in modo che possa poggiare sul bordo dell'angolo in alluminio in un singolo punto senza scivolare via.

Tra l'angolo in alluminio e la tavola di legno c'è un piccolo spazio. È necessario garantire che questo spazio sia uniforme lungo tutta la larghezza dell'arnia. La vite al centro dovrebbe essere l'unico punto di contatto. Ciò garantirà che il peso corretto venga misurato e contemporaneamente sia il "paracadute" contro il ribaltamento dell'arnia se si verifica un carico eccessivamente disomogeneo, ad esempio durante le ispezioni delle arnie.

f) Posizionamento della Bilancia BroodMinder

La maggior parte di quanto sopra riguarda il supporto ausiliario. Concentriamoci ora sul posizionamento della bilancia.

Come mostrato nelle sezioni precedenti, è desiderabile che il lato anteriore della bilancia sia posizionato allineato con il lato anteriore del corpo dell'arnia. Spostandolo ulteriormente all'interno si migliora la precisione a discapito della stabilità dell'arnia e spostandolo ulteriormente all'esterno si riduce la precisione con scarso miglioramento della stabilità dell'arnia.

Questo grafico mostra l'influenza del posizionamento della bilancia sul fattore di correzione della bilancia e l'errore della bilancia introdotto a causa del posizionamento inaccurato della bilancia. L'influenza è del 5,6% per pollice.

È consigliabile segnare la posizione della bilancia sul fondo dell'arnia o fissare un fermo meccanico. Questo aiuterà a riposizionare la bilancia nello stesso luogo dopo che è stata rimossa per un cambio della batteria o per qualche altro motivo.