MATERIAL UTILIZADO

- Solenoide XRN-0530 12V
- Transistor TIP 120
- Resistencia 220Ohm
- Diodo
- Varios cables de prototipado (jumpers) pico/pico
- Fonte de alimentación regulable a lo menos dun amperio

A diferencia dos servos e os motores DC, os solenoides funcionan dixitalmente, é dicir, apagado e acendido (0, 1).
Como avanzamos antes, para controlar o solenoide imos precisas un circuíto a modo de driver que utiliza un transistor TIP120, unha resistencia de 2.2 KOhms e un diodo de 1 amperio, a lo menos, que conectaríamos do seguinte xeito. Fíxate na dirección do diodo. Ten unha liña marcando a orientación e neste caso ten que ir cara o positivo.

Aínda que na imaxe os cables do solenoide aparecen en dúas cores diferenciando positivo e negativo (terra), é probable que no servo que consigas, como e que usamos nos, sexan da mesma cor. Non te preocupes. A dirección na que o conectes o único que influirá é na posición inicial. Podes desconectalo e conectalo para probar como te interesa máis que funcione.
Como podes comprobar, o esquema sería en realidade moi parecido ao que utilizamos no circuíto do noso motor DC como alternativa ao L298N xa montado. De feito tamén poderías utiliza o L298 para controlar un solenoide adaptando a voltaxe, pero isto o veremos no último apartado cando movamos os tres motores cun único Arduino .
Se ben podes conectar os cables do solenoide directamente na placa de prototipado, tal e como aparece no esquema, podería resultarte máis doado usar as fichas de conexión que permiten conectar cables diferentes.
Existen moitos tipos, normalmente levan parafusos para asegurar os cables, pero tamén hai outras que simplemente teñen un peche manual moi cómodo como o da imaxe.
Nesta poderían entrar por un lado os cables do solenoide e polo outro colocar un par de cables de prototipado ou jumpers, como os que xa vimos, que encaixan con maior facilidade na placa perforada.
Para probar o solenoide directamente antes de pasar a Pure Data podemos facelo con este código extraido do Tratado de Guitarra Flamenca Preparada do músico e compositor Raúl Cantizano quen busca diferentes medios manuais e mecánicos para expandir as posibilidades timbricas e rítmicas non so do instrumento se non tamén desta tradición musical.
Unha das preparacións que fai da guitarra é a colocación deste activador na peza titulada Toque por Solenoide. Como explica neste manual que acompaña ao seu disco Zona Acordonada "a discutible idea de que o ritmo é un dos elementos musicais máis característicos que ten o flamenco para identificarse [...] nos serve de escusa para levar a un extremo mecánico a preponderancia do ritmo, a cuadratura, a continuidade e a precisión, e crear este 'toque' utilizando un dispositivo que proporciona a base estable e perfecta sobre a que interpretar libremente calquera melodía posible".
O ritmo que reproduce este código é o compás de seguiriya.
int solenoide = 13;
void setup()
{
pinMode(solenoide, OUTPUT);
}
void loop()
{
digitalWrite(solenoide, HIGH);
delay(30);
digitalWrite(solenoide, LOW);
delay(200);
digitalWrite(solenoide, HIGH);
delay(10);
digitalWrite(solenoide, LOW);
delay(200);
digitalWrite(solenoide, HIGH);
delay(30);
digitalWrite(solenoide, LOW);
delay(200);
digitalWrite(solenoide, HIGH);
delay(10);
digitalWrite(solenoide, LOW);
delay(200);
digitalWrite(solenoide, HIGH);
delay(30);
digitalWrite(solenoide, LOW);
delay(200);
digitalWrite(solenoide, HIGH);
delay(10);
digitalWrite(solenoide, LOW);
delay(200);
digitalWrite(solenoide, HIGH);
delay(10);
digitalWrite(solenoide, LOW);
delay(200);
digitalWrite(solenoide, HIGH);
delay(30);
digitalWrite(solenoide, LOW);
delay(200);
digitalWrite(solenoide, HIGH);
delay(10);
digitalWrite(solenoide, LOW);
delay(200);
digitalWrite(solenoide, HIGH);
delay(10);
digitalWrite(solenoide, LOW);
delay(200);
digitalWrite(solenoide, HIGH);
delay(30);
digitalWrite(solenoide, LOW);
delay(200);
digitalWrite(solenoide, HIGH);
delay(30);
digitalWrite(solenoide, LOW);
delay(200);
}
O que fai este código é declarar un nome para o solenoide asociado ao pin 13. Logo dentro do void setup () configura o pin como saída e no void loop() crea unha tarefa para activar e desactivar o solenoide seguindo un patrón rítmico. Os delays son os tempos de espera entre un golpe e o seguinte.
Aquí podes ver un vídeo do propio Raul Cantizano interpretando esta peza sobre a base rítmica de solenoide na corda grave da guitarra. Como comentamos antes, neste caso ó solenoide é utilizado, non sen certa ironía, como un elemento para expandir tanto as posibilidades do instrumento tradicional, como para xogar cos propios códigos dun estilo musical tan canónico en ocasións como é o flamenco.
Vídeo cedido polo autor
Antes de empezar a traballar con Pure Data proba a cambiar os valores de delay e crear variacións sobre este ritmo a ver que consegues.
Podes probar tamén a aplicalo sobre algúns instrumentos da aula de música e escoitar o resultado dun xeito máis musical. Neste caso Raúl Cantizano usa unha masilla adhesiva moldeable das que se utilizan para poñer na parede carteis ou outros elementos sen necesidade de facer buracos.
Licenciado baixo a Licenza Creative Commons Recoñecemento Non-comercial Compartir igual 4.0