Страница 30 из 31 ПерваяПервая ... 202425262728293031 ПоследняяПоследняя
Показано с 291 по 300 из 307
  1. #291
    Администратор Аватар для Chip
    Регистрация
    08.06.2007
    Возраст
    54
    Сообщений
    13,376
    Вес репутации
    10

    По умолчанию Re: Запуск автомобиля с голоса

    Модем к ардуино подключается так:
    5В модуля на 5В ардуино

    GND на GND ардуино
    TXD на любой Dx вывод ардуино
    RXD на любой Dx вывод ардуино

  2. #292
    Новичок
    Регистрация
    21.03.2018
    Сообщений
    17
    Вес репутации
    79

    По умолчанию Re: Запуск автомобиля с голоса

    Цитата Сообщение от Chip Посмотреть сообщение
    Модем к ардуино подключается так:
    5В модуля на 5В ардуино

    GND на GND ардуино
    TXD на любой Dx вывод ардуино
    RXD на любой Dx вывод ардуино
    Как я понимаю, этот гсм модуль имеет уже встроенный делитель напряжения, верно? Потому что я в интернете нашел что сам SIM800L работает в диапазоне 3,5 - 4,4 вольт. Нажмите на изображение для увеличения. 

Название:	voltage.jpg 
Просмотров:	465 
Размер:	105.7 Кб 
ID:	19369


    Так если я подключусь вот так: Нажмите на изображение для увеличения. 

Название:	FUPLEUGJ5V3SUQO.LARGE.jpg 
Просмотров:	480 
Размер:	92.1 Кб 
ID:	19368
    То все будет правильно?

  3. #293
    Администратор Аватар для Chip
    Регистрация
    08.06.2007
    Возраст
    54
    Сообщений
    13,376
    Вес репутации
    10

    По умолчанию Re: Запуск автомобиля с голоса

    Так если я подключусь вот так:
    То все будет правильно?
    Все верно

  4. #294
    Новичок
    Регистрация
    21.03.2018
    Сообщений
    17
    Вес репутации
    79

    По умолчанию Re: Запуск автомобиля с голоса

    Цитата Сообщение от Chip Посмотреть сообщение
    Все верно
    Так как у меня 8 канал. реле, схему пришлось переделать: Вложение 19371

    Вложение 19370

    И вот что у меня получилось. Всё ли сделал правильно?

  5. #295
    Администратор Аватар для Chip
    Регистрация
    08.06.2007
    Возраст
    54
    Сообщений
    13,376
    Вес репутации
    10

    По умолчанию Re: Запуск автомобиля с голоса

    Не все. Питание реле и модема не стоит брать с +5В
    Нужен отдельный стабилизатор питания например такой https://duino.ru/product_info.php/in...yazheniem.html
    Я бы и ардуину в автомобиле запитал бы от него
    Последний раз редактировалось Chip; 24.04.2018 в 19:30.

  6. #296
    Новичок
    Регистрация
    21.03.2018
    Сообщений
    17
    Вес репутации
    79

    По умолчанию Re: Запуск автомобиля с голоса

    Цитата Сообщение от Chip Посмотреть сообщение
    Не все. Питание реле и модема не стоит брать с +5В
    Нужен отдельный стабилизатор питания например такой https://duino.ru/product_info.php/in...yazheniem.html
    Я бы и ардуину в автомобиле запитал бы от него
    ок, куплю его, а как его подключить? просто всё запитать от одного?

  7. #297
    Администратор Аватар для Chip
    Регистрация
    08.06.2007
    Возраст
    54
    Сообщений
    13,376
    Вес репутации
    10

    По умолчанию Re: Запуск автомобиля с голоса

    Да. Запитать все от него
    Только сначала настрой его на 5В , а потом подключай, иначе все спалишь

  8. #298
    Новичок
    Регистрация
    21.03.2018
    Сообщений
    17
    Вес репутации
    79

    По умолчанию Re: Запуск автомобиля с голоса

    Цитата Сообщение от Chip Посмотреть сообщение
    Да. Запитать все от него
    Только сначала настрой его на 5В , а потом подключай, иначе все спалишь

    Порылся немного в интернете и нашел вот этот код, только под 4 канальное реле. И хочу спросить нормальный ли код и много ли работы, что бы переделать код под 8 канальное реле?

    Код:
    #include 
    
    #include
    
    #define TIMEOUT 5000
    
    #define ACTIVE LOW
    
    #define OFF HIGH
    
    byte Relay[] = {A0,A1,A2,A3};
    
    byte StatRelay[4];
    
    char buffNumber[20];
    
    char currentLine[500] = "";
    
    int currentLineIndex = 0;
    
    bool nextLineIsMessage = false;
    
    String replyNumber = "089510863958";
    
    GPRS gprs;
    
    void setup() {
    
    for(int i=0; i < 4; i++) {
    
    pinMode (Relay[i] , OUTPUT);
    
    digitalWrite (Relay[i], MATI);
    
    StatRelay[i] = MATI;
    
    }
    
    Serial.begin(9600);
    
    while (!Serial);
    
    Serial.println("Activate SIM800L V2 >>> Automatically Read SMS");
    
    gprs.preInit();
    
    delay(1000);
    
    while (0 != gprs.init()) {
    
    delay(1000);
    
    Serial.print("init errorrn");
    
    }
    
    // Manage message to mode ASCII
    
    if (0 != gprs.sendCmdAndWaitForResp("AT+CMGF=1rn", "OK", TIMEOUT)) {
    
    ERROR("ERROR:CNMI");
    
    return;
    
    }
    
    // Read Incoming SMS
    
    if (0 != gprs.sendCmdAndWaitForResp("AT+CNMI=1,2,0,0,0rn", "OK", TIMEOUT)) {
    
    ERROR("ERROR:CNMI");
    
    return;
    
    }
    
    int pjg = replyNumber.length() + 1;
    
    buffNumber[pjg];
    
    replyNumber.toCharArray(buffNumber,pjg);
    
    Serial.print("Send reply to number = > ");
    
    Serial.println(buffNumber);
    
    Serial.println("Initialization Done");
    
    Serial.println("=============================================================");
    
    }
    
    void loop() {
    
    // Change status Relay ON / OFF
    
    for(int i=0; i < 4; i++) {
    
    digitalWrite(Relay[i], StatRelay[i]);
    
    }
    
    // If there is input data from SIM800
    
    if (gprs.serialSIM800.available()) {
    
    char lastCharRead = gprs.serialSIM800.read();
    
    // Save all data on lastCharRead, then if there is r or n, as a final signal of incoming message
    
    if (lastCharRead == 'r' || lastCharRead == 'n') {
    
    String lastLine = String(currentLine);
    
    // If the last message +CMT indicates new message arrive
    
    if (lastLine.startsWith("+CMT:")) {
    
    Serial.println(lastLine);
    
    nextLineIsMessage = true;
    
    } else if (lastLine.length() > 0) {
    
    if (nextLineIsMessage) {
    
    Serial.println(lastLine);
    
    // ================================================================>> Function of Relay Controller
    
    //Relay 1 Controller
    
    if (lastLine.indexOf("Relay 1 ON") >= 0) {
    
    StatRelay[0] = AKTIF;
    
    Serial.print("Reply====>>>> ");
    
    Serial.println("Relay 1 Status Active");
    
    gprs.sendSMS (buffNumber, "Relay 1 Status Active");
    
    }
    
    else if (lastLine.indexOf("Relay 1 OFF") >= 0) {
    
    StatRelay[0] = MATI;
    
    Serial.print("Reply====>>>> ");
    
    Serial.println("Relay 1 Status Off");
    
    gprs.sendSMS (buffNumber, "Relay 1 Status Off");
    
    }
    
    //Relay 2 Controller
    
    if (lastLine.indexOf("Relay 2 ON") >= 0) {
    
    StatRelay[1] = AKTIF;
    
    Serial.print("Reply====>>>> ");
    
    Serial.println("Relay 2 Status Active");
    
    gprs.sendSMS (buffNumber, "Relay 2 Status Active");
    
    }
    
    else if (lastLine.indexOf("Relay 2 OFF") >= 0) {
    
    StatRelay[1] = MATI;
    
    Serial.print("Reply====>>>> ");
    
    Serial.println("Relay 2 Status Off");
    
    gprs.sendSMS (buffNumber, "Relay 2 Status Off");
    
    }
    
    //Relay 3 Controller
    
    if (lastLine.indexOf("Relay 3 ON") >= 0) {
    
    StatRelay[2] = AKTIF;
    
    Serial.print("Reply====>>>> ");
    
    Serial.println("Relay 3 Status Active");
    
    gprs.sendSMS (buffNumber, "Relay 3 Status Active");
    
    }
    
    else if (lastLine.indexOf("Relay 3 OFF") >= 0) {
    
    StatRelay[2] = MATI;
    
    Serial.print("Reply====>>>> ");
    
    Serial.println("Relay 3 Status Off");
    
    gprs.sendSMS (buffNumber, "Relay 3 Status Off");
    
    }
    
    //Relay 4 Controller
    
    if (lastLine.indexOf("Relay 4 ON") >= 0) {
    
    StatRelay[3] = AKTIF;
    
    Serial.print("Reply====>>>> ");
    
    Serial.println("Relay 4 Status Active");
    
    gprs.sendSMS (buffNumber, "Relay 1 Status Active");
    
    }
    
    else if (lastLine.indexOf("Relay 4 OFF") >= 0) {
    
    StatRelay[3] = MATI;
    
    Serial.print("Reply====>>>> ");
    
    Serial.println("Relay 4 Status Off");
    
    gprs.sendSMS (buffNumber, "Relay 4 Status Off");
    
    }
    
    nextLineIsMessage = false;
    
    }
    
    // ==================================================================>>
    
    }
    
    //Clear char array for next line of read
    
    for ( int i = 0; i < sizeof(currentLine); ++i ) {
    
    currentLine[i] = (char)0;
    
    }
    
    currentLineIndex = 0;
    
    }
    
    else {
    
    currentLine[currentLineIndex++] = lastCharRead;
    
    }
    
    }
    
    }

  9. #299
    Администратор Аватар для Chip
    Регистрация
    08.06.2007
    Возраст
    54
    Сообщений
    13,376
    Вес репутации
    10

    По умолчанию Re: Запуск автомобиля с голоса

    Я думаю что проще попробовать, чем рыться в чужом коде
    Последний раз редактировалось Chip; 25.04.2018 в 20:07.

  10. #300
    Новичок
    Регистрация
    21.03.2018
    Сообщений
    17
    Вес репутации
    79

    По умолчанию Re: Запуск автомобиля с голоса

    Цитата Сообщение от Chip Посмотреть сообщение
    Я думаю что проще попробовать, чем рыться в чужом коде
    Еще вопрос по подключению, вот я составил схему: Нажмите на изображение для увеличения. 

Название:	Schema2.jpg 
Просмотров:	444 
Размер:	777.2 Кб 
ID:	19372

    так ли?

Страница 30 из 31 ПерваяПервая ... 202425262728293031 ПоследняяПоследняя

Информация о теме

Пользователи, просматривающие эту тему

Эту тему просматривают: 1 (пользователей: 0 , гостей: 1)

Ваши права

  • Вы не можете создавать новые темы
  • Вы не можете отвечать в темах
  • Вы не можете прикреплять вложения
  • Вы не можете редактировать свои сообщения
  •