Сейчас во многих дорогих холодильниках есть функция оповещения (писк) если дверь у него не закрыта больше хх минут. Функция крайне полезная, уверен те кто пользовался ей хоть раз со мной согласятся. Но как и у многих у меня глупый холодильник (бантик добавил чтобы было понятно что он у меня девочка) :( Покупать новый ради этой функции удел олигархов. Итак будем модернизировать то что есть.
Итак имеем примерно такой холодильник
И он изо всех сил старается быть веселым.
Что мы хотим
1.чтобы при открытии дверей (у нас их 2е — верх и низ) через 2 минуты пищало(не постоянно! 3 пика 1 раз в 2 минуты нас вполне устроит).
2.Чтобы можно было девайс легко установить
3.Без необходимости питания от 220в — питаем от батарей.
4.Ну и конечно чтобы батарейки не надо было менять минимум полгода.
Что нам надо
1 коробочка под 4АА батарейки
2 геркона+двухсторонний скотч (лучше использовать хороший 3м)
2 магнита
1 мк (по желанию сокет dip 8)
1 зуммер (он же пищалЪ)
2 коннектора 2х портовых
Схема подключения очень простая, деталей минимум.
Спаять 3 провода и сокет мк или сам мк, коннекторы.
Собираем по схеме, прошиваем как в
прошлой статье.
Attiny13 в данном случае хватает по уши.
90% времени мк будет спать. Просыпается 1 раз в 8 секунд и анализирует состояние портов.
Именно погружение мк в сон позволяет нам добиться низкого потребления энергии (ну и конечно использование низкопотребляющего мк
www.atmel.com/images/doc2535.pdf).
П.с. у меня девайс в работе уже 8 месяцев, батарейки не менял.
Крепим коробочку где удобно — у меня сбоку, можно сделать сверху на крышу холодильника, чтобы вообще не видно было.
Подгоняем магниты так чтобы при небольшом открытии мк пищал (максимальное расстояние магнит-геркон ~1см), т.к. часто дверь открывается не сильно, а на 1-2 см.
П.с. у мк еще остались 2 свободные ноги — можно вынести туда кнопку-тест проверки открытия дверей.
Известные баги/недочеты/пути улучшения
1.Нет индикации работы — для экономии энергии, если кнопка на коробочке включена — считаем все работает. Можно добавить низкопотребляющий диод, но автономность уменьшится(насколько надо подобрать диод и посчитать).
2.Бывет напихаешь в холодильника и дверь закрыта вроде, но расстояние между дверьми больше чем было при пустом когда размещали магниты — пищит.
Можно попробовать заменить герконы на ик светодиоды —
TCRT5000
Но нужно ставить чтобы засветки не было.
3.Если делать на TCRT5000 сделать кнопку для сохранения информации о расстоянии в память (eerproom)
4. Сделать кнопку для теста открытия дверей
5. как вариант вместо геркона попробовать использовать
такие микро переключатели
или такие
либо попробовать сенсор
AH3503 который по сути тоже самое что и геркон, но размерами намного меньше.
Для тех кто живет не один и следит за тем чтобы ночью никто не жрал ;)
можно модернизировать так — добавить часы реального времени(в этот корпус войдут мелкие, но точные ds3231). Переписать немного программу чтобы ночью сразу же начинало пищать при открытии (можно посадить на interrupt порты и вгонять мк в сон до момента срабатывания прерывания). Но придется поменять мк на attiny85(т.к. мк также в dip8 то больше ничего менять не надо — посадочное место такое же), т.к. по размеру код в 13ю тиньку не влезет. Возможно, можно потратить пару месяцев и написать код на асме <1кб, но кому это надо когда разница в цене м/у 13 и 85й несущественна.
В этом случае схема подключения будет такая
и в список деталей добавятся часы реального времени (я рекомендую брать ds3231, за год убегают на 1-2 секунды максимум, ds1307 дырявые их давно пора на помойку выкинуть, но предприимчивые китайцы суют их куда не попадя).
В итоге у нас получается вот такой девайс
п.с. на фото плохо видно, но там есть рычажок вкл/выкл в верхнем правом углу.
Вот так в сборе с герконами.
Внутренности — вместо одной батарейки стоит наше чудо и как видно в запасе еще почти 50% свободного места
п.с. коллеги просьба не стремать за грязный холодильник. katumом его мыть нельзя:) а другие средства для чистки я не люблю. Один раз работе резиновые ролики от принтера растворили им.
bom (bill of materials — список компонентов)
вариант 1
1.Коробочка на 4АА батарейки
ebay.com/itm/262648606548 ~50р
2.Геркон
Meder mk04
ebay.com/itm/161809270406 ~115р
Подойдет любой, нормально разомкнутый геркон, например
ebay.com/itm/201668517302 ~64р
3.Магнит
ebay.com/itm/131639320094 цена конь, я брал в промэлектронике рублей по 20-30 2 года назад. сейчас посмотрел 100р
www.promelec.ru/catalog/407/1300/1335/0/121815/#121815 мне кажется дорого, проще взять неодиновых десяток рублей за 40
или
ebay.com/itm/291850348948 ~51р геркон+магнит
Подойдет любой небольшой, только не ставьте очень сильные из hdd
4.Мк Attiny13
ebay.com/itm/401090591843 ~85р 2шт
5.Buzzer зуммер (спокойно можно садить напрямую на порт т.к. в max потребление 25Ma, а порт max держит 40Ma п.18.1 Absolute Maximum Ratings официальной документации)
ebay.com/itm/181846951023 ~82р 10шт
6.Коннекторы
ebay.com/itm/311725236142 ~95р 10шт
по желанию
Сокет dip 8
ebay.com/itm/291866161878 ~43р 10шт
вариант 2
все из варианта 1, за исключением п4 — его меняем на
Мк Attiny85
ebay.com/itm/201250561025 ~146р 2шт
и добавляем
Часы реального времени Rtc ds3231
ebay.com/itm/302076424680 ~72р
Код
#include <avr/io.h>
#include <util/delay.h>
#include <avr/sleep.h>
#include <avr/wdt.h>
#ifndef cbi
#define cbi(sfr, bit) (_SFR_BYTE(sfr) &= ~_BV(bit))
#endif
#ifndef sbi
#define sbi(sfr, bit) (_SFR_BYTE(sfr) |= _BV(bit))
#endif
#define BUZZER_PIN 0
#define REED_SWITCH1_PIN 1
#define REED_SWITCH2_PIN 2
#define alarm_loop_cnt 21 //--- 7*9sec=63sec
volatile boolean f_wdt = 1;
int loop_CNT = 0;
void Alarm()
{
pinMode (BUZZER_PIN, OUTPUT);
for (int i=0; i < 3; i++){
digitalWrite(BUZZER_PIN, HIGH);
_delay_ms(100);
digitalWrite(BUZZER_PIN, LOW);
_delay_ms(100);
}
// Set any pins used to input to lower power usage.
pinMode(BUZZER_PIN,INPUT);
}
void setup(){
for (byte i = 0; i <= 4; i++)
{
pinMode (i, INPUT);
digitalWrite (i, LOW);
}
setup_watchdog(9);
}
void loop(){
if (f_wdt==1)
{
f_wdt=0;
digitalWrite(REED_SWITCH1_PIN, HIGH);
digitalWrite(REED_SWITCH2_PIN, HIGH);
// _delay_ms(10);
if (digitalRead(REED_SWITCH1_PIN) || digitalRead(REED_SWITCH2_PIN))
loop_CNT++;
else
loop_CNT=0;
digitalWrite(REED_SWITCH1_PIN, LOW);
digitalWrite(REED_SWITCH2_PIN, LOW);
if (loop_CNT>alarm_loop_cnt)
{
Alarm();
system_sleep();
}
}
}
void system_sleep() {
cbi(ADCSRA,ADEN); // switch Analog to Digitalconverter OFF
set_sleep_mode(SLEEP_MODE_PWR_DOWN); // sleep mode
sleep_enable();
sleep_mode();
sleep_disable();
sbi(ADCSRA,ADEN); // switch Analog to Digitalconverter ON
}
// 0=16ms, 1=32ms,2=64ms,3=128ms,4=250ms,5=500ms
// 6=1 sec,7=2 sec, 8=4 sec, 9= 8sec
void setup_watchdog(int ii) {
byte bb;
int ww;
if (ii > 9 ) ii=9;
bb=ii & 7;
if (ii > 7) bb|= (1<<5);
bb|= (1<<WDCE);
ww=bb;
MCUSR &= ~(1<<WDRF);
// start timed sequence
WDTCR |= (1<<WDCE) | (1<<WDE);
// set new watchdog timeout value
WDTCR = bb;
WDTCR |= _BV(WDTIE);
}
// Watchdog Interrupt Service / is executed when watchdog timed out
ISR(WDT_vect) {
f_wdt=1;
}
п.с. собиралось в arduino ide 1.0.6 с attiny13 core (все ссылки есть в статье про
скучную гирлянду)
тинька с заводскими настройками фьюз на 1Мгц
P.S. сходил в свой холодильник, порадовался, что мы с вами в разных квартирах живем.
мне кажется простейший ждущий одновибратор на 555 или даже паре-тройке транзисторов был бы на порядок проще…
Вы бы хоть информацию проверяли прежде чем делать категоричные, голословные заявления.
Берем Алтант из 108 холодильников имеющихся в продаже только
44 имею данную функцию.
Тоже самое и с LG из 145 холодильников имеющихся в продаже указанный функционал имеют только 42 холодильника.
Считаю, что информация яндекса по данному вопросу более достоверна чем Ваши выдумки.
Зуммер остается — надо же чем-то пищать? Батарейка остается — надо же от чего-то питаться? Геркон остается — надо же иметь какой-то датчик?
Итого, одна восьминогая микросхема. Которую вы предлагаете заменить на «пару-тройку транзисторов», с соответствующей для генератора обвязкой — десятком резисторов и парой-тройкой конденсаторов.
Ваш вариант — «на порядок проще»? Точно? :)
-Хочу сигналку на холодильник, где-то в инете видел простую схему задержки на 2 транзисторах…
-Ни слова больше!!! У меня есть классный микроконтроллер на 20миллионах транзисторов! ЦАП, АЦП, кучей памяти, сейчас напишем программу, отладим ее, прошьем в контроллер, запаяем, и всего уже через несколько дней у тебя будет самый умный холодильник! правда будет уметь только пищать… :)
И я не писал что он стал умный
Когда будет в системе умный дом и будет уметь еще что-то глядтшь поумнеет
Корпус неплохой. Можно начинку допилить микросхемой — будет красиво и недорого.
Тут много вариантов. Каждый будет делать как ему нравится.
Я бы сделал на батарейках с фотоэлементом — срабатывает от лампочки, которая загорается при открытии холодильника. Включаем, ставим прибор в холодильник на полку — установка окончена.
И от герконов отказаться. Есть напруга более 30 секунд — пищим. Нет напруги — не пищим.
Бывает и так. Но мне кажется, что сиё можно исправить.
Расход батареи в «спящем» режиме нулевой
Если наклон недостаточен, можно подкрутить, как дополнение — смазать петли двери.
Холодильник вполне бюджетный и куплен давно.
Постараюсь на неделе выложить
Схема подключения по даташиту -пара резисторов
По даташиту бьет недалеко когла регель закрыт у меня остается ~1см легко детектируется tcrt
Подключается в аналговый порт, насколько помню там получается примерно 200-300
У меня самого двойня — прекрасно их понимаю
В мыслях, просто поставить микрик/кнопку без фиксации с нормальнозамкнутым контактом в ответное отверстие под ригель в теле самого откоса и просто размыкать её выдвинутым до конца ригелем. Замок закрыт -ригель выдвинут -кнопка нажата -цепь разомкнута -зуммер молчит))
Ну и перед пищалкой таймер, к примеру на минуту.
невольнонамекнул:две собаки — кобели, 'открывальщик' ещё неравнодушен к мобильникам; и три кошки — девочки.
Все подобрыши, разумеется…
Вот так делать надо
www.instructables.com/id/Upgrade-Your-Refrigerator-Lighting/
От неё тепла меньше.
Электролит понемногу заряжается. Как достиг напряжения пробоя динистора — зуммер пищит и разряжает электролит. Затем цикл повторяется.
какой размер прошивки? иффекты какие-нибудь звуковые можно добавить, «чтоб неповадно было»?
Спрятать в лампочку и запитать через плафон?
А в качестве датчика не магнит, а сенсор освещённости? («свою» лампочку учитываем через XOR что ли? запутался я… — схожу-ка к холодильнику, разумеется, чисто в исследовательских целях:)
edited 00:50
еще куча памяти чтобы звуковые эффекты сделать
все цены есть по ссылкам
я брал большинство компонентов давно и кучей
Но есть проблема с морозилкой, в ней нет лампочки.
(на самом деле, Фридрих Э. что-то другое говорил:)
А 3 пика 1 раз в 2 минуты это нормальная индикация
боюсь это никому не интересно
Active buzzer
Вроде рабочее напряжение 5-12в
а в морозилке света вообще нет ;)
Так это ухудшает ситуацию — неплотно закрытая дверь остаётся незамеченной дольше.
Я думаю что автор сей улучшайзинг не для себя делал.
> А потому и лемма! Потому что в расчет не принимает бабу. Человека в чистом виде лемма принимает, а бабу — не принимает! С появлением бабы нарушается всякая зеркальность. Если б баба не была бабой, лемма не была бы леммой. Лемма всеобща, пока нет бабы. Баба есть — и леммы уже нет… В особенности — если баба плохая, а лемма — хорошая…
П.м. баба не при чем ;)))
Везунчик.
так что лучше на закрытие, так даже по фен-шую рекомендуют.
PS: За руки ++++, уже жду вторую часть, где после 2-ух минут и пропущенного сигнала, холодильник будет отправлять смс на телефон или звонить по вайберу/скайпу)
Интернет вещей, лля!
Надо датчиков кучу вешать чтоб не навредить детям
Посмотрим как придет
Но там на постоянное питание садить надо как и esp8266 т.к. больно прожорливые
Если надумаю переделывать то на есп/rtl и в систему умный дом добавлю
Плюс за оригинал.
Это было в конце 80x…
У меня чтобы моск не высаживало сделано с интервалом раз в 2 минуты только пищит 3 пика. Потом спит 2 мин и по новой
Постоянный писк — вынос мозга
Я еду раз в неделю закупаю на неделю
Складываем в холодильник вместе с дочками и это точно больше 2х минут.
он написал выше
>igor351027 декабря 2016, 14:29
>да писк будет постоянный
это не наш путь
В связи с тем что датчики открытия дверей (геркон + магнит) внешние, то их легко можно заменить на оптопару + «маленькая палочка» на дверке которая будет въезжать в оптопару для разрыва оптосвязи.… Плюсы/минусы можете оценить сами.
Спасибо
у меня был пульт от старой сигналки, там всего 2 кнопки при нажатии на кнопку подавалось питание и подтяжка ну нужный вывод. В итоге если им не пользоваться там вообще ничего не запитано. Брелок успешно стирался, сушился и дальше продолжал работать. Батарейки 12в хватало на 3-4 года
А у вас разве не так, товаришч?)
Сейчас смотрю majordomo, как его поставлю буду туда все подключать
Собственно говоря поэтому и сделал улучшайзинг
А attiny ее младший брат
Когда важен размер берут тиньку либо атмегу в сопе
И вообще, холодильник следует рассматривать как систему охлаждения для Датчика:)
Лучше уж ровно, выдерживая горизонталь, ставить.
Если в холодильнике что-то мешает прикрыть дверь плотно, лайфхак не сработает.
Это не так раздражает моск
Постоянный писк=вынос мозга=хрень такой девайс нам не нужен
Надо добавить уведомление на телефон. О том что дверца не закрыта. О том что мало молока стоит в зоне для молока. О том что за ночь ушло слишком много углеводов. О том что пора бы уже собрать до кучи фитнес браслет из ненужной ардуины.
В 13ю сможете засунуть синхронизацию с rtc по i2c?
Надо на 2 двери и с таймером. И чтоб не постоянно пищал
В общем, бесполезная функция.
И верх отходил и морозилка было дело
Постоянный писк=выносмозга
У меня 3 пика в 2 минуты норм
Где брали наклейку на двери холодильника? веселенькая она
Милые наклейки Холодильник Днем Вкусный Лицо Кухня Холодильник Виниловые Наклейки Искусство Холодильник Наклейки На Стены Home Decor
s.aliexpress.com/nMB3e6bE
мой с мышами
>Почему не запитали и не спрятали в плафон внутри холодильника? Или подсветки тоже там нет? Для чего герконы когда лампочка включается только у открытого холодильника?
выше уже не раз написали
чуток приоткрылось — кнопка(писали что у кого-то холодильники на герконах — у меня на кнопке) у холодильника не срабатывает, свет не включается
зачем мне батарейки морозить в плафоне
у меня был таймер для розетки китайского производства на 1307, за полгода часы убежали на полчаса, фиксить не стал, забил на девайс
тот ds3231 на который я дал ссылку живет на своей батарее минимум 3 года и точность в разы выше, да цена выше и потребление больше
но когда у меня в прошлом году сдохла батарейка на 3231 оказалось что дешевле заказать из китая еще одну rtc чем у нас купить батарейку :(
или с силой магнита поиграть, чтобы один вдвое сильнее был, а сзади слабый неподвижно стоял и выключал когда нет дверцы (не уверен что это сработает)
и нагрузкой можно управлять довольно большой через них
а вообще встречаются и обычные датчики холла, видимо в вентиляторах чуть постарше
ebay.com/itm/201250561025 ~146р всё-таки 2 штуки…
На этой панели индикация температуры в холодильной и морозильной камерах, но это не реальная температура, а установочная. Так вот, если кто не знает, индикатор может показывать текущую температуру, для этого надо одновременно нажать две кнопки указанные стрелками и удерживать где то 3 секунды, и индикатор переключится на реальные показания.
Если нужна температура ещё ниже — задавайте +2гр
Более низкую температуру установить нельзя, т.к. перестанет оттаивать плачущая стенка