Surveillance par SMS du poids de trois ruches pour 30 $

Mon logo


Non, ce n'est pas une offre commerciale, tel est le coût des composants du système que vous pouvez collecter après avoir lu l'article.


Un peu d'histoire:


Il y a quelque temps, j'ai décidé d'aller chercher des abeilles, et elles sont apparues ... pour toute la saison, mais ne sont pas sorties de l'hiver.
Et cela malgré le fait que tout semblait bien se passer - leurre d'automne, réchauffement avant le froid.
La ruche était un système Dadan en bois classique avec 10 cadres à partir d'une planche de 40 mm.
Mais cet hiver-là, même les apiculteurs expérimentés ont perdu beaucoup plus que d'habitude à cause des variations de température.


C'est ainsi qu'est venue l'idée d'un système de surveillance de l'état des ruches.
Après la publication de plusieurs articles sur Habr-e et la communication sur le forum des apiculteurs, j'ai décidé de passer du simple au complexe.
Le poids est le seul paramètre incontestable, mais en règle générale, les systèmes existants ne surveillent qu'une seule ruche "de référence".
Si quelque chose ne va pas avec lui (par exemple, le vol d'un essaim, la maladie des abeilles), alors les indicateurs deviennent inutiles.


Par conséquent, il a été décidé de surveiller le changement de poids de trois ruches à la fois avec un microcontrôleur et d'ajouter les autres "petits pains" après.
Le résultat est un système autonome avec une autonomie d'environ un mois sur une seule charge de la batterie 18650 et envoyant des statistiques une fois par jour.
J'ai essayé de simplifier le design autant que possible, afin qu'il puisse être répété même sans schémas, selon une photo.


La logique de travail est la suivante: au premier démarrage / reset, les relevés des capteurs installés sous les ruches sont stockés dans l'EEPROM.
De plus, chaque jour, après le coucher du soleil, le système "se réveille", lit le témoignage et envoie des SMS avec un changement de poids par jour et à partir du moment où il est allumé.
De plus, la valeur de tension de la batterie est transmise et lorsqu'elle tombe à 3,5 V, un avertissement sur la nécessité de la charge est émis, car en dessous de 3,4 V, le module de communication ne s'allume pas et les lectures de poids sont déjà "flottantes".


"Tu te souviens comment tout a commencé. Tout était la première fois."
Comment ça commence
Oui, c'était un tel ensemble de «fer» qui était à l'origine, bien que seuls les capteurs et les fils de charge aient survécu à la version finale, mais tout d'abord.
En fait, la baie de câbles n'est pas nécessaire, elle s'est avérée être au même prix que 30 m à plat.


Si vous n'avez pas peur de démonter 3 LEDs smd et une demi-centaine de points de soudure (sortie) normaux - alors allez-y!


Nous avons donc besoin de l'ensemble d'équipement / matériel suivant:


  1. Arduino Pro Mini 3V
    Vous devriez faire attention à la micropuce du convertisseur linéaire - elle doit être exactement 3,3 V - sur la puce de marquage KB 33 / LB 33 / DE A10 - les Chinois ont mélangé quelque chose avec moi, et tout le lot
    les circuits imprimés dans le magasin se sont avérés être équipés de régulateurs 5 volts et de quartz 16 MHz.
  2. USB-Ttl sur une puce CH340 - vous pouvez même 5 volts, mais pendant le firmware du microcontrôleur, Arduino devra être déconnecté du module GSM, afin de ne pas brûler ce dernier.
    Les cartes sur la puce PL2303 ne fonctionnent pas sous Windows 10.
  3. Module de communication GSM Goouu Tech IOT GA-6-B ou AI-THINKER A-6 Mini.
    Pourquoi vous y êtes-vous arrêté? Neoway M590 - un concepteur qui nécessite des danses séparées avec des tambourins, GSM SIM800L - n'aimait pas le niveau de logique non standard de 2,8 V, qui nécessite une coordination même avec un arduino à trois volts.
    De plus, la solution d'AiThinker a une consommation d'énergie minimale (lors de l'envoi de SMS, je n'ai pas vu de courant supérieur à 100mA).
  4. Antenne GSM GPRS 3DBI (sur la photo ci-dessus - une écharpe rectangulaire avec une "queue", pendant 9 heures)
  5. Pack de démarrage pour un opérateur ayant une bonne couverture à l'emplacement de votre rucher.
    Oui, le forfait doit d'abord être activé dans un téléphone ordinaire, désactiver la demande de code PIN à l'entrée et reconstituer le compte.
    Maintenant, il existe de nombreuses options avec des noms dans le style de "Sensor", "IoT" - ils ont des frais mensuels légèrement inférieurs.
  6. dupont fil 20cm mère mère - 3 pcs. (pour connecter Arduino à USB-TTL)
  7. 3 pièces HX711 - ADC pour balances
  8. 6 pesons pesant jusqu'à 50 kg
  9. 15 mètres de câble téléphonique à 4 conducteurs - pour connecter des modules de poids avec ARDUINO.
  10. Photorésistance GL5528 (ceci est important, avec une résistance à l'obscurité de 1MOhm et une résistance à la lumière de 10-20kOhm) et deux résistances conventionnelles de 20k
  11. Un morceau de ruban adhésif double face de 18x18 mm d'épaisseur - pour fixer l'arduino au module de communication.
  12. Le support de batterie 18650 et, en fait, la batterie elle-même ~ 2600mAh.
  13. Un peu de cire ou de paraffine (bougie pour tablette de lampe aromatique) - pour la protection contre l'humidité HX711
  14. Un morceau de poutre en bois 25x50x300mm pour la base des cellules de charge.
  15. Une douzaine de vis autotaraudeuses avec une rondelle de pression de 4,2x19 mm pour le montage des capteurs sur la base.

La batterie peut être retirée du démontage des ordinateurs portables - plusieurs fois moins cher qu'un nouveau, et la capacité sera beaucoup plus élevée que celle de l'UltraFire chinois - j'ai obtenu 1500 contre 450 (cela vient du pare-feu 6800 ;-)


De plus, il faudra des mains tordues, un fer à souder EPSN-25, de la colophane et de la soudure POS-60.


Fer à souder


Il y a encore 5 ans, j’utilisais un fer à souder soviétique avec une piqûre de cuivre (je n’ai pas eu de stations de soudage - je l’ai pris pour un essai routier et j’ai fini avec le circuit EPSN).
Mais après son échec et plusieurs monstrueux chinois sous (d) des arbres de Noël, ce dernier s'appelait Sparte - une chose aussi grave que le nom a cessé
sur un produit avec un contrôleur de température.


Alors allons-y!


GSM A6


Pour commencer, deux LED sont soudées à partir du module GSM (l'endroit où elles ont été encerclées dans un ovale orange)
Nous insérons la carte SIM avec les pads sur la carte de circuit imprimé, le coin biseauté sur la photo est indiqué par la flèche.


Arduino Pro Mini 3v


Ensuite, nous effectuons une procédure similaire avec la LED sur la carte Arduino (l'ovale à gauche de la puce carrée),
Souder le peigne en quatre contacts (1),
Nous prenons deux résistances de 20k, tournons les fils d'un côté, soudons la torsion dans le trou de contact A5, les fils restants dans le RAW et GND arduinki (2),
Nous raccourcissons la photorésistance à 10 mm et la soudons aux conclusions des cartes GND et D2 (3).


Il est maintenant temps ruban électrique bleu ruban adhésif double face - collez-le sur le support de carte SIM du module de communication, et en haut - arduino - le bouton rouge (argent) nous fait face et est situé au-dessus de la carte SIM.


Souder la puissance: plus du condensateur du module de communication (4) à la broche Arduino RAW.
Le fait est que le module de communication lui-même nécessite 3,4-4,2 V pour son alimentation, et son contact PWR est connecté à un convertisseur abaisseur abaisseur, donc pour un fonctionnement à partir de la tension Li-ion, il faut appliquer en contournant cette partie du circuit.


En arduino, au contraire, nous démarrons l'alimentation via un convertisseur linéaire - à faible courant, la chute de tension de décrochage est de 0,1 V.
Mais en appliquant une tension stabilisée aux modules HX711, nous nous débarrassons de la nécessité de les affiner sous une tension inférieure (et en même temps d'augmenter le bruit à la suite de cette opération).


Ensuite, nous soudons les cavaliers (5) entre les contacts PWR-A1, URX-D4 et UTX-D5, la masse GND-G (6) et enfin l'alimentation du support de batterie 18650 (7), connectons l'antenne (8).
Maintenant, nous prenons le convertisseur USB-TTL et connectons les contacts RXD-TXD et TXD-RXD, GND-GND avec les fils Dupont à ARDUINO (peigne 1):


Version Première


Sur la photo ci-dessus - la première version (de trois) du système, qui a été utilisée pour le débogage.


Et maintenant, pendant un certain temps, nous nous éloignons du fer à souder et passons à la partie logicielle.
Je vais décrire la séquence d'actions pour Windows:
Tout d'abord, vous devez télécharger et installer / décompresser le programme Arduino IDE - la version actuelle est 1.8.9, mais j'utilise 1.6.4


Pour plus de simplicité, nous décompressons l'archive dans le dossier C: \ arduino- "votre_version_numéro", à l'intérieur nous aurons le / dist, les pilotes, les exemples, le matériel, java, lib, les bibliothèques, la référence, les dossiers d'outils, ainsi que le fichier exécutable arduino (entre autres).


Nous avons maintenant besoin d'une bibliothèque pour travailler avec le HX711 ADC - le bouton vert "cloner ou télécharger" - télécharger ZIP.
Le contenu (dossier HX711-master) est placé dans le répertoire C: \ arduino- "your_version_number" \ bibliothèques


Et bien sûr, le pilote pour USB-TTL provient du même github - à partir de l'archive décompressée, le fichier SETUP d'installation est simplement lancé.


Ok, lancez et configurez le programme C: \ arduino- "votre_version_number" \ arduino


Interface de programme


Nous allons à l'élément "Outils" - sélectionnez la carte "Arduino Pro ou Pro Mini", le processeur Atmega 328 3,3 V 8 MHz, le port est le numéro autre que le système COM1 (il apparaît après l'installation du pilote CH340 avec l'adaptateur USB-TTL connecté)


Ok, copiez l'esquisse suivante (programme) et collez-la dans la fenêtre Arduino IDE


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); } } 

Dans la première ligne, entre guillemets char phone_no [] = "+ 123456789012"; - au lieu de 123456789012, nous mettons notre numéro de téléphone avec le code du pays auquel le SMS sera envoyé.


Maintenant, cliquez sur le bouton de vérification (au-dessus du numéro un dans la capture d'écran ci-dessus) - si ci-dessous (sous le triple dans la capture d'écran) "La compilation est terminée" - alors nous pouvons flasher le microcontrôleur.


Ainsi, l'USB-TTL est connecté à l'ARDUINO et à l'ordinateur, nous mettons la batterie chargée dans le support (généralement sur un nouvel arduino, la LED commence à clignoter une fois par seconde).


Maintenant, le firmware - nous nous entraînons à appuyer sur le bouton rouge (argent) du microcontrôleur - cela devra être fait strictement à un certain moment !!!
Est-il Cliquez sur le bouton "Télécharger" (au-dessus des deux dans la capture d'écran), et regardez attentivement la ligne au bas de l'interface (sous les trois écrans).
Dès que l'inscription "compilation" est remplacée par "download" - appuyez sur le bouton rouge (reset) - si tout va bien - l'adaptateur USB-TTL clignote joyeusement, et l'inscription "Downloaded" en bas de l'interface


Maintenant, pendant que nous attendons l'arrivée du SMS de test sur le téléphone, je vais vous expliquer comment fonctionne le programme:


La deuxième version du stand de débogage


Sur la photo - la deuxième version du stand de débogage.


La première fois que le système est allumé, il vérifie les octets 500 et 501 de l'EEPROM; s'ils sont égaux, les données d'étalonnage n'ont pas été enregistrées et l'algorithme passe à la section de configuration.
La même chose se produit si, lorsqu'elle est allumée, la photorésistance est ombrée (avec un capuchon d'un stylo) - le mode de réinitialisation des paramètres est activé.


Des jauges de contrainte devraient déjà être installées sous les ruches, car nous fixons simplement le niveau initial de zéro, puis mesurons le changement de poids (maintenant des zéros viendront, car nous n'avons encore rien connecté).
Sur Arduino, la LED intégrée de la broche 13 clignote.
Si la réinitialisation ne se produit pas, la LED s'allume pendant 12 secondes.
Après cela, un SMS de test est envoyé avec le message "INITIAL BOOT OK" et la tension de la batterie.
Le module de communication s'éteint et après 3 minutes, la carte Arduino met les cartes HX711 ADC en mode veille et s'endort d'elle-même.
Un tel retard a été fait afin de ne pas interférer avec un module GSM en état de marche (après l'avoir éteint, il "police" pendant un certain temps).


De plus, nous avons une interruption sur le capteur photo travaillant sur la deuxième broche (plus le levage est activé par la fonction pullup).
Dans ce cas, après un déclenchement de 3 minutes supplémentaires, l'état de la photorésistance est vérifié pour exclure les faux positifs / répétés.
Ce qui est caractéristique, sans aucun réglage, le système fonctionne 10 minutes après le coucher du soleil astronomique par temps nuageux et après 20 par temps clair.
Oui, afin que chaque fois que le système ne se réinitialise pas, au moins le premier module HX711 doit être connecté (broches DT-D10, SCK-A0)


Ensuite, les lectures des cellules de charge sont prises, le changement de poids par rapport à l'opération précédente (le premier numéro de la ligne après Hive) est calculé et dès le premier démarrage, la tension de la batterie est vérifiée et ces informations sont envoyées sous forme de SMS:


Exemple de système


Au fait, avez-vous reçu des SMS? Félicitations! Nous sommes à mi-chemin! Bien que la batterie puisse être retirée de son support, nous n'aurons plus besoin d'un ordinateur.


À propos, le centre de contrôle de vol s'est avéré si compact qu'il peut tenir dans un pot de mayonnaise, dans mon cas, une boîte translucide de 30x60x100 mm (provenant de cartes de visite) parfaitement adaptée.


Oui, le système de couchage consomme environ 2,3 mA - 90% en raison du module de communication - il ne s'éteint pas complètement, mais passe en mode veille.


Pas houston


Nous procédons à la fabrication de capteurs, pour commencer, abordons la disposition des capteurs:


Emplacement du capteur


Ceci est le plan de la ruche - vue de dessus.


Classiquement, 4 capteurs sont installés dans les coins (1,2,3,4)


Nous mesurerons différemment. Ou plutôt, même dans le troisième. Comme les gars de BroodMinder font différemment:


Broodminder


Dans cette conception, les capteurs sont installés aux positions 1 et 2, les points 3.4 sont basés sur le faisceau.
Ensuite, seulement la moitié du poids tombe sur les capteurs.
Oui, une telle méthode a moins de précision, mais il est difficile d'imaginer que les abeilles ont construit tous les cadres avec des «langues» des nids d'abeilles le long d'un mur de la ruche.


Donc, je propose de réduire les capteurs au point 5 au total - alors il n'est pas nécessaire de protéger le système, et lorsque vous utilisez des ruches lumineuses, il est tout à fait nécessaire de le faire avec un seul capteur.


Capteur et options de capteur


En général, nous avons testé deux types de modules sur le HX711, deux types de capteurs et deux options pour les connecter - avec un pont de Wheatstone complet (2 capteurs) et demi lorsque la deuxième partie est complétée par des résistances 1k avec une tolérance de 0,1%.
Mais cette dernière méthode n'est pas souhaitable et n'est pas recommandée même par les fabricants de capteurs, donc je ne décrirai que la première.


Ainsi, sur une ruche, nous installerons deux cellules de charge et un module HX711, le schéma de câblage est le suivant:



De la carte ADC à l'arduino, il y a 5 mètres d'un câble téléphonique à 4 conducteurs - nous nous souvenons que les abeilles n'aiment pas les appareils GSM dans la ruche .


En général, sur les capteurs nous laissons des "queues" de 8 cm, nous nettoyons la paire torsadée et nous dessoudons tout comme sur la photo ci-dessus.


Observez la polarité!


Je répète encore une fois - observez la polarité!


Si le fil noir de la cellule de charge est connecté à l'E + de la carte HX711, le rouge passe à A +


Sinon, au lieu de prendre du poids, vous recevrez une réduction, mais cela n'a pas d'importance, dans ce cas, il suffit d'échanger les fils rouges des cellules de charge (A + et A-) sur la carte ADC.


Avant de commencer la menuiserie, placez la cire / paraffine dans un récipient approprié pour faire fondre dans un bain-marie.


Maintenant, nous prenons notre poutre et la divisons en trois segments de 100 mm


Ensuite, nous délimitons une rainure longitudinale de 25 mm de large, de 7 à 8 mm de profondeur, à l'aide d'une scie à métaux et d'un burin, nous enlevons l'excédent - un profil en forme de U devrait sortir.


La cire s'est réchauffée? - nous y trempons nos cartes ADC - cela les protégera de l'humidité / du brouillard:


Protection ADC contre sollicitée


Nous avons tout sur une base en bois (il faut le traiter avec un antiseptique de décomposition):


Assemblage


Et enfin, nous fixons les capteurs avec des vis:


Capteur prêt


Il y avait une autre option avec un ruban électrique bleu, mais pour des raisons d'humanité je ne l'apporte pas ;-)


Du côté d'Arduino, nous faisons ce qui suit:


Nous nettoyons nos câbles téléphoniques, torsadons les fils de couleur ensemble, maigres.


Après cela, nous soudons aux contacts du conseil d'administration comme sur la photo:


Finale


Voilà, maintenant pour le contrôle final, placez les capteurs sur les secteurs du cercle, en haut - un morceau de contreplaqué, mettez le contrôleur à zéro (mettez la batterie avec le capuchon sur la photodiode du stylo plume).


Dans ce cas, la LED de l'arduino devrait clignoter et un SMS de test devrait apparaître.


Ensuite, nous retirons les bouchons de la photocellule et nous allons chercher de l'eau dans une bouteille en plastique de 1,5 litre.
Nous mettons la bouteille sur du contreplaqué et si plusieurs minutes se sont déjà écoulées depuis la mise sous tension, remettez le capuchon sur la photorésistance (simulant un coucher de soleil).


Au bout de trois minutes, la LED de l'arduino s'allume et vous devriez recevoir un SMS avec une valeur de poids d'environ 1 kg à toutes les positions.


Félicitations! Le système est assemblé avec succès!


Si nous faisons maintenant fonctionner à nouveau le système, alors dans la première colonne du poids, nous obtenons des zéros.


Oui, dans des conditions réelles, il est souhaitable d'orienter la photorésistance verticalement vers le haut.


Je vais maintenant donner un bref manuel sur l'utilisation de:


  1. Installez des jauges de contrainte sous les parois arrière des ruches (sous le devant, remplacez une poutre / planche de 30 mm d'épaisseur)
  2. Ombrez la photorésistance et insérez la batterie - la LED devrait clignoter et un SMS de test avec le texte "INITIAL BOOT OK" devrait venir
  3. Positionnez l'unité centrale aussi loin que possible des ruches et afin que les fils n'interfèrent pas lorsque vous travaillez avec des abeilles.
    Chaque soir, après le coucher du soleil, les SMS arriveront avec un changement de poids par jour et à partir du moment du lancement.
    Lorsque la tension de la batterie atteint 3,5 V, le SMS se termine par la ligne "!!! CHARGE BATTERY !!!"
    Le temps de fonctionnement d'une batterie d'une capacité de 2600mAh est d'environ un mois.
    En cas de remplacement de la batterie, les variations quotidiennes du poids des ruches ne sont pas mémorisées.

Et ensuite?


  1. Pour comprendre comment mettre tout cela dans un projet pour github
  2. Commencez 3 familles d'abeilles dans les ruches du système Palivoda (ou les cornes)
  3. Ajoutez des "petits pains" - une mesure de l'humidité, de la température, et surtout - une analyse du bourdonnement des abeilles.

Occupons-nous de tout, sincèrement vôtre, apiculteur électrique Andrey


PS Pour les nouvelles publications sur ce sujet, voir beefree.xyz

Source: https://habr.com/ru/post/fr444326/


All Articles