Простая сложная задачка
- Войдите на сайт для отправки комментариев
Здравствуйте!Появилась необходимость в простом устройстве, оно представляет из себя поворотный механизм. Все просто, два концевика, устройство поворачивается то в одну сторону то в другую, нажимая на концевик. Казалось бы очередная банальшщина но...затаилась у меня мысль, а что если вдруг концевик не сработает, ну или выйдет из строя? Нельзя ли сделать отслеживание операции по времени? Время поворота примерно известно и всегда одинаково. Как сделать так, чтоб программа следила за состоянием датчика ( концевика) и если он не сработает допустим через 10 сек то отключала бы устройство сигнализируя об ошибке? Наверно нужно как то примастить millis(), но я ее не использовал ни разу. Гуглил я гуглил и ничего не нагуглил. Может уважаемые знатоки программисты подскажут как реализовать или где почитать?
а что если вдруг концевик не сработает, ну или выйдет из строя?
сработает - промышленные концевики разрабатываются с учётом специфики их применения в ответсвенных узлах оборудования, когда от их надёжности зависит жизнь человека и сохранность дорогостоящего оборудования.
если есть желание дублировать безопасность, ставь датчик крайнего положения и, если по каким либо причинам устройство пересечёт этот датчик и не остановится - аварийный концевик, напрямую отрубающий питание от двигателя привода оборудования.
поисковые запросы в гугле [датчик положения] [концевик]
концевики:
Спасибо большое, но по мимо вероятности того, что не сработает датчик, существует вероятность, что вся конструкция может каким либо образом видоизмениться в процессе эксплуатации ( разболтается, раскрутиться и т.п), ну и интересно все же понять, как реализовать данную задачу? Еще вопрос, как можно выполнять две процедуры параллельно на ардуино? или такой возможности нет?
Спасибо большое, но по мимо вероятности того, что не сработает датчик, существует вероятность, что вся конструкция может каким либо образом видоизмениться в процессе эксплуатации ( разболтается, раскрутиться и т.п), ну и интересно все же понять, как реализовать данную задачу? Еще вопрос, как можно выполнять две процедуры параллельно на ардуино? или такой возможности нет?
регулярный техосмотр ещё никто не отменял.
я сказал выше, что делать - датчик положения, аварийный концевик.
*считать время поворота... ну, считай - кто же запрещает? обнуляй флаг каждые 10 секунд, если флаг не обнулится - включай тревогу.
код за тебя никто писать не будет.
обнуляй флаг каждые 10 секунд,
мне не нужен весь код, мне бы понять как отсчитывать 10 секунд
http://arduino.ru/tutorials/BlinkWithoutDelay
а millis() через 50 дней не переполняется ? что будет через это время?
а millis() через 50 дней не переполняется ? что будет через это время?
переполняется.
чему равно millis() в момент переполнения?
http://arduino.ru/Reference/Millis
что нужно делать в момент переполнения millis()?
спасибо) теперь до меня дошло) жму руку