Управление системой отопления дома на базе ТТ котла + ТА

Тема в разделе "Глядите, что я сделал", создана пользователем glory24, 13 янв 2015.

  1. ИгорьК

    ИгорьК Гуру

    Ну и славно, что не албанский.
    Это же Arduino Yun. На одной плате установлены два процессора. Один Ардуинный, другой Линуксовый. Связаны между собой дорожками. Чет я не думал на тему "если дорожки порвутся". Но не проблема добавить в код какой-нибудь if. В обычной Ардуино тоже минимум пара процессоров устанавливаются - кто-то думает что произойдет если между ними связь порвется?
    MySql сохраняет данные и при потере питания, так что ЕПРОМ я не использовал.
     
    Cjl нравится это.
  2. glory24

    glory24 Нерд

  3. ИгорьК

    ИгорьК Гуру

    А Линукс где будем размещать? :)
    Я уже тему слегка потерял. Вы же хотели роутер с OpenWRT (Linux) иметь? Там и разместите все. Кстати, можно и без MySql легко обойтись. Вы же спрашивали как у меня сделано. Я для тренировки все подряд натолкал. База Mysql не обязательна, если памяти мало. Можно просто писать в файловую систему данные. А без веб-сервера и PHP не обойтись, чтобы приятную морду сделать.
     
  4. glory24

    glory24 Нерд

    на роутере. DIR -320
     
  5. ИгорьК

    ИгорьК Гуру

    MySql нужна только, если вы хотите потом анализировать массив данных. А так - достаточно файлов, в которые переписываются показания датчиков, а затем читаются потребителями.
     
  6. glory24

    glory24 Нерд

    Показания датчиков я и тут худо-бедно читаю. Мне бы наоборот, удаленно менять пороговые температуры там, где их читает Ардуинка, и желательно разместить их поближе к ее процессору, так что бы при обрыыве связи с интернетом, жизнь на Ардуинке не прекратилась.
     
  7. Ази

    Ази Нуб

    Добрый день. Почитал о вашем проекте по ТТкотлу очень заинтересовался такой автоматизацией. На данный момент хочу реализовать только вывод информации температуры уходящих дымовых газов котла с термопары типа К. В электронике к сожелению полный 0 поэтому прошу вашей помощи. Подскажите правильно ли я понимаю что нужны такие компоненты:
    Arduino uno\mega - как сервер
    Arduino Ethernet Shield - для вывода информации в сеть
    max31855 или max6675 - для преобразования сигнала термопары в цифру и передачи его по цифровому выходу к серверу на Arduino.

    Понадобится что то еще? Если я захочу подцепить в дальнейшем еще ~8 датчиков температуры будет ли достаточно 1й Arduino uno? Если нет то какую платформу лучше взять или их придется ставить несколько?
     
  8. glory24

    glory24 Нерд

    Ну, я примерно 0,1. Ничего страшного, у меня получилось и у Вас получится.
    Сервер - это или это, а Arduino mega - это все же устройство, которое формирует сигнал и посредством Ethernet Shield отправляет на сервер. Сам сервер расположен где-то у владельца сайта https://xively.com/feeds/520156923. Он принимает информацию от Вашего Ардуино и формирует красивые графики. Ресурс бесплатный.
    max31855 или max6675 - для преобразования сигнала термопары в цифру использовать необязательно. Сигнал с термопары можно через усилитель (который нужно собрать самому) можно подать на аналоговый вход Ардуино. Программа сейчас написана именно так. Возьми те все же Arduino Mega 2560. Разница по цене с Arduino uno не существенная, а реализация своего проекта на одинаковой с моей железячной базе будет проще. Меньше будет вопросов с которыми я еще не сталкивался.
    Arduino Mega 2560 имеет 54 цифровых выхода. Если температуру будете мерит цифровыми ds18b20, то потенциально можете подключить таких 54 шт.
     
  9. Ази

    Ази Нуб

    Называю Arduino сервером датчиков потому что он собирает информацию с датчиков и обрабатывает. А уже терминал (пк\мобильный или что то еще) потом отсылает запрос на который получает уже обработанную информацию с Arduino в виде самих значений температуры.
    Склоняюсь к max31855 так как он вроде уже с заводской калибровкой идет для термопар если я правильно понимаю. Делать усилитель для меня проблематично так как не имею опыта в создании плат (травка текстолита).
    На данный момент имеется в наличии 2 термопары 1 из которых и хочу параллельно подключить к Arduino
    В дальнейшем возможно поставлю еще на бак аккумулятор. Цифровые\аналоговые датчики планирую поставить на измерение температуры в помещении и на трубы отопления прямую и обратную чтоб знать какие температуры в системе.
    Тогда получается что заказываю:
    Arduino mega
    Arduino Ethernet Shield
    max31855
    Так же хотелось бы узнать как подключать к mege преобразователь max31855. Нужно ли между ними что то добавлять?
    Ниже прикладываю картинки с подключением которые нашел
     

    Вложения:

  10. glory24

    glory24 Нерд

    Один max31855 займет 3 цифровых входа Ардуино. 2 - соответственно - 6 входов. Нужна будет только библиотека управления max31855. Найти то я ее нашел. Но теперь ее нужно вставить в программу, а я этого еще не умею.
     
  11. Ази

    Ази Нуб

    Со вставкой в программу в принципе разберусь. Хорошо спасибо за подсказки пойду заказывать тогда. Как придет и соберу отпишусь. Можете сюда выложить скетч на max31855
     
  12. glory24

    glory24 Нерд

    Код (Text):
    /*
    MAX31855 library example sketch
    The MAX31855 uses SPI to communicate, and requires 3 pins.  This example displays the junction
    (chip) temperature and the thermocouple temperature.
    Look for the MAX31855 breakout boards on www.whizoo.com.
    readJunction() and readThermocouple() will return the temperature, or one of these errors:
    #define FAULT_OPEN        10000  // No thermocouple
    #define FAULT_SHORT_GND  10001  // Thermocouple short to ground
    #define FAULT_SHORT_VCC  10002  // Thermocouple short to VCC
    #define NO_MAX31855      10003  // MAX31855 not communicating

    Note:  If you connect the thermocouple probe the wrong way around, the temperature will go up
    instead of down (and vice versa).  No problem, just reverse the terminals.
    Released under WTFPL license.
    13 May 2014 by Peter Easton
    */
    #include <MAX31855.h>


    // Pin connections.
    #define MISO 2
    #define SCK  3
    #define CS  4

    // Create the temperature object, defining the pins used for communication
    MAX31855 temp(MISO, CS, SCK);

    void setup() {
      Serial.begin(9600);
    }


    void loop (){
      Serial.print("Junction=");
      printTemperature(temp.readJunction(CELSIUS));
      Serial.print("Thermocouple=");
      printTemperature(temp.readThermocouple(CELSIUS));
      Serial.println();
      delay(1000);
    }


    // Print the temperature, or the type or fault
    void printTemperature(double temperature) {
      switch ((int) temperature) {
        case FAULT_OPEN:
          Serial.print("FAULT_OPEN");
          break;
        case FAULT_SHORT_GND:
          Serial.print("FAULT_SHORT_GND");
          break;
        case FAULT_SHORT_VCC:
          Serial.print("FAULT_SHORT_VCC");
          break;
        case NO_MAX31855:
          Serial.print("NO_MAX31855");
          break;
        default:
          Serial.print(temperature);
          break;
      }
      Serial.print("  ");
    }


     
     
  13. glory24

    glory24 Нерд

    Не знаю как прикрепить папку, а так прикрепил бы и саму библиотеку. Там внутри и образцы скетчей.
     
  14. Ази

    Ази Нуб

    Через архив. Спасобо
     
  15. glory24

    glory24 Нерд

    Вот три библиотеки
     

    Вложения:

  16. Ази

    Ази Нуб

    Спасибо
     
  17. Ази

    Ази Нуб

    Прошу почь в проверке то ли хочу заказать
    Arduino mega
    Arduino Ethernet Shield
    max31855 тык, тык или тык. Еще вот такой 4х канальный тык тык правда не знаю понадобится ли он.
    Правильно ли подобрал или это китайские подделки плохого качества? И помогите с выбором max31855 чтоб подошел для термопары тип К
     
    Последнее редактирование: 17 фев 2015
  18. glory24

    glory24 Нерд

    У меня такой. В 4- канальном не вижу смысла. У меня термопара ТХА, какой это тип не знаю. Показывает прекрасно. Этот который - 1_Dymovaya_Truba. Рабочий скетч с библиотекой max31855 и библиотека ниже в зипе.
    Ноги max31855 подключаем на соответствующие цифровые входы Атмеги DO - 34, CS - 38, CLK - 36
     

    Вложения:

    Последнее редактирование: 15 мар 2015
  19. Ази

    Ази Нуб

    Спасибо именно такой и заказал ток дороже нашел на 500р :-(
     
  20. avgaz

    avgaz Нерд

    То же занимаюсь котельной ТТ+ТА 1куб
    Что у меня сделано, это обвешено все Ds18b20 ))) ну автоматизирована работа насоса ТТ-ТА по принципу если температура входа в котел больше выхода то насос отключается, то есть котел полностью прогорел и не способен больше нагревать воду насос отключаем. Если температура больше 91г насос включается. Данные включен или выключен насос так же пишутся в епром что бы если вдруг ардуина перезагрузится то насос принял последнего значения.
    Сейчас ожидаю сервопривод, хочу сделать воздушную заслонку управляему по серво, а не механическим регулятором, хотел вентилятор прикупить на не нашёл решения как управлять его скоростью ардуиной.
    По поводу управления из вне, у меня все сделано на arduino+MR3020 с прошивкой CyberWrt то есть маленький сервер php+sqlite для себя решил что это самый оптимальный вариант и намного проще и лучше всяких shild к ардуине. Тут хоть у себя записывай хоть отсылай куда хочешь.
    Так же хочу заменить ds18b20 на термопару так как надоело менять эти ds особенно в ТА у меня они погружены.
    Заказал пару с модулем на max6675 вот возник вопрос в чем разница с max31855 не прогадал ли, да и какая длина провода можно у термопары 5-7м потянет?