• Nenhum resultado encontrado

Detalhamento da arquitetura de hardware

No documento GABRIEL YSHAY DRUM MACHINE DIGITAL (páginas 41-47)

No diagrama acima podemos ver 6 blocos: A interface A, interface B, Teensy 3.6, o DAC e o computador.

Figura 20: Diagrama da arquitetura do hardware

4.3.1

Interface A

A interface A ´e respons´avel por controlar e refletir a sequencia em que cada instru- mento ´e tocado, permitindo o usu´ario programar os ritmos e o volume de cada nota, para cada um dos instrumentos. Os dados entrados s˜ao lidos pelo ATMega. Esta interface foi projetada para ser alimentada com tens˜ao de 5v, por ser compat´ıvel com a interface do ATMega sem nenhum tipo de transforma¸c˜ao.

4.3.2

Interface B

A interface B ´e a respons´avel pela leitura e feedback dos parˆametros de s´ıntese de ´

audio, como os parˆametros analisados na sec¸c˜ao anterior, os coeficientes da distor¸c˜ao e parˆametros de intera¸c˜ao com o computador. Esta interface foi projetada para ser alimen- tada com tens˜ao de 3.3V por ser compat´ıvel com a interface do Teensy, que a controla.

4.3.3

ATMega328p

O ATMega [28] ´e o microcontrolador respons´avel por guardar todos os dados sobre as sequˆencias em que cada instrumento ´e tocado, ler a interface, atualizar as sequˆencias e refletir as mudan¸cas destas na interface, por meio de LEDs pr´oximos os controles.

4.3.4

Teensy 3.6

O Teensy ´e a unidade central de processamento do projeto. Nele s˜ao executados os c´alculos necess´arios para a s´ıntese do ´audio, a leitura dos arquivos de ´audio quando necess´arios, a comunica¸c˜ao com o ATMega para obter os dados das sequˆencias em que os instrumentos s˜ao tocados e a comunica¸c˜ao de sa´ıda, tanto com o computador como com o DAC.

4.3.5

Computador

Apesar de n˜ao ser um componente interno ao sistema, o computador tem um papel essencial no projeto, uma vez que ele fornece o sinal de clock atrav´es da interface MIDI, para a sincronia da m´aquina. O computador tamb´em recebe informa¸c˜oes de quais notas devem ser tocadas em um instante, para que, caso o usu´ario deseje, a s´ıntese seja feita pelo computador e n˜ao usando os m´etodos embutidos na m´aquina.

Finalmente o computador recebe os sinais de ´audio j´a mixados e com os efeitos apli- cados, enxergando assim a m´aquina como uma interface de ´audio. Atrav´es da CLI de- senvolvida, o computador ainda pode ser usado para transmitir novos arquivos de ´audio (samples) para a mem´oria interna da m´aquina.

4.3.6

SGTL5000

Este componente ´e um DAC [29] de 16 bits/44100Hz. Sua comunica¸c˜ao com o pro- cessador se d´a por meio de I2S.

4.4

Interfaces

A figura acima mostra um diagrama das interfaces, dividido em 5 partes. As partes A, B, D e F fazem parte da interface A, sendo controladas pelo ATMega, enquanto as partes C e E fazem parte da interface B, sendo controladas pelo Teensy.

4.4.1

Projeto

As dimens˜oes foram determinadas por experimenta¸c˜ao, um primeiro prot´otipo flex´ıvel foi feito colocando todos os bot˜oes de controle do mesmo lado e todos os steps em uma ´

Figura 21: Interfaces

fosse muito maior que a altura, essa assimetria fazia o pre¸co de fabrica¸c˜ao aumentar consideravelmente. Assim optou-se por colocar os steps na mesma linha e dividir os controles globais em duas colunas, assim a interface se aproxima mais de um quadrado, barateando o custo sem comprometer a experiˆencia do usu´ario.

Os bot˜oes de cada instrumento, seus respectivos volumes e seus encoders de controle dos parˆametros ficam mais pr´oximos uns dos outros do que componentes semelhantes na mesma linha, fazendo com que o usu´ario perceba cada coluna como um grupo, o que representa melhor o modelo mental desejado para o instrumento.

4.4.2

Steps

Os steps s˜ao a parte principal da interface, pois com eles o usu´ario pode programar o ritmo a ser tocado. Existem 16 bot˜oes que representam uma barra, e usando o bot˜ao shift e um dos bot˜oes da interface F pode-se ir para outra p´agina representando um novo conjunto de steps. Prevemos para este projeto 4 p´aginas, representando at´e 4 barras de steps.

Com o bot˜ao de shift pode-se selecionar o tamanho da sequˆencia, para que ela tenha um n´umero de steps arbitr´ario. Cada instrumento tem a sua sequˆencia separada, dessa maneira se um instrumento tem a sequˆencia de um tamanho e outro tem uma sequˆencia cujo tamanho n˜ao ´e m´ultiplo ou divisor da sequˆencia do primeiro, dizemos que isso ´e uma sequˆencia polirr´ıtmica. Os tamanhos independentes possibilitam t´ecnicas musicais mais complexas que assumir tamanhos iguais pois desacoplam a sequencia de notas seguida

por cada instrumento.

4.4.3

Instrumentos

Os 8 bot˜oes ao topo da caixa representam cada um dos instrumentos, e somente um instrumento pode estar selecionado por vez. Quando um instrumento ´e selecionado sua sequˆencia ´e mostrada nos steps. H´a ainda um LED por bot˜ao para indicar qual o instrumento est´a atualmente selecionado.

4.4.4

Encoders

Para cada instrumento existe um encoder, que controla um dos parˆametros de s´ıntese especificados anteriormente. Quando o encoder ´e clicado o pr´oximo parˆametro ´e selecio- nado para edi¸c˜ao. Os parˆametros ser˜ao colocados em uma lista e quando chega-se ao fim da lista, volta para o ´ındice 0, tornando a navega¸c˜ao circular. Para melhorar a experiˆencia do usu´ario, o nome do parˆametro atualmente sendo modificado pelo encoder ´e mostrado no display com o valor atual.

4.4.5

Potenciˆometros

Cada instrumento tem um potenciˆometro, que este controla o volume de cada nota tocada pelo instrumento. Quando o som da pr´opria m´aquina ´e usada, tanto por s´ıntese quanto por samples de ´audio, o valor do potenciˆometro ´e normalizado em um valor de 0 a 1 e usado para multiplicar o volume do instrumento correspondente. Vale notar que n˜ao basta dividir o valor por 1024 (equivalente a 5v no ATMega), pois n˜ao refletir´ıamos a percep¸c˜ao da mudan¸ca que os seres humanos tˆem, mas sim dividir por 1024 e elevar o resultado ao quadrado para ter a representa¸c˜ao sonora correta. Quando o ´audio interno n˜ao ´e utilizado, isto ´e, envia-se as notas das sequˆencias por MIDI para o computador sintetizar, ent˜ao cada nota codifica o volume por meio do parˆametro MIDI velocity que vai de 0 a 127.

4.4.6

Interface de controle

Essa se¸c˜ao mistura elementos da interface A e da interface B. Vamos analisar os elementos de cima para baixo.

HPF, aplicado na sec¸c˜ao de efeitos da arquitetura de software. Isso tem grande utilidade para pessoas que est˜ao se apresentando com a m´aquina ao vivo pois pode-se controlar o efeito final em tempo real.

Depois temos o display. Este display pode ser de dimens˜oes reduzidas e n˜ao h´a necessidade de ser colorido. Sua fun¸c˜ao ´e mostrar qual parˆametro est´a sendo controlado naquele momento pelo usu´ario e seu valor correspondente.

Em seguida temos um encoder (similar aos encoders dos instrumentos). Este com- ponente ´e respons´avel por controlar os parˆametros globais de funcionamento do sistema: clock interno, salvar o estado atual e recuperar o estado atual, al´em dos parˆametros dos efeitos.

Os componentes restantes desta parte para baixo s˜ao os da Interface A. O primeiro bot˜ao ´e o shift, que pode ser usado para alterar o tamanho de uma sequˆencia pressionando- o ao mesmo tempo que ´ultimo bot˜ao correspondente ao ´ultimo step que o usu´ario deseja para a sequˆencia. Se combinado com o bot˜ao copy, todas as sequˆencias s˜ao apagadas.

O segundo bot˜ao ´e o copy, que ´e utilizado para copiar uma sequˆencia de um padr˜ao para outro.

O terceiro ´e o repeat que, quando apertado, o usu´ario pode pressionar o seletor de um instrumento e o instrumento ir´a tocar em todos os steps. Quando o bot˜ao do instrumento ´e solto a repeti¸c˜ao para, mas se o repeat for solto antes do instrumento, este fica repetindo at´e que o repeat seja pressionado novamente. O funcionamento da interface para o repeat parece confuso no in´ıcio, mas ´e conhcido pelos operadores deste tipo de m´aquina.

O ´ultimo bot˜ao ´e o start, que tem a fun¸c˜ao de alternar entre o padr˜ao atual e o padr˜ao sendo visualizado.

4.4.7

Patterns (padr˜oes) e p´aginas

Esta sec¸c˜ao tem duas fun¸c˜oes. A primeira ´e alternar entre Patterns. Existem qua- tro deles, e a m´aquina inicia executando o Pattern 0. Se outro pattern for apertado, o Pattern relativo ´e mostrado nos steps e disponibilizado para a edi¸c˜ao. Se esse Pattern ainda n˜ao est´a sendo reproduzido pela m´aquina, ´e necess´ario pressionar start para que isso aconte¸ca. Dessa maneira ´e poss´ıvel editar um Pattern enquanto o p´ublico ouve outro que j´a foi configurado.

A segunda fun¸c˜ao ´e chavear entre p´aginas. As sequˆencias tˆem por defini¸c˜ao 16 steps, o que cabe em uma p´agina, mas se o usu´ario preferir, com shift e um pattern ´e poss´ıvel navegar para outras p´aginas (at´e 4). Para selecionar um novo tamanho para a sequˆencia, basta pressionar shift, quando a sequˆencia ficar´a com o tamanho p´agina*4 + step.

No documento GABRIEL YSHAY DRUM MACHINE DIGITAL (páginas 41-47)

Documentos relacionados