Handmades</center>
 
*
Bem-vindo, Visitante. Por favor faça o Login ou Registro. 22 de Novembro de 2024, as 20:21:46


Login com nome de usuário, senha e duração da sessão


Páginas:  [1] 2   Ir para o Fundo
  Imprimir  
Autor Tópico: Proposta de um afinador  (Lida 21105 vezes)
Dexter
Visitante
« : 07 de Agosto de 2012, as 20:25:20 »

Hoje eu comprei um microcontrolador para iniciar um projeto de um afinador de guitarra (talvez outros intrumentos).

Basicamente haverá seis LEDs (para cada corda) ou sete (para escala cromática), um LED para corda abaixo da afinação, um LED para corda afinada e um LED para corda acima da afinação.
Um dos leds de notaS deve ascender se a corda tocada estiver produzindo uma certa faixa de frequência, como esquematizado no exemplo abaixo:

Para ascender o LED de nota "F", a frequência da corda deve estar entre "limite inferior" e "limite superior".

Nota "E"         freq. f1

limite inferior de "F"   (f1+f2)/2
Nota "F"         freq. f2
limite superior de "F"   (f2+f3)/2

Nota "G"         freq. f3

O objetivo deste projeto é incorporá-lo em um mini amp à bateria.

O microcontrolador é um PIC16F630 que custou a exorbitante quantia de R$5,50 e que eu acho que dá conta do recado.

Tenho nenhuma experiência como guitarrista, por isso afino o instrumento de acordo com os valores padrão do afinador que possuo. A idéia original do projeto seria fazer a mesma coisa (1ª corda "E", 2ª corda "B", ...) no entanto, sei que tem músicos que afinam os intrumentos em escala diferente para produzir um som desejado (drop "D", por exemplo) por isso pensei em afinação com escala cromática. Algo parecido com o Micro Crunch da Orange.

Alguém tem sugestões, críticas, comentários? Considerando que o projeto deve priorizar a simplicidade.

PS.: desconcidere os termos técnicos incorretos se houver algum.
Registrado
JoaoVarios
Visitante
« Responder #1 : 07 de Agosto de 2012, as 20:54:20 »

Dexter, você já deu uma olhada no tópico Afinador Diy? Pode ser que tenha alguma utilidade.
Registrado
Dexter
Visitante
« Responder #2 : 07 de Agosto de 2012, as 21:07:08 »

JoaoVarios,

A ideia é algo parecido com este afinador, diga-se de passagem vocês estão avançados em relação ao projeto, agradeço pela dica, mas penso em algo que fique em torno de R$12,00 e que pode ser adaptado a um setup de pedais ou amp, e que tenha baixo consumo.

Vou estudar este projeto e referenciá-lo para o propósito que estou tentando apresentar.

Muito obrigado pela contribuição.
Registrado
Adiel
DIY Freak
******
Offline Offline

Sexo: Masculino
Mensagens: 5.156

Obrigado
-Dado: 1051
-Recebido: 837


Resistance is futile, if <1R


WWW
« Responder #3 : 07 de Agosto de 2012, as 21:27:10 »

Dexter, parabéns pela iniciativa!  Confesso que eu não faria uma montagem dessas, se não por puro aprendizado, pois há bons afinadores muito baratos no mercado, atualmente.    Bravo
Registrado

felfoldi
Visitante
« Responder #4 : 07 de Agosto de 2012, as 22:10:08 »

Já trabalha com microcontroladores?  Vai ser uma boa pra treinar a utilização da entrada analógica do PIC. Ah, e cuidado pra não meter 9V (como na maioria dos pedais) no PIC, senão pode dar adeus ao bichinho.
Registrado
Dexter
Visitante
« Responder #5 : 07 de Agosto de 2012, as 23:06:38 »

Sim felfoldi, trabalho com a linha AVR mas para facilitar para o pessoal procurei o mais barato uC da Microchip pois podem ser mais facilmente encontrados.

Na verdade vou utilizar o contador externo, pois o sinal de entrada será transformado em digital antes de chegar no uC, a quantidade de pulsos desta entrada será avaliada a cada 1 ou 0,5 s, como precisarei de no máximo 10 leds devo conectá-los em forma de matriz nos pinos do uC, sendo necessários 7 pinos (3X3, +1). Você está certo, a alimentação é de 9v, mas antes de passar pelo regulador de tensão (5v).

Adiel,

Andei pesquisando e você está correto, achei afinadores por R$14,00 (sem o cálculo do frete), este projeto tem o objetivo de ser incorporado em outro equipamento, no meu caso um mini amp. Posso demorar a conclusão por questão de disponibilidade de tempo, pois acho que a complexidade não seja o ponto crítico.

Valeu, pessoal
Registrado
gugarn
Freqüente
**
Offline Offline

Sexo: Masculino
Mensagens: 252

Obrigado
-Dado: 8
-Recebido: 223



« Responder #6 : 08 de Agosto de 2012, as 09:46:44 »

Parabéns pela iniciativa.
Eu já construí um afinador automático usando o Matlab (ele afinava a corda de um protótipo de guitarra sozinho). Fiz isso para uma disciplina do doutorado.

O que aprendi com esse trabalho foi que para o afinador ter uma boa resposta você deve considerar a vibração das harmônicas. Ou seja, digamos que estamos interessados em afinar o LÁ (220hz). Quando você tocar na guitarra, e em tempo real calcular o fft (fast fourrier transform), em alguns momentos a frequência fundamental (A frequência de maior magnitude) vai soar como sendo 220hz, ora 110hz, e outras vezes 440hz. Ou seja, dependendo do momento da vibração, da força aplicada, posição da palheta, a fundamental muda um pouco e é isso que causa a instabilidade na maioria dos afinadores. Assim sendo quando implementei o meu fiz uma tabela onde toda nota tem associada todas as frequências que representam aquela nota. Algo do tipo:

A --> 55Hz/110Hz/220Hz/440Hz/880Hz

E a cada interação do calculo do fft verificava o erro em relação ao valor mais próximo, ou seja, se naquele momento a fundamental estava sendo 60Hz nesse caso o erro era de apenas 5hz e não de 160 como seria se comparasse com 220hz. Isso deixou o afinador super estável. Algo como o gStrings para Android que também é muito bom.

Abraços!

« Última modificação: 08 de Agosto de 2012, as 09:48:24 por gugarn » Registrado
Barech
Visitante
« Responder #7 : 08 de Agosto de 2012, as 11:39:13 »

Boa sorte no seu preojeto cara
Registrado
Marcos Câmara
Iniciante
*
Offline Offline

Sexo: Masculino
Mensagens: 5

Obrigado
-Dado: 57
-Recebido: 218


Mateus 11:28


« Responder #8 : 08 de Agosto de 2012, as 16:02:02 »

Parabéns pela iniciativa.
Eu já construí um afinador automático usando o Matlab (ele afinava a corda de um protótipo de guitarra sozinho). Fiz isso para uma disciplina do doutorado.

O que aprendi com esse trabalho foi que para o afinador ter uma boa resposta você deve considerar a vibração das harmônicas. Ou seja, digamos que estamos interessados em afinar o LÁ (220hz). Quando você tocar na guitarra, e em tempo real calcular o fft (fast fourrier transform), em alguns momentos a frequência fundamental (A frequência de maior magnitude) vai soar como sendo 220hz, ora 110hz, e outras vezes 440hz. Ou seja, dependendo do momento da vibração, da força aplicada, posição da palheta, a fundamental muda um pouco e é isso que causa a instabilidade na maioria dos afinadores. Assim sendo quando implementei o meu fiz uma tabela onde toda nota tem associada todas as frequências que representam aquela nota. Algo do tipo:

A --> 55Hz/110Hz/220Hz/440Hz/880Hz

E a cada interação do calculo do fft verificava o erro em relação ao valor mais próximo, ou seja, se naquele momento a fundamental estava sendo 60Hz nesse caso o erro era de apenas 5hz e não de 160 como seria se comparasse com 220hz. Isso deixou o afinador super estável. Algo como o gStrings para Android que também é muito bom.

Abraços!



Gugarn,

abandonei o projeto abaixo justamente pela instabilidade. Você conhece esse projeto?

http://www.handmades.com.br/forum/index.php?topic=3447.0
Registrado
Lamer
Handmaker
****
Offline Offline

Sexo: Masculino
Mensagens: 1.629

Obrigado
-Dado: 79
-Recebido: 105


« Responder #9 : 08 de Agosto de 2012, as 17:12:12 »

Gugarn, você chegou a publicar este trabalho em algum lugar, se possível gostaria de ler este trabalho, sempre soube que o Matilab é uma ferramenta fabulosa, e tenho sempre a curiosidade de conhecê-lo mais.

Tenho um amigo que usa o Matilab para medir a vibração através de imagens, é fantástico o resultado.

Abraço!
Registrado
gugarn
Freqüente
**
Offline Offline

Sexo: Masculino
Mensagens: 252

Obrigado
-Dado: 8
-Recebido: 223



« Responder #10 : 08 de Agosto de 2012, as 17:30:35 »

Foi um trabalho de uma disciplina, não foi para publicação. Mas no fim gerei um artigo para a disciplina.
O trabalho ainda tinha o reconhecimento via comando de voz _. Foi um sucesso quando apresentei! Isso foi para uma disciplina chamada Redes Neurais e por isso o trabalho usou essa ferramenta. No entanto para o caso de um afinador embarcado em um PIC o melhor mesmo é implementar o FFT padrão mesmo o qual já tem implementação muito conhecida.

[DOWNLOAD]
http://www.dca.ufrn.br/~guga/downloads/artigo-final-AfinadorNeural.pdf

Agora a afinação foi só uma parte do trabalho e no artigo eu não entro em detalhes da lógica de programação. Mas eu tenho aqui se der uma fuçada eu encontro!

Citar
Gugarn,

abandonei o projeto abaixo justamente pela instabilidade. Você conhece esse projeto?

http://www.handmades.com.br/forum/index.php?topic=3447.0

Não conheço!! Vou dar uma sacada!
« Última modificação: 08 de Agosto de 2012, as 17:41:06 por gugarn » Registrado
Lamer
Handmaker
****
Offline Offline

Sexo: Masculino
Mensagens: 1.629

Obrigado
-Dado: 79
-Recebido: 105


« Responder #11 : 08 de Agosto de 2012, as 17:39:00 »

Vou lê-lo com mais calma.. muito obrigado!

Abraço.
Registrado
Dexter
Visitante
« Responder #12 : 08 de Agosto de 2012, as 17:42:12 »

Obrigado pela dica Gugarn, realmente a existência de harmônicos deve ser considerada. Pelo que eu entendo deste fenômeno a amplitude do 2º harmônico é menor que a amplitude da fundamental, a do 3º menor que a do 2º e assim por diante. Já no projeto a frequência analisada deve ser saturada para se ter algo próximo de um sinal digital, logo teremos uma frequência com uma grande quantidade de harmônicos (teoricamente tendendo a infinito), mas é apropriada para a utilização nesse caso. Eu estaria certo em meu raciocínio ou eu deixei de considerar alguma coisa? Considerando que a região da frequência a ser analisada pelo uC será a borda de descida ou de subida.

A propósito, gostei de ver seu trabalho, a figura tem alguns neurônios ou é impressão minha? Parabéns.

Marcos Câmara, acredito que uma discussão sobre os problemas do projeto possa render boas soluções pois temos membros neste fórum com conhecimentos dos mais diversos, se você encontrou dificuldades para a construção do afinador então o seu relato é muito importante, um pouco de experiência pode ser melhor que muita teoria.

Lamer, apesar do comentário não ter sido endereçado a mim, tenho necessidade de usar o Matlab e você ficaria surpreso pela quantidade de ferramentas que este software possui, são muitas funções e algumas de altíssima complexidade!!

Valeu!
Registrado
gugarn
Freqüente
**
Offline Offline

Sexo: Masculino
Mensagens: 252

Obrigado
-Dado: 8
-Recebido: 223



« Responder #13 : 09 de Agosto de 2012, as 00:34:43 »

Dexter,

São neurônios sim. Era para um trabalho de redes neurais. As redes neurais são uma ferramenta matemática muito interessante quando não se tem um modelo matemático bem definido para um problema.

Sobre o que tinha falado das harmonicas, Na verdade eu posso ter me expressado mal. A frequencia fundamental por definição é a frequência de maior magnitude. A minha observação é que normalmente o cálculo de frequência é feito de maneira janelada. Ou seja, a cada X amostras (Que tem que ser um numero em potencia de 2 para o caso de FFT) o cálculo é realizado e verificado a fundamental. No entanto, entre janelas distintas isso pode variar. Por exemplo, durante o ataque à corda as frequência mais altas daquela nota soam como fundamental e a medida que a corda vai diminuindo sua vibração outras frequências que antes eram harmônicas, tornam-se fundamental naquela janela! Wink

Então o algoritmo tem que prever o salto de fundamentais para que fique bem estável! Eu tenho um código no matlab disso. Se alguém tiver interesse posso repassar, funciona como um afinador que identifica automaticamente a nota e mostra o erro para ficar perfeitamente afinado.
Registrado
Dexter
Visitante
« Responder #14 : 09 de Agosto de 2012, as 19:11:55 »

Gurgarn, sobre a questão dos harmônicos, pelo que você já observou em seu trabalho é que a instabilidade ocorre depois de algum tempo ao se tocar uma corda, ou seja, em um período inicial prevalece a fundamental, depois os harmônicos interferem de maneira prejudicial (para o afinador) provocando a instabilidade. Você, com a experiência em seu projeto, acha que a análise somente deste período inicial seria suficiente para contornar o problema com os harmônicos?

-----
Caminhando com o projeto! Já realizei algumas rotinas no projeto, ainda falta um bocado até chegar em um ponto de realizar testes práticos, mesmo com variáveis difíceis de isolar espero chegar à um resultado viável.

Continuo aguardando sugestões e comentários.
« Última modificação: 11 de Agosto de 2012, as 00:26:27 por Dexter » Registrado
Páginas:  [1] 2   Ir para o Topo
  Imprimir  
 
Ir para:  


Powered by MySQL Powered by PHP Powered by SMF 1.1.21 | SMF © 2006-2009, Simple Machines

XHTML 1.0 Válido! CSS Válido! Dilber MC Theme by HarzeM
Página criada em 0.042 segundos com 23 procedimentos.
SimplePortal 2.3.3 © 2008-2010, SimplePortal