Trijų avilių svorio stebėjimas SMS žinute už 30 USD

Trijų avilių svorio stebėjimas SMS žinute už 30 USD

Ne, tai nėra komercinis pasiūlymas, tai yra sistemos komponentų, kuriuos galite surinkti perskaitę straipsnį, kaina.

Šiek tiek fono:

Prieš kurį laiką nusprendžiau paimti bites, jos pasirodė... visam sezonui, bet nepaliko žiemos.
Ir tai nepaisant to, kad atrodė, kad jis viską darė teisingai – rudeninį papildomą maistą, atšilimą prieš šalčius.
Avilys buvo klasikinė medinė sistema „Dadan“, skirta 10 rėmų iš 40 mm lentos.
Tačiau tą žiemą dėl temperatūrų svyravimų net patyrę bitininkai prarado daug daugiau nei įprastai.

Taip kilo idėja sukurti avilio sveikatos stebėjimo sistemą.
Paskelbęs keletą straipsnių apie Habrą ir kalbėdamas bitininkų forume, nusprendžiau nuo paprasto pereiti prie sudėtingo.
Svoris yra vienintelis nenuginčijamas parametras, tačiau, kaip taisyklė, esamos sistemos stebi tik vieną „referencinį“ avilį.
Jei kas nors negerai (pavyzdžiui, spiečiaus pasitraukimas, bičių liga), tada rodikliai tampa nereikšmingi.

Todėl buvo nuspręsta vienu mikrovaldikliu stebėti iš karto trijų avilių svorio kitimą, o po to pridėti kitų „gėrybių“.
Dėl to gavome autonominę sistemą, kurios veikimo laikas yra apie mėnesį vienu 18650 baterijos įkrovimu ir kartą per dieną siunčiant statistiką.
Stengiausi kiek įmanoma supaprastinti dizainą, kad būtų galima pakartoti ir be schemų, iš vienos nuotraukos.

Veikimo logika yra tokia: pirmą kartą paleidus / atstatant, po aviliais sumontuotų jutiklių rodmenys išsaugomi EEPROM.
Be to, kiekvieną dieną, po saulėlydžio, sistema „pabunda“, nuskaito rodmenis ir siunčia SMS su svorio pasikeitimu per dieną ir nuo įjungimo momento.
Be to, perduodama akumuliatoriaus įtampos vertė, o jai nukritus iki 3.5 V, išsiunčiamas įspėjimas apie būtinybę krauti, nes žemiau 3.4 V ryšio modulis neįsijungia, o svorio rodmenys jau „plaukioja“. toli".

„Ar prisimeni, kaip viskas prasidėjo. Viskas buvo pirmą kartą ir vėl.
Trijų avilių svorio stebėjimas SMS žinute už 30 USD
Taip, iš pradžių buvo toks „geležies“ rinkinys, nors iki galutinio varianto išliko tik tenzo matuokliai ir laidai, bet pirmiausia.
Tiesą sakant, kabelio įlankos nereikia, tik pasirodė, kad kaina tokia pati kaip 30 m tiesi.

Jei nebijai išardyti 3 smd-LED ir pusšimčio taškų įprasto (išvesties) litavimo, tada pirmyn!

Taigi, mums reikia šios įrangos / medžiagų rinkinio:

  1. Arduino Pro Mini 3V
    Turėtumėte atkreipti dėmesį į linijinio keitiklio lustą - jis turėtų būti lygiai 3.3 V - ant lusto žymėjimo KB 33 / LB 33 / DE A10 - kinai kažką supainiojo su manimi ir visa partija
    parduotuvėje esančios plokštės pasirodė su 5 voltų reguliatoriais ir kvarciniu 16MHz dažniu.
  2. USB-Ttl CH340 mikroschemoje – galimas net 5 voltų, tačiau tuomet mikrovaldiklio programinės įrangos metu Arduino reikės atjungti nuo GSM modulio, kad pastarasis nesudegintų.
    Plokštės, pagrįstos PL2303 lustu, neveikia naudojant „Windows 10“.
  3. GSM ryšio modulis Goouu Tech IOT GA-6-B arba AI-THINKER A-6 Mini.
    Kodėl ten sustojote? Neoway M590 – konstruktorius, kuriam reikia atskirų šokių su tamburinais, GSM SIM800L – nepatiko nestandartinis 2.8V loginis lygis, reikalaujantis derinimo net su trijų voltų arduino.
    Be to, AiThinker sprendimas turi minimalų energijos suvartojimą (siųsdamas SMS nemačiau, kad srovė būtų didesnė nei 100 mA).
  4. Antena GSM GPRS 3DBI (aukščiau esančioje nuotraukoje - stačiakampis šalikas su "uodega", 9 val.)
  5. Pradinis paketas operatoriui, turintis gerą aprėptį jūsų bityno vietoje.
    Taip, paketą pirmiausia reikia suaktyvinti įprastame telefone, prie įėjimo IŠJUNGTI PIN kodo užklausą ir papildyti sąskaitą.
    Dabar yra daug variantų su tokiais pavadinimais kaip „Sensor“, „IoT“ – jiems šiek tiek mažesnis mėnesinis mokestis.
  6. vielos dupontas 20cm moteriškas-moteris - 3 vnt. (Jei norite prijungti Arduino prie USB-TTL)
  7. 3 vnt. HX711 - ADC svarstyklėms
  8. 6 apkrovos elementai, skirti svoriui iki 50 kg
  9. 15 metrų 4 laidų telefono kabelio - svorio moduliams sujungti su ARDUINO.
  10. Fotorezistorius GL5528 (svarbu būtent tai, kurio tamsos varža 1MΩ ir šviesos varža 10-20kΩ) ir du įprastiniai 20k rezistoriai
  11. Dvipusės "storos" juostos gabalas 18x18mm - arduino tvirtinimui prie ryšio modulio.
  12. 18650 akumuliatoriaus laikiklis ir, tiesą sakant, pati baterija ~ 2600mAh.
  13. Truputis vaško arba parafino (aromatinės lempos žvakė-tabletė) - apsaugai nuo drėgmės HX711
  14. Medinės sijos gabalas 25x50x300mm deformacijų matuoklių pagrindui.
  15. Keliolika savisriegių varžtų su presavimo poveržle 4,2x19 mm jutikliams pritvirtinti prie pagrindo.

Bateriją galima pasiimti išardžius nešiojamuosius kompiuterius - daug kartų pigiau nei naujo, o talpa pasirodys daug didesnė nei kiniško UltraFire - gavau 1500 prieš 450 (tai ugniai 6800 😉

Be to, jums reikės nekreivų rankų, EPSN-25 lituoklio, kanifolijos ir POS-60 litavimo.

Trijų avilių svorio stebėjimas SMS žinute už 30 USD

Prieš 5 metus naudojau sovietinį lituoklį su variniu antgaliu (litavimo stotelės man netiko - paėmiau jį bandomajam važiavimui ir baigiau grandinę su EPSN).
Tačiau po nesėkmės ir kelių kiniškų siaubingų netikrų (d) medžių pastarasis gavo pavadinimą Sparta – toks atšiaurus dalykas, kaip ir pavadinimas, nustojo.
ant gaminio su termostatu.

Taigi eikime!

Trijų avilių svorio stebėjimas SMS žinute už 30 USD

Pirmiausia iš GSM modulio išlydome du šviesos diodus (vieta, kur jie buvo apsupti oranžine ovalo forma)
Į spausdintinę plokštę įdedame SIM kortelę su kontaktinėmis trinkelėmis, nuotraukoje nuožulnus kampas pažymėtas rodykle.

Trijų avilių svorio stebėjimas SMS žinute už 30 USD

Tada panašią procedūrą atliekame su šviesos diodu ant Arduino plokštės (ovalios kvadratinės lusto kairėje),
Šukas lituojame į keturis kontaktus (1),
Paimame du 20k rezistorius, susukame laidus iš vienos pusės, lituojame posūkį į kontakto angą A5, likusius laidus RAW ir GND arduino (2),
Fotorezistoriaus kojeles patrumpiname iki 10mm ir prilituojame prie plokštės GND ir D2 kaiščių (3).

Dabar atėjo laikas mėlynai dvipusės juostos elektrinei juostai - klijuojame ją ant ryšio modulio SIM kortelės laikiklio, o viršuje - arduino - raudonas (sidabrinis) mygtukas yra nukreiptas į mus ir yra virš SIM kortelė.

Lituojame maitinimą: plius nuo ryšio modulio kondensatoriaus (4) iki RAW arduino kaiščio.
Faktas yra tas, kad pačiam ryšio moduliui maitinimui reikia 3.4–4.2 V, o jo PWR kontaktas yra prijungtas prie sumažinto keitiklio, todėl norint dirbti iš ličio jonų, įtampa turi būti tiekiama aplenkiant šią grandinės dalį. .

Arduino, priešingai, mes tiekiame maitinimą per linijinį keitiklį - esant mažoms srovės sąnaudoms, įtampos kritimas yra 0.1 V.
Tačiau HX711 moduliams pritaikę stabilizuotą įtampą, atsikratome poreikio juos modifikuoti žemesnei įtampai (o kartu ir dėl šios operacijos didėjančio triukšmo).

Tada lituojame trumpiklius (5) tarp PWR-A1, URX-D4 ir UTX-D5 kontaktų, GND-G įžeminimo (6) ir galiausiai maitinimo šaltinį iš 18650 baterijos laikiklio (7), prijungiame anteną (8). ).
Dabar paimame USB-TTL keitiklį ir prijungiame RXD-TXD ir TXD-RXD, GND-GND kontaktus su Dupont laidais prie ARDUINO (1 šukos):

Trijų avilių svorio stebėjimas SMS žinute už 30 USD

Aukščiau esančioje nuotraukoje parodyta pirmoji sistemos versija (iš trijų), kuri buvo naudojama derinimui.

O dabar kurį laiką nukrypsime nuo lituoklio ir pereisime prie programinės įrangos dalies.
Aprašysiu „Windows“ veiksmų seką:
Pirmiausia turite atsisiųsti ir įdiegti / išpakuoti programą „Arduino IDE“ - Dabartinė versija yra 1.8.9, bet aš naudoju 1.6.4

Paprastumo dėlei archyvą išpakuojame į aplanką C: arduino-"jūsų_versijos numeris", viduje turėsime /dist, tvarkykles, pavyzdžius, aparatinę įrangą, java, lib, bibliotekas, nuorodą, įrankių aplankus, taip pat arduino vykdomąjį failą. (tarp kitų).

Dabar mums reikia bibliotekos, kad galėtume dirbti su ADC HX711 - žalias mygtukas "klonuoti arba atsisiųsti" - atsisiųsti ZIP.
Turinys (aplankas HX711-master) dedamas į C: arduino-"your_version_number"bibliotekų katalogą

Ir, žinoma, vairuotojas USB-TTL iš to paties github – iš išpakuoto archyvo, diegimą tiesiog paleidžia SETUP failas.

Gerai, paleiskite ir sukonfigūruokite programą C: arduino-"jūsų_versijos numeris" arduino

Trijų avilių svorio stebėjimas SMS žinute už 30 USD

Einame į elementą "Įrankiai" - pasirinkite "Arduino Pro arba Pro Mini" plokštę, Atmega 328 3.3V 8 MHz procesorių, prievadą - kitą numerį nei sistemos COM1 (atsiranda įdiegus CH340 tvarkyklę su USB-TTL prijungtas adapteris)

Gerai, nukopijuokite šį eskizą (programą) ir įklijuokite jį į Arduino IDE langą

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

  }

}

Pirmoje eilutėje kabutėse char phone_no[]="+123456789012"; - vietoj 123456789012 įdedame savo telefono numerį su šalies kodu, į kurią bus siunčiama SMS.

Dabar paspaudžiame tikrinimo mygtuką (virš vieno numerio aukščiau esančiame ekrano kopijoje) - jei žemiau (po trimis ekrane) „Kompiliacija baigta“ - tada galime mirkyti mikrovaldiklį.

Taigi, USB-TTL jungiamas prie ARDUINO ir kompiuterio, į laikiklį dedame įkrautą bateriją (dažniausiai ant naujo arduino LED lemputė pradeda mirksėti kartą per sekundę).

Dabar programinė įranga - mes mokomės paspausti raudoną (sidabrinį) mikrovaldiklio mygtuką - tai reikės padaryti griežtai tam tikru momentu !!!
Valgyti? Spustelėkite mygtuką „Įkelti“ (virš dviejų ekrano kopijoje) ir atidžiai pažiūrėkite į sąsajos apačioje esančią eilutę (po trimis ekrano dalimis).
Kai tik užrašą „kompiliacija“ pakeičia „įkėlimas“ - paspauskite raudoną mygtuką (reset) - jei viskas gerai - USB-TTL adapterio lemputės linksmai mirksi, o sąsajos apačioje - užrašas "Loaded" “

Dabar, kol laukiame bandomosios SMS žinutės į telefoną, papasakosiu, kaip veikia programa:

Trijų avilių svorio stebėjimas SMS žinute už 30 USD

Nuotraukoje - antroji derinimo stendo versija.

Pirmą kartą įjungus, sistema patikrina EEPROM 500 ir 501 baitus, jei jie yra lygūs, tada kalibravimo duomenys neįrašomi, o algoritmas pereina į sąrankos skyrių.
Tas pats atsitinka, jei įjungus fotorezistorius yra tamsesnis (su rašiklio dangteliu) - įjungiamas atstatymo režimas.

Apkrovos elementai jau turėtų būti sumontuoti po aviliais, nes mes tiesiog nustatome pradinį nulio lygį ir tada matuojame svorio pokytį (dabar jis bus tik nulis, nes dar nieko nesujungėme).
Tuo pačiu metu „Arduino“ mirksės įmontuotas 13 kaiščio šviesos diodas.
Jei atstatymas neįvyksta, šviesos diodas užsidega 12 sekundžių.
Po to išsiunčiama bandomoji SMS žinutė „INITIAL BOOT OK“ ir akumuliatoriaus įtampa.
Ryšio modulis išsijungia, o po 3 minučių Arduino plokštė perkelia HX711 ADC plokštes į miego režimą ir užmiega pati.
Toks uždelsimas daromas tam, kad nepagautų imtuvų iš veikiančio GSM modulio (išjungus kurį laiką „fonituoja“).

Be to, ant antrojo kaiščio turime nuotraukų jutiklio pertraukimą (teigiamas ištraukimas įjungtas naudojant ištraukimo funkciją).
Tuo pačiu metu, suaktyvinus dar 3 minutes, patikrinama fotorezistoriaus būsena - kad būtų išvengta pasikartojančių / klaidingų teigiamų rezultatų.
Žodžiu, be jokio reguliavimo sistema veikia 10 minučių po astronominio saulėlydžio debesuotu oru ir 20 minučių vėliau giedru oru.
Taip, kad sistema neatsistatytų kiekvieną kartą ją įjungus, turi būti prijungtas bent pirmasis HX711 modulis (kaiščiai DT-D10, SCK-A0)

Tada paimami apkrovos elementų rodmenys, apskaičiuojamas svorio pokytis nuo ankstesnės operacijos (pirmas skaičius eilutėje po Hive) ir nuo pirmo įtraukimo, patikrinama akumuliatoriaus įtampa ir ši informacija siunčiama TRUMPOJI ŽINUTĖ:

Trijų avilių svorio stebėjimas SMS žinute už 30 USD

Beje, ar gavote SMS žinutę? Sveikiname! Mes esame kelio viduryje! Bateriją dar galima išimti iš laikiklio, toliau kompiuterio mums nereikės.

Beje, misijos valdymo centras pasirodė toks kompaktiškas, kad telpa į majonezo indelį, mano atveju puikiai tiko permatoma 30x60x100mm dydžio dėžutė (iš vizitinių kortelių).

Taip, miego sistema sunaudoja ~2.3mA - 90% dėl ryšio modulio - visiškai neišsijungia, o pereina į budėjimo režimą.

Trijų avilių svorio stebėjimas SMS žinute už 30 USD

Mes pereiname prie jutiklių gamybos, pirmiausia palieskime jutiklių išdėstymą:

Trijų avilių svorio stebėjimas SMS žinute už 30 USD

Toks avilio planas – vaizdas iš viršaus.

Klasikiniu būdu kampuose sumontuoti 4 jutikliai (1,2,3,4)

Matuosime kitaip. O tiksliau net trečiuoju būdu. Kadangi vaikinai iš BroodMinder tai daro kitaip:

Trijų avilių svorio stebėjimas SMS žinute už 30 USD

Šioje konstrukcijoje jutikliai sumontuoti 1 ir 2 padėtyse, 3,4 ir XNUMX taškai remiasi į spindulį.
Tada jutikliai sudaro tik pusę svorio.
Taip, šis metodas pasižymi mažesniu tikslumu, bet vis tiek sunku įsivaizduoti, kad bitės su korių „liežuvėliais“ sumontavo visus rėmus išilgai vienos avilio sienos.

Taigi, aš siūlau paprastai sumažinti jutiklius iki 5 taško - tada nereikia ekranuoti sistemos, o naudojant šviesius avilius, galite išvis daryti su vienu jutikliu.

Trijų avilių svorio stebėjimas SMS žinute už 30 USD

Apskritai HX711 buvo išbandyti dviejų tipų moduliai, dviejų tipų jutikliai ir dvi jų prijungimo galimybės - su pilnu Wheatstone tiltu (2 jutikliai) ir su puse, kai antroji dalis papildyta 1k rezistoriais su 0.1% tolerancija.
Bet pastarasis būdas yra nepageidautinas ir nerekomenduojamas net jutiklių gamintojų, todėl aprašysiu tik pirmąjį.

Taigi, viename avilyje įdiegsime du apkrovos elementus ir vieną HX711 modulį, laidų schema yra tokia:

Trijų avilių svorio stebėjimas SMS žinute už 30 USD

Nuo ADC plokštės iki arduino yra 5 metrai 4 gyslų telefono kabelio - prisimename, kaip bitės nemėgsta GSM įrenginių avilyje.

Apskritai ant jutiklių paliekame 8 cm „uodegėlės“, išvalome vytos poros ir viską išlituojame, kaip aukščiau esančioje nuotraukoje.

Prieš pradėdami dailidės darbus, įdėkite vašką/parafiną į tinkamą indą, kad ištirptų vandens vonioje.

Dabar paimame medieną ir padalijame į tris segmentus po 100 mm

Toliau pažymime 25 mm pločio, 7-8 mm gylio išilginį griovelį, perteklių pašaliname metalo pjūklu ir kaltu - turi išeiti U formos profilis.

Ar vaškas sušilo? - ten panardiname ADC plokštes - tai apsaugos jas nuo drėgmės / rūko:

Trijų avilių svorio stebėjimas SMS žinute už 30 USD

Viską dedame ant medinio pagrindo (būtina apdoroti antiseptiku nuo skilimo):

Trijų avilių svorio stebėjimas SMS žinute už 30 USD

Ir galiausiai jutiklius pritvirtiname savisriegiais varžtais:

Trijų avilių svorio stebėjimas SMS žinute už 30 USD

Buvo ir kitas variantas su mėlyna elektros juosta, bet dėl ​​žmogiškumo aš jo nekeliau 😉

Iš Arduino pusės atlikite šiuos veiksmus:

Mes valome savo telefono laidus, susukame spalvotus laidus, žaidžiame triukus.

Po to lituokite prie plokštės kontaktų, kaip nuotraukoje:

Trijų avilių svorio stebėjimas SMS žinute už 30 USD

Tai tiek, dabar galutiniam patikrinimui į apskritimo sektorius dedame jutiklius, ant viršaus - faneros gabalą, atstatome valdiklį (baterija su rašiklio dangteliu dedame ant fotodiodo).

Tuo pačiu metu arduino šviesos diodas turėtų mirksėti ir turėtų ateiti bandomoji SMS žinutė.

Tada nuimame dangtelį nuo fotoelemento ir einame rinkti vandens į 1.5 litro plastikinį butelį.
Buteliuką dedame ant faneros ir, jei jau praėjo kelios minutės nuo įjungimo, vėl uždedame dangtelį ant fotorezistoriaus (imituojame saulėlydį).

Po trijų minučių arduino šviesos diodas užsidegs ir turėtumėte gauti SMS žinutę su maždaug 1 kg svorio vertėmis visose padėtyse.

Sveikiname! sistema sėkmingai surinkta!

Jei dabar priversime sistemą vėl veikti, tada pirmajame svorio stulpelyje bus gauti nuliai.

Taip, realiomis sąlygomis pageidautina fotorezistorių orientuoti vertikaliai į viršų.

Dabar pateiksiu trumpą naudojimo vadovą:

  1. Sumontuokite apkrovos elementus po galinėmis avilių sienelėmis (po priekinėmis pakeiskite ~ 30 mm storio siją / lentą)
  2. Uždenkite fotorezistorių ir įdėkite bateriją – turi mirksėti šviesos diodas ir ateis bandomoji SMS žinutė su tekstu „INITIAL BOOT OK“
  3. Centrinį bloką pastatykite maksimaliu atstumu nuo avilių ir taip, kad laidai netrukdytų dirbant su bitėmis.
    Kiekvieną vakarą, po saulėlydžio, ateis SMS su svorio pasikeitimu per dieną ir nuo paleidimo.
    Kai akumuliatoriaus įtampa pasieks 3.5 V, SMS baigsis eilute „!!! ĮKRAUTI BATERIJĄ!!!"
    Vienos 2600 mAh talpos baterijos veikimo laikas yra apie mėnesį.
    Keičiant akumuliatorių, kasdieniai avilių svorio pokyčiai neįsimejami.

Kas toliau?

  1. Išsiaiškinkite, kaip visa tai išdėstyti „github“ projekte
  2. Turėkite 3 bičių kolonijas Palivodos sistemos aviliuose (arba raguotus žmonėms)
  3. Pridėkite „bandeles“ – drėgmės, temperatūros matavimą, o svarbiausia – bičių zvimbimo analizę.

Tai kol kas viskas, nuoširdžiai jūsų, elektrinis bitininkas Andrejus

Šaltinis: www.habr.com

Добавить комментарий