אָטאַנאַמאַס גסם רעלע מיט ינווערטער געמאכט פון פאַרטיק קאַמפּאָונאַנץ

מיט דעם GSM רעלע, איר קענען קער אויף קיין מאַסע רייטאַד בייַ 220 וו און אַ מאַכט פון ניט מער ווי 2 קוו, אין קיין ווינקל פון דער ערד ווו עס איז אַ סעליאַלער נעץ.

אָטאַנאַמאַס גסם רעלע מיט ינווערטער געמאכט פון פאַרטיק קאַמפּאָונאַנץ
דער מיטל איז קאַנטראָולד דורך אַרדוינאָ נאַנאָ דורך גסם מאָדולע SIM800L. א פאַנגקשאַנאַל דיאַגראַמע מיט אַ רשימה פון קאַמפּאָונאַנץ איז געגעבן אונטן. עס קען אַרבעטן אָדער פון געבויט-אין באַטעריז אָדער פון אַ נעץ פון 220 V. ווען אַפּערייטינג פון די נעץ, די מאַסע קענען פאַרנוצן אַרויף צו 2 קוו פון עלעקטרע. פֿון באַטעריז, מאַקסימום רעזולטאַט מאַכט 300 וו.

אָטאַנאַמאַס גסם רעלע מיט ינווערטער געמאכט פון פאַרטיק קאַמפּאָונאַנץ
בעקיצער וועגן דעם סכעמע.

עס זענען 4 בלאַקס אין דעם מיטל:

  • ינווערטער אַפּאַראַט
  • קאָנטראָללער און באַטאַרייע אַפּאַראַט
  • אַנינטעראַפּטאַבאַל מאַכט צושטעלן אַפּאַראַט
  • קאָנטראָל בלאָק.

די ינווערטער אַפּאַראַט איז אַ רעגולער 500ט מאַשין ינווערטער. עס וועט אויך אַרבעטן מיט ווייניקער מאַכט, אָבער די מאַקסימום רעזולטאַט מאַכט וועט אויך פאַרמינערן אין פּראָפּאָרציע צו די מאַכט פון די ינווערטער.

די קאָנטראָללער און באַטאַרייע אַפּאַראַט איז אַ רעגולער ביליק BMS S3 שאָפער דיזיינד צו פאַרבינדן 3 ליטהיום-יאָן באַטעריז. די באַטעריז זענען הויך קראַנט. זיי קענען צושטעלן אַ קראַנט פון 35 אַמפּערעס. אויב איר האָבן ווייניקער מאַכט, איר קענען קויפן טשיפּער באַטעריז מיט אַ נידעריקער מאַקסימום קראַנט.

די אַנינטעראַפּטאַבאַל מאַכט צושטעלן אַפּאַראַט איז געמאכט אויף טראַנזיסטאָר VT3, VD4, R4, R5, R3. די קאַטאָוד פון די זענער דייאָוד VD4 איז קאָננעקטעד גלייַך צו די מאַכט צושטעלן און ווען מאַכט איז געווענדט, דער טראַנזיסטאָר VT3 עפֿנט זיך. נאָך עס אָפּענס, אַ נעגאַטיוו פּאָטענציעל ערייווז אין אַלע רעלע ינפּוץ און די רילייז באַשטימען צו די קרייַז מאַכט צושטעלן מאָדע פֿון די מאַכט צושטעלן. אַ וויכטיק שטריך פון פאַרטיק רעלע אַסעמבליז: עטלעכע פון ​​זיי אַרבעט ווען אַ positive פּאָטענציעל קומט צו די אַרייַנשרייַב, און עטלעכע ווען אַ נעגאַטיוו. אויב איר האָט דער ערשטער אָפּציע, איר דאַרפֿן צו אַריבערפירן R3 אין די עמיטער ריס פון טראַנזיסטאָר ווט 3 און פאַרבינדן די רעלע אַרייַנשרייַב צו די ימיטער פון דער זעלביקער טראַנזיסטאָר.

די קאָנטראָל אַפּאַראַט איז פארזאמלט אויף אַ SIM800 מאָדולע און אַרדוינאָ נאַנאָ.

אָטאַנאַמאַס גסם רעלע מיט ינווערטער געמאכט פון פאַרטיק קאַמפּאָונאַנץ

דאָס איז וואָס די פארזאמלט קרייַז קוקט וויאָטאַנאַמאַס גסם רעלע מיט ינווערטער געמאכט פון פאַרטיק קאַמפּאָונאַנץ

דאָס איז וואָס עס קוקט ווי ווען פּאַקטאָטאַנאַמאַס גסם רעלע מיט ינווערטער געמאכט פון פאַרטיק קאַמפּאָונאַנץ

אָטאַנאַמאַס גסם רעלע מיט ינווערטער געמאכט פון פאַרטיק קאַמפּאָונאַנץ

אָטאַנאַמאַס גסם רעלע מיט ינווערטער געמאכט פון פאַרטיק קאַמפּאָונאַנץ

כּדי די מיטל זאָל אָנהייבן צו באַקומען SMS פֿון דיין טעלעפאָן, איר דאַרפֿן צו שרייַבן דיין טעלעפאָן נומער אין די דיין_פאָנע בייַטעוודיק. עס איז אויך מעגלעך צו פאַרבינדן אַ לקד אַרויסווייַזן צו די Arduino, למשל wh1601 אָדער wh0802, אָבער איר וועט דאַרפֿן צו ומקערן אַלע די שורות מיט די ינסקריפּשאַן LCD.

קאָדעקס

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

}

די STL טעקע פֿאַר דרוקן די קעסטל קענען זיין געפֿונען דאָ.

ווידעא פון אַרבעט:



מקור: www.habr.com

לייגן אַ באַמערקונג