Помогите новичку, контроль автозапуска авто

Тема в разделе "Arduino & Shields", создана пользователем soglaev, 9 окт 2017.

  1. Airbus

    Airbus Радиохулиган Модератор

    Что за Тинкер?Почему не знаю?:rolleyes:Почему шилд?Очень просто-Там Sim 900 самый "понятливый" (по АТ командам) и стабильно работающий модуль.Это по моему скромному опыту.:mad:На Шилде есть всё питание Аудио вход/выход отличная комутация по пинам просто взял и нахлобучил на Ардуино и никаких соплей в виде проводков.Работает как с СофтСериалом так и с Хардсериалом (последнее для меня не актуально так как работаю только с "железным" USART). Но походу я один на Амперке такой остальные либо не хотят либо ленятся думать.Питать можно как через USB так и через разьём на Ардуине туда можно сразу бортсеть авто и всё будет работать (хотя я и к бортсети самолёта 28 Вольт подключал!;))Есть нормальная антенна в 1/4 длинны волны а не хвостики.Ну и провода на реле и датчики-тут уж никуда не деться......Единственный минус Шилда-цена:eek:
     
  2. soglaev

    soglaev Нерд

    А как на счет связки tinker A7 + arduino uno r3 mega328p ? я так понимаю этот тинкер заточен под uno ? И какая версия Uno лучше? Где прочитать про их отличия?
     
  3. b707

    b707 Гуру

    Airbus, я не пользуюсь шилдами, потому что не использую Уно - она слишком большая. Нано имеет ровно тот же функционал, но она в три раза меньше и примерно втрое дешевле уны(как раз именно потому, что в нее не вдеваются шилды - а значит все "любители ардуино", неспособные держать в руках паяльник - отпадают :)
    Отсутсвие шилда не означает наличия "соплей" в виде проводов - ставите на плату две гребенки контактов типа PBS и вставляете туда нану, как в шилд. Получается даже удобнее, чем с Уной - ту вы в свою плату не вставите.
    Модем Тинкер А6 - вот такой. ценой дешевле 500 рублей
    [​IMG]
     
    Airbus нравится это.
  4. b707

    b707 Гуру

    Atinker A7 отличается от А6, в первую очередь, наличием GPS. Если вам нужен GPS -берите А7, а иначе смысла переплачивать не вижу.
    Uno сейчас существуют только одного типа - Uno R3, других не встречал.
     
  5. Airbus

    Airbus Радиохулиган Модератор

    Ну я тоже вообщем то шилдами пользуюсь только для откатки прототипа.А в жизнь - ЛУТ forever! Ну или Наны они и по цене не дороже чем Мега 328 и уже с USB дыркой да и по размерам не много больше чем DIP. Но наны тоже без соплей-всё на одной плате. Если раньше паял шилды под УНО то сейчас все больше под Нано. А вот для неспособных держать в руках паяльник шилды самое то!Что я и посоветовал челу. А модем прикольный!И цена вкусная!
     
  6. soglaev

    soglaev Нерд

    У меня тоже все на плате спаяно, не люблю провода которые болтаются
     
    Airbus нравится это.
  7. smahron

    smahron Нуб

    Народ, а как вам такой временный вариант, использование старого мобильники вместо gsm платы расширения. Приходит смс с основного телефона, подключенный к ардуино вибрирует. Сигнал в вибромоторчика приходит на плату, срабатывает бензонасос и через 5 секунд стартер
     
  8. Airbus

    Airbus Радиохулиган Модератор

    А если левый звонок?Тоже запуститься?А если уже едет?Опять стартёр запустит?Нет не вариант если только телефон использовать вместо GSM шилда.Он тоже такими же АТ командами управляется.Лет 15 назад так только и делали.Идеальный вариант Siemens 35-60 серий.
     
  9. b707

    b707 Гуру

    Зачем этот бред, если GSM-модем стоит от 200руб - и он в разы удобнее.
     
    Airbus нравится это.
  10. smahron

    smahron Нуб

    На телефоне есть функция, принимать звонки только с определенного номера
     
  11. smahron

    smahron Нуб

    Зачем переплачивать, когда есть лишний ненужный телефон))
     
  12. Airbus

    Airbus Радиохулиган Модератор

    Это понятно а дальше?Если тупо включать лампочку чайник обогреватель-сойдёт.
     
  13. b707

    b707 Гуру

    Хотя бы потому, что свое время стоит тратить с пользой. И любая вещь должна быть красивой и надежной. Автозапуск через старый телефон явно не станет ни первым, ни вторым. Впрочем, дело ваше - дерзайте. Я вообще заметил, что почему-то именно тема автозапуска привлекает "самоделкиных" определенного типа - с желанием все слепить "из ..авна и палок" :)

    Кстати, для этого телефона придется колхозить отдельную схему питания
     
    Airbus нравится это.
  14. Airbus

    Airbus Радиохулиган Модератор

    И не только её.Вибратор завибрировал и?Как машину запустите?По любому надо делать схему автозапуска как таковую управляющую реле по определённому алгоритму включили зажигание пауза 5 сек включили стартер-не иначе.Далее если запуск удачен стартер выкл. если нет всё выключаем и по новой.Неплохо бы ещё сделать блокировку от самопроизвольного движения без водителя-иначе убьёте кого нибудь или разнесёте соседний Мерс в хлам.Вам оно надо?У Вас автомат-отлично блокировка не нужна-остальное обязательно.И неплохо бы это как то завязать с автосигнализацией ибо она будет блокировать автозапуск.На чём делать будете?Это опять микроконтроллер+Ассемблер или Си.Я ясно всё объяснил?Сам я занимаюсь конкретно GSM сигнализациями и GSM управлением и 15 лет 15 лет пишу на Си и Асме Крузак у меня на автомате но колхозить я побоялся и поставил Старлайн А-95 с GSM модулем.Очень доволен вещь потрясающая.
     
  15. raider_mtb

    raider_mtb Нуб

    Приветствую. С учетом всех изменений кода. Ардуино не принимает не каких смс и нет действий. Что может быть не так? помогите пожалуйста знатоки.
    Код (C++):
    #include "SIM900.h"
    #include <SoftwareSerial.h>

    #include "sms.h"
    #include "call.h"
    SMSGSM sms;
    CallGSM call;

    //=================Пины 2 и 3 для Подключения GSM модуля

    boolean started=false;
    char smsbuffer[160];
    char n[20];
    String n1 = "+7.........";
    String input_string = "";

    char smsDv[] ="Komanda Vipolnena!";
    char smsError[] = "Error";
    char pos;

    void setup() {

      pinMode(7, OUTPUT);
      pinMode(A0, INPUT);
      digitalWrite(7,HIGH);
      if (gsm.begin(4800))
      {
        started=true;
      }
    }
    void loop()
    {
      pos = sms.IsSMSPresent(SMS_UNREAD); // смотрим непрочитанные СМС
      if (pos)
      {                    // Если непрочитанные СМС есть, то...
        getsms(); // получаем непрочитанную СМС
        if (input_string=="1") // Команда "1" - действие
        {
          n1.toCharArray(n,20); // в n1 записываем номер, хранится в n.
          input_string="";
          digitalWrite(7,LOW);
          delay(1000);
          digitalWrite(7,HIGH);
          delay(6000);
          int count = 0;
          bool error = false;
          int ign = analogRead(A0); //не уверен
          while(ign < 900)
          {
            count ++;
            if(count > 3) //количество попыток
            {
              sms.SendSMS(n, smsError);
              sms.DeleteSMS(1);
              error = true;
              break;
            }
            digitalWrite(7,LOW);
            delay(1000);
            digitalWrite(7,HIGH);
            delay(6000); //так мы будет каждые 7 секунд пытаться завести машину.
            ign = analogRead(A0);
          }
          if(!error)
          {
            sms.SendSMS(n, smsDv);
            sms.DeleteSMS(1);
          }
        }
        sms.DeleteSMS(pos); // удаляем СМС  из симки
        memset(n,0,20); //обнуляем массив n
      }
    }

    void getsms()
    {
      sms.GetSMS(pos,n,20,smsbuffer,160);
      input_string =String(smsbuffer);
    }