Например TDA7294

РадиоКот > Схемы > Цифровые устройства > Автоматика

Аквариумная кормушка

Автор: Алексей Труфанов
Опубликовано 01.09.2016.
Создано при помощи КотоРед.

Вступление.

Здравствуйте  уважаемые любители рыбы и наш дорогой именинник. Хочу поздравить Кота с футбольным счётом 1:1 и подарить свой скромный подарочек.

Купил, однажды, мой сосед, любитель аквариумистики   автоматическую кормушку, чтобы ездить в отпуск, месяца на два  и не беспокоиться о своих хвостатых, полосатых, разноцветных питомцах. И…  Приходит через две недели с озабоченным видом и интересуется,  не разбираюсь ли я в сложной бытовой технике. Конечно, как отказать в «помощи» рыбкам (расти рыбка большая пребольшая). Оказалось, купленная кормушка была частично неработоспособная.  Хотя взгляды на рыбу у меня только гастрономического плана и живу на фабрике тяжёлого машиностроения, но всё же согласился оживить экземпляр.

Поиск поломки.

 

 

Название агрегата DAILY-DOUBLE II. Конструкция автокормушки оказалась довольно простой.  Часовой механизм, получающий питание от пальчиковой батарейки  посредством шестерёнчатого редуктора  вращает барабан с сухим кормом и кормит рыб два раза в сутки. Количество корма регулируется вращающейся трубкой. От поломки шестерён, при заедании барабана, предохраняет специальная муфта с шариками внутри и работает как трещотка.  Вот эта муфта и стала причиной поломки зубьев шестерёнок.  Муфта была очень сильно сжата и сила трения превосходила предел прочности материала шестерёнок. (Соблюдайте усилие момента затяжки гаек!)  Подробнее о конструкции можно прочитать на бескрайних просторах в Интернете.   Фото прилагается.

Выбираем характеристики.

- время работы минимум  30 дней;

- кормление один раз в сутки (рыбки две, Маша и Миша);

- контроль положения барабана с кормом;

- экономия энергии батареи;

- достаточный крутящий момент барабана при постоянной скорости вращения;

- целостность оригинального, фирменного корпуса кормушки.

Размышления.

Самый главный наш враг - это объём и вес. В маленькое пространство кормушки нужно будет поместить двигатель с редуктором,   элемент питания достаточной ёмкости, электронную часть управления, датчики положения барабана. Самый простой способ решения проблемы – это выкинуть всё лишнее и все внутренние детали были закинуты в такую даль, что даже фотографии не осталось. 

В качестве силового агрегата, после долгих раздумий, выбор пал на шаговый двигатель от древнего флоппи дисковода. У шаговых двигателей хороший крутящий момент, не требующий дополнительного редуктора, с нашей задачей он справится.  Хотя потребляет  шаговый двигатель неприлично много, но время работы его ограничено (я думаю, четыре секунды на один оборот барабана с потреблением до 0,5А приемлемо).  При заедании барабана кармушка не завяжет сама себя в узел.  В качестве бочки мёда на ложку дёгтя, мы вгоним контроллер в спящий режим  до момента следующего оборота барабана и отрубим по питанию всю периферию управления шаговым двигателем и датчика положения барабана.  В качестве источника питания возможны варианты с литиевым  аккумулятором, но опят нас поджимает внутренний объём (нужна схема контроля заряда и критичного разряда и т.д.).  Думаю, батарея «Крона» - просто и сердито. Ставить аккумулятор с размерами под «Крону» не советую. После глубокого разряда она выйдет из строя навсегда.   

Контролировать весь процесс , я думаю, будет  микроконтроллер PIC16F628 или PIC16F627.  Таймер номер один имеет слово из двух байт.  При установленном кварце тактирования 32768Гц, подключённому к таймеру, появление единицы в самом старшем разряде, говорит, что прошла секунда. После этого события, появление нуля в этом разряде говорит, что прошла ещё одна секунда.  Если по-простому, то переполнение таймера и установка соответствующего флага, говорит о том, что прошло две секунды.  Алгоритм такой:  

-  контроллер выйдет из сна;

-  прибавит к счётчику две секунды;

-  сравнит отсчитанное время с расчётным;

-  если результат не совпадёт, то  снова войдёт в спящий режим. 

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

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

-  дождаться  срабатывания датчика;

-  вращать дальше и подсчитать количество полушагов на один оборот (повторное срабатывание датчика);

-  вычислить  количество полушагов на ¾ длины окружности барабана;

-  записать полученные данные в оперативной памяти.

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

 

Первая схема.

 

В первой  схеме были выбраны следующие компоненты:

- контроллер PIC16F628;

- силовая микросхема управления шаговым двигателем КР1128КТ3;

- линейный стабилизатор напряжения LP2950ACZ-3.3 (малопотребляющий) ;

- полевой транзистор отключения силовой части IRFD9014;

- магнитный датчик Холла TLE4905;

- защитные диоды, резисторы R1-10k, R2-1k, R3-30k , кварцевый резонатор 32768Гц.

Думаю нет необходимости рассказывать о всех компонентах подробно, более смачно о них написано в их же собственных даташитах.

 Печатная плата.

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

                           

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

 

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

Испытания закончились неудачей. Датчик Холла настолько чувствителен к магнитному полю создаваемого на обмотках шагового двигателя, что давал команду контроллеру на остановку  у каждого «телеграфного столба» на каждые 12 градусов. Но не спешите отказываться от схемы,  она рабочая, если только уменьшить конструктивно влияние магнитного поля. 

Вторая схема.

Вторая схема разрабатывалась аварийно в скоростном режиме. Датчик Холла был заменён на оптический щелевой, оторванный от струйного принтера, под определённые габариты. Программное обеспечение не менялось.

 


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

 

Датчик свободно проходит в прорезь шкива.

 

Пластмассовые бонки подрезаются таким образом, чтобы при установке платы не было заеданий, и шкив вращался от руки. Если получится, что отхватили много,  добавляйте текстолитовые шайбы между платой и короткой бонкой.

 

Со  стороны барабана шкив фиксируется родным пластмассовым стопорным кольцом.

 

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

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

Программное обеспечение написано в среде MPLAB IDE v.8.92 на ассемблере.

Вначале отключаются компараторы,  настраиваются порты микроконтроллера, затем очищается ОЗУ.  Настраивается таймер 1, но не включается, инициализируются переменные 24 часовой выдержке времени, подаётся напряжение питания на периферию управления двигателем, включается двигатель и «ищется»  датчик.  Если  при Setup за определённое количество полушагов  (120) датчик не найден контроллер отключает питание двигателя и программа блокируется до повторного сброса по питанию, чтобы не спалить детальки. (контроллер может не сбрасываться 1 – 3 секунды из-за электролита 33мкФ). Если датчик найден, вращение барабана продолжается, начинается подсчёт количества полушагов на один оборот вала и запоминается в ОЗУ, включается таймер 1 , отключается   питание периферии управления двигателем и датчика, разрешается прерывание от таймера 1 и контроллер входит в режим SLEEP. Каждые 16 секунд контроллер  просыпается, вызывается прерывание и увеличивается счётчик, сверяется с суточным периодом. Если есть совпадение, подаётся напряжение питания на периферию управления двигателем и датчика.  Включается двигатель,  барабан начинает вращение  пока датчик не сработает, одновременно считая полушаги двигателя, если лимит полушагов заканчивается, и датчик не сработал,  двигатель обесточивается до следующего включения через сутки. Если по какой-то причине барабан будет повёрнут в сторону вращения и не попадёт на  контроль датчика при включении, то остановка мотора произойдёт, если датчик сработает, а количество полушагов подсчитанным микроконтроллером будет не менее 3/4 длины окружности поворота барабана. В противном случае делается ещё один оборот барабана (ваши рыбки не останутся голодными).

Инструкция.

После успешного Setup снимите  барабан   насыпьте в него корм и установите так, чтобы выход трубки подачи корма находился в вертикальном положении (на 12 часов), при этом шкив не вращайте, а лучше,  помети  меткой нужную грань шкива и совмещайте её с выходом трубки подачи корма. Если при подключении батареи питания процесс начальной инициализации кормушки не наступил – меняйте батарею питания.  Если  «сетапните» кормушку, предположим, в 9:00 утра, то следующее кормление произойдёт через сутки в это же время.      

Работа кормушки с акваконтроллерами.

Можно подавать напряжение с сетевого блока питания, подключив к разъему  вместо батарейки. Напряжение 5 вольт и ток от 0,6А будет достаточным.  Подавать питание с акваконтроллера в течение 10 секунд и задавать любой период кормления программным обеспечением акваконтроллера. (Кормушка будет работать в режиме Setup).  

Можно управлять кормушкой с помощью кнопки S1, на плате кормушки, через реле (нормально замкнутое),  постоянно, в разомкнутом состоянии  с «Кроной» внутри и тогда при пропадании напряжения питания на акваконтроллере реле  отпускается, закорачиваются контакты для кнопки S1, и кормушка будет работать от собственного источника питания (полезно при пропадании сетевого напряжения). В архиве две прошивки, одна для 12 часов, а другая для 24 часового периода выдержки  времени кормления (какая к чему,  я забыл).

Ну, вот и всё. Если что, то не ругайтесь сильно. Я случайно попал в ваш колбасный отдел.

С  уважением,  спасибо за внимание. 

 

 


Файлы:
Архив RAR


Все вопросы в Форум.


ID: 2364

Как вам эта статья?

 Нравится
 Так себе
 Не нравится

Заработало ли это устройство у вас?

 Заработало сразу
 Заработало после плясок с бубном
 Не заработало совсем

34 10 7