пятница, 4 марта 2016 г.

Музыкальная «пыточная» шарманка или осваиваем пьезоизлучатель...

Всем нашим читателям блога привет. Продолжим осваивать наш ардуино конструктор. В этом уроке мы попробуем использовать на практике самый обычный пьезоизлучатель. Надеемся что у вас он есть, так же понадобиться еще нам плата ардуино и светодиод. Ну и для наблюдением за сигналом не помешает еще и осциллограф. А перед тем как начать работать над проектом небольшая предыстория…

Предыстория, или как хотите вступление, ведет в те детские годы, когда мы пробовали без всякой подготовки «поиграть» на разных инструментах. В итоги обычно удавалось из разных инструментов (например гитары или пианино) извлекать разные ноты, которые в своем наборе напоминали не музыку а дикую каксофонию. А вы знаете что и наш ардуино тоже так умеет? И даже больше: гораздо лучше и интереснее! А вот теперь давайте и приступим к делу…
Начнем со схемы. Все настолько просто, что даже на этот раз мы обойдемся без ее рисунка. Просто подключите наш пьезодинамик (но с соблюдением полярности – посмотрите где у него «плюс» и соответственно плюсовой вывод мы подключим к 7 пину на плате ардуино, а другой на землю) прямо к плате ардуино. Все просто не правда ли? Теперь давайте освоим новый оператор…

Оператор tone как раз и позволит получить звук определенной частоты и длительности. По сути все что нужно это просто прописать: tone (номер пина, частота Гц, длительность мс,); чтобы все наглядно показать, давайте сделаем чтобы на 7 пине генерировался сигнал с частотой 770 Гц продолжительностью в полсекунды. Да нет ничего проще: tone (7, 770, 500);
Думаю, что слушать тон одной и той же частоты да еще одинаковой продолжительности вряд ли заинтересует нашего любопытного читателя. А давайте сделаем так чтобы все параметры постоянно менялись. А вот тогда мы получим «музыкальную шкатулку» в которой будет издаваться самые разные звуки причем разной длительности. Для этого воспользуемся специальным оператором генерации случайных чисел: random (300, 800); С этим оператором еще проще: он просто будет генерировать случайным образом числа в указанном в скобках диапазоне. Таким образом будет меняться тональность (скажем от 300 до 800 Гц) и длительность (от 200 до 400 мс). Конечно вы можете потом сами поменять размах этих задаваемых значений тона и длительности и посмотреть, что из этого вышло.  А теперь сам скетч:

int spek=7;
long res=300;
long sef=300;
void setup()
 {
   pinMode (spek , OUTPUT);
}

void loop()
 {
  res=random (300, 800);
  sef=random (200, 400);
tone (spek, res, sef);
delay (400);
}



Записываем в плату ардуино скетч и … началось… ардуино сам играет не то мелодию, не то просто попискивает. А теперь давайте подключим параллельно к динамику осциллограф и понаблюдаем за сигналом. Да интересно понаблюдать за сигналом прямоугольной форы, у которого все меняется. А теперь давайте еше проведем эксперимент со светодиодом: нужно подключить его точно так же параллельно нашему пьезоизлучателю , и тогда он будет мигать в такт звуковым импульсам. Впрочем все как всегда можно увидеть в очередном видеоролике ниже. Приятного просмотра.

Комментариев нет:

Отправить комментарий