Пользовательский блок управления частотой ШИМ в Герцах

На этом форуме Вы можете задать вопросы знатокам программы и автору.
Ответить
Аватара пользователя
KeyArduino
Сержант
Сообщения: 130
Зарегистрирован: 21.07.2019{, 19:16}
Репутация: 125
Имя: Дмитрий
Контактная информация:

Пользовательский блок управления частотой ШИМ в Герцах

#1

Сообщение KeyArduino » 18.08.2020{, 10:02}

Приветствую господа офицеры!
Просьба сделать пользовательский блок который сможет регулировать частоту ШИМ в герцах, на подобие как можно регулировать частоту на модуле расширителя ШИМ выходов модуля PCA9685.
Знаю что кодом можно это делать, но сам в коде не силён. Такой блок интересен множеству пользователей, и у меня на канале постоянно спрашивают про возможность регулировки частоты под средствами Flprog.
Прошу помочь с данным вопросом, с меня видео с обзором этого блока на канале, при желании с указанием автора блока.

Аватара пользователя
Dryundel
Полковник
Сообщения: 2401
Зарегистрирован: 22.05.2017{, 23:15}
Репутация: 783
Откуда: Ярославль
Имя: Андрей
Контактная информация:

Пользовательский блок управления частотой ШИМ в Герцах

#2

Сообщение Dryundel » 18.08.2020{, 10:16}

KeyArduino, увы такого блока не получится. К сожалению частотой ШИМ на Ардуино можно управлять только сильно ступенчато и то управляя им на низком уровне. В лучшем случае можно получить около десятка градаций.

Подробнее об изменении частоты ШИМ можно посмотреть здесь.

Аватара пользователя
Sancho
Полковник
Сообщения: 4066
Зарегистрирован: 25.12.2015{, 17:32}
Репутация: 590
Откуда: Ярославль.
Имя: Александр
Контактная информация:

Пользовательский блок управления частотой ШИМ в Герцах

#3

Сообщение Sancho » 18.08.2020{, 10:48}

KeyArduino писал(а):
18.08.2020{, 10:02}
Такой блок интересен множеству пользователей, и у меня на канале постоянно спрашивают про возможность регулировки частоты под средствами Flprog.
Честно, не могу представить, где такое необходимо, совсем не хватает изощрённой фантазии. :smile37: :smile469:
Блок можно сделать, используя аппаратный таймер как задатчик тактов для шима. Но это будет практически полностью программный шим.
мой ник в нете и почте omelchuk890, если что. запомните на всякий. многие знают номер тлф.

Аватара пользователя
Dryundel
Полковник
Сообщения: 2401
Зарегистрирован: 22.05.2017{, 23:15}
Репутация: 783
Откуда: Ярославль
Имя: Андрей
Контактная информация:

Пользовательский блок управления частотой ШИМ в Герцах

#4

Сообщение Dryundel » 18.08.2020{, 10:55}

Sancho писал(а):
18.08.2020{, 10:48}
Блок можно сделать, используя аппаратный таймер как задатчик тактов для шима. Но это будет практически полностью программный шим.
С дуру можно и.... (сломать чего нибудь) :smile171:
Если такое запустить, то весь остальной скетч просто откажется работать.

Аватара пользователя
Sancho
Полковник
Сообщения: 4066
Зарегистрирован: 25.12.2015{, 17:32}
Репутация: 590
Откуда: Ярославль.
Имя: Александр
Контактная информация:

Пользовательский блок управления частотой ШИМ в Герцах

#5

Сообщение Sancho » 18.08.2020{, 11:10}

Если для одного канала - можно попроще, меньше будет грузить мк.
Но повторюсь - я не могу представить, для чего это нужно - плавно изменять частоту ШИМ?
Хоть одно применение, навскидку?
мой ник в нете и почте omelchuk890, если что. запомните на всякий. многие знают номер тлф.

Аватара пользователя
Dryundel
Полковник
Сообщения: 2401
Зарегистрирован: 22.05.2017{, 23:15}
Репутация: 783
Откуда: Ярославль
Имя: Андрей
Контактная информация:

Пользовательский блок управления частотой ШИМ в Герцах

#6

Сообщение Dryundel » 18.08.2020{, 11:22}

Sancho писал(а):
18.08.2020{, 11:10}
Но повторюсь - я не могу представить, для чего это нужно - плавно изменять частоту ШИМ?
Хоть одно применение, навскидку?
Попробую высосать из пальца - генератор меандра!
Или вот! Из носа достал - частотная модуляция! Электронное пианино можно сделать.
Хотя вот еще - частотный кодировщик.

Ну можно придумать в общем то. :)

Аватара пользователя
KeyArduino
Сержант
Сообщения: 130
Зарегистрирован: 21.07.2019{, 19:16}
Репутация: 125
Имя: Дмитрий
Контактная информация:

Пользовательский блок управления частотой ШИМ в Герцах

#7

Сообщение KeyArduino » 18.08.2020{, 13:31}

Dryundel писал(а):
18.08.2020{, 10:16}
KeyArduino, увы такого блока не получится.
Печально... Спасибо за ответ!

Отправлено спустя 4 минуты 40 секунд:
Sancho писал(а):
18.08.2020{, 11:10}
Хоть одно применение, навскидку?
В основном хотят таким образом избавится от писка зависящего от частоты герц

Отправлено спустя 14 минут 55 секунд:
Как я понял из ваших комментариев господа офицеры, овчинка не стоит выделки...

Аватара пользователя
Dryundel
Полковник
Сообщения: 2401
Зарегистрирован: 22.05.2017{, 23:15}
Репутация: 783
Откуда: Ярославль
Имя: Андрей
Контактная информация:

Пользовательский блок управления частотой ШИМ в Герцах

#8

Сообщение Dryundel » 18.08.2020{, 16:11}

KeyArduino писал(а):
18.08.2020{, 10:02}
В основном хотят таким образом избавится от писка зависящего от частоты герц
Ну так для этого нет необходимости выставлять частоту в герцах. Достаточно поднять её до нужного уровня. Однако не все так однозначно. Не на всех пинах это можно сделать без потерь стандартных функций библиотеки Ардуино.

Аватара пользователя
ingener
Лейтенант
Сообщения: 556
Зарегистрирован: 14.10.2018{, 00:26}
Репутация: 20
Имя: Андрей

Пользовательский блок управления частотой ШИМ в Герцах

#9

Сообщение ingener » 18.08.2020{, 20:09}

А если два контроллера применить? Один генератор. второй формирователь длины импульса.

Аватара пользователя
Dryundel
Полковник
Сообщения: 2401
Зарегистрирован: 22.05.2017{, 23:15}
Репутация: 783
Откуда: Ярославль
Имя: Андрей
Контактная информация:

Пользовательский блок управления частотой ШИМ в Герцах

#10

Сообщение Dryundel » 18.08.2020{, 20:11}

ingener писал(а):
18.08.2020{, 20:09}
А если два контроллера применить? Один генератор. второй формирователь длины импульса.
А не проще тогда спец микросхему или шилд использовать?

Аватара пользователя
Di123
Капитан
Сообщения: 828
Зарегистрирован: 03.11.2018{, 19:38}
Репутация: 29
Имя: Дмитрий

Пользовательский блок управления частотой ШИМ в Герцах

#11

Сообщение Di123 » 21.08.2020{, 16:46}

раз дело зашло о шим
подскажите предел возможного промини 168
наблюдения показывают что если выставить частоту 1 гц при шиме 1 (от 1023) получаем импульс на выходе примерно в 1 мс
значит если выставить 1кгц то импульс уже будет примерно 1 мкс
а вот при 10кгц шим уже не отрисуется ? или он просто не опустится ниже ? тость 1нс небудет ?
измерять такие величины плотером я думаю бессмысленно что бы увидеть правду :smile37:

Аватара пользователя
Sancho
Полковник
Сообщения: 4066
Зарегистрирован: 25.12.2015{, 17:32}
Репутация: 590
Откуда: Ярославль.
Имя: Александр
Контактная информация:

Пользовательский блок управления частотой ШИМ в Герцах

#12

Сообщение Sancho » 21.08.2020{, 17:30}

Di123, В посте 2 ссылка, почитайте и посчитайте.
мой ник в нете и почте omelchuk890, если что. запомните на всякий. многие знают номер тлф.

Аватара пользователя
Di123
Капитан
Сообщения: 828
Зарегистрирован: 03.11.2018{, 19:38}
Репутация: 29
Имя: Дмитрий

Пользовательский блок управления частотой ШИМ в Герцах

#13

Сообщение Di123 » 22.08.2020{, 03:05}

там говорится что на 10 бит можно и 15,6кгц подавать
значит минимальный импульс ардуино равен 0,063 мкс

Аватара пользователя
Sancho
Полковник
Сообщения: 4066
Зарегистрирован: 25.12.2015{, 17:32}
Репутация: 590
Откуда: Ярославль.
Имя: Александр
Контактная информация:

Пользовательский блок управления частотой ШИМ в Герцах

#14

Сообщение Sancho » 22.08.2020{, 09:23}

Да. При такой конфигурации шим тактируется напрямую частотой кварца, 16мГц, такт = 62,5нс.
мой ник в нете и почте omelchuk890, если что. запомните на всякий. многие знают номер тлф.

Ответить

Вернуться в «Спросить у знатоков»