По-моему, создать такое не особо сложно и вот почему:
- Вернёмся в 90-е - 00-е годы. Программируемая электроника тогда была редкостью, а в таких стиралках использовались обычные механические командоаппараты. Циклограмму его работы и можно взять для примера (например той-же советской машинки "Вятка-автомат"). Мы же собираемся создать что-то простое, а не копировать от и до передовую разработку какой-то компании, в которую вложены миллионы долларов. В любом случае, код можно доработать если в этом появится реальная необходимость.
- В качестве обучающего материала я бы посоветовал это видео:
Вся информация ниже будет основана на этом видео.
Из чего состоит СМА и с чем надо будет взаимодействовать:
- Плата управления, которую нам нужно будет создать. Это тот самый блок, который отвечает за правильную работу всех компонентов.
- Панель управления. Отвечает только лишь за ввод и вывод информации для пользователя. Могу поспорить, что панель управления на современных СМА с LCD экранами, сенсорным управлением вполне может быть сделана на STM32. А плата управления на ATMega или чём-то подобном. Кстати, управление через Wi-Fi с помощью ESP8266 или чего-то подобного (Bluetooth-модуль, например) может быть отчасти выходом.
- Устройство блокировки люка (УБЛ). Как по мне - вещь ненужная, да и которая может доставить неприятности в экстренной ситуации. Но это моё мнение. В данном случае, в той же прошивке можно иметь возможность УБЛ отключать программно или не ставить вовсе. По своему желанию и на свой страх и риск. УБЛ блокирует дверцу люка после отправки команды на начало цикла стирки и разблокирует дверцу после финального отжима. Как реле. К тому же, там имеется датчик закрытия двери, который можно использовать
- Клапаны подачи воды. Их несколько, т. к. в лотке для порошка есть несколько камер для разных циклов стирки. Принцип работы, думаю, в пояснении не нуждается. В финальном полоскании открываются все клапаны (как я знаю) и вода смывает всё из всех трёх отсеков сразу.
- Прессостат, он же датчик уровня воды. В баке, где находится барабан, имеется отвод в виде штуцера, который через шланг присоединяется к прессостату. Принцип работы этой системы основан на законе о "сообщающихся сосудах". Когда уровень воды поднимается в баке, то он и поднимается в магистрали прессостата. А т. к. эта магистраль герметична, то в ней поднимается давление. А дальше всё зависит от самого прессостата. Если он релейного типа, то он просто замкнёт или разомкнёт цепь (будет слышен щелчок) и клапан подачи воды тут же закроется. Если датчик аналоговый (наверняка его принцип действия аналогичен потенциометру), то плата управления обрабатывает сигнал.
- Электродвигатель барабана. Возьмём коллекторный двигатель, т. к. с ним довольно просто работать. Думаю, такой тип мотора известен всем, а управлять им довольно просто через симистор и реле. Цикл стирки. За основу возьму цикл СМП Эврика. Цикл 11-4-11 в обычном режиме, где 11 секунд - это вращение электродвигателя в одну или другую сторону, а 4 секунды - пауза. В бережном режиме цикл у неё 4-11-4 соответственно. У каждого производителя машин эти цифры будут различаться. Цикл отжима. Мотор сначала выходит на обороты для стирки (где-то 60 об/мин), а потом их плавно поднимает сначала раза в два (значения примерные), чтобы прижать бельё к стенкам барабана, а затем жарит на своей максимальной мощности всё оставшееся время. Трёх минут этого времени будет более чем достаточно для качественного отжима. Контроль оборотов мотора можно производить через таходатчик (это не очень то и сложно). Как описали коллеги выше, в машинках должен стоять датчик вибрации, чтобы машинка могла равномерно разместить бельё по барабану. Наверняка каждый производитель разрабатывал такой алгоритм индивидуально и потратил много денег. Думаю, и без этого датчика вполне можно достичь приемлемого результата. Ну...если вы не будете в ней стирать кирпичи
- ТЭН. Ну тут всё просто, ПИД регулятор и всё, а уроки по ним были на канале.
- Помпа слива воды. Тут тоже всё просто. После каждого цикла стирки или полоскания она включается, чтобы слить воду, уровень которой можно контролировать с помощью прессостата. 1-1.5 минут должно быть достаточно для полного удаления воды из бака. А в режиме отжима помпа включается до начала вращения барабана и работает весь цикл отжима. Помпа это обычный мотор, которым можно управлять через реле.
Примечания:
- Циклы стирки и полоскания различаются лишь объёмом воды в баке (для стирки нужно меньше воды, см. видео выше), всем остальным они полностью одинаковы.
- Полный цикл стирки выглядит примерно так:
- Предварительная стирка. Вода подаётся через магистраль для предварительной стирки. Сам цикл короткий
- Основная стирка. Цикл длиннее, а вода подаётся через отделение для основной стирки
- Полоскания. Их обычно четыре, посте третьего короткий отжим, а для четвёртого, вода подаётся через отсек для кондиционера/ополаскивателя или через все три сразу. После него финальный отжим и всё.
- Программу для работы машинки вообще можно разделить на несколько больших частей:
- Низкоуровневая часть, которая отвечает за температуру и количество воды, направление и обороты электродвигателя, подачу воды через конкретный клапан и т. п.
- Высокоуровневая часть, в которую записываются сами режимы работы (хлопок, шерсть, синтетика и т. п.), которые отличаются друг от друга лишь температурой воды, уровнем механического воздействия на бельё (обычный или бережный режим), количеством полосканий и т. п. Кстати, это всё можно оформить как класс
Например, для меня вообще достаточно иметь лишь 2 режима работы двигателя (обычный или бережный), температуру воды и количество полосканий.
Думаю, написать эти обе части под силу паре-тройке ардуинщиков. Для этого достаточно иметь лишь дохлую стиралку, знания и небольшой набор электроники
Для тех, кто начнёт говорить "а в машинке имеется такие-то системы" говорю сразу: За основу я брал устройства годов 80-х - 00-х, где по большей части использовалась механика. Такие машинки прекрасно работали, а для большинства людей главное - заставить "вон ту груду железяк" жужжать, крутить чем нибудь и стирать. На качестве это навряд ли сильно отразится.
Надеюсь,
@Gex7772,
@Arhat109,
@awax2000,
@Leha82,
@Gamer22 да и сам Alex Gyver оценят то, что я написал и оставят ценные комментарии. Очень хотелось бы, чтобы эта тема нашла продолжение. По крайней мере, в ней нет ничего такого сложного, а половину кода вообще можно взять из уроков Алекса.
P. S. Текст может выглядеть коряво, т. к. я пока не совсем разобрался с форматированием текста на этом форуме. Заранее приношу извинения, если где-то читать будет сложно