Самодельный ардуино контролер отопления

Тема в разделе "Силовая электроника", создана пользователем mednagolov, 25 окт 2022.

  1. mednagolov

    mednagolov Гик

    Подскажите где тут у ВАС GSM-BLYTUSNIKI живут?
    Иба тем на Амперке - неизчерпаемо, а хотелось бы сразу ближе к *моим хлопотам* , может кто видел тему где над схожими теребасами бьются?
     
  2. SergeiL

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

    Я для себя не вижу смысла в использовании Bluetooth дома, ну кроме наушников к телефону или колонки, ну и часов на руке.
    Расстояние ограниченное, нужно подключаться, нужна отдельная софтина на телефон, подключиться можно только с одного устройства.
    WiFi с появлением ESP стал не просто доступным, он стал дешевле обычных AVR, причем по функционалу у ESP все круче, а количество портов легко добавляется i2c расширителями. Причем все легко интегрируется в агрегатор, который доступен из любой точки мира при наличии подключения к интернет. И устройства могут быть раскиданы по разным объектам и подключаться к агрегатору по mqtt.
    во и получается, открываешь софтину на телефоне, можно просто браузер, и там все устройства из дома, дачи, работы.
     
  3. mednagolov

    mednagolov Гик

    Nee, Тут мне конечно тяжело спорить,
    Скорее всего ESP будет следующим моим шагом восхождения на эту электронную гору....
    Но вот в чем дело...
    1*** Во первых GSMмодуль уже куплен, и терзается мною со страшной силой...и в нем только есть то что есть. И учитывая что SIM800 я держу в руках вторые сутки в жизни , и ранее и вообразить себе не мог что такое АТ- команды и прочее ... Для меня скажу я вам никакое это не старьё а самое что ни на есть *уно фантазио мона ахрененна* ....)))
    2*** Хочется по максимуму его напрячь SIM800 , есть функция Bluetooth - пусть крутится как белка в колесе и нефиг филонить...(хотя пока тоже для меня это -уно фонтазио и как это работает....х.з ??).
    3*** Осваиваю ПРОЦЕСИНГ (брат двоюродный IDEшки) , Нарисовал свои симпатишные окошки открываются по иконке одним щелчком что на буке, что на телефоне у меня, (с живым градусником и немение симпатишними кнопкотыками)
    Я вот на той неделе забыл за мегафон заплатить...а вечером - и ха-ха *Фигувамзвонио* наступило....)))
    А блютус то - вот он родименький играет в колонке и пофиг ему какой там тариф.. и скока там деревасов накапало...)))
    Ну как то так....Ну и думаю знания которые на этом проекте мне в гАлаву набьются помогут может легче ESPшку освоить.(хотя пока тоже не представляю чо Ето за звЁр такой и за какой хвость его дергать надоть...)) )
     
    Последнее редактирование: 10 ноя 2022
  4. mednagolov

    mednagolov Гик

  5. mednagolov

    mednagolov Гик

    Вот апаратно это как то так организовано что ли ?
    DTMF схема.jpg
    типа SIM800 ставим на самоподъём трубки , на телефоне с которого мы звоним на SIM800 вырубаем микрофон (чтоб лишние бряки в эфир не пёрли) и тычем в кнопки телефона в тоновом режиме...
    Дуинка по первому фтонту сигнала заводит счетчик и по времени и допустим высоким фронтам заполняет некий массив, потом сравнивает с имеющимися в её базе , и при совпадении что то включает / выключает...
    обратно тут же шлёт (проигрывает нужный MP-3 файл) со звукового модуля (на флешке которого храниться архив МР-3 файлов ) подключеного к микрофонному выводу SIM800... как бы ВОЙСОМ отчитываясь чего она там на включала... ну или температуру талкингует....
    Я это к чему.... блин бесплатные СМСки у меня почти закончились.... надо как то решать эт вопрос...
    Так же думаю о том как всё это уложить в длительность * исходящего разговора* меньше трёх секунд..... Короче халявы сильно хочется....темболие входящие звонки у меня бесплатные...
     
  6. Airbus

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

    Здесь у Вас организовано програмно на Ардуине. Аппаратно на DTMF декодере-отдельной микросхеме
     
  7. mednagolov

    mednagolov Гик

    Надо кого то кто на Джава шарит, чтоб прилагу *исходящих DTMF* палупасил....
     
  8. Airbus

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

    Зачем? Купите DTMF декодер можно уже распаяный на плате и управляйте

     
    mednagolov нравится это.
  9. mednagolov

    mednagolov Гик

    видел видосик про АЛИЕВСКИЙ ДТМФ ДЕКОДЕР .....походу с ним в трех секундный режим нифига не вписаться....хотя надо проникнуться и этой темой на всякий случай...
     
  10. Airbus

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

    Там Ариадна онлайнер писал код для Дурины для програмной обработки. Где то есть на Форуме. Но лучше отдельный декодер
     
  11. mednagolov

    mednagolov Гик

    вот 328_я дуинка 16 МГц - Это означает, что плата за 1 секунду совершает 16 000 000 тактов, это что? при 20 мс паузах между знаками пакет из 247 знаков, дуинка примет 43, 5 раза...? нифига себе.....да тут похоже не только в трехсекундный таймаут передачи можно вписаться, тут и 1,5 секунды по самые помидоры.....
     
  12. mednagolov

    mednagolov Гик

    ааааа, нифига,
    Timer 1 (D9 и D10) = 488 Гц , шим импульс. Ну тогда 20 импульсов длительностью 20мс каждый с 20 мс интервалом в секундный тайм (передачи / приема).....
     
  13. mednagolov

    mednagolov Гик

    вернее 1,5 секундный тайм передачи, т.к. надо в конце передачи хотя бы 300мс импульс как знак *передача окончена*..
     
  14. mednagolov

    mednagolov Гик

    схема импульса.jpg
    в каждой команде идёт 3 раза повторение одного и того же байта, если хотябы один байт правильный - команда исполняется, если все три пришли с браком - команда игнорируется....
    и того 5 команд в 1,5 секундный тайм . далие SIM800 *отбивает трубку * командой - ATH.
    ИТОГО- имеем * исходящий разговор* содержащий 5 команд, длительностью мение 3 секунд - оператор мегафон считает звонок не состоявшимся, а мы имеем при тарифе 100 рублей в месяц халявный канал управления контролером дома.
    Отчеты дуинка шлет на телефон МР-3шними файлами(пусть будут 5 секундными)- и мы имеем опять же бесплатный входящий голосовой вызов для абонента и мизерный наговор минут со стороны SIM800....))) например в тарифе умные вещи исходящих голосовых на 1800 секунд на месяц ...это 360 отчетов.....15 отчетов на день.... КОРОЧЕ - ХАЛЯВА БРАТЦЫ.....!!!!
     
  15. mednagolov

    mednagolov Гик

    бЛИН ослографа у меня нету... глазами бы посмотреть на тайм передачи.....ладно, буду делать на оСчупь....)))
     
  16. SergeiL

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

    По ссылке на видео не Atmega328, а STM32.
    А это совершенно разные вещи!
     
  17. SergeiL

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

    Так не получится! :)
    Все гораздо, гораздо сложнее! ;)
    Я когда то делал программный декодер DTMF, на AT89C51, для обычной аналоговой телефонной линии, поэтому знаю что это такое. (буквально вчера попалась эта макетка, разбирал коробку у мамы в квартире). Было это ну очень давно, не купить было тогда аппаратный декодер, вот отдельный процессор и ставил под декодирование DTMF. (на плате там два 8051, так было проще.

    Кстати, DTMF каждая кнопка кодируется двумя частотами, которые звучат одновременно, пока нажата кнопка.

    У меня DTMF частоты определялись методом корреляции, вот почитайте, что это такое.

    А в SIM800 уже есть встроенный декодер DTMF
     
  18. mednagolov

    mednagolov Гик

    НЕ! я уже просчитал... со штатным DTMF протоколом халявы не постигнуть.....черезчур всё мучительно -через шею в сапоги....
    позтому быстренько хочу написать свой ... доморощеный анти DTMF....
     
  19. mednagolov

    mednagolov Гик

    вот диаграмма сигнала
    схема импульса.jpg
    все расчеты в предыдущих постах...
     
  20. mednagolov

    mednagolov Гик

    Код (C++):
    //***** ПЕРЕДАТЧИК *****
    // **** ФОРМ ИМПУЛСА ***

    //const int bip = 2 ;         // зумер подключен к D3
    const int Tx_DIMDTMF = 9 ;        // пин DIM_DTMF сигнала
    const int Rx_DIMDTMF = A3 ;        // пин DIM_DTMF сигнала


    void setup() {
    Serial.begin(9600);     // запускаем монитор порта
    // pinMode(bip,OUTPUT);        //пин на бипер
    pinMode(Tx_DIMDTMF,OUTPUT);        // пин выход  DIM_DTMF сигнала
    pinMode(Rx_DIMDTMF, INPUT);        // пин вход DIM_DTMF сигнала
    }void loop() {// **

    Serial.println("pusk");

    for( int k = 0; k < 5; k++ ){
    digitalWrite(Tx_DIMDTMF, 0);
    delay(20);

    digitalWrite(Tx_DIMDTMF, 1);
    delay(3);
    digitalWrite(Tx_DIMDTMF, 0);  // 1 bit = 1
    delay(3);

    digitalWrite(Tx_DIMDTMF, 1);
    delay(3);
    digitalWrite(Tx_DIMDTMF, 0); // 2  bit =1

    delay(6);                    // 3 bit = 0

    digitalWrite(Tx_DIMDTMF, 1);
    delay(3);
    digitalWrite(Tx_DIMDTMF, 0); //4  bit =1
    delay(3);

    digitalWrite(Tx_DIMDTMF, 1);
    delay(3);
    digitalWrite(Tx_DIMDTMF, 0);  // 5 bit = 1
    delay(3);

    delay(6);                     // 6 bit = 0

    digitalWrite(Tx_DIMDTMF, 1);
    delay(3);
    digitalWrite(Tx_DIMDTMF, 0); //7  bit =1
    delay(3);

    digitalWrite(Tx_DIMDTMF, 1);
    delay(3);
    digitalWrite(Tx_DIMDTMF, 0); //8  bit =1

    delay(20);

    digitalWrite(Tx_DIMDTMF, 1);
    delay(48);
    digitalWrite(Tx_DIMDTMF, 0);   // конец команды
    }

    Serial.println("stop");
    delay(3000);
    }//END
    вот дуинка шпилит пакет из 5 команд(.чертёж которыой нарисован выше)..в среднем за 0,656 секунды