Спящие режимы

В данный форуме Вы можете создавать темы посвящённые расширению функционала программы или сайта. После рассмотрения Ваше предложение будет перенесено в соответствующее место
Garrison
Рядовой
Сообщения: 19
Зарегистрирован: 09 дек 2015, 21:54
Откуда: Ярославль
Имя: Garrison

Спящие режимы

Сообщение Garrison »

Не для кого наверное не секрет что ардуинки умеют "спать". Причем режимов сна у них аж  несколько разных. Пока что приходится  кусок кода, чтобы девайс в сон загнать ручками в программу вписывать, а это очень неудобно, если учесть  какую аброкадабру представляет из себя скомпилированный проект созданный в FLProg. Может добавите блоки сна  в программу? Здорово бы было если бы были блоки всех типов режимов сна в проекте.
Слимпер
Майор
Сообщения: 1009
Зарегистрирован: 06 сен 2015, 16:56
Откуда: Новосибирск

Спящие режимы

Сообщение Слимпер »

Garrison, а как ее потом будете?
И можно кусок кода или ссылку откуда брали.
Аватара пользователя
Олег
Полковник
Сообщения: 1532
Зарегистрирован: 13 окт 2015, 16:47
Контактная информация:

Спящие режимы

Сообщение Олег »

Вот тут есть.
Слимпер
Майор
Сообщения: 1009
Зарегистрирован: 06 сен 2015, 16:56
Откуда: Новосибирск

Спящие режимы

Сообщение Слимпер »

Поискал сам вот еще Снотворное для Arduino и AVR - Power management или как правильно спать и спящий режим

Ну сделать блок для усыпления не сложно, а вот по выводу из сна надо думать.
Garrison
Рядовой
Сообщения: 19
Зарегистрирован: 09 дек 2015, 21:54
Откуда: Ярославль
Имя: Garrison

Спящие режимы

Сообщение Garrison »

Слимпер писал(а):а вот по выводу из сна надо думать.
Добавлено (03.10.2016, 19:11)
---------------------------------------------
Ну как оно из сна выводится в инете примеров полно, как говорится "все уже придумано до нас"
Последний раз редактировалось Garrison 03 окт 2016, 19:18, всего редактировалось 1 раз.
Слимпер
Майор
Сообщения: 1009
Зарегистрирован: 06 сен 2015, 16:56
Откуда: Новосибирск

Спящие режимы

Сообщение Слимпер »

Garrison, Так надо в один блок это делать иначе будет большие проблемы.
Т.е. Перед тем как усыпить ардуину надо, обязательно настроить как она проснется.

А вообще для чего ее усыплять? Для экономии энергии батареи?
Тогда перед отключением самого камня, надо выключить все выхода.
Garrison
Рядовой
Сообщения: 19
Зарегистрирован: 09 дек 2015, 21:54
Откуда: Ярославль
Имя: Garrison

Спящие режимы

Сообщение Garrison »

Зачем? Ну вот например я сделал доп. систему безопасности в авто и 99.9% времени Андуина там сидит и ждёт когда на один из входов аларм придёт. Чего ей аккумулятор то кушать зря? Соответственно я ввёл её в режим когда цп не работает а просыпается она по приходу ноля на вход. Да и мало ли какие ещё потребности могут быть? Полезная функция!
Слимпер
Майор
Сообщения: 1009
Зарегистрирован: 06 сен 2015, 16:56
Откуда: Новосибирск

Спящие режимы

Сообщение Слимпер »

Garrison, А приведите тот код, что бы вручную вставляете?
Garrison
Рядовой
Сообщения: 19
Зарегистрирован: 09 дек 2015, 21:54
Откуда: Ярославль
Имя: Garrison

Спящие режимы

Сообщение Garrison »

Слимпер писал(а):Garrison, А приведите тот код, что бы вручную вставляете?
Так с ходу уже и не ответишь, поделка давно уже в недра машины закопана, а скетч кончился  вместе с безвременной кончиной SSD.
Вообще если кратко я пользовался командами и примерами отсюда:  тута
Использовал для этого библиотеку VEduino (интересная штука умеет не только сон но и периферию отключать)

DEV_SLEEP.setMode(SleepControl::PWR_DOWN);         // Выбор режима сна
DEV_SLEEP.enableSleep(); // Разрешить переход в спящий режим
sleep();             // Переход в режим сна (тут естественно сложнее было, переход по условию постановки на охрану автомобиля происходил)

В этом  режиме работают прерывания INTO  и ардуинка просыпалась по изменению на пине №2.   Более конкретно уже не вспомню.
Последний раз редактировалось Garrison 04 окт 2016, 09:32, всего редактировалось 1 раз.
Слимпер
Майор
Сообщения: 1009
Зарегистрирован: 06 сен 2015, 16:56
Откуда: Новосибирск

Спящие режимы

Сообщение Слимпер »

Garrison писал(а):Вообще если кратко я пользовался командами и примерами отсюда:  тута
Интересный сайтик, 
Правда и обсуждаемой там библиотеки нет нормального описания, а так потыкался по файлам, возможности просто огромны.
Да и сделана она в основном не для ардуины, потому как многое уже есть во встроенных в Arduino  библиотеках.

Ну вот сейчас подумал сделать блок для отправки ардуины в сон, по сигналу на входе, не проблема.

Сделать отдельный блок для пробуждения по внешним прерываниям INT0 и INT1 тоже не проблема.
В режиме сна IDLE он будет просыпаться и по сигналу с портов USART SPI I2C.
А вот всякие там пробуждения по таймеру или аналоговым входам, это уже универсальное что то сделать очень сложно.
Слимпер
Майор
Сообщения: 1009
Зарегистрирован: 06 сен 2015, 16:56
Откуда: Новосибирск

Спящие режимы

Сообщение Слимпер »

Попробовал сделать блок для перевода контроллера в режим сна.

Получилось два блока один для перевода в режим сна.
Другой для пробуждения по входам с прерываниями.

Для проверки, сделал тестовый проект. Вроде работает. Но в режиме IDLE не хочет засыпать, похоже дело в том что на UNO к UART подключен второй контроллер.

Прилагаю блоки и тестовый проект, если кто будет пробовать  отпишитесь, это только проба. 

На сообщение о том что не найдена библиотека внимание не обращать, FLProg не понимает:
#include <avr/sleep.h>, а так это внутренняя библиотека Arduino IDE
У вас нет необходимых прав для просмотра вложений в этом сообщении.
da
Рядовой
Сообщения: 2
Зарегистрирован: 11 сен 2015, 14:01

Спящие режимы

Сообщение da »

Спасибо, обязательно попробую. Это, очень нужная функция во многих случаях.
zikkgaz24
Сержант
Сообщения: 132
Зарегистрирован: 26 авг 2016, 22:53
Откуда: Красноярск

Спящие режимы

Сообщение zikkgaz24 »

Привет слимпер попробовал блоки сна и чет не работают перебрал все варианты и еще обычный генератор тупит с этими блоками вопрос что не так сделал
Слимпер
Майор
Сообщения: 1009
Зарегистрирован: 06 сен 2015, 16:56
Откуда: Новосибирск

Спящие режимы

Сообщение Слимпер »

zikkgaz24 писал(а):Привет слимпер попробовал блоки сна и чет не работают перебрал все варианты и еще обычный генератор тупит с этими блоками вопрос что не так сделал
У меня работало, а что так или не так, сказать не могу. Как пишуть на другом форумах  телепатов здесь нет А если без шуток, проложи проект.
zikkgaz24
Сержант
Сообщения: 132
Зарегистрирован: 26 авг 2016, 22:53
Откуда: Красноярск

Спящие режимы

Сообщение zikkgaz24 »

вот проект
13 нога с диодом использована как индикация и в итоге даже диод моргает 3 раза и потом горит постоянно а в сон не идет вот проблема что не так погляди
У вас нет необходимых прав для просмотра вложений в этом сообщении.
Слимпер
Майор
Сообщения: 1009
Зарегистрирован: 06 сен 2015, 16:56
Откуда: Новосибирск

Спящие режимы

Сообщение Слимпер »

zikkgaz24 писал(а):13 нога с диодом использована как индикация и в итоге даже диод моргает 3 раза и потом горит постоянно а в сон не идет вот проблема что не так погляди
Ну у самого сначала не заработало, но после небольшой доработки стало работать. 
[spoiler=Спойлер][/spoiler]
Похоже какие то эффекты в процессе пробуждения, я эти тонкости не знаю  почти.
У вас нет необходимых прав для просмотра вложений в этом сообщении.
zikkgaz24
Сержант
Сообщения: 132
Зарегистрирован: 26 авг 2016, 22:53
Откуда: Красноярск

Спящие режимы

Сообщение zikkgaz24 »

понял дома проверю
vist1973
Рядовой
Сообщения: 32
Зарегистрирован: 02 ноя 2016, 01:36

Спящие режимы

Сообщение vist1973 »

Проверил в FBD работает нормально.А для LAD использовать не смог так как не знаю чем заменить RTrig,а режим сна очень нужен .
Аватара пользователя
Oleg
Сержант
Сообщения: 204
Зарегистрирован: 17 сен 2015, 13:04
Откуда: Беларусь
Имя: Олег
Благодарил (а): 38 раз

Спящие режимы

Сообщение Oleg »

Проверил оно как бы работает,но ток потребления который я мог добиться выбором всех имеющихся  режимов сна составляет 9,8мА.Это много. По даташиту должно быть в мкА. Выпаял даже светодиод "On"на Arduino/
Слимпер
Майор
Сообщения: 1009
Зарегистрирован: 06 сен 2015, 16:56
Откуда: Новосибирск

Спящие режимы

Сообщение Слимпер »

Oleg писал(а):Проверил оно как бы работает,но ток потребления который я мог добиться выбором всех имеющихся  режимов сна составляет 9,8мА.Это много. По даташиту должно быть в мкА. Выпаял даже светодиод "On"на Arduino/
А что у вас за плата?
Я сам пробовал и тоже убедился, что реально снижается потребление только на голом камне.
Например тестил Attiny85, без внешнего кварца, в рабочем состояние 15мА, в режиме сна 0,4мА.

А на платах ардуино, много всего лишнего, второй мк (конвертер TTL US , светодиоды, стабилизаторы питания (5В 3.3В).
Ответить

Вернуться в «Новые»

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и 3 гостя