Ardbir руководство пользователя

Страница 1 из 5

  1. Все мои доработки относятся к версии 2.6.70b10.
    Мод 1: Корректировка хода часов (в железе не пробовал, но мозг подсказывает, что работать должно).
    В ArdBir вычисление времени основано на подсчете импульсов тактового генератора, работающего на частоте 16МГц. Т.е. за 1 секунду принимается 16 000 000 импульсов. Но в связи с неточностью заводского изготовления кварцевого резонатора, температуры и ряда иных факторов реальная частота может отличаться от заявленной. В таком случае вычисленное время будет отличаться от реального. Заметная погрешность при варке приведет к нарушению рецептуры. Я предлагаю простой метод скорректировать ход часов.
    Вычисляем погрешность. Для этого создаем любую ситуацию с отсчетом времени (например, при достижении температуры в ручном режиме или отсчет времени при отложенном старте). Ждем пока на дисплее пройдет допустим Т1=5мин.=5*60с=300с. Параллельно засекаем сколько секунд это заняло в реальности. Допустим блок торопится и 1 его минута равна 55с в реальности. Получаем величину Т2=5*55с=275с. Вычисляем коэффициент К=1000*Т1/Т2=1000*300/275=1091.
    В файле ArdBir.ino находим в процедуре void Timing() следующую строку

    if ((millis()-start)>1000){

    Заменяем 1000 на наш вычисленный коэффициент К. Получаем

    if ((millis()-start)>1091){

    Это притормозит ход часов в блоке, т.к. за 1с теперь будет приниматься большее количествово импульсов.

  2. Да, время действительно не соответствует действительности, но это не так уж и важно, 1-2 минуты на паузу погоды не сделают.
    Отключить ПИД при нагреве до кипения, вот этот бы надо сделать.

  3. Я в первую очередь электроник, потому такое положение дел меня не устроило) а еще пока блок сообщает о необходимости вноса хмеля, то отсчет времени замирает на 2 секунды! Безобразие какое!

    — сообщения объединены, 12 окт 2015, дата первого сообщения: 9 окт 2015

    Мод 2. Звук при нажатии кнопок.

    Для сработки разных функций кнопку необходимо удерживать в нажатом состоянии определенное время, которое длится то совсем ничего, то 0.3с, то секунду. Мне это доставляло неудобство, т.к. были случаи, когда отпускал раньше положенного и приходилось нажимать заново. Поэтому первым делом я добавил звуковой сигнал, который раздается по истечении времени нажатия. После него можно уверенно отпускать кнопку.

    В файле Funzioni.h в функции byte btn_Press() добавляем одну строку

    byte btn_Press (byte Button_press, int msTime){
      if (digitalRead(Button_press)==0){
      delay (msTime);
      if (digitalRead(Button_press)==0){
      Buzzer(1,50);  //наша строка для озвучки нажатий


    Евгений_Ш и alexgo нравится это.

  4. Есть модуль реального времени DS1302. Подскажите как подключить (скетч, библиотека, пины) к мега 2560 с прошивкой ArdBir

  5. а разве в ардбир в настройках это не отпключается? PID pipe passive

  6. Этот пункт означает другое. Он определяет работаеть ли тэну на поддержание температуры при вынимании засыпи. PID Pipe в переводе «пид труба», то есть пид и бункер. Разработчики долго ломали голову как им обозвать этот пункт и уложиться в лимит символов)

    — сообщения объединены, 19 окт 2015, дата первого сообщения: 19 окт 2015

    Про подключение и библиотеки с примерами думаю в гугле полно информации. А вот для вживления всего этого дела в ардбир необходимо ковырять функцию void Timig(). Там есть условие в начале if ((millis()-start)>1000){
    Оно означает, что если последней секунды прошло более 1000мс, то увеличиваем счетчик времени на 1. Нужно придумать как это сделать с ds1302)

  7. Согласен про безобразие, я вообще пришел к выводу убрать все дилеи и сделать задержку (в своем скетче) на основе оператора сравнения (по времени). Т.е. конечное время задается грубо говоря в основной программе, а millis() присваиваются уже в функции которая вызывается из основной.. там же идет сравнение. Попробуйте то же на ArdBir.

  8. это не устранит проблему, так как millis() тоже привязана к частоте. т.е. ошибка из-за несовершенства аппаратной части

  9. Хе-хе ))) тогда нужно ставить инет шилд и синхронизацию с мировым временем )

  10. Ссылки могут видеть только зарегистрированные пользователи. Зарегистрируйтесь или авторизуйтесь для просмотра ссылок! )))

    — сообщения объединены, 20 окт 2015, дата первого сообщения: 20 окт 2015

    Мод 3. Включение тэн после MashOut на 100% до достижения температуры варки. После чего запускается режим pwm. Это позволяет максимально быстро перейти в стадию непосредственно варки.

    В файле ArdBir.ino находим в процедуре void stage_loop () следующий кусок кода

    if ((x-1)==8){
      if (ScaleTemp==0)Set(stageTemp,110,EEPROM.read(17),0.25,Timer,Verso);
      else Set(stageTemp,230,EEPROM.read(18),0.25,Timer,Verso);
      NoBoil();
      tempBoilReached=false;
      }else{
      Set(stageTemp, Max, Min, 0.25, Timer, Verso);
      }
      Stage((x-1),stageTemp,Temp_Now);
      if (pumpRest==false)PID_HEAT(true);
      }
      }
      if (Temp_Now >= stageTemp){

    И заменяем его этим

    if ((x-1)==8){
      if (ScaleTemp==0)Set(stageTemp,110,EEPROM.read(17),0.25,Timer,Verso);
      else Set(stageTemp,230,EEPROM.read(18),0.25,Timer,Verso);
      NoBoil();
      tempBoilReached=false;
      }else{
      Set(stageTemp, Max, Min, 0.25, Timer, Verso);
      }
      Stage((x-1),stageTemp,Temp_Now);
    //доработка варки. если температура меньше Тварки, то врубаем тэн на 100% //13102015
      if ((x-1)!=8){
      if (pumpRest==false)PID_HEAT(true);
      }else{
      if (pumpRest==false){
      Output = 100;
      PID_HEAT(false);
      }
      }
      }
      }
      if (Temp_Now >= stageTemp){

    Тестируем. Будут проблемы – отписываемся.

    Мод 4. А также 15-ю строками выше находим эту

    if ((x-1)==8 && tempBoilReached && Temp_Now >= boilStageTemp) {  //if temp reached during boil

    И заменяем ее на это

    //if ((x-1)==8 && tempBoilReached && Temp_Now >= boilStageTemp) {  //if temp reached during boil
      if ((x-1)==8 && tempBoilReached && Temp_Now >= stageTemp) {  // варка определяется не только Т в настройках, но и значением Т в режиме варки (например, мы увеличили это значение кнопкой Вверх)

    В результате алгоритм работы получается более логичный в случае изменения при варке уставки температуры SP.

  11. Сейчас пытаюсь довести алгоритм своего скетча, подскажи, в вашей прошивке время отсчета паузы начинается после доведения температуры до t начала паузы?

  12. Прошивка не моя, это atdbir. Отсчет времени начинается при достижении температуры setpoint

  13. я вот всё думаю а нужна такая точность до 0,25 градуса?что если сделать чтоб считало только целые градусы ? будет ли быстрее выход на паузу ?

  14. Быстрее не будет. Для пид наоборот 0.25 лучше. Т.к. он учитывает динамику изменения температуры, а изменения на 0.25 происходят чаще, чем на 1. Хотя за счет инерционности ситемы возможно разницы большой не будет заметно. Но имхо заколебешься код править)

  15. а если просто в начале скетча где инициализация датчика поправить значения ну чтоб четвертинки не читал,показал бы участок кода тока я сейчас на работе

  16. Ну к примеру у меня разница на 30 литров с моим 3кв теном — перегрев на 1 градус без пид. А вообще, ПИД — это всегда хорошо. Я бы тоже его применил, но думаю в дальнейшем сделать фазовое, если получится.. хотя меня и так устраивает. )

  17. Пид фазовому не мешает. Первый расчитывает %мощности, а второй реализует

    — сообщения объединены, 22 окт 2015, дата первого сообщения: 22 окт 2015

    Вариант, но на экране везде тогда будут лишние нули после запятой. Шаг калибровки менять придется. Можно просто округлять резуллтат измерения, чтобы не вдаваться в команды датчика, меняющие битность

  18. А я сделал у себя так. Если параметры Kp Ki Kd windowStartTime равны нулю то пид управление отключается и нагрев идет по упрощенному алгоритму…

    void PID_HEAT (int temperatura){
    Input = t_zatora;
    Setpoint = temperatura;
    if ((st[0]==0 && st[1]==0 && st[2]==0) || st[3]==0) {
    if (Input<Setpoint) digitalWrite(pin_relay,HIGH);
    else digitalWrite(pin_relay,LOW);
    }
    else {
      if((Setpoint - Input)>5){
        digitalWrite(pin_relay,HIGH);
        if ((Setpoint - Input)<6)
        {
          myPID.Compute();
        }
      }
      else{
        myPID.Compute();
        unsigned long now = millis();
        if(now - windowStartTime>st[3])
        {                                     //time to shift the Relay Window
          windowStartTime += st[3];
        }
        if((Output*(st[3]/100)) > now - windowStartTime)  digitalWrite(pin_relay,HIGH);
        else  digitalWrite(pin_relay,LOW);
      }
    }
    }
  19. А как-то можно убрать минимальную продолжительность паузы в 1 минуту?

  20. Можно, но с какой целью? Если пауза не нужна, то ее можно просто пропустить

Страница 1 из 5

Открытая передняя панель Ardbir

Домашнее пивоварение можно обобщить в хобби «Сделай пиво дома» и наверняка это распространенная страсть по всему миру, включая Италию, где я живу. Домашние пивовары — это, в основном, мелкие производители крафтового пива и, вообще говоря, люди, увлеченные не только едой и напитками, но и любителями DIY, которые любят эксперименты, создание рецептов, преобразование материалов в ряд, контроль процесса и все типичное отношение производителей.

Я не знаю, является ли это процессом изготовления пива, это, как правило, поэтапный процесс при поддержке конкретной технологии или типичного мышления домашнего пивовара, но на самом деле почти все домашние пивовары очень гордятся созданием своего собственные инструменты и оборудование. В своем долгом домашнем пивоварении я обнаружил, что одной из общих страстей в сообществе является самостоятельное строительство и изготовление оборудования, необходимого для производства пива. На многих форумах, блогах или журналах, посвященных хобби, почти всегда есть раздел, посвященный оборудованию для DIY.

В Интернете вы можете найти планы практически для любого возможного устройства, необходимого для автоматизации и контроля процесса изготовления пива — в некоторых случаях они пытаются имитировать и масштабировать профессиональное оборудование, но иногда даже более продвинутые и креативные!

Я определенно являюсь частью этого сообщества, специализирующегося на домашнем пивоварении, и иногда я спрашиваю себя, получаю ли я больше удовольствия от строительства нового пивного гаджета или от производства пива… или даже от питья пива!

После многих разных экспериментов в прошлом с разными технологиями я наткнулся на Arduino, и, по крайней мере, мне кажется,го ингредиент для приготовления пива — вместе с водой, ячменным солодом, хмелем и дрожжами. Брак Ардуино с пивоварением идеален… возможно, потому что я живу в Ивреа, недалеко от Ардуино.

Arduino Brewing

Сначала я попытался перенести все свои базовые системы, основанные на стандартной стандартной технологии, такой как ПИД-терморегулятор и ШИМ-контроллер, в экосистему Arduino, чтобы я мог начать другие, более продвинутые, проекты. Во время одного из этих первоначальных проектов я встретил другого итальянского парня, который разделял страсть к пиву, те же идеи и любовь к Arduino. Все было взято из моего поста в итальянском блоге … это стимулировало людей улучшать и развивать мою первоначальную идею пивоваренной системы «все в одном» и из другого аналогичного проекта на Arduino в Австралии от Стивена Матисона.

Благодаря огромному и фундаментальному вкладу Сальваторе Петроне и Масимо Неви, я очень горд представить Open Ardbir. Это система управления, позволяющая полностью автоматизировать процесс производства пива с помощью системы заваривания в одном сосуде (RIMS).

Ядром системы является Arduino Uno, и был разработан экран для подключения датчика температуры, реле SSR для нагревательного элемента, реле насоса и зуммера, а также ЖК-дисплея и 4 кнопок для взаимодействия и программирование.

Открытый щит ArdBir

Вы можете использовать его вручную, как ПИД-регулятор, или в полностью автоматизированном процессе, в этом случае, как только пользователь установит параметры рецепта и запустит процесс, они будут следовать пошаговым инструкциям от начальной настройки до затирания, варки и добавления хмеля. , Каждый шаг и операция четко выделяются на дисплее и корыто звуки

Каждый параметр может быть настроен в меню конфигурации системы, и рецепт может быть сохранен для дальнейшего использования. Домашний пивовар может использовать Open Ardbir ​​в своих собственных настройках, и существует множество различных аппаратных реализаций вокруг контроллера, поскольку интеграция довольно проста (PUMP / датчик температуры и нагревательный элемент).

Открыть ArdBir в сборе

Весь проект с открытым исходным кодом, и все файлы и информацию можно найти на GitHub и на нашей странице facebook. Получите отличный «автоматический» напиток с помощью Open Ardbir.

Пиво — напиток, который широко известен почти во всех культурах мира, поэтому неудивительно, что есть проекты, основной целью которых является создание пива быстро или домашним способом. Здесь выделяется проект Open ArdBir.

Open ArdBir — это проект, который на основе платы Arduino контролирует весь производственный процесс от хранения до мацерации, заканчивая дегустацией. Все фазы контролируются платой Arduino, точнее говоря, платой PCB, основанной на дизайне Arduino, но включающей светодиодный интерфейс для управления процессом из самого Open ArdBir.

Кроме того, в этой машине есть несколько датчиков и подключенная схема, что означает, что нам не нужно ничего делать для создания собственного пива, просто введите ингредиенты а об остальном позаботится Open ArdBir со своей программой. Следовательно, интерфейс на основе Arduino очень важен. Таким образом, через этот интерфейс мы не только узнаем температуру мацерации, но и можем ее изменить, поскольку устройство также имеет вентиляторы и хладагенты, которые позволят нам изменять температуру по своему вкусу или потребностям.

Кроме того, самое лучшее, по крайней мере для многих из вас, кто читает нас, — это то, что Open ArdBir — совершенно бесплатный проект что мы можем построить сами и что мы даже можем купить специальную печатную плату, которая так важна для проекта. Но мы также можем построить свою собственную печатную плату, если захотим. Для тех из вас, кто хочет узнать больше, в ссылку У вас есть вся документация по проекту (включая программы), и для тех, кто хочет узнать больше или купить печатную плату проекта, в Су Facebook страницу вы найдете остальную информацию. Лично я считаю, что это отличный проект, хотя он не позволит нам производить пиво в больших количествах, жаль. Верно?

Содержание статьи соответствует нашим принципам редакционная этика. Чтобы сообщить об ошибке, нажмите здесь.

Вы можете быть заинтересованы

Представляем Вашему вниманию блок управления пивоварней мощностью до 3.5 КВт. Основа — ArdBir.

Автоматика для пивоварни представляет из себя блок с поддержкой русского языка, возможностью сохранения рецептов, позволяющий производить затирание и кипячение сусла в автоматическом режиме (затирание по паузам, добавление хмеля в заданные интервалы, кипячение по таймеру, звуковая сигнализация).

Характеристики автоматики:

  • Русский язык;
  • Габаритные размеры (Ш x В x Г) с радиатором / без радиатора: 170 x 120 x 80 / 170 x 120 x 107
  •  Знакосинтезирующий дисплей 20×4 символов;
  • Управление производится 4 клавишами;
  • Два реле для раздельного управления ТЭН и насосами;
  • Звуковая сигнализация;
  • Термодатчик для точного контроля автоматикой температуры внутри пивоварни (без прокладки и гайки);
  • Заземление автоматики, котла и ТЭНа выведено на вилку питания;
  • Гарантия 6 месяцев.

Основные функции:

  • Установка до 8 температурных пауз;
  • Установка до 10 закладок хмеля и звуковая сигнализация об этом;
  • Установка времени кипячения;
  • PID регулятор, позволяющий поставить этот блок на любое оборудование, будь то пивоварня или самогонный аппарат;
  • Точность регулировки 0.1C;
  • Сохранение рецептов;
  • Так же много различных настроек, подбираемых под конкретное оборудование.
  • Инструкцию по пользованию блоком автоматики можно скачать тут!!!

Основные параметры установок меню: Инструкция к пивоварне Бавария, Инструкция в Bavaria, Инструкция к ArdBir

Настройки:

МЕНЮ УСТАНОВОК PID — PWM:

Use = Electric / Gas

kP = -100 +100

kI = -100 +155

kD = -100 +100

SampleTime = 1500 / 1750 / 2000 / 2250 / 2500 / 2750 / 3000 / 3250 / 3500

WindowSet m = 2000 / 2250 / 2500 / 2750 / 3000 / 3250 / 3500 / 3750 / 4000 / 4250 / 5000 / 5250 / 5500 / 5750 / 6000 / 6250 / 6500 / 6750 / 7000 / 7250 / 7500

Heat in Boil= 0-100%

Calibration = -5.00 +5.00

Системные параметры:

Set Segrees = C / F

Sensor =  Внутр / Внешн

Temp Boil = 90 — 105C

Pump Cycle = 5-15′

Pump Rest = 0-5′

Pmp Pre Mash = Off / On

Pmp on Mash = Off / On

Pmp MashOut = Off / On

Pmp on Boil = Off / On

PIP Pipe =  Active / Passive

Skip Add =  No / Yes

Skip Remove =  No / Yes

Skip Iodine =  No / Yes

IodineTime =  Off — 00:01:00 / 00:02:00 / … / 1:30:00

Whirlpool =  Off / Cold / Hot

Уст-ки авто процесса:

Mash In = 20.00 / 20.25 / … / 75.00 C

Phytase = 25.00 — 55.00

Phytase = 1′-140′

Glucanase = 35.00 — 50.00 (Можно пропустить нажав Далее, либо выставить время паузы 1′-140′)

Protease = 45.00 — 60.00 (Можно пропустить нажав Далее, либо выставить время паузы 1′-140′)

bAmylase = 50.00 — 70.00 (Можно пропустить нажав Далее, либо выставить время паузы 1′-140′)

aAmylase1 = 60.00-76.00 (Можно пропустить нажав Далее, либо выставить время паузы 1′-140′)

aAmylase2 = 60.00-76.00 (Нельзя пропустить)

aAmylase2 = 1′-140′

Mash Out = 75.00 — 80.00

Mash Out = 1′-140′

Колл. хмеля =0 — 10

Варка = 30-180′

Хмель X = время варки

Хмель X-1 = Время варки — 1′

Хмель X-2 = Время варки — 2′

Работа с рецептами:

Загрузить, Сохранить рецепт.

Страница 1 из 5

  1. Все мои доработки относятся к версии 2.6.70b10.
    Мод 1: Корректировка хода часов (в железе не пробовал, но мозг подсказывает, что работать должно).
    В ArdBir вычисление времени основано на подсчете импульсов тактового генератора, работающего на частоте 16МГц. Т.е. за 1 секунду принимается 16 000 000 импульсов. Но в связи с неточностью заводского изготовления кварцевого резонатора, температуры и ряда иных факторов реальная частота может отличаться от заявленной. В таком случае вычисленное время будет отличаться от реального. Заметная погрешность при варке приведет к нарушению рецептуры. Я предлагаю простой метод скорректировать ход часов.
    Вычисляем погрешность. Для этого создаем любую ситуацию с отсчетом времени (например, при достижении температуры в ручном режиме или отсчет времени при отложенном старте). Ждем пока на дисплее пройдет допустим Т1=5мин.=5*60с=300с. Параллельно засекаем сколько секунд это заняло в реальности. Допустим блок торопится и 1 его минута равна 55с в реальности. Получаем величину Т2=5*55с=275с. Вычисляем коэффициент К=1000*Т1/Т2=1000*300/275=1091.
    В файле ArdBir.ino находим в процедуре void Timing() следующую строку

    if ((millis()-start)>1000){

    Заменяем 1000 на наш вычисленный коэффициент К. Получаем

    if ((millis()-start)>1091){

    Это притормозит ход часов в блоке, т.к. за 1с теперь будет приниматься большее количествово импульсов.

  2. Да, время действительно не соответствует действительности, но это не так уж и важно, 1-2 минуты на паузу погоды не сделают.
    Отключить ПИД при нагреве до кипения, вот этот бы надо сделать.

  3. Я в первую очередь электроник, потому такое положение дел меня не устроило) а еще пока блок сообщает о необходимости вноса хмеля, то отсчет времени замирает на 2 секунды! Безобразие какое!

    — сообщения объединены, 12 окт 2015, дата первого сообщения: 9 окт 2015

    Мод 2. Звук при нажатии кнопок.

    Для сработки разных функций кнопку необходимо удерживать в нажатом состоянии определенное время, которое длится то совсем ничего, то 0.3с, то секунду. Мне это доставляло неудобство, т.к. были случаи, когда отпускал раньше положенного и приходилось нажимать заново. Поэтому первым делом я добавил звуковой сигнал, который раздается по истечении времени нажатия. После него можно уверенно отпускать кнопку.

    В файле Funzioni.h в функции byte btn_Press() добавляем одну строку

    byte btn_Press (byte Button_press, int msTime){
      if (digitalRead(Button_press)==0){
      delay (msTime);
      if (digitalRead(Button_press)==0){
      Buzzer(1,50);  //наша строка для озвучки нажатий

    Евгений_Ш и alexgo нравится это.

  4. Есть модуль реального времени DS1302. Подскажите как подключить (скетч, библиотека, пины) к мега 2560 с прошивкой ArdBir

  5. а разве в ардбир в настройках это не отпключается? PID pipe passive

  6. Этот пункт означает другое. Он определяет работаеть ли тэну на поддержание температуры при вынимании засыпи. PID Pipe в переводе «пид труба», то есть пид и бункер. Разработчики долго ломали голову как им обозвать этот пункт и уложиться в лимит символов)

    — сообщения объединены, 19 окт 2015, дата первого сообщения: 19 окт 2015

    Про подключение и библиотеки с примерами думаю в гугле полно информации. А вот для вживления всего этого дела в ардбир необходимо ковырять функцию void Timig(). Там есть условие в начале if ((millis()-start)>1000){
    Оно означает, что если последней секунды прошло более 1000мс, то увеличиваем счетчик времени на 1. Нужно придумать как это сделать с ds1302)

  7. Согласен про безобразие, я вообще пришел к выводу убрать все дилеи и сделать задержку (в своем скетче) на основе оператора сравнения (по времени). Т.е. конечное время задается грубо говоря в основной программе, а millis() присваиваются уже в функции которая вызывается из основной.. там же идет сравнение. Попробуйте то же на ArdBir.

  8. это не устранит проблему, так как millis() тоже привязана к частоте. т.е. ошибка из-за несовершенства аппаратной части

  9. Хе-хе ))) тогда нужно ставить инет шилд и синхронизацию с мировым временем )

  10. Ссылки могут видеть только зарегистрированные пользователи. Зарегистрируйтесь или авторизуйтесь для просмотра ссылок! )))

    — сообщения объединены, 20 окт 2015, дата первого сообщения: 20 окт 2015

    Мод 3. Включение тэн после MashOut на 100% до достижения температуры варки. После чего запускается режим pwm. Это позволяет максимально быстро перейти в стадию непосредственно варки.

    В файле ArdBir.ino находим в процедуре void stage_loop () следующий кусок кода

    if ((x-1)==8){
      if (ScaleTemp==0)Set(stageTemp,110,EEPROM.read(17),0.25,Timer,Verso);
      else Set(stageTemp,230,EEPROM.read(18),0.25,Timer,Verso);
      NoBoil();
      tempBoilReached=false;
      }else{
      Set(stageTemp, Max, Min, 0.25, Timer, Verso);
      }
      Stage((x-1),stageTemp,Temp_Now);
      if (pumpRest==false)PID_HEAT(true);
      }
      }
      if (Temp_Now >= stageTemp){

    И заменяем его этим

    if ((x-1)==8){
      if (ScaleTemp==0)Set(stageTemp,110,EEPROM.read(17),0.25,Timer,Verso);
      else Set(stageTemp,230,EEPROM.read(18),0.25,Timer,Verso);
      NoBoil();
      tempBoilReached=false;
      }else{
      Set(stageTemp, Max, Min, 0.25, Timer, Verso);
      }
      Stage((x-1),stageTemp,Temp_Now);
    //доработка варки. если температура меньше Тварки, то врубаем тэн на 100% //13102015
      if ((x-1)!=8){
      if (pumpRest==false)PID_HEAT(true);
      }else{
      if (pumpRest==false){
      Output = 100;
      PID_HEAT(false);
      }
      }
      }
      }
      if (Temp_Now >= stageTemp){

    Тестируем. Будут проблемы – отписываемся.

    Мод 4. А также 15-ю строками выше находим эту

    if ((x-1)==8 && tempBoilReached && Temp_Now >= boilStageTemp) {  //if temp reached during boil

    И заменяем ее на это

    //if ((x-1)==8 && tempBoilReached && Temp_Now >= boilStageTemp) {  //if temp reached during boil
      if ((x-1)==8 && tempBoilReached && Temp_Now >= stageTemp) {  // варка определяется не только Т в настройках, но и значением Т в режиме варки (например, мы увеличили это значение кнопкой Вверх)

    В результате алгоритм работы получается более логичный в случае изменения при варке уставки температуры SP.

  11. Сейчас пытаюсь довести алгоритм своего скетча, подскажи, в вашей прошивке время отсчета паузы начинается после доведения температуры до t начала паузы?

  12. Прошивка не моя, это atdbir. Отсчет времени начинается при достижении температуры setpoint

  13. я вот всё думаю а нужна такая точность до 0,25 градуса?что если сделать чтоб считало только целые градусы ? будет ли быстрее выход на паузу ?

  14. Быстрее не будет. Для пид наоборот 0.25 лучше. Т.к. он учитывает динамику изменения температуры, а изменения на 0.25 происходят чаще, чем на 1. Хотя за счет инерционности ситемы возможно разницы большой не будет заметно. Но имхо заколебешься код править)

  15. а если просто в начале скетча где инициализация датчика поправить значения ну чтоб четвертинки не читал,показал бы участок кода тока я сейчас на работе

  16. Ну к примеру у меня разница на 30 литров с моим 3кв теном — перегрев на 1 градус без пид. А вообще, ПИД — это всегда хорошо. Я бы тоже его применил, но думаю в дальнейшем сделать фазовое, если получится.. хотя меня и так устраивает. )

  17. Пид фазовому не мешает. Первый расчитывает %мощности, а второй реализует

    — сообщения объединены, 22 окт 2015, дата первого сообщения: 22 окт 2015

    Вариант, но на экране везде тогда будут лишние нули после запятой. Шаг калибровки менять придется. Можно просто округлять резуллтат измерения, чтобы не вдаваться в команды датчика, меняющие битность

  18. А я сделал у себя так. Если параметры Kp Ki Kd windowStartTime равны нулю то пид управление отключается и нагрев идет по упрощенному алгоритму…

    void PID_HEAT (int temperatura){
    Input = t_zatora;
    Setpoint = temperatura;
    if ((st[0]==0 && st[1]==0 && st[2]==0) || st[3]==0) {
    if (Input<Setpoint) digitalWrite(pin_relay,HIGH);
    else digitalWrite(pin_relay,LOW);
    }
    else {
      if((Setpoint - Input)>5){
        digitalWrite(pin_relay,HIGH);
        if ((Setpoint - Input)<6)
        {
          myPID.Compute();
        }
      }
      else{
        myPID.Compute();
        unsigned long now = millis();
        if(now - windowStartTime>st[3])
        {                                     //time to shift the Relay Window
          windowStartTime += st[3];
        }
        if((Output*(st[3]/100)) > now - windowStartTime)  digitalWrite(pin_relay,HIGH);
        else  digitalWrite(pin_relay,LOW);
      }
    }
    }
  19. А как-то можно убрать минимальную продолжительность паузы в 1 минуту?

  20. Можно, но с какой целью? Если пауза не нужна, то ее можно просто пропустить

Страница 1 из 5


HBPro Домашние пивовары

Открыть AirBir

Пиво — напиток, который широко известен почти во всех культурах мира, поэтому неудивительно, что есть проекты, основной целью которых является создание пива быстро или домашним способом. Здесь выделяется проект Open ArdBir.

Open ArdBir — это проект, который на основе платы Arduino контролирует весь производственный процесс от хранения до мацерации, заканчивая дегустацией. Все фазы контролируются платой Arduino, точнее говоря, платой PCB, основанной на дизайне Arduino, но включающей светодиодный интерфейс для управления процессом из самого Open ArdBir.

Кроме того, в этой машине есть несколько датчиков и подключенная схема, что означает, что нам не нужно ничего делать для создания собственного пива, просто введите ингредиенты а об остальном позаботится Open ArdBir со своей программой. Следовательно, интерфейс на основе Arduino очень важен. Таким образом, через этот интерфейс мы не только узнаем температуру мацерации, но и можем ее изменить, поскольку устройство также имеет вентиляторы и хладагенты, которые позволят нам изменять температуру по своему вкусу или потребностям.

Кроме того, самое лучшее, по крайней мере для многих из вас, кто читает нас, — это то, что Open ArdBir — совершенно бесплатный проект что мы можем построить сами и что мы даже можем купить специальную печатную плату, которая так важна для проекта. Но мы также можем построить свою собственную печатную плату, если захотим. Для тех из вас, кто хочет узнать больше, в ссылку У вас есть вся документация по проекту (включая программы), и для тех, кто хочет узнать больше или купить печатную плату проекта, в Су Facebook страницу вы найдете остальную информацию. Лично я считаю, что это отличный проект, хотя он не позволит нам производить пиво в больших количествах, жаль. Верно?

Содержание статьи соответствует нашим принципам редакционная этика. Чтобы сообщить об ошибке, нажмите здесь.

Hi
Let me introduce myself, I’m David Italian homebrewer since long time and active member of the ArdBir Team

I’m new in the frum and I would like to share some information about this exciting project that has reached a very advanced and professional stage.

The project
Open Ardbir is largely inspired by the original project formerly Braudino from Stephen Mathison and then upgraded and modified by Mike Wilson under the Mike’s Brewery appellation and is been completely reviewed by Max Nevi and Italian team (Alessio, Davide, Luciano, Luigi, Piero, Savio)
Lot of enachement and new features have been introduced and a dedicate HW board “all in one” based on AtMega328 is also available.
We can state that currently Open ArdBir is the most advanced and comprehensive controller for single vessel systems and is universally adopted in all “brauduino” like platform

What is Open ArdBir ?
Open ArdBir is Open source platform for brewing process control and automation based on Arduino. The platform is intended for single vessel RIMS system and BIAB process.
The controller automates all the phases: from mashing, boiling and hops addition,cooling up to whirpool providing all the capability to both beginners and advanced homebrewers. The system is interactive and programmable and can be configured via 4 push buttons and LCD display provides all relevant information in all phases.

Here a functionl diagram with main components

Image

Arduino Uno run the control process implementing PID+PWM control and mange keyboard and 20×4 LCD
The temperature probe provide the imput and a dedicated HW controls 3 outputs

  • PWM out for SSR relay controlling heating elemnt
    Digital Out for relay controlling recirculating pump
    Digital out to drive a piezo buzzer

What do I need to run Ardbir ?
From HW perspective a specific shield has been developed in order to connect temperature probe, SSR relay for heating element, Pump relay, buzzer as well as LCD display (16×2 and 20×3) and 4 push buttons.

Image

A dedicated “all in one” board is also available integrating all the component including ATmega328 processor (arduino UNO) in single PCB professionally engineered

Image

Image

What are the feature and Function ?

Feature and Functions (Version 2.8.3-RC)

  • Fully automatic and Manual mode
    Gas or Electric Heating configuration
    Full Configurable PID/PWM and process parameter
    Full configurable Unit parameter
    Full configurable Step Mash (temp/duration)
    Full configurable Boil and Hop Additions
    PID temperature control algorithm
    PWM heating power control
    Whirlpool and Cooling
    Recipe managing and storing/load
    Multi HW support (LCD 16×2 and 20×4)
    Delayed start
    Process Pause/recover
    Scale Temp (°C-°F)
    Multi Language support (Italian,English,Spanish,Portuguese;Russian;Norwegian):
    Compiled on Arduino V1.6
    GNU V2 software license

Where can I find more details?

All details of the project are reported on our public FB page, with “like” you stay tuned with the project and supporting community
https://www.facebook.com/OpenArdBir

Source code is available trough Github
https://github.com/ArdBir

user manual available on our repository as well PCB and schematic and last SW version
http://goo.gl/qMhPgu

you tube channel
https://www.youtube.com/channel/UCgtcVK … l_mY4cKUbQ

Hope you enjoy the project and you can support us
We are currently working to a new platfrom enhanced (SD card reader, real time clock, BT connection, graphic TFT display) and also to an advanced fermentation temperature controller (ArdFerm) supporting peltier (TEC) cooler and traditional cooler

Stay Tuned
Davide ArdBir team

Открытая передняя панель Ardbir

Домашнее пивоварение можно обобщить в хобби «Сделай пиво дома» и наверняка это распространенная страсть по всему миру, включая Италию, где я живу. Домашние пивовары — это, в основном, мелкие производители крафтового пива и, вообще говоря, люди, увлеченные не только едой и напитками, но и любителями DIY, которые любят эксперименты, создание рецептов, преобразование материалов в ряд, контроль процесса и все типичное отношение производителей.

Я не знаю, является ли это процессом изготовления пива, это, как правило, поэтапный процесс при поддержке конкретной технологии или типичного мышления домашнего пивовара, но на самом деле почти все домашние пивовары очень гордятся созданием своего собственные инструменты и оборудование. В своем долгом домашнем пивоварении я обнаружил, что одной из общих страстей в сообществе является самостоятельное строительство и изготовление оборудования, необходимого для производства пива. На многих форумах, блогах или журналах, посвященных хобби, почти всегда есть раздел, посвященный оборудованию для DIY.

В Интернете вы можете найти планы практически для любого возможного устройства, необходимого для автоматизации и контроля процесса изготовления пива — в некоторых случаях они пытаются имитировать и масштабировать профессиональное оборудование, но иногда даже более продвинутые и креативные!

Я определенно являюсь частью этого сообщества, специализирующегося на домашнем пивоварении, и иногда я спрашиваю себя, получаю ли я больше удовольствия от строительства нового пивного гаджета или от производства пива… или даже от питья пива!

После многих разных экспериментов в прошлом с разными технологиями я наткнулся на Arduino, и, по крайней мере, мне кажется,го ингредиент для приготовления пива — вместе с водой, ячменным солодом, хмелем и дрожжами. Брак Ардуино с пивоварением идеален… возможно, потому что я живу в Ивреа, недалеко от Ардуино.

Arduino Brewing

Сначала я попытался перенести все свои базовые системы, основанные на стандартной стандартной технологии, такой как ПИД-терморегулятор и ШИМ-контроллер, в экосистему Arduino, чтобы я мог начать другие, более продвинутые, проекты. Во время одного из этих первоначальных проектов я встретил другого итальянского парня, который разделял страсть к пиву, те же идеи и любовь к Arduino. Все было взято из моего поста в итальянском блоге … это стимулировало людей улучшать и развивать мою первоначальную идею пивоваренной системы «все в одном» и из другого аналогичного проекта на Arduino в Австралии от Стивена Матисона.

Благодаря огромному и фундаментальному вкладу Сальваторе Петроне и Масимо Неви, я очень горд представить Open Ardbir. Это система управления, позволяющая полностью автоматизировать процесс производства пива с помощью системы заваривания в одном сосуде (RIMS).

Ядром системы является Arduino Uno, и был разработан экран для подключения датчика температуры, реле SSR для нагревательного элемента, реле насоса и зуммера, а также ЖК-дисплея и 4 кнопок для взаимодействия и программирование.

Открытый щит ArdBir

Вы можете использовать его вручную, как ПИД-регулятор, или в полностью автоматизированном процессе, в этом случае, как только пользователь установит параметры рецепта и запустит процесс, они будут следовать пошаговым инструкциям от начальной настройки до затирания, варки и добавления хмеля. , Каждый шаг и операция четко выделяются на дисплее и корыто звуки

Каждый параметр может быть настроен в меню конфигурации системы, и рецепт может быть сохранен для дальнейшего использования. Домашний пивовар может использовать Open Ardbir ​​в своих собственных настройках, и существует множество различных аппаратных реализаций вокруг контроллера, поскольку интеграция довольно проста (PUMP / датчик температуры и нагревательный элемент).

Открыть ArdBir в сборе

Весь проект с открытым исходным кодом, и все файлы и информацию можно найти на GitHub и на нашей странице facebook. Получите отличный «автоматический» напиток с помощью Open Ardbir.

Понравилась статья? Поделить с друзьями:
  • Gigabyte ga h55m ud2h инструкция на русском
  • Кофеварка капельная сименс инструкция по применению
  • Инструкция для проведения обучения оказания первой помощи пострадавшим на производстве
  • Amazfit gtr 2 new инструкция на русском
  • Отзыв руководство астронавта по жизни на земле