I-Autonomous GSM relay kunye ne-inverter eyenziwe kwizinto esele zenziwe

Ukusebenzisa le GSM relay, unokuvula nawuphi na umthwalo olinganiswe kwi-220 V kunye namandla angekho ngaphezu kwe-2 kW, kuyo nayiphi na ikona yoMhlaba apho kukho inethiwekhi yeselula.

I-Autonomous GSM relay kunye ne-inverter eyenziwe kwizinto esele zenziwe
Esi sixhobo silawulwa yi-arduino nano ngemodyuli ye-gsm i-SIM800L. Umzobo osebenzayo onoluhlu lwamacandelo unikwe ngezantsi. Iyakwazi ukusebenza mhlawumbi kwiibhetri ezakhelwe ngaphakathi okanye kwinethiwekhi ye-220 V. Xa usebenza kwinethiwekhi, umthwalo unokusebenzisa ukuya kwi-2 kW yombane. Ukusuka kwiibhetri, ubuninzi bemveliso yamandla angama-300 W.

I-Autonomous GSM relay kunye ne-inverter eyenziwe kwizinto esele zenziwe
Ngokufutshane malunga neskimu.

Kukho iibhloko ezi-4 kwesi sixhobo:

  • iyunithi ye-inverter
  • isilawuli kunye neyunithi yebhetri
  • iyunithi yonikezelo lwamandla olungaphazamisekiyo
  • Ibloko yolawulo.

Iyunithi ye-inverter yi-inverter yemoto ye-500t eqhelekileyo. Iya kusebenza kwakhona ngamandla amancinci, kodwa amandla aphezulu aphumayo nawo aya kuncipha ngokulingana namandla ombane oguquliweyo.

Isilawuli kunye neyunithi yebhetri ngumqhubi we-BMS we-S3 ophantsi oqhelekileyo olungiselelwe ukudibanisa iibhetri ezi-3 ze-lithium-ion. Iibhetri ziphezulu ngoku. Bangakwazi ukuhambisa umsinga we-35 amperes. Ukuba unamandla amancinci, ngoko unokuthenga iibhetri eziphantsi kunye nomgangatho ophantsi wangoku.

Iyunithi yonikezelo lwamandla olungaphazamisekiyo lwenziwa kwi-transistor VT3, VD4, R4, R5, R3. I-cathode ye-zener diode VD4 ixhunywe ngokuthe ngqo kumandla ombane kwaye xa umbane usetyenziswa, i-transistor VT3 ivula. Emva kokuvula, amandla angalunganga afika kuwo onke amagalelo e-relay kunye ne-relays switch kwimowudi yonikezelo lwamandla esekethe ukusuka kunikezelo lwamandla. Isici esibalulekileyo seendibano ze-relay esele zenziwe: ezinye zazo zisebenza xa amandla afanelekileyo afika kwigalelo, kwaye amanye xa engalunganga. Ukuba unokhetho lokuqala, ngoko kufuneka uhambise i-R3 kwi-gap emitter ye-transistor VT3 kwaye udibanise igalelo le-relay kwi-emitter ye-transistor efanayo.

Iyunithi yokulawula ihlanganiswe kwimodyuli ye-SIM800 kunye ne-arduino nano.

I-Autonomous GSM relay kunye ne-inverter eyenziwe kwizinto esele zenziwe

Yile ndlela isekethe edibeneyo ibonakala ngayoI-Autonomous GSM relay kunye ne-inverter eyenziwe kwizinto esele zenziwe

Le yindlela ekhangeleka ngayo xa ipakishiweI-Autonomous GSM relay kunye ne-inverter eyenziwe kwizinto esele zenziwe

I-Autonomous GSM relay kunye ne-inverter eyenziwe kwizinto esele zenziwe

I-Autonomous GSM relay kunye ne-inverter eyenziwe kwizinto esele zenziwe

Ukuze isixhobo siqale ukufumana i-SMS kwifowuni yakho, kufuneka ubhale inombolo yefowuni yakho kuguquko lwefowuni yakho. Kwakhona kunokwenzeka ukudibanisa umboniso we-LCD kwi-Arduino, umzekelo wh1601 okanye i-wh0802, kodwa kuya kufuneka ukhulule yonke imigca ngombhalo we-lcd.

Ikhowudi

char your_phone = "+79148389933";

#include <SoftwareSerial.h>                                          // ΠŸΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π°Π΅ΠΌ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΡƒ SoftwareSerial для общСния с ΠΌΠΎΠ΄ΡƒΠ»Π΅ΠΌ ΠΏΠΎ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠΉ шинС UART
SoftwareSerial softSerial(8,9);                                      // Π‘ΠΎΠ·Π΄Π°Ρ‘ΠΌ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ softSerial указывая Π²Ρ‹Π²ΠΎΠ΄Ρ‹ RX, TX (ΠΌΠΎΠΆΠ½ΠΎ ΡƒΠΊΠ°Π·Ρ‹Π²Π°Ρ‚ΡŒ Π»ΡŽΠ±Ρ‹Π΅ Π²Ρ‹Π²ΠΎΠ΄Ρ‹ Arduino UNO)
// include the library code:
//#include <LiquidCrystal.h>

// initialize the library by associating any needed LCD interface pin
// with the arduino pin number it is connected to
//const int rs = 12, en = 11, d4 = 5, d5 = 6, d6 = 7, d7 = 10;
//LiquidCrystal lcd(rs, en, d4, d5, d6, d7);                                                               // Π’ Π΄Π°Π½Π½ΠΎΠΌ случаС Π²Ρ‹Π²ΠΎΠ΄ TX модуля ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚ΡΡ ΠΊ Π²Ρ‹Π²ΠΎΠ΄Ρƒ 2 Arduino, Π° Π²Ρ‹Π²ΠΎΠ΄ RX модуля ΠΊ Π²Ρ‹Π²ΠΎΠ΄Ρƒ 3 Arduino.
//  Π˜Π½ΠΈΡ†ΠΈΠΈΡ€ΡƒΠ΅ΠΌ Ρ€Π°Π±ΠΎΡ‚Ρƒ шин UART с ΡƒΠΊΠ°Π·Π°Π½ΠΈΠ΅ΠΌ скоростСй ΠΎΠ±Π΅ΠΈΡ… шин:      //
String buf2,buf3;
int g=0;

    String cmd1;
void setup(){                                                        //
init_port();
      // lcd.begin(16, 2);
  // Print a message to the LCD.
  //lcd.clear();
  //  lcd.setCursor(0, 0);
 /// lcd.print("VKL");
 // lcd.setCursor(0, 1);
 /// lcd.print("ZHDITE");

        /// init_port();// Π˜Π½ΠΈΡ†ΠΈΠΈΡ€ΡƒΠ΅ΠΌ ΠΏΠ΅Ρ€Π΅Π΄Π°Ρ‡Ρƒ Π΄Π°Π½Π½Ρ‹Ρ… ΠΏΠΎ Π°ΠΏΠΏΠ°Ρ€Π°Ρ‚Π½ΠΎΠΉ  шинС UART Π½Π° скорости  9600 (ΠΌΠ΅ΠΆΠ΄Ρƒ Arduino ΠΈ ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€ΠΎΠΌ)
    softSerial.begin(9600);                                         // Π˜Π½ΠΈΡ†ΠΈΠΈΡ€ΡƒΠ΅ΠΌ ΠΏΠ΅Ρ€Π΅Π΄Π°Ρ‡Ρƒ Π΄Π°Π½Π½Ρ‹Ρ… ΠΏΠΎ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠΉ шинС UART Π½Π° скорости 38400 (ΠΌΠ΅ΠΆΠ΄Ρƒ ΠΌΠΎΠ΄ΡƒΠ»Π΅ΠΌ ΠΈ Arduino)
        Serial.begin(9600);   
        delay(30000);

  //  cmd1 ="AT+CMGF=1rn";
  softSerial.print("AT+CMGF=1rn"); 
  ///  print_lcd(cmd1);
delay(1000);
       dellAllSMS();  
//  cmd1 ="AT+CMGDA="DEL ALL"rn";
    // print_lcd(cmd1);
//cmd1="AT+CPAS";
  ///   print_lcd(cmd1);
}                                                                    //
      
   
      char c;  
      int m=0;
      int i=0;//
      int n=0;
//  ВыполняСм Ρ€Π΅Ρ‚Ρ€Π°Π½ΡΠ»ΡΡ†ΠΈΡŽ:                                          // Всё Ρ‡Ρ‚ΠΎ ΠΏΡ€ΠΈΡˆΠ»ΠΎ с модуля - отправляСм ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€Ρƒ, Π° всё Ρ‡Ρ‚ΠΎ ΠΏΡ€ΠΈΡˆΠ»ΠΎ с ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€Π° - отправляСм ΠΌΠΎΠ΄ΡƒΠ»ΡŽ

void dellAllSMS(){
  /* This deletes all sms in memory  
  
  */

  softSerial.print("AT+CMGDA="DEL ALL"rn"); // set sms to text mode

delay(3000);
}
void pin_on_setb()
{
 digitalWrite(2,1);
  digitalWrite(13,1);
}
void pin_off_setb()
{
 digitalWrite(2,0);
  digitalWrite(13,0);
}
void pin_on_inv()
{
 digitalWrite(3,1);
  //  digitalWrite(13,1);
}
void pin_off_inv()
{
 digitalWrite(3,0);
   // digitalWrite(13,0);
}
void init_port()
{
pinMode(2,1);
pinMode(3,1);
    pinMode(13,1);
}
String readData(){
   // this function just reads the raw data
   uint16_t timeout=0;
   while (!softSerial.available() && timeout<10000)
   {
     delay(10);
     timeout++;
   }
   if(softSerial.available())
   {
     String output = softSerial.readString();
     //if(DEBUG)
    ///   Serial.println(output);
     return output;
   }
 }
String buf, bufferIndex; 
int tempIndex=0;
int messageIndex;
int prev=0;
int power=0;
void loop(){                                                         //
   /* if(softSerial.available()){    Serial.write(softSerial.read());} // ΠŸΠ΅Ρ€Π΅Π΄Π°Ρ‘ΠΌ Π΄Π°Π½Π½Ρ‹Π΅ ΠΈΠ· ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠΉ ΡˆΠΈΠ½Ρ‹ UART Π² Π°ΠΏΠΏΠ°Ρ€Π°Ρ‚Π½ΡƒΡŽ  (ΠΎΡ‚ модуля     Ρ‡Π΅Ρ€Π΅Π· Arduino ΠΊ ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€Ρƒ)
    if(    Serial.available()){softSerial.write(    Serial.read());} // ΠŸΠ΅Ρ€Π΅Π΄Π°Ρ‘ΠΌ Π΄Π°Π½Π½Ρ‹Π΅ ΠΈΠ· Π°ΠΏΠΏΠ°Ρ€Π°Ρ‚Π½ΠΎΠΉ  ΡˆΠΈΠ½Ρ‹ UART Π² ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΡƒΡŽ (ΠΎΡ‚ ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€Π° Ρ‡Π΅Ρ€Π΅Π· Arduino ΠΊ ΠΌΠΎΠ΄ΡƒΠ»ΡŽ    )*/

         //   lcd.clear();
     //  lcd.setCursor(0, 0);
     //  lcd.print("Nagruzka");
            //  lcd.setCursor(0, 1);
           //   if (power==1)
          //    {
         //              lcd.print("VKL");
     //         }
         //     else {lcd.print("VIKL");}
      softSerial.print(F("AT+CMGL="ALL",0"));
  softSerial.print("r");
  buf = readData();
 // Serial.println(buf);
tempIndex = buf.lastIndexOf("+CMGL: ");
tempIndex = tempIndex + 6;
    bufferIndex = buf.substring(tempIndex);
    bufferIndex = bufferIndex.substring(1,(bufferIndex.indexOf(",")));
    messageIndex = bufferIndex.toInt();
    ///Serial.println(messageIndex);
    if(prev!=messageIndex)
    {
      tempIndex = buf.lastIndexOf(your_phone);
     //  lcd.clear();
     //  lcd.setCursor(0, 0);
     //  lcd.print("SMS READ");

     if((digitalRead(4))&&(tempIndex!=-1))
     {
      pin_on_inv();
      delay(2000);
      pin_off_inv();
     // i=1;
   //  power=1;
     }
     else 
     {
     pin_on_setb();
           delay(2000);
     pin_off_setb();
  //   i=1;
 //         power=1;
     }
        //    send_sms(number3);

     
    prev++;
    
    }
if(messageIndex>=2)
{
 dellAllSMS();
// lcd.clear();
     //   lcd.setCursor(0, 0);
     //  lcd.print("SMS READ");
     //   lcd.setCursor(0, 1);
// lcd.print("SMS DEL");
 //  cmd1 ="AT+CMGDA="DEL ALL"rn";
   //  print_lcd(cmd1);
prev=0;
}
delay(10000);

}

Ifayile ye-STL yokuprinta ibhokisi inokufumaneka apha.

Ividiyo yomsebenzi:



umthombo: www.habr.com

Yongeza izimvo