Уважаемые пользователи! Наш сайт и форум содержится на средства полученные от рекламы. Если вы хотите и дальше продолжать общаться, скачивать, и т.п. пожалуйста отключите блокировку рекламы для нашего сайта/форума. Можно и покликать по рекламным ссылкам, так будут больше выплаты. Спасибо за понимание!

Синтезатор чисел, голосовой

На основе модуля МП3

пользовательские блоки для работы с аудио/видео
Правила форума
Рекомендации по размещению блоков:
Автор блока создает подробное описание блока, отличие от подобных(если есть на данный момент).Сложные блоки очень желательно с примерами.
При выходе новых версий редактирует/дополняет свой первый пост с указанием даты, версии, причины.
В каждой теме обсуждается только выложенный автором блок - баги, возможность (или предложение) доработки и прочие хотелки.
Свои блоки, переработанные, с другими библиотеками, протоколами и т.д.- размещаем либо сами отдельно, либо обсуждаем и дорабатываем в форуме Разработка блоков.
Пользователи улучшив блок автора и проверив его работоспособность - могут обратиться к автору или модераторам с просьбой добавить их версию блока в первое сообщение темы.
aidar_i
Полковник
Сообщения: 1770
Зарегистрирован: 24.12.2016{, 16:55}
Репутация: 219
Откуда: Уфа
Имя: Айдар
Контактная информация:

Синтезатор чисел, голосовой

#1

Сообщение aidar_i » 11.08.2018{, 11:51}

В просторах интернета я нашел такой синтезатор чисел
СпойлерПоказать
.
Удобная штука, решил сделать пользовательский блок, чтобы можно применить в FLProg для своих поделок. Прикрутил вход unsigned long, можно подключать к цифровым термометрам напрямую. Выход string, можно подключить к дисплею.
Озвучивает числа до 4 294 967 295 (unsigned long ), чего практически хватит! Пример
Гол синт чисел на МП3изм.flp
(125.9 КБ) 144 скачивания
Дополнительный блок
Проигрыватель_MP3_mp3TF_(CODE).ubi
(52.5 КБ) 141 скачивание
Проект голосового термометра и измерителя влажности на датчике DHT22. Звуковые файлы для примеров
Аудиофайлы.rar
(1.75 МБ) 154 скачивания
Библиотеку здесь качал:
СпойлерПоказать
Выше, указанного предела идет некорректная выдача чисел. Так как unsigned long только до 4 294 967 295. Если кому нужны числа выше необходимо подавать в блок числа в String, изменив в блоке код.
Если не нужен этот предел, можно в программе поставить ограничение. Когда маленькие цифры можно ничего не менять.
Файлы звука и библиотеку брать на вышеуказанном сайте.
Последний раз редактировалось aidar_i 27.09.2018{, 14:47}, всего редактировалось 10 раз.

Брат
Рядовой
Сообщения: 72
Зарегистрирован: 03.01.2016{, 13:11}
Репутация: 1
Откуда: г.Курганинск, Краснодарский край
Имя: Александр

Синтезатор чисел, голосовой

#21

Сообщение Брат » 30.12.2020{, 11:57}

Разобрался, надо ZIP mp3TF-master.zip распаковать, из папки взять библиотеку mp3TF, а далее или вручную ее установить в IDE, или обратно в ZIP и добавить как положено.

Отправлено спустя 1 час 8 минут 26 секунд:
Даже не знаю, что и подумать. Оказалось, что надо RX- Pin7, TX-Pin8, возможно, что причина в том, что использую NANO 3.0, но сомневаюсь.
Ну и еще, в модуле везде указано, что громкоговоритель подключается непосредственно к выходу SPK_1 или SPK_2, ну или наушники, однако я в этом тоже засомневался. Действительно на указанных выходах половина напряжения питания, тот есть обычный двухтактный выход и необходим разделительный конденсатор на 100-1000мкФ, в зависимости от сопротивления нагрузки. Нет, что-то слышно, но усилитель гребет дурной ток, возможно в этом и причина нагрева модуля. А так все работает, спасибо, интересная штучка.

aidar_i
Полковник
Сообщения: 1770
Зарегистрирован: 24.12.2016{, 16:55}
Репутация: 219
Откуда: Уфа
Имя: Айдар
Контактная информация:

Синтезатор чисел, голосовой

#22

Сообщение aidar_i » 30.12.2020{, 13:16}

Ну и отлично!

Брат
Рядовой
Сообщения: 72
Зарегистрирован: 03.01.2016{, 13:11}
Репутация: 1
Откуда: г.Курганинск, Краснодарский край
Имя: Александр

Синтезатор чисел, голосовой

#23

Сообщение Брат » 03.01.2021{, 18:47}

Еще немного поэкспериментировал с модулем. К сожалению не все отлично. Если к блоку подключить счетчик то считает до 99, затем умолкает, через некоторое время начинает работать, но проговаривает уже 69-91, затем опять умолкает, потом продолжает другой кусок, если на вход блока записать любое число, то некоторое время это число проговаривается правильно, но потом начинается счет по порядку, а на входе одно неизменное число. Алгоритм совершенно не понятен. Но если добавить блок «Отправка в UART», через который вывел out блока на монитор для контроля, то блок начинает работать правильно. Эксперименты на Arduino NANO, если есть возможность, проверьте, пожалуйста.
По дополнительным резисторам в цепях RX,TX, да хрипит, но в datasheet указано, что можно без резисторов если питание МК 3,3в, а если 5в, то резистор нужен по цепи TX-RX.
По выходному усилителю. А нигде не написано, что выходной усилитель стерео. Вот линейный выход DAC_R и DAC_L, вероятно действительно стерео. А вот выход усилителя SPK1-, SPK2+, это сдвоенный УНЧ подключенный по мостовой схеме, то есть он моно. Поэтому, громкоговоритель или наушники необходимо подключать к SPK1- и SPK2+, как показано в datasheet и это правильно. Подключать громкоговоритель к SPK1- или SPK2+ и к земле, необходимо только через разделительный конденсатор, но так подключать вообще не имеет смысла, на обоих выходах одно и то же, только в противофазе. Ну да, через отдельный усилитель можно, но брать сигнал с DAC_R и DAC_L.

aidar_i
Полковник
Сообщения: 1770
Зарегистрирован: 24.12.2016{, 16:55}
Репутация: 219
Откуда: Уфа
Имя: Айдар
Контактная информация:

Синтезатор чисел, голосовой

#24

Сообщение aidar_i » 04.01.2021{, 00:35}

Брат писал(а):
03.01.2021{, 18:47}
если есть возможность, проверьте, пожалуйста.
Свой проект, пожалуйста, скиньте.
Давненько его делал, хочу посмотреть , как вы генератор подключили.

Отправлено спустя 27 минут 31 секунду:
Вот нашел испытанный мной тогда еще проект с генератором.
Гол синт чисел на МП3_1.flp
(357.33 КБ) 13 скачиваний
Лишнее уберите, оставьте генератор и блок изменения числа.

Брат
Рядовой
Сообщения: 72
Зарегистрирован: 03.01.2016{, 13:11}
Репутация: 1
Откуда: г.Курганинск, Краснодарский край
Имя: Александр

Синтезатор чисел, голосовой

#25

Сообщение Брат » 04.01.2021{, 13:37}

К сожалению, Ваш файл у меня не открывается в FLP 6.3.1, видимо, составлен в более ранней версии, возможно в этом и причина неадекватной работы синтезатора.
В моем варианте с отправкой данных в UART, блок работает правильно, причем и при отключенном USB кабеле, то есть от стороннего ИП.
Гол синт чисел на МП3изм.flp
(136.68 КБ) 7 скачиваний
Отправлено спустя 29 минут 20 секунд:
Установил 3.0.3, такой медленный, но такой родной :)
Однако Ваш файл "Гол синт чисел на МП3_1.flp" также не открывается
Error.png
Error.png (3.73 КБ) 684 просмотра
[attachment=0]

aidar_i
Полковник
Сообщения: 1770
Зарегистрирован: 24.12.2016{, 16:55}
Репутация: 219
Откуда: Уфа
Имя: Айдар
Контактная информация:

Синтезатор чисел, голосовой

#26

Сообщение aidar_i » 04.01.2021{, 17:35}

В последней версии я пересохранял, в 7.3.0, поэтому не открывается.

Брат
Рядовой
Сообщения: 72
Зарегистрирован: 03.01.2016{, 13:11}
Репутация: 1
Откуда: г.Курганинск, Краснодарский край
Имя: Александр

Синтезатор чисел, голосовой

#27

Сообщение Брат » 04.01.2021{, 21:27}

Попробовал перекодировать, не получилось.
Установил 7.0.3. Ваш файл открылся, мой фактически тоже самое, просто примитивней.
7.0.3 естественно потребовал библиотеку, подсунул в IDE ZIP mp3TF, стала нормально.
Мой с блоком UART работает правильно. Убрал UART непонятки вернулись.
Прошил Ваш вариант. Точно как и у меня. Проговорил 1-99 пауза, 60-91 пауза, 589-621 пауза, и так далее. Может причина в усеченной библиотеке?
Однако mp3TF-master.zip ни в одном месте за человека не считают! :)

aidar_i
Полковник
Сообщения: 1770
Зарегистрирован: 24.12.2016{, 16:55}
Репутация: 219
Откуда: Уфа
Имя: Айдар
Контактная информация:

Синтезатор чисел, голосовой

#28

Сообщение aidar_i » 04.01.2021{, 21:44}

Брат писал(а):
04.01.2021{, 21:27}
Мой с блоком UART работает правильно.
Выложите проект свой, как подключили? Только не ссылайтесь на мои выложенные проекты и схемы, выложите свою, которую испытываете.
UART никак не привязан здесь, может Вы соединили модуль к UART (0 и 1)?.

Брат
Рядовой
Сообщения: 72
Зарегистрирован: 03.01.2016{, 13:11}
Репутация: 1
Откуда: г.Курганинск, Краснодарский край
Имя: Александр

Синтезатор чисел, голосовой

#29

Сообщение Брат » 04.01.2021{, 22:23}

Как Вы предложили, так я и соединил.
Вложения
Голосовой.jpg

aidar_i
Полковник
Сообщения: 1770
Зарегистрирован: 24.12.2016{, 16:55}
Репутация: 219
Откуда: Уфа
Имя: Айдар
Контактная информация:

Синтезатор чисел, голосовой

#30

Сообщение aidar_i » 04.01.2021{, 22:27}

Проверить пока у меня карты нет дома, завтра постараюсь.

Отправлено спустя 14 минут 49 секунд:
Пока добавьте в блок в сетап: Serial.begin(9600);, если не используете UART.

Отправлено спустя 19 минут 9 секунд:
Брат писал(а):
04.01.2021{, 22:23}
Как Вы предложили, так я и соединил.
Посмотрел библиотеку, не понял почему нужно вставлять строку Serial.begin(9600);, в примере в библиотеке, где используется пин Busy, она применяется. Где его нет , там и этих строк нет.
Значит нужно добавить эту строку в блок.
Добавьте и проверьте.

Брат
Рядовой
Сообщения: 72
Зарегистрирован: 03.01.2016{, 13:11}
Репутация: 1
Откуда: г.Курганинск, Краснодарский край
Имя: Александр

Синтезатор чисел, голосовой

#31

Сообщение Брат » 05.01.2021{, 13:16}

Указанную Вами строку Serial.begin(9600); добавлял в раздел void setup() как непосредственно в IDE , так и в блок, путем его редактирования. Ставил ее как в начале раздела, так и в конце. Компилируется скетч нормально, но блок правильно не работает. Просто добавлял блок SendToUART, без подключения, не работает. Пробовал подключить у SendToUART только send, не работает. Пытался подключить только вход «D», не работает. Подключал «send» и «D», но «Отправлять в каждом цикле» - не работает.
Единственный вариант, когда блок работает правильно это полностью подключенный SendToUART, причем «Отправлять по переднему фронту».
В принципе блок SendToUART весит не много, но интересна причина подобного поведения.

Отправлено спустя 11 минут 33 секунды:
В принципе, вероятно, особенность блока проявляется только при озвучивании последовательного счета, или многократного повторения одного числа, а так любое число озвучивается нормально. Я занимаюсь авиа моделированием, летаем по FPV, необходима информация о высоте полета, хочу по звуковому каналу озвучить данные высоты от высотомера на BMP280. Полностью проект еще не собрал, возможно, все будет работать и без дополнительного SendToUART. Вам спасибо за блок и за помощь.

aidar_i
Полковник
Сообщения: 1770
Зарегистрирован: 24.12.2016{, 16:55}
Репутация: 219
Откуда: Уфа
Имя: Айдар
Контактная информация:

Синтезатор чисел, голосовой

#32

Сообщение aidar_i » 05.01.2021{, 19:57}

Проверьте так:
01.rar
(1.66 МБ) 16 скачиваний
Изменен ПБ, и файлы выложены из сайта.

Брат
Рядовой
Сообщения: 72
Зарегистрирован: 03.01.2016{, 13:11}
Репутация: 1
Откуда: г.Курганинск, Краснодарский край
Имя: Александр

Синтезатор чисел, голосовой

#33

Сообщение Брат » 05.01.2021{, 20:40}

Да, так работает!

Отправлено спустя 26 минут 59 секунд:
Оставил один резистор МК ТХ (7)- RX (2) Модуль, а RX(8)-TX(3) заменил на перемычку, собственно так указано в datasheet на модуль, ничего не хрипит и не греется.
Вложения
datasheet.jpg
datasheet.jpg (23.41 КБ) 563 просмотра

aidar_i
Полковник
Сообщения: 1770
Зарегистрирован: 24.12.2016{, 16:55}
Репутация: 219
Откуда: Уфа
Имя: Айдар
Контактная информация:

Синтезатор чисел, голосовой

#34

Сообщение aidar_i » 05.01.2021{, 22:32}

Брат писал(а):
05.01.2021{, 21:07}
Да, так работает!

Отправлено спустя 26 минут 59 секунд:
Оставил один резистор МК ТХ (7)- RX (2) Модуль, а RX(8)-TX(3) заменил на перемычку, собственно так указано в datasheet на модуль, ничего не хрипит и не греется.
Позже заменю в теме ПБ и файлы.
Да, видел в даташите, так можно.

Позже хочу попробовать синтезатор
на ESP8266 с помощью SPIFFS сделать.
Последний раз редактировалось aidar_i 09.01.2021{, 16:36}, всего редактировалось 1 раз.

Брат
Рядовой
Сообщения: 72
Зарегистрирован: 03.01.2016{, 13:11}
Репутация: 1
Откуда: г.Курганинск, Краснодарский край
Имя: Александр

Синтезатор чисел, голосовой

#35

Сообщение Брат » 09.01.2021{, 15:30}

Высотомер с озвучиванием данных высоты для модели самолета управляемого по FPV построил. Как и предполагал выявленные нюансы в работе блока в реальной работе не проявляются. Дополнительно выяснилось, что блок не озвучивает «0», в папке 01 файл «0» есть, но блок просто молчит. Для меня это приемлемо. Оказалось, что блок плохо уживается с другими блоками, которые используют штатные тактовые генераторы. Пришлось ограничить функциональные возможности высотомера озвучиванием высоты и управлением поисковым буем. Выполнить параллельно запись данных высоты на mikroSD не получилось.

aidar_i
Полковник
Сообщения: 1770
Зарегистрирован: 24.12.2016{, 16:55}
Репутация: 219
Откуда: Уфа
Имя: Айдар
Контактная информация:

Синтезатор чисел, голосовой

#36

Сообщение aidar_i » 09.01.2021{, 16:17}

Ноль озвучивается в последнем варианте блока.
На счёт уживчивости не могу сказать, нет проекта.
Последний раз редактировалось aidar_i 09.01.2021{, 21:52}, всего редактировалось 2 раза.

Брат
Рядовой
Сообщения: 72
Зарегистрирован: 03.01.2016{, 13:11}
Репутация: 1
Откуда: г.Курганинск, Краснодарский край
Имя: Александр

Синтезатор чисел, голосовой

#37

Сообщение Брат » 09.01.2021{, 20:17}

Если я Вас правильно понял, интересует мой проект высотомера. Подумал, что для форума тема не интересна. Все блоки ВМР280, представленные на форуме, у меня отказались работать, за исключением одного, из которого убрал все лишнее и прилепил вход опроса. Кстати, пытался использовать ВМР180 со штатным блоком ВМР-085, меня он раньше очень устраивал, однако в FLP 7.3.0 и 6.3.1. указанный датчик не работает, при этом в FLP 3.03 все нормально
1.Высотомер самолета.flp
(630.89 КБ) 5 скачиваний
Высотомер.png
. При помощи переменных и SUB(-) привязываюсь к месту старта по высоте (0). Если нет изменений данных высоты, срабатывает передатчик 433 мГц 10мВт, который выдает сигнал для поиска модели пеленгатором. Если добавить штатный блок «Сохранить переменную на SD карту», то блок МП3 замолкает, да и на карту информация записывается не корректно.

Отправлено спустя 41 минуту 42 секунды:
Перезалил блок «Универсальный_голосовой_синтезатор_чисел_на МП3», да и на карте заменил папку 01, однако «ноль» произносить отказывается.

aidar_i
Полковник
Сообщения: 1770
Зарегистрирован: 24.12.2016{, 16:55}
Репутация: 219
Откуда: Уфа
Имя: Айдар
Контактная информация:

Синтезатор чисел, голосовой

#38

Сообщение aidar_i » 09.01.2021{, 21:48}

Блок и файлы возьмите здесь voice number synthesizer MP3_1
У Вас старый блок без озвучки нуля.
В блоке BME уберите Еn = 0;

Отправлено спустя 28 минут 46 секунд:
Брат писал(а):
09.01.2021{, 15:30}
Выполнить параллельно запись данных высоты на mikroSD не получилось.
Можно использовать еще одну ардуинку (маленькие) для него или голый камень АТМЕГА328.
Брат писал(а):
09.01.2021{, 15:30}
блок плохо уживается с другими блоками, которые используют штатные тактовые генераторы
В проекте можно использовать только один генератор, а с него получать импульсы для управления остальными блоками.

Брат
Рядовой
Сообщения: 72
Зарегистрирован: 03.01.2016{, 13:11}
Репутация: 1
Откуда: г.Курганинск, Краснодарский край
Имя: Александр

Синтезатор чисел, голосовой

#39

Сообщение Брат » 10.01.2021{, 12:46}

Спасибо Вам большое за оказанную помощь! Выполнил все Ваши рекомендации, теперь все работает на отлично! О записи данных на вторую Arduino идея была. У меня есть и Pro mini и голые МК, прошить все это я могу без проблем, но сохраняю видео, соответственно сохраняется и звук, теперь с озвучиванием высоты, поэтому дополнительная запись данных не актуальна, в авиации избыточность не приветствуется :no: , тем более планирую осилить OSD. Вам, спасибо за блок и помощь, заказал еще пять модулей МР3, прикольная штучка!

Ответить

Вернуться в «Звук и видео»