Arduino rozszerza analogowy syntezator

Syntezator to instrument dla muzyków majsterkowiczów. To taki zestaw różnych modułów – kilku generatorów, filtrów, efektów i klawiatury muzycznej. Moduły można ze sobą łączyć przewodami by wpływały na siebie. Uzyskując oczekiwane, ciekawe brzmienie.

Dziś syntezatory są emulowane za pomocą programów komputerowych. Jednak tak jak i w innych dziedzinach, istnieją ludzie, którzy wolą prawdziwe analogowe wersje. To dla nich stworzono syntezator Werkstatt-Ø1.

image
Zdjęcie pochodzi ze strony Moogmusic

Syntezator składa się samemu, żeby podkreślić jego analogowy środek.

Producent syntezatora pozwala rozszerzać go na wiele możliwości. Jedną z nich jest podłączenie Arduino jako dodatkowego generatora.

image

Potrzebny jest do tego rezystor 10 kOhm i kondensator elektrolityczny 2,2 uF. W takim połączeniu tworzą filtr dolnoprzepustowy, zamieniający sygnał PWM z pinu 6 Arduino na sygnał analogowy.

Programowanie generatora jest bardo proste. Wystarczy ściągnąć specjalnie przygotowaną bibliotekę i bawić się w modyfikowanie jej przykładów.

/*Werkstatt Arpeggiator 
  Moog Music Inc. 2014
  Written by Chris David Howe

  Circuit consists of one 10kΩ resistor and a 2.2µf capacitor low pass filter.
*/

#include <werkstatt.h>

arpeggiator arpeggiator(6); //initiate and name the arpeggiator class (Output pin)

/* 
notes are assigned in intervals: tonic, minor2nd, major2nd, minor3rd,
major3rd, fourth, tritone, fifth, minor6th, major6th, minor7th,
major7th, octave. 
*/
  int notes[] = {tonic, octave}; // VCO EXP config


// note values: w, h, q, qt, e, et, sx, sxt, th, sxf 
  int note_values[] = {e, e}; //VCO EXP config

  
void setup() {
}      


void loop() {
for (int i = 0; i < ( sizeof(notes)/sizeof(int) ); i++)
  {
   //define a BPM and run the arpeggiator.play function  
   arpeggiator.play(140, notes[i], note_values[i]); 
   }
}


W tablicy “notes” zapisujesz wysokości dźwięków, zaś w tablicy “note_value” zapisujesz czasy trwania dźwięków. Stałe do wypełniania tablic to zapis nutowy angielskich skrótów nazw nut i wysokości dźwięków.

Za tempo grania odpowiada metoda “arpeggiator.play”. Jej pierwszy argument to tempo wyrażone w taktach na minutę.

Program możesz modyfikować w dowolny sposób, tak by reagował na różne czujniki, przełączniki lub nawet zewnętrzny sygnał MIDI.

Bibliotekę możesz pobrać ze strony Werkstatt Workshop, na której są projekty modów do tego syntezatora.

W bibliotece i na stronie Workshop opisane są jeszcze inne modyfikacje związane z Arduino. Np. generator szumu lub LFO – oscylator małych częstotliwości do modulowania dźwięków.

Arduino i niezbędne części kupisz u nas w Nettigo.

sprae

Leave a Reply

Your email address will not be published. Required fields are marked *

This site uses Akismet to reduce spam. Learn how your comment data is processed.