controlador midi com teclas de toque - Engenharia Eletrica

Propaganda
CONTROLADOR MIDI COM TECLAS DE TOQUE
Fernando Cosentino
Curso de Engenharia Elétrica – Universidade Federal do Paraná
Curitiba – Paraná - Brasil
e-mail: [email protected]
custo devido ao material e causando transtornos no transporte
do instrumento pelo músico, devido ao volume e peso.
Assim, este projeto apresenta uma solução a ambas as
questões. Trata-se de um teclado controlador MIDI, com
teclas metálicas sensíveis ao toque, compondo três oitavas
(36 teclas). Por não conter partes móveis e as teclas serem
pequenas lâminas, o instrumento pode ser leve, ocupar pouco
espaço, e ter custo reduzido. Por não simular um piano nem
em mecânica nem na forma de tocar, passa a ser visto como
um novo instrumento, possuindo assim o apelo da inovação.
Uma vantagem adicional é ser um controlador MIDI,
permitindo uma redução do custo por não exigir seu próprio
sintetizador, e garantindo que os músicos poderão usá-lo nos
sintetizadores disponíveis no mercado.
Resumo – Este documento trata do projeto de um
instrumento musical na forma de um controlador MIDI,
sendo a interface composta de teclas metálicas sensível ao
toque.
Palavras-Chave – Controlador Instrumento Midi
Musical Toque
MIDI CONTROLLER USING TOUCH KEYS
Abstract – This document describes the project of a
musical instrument built as a MIDI controller, the
interface being metalic touch sensors.
1
Keywords – Controller Instrument Midi Music Touch
A. Histórico
Quando os primeiros teclados eletrônicos foram criados e
lançados comercialmente – o primeiro sendo o Novachord,
lançado pela empresa Hammond em 1938 [6] – eles
consistiam num equipamento único, que realizava todo o
processo desde a interface até a sintetização do som. A partir
da década de 50, músicos e fabricantes passaram a valorizar
a forma modular dos instrumentos eletrônicos, ou seja, a
interface e a sintetização do som em equipamentos
separados, conectados eletricamente por algum cabo. A
interface foi chamada controlador, e a sintetização, módulo
sintetizador (popularmente abreviado para “módulo”).
Com o tempo a forma modular introduziu diversas
vantagens. Se o músico está satisfeito com o controlador,
mas o módulo está deixando a desejar (ou o contrário),
apenas uma das partes precisa ser substituída, reduzindo o
custo – o que não seria possível se as partes não fossem
independentes. Também passou a ser possível conectar
vários controladores num mesmo módulo, aumentando as
possibilidades de interface, ou vários módulos num mesmo
controlador, aumentando a qualidade ou complexidade
sonora.
A princípio, todos os equipamentos eram de tecnologia
proprietária. Mas a popularização dos sintetizadores fez
surgir a necessidade de padronizar a forma como o
controlador se comunica com o módulo, de forma que em
1983, foi criado o padrão MIDI – Music Instrument Digital
Interface, ou “Interface Digital de Instrumentos Musicais”,
incluindo tanto a especificação eletromecânica quanto o
protocolo de dados a ser usado. Seguindo a tecnologia MIDI,
o fabricante garante que seu equipamento se comunicará
perfeitamente com os equipamentos que o músico já tenha
adquirido.
A tecnologia permitiu uma liberdade muito grande no que
tange aos instrumentos. Não apenas teclados, mas
controladores de diversos formatos acionam os mesmos
equipamentos, que podem ser módulos sintetizadores,
NOMENCLATURA
Vpp
dBpp
DC
Tensão pico-a-pico em volts
Tensão pico-a-pico em decibéis
Valor em corrente contínua
I. INTRODUÇÃO
A música, sendo parte do mercado de entretenimento, está
muito associada aos sentimentos de entusiasmo e fascinação.
Assim, um músico ou conjunto que possua um apelo de
inovação terá um grande diferencial perante o público. [1]
Quando surgiram os instrumentos eletrônicos, uma das
grandes vantagens introduzidas foi a flexibilidade para
inovações, que levou a indústria a investir em instrumentos
eletrônicos, principalmente nos teclados, ou seja,
instrumentos eletrônicos seguindo o formato dos pianos.
Um instrumento eletrônico é composto de duas partes: a
interface e a produção do som. Com a evolução da eletrônica,
essas partes puderam ser separadas em equipamentos
distintos, a interface sendo o controlador, e a produção do
som sendo o sintetizador. Posteriormente, a forma de
comunicação entre essas duas partes foi padronizada na
tecnologia MIDI (Music Instrument Digital Interface),
permitindo a aquisição dos equipamentos separadamente. [2]
Apesar de serem eletrônicos, a grande maioria dos
teclados disponíveis atualmente é constituída de teclas
mecânicas, simulando a forma operacional de um piano. Isso
exige espaço, peso e complexidade mecânica, aumentando o
1
Trabalho de Conclusão do Curso de Graduação em Engenharia
Elétrica na Universidade Federal do Paraná, desenvolvido no período de
Julho a Dezembro de 2009, sob orientação do Professor Dr. Ewaldo Luiz de
Mattos Mehl
1
Note On
Note Off
Aftertouch
Controller
Program
Pitch Bend
computadores com softwares sintetizadores ou mesmo
equipamentos de palco como luzes e outros efeitos.
B. A Especificação MIDI
1) Regulamentação
A tecnologia MIDI é regulamentada por um órgão
chamado MMA – MIDI Manufacturers Association
(“Associação de Fabricantes MIDI”), que em 1982 emitiu
um documento contendo a especificação chamada “MIDI
1.0” e continua mantendo a tecnologia atualizada até a data
desta publicação.
- Ligar uma nota (começar a soar)
- Desligar nota (cessar som)
- Variação de pressão durante a nota
- Alteração de controle
- Mudança de programa ou timbre
- Variação da altura2 das notas
3.2) Mensagens de Sistema
São mensagens independentes dos canais. Incluem
instruções de playback (execução de seqüências
memorizadas), sincronização e mensagens de configuração
do equipamento, geralmente proprietárias e sem
regulamentação fixada. As mensagens de sistema não serão
utilizadas neste projeto pois esses recursos não serão usados.
2) Organização dos Dados
O protocolo MIDI é essencialmente digital, enviando
mensagens numéricas com instruções que podem ser de
vários tipos. Por exemplo, quando o músico pressiona a tecla
Dó, o controlador envia ao módulo a instrução: ligar nota
Dó. Quando o músico solta a tecla, o controlador envia a
mensagem: desligar nota Dó. Outras informações também
podem ser enviadas, como a força com que a tecla foi
pressionada, mudança de volume ou de timbre.
Cada sistema MIDI pode conter até 16 canais, isto é, 16
camadas independentes de transmissão dessas informações.
Assim, o músico pode, por exemplo, controlar um timbre no
canal 1, outro timbre independente no canal 2, um grupo de
luzes de palco no canal 3 e outro grupo de equipamentos no
canal 4. Ou, em outro exemplo, todos os canais terem o
mesmo timbre, mas ligados a controladores diferentes.
As informações são enviadas em conjuntos de bytes
(geralmente três), numa transmissão serial assíncrona, cada
byte com um bit de início e um bit de fim, a uma velocidade
de 31250 bits por segundo (baud rate) [3].
O primeiro byte é dividido em duas partes: os primeiros 4
bits indicam a operação sendo realizada (ligar nota, desligar
nota, mudar posição de controle, etc), e os outros 4 bits
indicam o canal a que a mensagem se refere (0 a 15).
O segundo byte é o valor da operação. Por exemplo, se a
operação é ligar uma nota, o segundo byte indica qual nota
ligar. Se a operação for trocar o programa (timbre), o
segundo byte indica o número do novo timbre, etc. Algumas
mensagens não possuem o segundo byte por não ser
necessário, por exemplo a mensagem de sincronização.
A maioria das operações possuem um terceiro byte. Por
exemplo, a operação “ligar nota” possui um terceiro byte
indicando a velocidade com que a tecla foi pressionada. A
operação “alterar controle” (controle sendo um interruptor ou
potenciômetro, por exemplo o potenciômetro de volume)
possui como segundo byte o controle a ser alterado e como
terceiro byte o novo valor. Quando o terceiro byte não é
necessário, apenas dois bytes são enviados.
II. PRINCÍPIO DE FUNCIONAMENTO
Praticamente todas as instalações elétricas prediais são
feitas em corrente alternada. Com isso, o interior e as
proximidades dessas instalações são permeados por um
campo eletromagnético constante, oscilando na freqüência da
rede de distribuição.
Como o corpo humano possui alguns parâmetros elétricos
(resistência, capacitância e indutância), uma pessoa nas
proximidades dessas instalações, conforme Fig. 1, se
transforma numa antena, captando esse campo e traduzindo
em corrente elétrica.
Fig. 1. Ilustração de um músico imerso em campo
eletromagnético predial
Assim, sempre que uma pessoa toca um condutor
metálico, seu corpo induz uma corrente de intensidade
variável porém significativa, sempre em ressonância com a
rede elétrica. Essa corrente possui características semelhantes
ao campo, ou seja, forma aproximadamente senoidal,
centrada em zero, e - no caso do Brasil - numa freqüência de
60 Hz.
3) Tipos de Mensagens
Existem dois tipos de mensagens MIDI: mensagens de
canal e mensagens de sistema.
3.1) Mensagens de Canal
São mensagens que afetam somente um canal, e se
destinam a configurar a forma como soam as notas e são
interpretados os controles. Essas mensagens compreendem as
seguintes operações:
2
Altura de uma nota é a posição dela numa escala de freqüência.
Uma nota dita mais “alta” significa mais aguda, e mais “baixa” significa
mais grave. A variação de altura no caso do Pitch Bend refere-se a uma
variação pequena, desde meio tom abaixo até meio tom acima. Um tom é o
intervalo de nota, entre, por exemplo, o dó e o ré.
2
A Fig. 2 mostra a medição em volts, feita em osciloscópio,
da extremidade de um fio desencapado tocado pela ponta de
um dedo.
III. PROJETO
A. Levantamento das Necessidades
O controlador deve realizar as seguintes funções:
1. Quando tocada uma tecla, com mãos nuas, deve iniciar
a respectiva nota;
2. Se o toque for mantido, a nota deve continuar soando,
respeitando as características do timbre – isto é, a nota deve
ser mantida ativa;
3. Quando cessar o toque, a respectiva nota deve ser
encerrada;
4. Se uma tecla for tocada enquanto a outra ainda soa, a
nota respectiva à segunda tecla deve ser iniciada sem
prejuízo no comportamento da primeira nota de forma
alguma – isto é, a situação de cada nota deve ser
memorizada;
5. O controlador deve respeitar qualquer configuração
presente no sintetizador, para que o músico possa usar em
conjunto com outros controladores – isto é, não deve alterar
volume, programa(timbre) ou outras configurações que não
sejam referentes às notas;
6. O delay máximo (isto é, o atraso para executar uma
função) não pode exceder o delay da própria comunicação
MIDI;
7. Se nenhuma tecla estiver sendo tocada, todas as notas
devem cessar.
Fig. 2. Medição em osciloscópio da tensão aplicada pela ponta
de um dedo, em volts
As Fig. 3 e Fig. 4 mostram o espectro em freqüência do
sinal representado na Fig. 2, em decibéis pico-a-pico e em
volts pico-a-pico, respectivamente, para a rede elétrica
brasileira.
B. Operações Necessárias
As considerações 1 a 4 exigem que o controlador
memorize o estado de todas as teclas individualmente, e
envie mensagens somente na transição de estado. Assim,
quando uma tecla é pressionada, o controlador envia a
mensagem NoteOn e o estado “tecla pressionada” é
armazenado na memória; quando outra tecla é pressionada,
outra mensagem NoteOn é enviada para ela sem enviar uma
NoteOff para a primeira, e o estado da segunda também é
armazenado sem interferir no armazenamento do estado da
primeira. Quando cessa o toque na primeira tecla, então
finalmente a mensagem NoteOff é enviada para ela e o
estado “tecla solta” é armazenado para esta tecla, e assim
sucessivamente.
Para a consideração 5, é necessário arbitrar um dos 16
canais como o canal fixo, e ao ligar o controlador este não
deve enviar nenhuma mensagem de inicialização alterando o
programa (timbre), enviando as notas para o programa que já
esteja selecionado. Foi escolhido o canal 0, por ser o
primeiro canal. Assim, todas as mensagens começam com os
bits “0000” (primeiro canal).
Para a consideração 6, foi assumido que o controlador não
deve introduzir absolutamente nenhum atraso. Para isso,
deve ser levado em conta a velocidade de transmissão do
próprio protocolo. As maiores mensagens tendo três bytes, o
controlador deve executar todo o processamento no tempo
desses três bytes serem enviados. A uma velocidade de
31250 bps, isso significa que toda a varredura deve levar no
máximo 960 µs.
A consideração 7 é uma questão de tornar o controlador a
prova de falhas de comunicação. Caso ocorra uma falha de
comunicação numa mensagem NoteOff e a mensagem não
seja interpretada, uma determinada nota permaneceria
Fig. 3. Espectro em escala logarítmica da tensão aplicada pela
ponta de um dedo
Fig. 4. Espectro em escala linear da tensão aplicada pela ponta
de um dedo
3
soando constantemente mesmo que o músico não esteja
tocando. Para garantir que nunca uma nota permaneça ativa
indevidamente, sempre que o controlador estiver ocioso - isto
é, nenhuma tecla sendo tocada - ele deve enviar uma
mensagem All Notes Off (operação Controller seguido do
valor 123).
Devido à matriz elaborada, deve possuir 6 entradas e 6
saídas, não incluindo a interface UART. Essas entradas e
saídas devem ser digitais e compatíveis entre si.
Foi escolhido o microcontrolador PIC 16F628A com
oscilador interno de 4 MHz, atendendo a todos esses
requisitos com o menor custo. Para as teclas, foi escolhido
um par de transistores BC548 por tecla, também por motivos
de custo.
C. Forma de Varredura
A forma de entrada de dados escolhida foi a varredura em
matriz, pelo motivo de economia de entradas e saídas. Nessa
forma, as teclas são dispostas conforme a Fig. 5; alimenta-se
uma única saída, e a entrada é lida, obtendo as teclas daquela
linha. Depois é alimentada a linha seguinte e lida, e assim
sucessivamente. Sendo 36 teclas, a forma mais eficiente seria
uma matriz 6x6, com seis colunas lidas nas entradas de dados
e seis linhas a serem varridas pelas saídas de dados.
G. Software
O software para o microcontrolador foi escrito em
linguagem C, utilizando o módulo interno UART do
microcontrolador para a comunicação MIDI. O software
segue a lógica apresentada a seguir:
−
Coloca a primeira linha da matriz no nível ALTO
−
Verifica as entradas 1 a 6, acionando
respectivamente as teclas 1 a 6
−
Coloca a primeira linha da matriz no nível BAIXO
−
Coloca a segunda linha da matriz no nível ALTO
−
Verifica as entradas 1 a 6, acionando
respectivamente as teclas 7 a 12
−
Coloca a segunda linha da matriz no nível BAIXO
−
Coloca a terceira linha da matriz no nível ALTO
−
Verifica as entradas 1 a 6, acionando
respectivamente as teclas 13 a 18
−
Coloca a terceira linha da matriz no nível BAIXO
−
Coloca a quarta linha da matriz no nível ALTO
−
Verifica as entradas 1 a 6, acionando
respectivamente as teclas 19 a 24
−
Coloca a quarta linha da matriz no nível BAIXO
−
Coloca a quinta linha da matriz no nível ALTO
−
Verifica as entradas 1 a 6, acionando
respectivamente as teclas 25 a 30
−
Coloca a quinta linha da matriz no nível BAIXO
−
Coloca a sexta linha da matriz no nível ALTO
−
Verifica as entradas 1 a 6, acionando
respectivamente as teclas 31 a 36
−
Coloca a sexta linha da matriz no nível BAIXO
−
Verifica se nenhuma tecla foi acionada, no caso
enviando AllNotesOff
−
Executa novamente do início (loop)
Fig. 5 – Matriz de varredura das teclas
D. Teclas
As teclas devem detectar o toque de um dedo nú, isto é,
sem luvas ou outros materiais, e sem aparatos de auxílio. A
forma optada foi detectar eletricamente através da corrente
injetada pelo corpo do músico (conforme o princípio de
funcionamento já explicado) na base de um transistor,
amplificada e convertida para digital.
E. Requisitos de Software
Considerando que cada tecla usa um bit para armazenar
seu estado (ligada/desligada), e que um registrador
normalmente contém 8 bits, são necessários 5 registradores
(bytes) de memória para armazenar o estado das teclas.
Conforme mencionado, o tempo disponível para toda a
rotina é 960 µs. São ao todo 36 teclas, e como caso nenhuma
tecla esteja ativa é necessário enviar uma mensagem
(AllNotesOff), temos 37 procedimentos de rotina, o que
significa que o software dispõe de aproximadamente 26 µs
para cada procedimento.
Onde “acionar” uma tecla significa:
−
Verifica se a entrada está diferente do valor
memorizado para ela. Caso esteja:
−
Se tiver mudado de BAIXO para ALTO, envia
mensagem NoteOn
−
Se tiver mudado de ALTO para BAIXO, envia
mensagem NoteOff
−
Em ambas as mudanças, salva o novo valor na
memória
1) Mensagens
O envio de mensagens MIDI é feito utilizando a UART
interna do microcontrolador. De acordo com o protocolo
MIDI 1.0, as mensagens são traduzidas numericamente em
dois ou três bytes da seguinte forma (para o canal 0):
F. Requisitos de Hardware
Como o protocolo MIDI é serial assíncrono, o controlador
deve dispor de uma UART (Universal Asynchronous
Receiver/Transmitter – Receptor/Transmissor Assíncrono
Universal), capaz de transmitir a um baud rate de 31250 bps.
4
−
NoteOn: 144, Número da nota, Velocidade
pressionada
−
NoteOff: 128, Número da nota, Velocidade liberada
−
AllNotesOff: 176, 123
H. Circuito
A entrada do circuito é a corrente injetada pelo corpo do
músico, ou seja, uma onda senoidal deformada, em 60 Hz,
gerando uma tensão variável com média pico-a-pico em
torno de 5 V. A onda está presente quando a tecla está
pressionada, e ausente caso contrário – ou seja, uma
modulação em amplitude com envoltória digital. Essa
informação é amplificada, convertida para digital, organizada
na matriz de varredura da Fig. 5, e lida por um
microcontrolador. Este por fim envia as mensagens seriais
correspondentes de acordo com a lógica já apresentada.
A amplificação e conversão para digital são feitas de
forma individual para cada tecla, de forma que aqui será
apresentado somente o circuito de uma única tecla.
O método escolhido para converter o sinal para digital foi
retificar através de um retificador de meia onda, amplificar o
valor retificado e aplicar um filtro passa-baixa assimétrico
[4]. O circuito é mostrado na Fig. 6.
Para um instrumento que não é sensível à pressão do
toque, as Velocidades não são relevantes, logo sempre será
enviado o valor de velocidade máxima (127).
2) Notas
Para o número da nota, o padrão MIDI estabelece a
relação indicada na Tabela I:
Tabela I – Números das notas no padrão MIDI
Oitava
1
2
3
4
5
6
7
Dó
24
36
48
60
72
84
96
Dó#
25
37
49
61
73
85
97
Ré
26
38
50
62
74
86
98
Ré#
27
39
51
63
75
87
99
Mi
28
40
52
64
76
88
100
Fá
29
41
53
65
77
89
101
Fá#
30
42
54
66
78
90
102
Sol
31
43
55
67
79
91
103
Sol#
32
44
56
68
80
92
104
Lá
33
45
57
69
81
93
105
Lá#
34
46
58
70
82
94
106
Si
35
47
59
71
83
95
107
A tecla central de um piano é o dó da oitava 4 [1], logo as
oitavas escolhidas para este controlador foram as oitavas 3, 4
e 5. A correspondência das teclas e números de nota passa a
ser conforme a Tabela II:
Tabela II – Correspondência entre as teclas e as notas
Tecla
Nota
Tecla
Nota
1
48
19
66
2
49
20
67
3
50
21
68
4
51
22
69
5
52
23
70
6
53
24
71
7
54
25
72
8
55
26
73
9
56
27
74
10
57
28
75
11
58
29
76
12
59
30
77
13
60
31
78
14
61
32
79
15
62
33
80
16
63
34
81
17
64
35
82
18
65
36
83
Fig. 6 – Circuito de uma tecla, dividido em quatro etapas
O circuito é composto de quatro etapas, indicadas na
figura com as letras a a d.
a) Redutor de sensibilidade
Se a tecla for muito sensível, a mera proximidade do
corpo do músico (por exemplo, a mão inteira passando por
cima da tecla) pode disparar uma nota. Assim, um resistor
R1 é necessário para drenar corrente e reduzir a sensibilidade
de forma que apenas o toque dispare a nota. Como a corrente
de entrada é totalmente empírica, R1 também é estritamente
experimental. O valor 100kΩ mostrou boa estabilidade. A
tensão no ponto V1 da Fig. 6 é a tensão de entrada, mostrada
na Fig. 2.
b) Primeiro estágio transistorizado - Q1
Nessa etapa, três funções são realizadas. Em primeiro
lugar, a junção base-emissor opera como um diodo direto,
realizando a função de retificador de meia onda. Em segundo
lugar, a tensão mínima exigida pela junção para que o
transistor entre em condução (tipicamente 0,7 V) evita que
pequenas tensões vindas de interferências ativem o circuito.
Como o emissor deste transistor está diretamente na base de
5
outro transistor Q2 (com emissor aterrado), a tensão de duas
junções deve ser atingida para o disparo. Ou seja, a tecla
deve receber uma tensão de 1,4 V para ser acionada. Esse
valor filtra as interferências presentes nos testes, e está
seguramente abaixo do valor esperado com o toque do
músico (5 V). Em terceiro lugar, essa etapa é o primeiro
estágio de amplificação, na configuração coletor-comum,
amplificando a corrente. A tensão após essa etapa (indicada
na Fig. 6 pelo ponto V2), ou seja, após a barreira de 1,4V e
retificada, é mostrada na Fig. 7.
d) Filtro
Para converter a onda quadrada num nível lógico, foi
utilizado um capacitor, criando um delay no efeito pull-up de
R3 e formando com ele um filtro passa-baixa truncando o
valor DC. Quando Q2 está cortado (ausência de sinal de
entrada ou semi-ciclo negativo do sinal de entrada), R3
lentamente carrega o capacitor C1 até o nível lógico alto.
Quando Q2 conduz, C1 é descarregado instantaneamente.
Sendo os tempos de carga e descarga assimétricos (com
dominância da descarga), com o aumento da freqüência o
capacitor tende ao estado descarregado, criando um nível
lógico baixo (com ripple), conforme Fig. 9.
Fig. 7 – Tensão no ponto V2 da Fig. 6, após retificador de meia
onda
Fig. 9 – Tensão no ponto V3 da Fig. 6 na presença de sinal de
entrada, com o capacitor C1
c) Segundo estágio transistorizado – Q2
Após a retificação e amplificação de corrente, o segundo
estágio amplifica a tensão. A carga no emissor de Q1 afeta
diretamente a tensão exigida na base deste, logo é importante
que essa carga seja a menor e mais estável possível. Portanto,
Q2 está na configuração emissor comum, mantendo a tensão
de emissor de Q1 fixa, no valor da tensão base-emissor de
Q2. Para manter baixa a carga de emissor de Q1, a limitação
de corrente na base de Q2 (que é o emissor de Q1) foi
rebatida para o coletor de Q1, na forma de um resistor R2
(cujo valor não é crítico). A corrente de base de Q2 vem de
um estágio com alta corrente de saída, portando ele estará
sempre saturado ou em corte. Assim, como o resistor de
coletor de Q2, R3, desempenha nesta etapa o papel de
resistor de pull-up, a saída é uma onda quadrada na presença
da entrada senoidal distorcida (conforme Fig. 8), e a tensão
de alimentação na ausência de sinal de entrada.
O sinal de saída do filtro será a entrada de uma porta
lógica (conforme explicado posteriormente), em cujo
datasheet [5] consta que a tensão máxima do nível lógico
baixo é 0,8 V, logo todo o ripple deve estar contido entre 0 V
e 0,8 V. Assim, os valores de R3 e C1 devem ser escolhidos
de forma que na presença do sinal de entrada, 60Hz, o
capacitor consiga ser carregado com um máximo de 0,8 V.
Para uma freqüência f = 60 Hz, um período T vale 0.0167
segundos. O capacitor se carrega somente em metade do
ciclo, logo o tempo t a considerar é T / 2 = 0,00833
segundos.
Para um circuito RC, temos a curva de carga conforme a
Fig. 10, onde τ = RC.
Fig. 8 – Tensão no ponto V3 da Fig. 6 na presença de sinal de
entrada, quando não existe o capacitor C1 (mostrado com nível DC
filtrado)
Fig. 10 – Carga de um capacitor num circuito RC
6
Por simplificação, vamos assumir que até o tempo τ a
curva seja aproximadamente linear. Nesse caso, se após RC
segundos a curva atinge 1-(1/e) da tensão de alimentação
Vcc, podemos considerar a reta:
(1)
Que equivale a:
(2)
Fig. 11 – Multiplexação das teclas usando varredura em matriz.
As saídas são as linhas varridas e as entradas são os valores lidos
em cada varredura.
Onde Vc(t) é a tensão no capacitor e t o tempo decorrido
em segundos. Devido a restrições nominais do
microcontrolador, a tensão de alimentação do circuito é 5 V.
O Vc a ser atingido é 0,8 V, e t é o tempo já calculado
0,00833. Logo, o valor mínimo admissível para RC - de
acordo com a equação (2) - é 0,03291, valores maiores
indicando um ripple menor (o que é desejável). Adotando
uma margem de segurança de três vezes, temos um valor
desejável para a constante RC de 0,1.
Dentre as várias combinações possíveis para esse valor,
foram escolhidos os valores R3 = 10 kΩ e C1 = 10 uF. Essa
escolha tornou conveniente escolher o valor R2 também 10
kΩ (visto que ele não é crítico), visando a simplificação ao
adquirir material em caso de manufatura.
Ainda de acordo com o datasheet [5] da porta lógica, a
tensão mínima do nível alto é 2 V. Isso significa que - com
esses valores de R3 e C1 - após cessar o toque, a tecla levará
aproximadamente 0,06 segundos para ser considerada
“solta”.
A Fig. 12 mostra o circuito completo com detalhes de
barramento das duas primeiras teclas dos dois primeiros
blocos, desde o contato aberto onde o músico toca, até o
microcontrolador.
Após as quatro etapas mencionadas, o sinal lógico com
ripple passa por uma porta lógica, para multiplexação
conforme a matriz da figura 5. A alternativa adotada para
isso foi o uso de seis circuitos integrados (CIs) 74LS05, cada
um contendo 6 buffers inversores com saída em coletor
aberto, e as saídas ligadas em seis barramentos de seis saídas
cada, com pull-ups. Os coletores abertos são integrados no
próprio 74LS05, e os resistores de pull-up são integrados no
próprio microcontrolador. Durante a varredura, cada linha
corresponde a um bloco de 6 buffers, e a ativação da
varredura é feita pela própria alimentação do CI. Assim, os
únicos elementos da fase de multiplexação são os próprios
CIs 74LS05 e o microcontrolador.
Na Fig. 11, dois dos seis blocos são mostrados. As saídas
são relacionadas com as linhas varridas uma a uma, ou seja,
durante a varredura os CIs são alimentados um a um
(colocando as saídas em nível alto). Quando o CI é
isoladamente alimentado, a informação disponível nos seis
barramentos são as saídas daquele bloco. Cada barramento N
compreende os N-ésimos buffers de todos os blocos.
Fig. 12 – Circuito completo de 4 das 36 teclas
A Fig. 13 mostra a versão implementada da matriz
conceitual mostrada na Fig. 5, onde os números representam
as saídas dos circuitos das respectivas teclas.
Fig. 13 – Matriz de varredura, com as teclas numeradas
7
Para o microcontrolador 16F628 – que possui duas portas
de 8 bits, A e B - as entradas foram organizadas em 6 dos 8
bits da porta B, pois possui pull-ups internos. As saídas
ficaram, portanto, na porta A.
De acordo com a especificação MIDI, a entrada do
módulo é optoacoplada, logo o que a saída MIDI do circuito
deve fazer é alimentar um LED padrão infravermelho. Dessa
forma, a saída USART do microcontrolador é ligada ao
conector de saída MIDI através de uma resistência em série.
IV. CONCLUSÕES
Com a simplicidade do circuito e das teclas, este projeto
tem grande potencial visando um público alvo menos
explorado pelos fabricantes de equipamentos MIDI: músicos
iniciantes ou de baixa renda, ou seja, que não querem ou não
podem investir num equipamento de alto custo.
Com o apelo inovativo, esse instrumento pode ser incluído
na categoria de música experimental, um estilo conhecido
pela irreverência e criatividade. Mesmo outros estilos de
música podem ser tocados neste controlador, de forma que
quaisquer conjuntos interessados na inovação podem
contemplar o uso deste instrumento.
Estudantes de teoria musical, que não são intérpretes de
um instrumento específico mas que necessitam de um
instrumento qualquer para o estudo das escalas e princípios
musicais, poderão usufruir da portabilidade deste
controlador, podendo transportar de casa até o local de
estudo. Desse ponto de vista, uma escola de música que já
disponha de computadores pode reduzir custos ao utilizar
este controlador, bastando instalar softwares sintetizadores
nos computadores que já possui e utilizar um adaptador para
MIDI.
Compositores também verão utilidade no tamanho
reduzido, caso componham em suas residências dividindo
espaço com outros afazeres.
É necessário observar que o circuito é sensível e
imprevisível em situações extremas, como locais com campo
eletromagnético atipicamente forte ou rede elétrica pouco
presente. Uma grande conclusão, portanto, é que esse
instrumento é de uso essencialmente urbano, e não teria bom
desempenho, por exemplo, num acampamento (ainda que
possua alimentação disponível, ela não seria abundante ao
redor do músico. Talvez, a menos, que o músico sentasse
imediatamente ao lado de outros equipamentos. Não houve
oportunidade para tais testes). Caso exista mercado
específico para um instrumento semelhante que possa ser
usado em regiões sem rede abundante, bastaria substituir o
circuito da Fig. 6 por uma tecnologia que utilize outro
princípio de funcionamento (como por exemplo sensores
capacitivos).
I. Testes
O princípio de funcionamento levanta uma restrição ao
instrumento: estar sempre próximo à rede elétrica. Medições
do toque do músico sem a presença de rede elétrica, usando
osciloscópio a bateria, mostraram completa ausência de sinal.
No entanto, a restrição não constitui um problema crítico
para este projeto, pois os equipamentos de áudio são
geralmente alimentados pela rede, e na ausência de rede
elétrica, não será possível ligar nem sequer o módulo
sintetizador.
Nos circuitos das teclas, o capacitor de filtragem causa um
atraso de 0,06 segundos na detecção de que uma tecla foi
solta. Um novo toque antes desse tempo causará a impressão
da tecla não ter sido solta, limitando o equipamento a um
máximo de aproximadamente 15 repetições da mesma nota
por segundo. No entanto, um tremolo - que em música é a
rápida repetição de uma mesma nota – é considerado a partir
de 8 notas por segundo, logo a limitação não causa qualquer
prejuízo na execução de uma música.
O tempo total levado pelo microcontrolador para executar
a rotina de varredura foi medido através do espaçamento no
tempo entre dois pulsos de varredura na mesma linha – isto
é, o tempo entre varrer uma linha, e varrê-la novamente. Essa
medição foi feita diretamente na saída lógica que alimenta
um dos CIs 74LS05, e mostrada na Fig. 14. Pela leitura
constata-se que o tempo total de varredura é inferior a 700µs
- ou seja, perfeitamente dentro do limite estabelecido. Assim,
a velocidade de clock foi satisfatória.
REFERÊNCIAS
[1] MED, Buhumil. Teoria da Música. 3ª ed. Brasília:
MusiMed, 1982.
[2] MIDI MANUFACTURERS ASSOCIATION. MIDI
Tech Specs & Info. Disponível em:
<http://www.midi.org/techspecs/index.php>.
Acesso em: 14 Agosto 2009.
[3] GIESZCZYKIEWICZ, Filip. MIDI. Disponível em:
<http://www.repairfaq.org/filipg/LINK/F_MIDI.html>.
Acesso em: 14 Agosto 2009.
[4] SEDRA, A. S.; SMITH, K. C. Microeletrônica, 4ª ed.
São Paulo: MAKRON Books, 2000.
Disponível
em:
[5] Motorola.
SN74LS05D.
<http://www.datasheetcatalog.org/datasheet/motorola/S
N74LS05D.pdf>. Acesso em: 16 Novembro 2009.
[6] Introduction to the Hammond Novachord.
Disponível em: <http://www.novachord.com>. Acesso
em: 9 Dezembro 2009
Fig. 14 – Pulsos de varredura de uma das saídas da matriz
Uma grande dificuldade encontrada na execução deste
projeto foi a altíssima sensibilidade a fatores externos,
devido à própria imprevisibilidade do princípio de
funcionamento. O dimensionamento empírico da redução de
sensibilidade causa certa dependência a fatores de ambiente.
A amplificação em dois estágios foi uma solução eficaz e
torna o sinal estável, mas apenas dentro de condições médias.
8
DADOS BIOGRÁFICOS
compositor e intérprete de diversos instrumentos. Teve
composições para piano registradas na Biblioteca Nacional
em 2009.
Fernando Cosentino, nascido em 04/06/1984 em Linhares
(Espírito Santo), é Graduando do Curso de Engenharia
Elétrica da Universidade Federal do Paraná. É músico,
9
Download