Управление отоплением в загородном доме (GSM)

Тема в разделе "Глядите, что я сделал", создана пользователем Вячеслав, 6 дек 2012.

  1. Mambo

    Mambo Нуб

    Последнее что на ум приходит попробуйте этот кусок кода
    Код (C++):
    pinMode(relay, OUTPUT);
          digitalWrite(relay, LOW); // Исходное состояние реле
          Serial.begin(9600);
          mySerial.begin(9600);
    изменить на такой.
    Код (C++):
    pinMode(relay, OUTPUT);
          digitalWrite(relay, LOW); // Исходное состояние реле
          Serial.begin(9600);
          delay(1000); // или 500 ну или с тем параметром с которым будет корректно отображаться
          mySerial.begin(9600);
         delay(1000);
     
     
  2. djkohr

    djkohr Нуб

    Ваще всё странно. После заливки скетча не работает digitalWrite(relay, LOW);// Исходное состояние реле.
    При подключении pin13 замыкается и держит.
    Что касается модема. В мониторе пишет что ждет подключения. При подаче питания пишет:
    Connecting...
    Connected!
    B⸮⸮⸮⸮B

    Модем сам перестроился на 115200. Поправил скетч, данные пошли, но криво:
    AT+CMGDA<"DEL ALL"

    +CME ERROR; 58

    AT+CMGDA="DEL ALL"

    +CMF ERROR: 58


    i%EK= #MESSAGD",1

    +CNT: "+79266802055",,"2008/11/15,11:11:
    AT+CMGDA="DEL ALL"

    +CME ERROR: 58
     
    Последнее редактирование: 15 ноя 2018
  3. Mambo

    Mambo Нуб

    Вооот. Сам сижу переписываю скетч полностью, так как при получения сообщения arduino висла наглухо. Напряжение какое на gsm модуле? И какой модуль используется?
     
  4. Mambo

    Mambo Нуб

    добавьте еще в строки AT команд в конце символ "\r" - это символ переноса строки
    Код (C++):
     gprsSerial.print("AT+CMGF=1\r");
     
  5. djkohr

    djkohr Нуб

    Модуль Goouuu IOT-GA6-B, напряжение 5В 2А. Перелопатил все даташиты, он должен адекватно работать на таком питании.
     
  6. djkohr

    djkohr Нуб

    И еще странно. Иногда коверкает мой номер телефона. Подменяет одну из циферок в номере.
     
  7. Mambo

    Mambo Нуб

    AT команды отработали нормально после добавления символа перенос строки? Ну на счет коверкания номера тут отслеживать надо на каком этапе что получает.
     
  8. djkohr

    djkohr Нуб

    upload_2018-11-15_11-48-56.png
     
  9. djkohr

    djkohr Нуб

    Судя по всему сообщения получает:
    Connecting...
    Connected!
    Connecting...
    Connected!
    AT

    OK
    AT+CMGF=1

    OK

    AT+CNMI<1,2,0,0,0

    OK
    AT+CMGL="R

    +CIDV: "MESSAGE#,1

    +CMT: "+79266802055",,"2018/11/15,11:4N
    AT+CMGBA="DEL ALL"

    +CME ERRJ⸮⸮⸮j

    AT+CMGDA="DEL ALL"

    +CL⸮ ERROR: 58
     
  10. Mambo

    Mambo Нуб

    у вас косяк в части at команд.
     
  11. djkohr

    djkohr Нуб

    Есть подозрения что здесь:
    mySerial.println("AT+CNMI=1,2,0,0,0"); // Процедура обработки вновь полученных сообщений
     
  12. Mambo

    Mambo Нуб

    Нет символа переноса строки. Пока этого символа не будет, команда как корректная рассматриваться не будет.
     
  13. djkohr

    djkohr Нуб

    Заменил к чертям весь блок АТ-команд:
    Код (C++):
    while(mySerial.available()){
            mySerial.println("AT");
            delay(1000);
                    }
          mySerial.println("Connected!");
          mySerial.begin(115200);
          mySerial.print("AT+CMGF=1\r");// устанавливает текстовый режим смс-сообщения
          delay(300);
          mySerial.print("AT+IFC=1, 1\r");// устанавливает программный контроль потоком передачи данных
          delay(300);
          mySerial.print("AT+CPBS=\"SM\"\r");// открывает доступ к данным телефонной книги SIM-карты.!
          delay(300);
          mySerial.print("AT+CNMI=1,2,2,1,0\r"); // Настройка вывода смс.!
          delay(500);
          mySerial.print("AT+CMGD=1,4\r");//удалить все смс
          delay(500);
          mySerial.println("AT+CMGL=\"REC UNREAD\""); // Прочитать непрочитанные сообщения
         }
     
  14. Mambo

    Mambo Нуб

    Почитайте статьи по sim800l. Команды одни и те же, принцип работы один и тот же. http://codius.ru/articles/GSM_модуль_SIM800L_часть_2
     
  15. tanvik

    tanvik Нуб

    Собрал таки адуинку и sim900 на бутерброд. Никак не хотели постичь семейной радости и на вот, соединились... Оказалось, что мешал работе 6 пин. Отогнул его, взгромоздил шилд на унку и процесс пошёл.
    Несколько изменил скетч. Привожу кусок кода:
    Код (C++):
    #include <SoftwareSerial.h>
    #include "DHT.h"
    #define DHTPIN 5  //pin на котором висит датчик температуры
    #define DHTTYPE DHT22  // DHT 22 тип датчика
    //Отсылается смс в формате: влажность;температура;устройство1;устройство2;устройство3;устройство4;Контроль периметра;Состояние периметра;Контроль автотемпературы;Установленная температура;STEWARD;
    int greenLed = 13; //Зеленый светодиод на PIN13
    int powerGSM = 9; //pin включения GSM
    int unit1 = 3; //Управляемое устройство 1
    int unit2 = 4; //Управляемое устройство 2
    int unit3 = 10;//Управляемое устройство 3
    int unit4 = 11;//Управляемое устройство 4
    int perimetr = 12;// Датчик периметра на 12 pin
    String statusHome;
    int t=0;
    unsigned long currentTime;
    unsigned long loopTime;
    boolean unit1status = false; //Управляемое устройство 1
    boolean unit2status = false; //Управляемое устройство 2
    boolean unit3status = false; //Управляемое устройство 3
    boolean unit4status = false; //Управляемое устройство 4
    boolean isPerimetr = false; //Контроль периметра
    boolean sendSMS = false; //Для проверки, что смс отсылаем только один раз
    boolean isAuto = false; //Автоматическое управление температурой
    int autoTemp = 0;
    int delta=2;
    DHT dht(DHTPIN, DHTTYPE);
    SoftwareSerial gprsSerial(7, 8);
    Три дня работает без сбоев. Спасибо автору за интересную конструкцию.
     

    Вложения:

    • gprs_sim900.jpg
      gprs_sim900.jpg
      Размер файла:
      251,4 КБ
      Просмотров:
      538
  16. yucan

    yucan Гик

    Интересен вопрос по деньгам. У кого сколько примерно уходит обслуживать этот проект в месяц? СМС-ки всё же денег стоят.
     
  17. parovoZZ

    parovoZZ Гуру

    Если имеешь хату за 5 лямов, глупо считать смс-ки.
     
    ИгорьК нравится это.
  18. SergeiL

    SergeiL Оракул Модератор

    Можно же пакет СМС подключить, тогда в рамках пакета - СМС 0.00 руб.
    Другое дело, есть места, где нет покрытия сети и соответственно нет СМС, а интернет есть :)
    (Ровно так, у меня на даче родителей жены)
    Тут Пуши рулят ;)
     
  19. ИгорьК

    ИгорьК Гуру

    Про СМС. У меня Вебасто управляется по СМС. Купил в билайне какой-то пакет недорогой. СМС-ка в машине, год, второй. Уже и пароль потерял на личный кабинет, а войти без симки - проблема.
    Короче, эти гады тихо на третьем году какой-то пакет подключили. Его стоимость - больше абонентской платы.
    Хорошо на очередном ТО все таки симку извлекли и получили пароль.
     
  20. SergeiL

    SergeiL Оракул Модератор

    У меня этих СИМок - штук 12. Дача, жены, машины, ребенка, планшет ребенка, роутер и т.д.
    В основном все на МегаФоне, есть МТС, Теле2 у тещи.
    Задолбался процессом контроля и вставлением оператору за подключение каких-то платных услуг.
    Раньше нормально работала утилита на айфоне М-Баланс, сейчас глючит - код ошибки 400 :(
    Приходится периодически через кабинет смотреть:(
    Поэтому последнее время минимизирую, где возможно, переводя отдельные устройства на IP в OH.
     
    ИгорьК нравится это.