Плавное увеличение/уменьшение ШИМ на определённую величину в течении заданного времени

Пользовательские блоки ПИД регуляторов, прочих регуляторов и для работы с ШИМ выходами
Правила форума
Рекомендации по размещению блоков:
Автор блока создает подробное описание блока, отличие от подобных(если есть на данный момент).Сложные блоки очень желательно с примерами.
При выходе новых версий редактирует/дополняет свой первый пост с указанием даты, версии, причины.
В каждой теме обсуждается только выложенный автором блок - баги, возможность (или предложение) доработки и прочие хотелки.
Свои блоки, переработанные, с другими библиотеками, протоколами и т.д.- размещаем либо сами отдельно, либо обсуждаем и дорабатываем в форуме Разработка блоков.
Пользователи улучшив блок автора и проверив его работоспособность - могут обратиться к автору или модераторам с просьбой добавить их версию блока в первое сообщение темы.
Ответить
Аватара пользователя
RedSky
Лейтенант
Сообщения: 576
Зарегистрирован: 19 дек 2016, 20:07
Откуда: Днепропетровск
Имя: Алексей
Поблагодарили: 1 раз

Плавное увеличение/уменьшение ШИМ на определённую величину в течении заданного времени

Сообщение RedSky »

Плавное увеличение/уменьшение ШИМ на определённую величину в течении заданного времени. Можно использовать для управления светом в аквариуме.
Описание работы:
после включения контроллера на выходе сразу устанавливается минимальное значение независимо от состояния входа on/off. Если на входе on/off присутствует лог. "1" то на выходе out значение с минимального до максимального будет нарастать в течении времени установленном на входе time (время задаётся в минутах). В случае изменения состояния входа on/off на "0" выход будет уменьшаться с той же скоростью до минимального значения.
Входы:
on/off - включить/выключить выход;
time - время нарастания/спада в минутах;
min - минимальное (оно же стартовое) значение выхода;
max - максимальное значение выхода.
Выход: out.
У вас нет необходимых прав для просмотра вложений в этом сообщении.
Аватара пользователя
ingener
Лейтенант
Сообщения: 580
Зарегистрирован: 14 окт 2018, 00:26
Имя: Андрей
Благодарил (а): 2 раза
Поблагодарили: 3 раза

Плавное увеличение/уменьшение ШИМ на определённую величину в течении заданного времени

Сообщение ingener »

[ref]RedSky[/ref], а можно это блок приспособить для управления генератором? Который выдает сигнал на драйвер шагового мотора. Чтобы обеспечить плавный старт и стоп.
Аватара пользователя
RedSky
Лейтенант
Сообщения: 576
Зарегистрирован: 19 дек 2016, 20:07
Откуда: Днепропетровск
Имя: Алексей
Поблагодарили: 1 раз

Плавное увеличение/уменьшение ШИМ на определённую величину в течении заданного времени

Сообщение RedSky »

[ref]ingener[/ref], можно если только управление двигателем уже построено. Придётся немного изменить блок, чтобы задавать время в секундах.
Для дпт делал блок разгона, но там принцип другой - плавный разгон в случае увеличения задания и быстрая замедление в случае уменьшения.
Аватара пользователя
RedSky
Лейтенант
Сообщения: 576
Зарегистрирован: 19 дек 2016, 20:07
Откуда: Днепропетровск
Имя: Алексей
Поблагодарили: 1 раз

Плавное увеличение/уменьшение ШИМ на определённую величину в течении заданного времени

Сообщение RedSky »

serega11 писал(а): 20 ноя 2019, 10:00 не могли бы пример какой нибудь выложить
Вот собственно черновик проекта, для которого и создавался блок. Задумано управление светом, поддержание температуры, вкл./откл. фильтра на определённое время.
У вас нет необходимых прав для просмотра вложений в этом сообщении.
Аватара пользователя
RedSky
Лейтенант
Сообщения: 576
Зарегистрирован: 19 дек 2016, 20:07
Откуда: Днепропетровск
Имя: Алексей
Поблагодарили: 1 раз

Плавное увеличение/уменьшение ШИМ на определённую величину в течении заданного времени

Сообщение RedSky »

Для pasha71. Нужно проверить.
У вас нет необходимых прав для просмотра вложений в этом сообщении.
pasha71
Лейтенант
Сообщения: 454
Зарегистрирован: 26 авг 2017, 23:44

Плавное увеличение/уменьшение ШИМ на определённую величину в течении заданного времени

Сообщение pasha71 »

[ref]RedSky[/ref], Спасибо, проверю отпишусь в личку.
Аватара пользователя
Di123
Капитан
Сообщения: 828
Зарегистрирован: 03 ноя 2018, 19:38
Имя: Дмитрий

Плавное увеличение/уменьшение ШИМ на определённую величину в течении заданного времени

Сообщение Di123 »

а как в нем что то поменять что бы в секундах работало
там от 1-20 сек хотябы
Аватара пользователя
AlexCrane
Капитан
Сообщения: 903
Зарегистрирован: 20 окт 2017, 13:22
Откуда: Ульяновск
Имя: Александр
Поблагодарили: 12 раз

Плавное увеличение/уменьшение ШИМ на определённую величину в течении заданного времени

Сообщение AlexCrane »

[ref]Di123[/ref], Ответ через пост выше viewtopic.php?f=89&t=5748#p90556
Если не знаю, то не скажу. Если скажу, то сначала проверю...
Если нет возможности отблагодарить материально, хотя бы оцени пост....
Goldln
Рядовой
Сообщения: 11
Зарегистрирован: 23 янв 2024, 12:24
Имя: Oleg

Плавное увеличение/уменьшение ШИМ на определённую величину в течении заданного времени

Сообщение Goldln »

А как перевести больше меньше на 12бит то есть от 0 до 4095
ecoins
Полковник
Сообщения: 3999
Зарегистрирован: 12 фев 2016, 11:40
Откуда: Шатура
Имя: Энвер
Благодарил (а): 136 раз
Поблагодарили: 149 раз

Плавное увеличение/уменьшение ШИМ на определённую величину в течении заданного времени

Сообщение ecoins »

Goldln писал(а): 24 янв 2024, 16:36 А как перевести больше меньше на 12бит то есть от 0 до 4095
Вы не написали какой контроллер.
Если Вы будете использовать блоки ADC,PWM,DAC от ecoins, то они сразу масштабируют показания и управление под аппаратные возможности контроллера и под "системную разрядность", которая в библиотеке по умолчанию выбрана 12разрядов.
При работе с PWM разрядность может быть и увеличена, например под STM32 до 16 разрядов, ESP32 - кажется до 24-х разрядов.
Немного об особенностях PWM написано тут: viewtopic.php?f=39&t=4472&start=300#p127656
Goldln
Рядовой
Сообщения: 11
Зарегистрирован: 23 янв 2024, 12:24
Имя: Oleg

Плавное увеличение/уменьшение ШИМ на определённую величину в течении заданного времени

Сообщение Goldln »

Я это понял мне нужно в именно в этом блоке сделать под ESP32 чтобы можно было выставлять 4095
ecoins
Полковник
Сообщения: 3999
Зарегистрирован: 12 фев 2016, 11:40
Откуда: Шатура
Имя: Энвер
Благодарил (а): 136 раз
Поблагодарили: 149 раз

Плавное увеличение/уменьшение ШИМ на определённую величину в течении заданного времени

Сообщение ecoins »

Goldln писал(а): 24 янв 2024, 18:49 Я это понял мне нужно в именно в этом блоке сделать под ESP32 чтобы можно было выставлять 4095
Берите блоки ecoins - они сразу на 4095 для всех платформ, в том числе и на ESP32.
ecoins
Полковник
Сообщения: 3999
Зарегистрирован: 12 фев 2016, 11:40
Откуда: Шатура
Имя: Энвер
Благодарил (а): 136 раз
Поблагодарили: 149 раз

Плавное увеличение/уменьшение ШИМ на определённую величину в течении заданного времени

Сообщение ecoins »

Goldln писал(а): 24 янв 2024, 19:09 А где их взять ?
Тут библиотеки и блоки: viewtopic.php?f=247&t=8064#p114987
Goldln
Рядовой
Сообщения: 11
Зарегистрирован: 23 янв 2024, 12:24
Имя: Oleg

Плавное увеличение/уменьшение ШИМ на определённую величину в течении заданного времени

Сообщение Goldln »

Спасибо за подсказку
Ответить

Вернуться в «ПИД регуляторы (PID), блоки для ШИМ»

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

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