Я сделал: контроллер аквариума(PIC16F684)



(не пугайтесь, вода в аквариуме не черная, фотал на телефон потому так и получилось)
После были приобретены оптопары(moc3083), симисторы(BT138-800) и конденсаторы(0,01мкф 1600В. вольт на 500-600 не было, пришлось брать эти. хуже от этого врятли стало).Контроллер PIC16F684 уже несколько месяцев ждал своего часа. Дождался.
Собрано все на вот такой плате:

U22 — место под круглый диодный мост. дырки по бокам — на случай если не встанет чтобы запаять на обычных диодах.
U24 — стабилизатор. кренка на 5 вольт. 7405 в магазине кончились, откопал ее.
сразу оговариваю, плата изначально делалась под обычный мотор, поэтому можно наблюдать место для транзистора. Его нет, т.к. с мотором не получилось. Серва подключается к ISCP разъему. Свободное место — для трансформатора(в итоге осталось пустым, т.к. транс оказался каким-то маломощным, питая через кренку пик и светодиод дребезжал, а при подключении сервы вообще не мог обеспечить нужного тока. был взят блок питания от советского магнитофона). Добавлена перемычка, дающая 5в в ISCP. Остальное вроде так и осталось.
Программа для пика написана на ASM, работает по расписанию(день недели, час, минута) Расписание хранится в EEPROM(3 байта на событие: 1: день, час. 2: минута. 3: состояние. в этом пике 256 байт, имеем около 80 событий). Раз в час пик загружает расписание на этот час в RAM. Тут было сделано ограничение: не более 16 событий в час(а зачем больше?). Каждую минуту проверяет новые события. Часы работают от часового кварца на TMR1(16битный), таким образом имеем период переполнения в 2 секунды. Вся работа происходит в прерывании, основной цикл — безделие.
Байт состояния хранит команду(установить прямо в порт, включить, выключить) и операнд. Отдельно обрабатывается флаг кормления.
В результате осталось 2 не занятых ноги. К ним можно подключить термометр(что, возможно, и будет сделано) или что-нибудь еще. Так же можно выкинуть светодиод и освободить еще одну ногу.
Изначально целью была простота: никаких сторонних RTC(на это ресурсов пика хватит вполне), GPS для синхронизации времени(а нафига оно тут? не ракетой управляем), графических экранов(зачем? работает и пусть работает, нечего технику смотрением смущать), телефонных модулей(отчеты в виде SMS о кормлении и т.д. тоже польза сомнительна). Время задается в начале программы константами(да-да, константами. устанавливаем время на пол часа вперед, зашиваем и неспеша идем подключать)
Уже установлено, работает в тестовом режиме: пока без корпуса и не все подключено:

В приложении проект MPLAB с кодом(+составленое мной расписание) и плата в DipTrace.(кста, почему форум блочит rar-архивы? чем они не угодили?)
PS: в ходе работ в первый раз попользовался EEPROM, научился пользоваться указателями(FSR\INDF). Первое устройство, работающее с напряжениями выше 12 вольт.
- +3
- 08 июня 2011, 15:38
- kest
- 1
Файлы в топике:
aquarium.zip
по поводу рар — не бесплатная технология. Те кто сидит на линухе открывают с большим геморроем. Если не админ на компе и нет винрара — не открыть. Зип открывается голой виндой без проблем. Ну… и по собственным ощущениям — правила хорошего тона в интернет для 2+ человек — лучше в зип. Все мое имхо.
PS у меня винрар стоит, но все равно по почте или посторонним людям в зипе, во избежании.
PS у меня винрар стоит, но все равно по почте или посторонним людям в зипе, во избежании.
просили фото подробней — держите



Разбирать и высыпать корм не буду, вот фото конца винта. Он такой во всю длинну, что в емкости.

Исходные материалы:

+ провод. тем кто будет делать тоже сам: за ось берите толстый одножильный провод какой-нибудь. у меня ось скручена так же из тонких, которыми плоскости делались-не оч хорошо получилось.



Разбирать и высыпать корм не буду, вот фото конца винта. Он такой во всю длинну, что в емкости.

Исходные материалы:

+ провод. тем кто будет делать тоже сам: за ось берите толстый одножильный провод какой-нибудь. у меня ось скручена так же из тонких, которыми плоскости делались-не оч хорошо получилось.
Комментарии (12)
RSS свернуть / развернуть