Monitoraggio via SMS del peso di tre alveari per 30 dollari

Monitoraggio via SMS del peso di tre alveari per 30 dollari

No, non è un'offerta commerciale, questo è il costo dei componenti del sistema che potrai montare dopo aver letto l'articolo.

Un po' di sfondo:

Qualche tempo fa ho deciso di prendere le api e sono apparse... per tutta la stagione, ma non hanno lasciato la capanna invernale.
E questo nonostante sembrasse fare tutto correttamente: alimentazione complementare autunnale, isolamento prima del freddo.
L'arnia era un classico sistema “Dadan” in legno con 10 favi costituiti da assi da 40 mm.
Ma quell’inverno, a causa degli sbalzi termici, anche gli apicoltori più esperti persero molto più del solito.

È così che è nata l’idea di un sistema per monitorare lo stato dell’alveare.
Dopo aver pubblicato diversi articoli su Habr e aver comunicato sul forum degli apicoltori, ho deciso di passare dal semplice al complesso.
Il peso è l’unico parametro indiscutibile, ma di norma i sistemi esistenti monitorano solo un’arnia “di riferimento”.
Se qualcosa va storto (ad esempio, la partenza di uno sciame, una malattia delle api), gli indicatori diventano irrilevanti.

Pertanto, si è deciso di monitorare la variazione del peso di tre alveari contemporaneamente utilizzando un microcontrollore e di aggiungere altre "chicche" in seguito.
Il risultato è stato un sistema autonomo con un'autonomia di circa un mese con una sola carica della batteria 18650 e l'invio di statistiche una volta al giorno.
Ho cercato di semplificare il più possibile il disegno in modo che potesse essere ripetuto anche senza schemi, solo a partire dalle fotografie.

La logica di funzionamento è la seguente: durante il primo avvio/reset, le letture dei sensori installati sotto le arnie vengono memorizzate in EEPROM.
Poi ogni giorno, dopo il tramonto, il sistema “si sveglia”, legge le letture e invia un SMS con la variazione di peso del giorno e dal momento in cui è stato acceso.
Inoltre, viene trasmesso il valore della tensione della batteria e quando scende a 3.5 V, viene emesso un avviso sulla necessità di caricare, poiché al di sotto di 3.4 V il modulo di comunicazione non si accende e le letture del peso già “fluttuano via”.

"Ti ricordi come è cominciato tutto? Tutto era per la prima volta e ancora."
Monitoraggio via SMS del peso di tre alveari per 30 dollari
Sì, questo è esattamente l'hardware originale, anche se nella versione finale sono sopravvissuti solo estensimetri e cavi, ma andiamo con ordine.
In effetti, non hai bisogno di una bobina di cavo, si è scoperto che ha lo stesso prezzo di uno dritto da 30 metri.

Se non hai paura di smontare 3 LED SMD e mezzo centinaio di punti di saldatura convenzionale (di uscita), allora vai!

Quindi, avremo bisogno del seguente set di attrezzature/materiali:

  1. Arduino Pro Mini 3V
    Dovresti prestare attenzione al microcircuito del convertitore lineare - dovrebbe essere esattamente 3.3 V - sul chip con la marcatura KB 33/LB 33/DE A10 - il mio cinese ha sbagliato qualcosa e l'intero lotto
    Si è scoperto che le schede nel negozio avevano regolatori da 5 volt e cristalli da 16 MHz.
  2. USB-Ttl su chip CH340: puoi anche usarne uno da 5 volt, ma poi durante il flashing del microcontrollore, Arduino dovrà essere disconnesso dal modulo GSM per non bruciare quest'ultimo.
    Le schede basate sul chip PL2303 non funzionano con Windows 10.
  3. Modulo di comunicazione GSM Goouu Tech IOT GA-6-B o AI-THINKER A-6 Mini.
    Perché ti sei fermato lì? Neoway M590 - un designer che richiede danze separate con tamburelli, GSM SIM800L - non ha gradito il livello logico non standard di 2.8 V, che richiede il coordinamento anche con un Arduino a tre volt.
    Inoltre, la soluzione di AiThinker ha un consumo energetico minimo (non ho visto una corrente superiore a 100 mA durante l'invio di SMS).
  4. Antenna GSM GPRS 3DBI (nella foto sopra - una sciarpa rettangolare con una "coda", alle 9)
  5. Pacchetto iniziale di un operatore con buona copertura presso la sede del vostro apiario.
    Sì, il pacchetto deve prima essere attivato su un normale telefono, DISATTIVARE LA RICHIESTA DEL PIN all'ingresso e ricaricare il conto.
    Ora ci sono molte opzioni con nomi nello stile di "Sensore", "IoT" - hanno una quota di abbonamento leggermente inferiore.
  6. filo dupont 20cm femmina-femmina - 3 pz. (per collegare Arduino a USB-TTL)
  7. 3 pezzi HX711 - ADC per bilance
  8. 6 celle di carico per pesi fino a 50kg
  9. 15 metri di cavo telefonico a 4 conduttori - per collegare i moduli peso ad ARDUINO.
  10. Fotoresistore GL5528 (questo è quello importante, con una resistenza al buio di 1 MΩ e una resistenza alla luce di 10-20 kΩ) e due resistori ordinari da 20 kΩ
  11. Un pezzo di nastro biadesivo “spesso” 18x18mm - per collegare Arduino al modulo di comunicazione.
  12. Il portabatteria 18650 e, di fatto, la batteria stessa sono da ~2600mAh.
  13. Un po' di cera o paraffina (lampada aromatica a candela) - per la protezione dall'umidità HX711
  14. Un pezzo di trave di legno 25x50x300mm per la base degli estensimetri.
  15. Una dozzina di viti autofilettanti con rondella da 4,2x19 mm per il fissaggio dei sensori alla base.

La batteria può essere prelevata dallo smontaggio dei laptop - è molte volte più economica di una nuova e la capacità sarà molto maggiore di quella dell'UltraFire cinese - ne ho ottenute 1500 contro 450 (questo è 6800 per il fuoco 😉

Inoltre, avrai bisogno di mani ferme, un saldatore EPSN-25, colofonia e saldatore POS-60.

Monitoraggio via SMS del peso di tre alveari per 30 dollari

Anche 5 anni fa ho usato un saldatore sovietico con punta in rame (le stazioni di saldatura non funzionavano per me - l'ho portato a fare un giro di prova e ho finito il circuito con un EPSN).
Ma dopo il suo fallimento e diversi mostruosi falsi cinesi, quest'ultima fu chiamata Sparta - una cosa severa come il suo nome, fermata
su un prodotto con termostato.

Quindi andiamo!

Monitoraggio via SMS del peso di tre alveari per 30 dollari

Per cominciare, dissaldiamo due LED dal modulo GSM (il punto in cui si trovavano è cerchiato in un ovale arancione)
Inseriamo la scheda SIM con i cuscinetti di contatto sul circuito stampato, l'angolo smussato nella foto è indicato da una freccia.

Monitoraggio via SMS del peso di tre alveari per 30 dollari

Successivamente eseguiamo una procedura simile con il LED della scheda Arduino (ovale a sinistra del chip quadrato),
Saldare il pettine a quattro contatti (1),
Prendiamo due resistori da 20k, attorcigliamo i cavi su un lato, saldiamo la torsione nel foro del pin A5, i cavi rimanenti sono in RAW e GND dell'arduino (2),
Accorciamo le gambe della fotoresistenza a 10 mm e la saldiamo ai pin GND e D2 della scheda (3).

Ora è il momento del nastro isolante blu del nastro biadesivo: lo incolliamo sul supporto della scheda SIM del modulo di comunicazione e in alto - sull'Arduino - il pulsante rosso (argento) è rivolto verso di noi e si trova sopra la scheda SIM.

Saldiamo l'alimentatore: plus dal condensatore del modulo di comunicazione (4) al pin RAW di Arduino.
Il fatto è che il modulo di comunicazione stesso richiede 3.4-4.2 V per la sua alimentazione e il suo contatto PWR è collegato a un convertitore step-down, quindi per funzionare dagli ioni di litio, la tensione deve essere fornita bypassando questa parte del circuito.

In Arduino, al contrario, forniamo energia tramite un convertitore lineare: con un basso consumo di corrente, la caduta di tensione di interruzione è di 0.1 V.
Ma fornendo una tensione stabilizzata ai moduli HX711, evitiamo la necessità di modificarli a una tensione inferiore (e allo stesso tempo l'aumento del rumore derivante da questa operazione).

Successivamente saldiamo i ponticelli (5) tra i pin PWR-A1, URX-D4 e UTX-D5, mettiamo a terra GND-G (6) e infine alimentiamo dal portabatteria 18650 (7), colleghiamo l'antenna (8).
Ora prendiamo un convertitore USB-TTL e colleghiamo i contatti RXD-TXD e TXD-RXD, GND-GND con fili Dupont ad ARDUINO (pettine 1):

Monitoraggio via SMS del peso di tre alveari per 30 dollari

La foto sopra mostra la prima versione (di tre) del sistema, utilizzata per il debug.

Ma ora ci prendiamo una pausa dal saldatore per un po’ e passiamo alla parte software.
Descriverò la sequenza di azioni per Windows:
Per prima cosa devi scaricare e installare/decomprimere il programma Arduino IDE — la versione attuale è la 1.8.9, ma io uso la 1.6.4

Per semplicità scompattiamo l'archivio nella cartella C: arduino - “your_version_number”, all'interno avremo le cartelle /dist, drivers, examples, hardware, java, lib, librerie, reference, tools, oltre al file eseguibile di arduino (tra gli altri).

Ora abbiamo bisogno di una biblioteca che collabori con l'ADC HX711 — pulsante verde “clona o scarica” — scarica ZIP.
Il contenuto (cartella HX711-master) viene inserito nella directory C:arduino-“your_version_number”libraries

E ovviamente l'autista per USB TTL dallo stesso github - dall'archivio decompresso, l'installazione viene semplicemente avviata con il file SETUP.

Ok, avviamo e configuriamo il programma C:arduino-“your_version_number”arduino

Monitoraggio via SMS del peso di tre alveari per 30 dollari

Vai alla voce "Strumenti" - seleziona la scheda "Arduino Pro o Pro Mini", processore Atmega 328 3.3 V 8 MHz, porta - un numero diverso dalla COM1 di sistema (appare dopo aver installato il driver CH340 con un adattatore USB-TTL collegato)

Ok, copia il seguente schizzo (programma) e incollalo nella finestra IDE di Arduino

char phone_no[]="+123456789012"; // Your phone number that receive SMS with counry code 
#include <avr/sleep.h>  // ARDUINO sleep mode library
#include <SoftwareSerial.h> // Sofrware serial library
#include "HX711.h" // HX711 lib. https://github.com/bogde/HX711
#include <EEPROM.h> // EEPROM lib.
HX711 scale0(10, 14);
HX711 scale1(11, 14);
HX711 scale2(12, 14);
#define SENSORCNT 3
HX711 *scale[SENSORCNT];

SoftwareSerial mySerial(5, 4); // Set I/O-port TXD, RXD of GSM-shield  
byte pin2sleep=15; //  Set powerON/OFF pin

float delta00; // delta weight from start
float delta10;
float delta20;
float delta01; // delta weight from yesterday
float delta11;
float delta21;

float raw00; //raw data from sensors on first start
float raw10;
float raw20;
float raw01; //raw data from sensors on yesterday
float raw11;
float raw21;
float raw02; //actual raw data from sensors
float raw12;
float raw22;

word calibrate0=20880; //calibration factor for each sensor
word calibrate1=20880;
word calibrate2=20880;

word daynum=0; //numbers of day after start

int notsunset=0;

boolean setZero=false;

float readVcc() { // Read battery voltage function
  long result1000;
  float rvcc;  
  result1000 = analogRead(A5);
  rvcc=result1000;
  rvcc=6.6*rvcc/1023;
  return rvcc;
}

void setup() { // Setup part run once, at start

  pinMode(13, OUTPUT);  // Led pin init
  pinMode(2, INPUT_PULLUP); // Set pullup voltage
  Serial.begin(9600);
  mySerial.begin(115200); // Open Software Serial port to work with GSM-shield
  pinMode(pin2sleep, OUTPUT);// Itit ON/OFF pin for GSM
  digitalWrite(pin2sleep, LOW); // Turn ON modem
  delay(16000); // Wait for its boot 

scale[0] = &scale0; //init scale
scale[1] = &scale1;
scale[2] = &scale2;

scale0.set_scale();
scale1.set_scale();
scale2.set_scale();

delay(200);

setZero=digitalRead(2);

if (EEPROM.read(500)==EEPROM.read(501) || setZero) // first boot/reset with hiding photoresistor
//if (setZero)
{
raw00=scale0.get_units(16); //read data from scales
raw10=scale1.get_units(16);
raw20=scale2.get_units(16);
EEPROM.put(500, raw00); //write data to eeprom
EEPROM.put(504, raw10);
EEPROM.put(508, raw20);
for (int i = 0; i <= 24; i++) { //blinking LED13 on reset/first boot
    digitalWrite(13, HIGH);
    delay(500);
    digitalWrite(13, LOW);
    delay(500);
  }
}
else {
EEPROM.get(500, raw00); // read data from eeprom after battery change
EEPROM.get(504, raw10);
EEPROM.get(508, raw20);
digitalWrite(13, HIGH); // turn on LED 13 on 12sec. 
    delay(12000);
digitalWrite(13, LOW);
}

delay(200); // Test SMS at initial boot

//
  mySerial.println("AT+CMGF=1");    //  Send SMS part
  delay(2000);
  mySerial.print("AT+CMGS="");
  mySerial.print(phone_no); 
  mySerial.write(0x22);
  mySerial.write(0x0D);  // hex equivalent of Carraige return    
  mySerial.write(0x0A);  // hex equivalent of newline
  delay(2000);
  mySerial.println("INITIAL BOOT OK");
  mySerial.print("V Bat= ");
  mySerial.println(readVcc());
 if (readVcc()<3.5) {mySerial.print("!!! CHARGE BATTERY !!!");}
  delay(500);
  mySerial.println (char(26));//the ASCII code of the ctrl+z is 26
  delay(3000);

//  

raw02=raw00;
raw12=raw10;
raw22=raw20;

//scale0.power_down(); //power down all scales 
//scale1.power_down();
//scale2.power_down();

}

void loop() {

  attachInterrupt(0, NULL , RISING); // Interrupt on high lewel
  set_sleep_mode(SLEEP_MODE_PWR_DOWN); //Set ARDUINO sleep mode
  digitalWrite(pin2sleep, HIGH); // Turn OFF GSM-shield
  delay(2200);
  digitalWrite(pin2sleep, LOW); // Turn OFF GSM-shield
  delay(2200);
  digitalWrite(pin2sleep, HIGH);
  digitalWrite(13, LOW);
  scale0.power_down(); //power down all scales 
  scale1.power_down();
  scale2.power_down();
  delay(90000);
  sleep_mode(); // Go to sleep
  detachInterrupt(digitalPinToInterrupt(0)); // turn off external interrupt

  notsunset=0;
 for (int i=0; i <= 250; i++){
      if ( !digitalRead(2) ){ notsunset++; } //is a really sunset now? you shure?
      delay(360);
   }
  if ( notsunset==0 )
  { 
  digitalWrite(13, HIGH);
  digitalWrite(pin2sleep, LOW); // Turn-ON GSM-shield
  scale0.power_up(); //power up all scales 
  scale1.power_up();
  scale2.power_up();
  raw01=raw02;
  raw11=raw12;
  raw21=raw22;
  raw02=scale0.get_units(16); //read data from scales
  raw12=scale1.get_units(16);
  raw22=scale2.get_units(16);

  daynum++; 
  delta00=(raw02-raw00)/calibrate0; // calculate weight changes 
  delta01=(raw02-raw01)/calibrate0;
  delta10=(raw12-raw10)/calibrate1;
  delta11=(raw12-raw11)/calibrate1; 
  delta20=(raw22-raw20)/calibrate2;
  delta21=(raw22-raw21)/calibrate2;

  delay(16000);
  mySerial.println("AT+CMGF=1");    //  Send SMS part
  delay(2000);
  mySerial.print("AT+CMGS="");
  mySerial.print(phone_no); 
  mySerial.write(0x22);
  mySerial.write(0x0D);  // hex equivalent of Carraige return    
  mySerial.write(0x0A);  // hex equivalent of newline
  delay(2000);
  mySerial.print("Turn ");
  mySerial.println(daynum);
  mySerial.print("Hive1  ");
  mySerial.print(delta01);
  mySerial.print("   ");
  mySerial.println(delta00);
  mySerial.print("Hive2  ");
  mySerial.print(delta11);
  mySerial.print("   ");
  mySerial.println(delta10);
  mySerial.print("Hive3 ");
  mySerial.print(delta21);
  mySerial.print("   ");
  mySerial.println(delta20);

  mySerial.print("V Bat= ");
  mySerial.println(readVcc());
  if (readVcc()<3.5) {mySerial.print("!!! CHARGE BATTERY !!!");}
  delay(500);
  mySerial.println (char(26));//the ASCII code of the ctrl+z is 26
  delay(3000);

  }

}

Nella prima riga, tra virgolette, char phone_no[]="+123456789012"; — invece di 123456789012, inserisci il tuo numero di telefono con il prefisso internazionale a cui verrà inviato l'SMS.

Ora premiamo il pulsante di controllo (sopra il numero uno nello screenshot sopra) - se in basso (sotto il numero tre sullo schermo) "Compilazione è completa" - allora possiamo eseguire il flashing del microcontrollore.

Quindi, USB-TTL è collegato ad ARDUINO e al computer, inserire la batteria carica nel supporto (di solito il LED sul nuovo Arduino inizia a lampeggiare una volta al secondo).

Ora per quanto riguarda il firmware - ci stiamo allenando a premere il pulsante rosso (argento) del microcontrollore - questo dovrà essere fatto rigorosamente in un determinato momento!!!
Mangiare? Fai clic sul pulsante "Carica" ​​(sopra i due nello screenshot) e osserva attentamente la riga nella parte inferiore dell'interfaccia (sotto i tre nello screenshot).
Non appena la scritta "compilation" cambia in "download", premi il pulsante rosso (reset) - se tutto è ok, le luci sull'adattatore USB-TTL lampeggeranno allegramente e nella parte inferiore dell'interfaccia apparirà la scritta "Uploaded" "

Ora, mentre aspettiamo che arrivi l'SMS di prova sul telefono, ti spiego come funziona il programma:

Monitoraggio via SMS del peso di tre alveari per 30 dollari

La foto mostra la seconda versione del supporto di debug.

Alla prima accensione il sistema controlla i byte numero 500 e 501 della EEPROM; se sono uguali i dati di calibrazione non vengono registrati e l'algoritmo procede alla sezione di setup.
La stessa cosa accade se, all'accensione, la fotoresistenza è oscurata (da un cappuccio della penna): viene attivata la modalità di ripristino.

Le celle di carico dovrebbero già essere installate sotto le arnie, dato che fissiamo semplicemente il livello zero iniziale e poi misuriamo la variazione di peso (ora arriveranno semplicemente gli zeri, dato che non abbiamo ancora collegato nulla).
Allo stesso tempo, il LED integrato del pin 13 inizierà a lampeggiare su Arduino.
Se non si verifica un ripristino, il LED si accende per 12 secondi.
Successivamente viene inviato un SMS di prova con il messaggio “INITIAL BOOT OK” e la tensione della batteria.
Il modulo di comunicazione si spegne e dopo 3 minuti la scheda Arduino mette le schede ADC HX711 in modalità di sospensione e si addormenta da sola.
Questo ritardo è stato effettuato in modo da non captare interferenze da un modulo GSM funzionante (dopo lo spegnimento “fagioli” per un po').

Successivamente, abbiamo un'interruzione del sensore fotografico sul secondo pin (la funzione più è abilitata).
In questo caso, dopo l'attivazione, lo stato della fotoresistenza viene controllato per altri 3 minuti, per evitare attivazioni ripetute/false.
Ciò che è tipico è che senza alcuna regolazione il sistema si attiva 10 minuti dopo il tramonto astronomico in caso di tempo nuvoloso e 20 in caso di tempo sereno.
Sì, affinché il sistema non si resetti ad ogni accensione, è necessario collegare almeno il primo modulo HX711 (pin DT-D10, SCK-A0)

Successivamente vengono rilevate le letture degli estensimetri, viene calcolata la variazione di peso rispetto all'operazione precedente (il primo numero della riga dopo Hive) e dalla prima attivazione viene controllata la tensione della batteria e questa informazione viene inviata come SMS:

Monitoraggio via SMS del peso di tre alveari per 30 dollari

A proposito, hai ricevuto l'SMS? Congratulazioni! Siamo a metà strada! Per ora la batteria può essere rimossa dal supporto; non avremo più bisogno del computer.

A proposito, il centro di controllo missione si è rivelato così compatto da poter essere riposto in un barattolo di maionese, nel mio caso una scatola traslucida di 30x60x100 mm (da biglietti da visita) si adattava perfettamente.

Sì, il sistema dormiente consuma ~2.3 mA - 90% a causa del modulo di comunicazione - non si spegne completamente, ma entra in modalità standby.

Monitoraggio via SMS del peso di tre alveari per 30 dollari

Iniziamo a creare sensori; per prima cosa, tocchiamo la disposizione dei sensori:

Monitoraggio via SMS del peso di tre alveari per 30 dollari

Questa è una pianta dell'alveare: vista dall'alto.

Classicamente negli angoli vengono installati 4 sensori (1,2,3,4)

Misureremo diversamente. O meglio, anche nella terza via. Perché i ragazzi di BroodMinder lo fanno diversamente:

Monitoraggio via SMS del peso di tre alveari per 30 dollari

In questo progetto, i sensori sono installati nelle posizioni 1 e 2, i punti 3,4 e XNUMX poggiano sulla trave.
Quindi i sensori rappresentano solo la metà del peso.
Sì, questo metodo ha meno precisione, ma è comunque difficile immaginare che le api costruiscano tutti i telaini con “lingue” di favi lungo una parete dell'alveare.

Quindi propongo di riunire i sensori al punto 5: in questo caso non è necessario schermare il sistema e, quando si utilizzano gli alveari luminosi, è assolutamente necessario accontentarsi di un sensore.

Monitoraggio via SMS del peso di tre alveari per 30 dollari

In generale, abbiamo testato due tipi di moduli sull'HX711, due tipi di sensori e due opzioni per collegarli: con un ponte di Wheatstone completo (2 sensori) e con metà, quando la seconda parte è integrata con resistori da 1k con un tolleranza dello 0.1%.
Ma quest'ultimo metodo è indesiderabile e sconsigliato anche dai produttori di sensori, quindi descriverò solo il primo.

Quindi, per un'arnia installeremo due estensimetri e un modulo HX711, lo schema elettrico è il seguente:

Monitoraggio via SMS del peso di tre alveari per 30 dollari

Sono presenti 5 metri di cavo telefonico a 4 fili dalla scheda ADC all'Arduino - ricordiamo come le api non amano i dispositivi GSM nell'alveare.

In generale, lasciamo "code" di 8 cm sui sensori, speliamo il doppino e saldiamo il tutto come nella foto sopra.

Prima di iniziare la parte di falegnameria, mettere la cera/paraffina in un contenitore adatto a sciogliersi a bagnomaria.

Adesso prendiamo il nostro legname e lo dividiamo in tre sezioni da 100mm ciascuna

Successivamente, segniamo una scanalatura longitudinale larga 25 mm, profonda 7-8 mm, rimuoviamo l'eccesso usando un seghetto e uno scalpello: dovrebbe emergere un profilo a forma di U.

La cera è riscaldata? — immergiamo lì le nostre schede ADC — questo le proteggerà dall'umidità/nebbia:

Monitoraggio via SMS del peso di tre alveari per 30 dollari

Posizioniamo il tutto su una base di legno (deve essere trattata con un antisettico per evitare che marcisca):

Monitoraggio via SMS del peso di tre alveari per 30 dollari

E infine, fissiamo i sensori con viti autofilettanti:

Monitoraggio via SMS del peso di tre alveari per 30 dollari

C'era anche l'opzione con il nastro isolante blu, ma per ragioni di umanità non la presento 😉

Dal lato Arduino facciamo quanto segue:

Spogliamo i nostri cavi telefonici, attorcigliamo insieme i fili colorati e li stagnamo.

Successivamente, saldare i contatti della scheda come nella foto:

Monitoraggio via SMS del peso di tre alveari per 30 dollari

Questo è tutto, ora per il controllo finale, mettiamo i sensori in settori del cerchio, un pezzo di compensato sopra, resettiamo il controller (mettiamo una batteria con un cappuccio a penna sul fotodiodo).

Contemporaneamente il LED dell'Arduino dovrebbe lampeggiare e dovrebbe arrivare un SMS di prova.

Successivamente, rimuovi il tappo dalla fotocellula e vai a riempire l'acqua in una bottiglia di plastica da 1.5 litri.
Appoggiamo la bottiglia sul compensato e se sono già trascorsi diversi minuti dall'accensione, rimettiamo il tappo sulla fotoresistenza (simulando un tramonto).

Dopo tre minuti il ​​LED dell'Arduino si accenderà e dovreste ricevere un SMS con valori di peso di circa 1 kg in tutte le posizioni.

Congratulazioni! Il sistema è stato assemblato con successo!

Se ora forziamo il sistema a funzionare di nuovo, la prima colonna di peso avrà degli zeri.

Si, in condizioni reali è consigliabile orientare la fotoresistenza verticalmente verso l'alto.

Ora darò un breve manuale utente:

  1. Installare estensimetri sotto le pareti posteriori delle arnie (posizionare una trave/tavola di circa 30 mm di spessore sotto quelle anteriori)
  2. Oscurare la fotoresistenza e installare la batteria: il LED dovrebbe lampeggiare e si dovrebbe ricevere un SMS di prova con il testo "INITIAL BOOT OK"
  3. Posizionare l'unità centrale alla massima distanza dalle arnie e in modo che i fili non interferiscano durante il lavoro con le api.
    Ogni sera, dopo il tramonto, riceverai un SMS con le variazioni di peso per la giornata e dal momento del lancio.
    Quando la tensione della batteria raggiunge i 3.5 V, l'SMS terminerà con la riga “!!! METTERE IN CARICA LA BATTERIA!!!"
    Il tempo di funzionamento con una batteria da 2600 mAh è di circa un mese.
    Se la batteria viene sostituita, le variazioni giornaliere del peso delle arnie non vengono ricordate.

Quali sono le prospettive?

  1. Scopri come inserire tutto questo in un progetto per github
  2. Avvia 3 famiglie di api negli alveari del sistema Palivoda (o cornute nelle persone)
  3. Aggiungi "panini" - misurando l'umidità, la temperatura e, soprattutto, analizzando il ronzio delle api.

Per ora è tutto, sinceramente tuo, apicoltore elettrico Andrey

Fonte: habr.com

Aggiungi un commento