|
|
Опции темы | Поиск в этой теме | Опции просмотра |
10.03.2013, 09:36 | #21 |
Administrator
Регистрация: 12.04.2010
Адрес: Москва
Сообщений: 9,618
Вес репутации: 9823 |
Если устраивает скорость реакции короткого нажатия на выключатель, то можно оставить 0,1мкф
|
10.03.2013, 17:47 | #22 |
Senior Member
Регистрация: 20.01.2013
Адрес: Уфа
Сообщений: 444
Вес репутации: 799 |
Экспериментирую с кнопкой и реле, нахожу всякие интересные ошибочки свойственные новичку. Например долго не мог понять почему сразу после запуска программа работает, а потом глючит. Понадобилось некоторое время чтоб понять - чтоб понять -какой-то гад переполняется, а так как в тестовых программах переменных немного, то вычислил что переменную сохраняющую значение функции millis() при нажатии на кнопку объявил как int (ну просто потому что о других видах я читал, но раньше не использовал), ну и она через 30 секунд переполнялась и не выполняла своих функций, исправил на Long. Так сказать другим новичкам пример-наука.
От самостоятельного устранения дребезга отказался, воспользовался библиотекой <Bounce.h>, достаточно пока удобно и подходит для моих целей |
10.03.2013, 19:24 | #23 |
Senior Member
Регистрация: 20.01.2013
Адрес: Уфа
Сообщений: 444
Вес репутации: 799 |
Написал вот программку для управления Реле, решил отказаться от таймеров и использовать многозадачность, просто для изучения, хотя и вполне сюда подошли, устранил дребезг (кнопка на стенде за 15 рублей -дребезг страшный) при помощи спец библиотеки Bounce
Умеет : Одно нажатие -включение-выключение реле Два нажатия - запуск выключение по таймеру, по умолчанию 10 секунд Три нажатия - изменение времени таймера - каждое следующее нажатия после трех первых - это 10 секунд работы таймера, максимум определяется типом данной переменной int и составляет 3,5 суток или 50 часов. Правда для этого кнопку придется нажать 31 тысячу раз Проверено на тестовом железе, осталос прикрутить радиомодуль RF2400(жду пока) и можно считать данный блок для розеток готовым. Кстати, а если писать программу для nRF24L01 (они у меня уже есть), потом под RF2400 её сильно придется менять или у них есть общие библиотеки? PHP код:
|
10.03.2013, 20:18 | #24 | |
Administrator
Регистрация: 12.04.2010
Адрес: Москва
Сообщений: 9,618
Вес репутации: 9823 |
Цитата:
|
|
10.04.2013, 09:04 | #25 |
Senior Member
Регистрация: 20.01.2013
Адрес: Уфа
Сообщений: 444
Вес репутации: 799 |
Ну так сказать продолжение, чем был занят месяц.
Месяц прошел в учебе - научился создавать сайты - основы HTML, PHP. В перспективе изучение Java. Эксперименты показали что без него не получится создать по настоящему интерактивную систему управления. Зарегил доменное имя и хостинг можно посмотреть что получилось и сайт на котором экспериментирую. Bulatovor.ru/ Научился связывать WEB с базой MySQL - данные о состоянии устройств решил хранить в MySQL и получать информацию отттуда. Дальше начал изучать Lazarus и его язык Паскаль, на Lazaruse остановился потому-что это близкий родственник Delphi ( а с ним когда-то я немного экспериментировал), но умеет компилировать программы как в винду так и в Линукс, а сервер все-таки предполагается строить на линуксе, как более устойчивой системе. Написал программку для обмена данными между MySQL и ком портом Умеет связываться с базами данных, автоматически заполняет comboBox -сы с перечнем доступных баз, таблиц в них, было и заполнение названий столбцов, но потом убрал за ненадобностью, выявляет доступные Com порты и связывается с ними, по таймеру(например раз в 3 сек) проверяет наличие изменений в БД, при наличии изменений в базе данных передает изменения в ком(в дальнейшем к кому будет прикручен радиомодуль для общения с удаленными ардуинками), в режиме реального времени(настолько насколько это понятие применимо к винде) проверяет состояние порта, при появлении там данных автоматически считывает их. Программа носит тестовый характер, в окончательном варианте я её вижу как демон для линукса, без всяких выборов значений(значения будут задаваться перед компиляцией) -просто отслеживание MySQL и при их изменении передача в порт или GPIO и соответственно обратное действие. Дальше зашел в тупик. Т.е. сейчас система такая - Страница передает нажатия кнопки в транзитную таблицу базы, программа отслеживает изменения в транзитной таблице и при наличии таких изменений предает их в ком, от ком передает в ардуину и получает ответ о выполнении команды, далее обратно com-программа. Программа вносит изменения в таблицу. После чего страница управления обновляется и показывает новое состояние устройства. Вся эта процедура занимает 5-6 секунд, что очень долго. Можно и быстрее, но тогда страница будет бесконечно обновляться, что утомляет, да и хостеры будут ругаться. Данные со страницы все же должны передавться непосредственно в порт, а co внешнего хостинга, не буду говорить что невыполнимо, но уж очень сложно. Т.е. настала пора создания собственного сервера для этой цели -внешний хостинг свою функцию выполнил и изжил себя. Встал вопрос о железе сервера, с одной стороны хочется малопотребляющее и не дорогое, долго думал над основным роутером этого форума, но все-таки уж очень он слабенький - видеонаблюдение он не потянет. Учитывая мои небольшие навыки в сфере программирования, ограничения по производительности могут стать для меня на данном этапе непреодолимыми. Линейка выбора выглядит примерно так: Роутеры на OpenWRT, тонкие клиенты, нетбуки, обычные PC, специализированные серверы. На сегодняшний день считаю оптимальными по цена-производительность для текущих задач и с перспективой тонкие клиенты, что-то типа такого http://www.ebay.com/itm/360542415969...84.m1423.l2649 или такого http://www.aliexpress.com/item/QOTOM...518610590.html Вообщем проект движется потихоньку, закажу себе сервер, а пока продолжу учится связывать com по радиоканалу с ардуинками и прикручивать это к диммеру и релейному модулю Последний раз редактировалось Bulatovor; 10.04.2013 в 09:12. |
18.04.2013, 12:26 | #26 |
Senior Member
Регистрация: 20.01.2013
Адрес: Уфа
Сообщений: 444
Вес репутации: 799 |
Заказал в качестве центрального сервера вот такую штуку http://www.ebay.com/itm/321106536755...84.m1439.l2649
путем двухдневных переговоров удалось уболтать продавца на скидку в 10 евро, так что получилось очень не дорого, отправка DHL так что скоро жду с нетерпением. По нему возник такой вопрос - есть LPT порт, штука хороша и интересная. Только вот я не нашел ни одного примера его использования с технологиями WEB. Кто подскажет как к нему обращаться из PHP или что-то аналогичное? |
18.04.2013, 13:50 | #27 |
Administrator
Регистрация: 12.04.2010
Адрес: Москва
Сообщений: 9,618
Вес репутации: 9823 |
PHP не может обращаться к портам.
В линуксе доступ к устройствам реализован в виде файлов. Находишь нужное устройство в папке /dev и обращайся к нему как файлу. Пример есть в теме "Пример простой HTML кнопки" Таким же способом можно читать видеопоток с камери, или аудиопоток со звуковой карты |
24.02.2014, 16:22 | #28 |
Junior Member
Регистрация: 24.12.2013
Сообщений: 14
Вес репутации: 0 |
Re: Моя (для других очередная) версия умного дома на Adruino
Подскажите как подправить код master arduino+nrf24 для управления через tl-w703n код взял от сюда http://homes-smart.ru/index.php/obor...l01-i-nrf24le1
PHP код:
|
07.07.2015, 09:54 | #29 |
Senior Member
Регистрация: 20.01.2013
Адрес: Уфа
Сообщений: 444
Вес репутации: 799 |
Re: Моя (для других очередная) версия умного дома на Adruino
Чтоб никому не показалось, что свой проект за забросил, сообщаю что перехожу от теории к практике.
Начало реализации проекта умный дом в отдельно-взятой квартире Последний раз редактировалось Bulatovor; 07.07.2015 в 09:57. |
07.07.2015, 11:02 | #30 |
Administrator
Регистрация: 12.04.2010
Адрес: Москва
Сообщений: 9,618
Вес репутации: 9823 |
Re: Моя (для других очередная) версия умного дома на Adruino
Знакомая картинка , проходил через такое.
|
Здесь присутствуют: 1 (пользователей: 0 , гостей: 1) | |
|
|