| Форум РадиоКот https://radiokot.ru/forum/ |
|
| Помогите с программой для ардуино нано https://radiokot.ru/forum/viewtopic.php?f=2&t=154026 |
Страница 1 из 1 |
| Автор: | !nekromant! [ Сб апр 07, 2018 11:59:05 ] | |||
| Заголовок сообщения: | Помогите с программой для ардуино нано | |||
Срочно надо собрать устройство для охраны. Как написать цикл для проверки датчиков вроде разобрался, а вот как решить вопрос с кнопкой сброса не пойму. По идее надо 2 цикла делать. Первый проверяет датчик сравнивает значение если условие выполняется включает реле и переходит в цикл проверки кнопки. Если условие не выполняется то цикл выполняется дальше Спойлер//программаint vibroPin = 2; //Вход вибродатчика int smkPin = 3; //Вход шлейфа на обрыв int swPin = 4 //Вход кнопка сброса тревоги int relePin = 13; //Выход управления реле void setup() { pinMode(vibroPin, INPUT); pinMode(smkPin, INPUT); pinMode(swPin, INPUT); pinMode(relePin, OUTPUT); } void loop() { int val = digitalRead(smkPin); // Считваем значение с датчика SMK if(val==0){ digitalWrite(relePin, HIGH); //Датчик сработал включаем реле Здесь надо как то дождаться нажатия кнопки отключить реле и вернуться к опросу датчиков int val = digitalRead(PIN_SENSOR); // Считваем значение с датчика vibro if(val==1){ digitalWrite(relePin, HIGH); //Датчик сработал включаем реле Здесь надо как то дождаться нажатия кнопки отключить реле и вернуться к опросу датчиков }
|
||||
| Автор: | vem566 [ Сб апр 07, 2018 14:01:46 ] |
| Заголовок сообщения: | Re: Помогите с программой для ардуино нано |
То есть по логике работы: пока не нажата кнопка отключения реле программа ни хрена делать не будет? Плевать ей на остальные датчики? Странная охранка. Ложное срабатывание и привет всей охране. |
|
| Автор: | !nekromant! [ Сб апр 07, 2018 14:13:56 ] |
| Заголовок сообщения: | Re: Помогите с программой для ардуино нано |
Все очень логично. не важно стукнули или оторвали охраняемое устройство включается сирена и орет до тех пор пока не придут проверить и отключить |
|
| Автор: | Ariadna-on-Line [ Сб апр 07, 2018 21:59:29 ] |
| Заголовок сообщения: | Re: Помогите с программой для ардуино нано |
"Закон" из "законов Мэрфи". - Если какая-нибудь беда (херня, фигня) МОЖЕТ случиться, то она СЛУЧИТСЯ. Писать алгоритм, который не проверит несколько раз входящее событие, прежде чем выдать реакцию на него - легкомысленно, а часто и накладно. Не пробовали - пожарников несколько раз вызвать не по делу, или скорую.. В реале все бывает - космическая частица пролетит, электричество "мигнет", таракан в датчик заберется и тд. Главное - разумно интервалы проверки и число попыток (бог любит троицу...) взять. |
|
| Автор: | pyzhman [ Вс апр 08, 2018 03:53:42 ] |
| Заголовок сообщения: | Re: Помогите с программой для ардуино нано |
Срочно и на ардуино это курсовой? |
|
| Автор: | !nekromant! [ Вс апр 08, 2018 07:01:16 ] |
| Заголовок сообщения: | Re: Помогите с программой для ардуино нано |
Не курсовой. Надо защитить железяку от коммунистов. |
|
| Автор: | a797945 [ Вс апр 08, 2018 09:35:43 ] |
| Заголовок сообщения: | Re: Помогите с программой для ардуино нано |
помимо темы с ложными срабатываниями. Попробуйте разложить вашу задачу на процессы и состояния (не только для МК, а полностью, т.е. включая действия человека), наложите одно на другое и может станет понятней какие сущности нужны а какие лишние. к примеру, эта кнопка нужна что бы вернуться на состояние "наблюдение" для этого канала, но канал то у Вас и так один - поэтому можете просто после "принятия решения" и подачи "тревога" загонять МК в ступор; и возвращаться на "наблюдение" штатной reset. А индикация "взят под наблюдение" не помешает. Посмотрите чужой опыт использования sw420, к примеру : "C сенсором вибраций SW-420 не всё так однозначно, как предыдущими сенсорами, так как он показывает не наличие самой вибрации... При этом при отсутствии вибрации он с большой долей вероятности будет находиться в состоянии LOW, но так же может и спокойно встать в состояние HIGH." там же по поводу срочности - можете найти уже готовый скетч, подрихтуете зальете в Вашу нано. Еще фактор, для контроля наличия датчика - с него "0" или "1", т.е. подвесив вход МК на делитель и включив ацп можно видеть оторван датчик или на линии. (просто как вариант). да еще, вероятно и собаку надо прикручивать (watchdog). А если тема с ложным срабатыванием, по каким-то причинам не критична (никого вызывать не нужно, можно загрубить чуйку, ...), от МК можно отказаться: датчик - одновибратор - реле с 2мя группами конт.(для самоудержания). |
|
| Автор: | !nekromant! [ Вс апр 08, 2018 22:28:24 ] |
| Заголовок сообщения: | Re: Помогите с программой для ардуино нано |
Вопрос решен. Добавлено after 9 hours 34 minutes 27 seconds: Если кому интересно http://arduino.ru/forum/programmirovani ... t-sketch-0 |
|
| Страница 1 из 1 | Часовой пояс: UTC + 3 часа |
| Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group http://www.phpbb.com/ |
|


