Проблема с пьезодатчиком
- Войдите на сайт для отправки комментариев
Всем привет!
Ребят, я в Ардуино шарю весьма поверхностно, так что просьба не писать негативные отзывы.
Суть моей проблемы.
Хочу сделать электронную ударную установку, порылся по интернету, кое-какой скетч написал, подключил пьезу к Ардуино через 1 МОм, все работает, но не совсем корректно.
Должно быть так:
Стучишь по пьезе -> один звук ноты
Как у меня:
Стучишь по пьезе -> один звук ноты + паразитные призвуки
Как решить проблему не знаю, так как не понимаю, что нужно дорабатывать, код или схему. Видел, что некоторые в интернете еще параллельно 1МОм ставят диод Зенера. Зачем он нужен непонятно.
Если кто-то может помочь, буду очень рад. А если кто-то еще и скетч сможет написать, могу его заказать за адекватную цену.
Вверху схемы, второй слева резистор я бы поменьше поставил, а в скетче, посмотрите на строку 32 повнимательнее.
Вверху схемы, второй слева резистор я бы поменьше поставил, а в скетче, посмотрите на строку 32 повнимательнее.
Не понял, вверху какой схемы?
Вот и мы не поняли, чего Вы там (себе) напаяли да написали.
Вот и мы не поняли, чего Вы там (себе) напаяли да написали.
Я же написал, что подключил пьезо к ардиуно через резистор 1МОм, как это везде делают, скетч только позже попробую сюда вставить, что я написал, но дело в том, что по сути все работает, но некорректно, я описывал в первом посте как.
Еще проблема в том, что датчик в руке поворачиваешь и звуки иногда сами воспроизводятся.
Еще проблема в том,
Проблема в том, что мы - ХЗ чего Вы там соединили чере 1МОм и с чем, а также ХЗ - какой скетч Вы там запускали.
Потому ответом на все Ваши вопросы может быть только - ХЗ!
Хотите помощи - давайте схему и код. Не хотите - разбирайтесь сами.
Думал, Вы поймёте это по моему первому сообщению.
Я описал проблему в первом посте, сразу бы написали вышлите скетч и прочее, нет же, надо немного поглумиться над новичком. Как я уже написал, код поздже постараюсь выслать или написать. Я же не знаю, занимался ли кто-нить на этом форуме пьезодатчиками, может это и не проблема вовсе, а тут начинается, как будто сами никогда чайниками не были.
По поводу подключения пьезо к Ардуино:
Один провод пьезы к А0, второй провод - к земле, и оба провода пьезы соединил резистором 1 МОм.
Вместо постоянного резистора 1 МОм присоедините переменный и плавно уменьшая его номинал (загрубляя чувствительность входа ардуины) подберите ту величину, когда помехи ослабнут.
И ещё. Фраза " подключил пьезу к Ардуино через 1 МОм, все работает, но не совсем корректно." лично мне говорит о том, что между выводом датчика и входом ардуины установлен резистор. А теперь выяснилось, что это не так. НЕ НАДО рисовать схему словами. Покажите её.
Спасибо за предыдущий пост.
Вообщем вот скетч (но он написан на 2 ПЬЕЗЫ + СВЕТОДИОД, а на Ардуино я пока оставил только ОДНУ ПЬЕЗУ, чтобы ничего больше Вас не отвлекало):
Random
1. http://arduino.ru/forum/obshchii/vstavka-programmnogo-koda-v-temukommentarii
2. У меня твёрдое ощущение, что Вы над нами издеваетесь. Вам сказали, дайте ту схему и тот скетч, с которымм Ваше устройство неправильно работает. Вы схему давать отказываетесь, а скетч даёте какой-то другой - на другое количество пьез. Ну, идевайтесь дальше. Мне пофиг. Разница между нами в том, что Вам нужно решать Вашу проблему, а мне, например, - нет.
Вверху схемы, второй слева резистор я бы поменьше поставил, а в скетче, посмотрите на строку 32 повнимательнее.
А конденсатор? Номинал вообще не в тему, там же звуки до 1000 герц
Random
1. http://arduino.ru/forum/obshchii/vstavka-programmnogo-koda-v-temukommentarii
2. У меня твёрдое ощущение, что Вы над нами издеваетесь. Вам сказали, дайте ту схему и тот скетч, с которымм Ваше устройство неправильно работает. Вы схему давать отказываетесь, а скетч даёте какой-то другой - на другое количество пьез. Ну, идевайтесь дальше. Мне пофиг. Разница между нами в том, что Вам нужно решать Вашу проблему, а мне, например, - нет.
Я же в самом первом посте написал, что работает, но некорректно. Код работает, но звук выдаетсяне совсем тот, что мне нужен. Я делаю удар по пьезе, должен быть один звук, а когда я стучу получается несколько, как будто 100 звуков в секунду. А какая схема Вам нужна?
А какая схема Вам нужна?
Мне никакая нахрен не нужна. У меня всё наормально работает.
Вам нужна, блин, ТА КОТОРАЯ У ВАС СОБРАНА. И скетч нужен ТОТ с которым Вы наблюдаете такое поведение. Но это нужно ВАМ, А НЕ МНЕ.
А какая схема Вам нужна?
Мне никакая нахрен не нужна. У меня всё наормально работает.
Вам нужна, блин, ТА КОТОРАЯ У ВАС СОБРАНА. И скетч нужен ТОТ с которым Вы наблюдаете такое поведение. Но это нужно ВАМ, А НЕ МНЕ.
Схему я нашел в нете, у меня ее нет, как я подключал, я уже вам писал, фотки пока выслать не получилось. Скетч я писал на 2 датчика, но работают они одинаково, поэтому и скетч оставил на 2.
Отлично! Разбирайтесь дальше! Успехов!
вот код для одной пьезы:
и вот схема как подключен сам пьезодатчик (только у меня он без светодиода):
Ну неужели подсказать некому?
ТРИ ошибки:
1. в функции плей-нот Вы сразу выключаете ноту, после включения. Выглядит странно, но может работать. Вообще - нужна задержка и тогда совсем другое программирование с флагами и потоком исполнения.
2. Вы в лупе, СПЕРВА используете силу удара с пьезы в качастве велосити, а ПОТОМ ограничиваете диапазон, что бред. читайте про функцию map().
3. в лупе нет защиты от повторного срабатывания. Время реакции пьезы на удар БОЛЬШЕ, чем время исполнения лупа, и плей-нота вызывается снова и снова, с отзвуками. Это главная причина.
Чинить Ваш код не стану. Человек, не выполнивший правила форума по вставке кода, и помощи-то дождался только потому, что мне сегодня лень нравоучения читать.
Мда, сппсибо, конечно, но здесь чересчур доброжелательные люди, не так вставил код, хотя потом исправил, нет настроения читать нравоучения, пипец, ребята. Никого не оскорбил, попрлсил помощи, а в ответ получил только частичные советы и высокомерные посты, как будто никто чайником не был. Ладно, буду дальше разбираться, раз всем здесь лень что-то по теме подсказать, да и от настроя тут не дай бог г**ном закидают
...в ответ получил только частичные советы....
...всем здесь лень что-то по теме подсказать
1. Частичные? Я полность указал на все Ваши ошибки, если моих комментариев Вам мало - у меня для Вас плохие новости. Недаром про ударников сами музыканты анекдоты рассказывают.
Вам нужно подробнееи понятнее? Велкам!
Плату я беру глумежом и унижениями, если устраивает - даже код готовый напишу ;). Обращение за помощью в таких мелочах уже унижает человека, ну уж мужика-то - точно, на мой взгляд.
Чайниками все были, но некоторым помогли учебники и, появившийся потом, Гугль. А некоторые - предпочитают унижаться. Их выбор.
...в ответ получил только частичные советы....
...всем здесь лень что-то по теме подсказать
1. Частичные? Я полность указал на все Ваши ошибки, если моих комментариев Вам мало - у меня для Вас плохие новости. Недаром про ударников сами музыканты анекдоты рассказывают.
Вам нужно подробнееи понятнее? Велкам!
Плату я беру глумежом и унижениями, если устраивает - даже код готовый напишу ;). Обращение за помощью в таких мелочах уже унижает человека, ну уж мужика-то - точно, на мой взгляд.
Чайниками все были, но некоторым помогли учебники и, появившийся потом, Гугль. А некоторые - предпочитают унижаться. Их выбор.
Вы мне указали на ошибки, я вам сказал спасибо, но потом вы начали показывать свое я
Унижение - это что-то познавать? Нет в интернете того, что я ищу, иначе я б не обратился за помощью сюда. Так что, если для вас познавать - это унижаться, то я вам сочувствую.
P.S. Я не барабанщик, анекдоты припасите для других людей
Надеюсь, Вы не считаете, что здесь кто-то обязан Вам помогать, несмотря на Ваше активное сопротивление этому?
Впредь думайте, кому это больше надо и ведите себя соответсвенно.
Надеюсь, Вы не считаете, что здесь кто-то обязан Вам помогать, несмотря на Ваше активное сопротивление этому?
Впредь думайте, кому это больше надо и ведите себя соответсвенно.
Я не отбрыкивался, скетч я скинул почти сразу, схему я сначала словестно описал, потом скинул ее изображение.
Я написал сразу, что я шарю поверхностно, но все накинулись и начали глупо прикалываться. Сейчас уже идет оффтопная какая-то переписка, никак не имеющая отношения к вопросу. Из-за Вас, уважаемые "гуру", я вынужден искать ответ в другом месте, так как я вам предоставил материал, хоть и не сразу, но вы все посчитали, что новички это не люди и помогать им - это дело неблагородное. Я пришел на форум в надежде получить помощь, как любой нормальный человек, мне не нужны ваши субъективные суждения о том кто я и что я. Можете помочь? Перед вами скетч и схема. Нет? Значит не пишите ничего.
После моей второй просьбы (в теме всё есть).
И то с припиской, что это на самом деле другой скетч ("но он написан на 2 ПЬЕЗЫ + СВЕТОДИОД, а на Ардуино я пока оставил только ОДНУ ПЬЕЗУ, чтобы ничего больше Вас не отвлекало")
Так ото ж
После моей четвёртой просьбы.
Если бы Вы шарили достаточно, чтобы понимать фразу "дайте схему и скетч", Вам бы давно помогли решить Вашу проблему. А если Вы настолько не шарите, что не понимаете этой фразы - может Вам лучше чем-нибудь другим заняться?
За других не скажу. Лично я вчера мог и хотел, но Вам это не было нужно. А сегодня я могу, но уже не хочу. Мне надоело с Вами бороться и преодолевать Ваше сопротивление.
С Вашего позволения (или без оного) я сам принимаю и буду принимать решения что, где и когда мне писать или не писать.
Можете помочь? Перед вами скетч и схема. Нет? Значит не пишите ничего.
1. я - помог. Что не ясно? Перед использовнием данных с пьезы примени функцию map(). И не забудь отсечь нижние значения. Реакция пьезы на удар выглядит как серия затухающих волн.
Как вариант - можно не реагировать на удары в течении 1/32 после первого - вряд ли ты играешь последоватедьности быстрее 32 ударов в секунду. Лучше применять и то и то.
Что ты там еще спрашивал? Зенер ставят - штоп не попалить вход. Но он тебе немного исказит реакцию пьезы. Можешь 5В поставить.
-----------------
2. А вот советы чужим людям давать - писька не отросла. Папе своему советы давай.
Совсем мелкие ахренели!
В наше время - старших уважали... ононимности не было, со всеми вытекающими.
Вверху схемы, второй слева резистор я бы поменьше поставил, а в скетче, посмотрите на строку 32 повнимательнее.
Вроде как Вы это написали вторым же постом после моего обращения ко всем. Вы такими глупыми шутками "просили меня выслать скетч"?
По поводу кода, если Вы были внимательны, я писал, что вышлю его попозже. Написал я это сразу как у меня это попросили. Схему я описал словами, но не поленился продублировать ее и изображением.
После всего этого мне указали на косяки, но добавили, что это унизительно, заниматься такими вещами.
может Вам лучше чем-нибудь другим заняться?
вот я тоже думаю, может и вам всем здесь перестать строить из себя слишком умных людей-то?
В общем, молодец!
К сожалению, Вы так ничего и не поняли, поэтому, боюсь, в следующай раз будет тоже самое. Ну, ничего, когда-нибудь поймёте.
Удачи!
1. я - помог. Что не ясно? Перед использовнием данных с пьезы примени функцию map(). И не забудь отсечь нижние значения. Реакция пьезы на удар выглядит как серия затухающих волн.
Как вариант - можно не реагировать на удары в течении 1/32 после первого - вряд ли ты играешь последоватедьности быстрее 32 ударов в секунду. Лучше применять и то и то.
Что ты там еще спрашивал? Зенер ставят - штоп не попалить вход. Но он тебе немного исказит реакцию пьезы. Можешь 5В поставить.
что вам всем мешало написать это без всяких шуток?
2. А вот советы чужим людям давать - писька не отросла. Папе своему советы давай.
Совсем мелкие ахренели!
В наше время - старших уважали... ононимности не было, со всеми вытекающими.
меньше глумиться надо было. И по поводу возраста тоже: некрасиво выглядит, когда люди не зная, возраста, начинают других обзывать
wdrakula,
Вы заметили, каждый, кто зарегистрировался день назад, не успев войти в чужой монастырь, начинает всех учить, как нужно правильно общаться с новичками, и для чего нужен форум? :))))
Это что, мода така пошла?
К сожалению, Вы так ничего и не поняли, поэтому, боюсь, в следующай раз будет тоже самое. Ну, ничего, когда-нибудь поймёте.
Удачи!
Вам же Ваши слова
Просто Вы пишите ШУТКИ через СОВЕТЫ, а не СОВЕТЫ через ШУТКИ. А потом жалуетесь, что Вам советы дают. В первом посте все предельно ясно по моим навыкам. В итоге Вы мне дали кое-какие советы, но не обязательно было стебаться и прочее. Частично, но я получил свое все равно, а вы только потратили нервы. И зачем?
wdrakula,
Вы заметили, каждый, кто зарегистрировался день назад, не успев войти в чужой монастырь, начинает всех учить, как нужно правильно общаться с новичками, и для чего нужен форум? :))))
Это что, мода така пошла?
Это поколение "Мне все должны".
Плоды патернализма. Типа я пришел в школу - обязаны меня учить. Только попробуйте подзатыльник отвесить - в суд и хорошо, если не в тюрьму.
Учителя должны - учить, Родители - кормить, на форумах - помогать, дамы - (ну само-собой!) давать!
У меня такие друзья были (уже бывшие), которые в займы любили просить... искренне удивлялись - а почему нет?
"Они хотят, чтобы их любили!" (с).
Шоп я так жил!
не шарю
Понимаете, все мы в чём-то чайники. Но, одно дело, когда чайник задаёт вопрос, стараясь помочь человеку, взявшемуся отвечать и совсем другое, когда чайник изо всех сил пытается сздать проблемы помогающему, заставляя умолять себя по многу раз предоставить информацию.
Когда у меня появляется вопрос, я его готовлю (трачу немало времени), чтобы дать помогающему максимум информации и немедленно отвечаю, если человеку нужно что-то ещё. Вот, например, мой вопрос. Сравните подход со своим. Может так поймёте.
И зачем?
затем, что ответ на свои вопросы Вы бы все равно где-то нашли.
Но тут и я получил удовольствие от поглумиться (вот такой я человек).
А Вы, как ни хорохорьтесь, но запомните то, что желая получить помощь нужно быть предельно вежливым и четко соблюдать все, что требует потенциальтный источник помощи. Это как с ложечками - "осадочек останется", по опыту говорю... чесслово!
"Ласковый теленок - двух мамок сосёт" - эт поговорка, возможно слышали.
wdrakula,
Вы заметили, каждый, кто зарегистрировался день назад, не успев войти в чужой монастырь, начинает всех учить, как нужно правильно общаться с новичками, и для чего нужен форум? :))))
Это что, мода така пошла?
Это поколение "Мне все должны".
Плоды патернализма. Типа я пришел в школу - обязаны меня учить. Только попробуйте подзатыльник отвесить - в суд и хорошо, если не в тюрьму.
Учителя должны - учить, Родители - кормить, на форумах - помогать, дамы - (ну само-собой!) давать!
У меня такие друзья были (уже бывшие), которые в займы любили просить... искренне удивлялись - а почему нет?
"Они хотят, чтобы их любили!" (с).
Шоп я так жил!
Это ваше искаженное восприятие. Мне никто ничего не должен, но раз я обратился за помощью, то либо помогите, если можете, либо нет. Мне ваши шутки до лампочки, не интересно мне все это. Вы сначала сами начали, а теперь ноете.
Random,
1. Форум предназначен для общения людей по интересам, а не для ответов на вопросы новичков. Это далеко не одно и то же.
2. Уважайте обитателей форума, не заставляйте их многократно повторять просьбы предоставить информацию, без которой помочь Вам невозможно (и, раз Вы признаете себя новичком, не Вам судить, что нужно, а что нет, и в каком виде).
3. Если Вы только вчера зарегистрировались на форуме, не следует учить старожилов, как им следует поступать.
4. Если Вам намекнули, что ведете Вы себя не так, как здесь принято, то следует не огрызаться, а принять информацию к сведению, особенно, если она исходит сразу от нескольких человек.
Если бы надо мной не стали шутить в ответ, а написали, к примеру, нам непонятно, вышли или напиши то то, то эта переписка бы не затянулась. Но вы все сами меня учить начали, из всей переписки было совсем немного полезного и я не огрызался, я просто отвечал вам всем в ответ. Но так как здесь я уже не найду ничего полезного для себя, поэтому такая "помощь" мне не нужна.
Удачи Вам найти помощь в другом месте!
Взаимно
Random,
1. Форум предназначен для общения людей по интересам, а не для ответов на вопросы новичков. Это далеко не одно и то же.
2. Уважайте обитателей форума, не заставляйте их многократно повторять просьбы предоставить информацию, без которой помочь Вам невозможно (и, раз Вы признаете себя новичком, не Вам судить, что нужно, а что нет, и в каком виде).
3. Если Вы только вчера зарегистрировались на форуме, не следует учить старожилов, как им следует поступать.
4. Если Вам намекнули, что ведете Вы себя не так, как здесь принято, то следует не огрызаться, а принять информацию к сведению, особенно, если она исходит сразу от нескольких человек.
Что касается второго пункта, то не с меня начали, тут есть человек, который в одном из постов выше написал, что любит глумиться, но при этом к нему должны обращаться вежливо. Можете забанить меня, но это последнее, что я напишу, итак уже куча оффтопа.
1. Есть такой человек. Только он до этой темы, на Ваше счастье, еще не добрался.
2. Правила хорошего тона рекомендуют, зарегистрировавшись на новом форуме, прежде, чем начинать на него писать, 2-3 дня почитать его. Чтобы знать:
- как принято общаться на форуме,
- кто есть кто,
- чего категорически не следует делать на данном форуме.
Вы пренебрегли правилами хорошего тона и получили ожидаемый результат.
Не понимаю, почему ТС устроил здесь "танцы на комоде". У ТС ясная задача. Считать начало импульса с пьезодатчика и сыграть определеную ноту определеной длительности. Если нота одна и частота выше 16 Гц , то tone() в помощь. А ниже можно millis() использовать.
ПС: 1.Я не могу написать, так как нужного железа нет. 2. У меня нет музыкального слуха, так что если напишу , то очень далеко от музыки. 3. ТС лучше поискать форум музыкантов , с навыками создания электроных музыкальных девайсов. А не насиловать здесь народ. Ну нет здесь музыкантов.
Не понимаю, почему ТС устроил здесь "танцы на комоде". У ТС ясная задача. Считать начало импульса с пьезодатчика и сыграть определеную ноту определеной длительности. Если нота одна и частота выше 16 Гц , то tone() в помощь. А ниже можно millis() использовать.
ПС: 1.Я не могу написать, так как нужного железа нет. 2. У меня нет музыкального слуха, так что если напишу , то очень далеко от музыки. 3. ТС лучше поискать форум музыкантов , с навыками создания электроных музыкальных девайсов. А не насиловать здесь народ. Ну нет здесь музыкантов.
спасибо Вам. Дело в том, что у меня не хватает знаний по этим делам, спросить в интернете особо не у кого, ибо в основном все, кто что-то подобное делал на Ардуино - это забугорщина. Мне по сути не с кем консультироваться, а сделать хочется все самому, собственно, поэтому и открыл тему.
Начните промежуточный вариант. Кнопка -> звук. Как найдете оптимальный звук переведете на сенсор или пьезу. Ведь вам важнее звук, а не как ее вызывать.
Начните промежуточный вариант. Кнопка -> звук. Как найдете оптимальный звук переведете на сенсор или пьезу. Ведь вам важнее звук, а не как ее вызывать.
не не не, тут обратная задача: стучишь по пьезе и через VST-плагин обрабатывается сигнал.
Грубо говоря, есть нота 36, это бас-бочка барабанов. Моя пьеза - это имитация бас-бочки. Стукнул раз - нота 36 воспроизвелась и получили один удар бас-бочки. Но у меня проблема в том, что я стукнул раз, а звук как будто я ударил 100 раз в секунду, лишние призвуки короче говоря.
Так задейсвуй millis(). вон сейчас жуют этот же прием. только вам надо не 20 сек а 200миллисек.http://arduino.ru/forum/programmirovanie/rabota-s-knopkami-v-pomoshch-novichku?page=17#comment-246436
Поймали фронт по пьезе, и отключили запуск . Через 0.2 сек дальше. Но обработку звука надо смотреть на осциллографе. Иначе вилами по воде будет.
Так задейсвуй millis(). вон сейчас жуют этот же прием. только вам надо не 20 сек а 200миллисек.http://arduino.ru/forum/programmirovanie/rabota-s-knopkami-v-pomoshch-novichku?page=17#comment-246436
Поймали фронт по пьезе, и отключили запуск . Через 0.2 сек дальше. Но обработку звука надо смотреть на осциллографе. Иначе вилами по воде будет.
с осциллографом, конечно, беда - нет его) а с millis() надо попробовать
Если вы захотите такую штуку делать, то на форуме таких специлистов нет. Или есть, но свой наработаный опыт вам не дадут.
http://arduino.ru/forum/programmirovanie/sempler
ПС:https://www.youtube.com/watch?v=v_8u6JaXQdg
не не не, тут обратная задача: стучишь по пьезе и через VST-плагин обрабатывается сигнал.
т.е. тебе кнопку для компа нужно сделать?
где плагин будет находиться?
не не не, тут обратная задача: стучишь по пьезе и через VST-плагин обрабатывается сигнал.
т.е. тебе кнопку для компа нужно сделать?
где плагин будет находиться?
нее. смотри. есть VST-плагин = виртуальные ударные. Пьезо = инструмент ударных (например, бас-бочка). А далее нужно написать код, где стучишь по пьезе (бас-бочке), а звук уже обрабатывает VST-плагин.
Если вы захотите такую штуку делать, то на форуме таких специлистов нет. Или есть, но свой наработаный опыт вам не дадут.
http://arduino.ru/forum/programmirovanie/sempler
ПС:https://www.youtube.com/watch?v=v_8u6JaXQdg
а Вам отдельное спасибо, наконец-то хоть адекватные советы от кого-то получил.