SMS-monitoring sa gibug-aton sa tulo ka balay sa putyukan sa $30

SMS-monitoring sa gibug-aton sa tulo ka balay sa putyukan sa $30

Dili, dili kini usa ka komersyal nga tanyag, kini ang gasto sa mga sangkap sa sistema nga mahimo nimong mapundok pagkahuman mabasa ang artikulo.

Usa ka gamay nga background:

Pipila ka mga panahon ang milabay nakahukom ako nga makakuha og mga putyokan, ug sila nagpakita ... sa tibuok nga panahon, apan wala mobiya sa payag sa tingtugnaw.
Ug kini bisan pa sa kamatuoran nga daw gibuhat niya ang tanan nga husto - ang komplementaryong pagpakaon sa tingdagdag, pagbulag sa wala pa ang bugnaw nga panahon.
Ang balayan kay usa ka klasiko nga kahoy nga "Dadan" nga sistema nga adunay 10 ka bayanan nga gama sa 40 mm nga tabla.
Apan niadtong tingtugnaw, tungod sa mga pagbag-o sa temperatura, bisan ang mga eksperyensiyadong tig-atiman sa putyokan nawad-an ug labaw pa kay sa naandan.

Ingon niini ang ideya sa usa ka sistema alang sa pag-monitor sa kahimtang sa hive.
Pagkahuman sa pagmantala sa daghang mga artikulo bahin sa Habr ug pagpakigsulti sa forum sa mga beekeepers, nakahukom ko nga moadto gikan sa yano hangtod sa komplikado.
Ang gibug-aton mao lamang ang dili malalis nga parameter, apan isip usa ka lagda, ang kasamtangan nga mga sistema nagmonitor lamang sa usa ka "reference" hive.
Kung adunay usa ka butang nga sayup niini (pananglitan, ang pagbiya sa usa ka panon, sakit sa putyokan), nan ang mga timailhan mahimong wala’y kalabotan.

Busa, nakahukom nga bantayan ang pagbag-o sa gibug-aton sa tulo ka mga pantal sa usa ka higayon gamit ang usa ka microcontroller, ug idugang ang uban pang mga "goodies" sa ulahi.
Ang resulta mao ang usa ka autonomous nga sistema nga adunay oras sa pag-opera nga mga usa ka bulan sa usa ka bayad sa 18650 nga baterya ug pagpadala sa mga istatistika kausa sa usa ka adlaw.
Gisulayan nako nga pasimplehon ang disenyo kutob sa mahimo aron kini masubli bisan kung wala’y mga diagram, gikan ra sa mga litrato.

Ang lohika sa operasyon mao ang mosunod: sa panahon sa unang pagsugod/reset, ang mga pagbasa sa mga sensor nga gibutang sa ilawom sa mga hives gitipigan sa EEPROM.
Unya, matag adlaw, pagkahuman sa pagsalop sa adlaw, ang sistema "makamata", nagbasa sa mga pagbasa ug nagpadala usa ka SMS nga adunay pagbag-o sa gibug-aton sa adlaw ug gikan sa higayon nga kini gi-on.
Dugang pa, ang kantidad sa boltahe sa baterya gipasa, ug kung kini nahulog sa 3.5V, usa ka pasidaan ang gi-isyu bahin sa panginahanglan sa pag-charge, tungod kay sa ubos sa 3.4V ang module sa komunikasyon wala mag-on, ug ang mga pagbasa sa gibug-aton "nalutaw".

"Nahinumdom ka ba kung giunsa kini tanan nagsugod. Ang tanan kay sa unang higayon ug usab.”
SMS-monitoring sa gibug-aton sa tulo ka balay sa putyukan sa $30
Oo, mao gyud kini ang set sa hardware nga orihinal, bisan kung ang mga strain gauge ug mga wire ra ang naluwas hangtod sa katapusan nga bersyon, apan una ang mga butang.
Sa tinuud, dili nimo kinahanglan ang usa ka cable coil, nahimo ra nga parehas nga presyo sa usa ka 30m nga tul-id.

Kung dili ka mahadlok sa pagbungkag sa 3 SMD LEDs ug tunga sa usa ka gatos nga punto sa conventional (output) soldering, unya lakaw!

Busa, atong gikinahanglan ang mosunod nga hugpong sa mga ekipo/materyal:

  1. Arduino Pro Mini 3V
    Kinahanglan nimong hatagan ug pagtagad ang linear converter microcircuit - kini kinahanglan nga eksakto nga 3.3V - sa chip nga nagtimaan sa KB 33/LB 33/DE A10 - ang akong Intsik adunay sayup, ug ang tibuuk nga batch
    Ang mga tabla sa tindahan nahimo nga adunay 5-volt regulators ug 16MHz nga mga kristal.
  2. USB-Ttl sa usa ka CH340 chip - mahimo ka pa gani mogamit sa usa ka 5-volt, apan unya samtang nag-flash sa microcontroller, ang Arduino kinahanglan nga i-disconnect gikan sa GSM module aron dili masunog ang naulahi.
    Ang mga tabla nga gibase sa PL2303 chip dili molihok ubos sa Windows 10.
  3. Module sa komunikasyon sa GSM Goouu Tech IOT GA-6-B o AI-THINKER A-6 Mini.
    Nganong nihunong ka diha? Ang Neoway M590 - usa ka tigdesinyo nga nanginahanglan lahi nga mga sayaw nga adunay mga tamburin, GSM SIM800L - dili gusto ang dili standard nga 2.8V nga lebel sa lohika, nga nanginahanglan koordinasyon bisan sa usa ka three-volt Arduino.
    Dugang pa, ang solusyon gikan sa AiThinker adunay gamay nga konsumo sa enerhiya (wala koy nakita nga karon nga mas taas kaysa 100mA sa pagpadala sa SMS).
  4. GSM GPRS 3DBI antenna (sa litrato sa ibabaw - usa ka rectangular scarf nga adunay "ikog", sa alas-9 sa gabii)
  5. Starter package sa usa ka operator nga adunay maayong coverage sa lokasyon sa imong apiary.
    Oo, ang package kinahanglan una nga ma-aktibo sa usa ka regular nga telepono, I-disable ang PIN HANGYO sa pagsulod, ug i-top up ang imong account.
    Karon adunay daghang mga kapilian nga adunay mga ngalan sa istilo sa "Sensor", "IoT" - sila adunay gamay nga ubos nga bayad sa suskrisyon.
  6. dupont wire 20cm babaye-babaye - 3 pcs. (aron ikonektar ang Arduino sa USB-TTL)
  7. 3 pcs. HX711 - ADC alang sa mga timbangan
  8. 6 load cell alang sa gibug-aton hangtod sa 50kg
  9. 15 metros nga 4-core nga kable sa telepono - alang sa pagkonektar sa mga module sa gibug-aton sa ARDUINO.
  10. Photoresistor GL5528 (kini ang importante, nga adunay ngitngit nga pagsukol sa 1 MΩ ug kahayag nga pagsukol sa 10-20 kΩ) ug duha ka ordinaryo nga 20 kΩ resistors
  11. Usa ka piraso sa double-sided nga "baga" nga tape 18x18mm - alang sa paglakip sa Arduino sa module sa komunikasyon.
  12. Ang 18650 nga naghupot sa baterya ug, sa tinuud, ang baterya mismo ~ 2600mAh.
  13. Usa ka gamay nga talo o paraffin (candle-tablet aroma lamp) - alang sa proteksyon sa kaumog HX711
  14. Usa ka piraso sa kahoy nga sagbayan 25x50x300mm alang sa base sa strain gauge.
  15. Usa ka dosena nga self-tapping screws nga adunay 4,2x19 mm press washer alang sa paglakip sa mga sensor sa base.

Ang baterya mahimong makuha gikan sa pag-disassembly sa mga laptop - kini daghang beses nga mas barato kaysa sa usa ka bag-o, ug ang kapasidad mas dako pa kaysa sa Chinese UltraFire - nakuha nako ang 1500 kumpara sa 450 (kini ang 6800 alang sa kalayo 😉

Dugang pa, kinahanglan nimo ang makanunayon nga mga kamot, usa ka EPSN-25 nga solder nga puthaw, rosin ug POS-60 nga solder.

SMS-monitoring sa gibug-aton sa tulo ka balay sa putyukan sa $30

Bisan 5 ka tuig na ang milabay gigamit nako ang usa ka Sobyet nga soldering iron nga adunay tip nga tumbaga (ang mga istasyon sa pagsolda wala molihok alang kanako - gikuha ko kini alang sa usa ka test drive ug gitapos ang sirkito sa usa ka EPSN).
Apan pagkahuman sa kapakyasan niini ug daghang mga peke nga Intsik, ang ulahi gitawag nga Sparta - usa ka butang nga grabe sama sa ngalan niini, mihunong.
sa usa ka produkto nga adunay thermostat.

So sige na nga!

SMS-monitoring sa gibug-aton sa tulo ka balay sa putyukan sa $30

Sa pagsugod, gi-unsolder namo ang duha ka LEDs gikan sa GSM module (ang dapit diin sila nahimutang gilingin sa orange oval)
Gisulud namon ang SIM card nga adunay mga contact pad sa giimprinta nga circuit board, ang beveled corner sa litrato gipakita sa usa ka pana.

SMS-monitoring sa gibug-aton sa tulo ka balay sa putyukan sa $30

Dayon naghimo kami og susama nga pamaagi sa LED sa Arduino board (oval sa wala sa square chip),
Solder ang sudlay sa upat ka kontak (1),
Nagkuha kami og duha ka 20k nga resistor, i-twist ang mga lead sa usa ka kilid, ibaligya ang twist sa lungag sa pin A5, ang nahabilin nga mga lead naa sa RAW ug GND sa arduino (2),
Gipamub-an namo ang mga bitiis sa photoresistor ngadto sa 10mm ug gibaligya kini sa GND ug D2 nga mga pin sa board (3).

Karon na ang panahon alang sa asul nga electrical tape sa double-sided tape - atong ipapilit kini sa SIM card holder sa module sa komunikasyon, ug sa ibabaw - ang Arduino - ang pula (silver) nga buton nag-atubang kanato ug nahimutang sa ibabaw sa SIM card.

Gibaligya namon ang suplay sa kuryente: dugang gikan sa kapasitor sa module sa komunikasyon (4) hangtod sa RAW arduino pin.
Ang tinuod mao nga ang module sa komunikasyon mismo nanginahanglan 3.4-4.2V alang sa suplay sa kuryente niini, ug ang kontak sa PWR niini konektado sa usa ka step-down converter, mao nga aron makalihok gikan sa li-ion, ang boltahe kinahanglan nga ihatag sa paglatas niini nga bahin sa sirkito.

Sa Arduino, sa kasukwahi, naghatag kami og gahum pinaagi sa usa ka linear converter - sa ubos nga konsumo sa kasamtangan, ang drop-out nga boltahe nga drop mao ang 0.1V.
Apan pinaagi sa paghatag sa usa ka lig-on nga boltahe sa HX711 modules, atong makuha ang panginahanglan sa pag-usab niini ngadto sa usa ka ubos nga boltahe (ug sa samang higayon gikan sa pagdugang sa kasaba ingon sa usa ka resulta sa niini nga operasyon).

Sunod among solder jumpers (5) tali sa mga pin PWR-A1, URX-D4 ug UTX-D5, ground GND-G (6) ug sa katapusan gahum gikan sa 18650 battery holder (7), ikonektar ang antenna (8).
Karon nagkuha kami usa ka USB-TTL converter ug ikonektar ang RXD-TXD ug TXD-RXD, GND-GND nga mga kontak sa Dupont wires sa ARDUINO (comb 1):

SMS-monitoring sa gibug-aton sa tulo ka balay sa putyukan sa $30

Ang litrato sa ibabaw nagpakita sa unang bersyon (sa tulo) sa sistema, nga gigamit alang sa pag-debug.

Apan karon mopahuway kami gikan sa soldering iron sa makadiyot ug magpadayon sa bahin sa software.
Akong ihulagway ang han-ay sa mga aksyon alang sa Windows:
Una, kinahanglan nimo nga i-download ug i-install / i-unpack ang programa Arduino IDE - ang kasamtangan nga bersyon mao ang 1.8.9, apan akong gigamit ang 1.6.4

Alang sa kayano, among gi-unpack ang archive sa folder C: arduino - "your_version_number", sa sulod aduna kami mga folder / dist, mga drayber, mga pananglitan, hardware, java, lib, mga librarya, reference, mga himan, ingon man ang arduino executable file (taliwala sa uban).

Karon kinahanglan namon ang usa ka librarya aron magtrabaho kauban ang ADC HX711 — berde nga buton nga “clone o i-download” — i-download ang ZIP.
Ang mga sulod (folder HX711-master) gibutang sa direktoryo nga C: arduino-“your_version_number” nga mga librarya

Ug siyempre ang drayber alang sa USB-TTL gikan sa parehas nga github - gikan sa wala ma-unpack nga archive, ang pag-install yano nga gilunsad gamit ang SETUP file.

Ok, atong ilunsad ug i-configure ang programa C: arduino- "your_version_number" arduino

SMS-monitoring sa gibug-aton sa tulo ka balay sa putyukan sa $30

Lakaw ngadto sa butang nga "Tools" - pilia ang board nga "Arduino Pro o Pro Mini", Atmega 328 3.3V 8 MHz processor, port - usa ka numero gawas sa sistema COM1 (kini makita human ma-install ang CH340 driver nga adunay USB-TTL adapter konektado)

Ok, kopyaha ang mosunod nga sketch (program) ug idikit kini sa Arduino IDE window

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

  }

}

Sa unang linya, sa mga kinutlo, char phone_no[]=”+123456789012″; — imbes nga 123456789012, ibutang ang imong numero sa telepono nga adunay code sa nasud diin ipadala ang SMS.

Karon among gipugos ang check button (ibabaw sa numero uno sa screenshot sa ibabaw) - kung naa sa ubos (ubos sa numero nga tulo sa screen) "Kompleto na ang compilation" - unya mahimo namong i-flash ang microcontroller.

Busa, ang USB-TTL konektado sa ARDUINO ug sa kompyuter, ibutang ang gi-charge nga baterya sa holder (kasagaran ang LED sa bag-ong Arduino magsugod sa pagkidlap kausa matag segundo).

Karon alang sa firmware - nagbansay kami sa pagpindot sa pula (pilak) nga buton sa microcontroller - kini kinahanglan nga buhaton sa estrikto sa usa ka gutlo!!!
Kaon? I-klik ang "Load" nga buton (ibabaw sa duha sa screenshot), ug tan-awa pag-ayo ang linya sa ubos sa interface (ubos sa tulo sa screenshot).
Sa diha nga ang "compilation" nga inskripsiyon mausab ngadto sa "pag-download", i-press ang pula nga buton (reset) - kung ang tanan ok, ang mga suga sa USB-TTL adapter mokidlap nga malipayon, ug sa ubos sa interface ang inskripsiyon nga "Na-upload. ”

Karon, samtang naghulat kami sa pagsulay nga SMS nga moabut sa telepono, isulti ko kanimo kung giunsa ang programa molihok:

SMS-monitoring sa gibug-aton sa tulo ka balay sa putyukan sa $30

Ang litrato nagpakita sa ikaduhang bersyon sa debugging stand.

Kung gi-on sa unang higayon, gisusi sa sistema ang mga byte nga numero 500 ug 501 sa EEPROM; kung managsama sila, nan ang data sa pagkakalibrate wala natala, ug ang algorithm nagpadayon sa seksyon sa pag-setup.
Ang parehas nga butang mahitabo kung, kung gi-on, ang photoresistor gi-shade (pinaagi sa usa ka cap sa pen) - gi-aktibo ang mode sa pag-reset.

Ang mga load cell kinahanglan na nga ma-install sa ilawom sa mga hives, tungod kay giayo namon ang una nga lebel sa zero ug dayon gisukod ang pagbag-o sa gibug-aton (karon ang mga zero moabut ra, tungod kay wala pa kami konektado bisan unsa).
Sa samang higayon, ang built-in nga LED sa pin 13 magsugod sa pagkidlap sa Arduino.
Kung dili mahitabo ang pag-reset, ang LED mosiga sulod sa 12 segundos.
Pagkahuman niini, usa ka pagsulay nga SMS gipadala nga adunay mensahe nga "INITIAL BOOT OK" ug ang boltahe sa baterya.
Ang module sa komunikasyon gipalong, ug pagkahuman sa 3 minuto ang Arduino board nagbutang sa HX711 ADC boards sa mode sa pagkatulog ug nakatulog mismo.
Kini nga paglangan gihimo aron dili makakuha og interference gikan sa usa ka nagtrabaho nga GSM module (pagkahuman sa pagpalong, kini "beans" sulod sa pipila ka panahon).

Sunod, kami adunay usa ka photo sensor interrupt sa ikaduhang pin (ang plus function gipalihok).
Sa kini nga kaso, pagkahuman sa pag-trigger, ang kahimtang sa photoresistor gisusi sa laing 3 ka minuto - aron mawagtang ang balik-balik / sayup nga pag-trigger.
Ang kasagaran mao nga kung wala’y bisan unsang pag-adjust ang sistema gi-aktibo 10 minuto pagkahuman sa pagsalop sa adlaw sa astronomiya sa madag-umon nga panahon ug 20 sa tin-aw nga panahon.
Oo, aron ang sistema dili ma-reset sa matag higayon nga kini ma-on, labing menos ang unang HX711 module (pins DT-D10, SCK-A0) kinahanglan nga konektado

Pagkahuman gikuha ang mga pagbasa sa mga strain gauge, ang pagbag-o sa gibug-aton gikan sa miaging operasyon gikalkula (ang una nga numero sa linya pagkahuman sa Hive) ug gikan sa una nga pagpaaktibo, ang boltahe sa baterya gisusi ug kini nga kasayuran gipadala ingon usa ka SMS:

SMS-monitoring sa gibug-aton sa tulo ka balay sa putyukan sa $30

By the way, nadawat ba nimo ang SMS? Mga pahalipay! Naa mi tunga! Ang baterya mahimong tangtangon gikan sa holder sa pagkakaron; dili na namo kinahanglan ang kompyuter.

Pinaagi sa dalan, ang sentro sa pagkontrol sa misyon nahimo’g labi ka compact nga mahimo’g ibutang sa usa ka garapon nga mayonesa; sa akong kaso, ang usa ka translucent nga kahon nga adunay sukod nga 30x60x100mm (gikan sa mga kard sa negosyo) hingpit nga angay.

Oo, ang sistema sa pagkatulog naggamit ~ 2.3mA - 90% tungod sa module sa komunikasyon - dili kini hingpit nga mapalong, apan moadto sa standby mode.

SMS-monitoring sa gibug-aton sa tulo ka balay sa putyukan sa $30

Magsugod kita sa paghimo og mga sensor; una, atong hikapon ang layout sa mga sensor:

SMS-monitoring sa gibug-aton sa tulo ka balay sa putyukan sa $30

Kini usa ka plano sa hive - top view.

Sa klasikal, 4 nga mga sensor ang gi-install sa mga kanto (1,2,3,4)

Lahi ang atong sukdon. O hinoon, bisan sa ikatulo nga paagi. Tungod kay lahi ang gibuhat sa mga lalaki gikan sa BroodMinder:

SMS-monitoring sa gibug-aton sa tulo ka balay sa putyukan sa $30

Niini nga disenyo, ang mga sensor gi-install sa mga posisyon 1 ug 2, ang mga punto 3,4 ug XNUMX nagpahulay sa sagbayan.
Unya ang mga sensor nag-asoy sa katunga lamang sa gibug-aton.
Oo, kini nga paagi dili kaayo tukma, apan lisud gihapon hunahunaon nga ang mga putyukan maghimo sa tanan nga mga bayanan nga adunay "mga dila" nga mga udlan sa dugos sa usa ka bungbong sa balay.

Busa, ako nagsugyot sa kinatibuk-ang pagpakunhod sa mga sensor ngadto sa punto 5 - unya walay panginahanglan sa pagpanalipod sa sistema, ug sa diha nga ang paggamit sa kahayag hives, kini mao ang bug-os nga gikinahanglan sa pagbuhat sa uban sa usa ka sensor.

SMS-monitoring sa gibug-aton sa tulo ka balay sa putyukan sa $30

Sa kinatibuk-an, gisulayan namo ang duha ka matang sa mga module sa HX711, duha ka matang sa mga sensor, ug duha ka mga kapilian alang sa pagkonektar kanila - nga adunay usa ka bug-os nga Wheatstone bridge (2 sensors) ug adunay tunga, kung ang ikaduha nga bahin gidugangan sa 1k resistors nga adunay usa ka tolerance sa 0.1%.
Apan ang ulahi nga pamaagi dili gusto ug dili girekomenda bisan sa mga tiggama sa sensor, mao nga akong ihulagway ang una.

Busa, alang sa usa ka hive mag-instalar kami og duha ka strain gauge ug usa ka HX711 module, ang wiring diagram mao ang mosunod:

SMS-monitoring sa gibug-aton sa tulo ka balay sa putyukan sa $30

Adunay 5 metros nga 4-wire nga kable sa telepono gikan sa ADC board ngadto sa Arduino - nahinumdom kita sa unsa nga paagi nga ang mga putyukan dili ganahan GSM mga himan sa hive.

Sa kinatibuk-an, gibilin namo ang 8cm nga "mga ikog" sa mga sensor, huboon ang twisted pair ug ibaligya ang tanan sama sa litrato sa ibabaw.

Sa dili pa nimo sugdan ang bahin sa pagpamanday, ibutang ang wax/paraffin sa angay nga sudlanan aron matunaw sa usa ka kaligoanan sa tubig.

Karon gikuha namo ang among mga kahoy ug gibahin kini sa tulo ka mga seksyon nga 100mm matag usa

Sunod, gimarkahan namon ang usa ka longhitudinal groove nga 25 mm ang gilapdon, 7-8 mm ang giladmon, kuhaa ang sobra gamit ang hacksaw ug chisel - usa ka profile nga porma sa U ang kinahanglan nga mogawas.

Nainit ba ang wax? — among ituslob ang among ADC boards didto — kini makapanalipod kanila gikan sa kaumog/gabon:

SMS-monitoring sa gibug-aton sa tulo ka balay sa putyukan sa $30

Gibutang namon kini tanan sa usa ka kahoy nga base (kinahanglan kini pagtratar sa usa ka antiseptic aron malikayan ang pagkadunot):

SMS-monitoring sa gibug-aton sa tulo ka balay sa putyukan sa $30

Ug sa katapusan, among giayo ang mga sensor gamit ang self-tapping screws:

SMS-monitoring sa gibug-aton sa tulo ka balay sa putyukan sa $30

Adunay usab usa ka kapilian nga adunay asul nga electrical tape, apan alang sa mga hinungdan sa katawhan wala nako kini gipresentar 😉

Gikan sa bahin sa Arduino atong buhaton ang mosunod:

Among huboon ang among mga kable sa telepono, i-twist ang de-kolor nga mga alambre, ug i-lata kini.

Pagkahuman niana, magbaligya sa mga kontak sa board sama sa litrato:

SMS-monitoring sa gibug-aton sa tulo ka balay sa putyukan sa $30

Mao kana, karon alang sa katapusan nga pagsusi, gibutang namon ang mga sensor sa mga sektor sa lingin, usa ka piraso sa plywood sa ibabaw, i-reset ang controller (gibutang namon ang usa ka baterya nga adunay usa ka cap sa pen sa photodiode).

Sa samang higayon, ang LED sa Arduino kinahanglan nga mokidlap ug ang usa ka pagsulay nga SMS kinahanglan moabut.

Sunod, kuhaa ang takup gikan sa photocell ug pun-a ang tubig sa usa ka 1.5 ka litro nga plastik nga botelya.
Gibutang namon ang botelya sa plywood ug kung pipila ka minuto ang milabay sukad kini gi-on, among gibalik ang takup sa photoresistor (nag-simulate sa pagsalop sa adlaw).

Human sa tulo ka minuto, ang LED sa Arduino modan-ag, ug kinahanglan ka makadawat og SMS nga adunay gibug-aton nga mga kantidad nga mga 1 kg sa tanan nga mga posisyon.

Mga pahalipay! Ang sistema malampuson nga na-assemble!

Kung pugson nato karon ang sistema sa pagtrabaho pag-usab, nan ang unang kolum sa gibug-aton adunay mga sero.

Oo, sa tinuod nga mga kahimtang kini mao ang advisable sa orient sa photoresistor vertically pataas.

Karon maghatag ako usa ka mubo nga manwal sa paggamit:

  1. Pagbutang ug mga strain gauge ilalom sa likod nga mga bungbong sa mga hives (butang ug sagbayan/board ~30mm ang gibag-on ilalom sa atubangan)
  2. I-shade ang photoresistor ug i-install ang baterya - kinahanglan nga mokidlap ang LED ug makadawat ka usa ka pagsulay nga SMS nga adunay teksto nga "INITIAL BOOT OK"
  3. Ibutang ang sentral nga yunit sa labing taas nga gilay-on gikan sa mga hives ug aron ang mga alambre dili makabalda sa pagtrabaho sa mga putyokan.
    Kada gabii, pagkahuman sa pagsalop sa adlaw, usa ka SMS ang ipadala nga adunay mga pagbag-o sa imong gibug-aton alang sa adlaw ug gikan sa oras sa paglansad.
    Kung ang boltahe sa baterya moabot sa 3.5V, ang SMS matapos sa linya nga "!!! I- charge ang BATTERY!!!"
    Ang oras sa pag-opera sa usa ka 2600mAh nga baterya mga usa ka bulan.
    Kung ang baterya gipulihan, ang adlaw-adlaw nga pagbag-o sa gibug-aton sa mga pantal dili mahinumduman.

Unsay sunod?

  1. Hunahunaa kung giunsa ibutang kining tanan sa usa ka proyekto alang sa github
  2. Pagsugod sa 3 ka pamilya sa putyokan sa mga balay sa Palivoda system (o mga sungay sa mga tawo)
  3. Idugang ang "buns" - pagsukod sa humidity, temperatura, ug labaw sa tanan - pag-analisar sa huni sa mga putyukan.

Kana lang sa pagkakaron, sinsero nga imo, electric beekeeper Andrey

Source: www.habr.com

Idugang sa usa ka comment