Генератор с регулируемоей частотой на ардуино.

dimax
dimax аватар
Offline
Зарегистрирован: 25.12.2013

Vytelis, перечитайте внимательно топик (нулевое сообщение в теме), там об этом написано.

Vytelis
Offline
Зарегистрирован: 15.03.2022

Упс,извиняюсь,был не внимателен.

gun-58
Offline
Зарегистрирован: 10.02.2016

dimax, спасибо за отличный прибор. Собрал V3.5 и 3.6. В 3.6 всё отлично, но есть один вопрос. Нельзя ли вольтметр в генераторе синуса доработать, чтобы показывал хотя бы правильное амплитудное значение или среднеквадратичное значение. Под свой делитель я коэффициент подправил, постоянку меряет отлично.

dimax
dimax аватар
Offline
Зарегистрирован: 25.12.2013
gun-58, Так он и есть среднеквадратичный. Другое дело что скорости выборок не хватает, что б на высоких частотах достоверно измерять. Можете подать на вход сигнал сглаженный диодом+конденсатором, тогда будет амплитудный, и меньше зависеть от частоты. Для достоверных измерений надо ставить на вход вольтметра отдельный чип True RMS to DC.
 
gun-58
Offline
Зарегистрирован: 10.02.2016

Ок, спасибо за ответ, буду пробовать.

glw
Offline
Зарегистрирован: 21.01.2019

[quote=andriano]

dimax, спасибо, замечательное устройство.

Предполагаемую схему на ОУ для смещения нуля попробовал, но убедился, что LM358 для этих целей не подходит. Заказал LM833, а пока собрал схему в пректически неизменном варианте:

А скетчем не поделитесь?

andriano
andriano аватар
Offline
Зарегистрирован: 20.06.2015

Так скетч был опубликован в этой теме.

Piton
Offline
Зарегистрирован: 18.01.2022

Я выкладывал свой вариант платы с смещением . 358-я работала плохо, ставил AD8042, была в наличии. Но в том варианте усилитель со смещением я ставил на выходе коммутатора ADG704 и кроме синуса на входе был и PWM|Impuls. AD в импульсе работала без искажений во всём диапазоне(до 1мГц) Сейчас закончил второй вариант на коммутаторе ADG604 с двуполярным питанием. Теперь усилитель на входе и поступает только синус, то, можно поставить что то и подешевле, но точно не 358-ю. Я же оставил как было. Надеялся, что и сигнал от сишки не будет искажаться с AD604, но оно есть, и поэтому пришлось как и в первом варианте выводить сишку отдельно. Работает хорошо, за исключением вольтметра в режиме синуса( но об этом уже упоминалось) 

 

 

glw
Offline
Зарегистрирован: 21.01.2019

[quote=andriano]

Так скетч был опубликован в этой теме.

С дисплеем 1602 не видел.Может не внимательно читал. Мне нужно именно на ардуино и под дисплей 1602.

glw
Offline
Зарегистрирован: 21.01.2019

Собрал генератор версия 2.3

Все работает, но частота на выходе ровно в два раза ниже.

Причина, наверно, в Ардуине. У меня Pro Мини с кварцем на 8 мГц. Кварц заменить сложно (очень мелкий).

Подскажите, что изменить в скетче, для нормальной работы.

Я не программист, "железячник", но немного подправить скетч думаю смогу.

glw
Offline
Зарегистрирован: 21.01.2019

glw пишет:

Собрал генератор версия 2.3

Все работает, но частота на выходе ровно в два раза ниже.

Причина, наверно, в Ардуине. У меня Pro Мини с кварцем на 8 мГц. Кварц заменить сложно (очень мелкий).

Подскажите, что изменить в скетче, для нормальной работы.

Я не программист, "железячник", но немного подправить скетч думаю смогу.

Неужели никто не подскажет. Или это невозможно.

 

Kakmyc
Offline
Зарегистрирован: 15.01.2018

glw пишет:

glw пишет:

Собрал генератор версия 2.3

Все работает, но частота на выходе ровно в два раза ниже.

Причина, наверно, в Ардуине. У меня Pro Мини с кварцем на 8 мГц. Кварц заменить сложно (очень мелкий).

Подскажите, что изменить в скетче, для нормальной работы.

Я не программист, "железячник", но немного подправить скетч думаю смогу.

Неужели никто не подскажет. Или это невозможно.

 

То что ты не программист, это понятно, но отсюда следует вопрос :
"Ты дурак ?".

Если у тебя тактирование процессора идёт с частотой в 2 раза ниже, чем у автора , то какого ещё результата ты ждёшь ?
Возьми другую плату, с нормальной частотой.
Или ты , реально , думаешь, что кто то на тебя будет тратить время, потому , что ты решил сэкономить 200р ?

glw
Offline
Зарегистрирован: 21.01.2019

Большое спасибо за ответ (но осадок остался). 

Просто пока нет возможности "возьми другую плату". 

andriano
andriano аватар
Offline
Зарегистрирован: 20.06.2015

glw пишет:

glw пишет:

Собрал генератор версия 2.3

Все работает, но частота на выходе ровно в два раза ниже.

Причина, наверно, в Ардуине. У меня Pro Мини с кварцем на 8 мГц. Кварц заменить сложно (очень мелкий).

Подскажите, что изменить в скетче, для нормальной работы.

Я не программист, "железячник", но немного подправить скетч думаю смогу.

Неужели никто не подскажет. Или это невозможно.

 

Самое оптимальное - взять подходящую плату. Все остальное - намного дороже. 

Попытайтесь разместить заявку на переделку скетча в разделе "Ищу исполнителя", проанализируйте предложенную цену и решите, действительно ли переделка скетча - это то, что Вам нужно.

glw
Offline
Зарегистрирован: 21.01.2019

Спасибо!

Решил проблему более простым способом. Т.к. выходные параметры генератора меня устраивают, просто изменил в скетче вывод на дисплей (частота деленная на 2). При этом шаг настройки частоты стал кратным 5 вместо 10. Но это существенных неудобств не вызывает, просто лишние щелчки энкодера.

Domosed
Offline
Зарегистрирован: 15.07.2019
glw пишет:
Решил проблему..
А писал -
glw пишет:
Я не программист, "железячник"..
Самый лучший программист это и есть "железячник", потому как в облаках не летает - "железяки" не пускают..
Piton
Offline
Зарегистрирован: 18.01.2022

Лень было делать новую плату, хотя всё уже  развёл. Оставил эту с родным BNC для сишки. Пробовал в этом варианте с простейшим коммутатором на реле для переключения сишки, то некоторые реле очень даже влияют на ВЧ-сигнал, и плюс ещё соединительные провода. Поэтому, в идеале только отдельный выход.

Ninth9
Offline
Зарегистрирован: 26.08.2022

Здравствуйте. Нужно покачать частоту от 6900кгц до 7300кгц с шагом хотя-бы в 50. Залил скетч из 22 сообщения на ардуино уно. При установке частоты от1 до 2.999мгц выдаëт 3, при установке от 3 до 3.999 выдаëт 4, при установке любых других частот выдаëт 8мгц. Подскажите пожалуйста в чëм может быть проблема и как еë устранить?

andriano
andriano аватар
Offline
Зарегистрирован: 20.06.2015

Так и должно быть.

Выходная частота - частота кристалла, деленная на целое число.

Устранить проблему можно двумя способами:

1. Использовать источник опорной частоты выше Гигагерца и адекватные цепи деления.

2. Использовать иной принцип генерации частоты.

И в том, и в другом случае прибор нужно будет проектировать с нуля.

Ninth9
Offline
Зарегистрирован: 26.08.2022

Спасибо за объяснение. Но как тогда работает программа из первого сообщения?

Ninth9
Offline
Зарегистрирован: 26.08.2022

Спасибо за объяснение. Но как тогда работает программа из первого сообщения?

andriano
andriano аватар
Offline
Зарегистрирован: 20.06.2015

Ninth9 пишет:
Спасибо за объяснение. Но как тогда работает программа из первого сообщения?

Именно так и работает.

Кстати, подробности описаны в первом абзаце исходного сообщения данной темы. Читать не пробовали?

grass
Offline
Зарегистрирован: 08.04.2018

glw, если нашли скетч  под 16х2, то не смогли бы поделиться?

glw
Offline
Зарегистрирован: 21.01.2019

К сожалению, не нашел.

san-sanych
Offline
Зарегистрирован: 05.04.2020

Здравствуйте, уважаемый автор! Огромное спасибо за Ваш труд! Захотел повторить генератор v3.6 и столкнулся с проблемой: с 128к памяти у меня оказались только BluePill Plus от WeAct Studio на чипе GD32F103CBT6. Вопрос - Будетли работать на этом МК Ваш код или нужна обязательно STMка ?

dimax
dimax аватар
Offline
Зарегистрирован: 25.12.2013

san-sanych, об этих мк ничего не знаю.

MAG-N
MAG-N аватар
Offline
Зарегистрирован: 05.06.2017

Piton пишет:

Лень было делать новую плату, хотя всё уже  развёл. Оставил эту с родным BNC для сишки.

Это не BNC от слова совсем, а SMA

Piton
Offline
Зарегистрирован: 18.01.2022

MAG-N пишет:

Это не BNC от слова совсем, а SMA

Функционально-одно и тоже, от слова совсем.

Плату , всё-таки , буду делать, но без регулировки смещения синуса, мне оно не надо. В первом варианте это было в ущерб выходу усилителя.

MAG-N
MAG-N аватар
Offline
Зарегистрирован: 05.06.2017

Piton пишет:

Функционально-одно и тоже, от слова совсем.

Ну не совсем так, сверху - BNC

 

ua6em
ua6em аватар
Offline
Зарегистрирован: 17.08.2016

BNC это байонет нетворк коннектор жеж ( то бищь быстросьёмный) )))

Piton
Offline
Зарегистрирован: 18.01.2022

Это конструктивные отличия. Функционально-и то и другое разъём для входа или выхода сигнала. Но, в принципе-согласен, желательно придерживаться правильных терминов. 

MAG-N
MAG-N аватар
Offline
Зарегистрирован: 05.06.2017

Piton пишет:

Это конструктивные отличия. Функционально-и то и другое разъём для входа или выхода сигнала. Но, в принципе-согласен, желательно придерживаться правильных терминов. 

Ну и припаяйте этот БНЦ к плате Си на все три выхода :-)))

Piton
Offline
Зарегистрирован: 18.01.2022

 Хорошая идея. Непременно бы воспользовался вашим "конструктивным" предложением, но у меня уже всё припаяно. 

Piton
Offline
Зарегистрирован: 18.01.2022

Последняя и окончательная версия платы. В режиме синуса появляются такие пачки импульсов, что влияет на низкий уровень выходного сигнала. 

Piton
Offline
Зарегистрирован: 18.01.2022

Причина этих пачек-вольтметр. Вопрос к автору: можно это как то устранить, или как отключить вольтметр в прошивке? 

dimax
dimax аватар
Offline
Зарегистрирован: 25.12.2013

Piton пишет:

Причина этих пачек-вольтметр. Вопрос к автору: можно это как то устранить, или как отключить вольтметр в прошивке? 

#define SHOWVRMS 1 //измерять ли напряжение в режиме генерации синусоиды: 0-нет 1-да

 

Piton
Offline
Зарегистрирован: 18.01.2022

Спасибо, dimax. Ещё по поводу вольтметра: если выключить прибор в режиме "вольтметр", то при включении никаких пачек нет, но стоит переключиться в другой режим и они опять появляются на выходе DDS(в режиме синуса)  и на входе вольтметра.

dimax
dimax аватар
Offline
Зарегистрирован: 25.12.2013

Piton, мне сложно на этот счёт давать комментарии. У меня нет никаких пачек ни до ни после переключений режимов. Вот синус и 50 ms на квадрат как на вашем скрине. 

Piton
Offline
Зарегистрирован: 18.01.2022

С таким уровнем сигнала вы их не увидите. На моём скрине чувствительность 5мВ/дел и уровень сигнала на выходе усилителя на нуле. При маленьком уровне сигнала эти пачки накладываются на сигнал и срывают синхронизацию. Эти пачки вы можете увидеть в режиме вольтметра на выходе DDS, когда там нет сигнала. Сегодня перепрошил без вольтметра, пачки исчезли, сигнал на 5мВ/дел стабильный.

dimax
dimax аватар
Offline
Зарегистрирован: 25.12.2013

Piton, понял вас. Это не помехи с выхода DDS, это вы видите помехи с шины питания Vcc. Встаньте осциллом между Vcc (3v3) и Gnd увидите ту же самую  картинку. А возникает оно в режиме синуса потому, что в этом режиме  идёт периодический вывод на дисплей данных. Зайдите в режим частотометра -там будет такой же выброс, но уже сильно реже.  А в других режимах не идёт, потому что там вывод на экран только в момент кручения энкодера. Так что судя по всему наводки прут от шины SPI (скорее всего). 

Piton
Offline
Зарегистрирован: 18.01.2022

Да, всё верно, в режиме частотомера они тоже присутствуют, но реже. Связь с вольтметром, всё-таки, есть Сейчас, как я уже упоминал,

 

без вольтметра никаких помех в режиме синуса нет. На нижнем слева фото сигнал на выходе DDS в режиме вольтметра, но бывает там и постоянка, когда как включится. На фото справа-сигнал на входе вольтметра при его включении.

 

dimax
dimax аватар
Offline
Зарегистрирован: 25.12.2013

Piton, с вольтметром нет связи. Связь с выводом на дисплей. Когда вольтметр дефайном выключен -то и вывода на дисплей нет.

Piton
Offline
Зарегистрирован: 18.01.2022

Понятно. Мне, далёкому от программирования, это выглядело как связь. Для меня важно то, что теперь, без вольтметра, нет помех при малом уровне сигнала. Сейчас всё замечательно. Ещё раз спасибо, прибор отличный.

AlekseiN66
Offline
Зарегистрирован: 15.09.2022

Здравствуйте, dimax! Подскажите как в терминальной версии генератора организовать корректировку опорной частоты?  Вычислял действительное значение частоты кварца, и пробовал подставлять вместо F_CPU - на низких частотах помогает, на высоких - нет.

dimax
dimax аватар
Offline
Зарегистрирован: 25.12.2013

AlekseiN66, тактовая берётся из F_CPU. Что значит не помогает? Подробно опишите какая у вас тактовая и что хотите получить. В общем случае  МК не может сделать произвольную частоту, т.к. используются целочисленные делители. 

AlekseiN66
Offline
Зарегистрирован: 15.09.2022

Тактовая у меня получилась 15983300 (запросил 8 МГц, измерил частотомером частоту, умножил на 2, в скетче F_CPU заменил на 15983300). Если запрашиваю 100 Гц - частотомер показывает 100.006 (+/- ок), если запрашиваю 1 МГц - частотомер показывает 1.14 //дальше точно не помню// МГц (???). 

dimax
dimax аватар
Offline
Зарегистрирован: 25.12.2013

AlekseiN66, вот делите вашу 15983300 на целочисленные делители. (2,3,4,...) ,  когда будет делитель 14 -будет оно самое. Если нужны точные частоты существуют специальные тактовые генераторы типа si5351

AlekseiN66
Offline
Зарегистрирован: 15.09.2022

Решил проблему подстроечным конденсатором между 7 ногой Атмеги и землей. Спасибо огромное за скетч!

iarick
Offline
Зарегистрирован: 24.12.2020

Добрый день, помогите начинающему. Хочу собрать данный генератор. Он мне нужен в первую очередь для отладки УМЗЧ.

Как я понимаю, у генератора будет синусойда смещена верх (постоянная составляющая)..

Просьба подсказать реально хорошую схему буферного усилителя которая:

1. Убирала постоянную составляющую

2. Позволяла бы регулировать амплитуду до 5-7 в...

Заранее признателен.

П.С. отсмотрел много (хотя по факту их мало ;)  ) всяких схем и запутался окончательно, прошу помощи гуру.

 

andriano
andriano аватар
Offline
Зарегистрирован: 20.06.2015

iarick пишет:

Просьба подсказать реально хорошую схему буферного усилителя которая:

1. Убирала постоянную составляющую

2. Позволяла бы регулировать амплитуду до 5-7 в...

1. Конденсатор.

2. Потенциометр + ОУ с коэффициентом усиления ~3.