Dy arduino-sous-vide машина

Dy arduino-sous-vide машина
Dy arduino-sous-vide машина
Anonim

DIY Arduino-Sous-Vide Machine

Создайте свою собственную машину sous-vide и получите идеально приготовленные блюда с высокоточным контролем температуры. Возьмите Arduino, рисовую плиту и датчик температуры, и давайте начнем.

Вы пища или просто наслаждаетесь едой правильно приготовленной еды »« src = »// www.allaboutcircuits.com/uploads/articles/Chirila_sous_vide_1.jpg" />

Что такое Sous-Vide Machine?

Прежде всего, вам может быть интересно, что такое машина sous-vide. Имя не является интуитивным, если вы не говорите по-французски (или даже если вы это делаете). «Sous vide» является французским для «под вакуумом», который дает намек на его назначение.

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

Это кулинарный метод, разработанный для того, чтобы по существу кипятить продукты, особенно мясо, без потери соков или аромата в воде. Но в чем польза? Разве не лучше (и проще) просто приготовить стейк в сковороде?

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

Теперь, если мы приготовим тот же самый кусок стейка в машине для суса, кусок мяса будет полностью приготовлен полностью. Вот картина, чтобы лучше понять, что происходит:

Image
Image

Если вы не были полностью уверены, что этот проект стоит делать в начале, я надеюсь, что это изменило ваше мнение. Давайте остановимся здесь на «почему» и начнем строить нашу машину sous-vide!

BOM

Прежде всего, для того, чтобы наша машина sous-vide была как можно более простой, нам понадобится основная рисоварка. Это содержит наш желаемый нагреватель и контейнер для воды. Без дальнейших церемоний, вот полная спецификация:

  • Рисоварка
  • Ардуино Нано
  • Реле LEG-5
  • Резистор 2, 2 кОм
  • 2N2222 NPN-транзистор
  • MCP9701 * термистор IC
  • 1N400x диод
  • Кнопки (количество 3)
  • ЖК-дисплей 16 × 2 с контроллером Hitachi HD44780 I 2 C
  • Блок питания 5 В
  • Удлинитель
  • Эпоксидная **
  • 100nF развязывающий конденсатор (рекомендуется, но не обязательно)

* Вместо этого вы можете использовать DS18B20, но вам нужно будет изменить код соответственно

** Для гидроизоляции температурного датчика

Аппаратное обеспечение

Давайте поговорим об аппаратном аспекте этого проекта. Вот схема:

Image
Image

Пожалуйста, соедините все, как вы видите на схеме. Ниже я попытаюсь объяснить, почему мы выбрали конкретные компоненты и как они работают.

MCU (микроконтроллерный блок)

Для «мозгов» этого устройства мы будем использовать очень базовую плату разработки: Arduino Nano. Он имеет тот же микроконтроллер ATMEGA328, что и Arduino Uno, но в форме SMD.

LCD

ЖК-дисплей представляет собой обычный 16 × 2 символьный дисплей с контроллером Hitachi HD44780. К нему прикреплена плата I 2 C, которая также содержит потенциометр для регулировки контрастности. Я решил использовать это, потому что нам нужно только четыре контакта для связи с нашим Arduino: два для данных и два для питания.

Реле

Реле LEG-5 представляет собой сквозной компонент, который действует как переключатель, закрываясь при прохождении тока через катушку. Вы можете использовать любое другое реле; просто убедитесь, что номинальное напряжение катушки составляет 5 В и что он имеет индуктивный контакт переменного тока, по меньшей мере в 1, 5 раза превышающий ток, необходимый вашей плите для риса. Например, моя плитка для риса нуждается в 2A AC, а реле LEG-5 имеет рейтинг 3A.

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

Image
Image

Другим важным аспектом этого проекта является то, как «подключить» удлинитель. (Мы используем удлинитель, потому что мы не хотим разрушать шнур, прикрепленный к рисоварке.) Нам нужно создать разрыв в одном из проводов удлинителя и вставить наше реле.

Домашние электрические кабели состоят из «линии», «нейтральной» и «заземленной». Чтобы правильно включить или выключить машину sous-vide, нам необходимо вставить реле в линейный проводник. Мы могли бы поставить реле в нейтральный проводник, но хорошо использовать линейный проводник, потому что этот подход может обеспечить дополнительную защиту от поражения электрическим током. Вы можете определить, который является проводником линии, с помощью сетевого тестера (который обычно выглядит как отвертка) или по цветовым кодам проводки, характерным для вашей страны. Здесь вы можете узнать больше о цветовых кодах. Другая хорошая практика - использовать двойное реле или два реле для переключения линии и нейтрали.

Важное примечание. При создании этого проекта будьте осторожны с сетевым напряжением. Всегда следите за тем, чтобы все было отключено, когда вы возитесь с проводами, и расположите проводку так, чтобы линия (открытая) и нейтральные проводники не соприкасались. Если вы не уверены на 100% о том, что делаете, пожалуйста, спросите в комментариях или на форуме, прежде чем продолжить свой проект.

Продолжая работу с коммутационной частью схемы, вы можете увидеть, что есть транзистор NPN и резистор. Это необходимо для усиления тока, необходимого для включения катушки реле. Нам это нужно, потому что ток, необходимый для реле (72 мА), больше, чем то, что может выводить наш микроконтроллер (максимальный максимальный выходной ток I / O-вывода составляет 40 мА, а типичные рабочие токи должны быть значительно ниже). Резистор необходим для ограничения тока, идущего в базу транзистора, который предназначен для работы в качестве переключателя (т. Е. В области насыщения). Вы можете прочитать больше об этом предмете здесь и здесь.

Кнопки

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

Датчик температуры

Основой этого проекта является датчик температуры, MCP9701. Я не выбрал это устройство по каким-либо конкретным причинам проектирования; это было то, что у меня было. Он имеет приличную точность, и интерфейс прост - он выдает напряжение (V out), пропорциональное температуре окружающей среды (T a), с наклоном (T c, т. Е. Температурным коэффициентом) 19, 5 мВ / ° C и смещением напряжение (V 0 ° C) 400 мВ.

(V_ {out} = (T_ {c} times T_ {a}) + V_ {0 ° C} )

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

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

Image
Image
Мой водонепроницаемый датчик температуры

Если вы не хотите проходить эту проблему, вы можете использовать уже водонепроницаемый датчик.

На схеме имеется развязывающий конденсатор C1. Моя схема хорошо работала без него, но это хорошая идея включить ее.

Источник питания

Наконец, блок питания! Один источник питания 5 В используется для всей цепи. Вы должны найти то, что может иметь источник не менее 150 мА. Например, зарядное устройство для мобильного телефона выполнит эту работу.

Программного обеспечения

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

Вы можете видеть, что есть два файла: «main.ino» и «main.h». Файл заголовка с расширением «.h» включает объявления для всех используемых переменных и констант, а также директивы «include», потому что мы используем две библиотеки, которые вам нужно будет установить. Первая из них - это библиотека PID от Brett Beauregard, которая будет использоваться для управления реле для получения желаемой температуры, а вторая - библиотеки для управления ЖК-дисплеем через I 2 C. Если вы хотите изменить параметры или какие контакты для использования, вы должны сделать это в файле заголовка.

В файле «main.ino» мы находим основные функции Arduino «setup ()» и «loop ()». В setup () мы инициализируем все переменные, которым требуется значение по умолчанию, а также устанавливаем контакты как выход (для реле) или вход (для переключателей).

В основном цикле мы называем пять функций:

  • cook (): Мы вызываем эту функцию только в том случае, если для переменной «start» установлено значение «true», и если прошедшее время с начала приготовления меньше, чем выбранное время приготовления. Внутри этой функции происходит «волшебство». Мы читаем температуру через функцию read_temp (), и мы передаем ее ПИД-регулятору, который даст нам выход. Основываясь на этом выходе, мы устанавливаем контакт управления реле как «HIGH», так и «LOW». ПИД-регулятор представляет собой систему обратной связи, которая вычисляет выходное значение на основе ошибки, которая представляет собой разность между заданной (нашей желаемой температурой) и текущей температурой и тремя константами, называемыми P (пропорциональными), I (интегральная), и D (производное). Чтобы узнать больше об управлении ПИД-регулятором, взгляните на один из моих предыдущих проектов - паяльную станцию Do-It-Yourself с ATmega8. В проекте sous-vide мы используем выход для управления временем включения реле, поскольку реле может быть включено или выключено (2 значения).
  • checkBacklight (): эта функция проверяет, была ли нажата какая-либо кнопка за последние 30 секунд. Если нет, он выключит подсветку.
  • updateButtons (): Здесь проверяется текущее состояние кнопок.
  • checkMenu (): также можно назвать «функцией меню»; он использует несколько операторов switch для навигации по меню и установки температуры и времени приготовления с помощью трех кнопок.
  • updateDisplay (): Наконец, мы обновляем ЖК-дисплей, чтобы отобразить главное меню, его части или текущую температуру и оставшееся время приготовления (если идет процесс приготовления sous-vide).
  • read_temp (): Этот не вызван напрямую в основном цикле, но это очень важная функция. Он делает 5 показаний в начале (в функции setup ()), а затем в основном цикле () он вычитает последнее показание, добавляет другое и вычисляет среднее значение. То, что это в основном делает, - это гладкие наши входные данные. Вы можете узнать больше об этом на этой странице Arduino. Затем усредненное значение преобразуется в градусы Цельсия, используя приведенную выше формулу в разделе «Температурный датчик». Мы преобразуем показания из 10-битного АЦП в милливольты, затем вычитаем 400 (смещение), а затем разделим наклон в мВ / градус (т. Е. 19, 5), чтобы получить температуру в градусах Цельсия.

double realtemp = ((average * (5000.0 / 1023.0)) - 400) / 19.5;

Вывод

Вот и все, ребята! Если вы последовали инструкциям шаг за шагом, отправляйтесь и готовите еду сейчас, потому что машина sous-vide готова к действию, и я уверен, что вы голодны.

Включите его, войдите в меню, установите температуру, установите время приготовления, нажмите кнопку начала и наслаждайтесь! Вот моя попытка в бургерке sous-vide:

Image
Image

Если у вас есть какие-либо вопросы или идеи по улучшению проекта, пожалуйста, не стесняйтесь оставлять комментарии. Я попробую сохранить проект на этой странице GitHub, если вы хотите получить последнюю версию программного обеспечения, но я не могу гарантировать, что информация, которую вы найдете здесь, будет на 100% точнее. Если вам не нужны дополнительные функции, используйте код, включенный в эту статью.

Код машины Sous-Vide

То, о чем я не упоминал (потому что я хотел, чтобы этот проект был как можно более простым), является водяным насосом. Все профессиональные машины sous-vide имеют водяной насос, который циркулирует в воде и, таким образом, помогает поддерживать равномерную температуру. Насос не нужен, но если у вас есть один доступный, вы можете попробовать его и посмотреть, заметно ли улучшены результаты. Вы можете использовать выходной вывод Arduino в сочетании с транзистором, чтобы включить его.

Вот ссылка на веб-страницу, которая дает лучшие температуры для разных видов мяса. Вы также можете посмотреть на YouTube, если вам нужна идея для приема пищи.

Спасибо за прочтение!

Попробуйте этот проект сами! Получить спецификацию.