Аквасторож
- Войдите на сайт для отправки комментариев
Здравствуйте. Возникли некоторые проблебы... Собираеюсь сделать аквосторож. Общая схема такая.. Есть датчик потока воды, работает он по принципу выключателя, т.е. на герконе ( я думал по по принципу холла работает ). Датчик: турбинка с лопастями. на которой несколько магнитов проходят над герконом. Турбинка останавливается в разных положениях, т.е. может встать когда на сигнальном проводе есть плюс, допустим 5в, и может встать когда на сиг. проводе 0в. Я хочу что б, этот датчик при движении воды в нем, т.е. при чередовании 5в и 0в, ардуина перекрывала моторизированным краном воду. Сам я в програмировании, скажем 0 )) в электроники я понимаю выше среднего ). Естественно тут будут задействованы другие датчики, типа капля воды, обход стиральной машины и.т.д. проблема заключается в том, что я для этого датчика не могу прикрутить какой нибудь код, готовый; или может специальный код нужен. Пробывал использовать CHANGE ни чего не дало.. Нужно чтобы как только пошел небольшой поток воды через турбину( смена импульсов поочередно с 5 на 0), ардуина открывала какой нибуть порт, желательно конечно, чтоб какоето время она игнорировала(задержка на всякий случай скажем секунд на 10), кто может поделиться светлыми мыслями...
http://arduino.ru/Reference/AttachInterrupt
Я пробывал, все равно может быть порт как открыт так и закрыт...
change ведь реагирует на любое изменение. как это не могло заработать
может подтяжку не сделал и реагировать не надо ардуине
Подтяжку делал, и на плюс и на минус, контролировал по встроенному светодиоду 13
диод при остановки турбины мог как гореть так и нет, т.х. хаотичность полная
так прерывание работает только на изменение. что не так не пойму
Смена импульсов может оказаться чрезвычайно редкой, например у Вас металлопласт по шву засопливил , и , тем не менее это десятки литров в сутки на голову соседей. Может образоваться ситуация, при которой утечка уже есть, а водосчетчик еще крутиться не начал. Потому надо ловить избыточную влажность в проблемных местах. Например , если есть минимальная утечка в стояке, холодная труба моментально отпотевает, причем при утечках на +- 3 этажа от моего. Сам раз в сутки трогаю её, в результате несколько раз спасался от затопления соседями вовремя поймав начинающуюся протечку сверху. Таким образом один датчик протечки на трубу, еще один на полв стояке и третий на кухню на пол в район посудомойка-раковина.
а редкие импульсы можно ловить счетчиком типа 155ие5 ( коль скоро Вы разбираетесь в электронике выше среднего). Критическую частоту можно задавать периодическим его сбросом. Вообще самые эффективные решения : программно-аппаратные. Прошло 4 импульса, на втором разряде изменилось состояние , вот его на прерывание.
датчик влажности пока среагирует, будет уже поздно. на пол ложить датчик (капли..) малая вероятность попадания на него воды. а при заполнении пола хотя бы маленьким уровнем воды. тоже уже поздно. А датчик тогого типа может уловить маленькую струйку воды, и отсечь краном, а если друба где то сопливит, тут уж кроме себя самого ни одна электроника не спасет
ну да. мой счетчик воды на тонкую струйку не реагирует
так вот если есть изменения, светодиод маргает, и вроде все чудно, т.е. считает импульсы. Как только остановилась турбина, очень большая вероятность примерно 10-20 % что светодиод остается в положении "" запереть кран."" горит светодиод., почему я не знаю, но факт. А мне нужно что б при стоянки турбины. порт был заперт.
Просто у вас счетчик с большой погрешностью... больше объяснений нет.
Возможно функция прерывания менят состояние 13 пина на on off при срабатывании с каждом разом функции прерывания. Тогда как ее заточить на то что, б прерыванием она только включала пин 13, а при отсутствии прерываний выключала 13пин...??
я с тобой полностью согласен. что ни сделай все будет правильно)))
Ребятки, нужен скетч.. Кратко: нажал на одну кнопку 3 раза, загорелся светодиод, а выключить, скажем другой кнопкой и с первого раза... Кто может доброго рассказать
почитай, там найдёшь всё что тебе нужно
http://arduino.ru/forum/programmirovanie/rabota-s-knopkami-v-pomoshch-no...
я чет туплю, может объясните мне, как Вы по протоку воды определите ее протечку?
Точнее, как отличите протечку гибкого подвода унитаза от наполнения оного после слива ;)
если приметивно: то устанавливаешь два огаленных провода на место от куда вода наполняет бачек, и к ардуино. Программа делает обход основного датчика. и т.д. можно поставить датчик движения, вариантов куча...)
А вообще я думал сдесь на форуме програмисты сидят, а сдесь в основном такие же как я, новички, которые тупо дают ссылки по которым я как то и без этого форума пробежал, сори если кого обидел. А воз и ныне там....
А вообще я думал сдесь на форуме програмисты сидят, а сдесь в основном такие же как я, новички, которые тупо дают ссылки по которым я как то и без этого форума пробежал, сори если кого обидел. А воз и ныне там....
От чисто програмисты здесь в ветке "Ищу исполнителя" - там дать ТЗ правильное и нашкодят Вам хоть шаттл мериканский. А здесь предполагается самому поработать чуток (генерацию идей за работу не считаем). Дать схему, код, указать проблему. Если у кого то будет время и желание, помогут.
Хотя какой бытовой счетчик Вам посчитает расход 50мл в минуту не представляю. А литр вы невооруженным ухом услышите.
А вообще я думал сдесь на форуме програмисты сидят, а сдесь в основном такие же как я, новички, которые тупо дают ссылки по которым я как то и без этого форума пробежал, сори если кого обидел. А воз и ныне там....
Так Вы толком не сказали как Вы хотите сделать. Фраза типа "вариантов куча" как бы намекает, что это мы длжны все за Вас думать? Нифига! Вот пытаемся уточнить, как же вы отделите протечку воды от ее расхода по протоку воды, так Вы и это не можете уточнить.
А вообще я думал сдесь на форуме програмисты сидят, а сдесь в основном такие же как я, новички, которые тупо дают ссылки по которым я как то и без этого форума пробежал, сори если кого обидел. А воз и ныне там....
Вам jeka_tm дал конкретный совет.
Ваша задача считать импульсы в единицу времени. Что смущает?
Давайте за руль посадим человека который машину видел только 3 раза, и скажем ему, нука дружок, заедь ммилый мой задом в гараж..... Так вот, мне в гараж заехать как думаю большинству из вас не составит труда, и даже 5 раз, а вот ему... Также немного похоже для меня, я бы рад из той ссылки нужное выбить, но азов слишком мало еще..., а опытному програмисту исходник кода за 30 сек. можно накидать, или тут все Водители..?! ;)
Про "Определить протечку"- моя проблема, я уже говорил? что вариантов много, это не принципиально.
по ссылке все норм. вот пояснения
для начала код примера
этой строкой настраивается прерывание 0 (пин 2). тип CHANGE, тоесть на любое изменение. но только изменение и неважно что сейчас
по прерыванию вызывается фукнция blink
в основной программе просто крутится установить на пине pin то что находится в STATE
и менятся нечему по сути если state будет один и тот же. но он меняется в функции прерывания
тут все просто как только сработало перывание вызвалась эта функция (blink). все остановилось в основой программе и выполняется эта функция (таймера конечно работают, шим продолжает шимить)
а внутри ее просто инвертируется state. был 1 стал 0 и наоборот
это все. все достаточно просто
Спасибо, вечером повникаю..Работа...
Это я понял, и понял что при возникновении импульсов идет смена на HIGH или LOW, вопрос в другом, мне не нужно чтоб было поочередное HIGH или LOW . Мне нужно что бы, пока был импульс, на выходе было всегда HIGH, а при отсутствии-LOW Другими словами: есть кнопка, пока она зажата, или отжата. порт допустим 13 не горит. как только кнопкой начинаешь "долбить :) " порт 13 горит. Как то так...
Определяете какая частота импульсов должна вызывать срабатывание. Вместо state их подсчитываете и проверяете временной промежуток. Если превысило - включаем и обнуляем счетчик. Если нет, обнуляем счетчик.
Это я понял, и понял что при возникновении импульсов идет смена на HIGH или LOW, вопрос в другом, мне не нужно чтоб было поочередное HIGH или LOW . Мне нужно что бы, пока был импульс, на выходе было всегда HIGH, а при отсутствии-LOW Другими словами: есть кнопка, пока она зажата, или отжата. порт допустим 13 не горит. как только кнопкой начинаешь "долбить :) " порт 13 горит. Как то так...
Или я вас не понимаю, или вы меня не понимаете. Не нужно исполнительное устройство вешать на прерывание. На него повесьте только счетчик. А на основании полученных данных (количество импульсов за единицу времени) - делайте вывод, есть протечка или нет, и управляйте исполнительным устройством. Нужно только предусмотреть функцию снятия/постановки на охрану.
Ну на словах понятно, логика есть. Ну как выше сказанно, я пока ноль в програмировании, как бы кусок этого скетча, или подобное что то где посмотреть..
Тетенька, дайте попить, а то так есть хочется, что переночевать негде...
Ну ладно хоть с юмором все ок, и на этом спасибо..
"....опытному програмисту исходник кода за 30 сек. можно накидать, или тут все Водители..?! ;)..."
тут два водителя - я и ВЫ :)
остальные решают задачи поважнее - в гараж боком при отсутствии двигателя и колёс.....
помоему использовать millis() проще.
грабли ! - есть вероятность, что за 30 сек произойдёт 256 сработок прерывания и N по прежнему будет = 0
N надо объявить постарше разрядностью
помоему использовать millis() проще.
мне ? или топикСтартеру ? - моя не знает его уровень, мой - миллиссу давно победил
обход водоразбора легального и протечки - сложный вопрос....
проще два режима - ДОМАнИКОГОнЕТ / Есть
- моя не знает его уровень
Его уровень - сделайте мне, если умеете, не делаете - значит не умеете
Я тоже так иногда думаю... НО. стиралку можно отследить по набору воды, кран руки мыть по датчику движ, ультрозвуковому, может еще что придумать можно. унитаз по движению, по вкл света в "кабинете" или по уровню воды в бачке, посудомойку думаю можно тоже по принципу стиралки отследить
- моя не знает его уровень
Его уровень - сделайте мне, если умеете, не делаете - значит не умеете
Воблу любишь ? Нет ! Пардон - ты импатент !
этот арекдот - ни к кому лично не относится !!!!!!!!!!!!!!! :)
Я тоже так иногда думаю... НО. стиралку можно отследить по набору воды, кран руки мыть по датчику движ, ультрозвуковому, может еще что придумать можно. унитаз по движению, по вкл света в "кабинете" или по уровню воды в бачке, посудомойку думаю можно тоже по принципу стиралки отследить
можно... но протечка может организовацца ПОСЛЕ датчика обходного контроля :)
контроль за контролем ?
Вам код помог ? или в нём что-то не ясно ?
"стиралку можно отследить по набору воды" - у неё может разгерметизировацца дверца :(
Ребят, отвсех случаев не застрохуешься, но исключить максимум можно. А зоводские датчики лежащие в аглах!! если на все углы денег хватит.
--""можно... но протечка может организовацца ПОСЛЕ датчика обходного контроля :)" датчик машинки стир. т.е. снятие с охраны на момент набора, и обратная постановка, так же с любым датчиком. Да в момент набора тоже может что то возникнуть, но... верхняя строчка :) Кодом щас займусь, трапезничал..
а что от них страховаться то? плеснул ведро воды на пол, посмотрел, куда стекает там и ставь датчик. А так вы никак не определите льется ли у вас вода из крана в ванну или ребенок кран подвинул и она четко между умывальником и ванной поливает.
стиралка может потечь и не в режиме стирки.... дерзайте, вариантов защиты > 1 000 000 :)
тогда постановка/снитие c охраны; при присутствии дома...
"....А зоводские датчики лежащие в аглах!! если на все углы денег хватит. ...."
плавно переходите к теме радиоДатчиков ? или всю квартиру будете штробить ? :)
"....А зоводские датчики лежащие в аглах!! если на все углы денег хватит. ...."
плавно переходите к теме радиоДатчиков ? или всю квартиру будете штробить ? :)
#36 :)
По коду. как я понял на 2 пин идет датчик, 7ой исполнительный мех-м. так?, только что т я не вижу в коде кода 7го пина на исполнение... или я что то не так мутю? короч что т не получается ни чего, и время проверки ставил 500, в датчик дую тихонько.
По коду. как я понял на 2 пин идет датчик, 7ой исполнительный мех-м. так?, только что т я не вижу в коде кода 7го пина на исполнение... или я что то не так мутю? короч что т не получается ни чего, и время проверки ставил 500, в датчик дую тихонько.
Ну очепятался человек, pincontr на pinrelay внизу никак не поменять?
Вру, не только внизу, а где с краном работаем.
Если б у меня было за плечами хотяб 5 программ, с которыми сам разбирался... яб заметил :) а так, только вижу что, что то есть не понятное а где не пойму.. Спасибки...