Датчик звука

Делись идеей, получай поддержку и критику!
Ответить
nomad3453
interested
interested
Сообщения: 7
Зарегистрирован: 21 июл 2012, 05:16
Версия LabVIEW: 11.0
Контактная информация:

Датчик звука

Сообщение nomad3453 »

Здравствуйте!!! Суть проекта заключается в создании программы, которая с помощью микрофона определяет шум. Если он выше установленного, программа должна записывать этот шум в файл. Максимальный предел шума устанавливается переключателем, который определяет максимальную амплитуду данного шума. Посмотрите что у меня уже есть и доработайте запись в файл. Чтобы файлы не были такие короткие при кратковременном шуме, пусть оно записывает еще + 5 сек по окончании звука. За помощь буду очень благодарен.
Вложения
Audio Analysis.vi
то что пока получилось
(103.03 КБ) 378 скачиваний
Аватара пользователя
Pavel Krivozubov

Activity Bronze
professor
professor
Сообщения: 4421
Зарегистрирован: 07 фев 2008, 16:39
Награды: 3
Версия LabVIEW: 7.0 - 2013
Откуда: г. Электросталь
Благодарил (а): 24 раза
Поблагодарили: 9 раз
Контактная информация:

Re: Датчик звука

Сообщение Pavel Krivozubov »

Странно, но у меня программа зависает спустя несколько секунд после запуска. :dntknw:
AndreyDmitriev

Activity Professionalism Tutorials Gold Black
VIP
VIP
Сообщения: 1326
Зарегистрирован: 03 фев 2010, 00:42
Награды: 6
Версия LabVIEW: 6.1 - 2024
Откуда: Германия
Благодарил (а): 1 раз
Поблагодарили: 36 раз
Контактная информация:

Re: Датчик звука

Сообщение AndreyDmitriev »

У меня тоже зависало (в Sound Input Read (DBL).vi), в основном если что-то ещё делать - мышкой там возить и т.п. Прошло после увеличения number of samples/ch с 4410 до 44100 (и в Sound Input Configure.vi тоже поменял).

По сути вопроса - записывать лучше не только не сколько секунд после пика, но также секунду-другую до. Сделайте сдвиговый регистр, в котором храните окно шума, при наступлении события сбрасывайте его в файл. Делать это лучше в отдельном цикле, перебрасывая шумовые данные через очередь, чтобы не тормозить цикл, получающий данные с микрофона.
nomad3453
interested
interested
Сообщения: 7
Зарегистрирован: 21 июл 2012, 05:16
Версия LabVIEW: 11.0
Контактная информация:

Re: Датчик звука

Сообщение nomad3453 »

Ты прав, лучше записывать еще до пика. Только как это сделать, вот в чем вопрос =) помогите, пожалуйста ......
Аватара пользователя
IvanLis

Activity Professionalism Tutorials Gold Man of the year 2012
Автор
guru
guru
Сообщения: 5458
Зарегистрирован: 02 дек 2009, 17:44
Награды: 7
Версия LabVIEW: 2015, 2016
Откуда: СССР
Благодарил (а): 27 раз
Поблагодарили: 86 раз

Re: Датчик звука

Сообщение IvanLis »

nomad3453 писал(а):Ты прав, лучше записывать еще до пика. Только как это сделать, вот в чем вопрос =) помогите, пожалуйста ......
AndreyDmitriev писал(а):Сделайте сдвиговый регистр, в котором храните окно шума, при наступлении события сбрасывайте его в файл. Делать это лучше в отдельном цикле, перебрасывая шумовые данные через очередь, чтобы не тормозить цикл, получающий данные с микрофона.
nomad3453
interested
interested
Сообщения: 7
Зарегистрирован: 21 июл 2012, 05:16
Версия LabVIEW: 11.0
Контактная информация:

Re: Датчик звука

Сообщение nomad3453 »

IvanLis писал(а):
nomad3453 писал(а):Ты прав, лучше записывать еще до пика. Только как это сделать, вот в чем вопрос =) помогите, пожалуйста ......
AndreyDmitriev писал(а):Сделайте сдвиговый регистр, в котором храните окно шума, при наступлении события сбрасывайте его в файл. Делать это лучше в отдельном цикле, перебрасывая шумовые данные через очередь, чтобы не тормозить цикл, получающий данные с микрофона.
В словах вроде понятно, но я в LABVIEW не профессионал, поэтому прошу о помощи. Помигите плисссссссс =( Очень нужно
Аватара пользователя
IvanLis

Activity Professionalism Tutorials Gold Man of the year 2012
Автор
guru
guru
Сообщения: 5458
Зарегистрирован: 02 дек 2009, 17:44
Награды: 7
Версия LabVIEW: 2015, 2016
Откуда: СССР
Благодарил (а): 27 раз
Поблагодарили: 86 раз

Re: Датчик звука

Сообщение IvanLis »

nomad3453 писал(а):В словах вроде понятно, но я в LABVIEW не профессионал, поэтому прошу о помощи. Помигите плисссссссс =( Очень нужно
Вопрос в чем???
Если только в том, кто за Вас это сделает, то Вам на биржу труда.

Профессионалами сразу не становятся...
Для этого нужно на собственном пузе проползти много-много километров LabVIEW проводников :D
nomad3453
interested
interested
Сообщения: 7
Зарегистрирован: 21 июл 2012, 05:16
Версия LabVIEW: 11.0
Контактная информация:

Re: Датчик звука

Сообщение nomad3453 »

IvanLis писал(а):Вопрос в чем???
Если только в том, кто за Вас это сделает, то Вам на биржу труда.

Профессионалами сразу не становятся...
Для этого нужно на собственном пузе проползти много-много километров LabVIEW проводников :D
да, ты прав ..... но я не знаю с чего начать ..... "Сделайте сдвиговый регистр, в котором храните окно шума" ...... как? где?
Последний раз редактировалось IvanLis 26 июл 2012, 07:09, всего редактировалось 1 раз.
Причина: оверквотинг
Аватара пользователя
IvanLis

Activity Professionalism Tutorials Gold Man of the year 2012
Автор
guru
guru
Сообщения: 5458
Зарегистрирован: 02 дек 2009, 17:44
Награды: 7
Версия LabVIEW: 2015, 2016
Откуда: СССР
Благодарил (а): 27 раз
Поблагодарили: 86 раз

Re: Датчик звука

Сообщение IvanLis »

nomad3453 писал(а):я не знаю с чего начать ..... "Сделайте сдвиговый регистр, в котором храните окно шума" ...... как? где?
Начните в таком случае с поиска: labview сдвиговый регистр
nomad3453
interested
interested
Сообщения: 7
Зарегистрирован: 21 июл 2012, 05:16
Версия LabVIEW: 11.0
Контактная информация:

Re: Датчик звука

Сообщение nomad3453 »

IvanLis писал(а):Начните в таком случае с поиска: labview сдвиговый регистр
Читал, но не могу понять как он поможет мне в решению моей проблемы. = (Что пускать через сдвиговый регистр? Звук который получаю из микрофона? И что тогда с ним произойдет после сдвигового регистра?
AndreyDmitriev писал(а): перебрасывая шумовые данные через очередь

Как перебросить шумовые данные через очередь?
AndreyDmitriev писал(а): Делать это лучше в отдельном цикле, чтобы не тормозить цикл, получающий данные с микрофона.
все равно тормозит =(
AndreyDmitriev писал(а):У меня тоже зависало (в Sound Input Read (DBL).vi), в основном если что-то ещё делать - мышкой там возить и т.п. Прошло после увеличения number of samples/ch с 4410 до 44100 (и в Sound Input Configure.vi тоже поменял).
если увеличить, программа не отображает результат с нормальной частотой. = (


-------------------------- IvanLis --------------------------
Это не ЧАТ, это ФОРУМ! :evil:
Не надо каждые 5 минут писать сообщения, при необходимости можно отредактировать свое сообщение (исправить/добавить).
Аватара пользователя
IvanLis

Activity Professionalism Tutorials Gold Man of the year 2012
Автор
guru
guru
Сообщения: 5458
Зарегистрирован: 02 дек 2009, 17:44
Награды: 7
Версия LabVIEW: 2015, 2016
Откуда: СССР
Благодарил (а): 27 раз
Поблагодарили: 86 раз

Re: Датчик звука

Сообщение IvanLis »

nomad3453 писал(а):все равно тормозит =(
если Вы не знаете как....
то почему утверждаете, что все равно тормозит
тормозить не может, т.к. данные обрабатываются в двух независимых-параллельных циклах
nomad3453 писал(а):Как перебросить шумовые данные через очередь?
labview queue
у Вас есть хоть какая-нибудь литература?
поищите на форуме, полно информации
посмотрите примеры например здесь

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

Activity Professionalism Tutorials Gold Black
VIP
VIP
Сообщения: 1326
Зарегистрирован: 03 фев 2010, 00:42
Награды: 6
Версия LabVIEW: 6.1 - 2024
Откуда: Германия
Благодарил (а): 1 раз
Поблагодарили: 36 раз
Контактная информация:

Re: Датчик звука

Сообщение AndreyDmitriev »

nomad3453, на самом деле вы просто несколько непоследовательны. Вы взялись за относительно непростую задачку при отсутствии некоторых базовых знаний, без которых решить её (причём элегантно решить) для вас будет непросто. Это всё равно что взять в библиотеке "Горе от ума" на китайском и пытаться читать, вооружившись китайско-русским словарём.

Я вам вот что посоветую - найдите в сети курс LabVIEW Basic I и проштудируйте его как следует, выполняя упражнения. Затем возьмите лист бумаги и нарисуйте детальную блок-схему алгоритма. Задача разбивается на несколько поздадач - как накапливать приходящие данные, что делать при превышении уровня сигнала, учесть такие моменты, когда уровень превышен в течение долгого времени - тут надо продолжать запись в уже открытый файл, и т.д. Отображение сигнала - тоже отдельная тема - ведь если накапливать данные маленькими порциями и отображать их слишком часто, то нагрузка на ЦП естественно растёт. Следовательно надо поработать над балансировкой - найти оптимум, возможно вынести отображение из цикла заквата в накапливающий цикл.

Сделайте небольшие тестовые VI в LabVIEW, чтобы разобраться с массивами, записью в файл (и чтением), и т.д.

Лучше всего вначале слепить симулятор сигнала (тоже хорошее упражнение) - иначе намучаетесь с зависаниями во время отладки. Лишь отладив основной алгоритм, заменить симулятор захватом сигнала с карты и поработать над синхронизацией цикла захвата, отображения и сохранения в файл, чтобы они не блокировались.

При этом можете постить сюда всё, что не очень получается - но с конкретными вопросами, а не "Посмотрите что у меня уже есть и доработайте запись в файл."
nomad3453
interested
interested
Сообщения: 7
Зарегистрирован: 21 июл 2012, 05:16
Версия LabVIEW: 11.0
Контактная информация:

Re: Датчик звука

Сообщение nomad3453 »

AndreyDmitriev писал(а):nomad3453, на самом деле вы просто несколько непоследовательны. Вы взялись за относительно непростую задачку при отсутствии некоторых базовых знаний, без которых решить её (причём элегантно решить) для вас будет непросто. Это всё равно что взять в библиотеке "Горе от ума" на китайском и пытаться читать, вооружившись китайско-русским словарём...
Возможно ты прав, но сейчас у меня нет сколько времени ... Проект надо отдать в середине сентября. Для того чтобы иметь хорошую оценку (которая повлияет на то буду я иметь степендию, или нет) мне захотелось сделать что-то приличное.

Я не просто прошу чтобы кто-то из вас мне сделал это, я пытаюсь, стараюсь, только не получается; поэтому прошу вашей помощи. Я не могу сейчас всьо бросить и начать делать что-то простое, я должен довести дело до конца. Помогите =(
IvanLis писал(а):если Вы не знаете как....
то почему утверждаете, что все равно тормозит
тормозить не может, т.к. данные обрабатываются в двух независимых-параллельных циклах
эту проблему я решил, торможение появилось после смены number of samples/ch с 4410 до 44100
IvanLis писал(а):Вы понимаете, что Ваши вопросы вызывают смешанные чувства
с одной стороны человека, который издевается
с другой, человека который ничего не хочет делать, а ищет халявы
отсюда и такое отношение
извините за то что вызываю у вас такие чувства, но я стараюсь =(
Аватара пользователя
IvanLis

Activity Professionalism Tutorials Gold Man of the year 2012
Автор
guru
guru
Сообщения: 5458
Зарегистрирован: 02 дек 2009, 17:44
Награды: 7
Версия LabVIEW: 2015, 2016
Откуда: СССР
Благодарил (а): 27 раз
Поблагодарили: 86 раз

Re: Датчик звука

Сообщение IvanLis »

nomad3453 писал(а):Я не просто прошу чтобы кто-то из вас мне сделал это, я пытаюсь, стараюсь, только не получается; поэтому прошу вашей помощи. Я не могу сейчас всьо бросить и начать делать что-то простое, я должен довести дело до конца. Помогите =(
декомпозируйте задачу и начните ее решение поэтапно
задавайте более конкретные вопросы, тогда получите конкретные-полезные ответы и советы

у Вас пока вопросов НЕТ, по этому и ответов, которые могут Вам помочь НЕТ
nomad3453
interested
interested
Сообщения: 7
Зарегистрирован: 21 июл 2012, 05:16
Версия LabVIEW: 11.0
Контактная информация:

Re: Датчик звука

Сообщение nomad3453 »

В файле есть два цикла, один отвечает за запись в файл, а второй за все другие операции. Отдельно каждый из этих циклов работает, а вот когда бросаю их в одну программу то она зависает при записи(Record).
Вложения
test.vi
(49.6 КБ) 290 скачиваний
Ответить

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