$30 لاءِ ٽن ڇتن جي وزن جي ايس ايم ايس نگراني

$30 لاءِ ٽن ڇتن جي وزن جي ايس ايم ايس نگراني

نه، هي هڪ تجارتي آڇ ناهي، هي سسٽم جي اجزاء جي قيمت آهي جيڪا توهان آرٽيڪل پڙهڻ کان پوء گڏ ڪري سگهو ٿا.

ٿورو پس منظر:

ڪجهه عرصو اڳ مون مکڻ کي حاصل ڪرڻ جو فيصلو ڪيو، ۽ اهي ظاهر ٿيا ... سڄي موسم لاء، پر سياري جي جھوپڙي نه ڇڏي.
۽ هن حقيقت جي باوجود ته هو هر شيء صحيح طريقي سان ڪري رهيو آهي - سرء جي مڪمل کاڌ خوراڪ، ٿڌي موسم کان اڳ موصليت.
ڇت هڪ کلاسک ڪاٺ جو "دادن" سسٽم هو، جنهن ۾ 10 فريم 40 ملي ميٽر بورڊن مان ٺهيل هئا.
پر ان سياري ۾، گرمي پد جي ڦيرڦار جي ڪري، اڃا به تجربيڪار ماکيءَ پالڻ وارا معمول کان گهڻو ڪجهه وڃائي ويٺا.

اهڙيءَ ريت ڇت جي حالت جي نگراني لاءِ هڪ نظام جو خيال آيو.
حبر تي ڪيترائي مضمون شايع ڪرڻ ۽ مکي پالڻ واري فورم تي گفتگو ڪرڻ کان پوء، مون فيصلو ڪيو ته سادو کان پيچيده ڏانهن وڃو.
وزن صرف هڪ ناقابل ترديد پيٽرولر آهي، پر ضابطي جي طور تي، موجوده سسٽم صرف هڪ "حوالو" جي نگراني ڪن ٿا.
جيڪڏهن ان سان ڪا شيء غلط ٿي وڃي (مثال طور، هڪ swarm جي روانگي، مک جي بيماري)، پوء اشارا غير مناسب ٿي ويندا.

تنهن ڪري، اهو فيصلو ڪيو ويو ته هڪ مائڪرو ڪنٽرولر کي استعمال ڪندي هڪ ڀيرو ٽن ڇت جي وزن ۾ تبديلي جي نگراني ڪرڻ، ۽ بعد ۾ ٻيون "چڱو" شامل ڪريو.
نتيجو هڪ خودمختيار نظام هو، جيڪو 18650 جي بيٽري جي هڪ چارج تي هڪ مهيني جي آپريٽنگ وقت سان ۽ هڪ ڏينهن ۾ هڪ ڀيرو انگ اکر موڪلڻ سان.
مون ڪوشش ڪئي ته ڊزائن کي جيترو ٿي سگهي سادو بڻايو ته جيئن ان کي ڊاگرام کان سواءِ به ورجائي سگهجي، صرف تصويرن مان.

آپريشن جو منطق ھيٺ ڏنل آھي: پھرين شروعات / ري سيٽ دوران، hives جي ھيٺان نصب ڪيل سينسر جي پڙھڻ EEPROM ۾ ذخيرو ٿيل آھن.
ان کان پوء، هر روز، سج لٿي کان پوء، سسٽم "جاڳي ٿو"، پڙهائي پڙهي ٿو ۽ هڪ ايس ايم ايس موڪلي ٿو ڏينهن جي وزن ۾ تبديلي سان ۽ ان وقت کان جيڪو ان کي چالو ڪيو ويو.
ان کان علاوه، بيٽري جي وولٹیج جي قيمت منتقل ڪئي وئي آهي، ۽ جڏهن اهو 3.5V تي اچي ٿو، هڪ ڊيڄاريندڙ جاري ڪيو ويو آهي چارج ڪرڻ جي ضرورت بابت، ڇاڪاڻ ته 3.4V کان هيٺ ڪميونيڪيشن ماڊل آن نه ٿو، ۽ وزن جي پڙهائي اڳ ۾ ئي "فلوٽ پري" آهي.

”توکي ياد آهي ته اهو سڀ ڪيئن شروع ٿيو. سڀ ڪجهه پهريون ڀيرو ۽ ٻيهر هو.
$30 لاءِ ٽن ڇتن جي وزن جي ايس ايم ايس نگراني
ها، اهو بلڪل هارڊويئر جو سيٽ آهي جيڪو اصل ۾ هو، جيتوڻيڪ صرف اسٽرين گيجز ۽ تارن کي آخري ورزن تائين بچايو ويو، پر پهرين شيون پهرين.
حقيقت ۾، توهان کي ڪيبل ڪوئل جي ضرورت ناهي، اهو صرف 30m سڌو هڪ جيتري قيمت آهي.

جيڪڏهن توهان 3 SMD LEDs کي ختم ڪرڻ کان ڊپ نه آهيو ۽ روايتي (آئوٽ پٽ) سولڊرنگ جا اڌ سو پوائنٽ، پوء وڃو!

تنهن ڪري، اسان کي سامان / مواد جي هيٺين سيٽ جي ضرورت پوندي.

  1. Arduino پرو ميني 3V
    توهان کي لڪير ڪنورٽر مائڪرو سرڪٽ تي ڌيان ڏيڻ گهرجي - اهو بلڪل 3.3V هجڻ گهرجي - چپ تي نشان لڳل KB 33 / LB 33 / DE A10 - منهنجي چيني کي ڪجهه غلط ٿي ويو، ۽ سڄي بيچ
    دڪان جي بورڊن ۾ 5-وولٽ ريگيوليٽر ۽ 16MHz ڪرسٽل آھن.
  2. USB-Ttl هڪ CH340 چپ تي - توهان هڪ 5-وولٽ هڪ به استعمال ڪري سگهو ٿا، پر پوء مائڪرو ڪنٽرولر کي چمڪائڻ دوران، Arduino کي GSM ماڊل کان ڌار ٿيڻ جي ضرورت پوندي ته جيئن بعد ۾ ساڙي نه وڃي.
    PL2303 چپ تي ٻڌل بورڊ Windows 10 تحت ڪم نٿا ڪن.
  3. GSM ڪميونيڪيشن ماڊل Goouu Tech IOT GA-6-B يا AI-THINKER A-6 Mini.
    توهان اتي ڇو روڪيو؟ Neoway M590 - هڪ ڊزائنر جنهن کي ٽمبرين سان الڳ ڊانس جي ضرورت آهي، GSM SIM800L - منطق جي غير معياري 2.8V سطح کي پسند نه ڪيو، جنهن کي ٽن وولٽ Arduino سان به هم آهنگي جي ضرورت آهي.
    ان کان علاوه، AiThinker جو حل گھٽ ۾ گھٽ توانائي واپرائڻ وارو آھي (مون کي ايس ايم ايس موڪلڻ وقت 100mA کان وڌيڪ موجوده نه ڏٺو).
  4. GSM GPRS 3DBI اينٽينا (مٿي ڏنل تصوير ۾ - هڪ مستطيل سکارف "دم" سان، 9 وڳي تي)
  5. هڪ آپريٽر جو اسٽارٽر پيڪيج توهان جي ماکيءَ جي جڳهه تي سٺي ڪوريج سان.
    ها، پئڪيج کي پهريان هڪ باقاعده فون ۾ چالو ڪيو وڃي، داخل ٿيڻ تي پن جي درخواست کي غير فعال ڪريو، ۽ پنهنجو اڪائونٽ مٿي ڪريو.
    ھاڻي ڪيترائي اختيار آھن نالن سان "سينسر"، "IoT" جي انداز ۾ - انھن وٽ ڪجھ گھٽ سبسڪرپشن فيس آھي.
  6. dupont تار 20cm عورت-عورت - 3 پي سي. (Arduino کي USB-TTL سان ڳنڍڻ لاء)
  7. 3 پي سي. HX711 - اسڪيل لاءِ ADC
  8. 6 ڪلوگرام تائين وزن لاءِ 50 لوڊ سيل
  9. 15 ميٽرن جي 4-ڪور ٽيليفون ڪيبل - وزن ماڊلز کي ARDUINO سان ڳنڍڻ لاءِ.
  10. Photoresistor GL5528 (هي اهم آهي، 1 MΩ جي اونداهي مزاحمت ۽ 10-20 kΩ جي روشني مزاحمت سان) ۽ ٻه عام 20 kΩ مزاحمت ڪندڙ
  11. ڊبل رخا ”ٿلهي“ ٽيپ جو هڪ ٽڪرو 18x18mm - Arduino کي ڪميونيڪيشن ماڊل سان ڳنڍڻ لاءِ.
  12. 18650 بيٽري هولڊر ۽، حقيقت ۾، بيٽري پاڻ آهي ~ 2600mAh.
  13. ٿورڙو موم يا پيرافين (موم بتي- ٽيبليٽ خوشبوء وارو ڏيئو) - نمي جي حفاظت لاءِ HX711
  14. اسٽين گيجز جي بنياد لاءِ ڪاٺ جي شعاع 25x50x300mm جو هڪ ٽڪرو.
  15. سينسرز کي بيس سان ڳنڍڻ لاءِ 4,2x19 ملي ايم پريس واشر سان درجنين سيلف ٽيپنگ اسڪرو.

بيٽري ليپ ٽاپ جي ڌار ٿيڻ کان وٺي سگهجي ٿي - اها نئين جي ڀيٽ ۾ ڪيترائي ڀيرا سستي آهي، ۽ گنجائش چيني الٽرا فائر جي ڀيٽ ۾ تمام گهڻي هوندي - مون کي 1500 بمقابله 450 مليا (اها باهه لاءِ 6800 آهي 😉

اضافي طور تي، توهان کي مستحڪم هٿن جي ضرورت پوندي، هڪ EPSN-25 سولڊرنگ لوهه، روزن ۽ POS-60 سولڊر.

$30 لاءِ ٽن ڇتن جي وزن جي ايس ايم ايس نگراني

جيتوڻيڪ 5 سال اڳ مون هڪ سوويت سولڊرنگ لوهه استعمال ڪيو هڪ ٽامي جي ٽپ سان (سولڊرنگ اسٽيشنز مون لاء ڪم نه ڪيو - مون ان کي ٽيسٽ ڊرائيو لاء ورتو ۽ سرڪٽ کي EPSN سان ختم ڪيو).
پر ان جي ناڪامي ۽ ڪيترن ئي چيني خوفناڪ جعلي کان پوء، بعد ۾ اسپارٽا سڏيو ويو - هڪ شيء جيڪا ان جي نالي جيتري سخت هئي، بند ٿي وئي.
thermostat سان هڪ پيداوار تي.

سو اچو ته هلون!

$30 لاءِ ٽن ڇتن جي وزن جي ايس ايم ايس نگراني

شروع ڪرڻ لاءِ، اسان GSM ماڊل مان ٻه LEDs unsolder ڪريون ٿا (جتي اهي واقع هئا اهو هڪ نارنگي اوول ۾ گول ڪيو ويو آهي)
اسان سم ڪارڊ داخل ڪريون ٿا رابطي جي پيڊن سان پرنٽ ٿيل سرڪٽ بورڊ تي، تصوير ۾ بيول ٿيل ڪنڊ تير سان اشارو ڪيو ويو آهي.

$30 لاءِ ٽن ڇتن جي وزن جي ايس ايم ايس نگراني

ان کان پوء اسان Arduino بورڊ تي ايل اي ڊي سان ساڳيو عمل ڪيو (اسڪوائر چپ جي کاٻي طرف اوول)،
ڪنگڻ کي چار رابطن تي سولر ڪريو (1)،
اسان ٻه 20k ريزسٽرز وٺون ٿا، ليڊز کي ھڪڙي پاسي موڙي، ٽوئسٽ کي پن A5 جي سوراخ ۾ وجھون، باقي ليڊز آرڊينو (2) جي RAW ۽ GND ۾ آھن،
اسان ڦوٽو ريسٽور جي پيرن کي 10 ملي ميٽر تائين ننڍو ڪريون ٿا ۽ ان کي بورڊ جي GND ۽ D2 پنن تي سولر ڪريون ٿا (3).

هاڻي اهو وقت آهي نيري برقي ٽيپ جي ٻٽي رخي ٽيپ لاءِ - اسان ان کي ڪميونيڪيشن ماڊل جي سم ڪارڊ هولڊر تي چمڪيون ٿا، ۽ مٿي تي - Arduino - ڳاڙهي (چاندي) بٽڻ اسان جي سامهون آهي ۽ سم ڪارڊ جي مٿان واقع آهي.

اسان پاور سپلائي کي سولر ڪيو: گڏوگڏ ڪميونيڪيشن ماڊل ڪيپيسيٽر (4) کان RAW arduino پن تائين.
حقيقت اها آهي ته ڪميونيڪيشن ماڊل پاڻ کي پاور سپلائي لاءِ 3.4-4.2V جي ضرورت آهي، ۽ ان جو PWR رابطو اسٽيپ-ڊائون ڪنورٽر سان ڳنڍيل آهي، تنهن ڪري لي-آئن کان ڪم ڪرڻ لاءِ، سرڪٽ جي هن حصي کي پاس ڪندي وولٽيج کي فراهم ڪيو وڃي.

Arduino ۾، ان جي برعڪس، اسان هڪ لڪير ڪنورٽر ذريعي بجلي فراهم ڪندا آهيون - گهٽ موجوده واپرائڻ تي، ڊراپ آئوٽ وولٽيج ڊراپ 0.1V آهي.
پر HX711 ماڊلز کي مستحڪم وولٹیج فراهم ڪرڻ سان، اسان انهن کي گهٽ وولٹیج ۾ تبديل ڪرڻ جي ضرورت کان نجات حاصل ڪندا آهيون (۽ ساڳئي وقت هن آپريشن جي نتيجي ۾ شور وڌائڻ کان).

اڳتي اسان سولڊر جمپر (5) پنن جي وچ ۾ PWR-A1، URX-D4 ۽ UTX-D5، گرائونڊ GND-G (6) ۽ آخرڪار پاور 18650 بيٽري هولڊر (7) کان، اينٽينا کي ڳنڍيو (8).
هاڻي اسان هڪ USB-TTL ڪنورٽر وٺون ٿا ۽ RXD-TXD ۽ TXD-RXD، GND-GND رابطن کي Dupont تارن سان ARDUINO سان ڳنڍيندا آهيون (ڪمب 1):

$30 لاءِ ٽن ڇتن جي وزن جي ايس ايم ايس نگراني

مٿي ڏنل تصوير ڏيکاري ٿو سسٽم جو پهريون نسخو (ٽي جو)، جيڪو ڊيبگنگ لاء استعمال ڪيو ويو.

پر ھاڻي اسان ڪجھ دير لاءِ سولڊرنگ آئرن مان وقفي وٺنداسين ۽ سافٽ ويئر واري حصي ڏانھن ھلينداسين.
مان ونڊوز لاءِ عملن جي تسلسل کي بيان ڪندس:
پهرين، توهان کي ڊائون لوڊ ڪرڻ جي ضرورت آهي ۽ پروگرام کي انسٽال ڪريو / انپيڪ ڪريو آردوينو IDE - موجوده نسخو 1.8.9 آهي، پر مان 1.6.4 استعمال ڪريان ٿو

سادگي لاءِ، اسان آرڪائيو کي فولڊر C: arduino - "your_version_number" ۾ انپيڪ ڪريون ٿا، اندر اسان وٽ فولڊر/dist، ڊرائيور، مثال، هارڊويئر، جاوا، lib، لائبريريون، حوالا، اوزار، گڏوگڏ arduino executable فائل هوندي. (ٻين جي وچ ۾).

هاڻي اسان کي ADC سان ڪم ڪرڻ لاءِ لائبريري جي ضرورت آهي HX711 - سائي بٽڻ "ڪلون يا ڊائون لوڊ" - ڊائون لوڊ زپ.
مواد (فولڊر HX711-ماسٽر) ڊاريڪٽري ۾ رکيل آهن C:arduino-“your_version_number” لائبريريون

۽ يقينا ڊرائيور لاء USB-TTL ساڳئي github کان - انپيڪ ٿيل آرڪائيو مان، تنصيب صرف SETUP فائل سان شروع ڪئي وئي آهي.

ٺيڪ، اچو ته پروگرام شروع ڪريون ۽ ترتيب ڏيون C:arduino-“your_version_number”arduino

$30 لاءِ ٽن ڇتن جي وزن جي ايس ايم ايس نگراني

"ٽولز" آئٽم ڏانھن وڃو - "Arduino Pro يا Pro Mini" بورڊ چونڊيو، Atmega 328 3.3V 8 MHz پروسيسر، پورٽ - سسٽم COM1 کان سواء ٻيو نمبر (اهو USB-TTL اڊاپٽر سان CH340 ڊرائيور کي نصب ڪرڻ کان پوء ظاهر ٿئي ٿو. ڳنڍيل)

ٺيڪ، هيٺ ڏنل اسڪيچ (پروگرام) کي نقل ڪريو ۽ ان کي 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);

  }

}

پهرين قطار ۾، حوالن ۾، char phone_no[]=”+123456789012″؛ - 123456789012 جي بدران، پنهنجو فون نمبر ملڪ جي ڪوڊ سان لڳايو جنهن تي ايس ايم ايس موڪليو ويندو.

ھاڻي اسان چيڪ بٽڻ کي دٻايو (مٿي ڏنل اسڪرين شاٽ ۾ نمبر ھڪڙي) - جيڪڏھن ھيٺئين پاسي (اسڪرين تي ٽي نمبر ھيٺ) "تكليف مڪمل ٿي وئي آھي" - پوء اسان مائڪرو ڪنٽرولر کي چمڪي سگھون ٿا.

تنهن ڪري، USB-TTL ARDUINO ۽ ڪمپيوٽر سان ڳنڍيل آهي، چارج ٿيل بيٽري کي هولڊر ۾ رکو (عام طور تي نئين Arduino تي LED هڪ ڀيرو في سيڪنڊ ۾ چمڪڻ شروع ٿئي ٿي).

ھاڻي فرم ویئر لاءِ - اسان مائڪرو ڪنٽرولر جي ڳاڙھي (چاندي) بٽڻ کي دٻائڻ جي تربيت ڪري رھيا آھيون - اھو ھڪڙي خاص وقت تي سختي سان ڪرڻ جي ضرورت پوندي !!!
کائو؟ "لوڊ" بٽڻ تي ڪلڪ ڪريو (اسڪرين شاٽ ۾ ٻن کان مٿي)، ۽ انٽرفيس جي تري ۾ لائن کي احتياط سان ڏسو (اسڪرين شاٽ ۾ ٽن هيٺان).
جيئن ئي ”تاليف“ لکت ”ڊائون لوڊ“ ۾ تبديل ٿيندي، ڳاڙهي بٽڻ کي دٻايو (ٻيهر سيٽ ڪريو) - جيڪڏهن سڀ ڪجهه ٺيڪ آهي، ته USB-TTL اڊاپٽر جون بتيون خوشيءَ سان ٽمٽار ٿينديون، ۽ انٽرفيس جي تري ۾ لکيل ”اپلوڊ ڪيو ويو. ”

هاڻي، جڏهن اسان انتظار ڪري رهيا آهيون ٽيسٽ ايس ايم ايس فون تي اچڻ لاء، مان توهان کي ٻڌايان ٿو ته پروگرام ڪيئن ڪم ڪري ٿو:

$30 لاءِ ٽن ڇتن جي وزن جي ايس ايم ايس نگراني

تصوير ڊيبنگ اسٽينڊ جو ٻيو نسخو ڏيکاري ٿو.

جڏهن پهريون ڀيرو آن ڪيو ويو، سسٽم چيڪ ڪري ٿو بائيٽ نمبر 500 ۽ 501 EEPROM جو؛ جيڪڏهن اهي برابر آهن، ته پوءِ حساب ڪتاب رڪارڊ نه ڪيو ويو آهي، ۽ الگورتھم سيٽ اپ سيڪشن ڏانهن اڳتي وڌندو آهي.
ساڳي شيء ٿئي ٿي، جڏهن، ڦوٽو ريسٽورٽر ڇانو آهي (قلم ڪيپ ذريعي) - ري سيٽ موڊ چالو ڪيو ويو آهي.

لوڊ سيلز کي اڳ ۾ ئي ڇت جي هيٺان نصب ڪيو وڃي، ڇو ته اسان صرف شروعاتي صفر سطح کي درست ڪريون ٿا ۽ پوء وزن ۾ تبديلي کي ماپ ڪريون (هاڻي صفر اچي ويندا، ڇو ته اسان اڃا تائين ڪجهه به نه جوڙيو آهي).
ساڳئي وقت، پن 13 جو ٺهيل LED Arduino تي چمڪائڻ شروع ڪندو.
جيڪڏهن ري سيٽ نه ٿي ٿئي، LED روشني 12 سيڪنڊن لاء.
ان کان پوء، هڪ امتحان ايس ايم ايس پيغام سان موڪليو ويو آهي "ابتدائي بوٽ ٺيڪ" ۽ بيٽري وولٽيج.
ڪميونيڪيشن ماڊل بند ٿي وڃي ٿو، ۽ 3 منٽن کان پوءِ Arduino بورڊ HX711 ADC بورڊن کي ننڊ موڊ ۾ رکي ٿو ۽ پاڻ سمهي ٿو.
اها دير ان ڪري ڪئي وئي ته جيئن ڪم ڪندڙ GSM ماڊل مان مداخلت نه ٿئي (سوئچ آف ڪرڻ کان پوءِ، اهو ڪجهه وقت لاءِ ”بين“).

اڳيون، اسان وٽ ٻئي پن تي فوٽو سينسر مداخلت آهي (پلس فنڪشن فعال آهي).
انهي حالت ۾، ٽرڪنگ کان پوء، فوٽو ريسٽور جي حالت کي 3 منٽن لاء چڪاس ڪيو ويو آهي - بار بار / غلط ٽرگرنگ کي ختم ڪرڻ لاء.
عام ڳالهه اها آهي ته بغير ڪنهن ترتيب جي سسٽم کي چالو ڪيو ويندو آهي 10 منٽ کان پوءِ astronomical سج غروب ٿيڻ کان پوءِ 20 منٽ ۽ XNUMX صاف موسم ۾.
ها، انهي ڪري ته سسٽم هر دفعي ان کي ريٽ نه ڪندو آهي، گهٽ ۾ گهٽ پهريون HX711 ماڊل (پن DT-D10، SCK-A0) ضرور ڳنڍيل هجي.

ان کان پوءِ اسٽين گيجز جي پڙهائي ورتي ويندي آهي، پوئين آپريشن کان وزن ۾ تبديلي جو حساب ڪيو ويندو آهي (Hive کان پوءِ لائن ۾ پهريون نمبر) ۽ پهرين چالو ٿيڻ کان پوءِ بيٽري جي وولٽيج چيڪ ڪئي ويندي آهي ۽ اها معلومات ايس ايم ايس طور موڪلي ويندي آهي:

$30 لاءِ ٽن ڇتن جي وزن جي ايس ايم ايس نگراني

رستي ۾، ڇا توهان ايس ايم ايس وصول ڪيو؟ مبارڪون هجن! اسان اتي اڌ رستي تي آهيون! بيٽري کي ھاڻي ھولڊر مان ڪڍي سگھجي ٿو؛ اسان کي ھاڻي ڪمپيوٽر جي ضرورت نه پوندي.

رستي ۾، مشن ڪنٽرول سينٽر ايترو ته ٺهڪندڙ ٿي ويو آهي ته اهو ميئونيز جار ۾ رکيل هجي؛ منهنجي صورت ۾، هڪ مترجم باڪس ماپ 30x60x100mm (بزنس ڪارڊ مان) بلڪل مناسب آهي.

ها، سمهڻ وارو نظام ڪميونيڪيشن ماڊل جي ڪري ~ 2.3mA - 90% استعمال ڪري ٿو - اهو مڪمل طور تي بند نٿو ٿئي، پر اسٽينڊ بائي موڊ ۾ وڃي ٿو.

$30 لاءِ ٽن ڇتن جي وزن جي ايس ايم ايس نگراني

اچو ته سينسر ٺاهڻ شروع ڪريون؛ پهرين، اچو ته سينسر جي ترتيب تي رابطو ڪريون:

$30 لاءِ ٽن ڇتن جي وزن جي ايس ايم ايس نگراني

هي هڪ منصوبو آهي hive - مٿي ڏيک.

عام طور تي، 4 سينسر ڪنڊن ۾ نصب ٿيل آهن (1,2,3,4)

اسان مختلف انداز ۾ ماپ ڪنداسين. يا بلڪه، اڃا به ٽئين طريقي سان. ڇو ته BroodMinder کان ماڻهو اهو مختلف طريقي سان ڪندا آهن:

$30 لاءِ ٽن ڇتن جي وزن جي ايس ايم ايس نگراني

ھن ڊزائن ۾، سينسر 1 ۽ 2 پوزيشن تي نصب ٿيل آھن، پوائنٽ 3,4 ۽ XNUMX باقي بيم تي.
پوء سينسر صرف اڌ وزن جي حساب سان.
ها، هن طريقي جي درستي گهٽ آهي، پر اهو تصور ڪرڻ اڃا به مشڪل آهي ته ماکيءَ جي ماکيءَ جي ”زبانن“ سان سڀ فريم ٺهي ويندا ڇت جي هڪ ڀت سان.

تنهن ڪري، مان تجويز ڪريان ٿو ته سينسرز کي گڏ ڪيو وڃي پوائنٽ 5 تي - پوء سسٽم کي بچائڻ جي ڪا ضرورت ناهي، ۽ جڏهن هلڪو hives استعمال ڪندي، اهو مڪمل طور تي هڪ سينسر سان ڪرڻ ضروري آهي.

$30 لاءِ ٽن ڇتن جي وزن جي ايس ايم ايس نگراني

عام طور تي، اسان HX711 تي ٻن قسمن جا ماڊل آزمايا، ٻن قسمن جا سينسرز، ۽ انھن کي ڳنڍڻ جا ٻه آپشن - ھڪ مڪمل Wheatstone برج (2 سينسرز) سان ۽ اڌ سان، جڏھن ته ٻيو حصو 1k ريزسٽرن سان پورو ڪيو ويو آھي. رواداري 0.1٪
پر پوئين طريقو ناپسنديده آهي ۽ سينسر ٺاهيندڙن پاران پڻ سفارش نه ڪئي وئي آهي، تنهنڪري آئون صرف پهريون بيان ڪندس.

تنهن ڪري، هڪ ڇت لاءِ اسان ٻه اسٽرين گيجز ۽ هڪ HX711 ماڊل انسٽال ڪنداسين، وائرنگ ڊاگرام هن ريت آهي:

$30 لاءِ ٽن ڇتن جي وزن جي ايس ايم ايس نگراني

ADC بورڊ کان Arduino تائين 5 ميٽر 4-تار ٽيليفون ڪيبل آهي. اسان کي ياد آهي ته مکيون ڪيئن نه پسند ڪن ٿيون GSM ڊوائيسز کي ڇت ۾.

عام طور تي، اسان سينسر تي 8 سينٽي "دم" ڇڏيندا آهيون، موڙيندڙ جوڙو پٽي ۽ هر شيء کي سولڊر ڪريون جيئن مٿي ڏنل تصوير ۾.

ان کان اڳ جو توهان ڪارپينٽري جو حصو شروع ڪريو، موم / پيرافين کي مناسب ڪنٽينر ۾ رکو ته جيئن پاڻي جي غسل ۾ ڳري وڃي.

ھاڻي اسان پنھنجي ڪاٺ کي وٺو ۽ ان کي 100 ملي ميٽر جي ٽن حصن ۾ ورهايو

اڳيون، اسان 25 ملي ميٽر ويڪر، 7-8 ملي ميٽر ڊگھي نالي کي نشان لڳايو، هيڪسا ۽ چيزل استعمال ڪندي اضافي کي هٽايو - هڪ يو جي شڪل وارو پروفائل ظاهر ٿيڻ گهرجي.

ڇا موم گرم ٿي ويو آهي؟ - اسان اسان جا ADC بورڊ اتي ٻوڙيندا آهيون - اهو انهن کي نمي / ڪڪڙ کان بچائيندو:

$30 لاءِ ٽن ڇتن جي وزن جي ايس ايم ايس نگراني

اسان اهو سڀ ڪجهه ڪاٺ جي بنياد تي رکون ٿا (ان کي سڙڻ کان بچڻ لاءِ اينٽي سيپٽڪ سان علاج ڪرڻ گهرجي):

$30 لاءِ ٽن ڇتن جي وزن جي ايس ايم ايس نگراني

۽ آخرڪار، اسان خود ٽيپنگ اسڪرو سان سينسر کي درست ڪريون ٿا:

$30 لاءِ ٽن ڇتن جي وزن جي ايس ايم ايس نگراني

نيري اليڪٽريڪل ٽيپ سان به هڪ آپشن موجود هو پر انسانيت جي ڪري پيش نه ڪري رهيو آهيان 😉

Arduino پاسي کان اسين ھيٺيون ڪندا آھيون:

اسان اسان جي ٽيليفون ڪيبل کي پٽي، رنگين تارن کي پاڻ ۾ موڙي، ۽ انهن کي ٽين.

ان کان پوء، بورڊ جي رابطن کي سولر ڪريو جيئن تصوير ۾:

$30 لاءِ ٽن ڇتن جي وزن جي ايس ايم ايس نگراني

اهو ئي آهي، هاڻي فائنل چيڪ لاء، اسان سينسرز کي دائري جي شعبن ۾ رکون ٿا، پلائيووڊ جو هڪ ٽڪرو مٿي تي، ڪنٽرولر کي ري سيٽ ڪيو (اسان هڪ بيٽري کي ڦوٽوڊيوڊ تي قلم ڪيپ سان لڳايو).

ساڳئي وقت، آرڊينو تي LED کي ڦٽڻ گهرجي ۽ هڪ امتحان ايس ايم ايس اچڻ گهرجي.

اڳيون، فوٽو سيل مان ڪيپ کي هٽايو ۽ پاڻي ڀريو 1.5 ليٽر پلاسٽڪ جي بوتل ۾.
اسان بوتل کي پلائيووڊ تي وجھي ڇڏيو ۽ جيڪڏھن ان کي چالو ٿيڻ کان ڪيترائي منٽ گذري ويا آھن، اسان کيپ کي ڦوٽو ريسٽور تي واپس رکون ٿا (ھڪ سج لھي).

ٽن منٽن کان پوء، Arduino تي LED روشن ٿي ويندي، ۽ توهان کي سڀني پوزيشن ۾ تقريبا 1 ڪلو وزن جي قيمت سان هڪ ايس ايم ايس وصول ڪرڻ گهرجي.

مبارڪون هجن! سسٽم ڪاميابي سان گڏ ڪيو ويو آهي!

جيڪڏهن اسان هاڻي سسٽم کي ٻيهر ڪم ڪرڻ لاء مجبور ڪريون ٿا، پوء پهريون وزن ڪالمن ۾ صفر هوندو.

ها، حقيقي حالتن ۾ اها صلاح ڏني وئي آهي ته فوٽو ريسٽورٽر کي عمودي طور تي مٿي ڏانهن رخ ڪيو وڃي.

ھاڻي مان ھڪ مختصر يوزر مينوئل ڏيندس:

  1. ڇتين جي پوئين ڀت جي ھيٺان اسٽين گيجز لڳايو (اڳين ڀتين ھيٺان ~ 30 ملي ميٽر ٿلهو بيم/ بورڊ رکو)
  2. ڦوٽو ريزسٽر کي شيڊ ڪريو ۽ بيٽري انسٽال ڪريو - LED کي چمڪڻ گهرجي ۽ توهان کي "ابتدائي بوٽ ٺيڪ" جي متن سان هڪ ٽيسٽ ايس ايم ايس وصول ڪرڻ گهرجي.
  3. مرڪزي يونٽ کي ڇتين کان وڌ ۾ وڌ فاصلي تي رکو ۽ جيئن مکين سان ڪم ڪرڻ وقت تارن ۾ مداخلت نه ٿئي.
    هر شام، غروب آفتاب کان پوء، توهان کي هڪ ايس ايم ايس وصول ڪيو ويندو توهان جي وزن جي تبديلين سان گڏ ڏينهن ۽ لانچ جي وقت کان.
    جڏهن بيٽري وولٹیج 3.5V تائين پهچي ٿي، ايس ايم ايس لائن سان ختم ٿي ويندي "!!! بيٽري چارج ڪريو!!!"
    هڪ 2600mAh بيٽري تي آپريٽنگ وقت اٽڪل هڪ مهينو آهي.
    جيڪڏهن بيٽري کي تبديل ڪيو وڃي ٿو، روزاني وزن ۾ تبديليون ياد نه هونديون آهن.

ايندڙ ڇا آهي؟

  1. سمجهو ته اهو سڀ ڪجهه ڪيئن گٿب لاءِ پروجيڪٽ ۾ رکجي
  2. پيليواڊا سسٽم جي ڇتين ۾ 3 مکين جا خاندان شروع ڪريو (يا ماڻھن ۾ سينگ وارا)
  3. شامل ڪريو "بنس" - نمي کي ماپڻ، گرمي پد، ۽ سڀ کان اهم - مکين جي گونج جو تجزيو ڪرڻ.

اهو سڀ ڪجهه هاڻي لاءِ آهي، خلوص سان توهان جو، برقي مکڻ پالڻ وارو اينڊريو

جو ذريعو: www.habr.com

تبصرو شامل ڪريو