AD com 5 digitos

Software e Hardware para uC PIC

Moderadores: andre_luis, 51, guest2003, Renie

AD com 5 digitos

Mensagempor cristian » 07 Jan 2010 07:55

galera estou fazendo uma balança para um cliente usando o pic16f877

mas percebir q a formula de conversao é para 4 digitos como seria para 5 digitos vou usar 10bits
cristian
Word
 
Mensagens: 570
Registrado em: 03 Nov 2006 08:15
Localização: serrinha-ba

Mensagempor fabim » 07 Jan 2010 08:11

hum..?

10bits = 1024 * resolução.
Qual seria a resolução ?
2.5V / 1024 ?
5V / 1024 ?

Se tem apenas 10 bits, 1024 valores como pode ter 5 digitos reais, e não ficticios para calculos ?

Isso se remete a step V/Bit.

Assim ó.
2.5Vref / 1024 = 2.44140625mV por 1 no adc, ou seja o peso binario.

516 por exemplo * 2.44mV = 1,25904
1 volt, e duzentos e cinquenta e nove mili volts.
Depois do 9 ja é microvolt.

A resolução é de 440uV, e se fizer calculos usando esses microvolt´s vai ficar variando muito o resultado.

Bom, mais se quer entender melhor como funciona o aumento dos digitos.

suponha que o seu Vref é de 2.5V. e 10 bits, lógico da o mesmo 2.44mV.
Veja.

isso pra CCS e mikroC e sei lá o que:

int resu,adc;
float dado_temp;

adc = adc_read(x);
dado_temp = adc * (25000.00 / 1024);
//// 25000/1024 = 24,4140625 <<
//// exemplo ADC = 512 * 24,4140625 =12500/// 5 digitos

resu = (unsigned int *)dado_temp;//pega inteiro de float, descarta mantissa

ou poderia simplesmente fazer assim.

int resu,adc;
float dado_temp;

adc = adc_read(x);
dado_temp = adc * (2500.00 / 1024);
resu = (unsigned int*)dado_temp * 10;

A resolução vai se manter igualzinha..

abraços, e boas 5 casas,
Quando puder aluga uma pra mim por uma semana, barretão ja ta aí..
Mano, ve só.
Sou responsável pelo que escrevo!!! E não pelo que você entende !!!
fabim
Dword
 
Mensagens: 5001
Registrado em: 16 Out 2006 10:18
Localização: aqui uái!!!?

Re: AD com 5 digitos

Mensagempor FabioSom12 » 07 Jan 2010 08:45

cristian escreveu:galera estou fazendo uma balança para um cliente usando o pic16f877

mas percebir q a formula de conversao é para 4 digitos como seria para 5 digitos vou usar 10bits


Que conversão é essa?
Posta a rotina para podrmos falar algo.
FabioSom12
Nibble
 
Mensagens: 94
Registrado em: 26 Nov 2009 14:01

Mensagempor Djalma Toledo Rodrigues » 07 Jan 2010 08:49

Use ADC 24 Bits. A Texas tem diversos

DJ
Avatar do usuário
Djalma Toledo Rodrigues
Dword
 
Mensagens: 2334
Registrado em: 03 Ago 2008 13:22

Mensagempor xultz » 07 Jan 2010 09:04

Balança com 10 bits? Esquece, nem balança de farmácia tem resolução tão baixa.
98% das vezes estou certo, e não estou nem aí pros outros 3%.
Avatar do usuário
xultz
Dword
 
Mensagens: 3001
Registrado em: 13 Out 2006 18:41
Localização: Curitiba

Mensagempor msamsoniuk » 07 Jan 2010 12:32

mas com 10 bits vc consegue apenas 3 digitos decimais!

veja as relacoes entre escalas 10**n e 2**m:

escala de 0 a 9 < 2**4 (16)
escala de 0 a 99 < 2**7 (128)
escala de 0 a 999 < 2**10 (1024)
escala de 0 a 9999 < 2**14 (16384)
escala de 0 a 99999 < 2**17 (131072)
escala de 0 a 999999 < 2**20 (1048576)
escala de 0 a 9999999 < 2**24 (16777216)
escala de 0 a 99999999 < 2**27 (134217728)

por exemplo, para 5 digitos de precisao, vc precisa de um AD de pelo menos 17 bits.
Avatar do usuário
msamsoniuk
Dword
 
Mensagens: 2935
Registrado em: 13 Out 2006 18:04

Mensagempor Djalma Toledo Rodrigues » 07 Jan 2010 12:44

Marcelo Samsoniuk escreveu:... por exemplo, para 5 digitos de precisao, vc precisa de um AD de pelo menos 17 bits.


Caro Marcelo Samsoniuk nunca confundas Precisão com Resolução

Para que haja Precisão é necessario Resolução mas, ter Resolução não é garantia de Precisão.

Eu indiquei os ADC de 24 Bits, ciente que excede mas, são os mais usados.

Abraço

DJ
Avatar do usuário
Djalma Toledo Rodrigues
Dword
 
Mensagens: 2334
Registrado em: 03 Ago 2008 13:22

Re: AD com 5 digitos

Mensagempor fabim » 07 Jan 2010 12:47

cristian escreveu:galera estou fazendo uma balança para um cliente usando o pic16f877

mas percebir q a formula de conversao é para 4 digitos como seria para 5 digitos vou usar 10bits


Agora vamos todos, ficarmos quietos e esperar ele explicar melhor.

Abraços
Mano, ve só.
Sou responsável pelo que escrevo!!! E não pelo que você entende !!!
fabim
Dword
 
Mensagens: 5001
Registrado em: 16 Out 2006 10:18
Localização: aqui uái!!!?

Mensagempor Djalma Toledo Rodrigues » 07 Jan 2010 12:54

<------------> Psiu! Silêncio no Forum.

rs

DJ
Avatar do usuário
Djalma Toledo Rodrigues
Dword
 
Mensagens: 2334
Registrado em: 03 Ago 2008 13:22

Mensagempor ze » 07 Jan 2010 14:44

cri cri cri cri cri cri cri cri cri cri cri cri cri cri cri cri cri cri cri cri cri cri cri cri cri cri cri cri cri cri
Editado pela última vez por ze em 08 Jan 2010 07:51, em um total de 1 vez.
Avatar do usuário
ze
Dword
 
Mensagens: 1655
Registrado em: 05 Jun 2007 14:32

Mensagempor msamsoniuk » 07 Jan 2010 18:32

eu nao falei isso, mas acho que eh possivel inferir, nao eh? ;D hehehe

Djalma Toledo Rodrigues escreveu:
Marcelo Samsoniuk escreveu:... por exemplo, para 5 digitos de precisao, vc precisa de um AD de pelo menos 17 bits.


Caro Marcelo Samsoniuk nunca confundas Precisão com Resolução

Para que haja Precisão é necessario Resolução mas, ter Resolução não é garantia de Precisão.

Eu indiquei os ADC de 24 Bits, ciente que excede mas, são os mais usados.

Abraço

DJ
Avatar do usuário
msamsoniuk
Dword
 
Mensagens: 2935
Registrado em: 13 Out 2006 18:04

Mensagempor cristian » 08 Jan 2010 22:33

galera éo seguinte vou usar um celula de carga de 5kg/20mv o cliente quer exibir de grama em grama e pediu 5 display para exibiçao

Fabim me explicou algumas coisas ...

entao achei este ci na microchip MCP3421 de 18bits custa 12,00 na farnell

o cliente quer q seja mostrado o seguite

4,9999 entederam se ele mudar a celula para 10kg vai ser

9,9999

o que vcs acham este ci resolve o problema vou utilizar CCS e pic16F877
cristian
Word
 
Mensagens: 570
Registrado em: 03 Nov 2006 08:15
Localização: serrinha-ba

Mensagempor Djalma Toledo Rodrigues » 08 Jan 2010 23:42

cristian escreveu:... vou usar um celula de carga de 5kg/20mv o cliente quer exibir de grama em grama e pediu 5 display para exibiçao


Esta claro que não é possível aplicar 20 mV no ADC. Há que tratar e amplificar esse sinal antes, através de Amplificador Operacional.

Sugiro colocar hum ou dois digitos a adicionais, apenas estes ficarão ocultos.

DJ
Avatar do usuário
Djalma Toledo Rodrigues
Dword
 
Mensagens: 2334
Registrado em: 03 Ago 2008 13:22

Mensagempor xultz » 09 Jan 2010 11:55

Cristian, vou te dar umas dicas, porque já fiz algumas balanças na vida e sei o sofrimento que é.
Primeiro: fazer balança é muito mais difícil do que parece. Sério. O buraco sempre é mais embaixo. Se a balança precisar de certificação no Inmetro, isso quer dizer que ela vai passar por ensaios de laboratório de estabilidade térmica, e pelo maldito ensaio de compatibilidade eletromagnético. É aí que o pesadelo começa.

Por isso, o projeto de uma balança deve ser muito, muito cauteloso. E se é tua primeira balança, ouça o conselho de quem já passou por isso.

A literatura mais F*** a respeito do assunto, que eu conheço, se chama Analog-Digital Conversion, publicado pela Analog Devices. Eu tenho o livro impresso, ganhei num seminário da Analog que um cara parecido com o papai noel e com mais de 30 anos de experiência no assunto deu. Procura por esse material no site da Analog, se eles não tiverem pdf solicita uma cópia ao distribuidor, mas é uma literatura muito boa e que me ajudou em vários momentos.

A primeira coisa que você precisa pensar é na resolução da tua balança. Teu cliente quer 5kg de fundo de escala, de grama em grama, isso quer dizer 5.000 divisões. O problema é que a célula de carga não pode ser de 5kg, porque se o cliente colocar uma melancia de 6kg em cima da célula, ela empena e não pesará direito nunca mais. Portanto, você vai ter que colocar uma célula mais tolerante, tipo 10kg. Só que dessa forma, metade da excursão de sinal da célula vai pro saco, ela aceita 10kg mais você vai colocar no máximo 5kg nela. Isso quer dizer, por exemplo, que se a célula é de 10mV/V, se alimentar com 5V ela gera 50mV no fundo de escala. Mas se ela for de 10kg, com 5kg vai gerar no máximo 25mV. O que quer dizer que precisa amplificar o sinal.
Aí você tem dua opções: a primeira é colocar na entrada um amplificador de instrumentação, a famosa linha INA da Burr Brown (que hoje pertence à Texas). Esses amplificadores são um xuxuzinho: pequenos e simples de usarem, basta um resistor prá determinar o ganho, ou melhor ainda, com ganho fixo. Se você puser um amplificador de ganho 100, na saída terá 2,5V para uma entrada de 25mV. Aqui vem uma dica que só se aprende se lascando com a balança: resistor varia o valor com temperatura. Tá, todo mundo sabe disso mas sempre se esquece, ou ignora, na hora do projeto. Só que uma variação de 0,1% num resistor que determina o ganho do amplificador de entrada pode avacalhar com a precisão da balança. Amplificador com ganho fixo são mais estáveis porque tem compesação de temperatura.
Depois de amplificar, tem que passar por um conversor AD.

Outra opção é usar um conversor AD com amplificador interno. O mais xuxu que já trabalhei é o AD7730, mas é uma facada. Tem uma versão mais em conta, que é o AD7718. Fora estes, a Cirrus tem uma linha muito usada por balanças, a Texas tem boas opções também. Porém acredite: o coração da balança (ou seja, a precisão e repetibilidade dela) está na célula de carga e no AD. Se tiver esta opção, não economize muito nestes dois itens e você será uma pessoa feliz.

Tá, e quantos bits deve ter o AD? Olha só, você precisa de 5000 divisões. Se tua célula de carga trabalhar na metade da capacidade no fundo de escala (por exemplo, a célula de 10kg que vai trabalhar no máximo com 5kg), é bom dobrar o número de divisões (isso é uma típica regra de polegar, ou rule of thumb, e não tenho embasamento teórico prá isso), então você precisa de 10.000 divisões. Só aí você já vai precisar de pelo menos 14 bits. Porém, tudo em volta tem ruído. E os últimos bits do AD fatalmente vai ter ruído. O ideal é ter bit prá jogar fora. Pelo menos uns 2. Assim, é mais confortável trabalhar com pelo menos 16 bits. 65.000 divisões, é bem mais confortável.

Esta é a primeira etapa da balança.
A segunda, que parece bobagem, é a fonte. A fonte é muito, muito importante, porque é dela que todas as referências são derivadas. Uma regra boa de se seguir é nunca jamais usar fonte chaveada em balança. Tem gente que consegue, mas é um pesadelo. A fotne chaveada tem ruídos sob forma de energia que a humanidade sequer conhece ainda (minha teoria), porque o treco é sinistro. Se possível, faça uma fonte com transformador, retificador, um baita capacitor e regulador série. É tosco, mas é confiável.

O roteamento é outro capítulo na novela, mas não falar do assunto agora, mas é muito importante cuidar dele, já tive comportamentos incrivelmente diferentes de um mesmo circuito para dois roteamentos de uma balança.

Por último, escolha o microcontrolador, o display e o teclado.
No firmware, existem milhares de macetes prá melhorar a balança, como implementar filtros de software, auto-zeramento da balança quando está ociosa, pré aquecimento da célula, threshold para indicar mudança no display, entre muitos outros. Mas isso também é assunto para mais prá frente.

De resto, boa sorte prá você.
98% das vezes estou certo, e não estou nem aí pros outros 3%.
Avatar do usuário
xultz
Dword
 
Mensagens: 3001
Registrado em: 13 Out 2006 18:41
Localização: Curitiba

Mensagempor Djalma Toledo Rodrigues » 09 Jan 2010 12:24

Estava cojitando alertar que isso não é coisa para 'amador'

mas, ao mesmo tempo exitava pois poderia desanima-lo

Agora, após msg do Xultz, o faço.

DJ
Avatar do usuário
Djalma Toledo Rodrigues
Dword
 
Mensagens: 2334
Registrado em: 03 Ago 2008 13:22

Próximo

Voltar para PIC

Quem está online

Usuários navegando neste fórum: Nenhum usuário registrado e 1 visitante

x