Como fazer uma balança eletrônica com programa personalizado.

Amigos, peço desculpa por incomoda-los, mas não estou acomodado apenas esperando que os outros me ajudem sem fazer esforços.

Tenho lutado, mas esta difícil, as pessoas tem muita boa vontade quando são pagas, mas quando é de graça, ai a coisa pega.

Concordo em parte, pois precisamos viver e sustentar as nossas famílias, mas á um pensamento geral nos fóruns de que é preciso fazer o sujeito sair do comodismo e ir a luta, Sim, muitos são acomodados, mas acredito que seja uma minoria.

Eu sempre busca informações no google antes de vir pra cá, mas mesmo assim muita coisa eu não entendo, e seria preciso alguma explicação.

Vou dar um exemplo: Tal componente pra que serve? Em que ele pode ser usado?  Muitas eu pego os dados e só encontro datasheet.

Como planejar e projetar um circuito? Sei que é a base de muitos cálculos.

Outros pensam: foi difícil pra mim, porque será fácil  pra ele?  Bem..Fácil em eletrônica não existe, um componente tem um calhamaço de informações em inglês para se ler, ( hoje em dia tem o Google tradutor ) mas a tradução nem sempre sai inteligível. E os termos novos para quem esta iniciando, que lá estão, e como entender um texto sem entender os termos ali usados?  Fico feliz quando encontro exemplos de aplicações.

Voltando ao que disse: foi difícil pra mim, porque será fácil  pra ele? Mas será que ele não gostaria que na época dele alguém não viesse e lhe facilitasse um pouco as coisas? Então se ele pensa assim dos outros, o sofrimento que ele teve o deixou duro com os outros?  Ao invés de dizer: “ eu entendo os sofrimento desse rapaz, já passei por isso e sei que é duro e sofrido, e por entender e viver na pele, vou ajuda-lo com afinco.

Ok, falei demais, agora são com vocês expressarem as suas opiniões.

Mas mesmo depois de falar tanto, alguém puder me ajudar, ai vai o que preciso.

Preciso desenvolver um projeto. Em que um tecido seco é colocado num suporte,  ai um sistema de uma balança registra esse peso, e quando esse mesmo tecido for colocado de novo, úmido, ou molhado, o programa identifica a diferença e aciona a secagem, que será feita através de resistências de fio crome de 350w. ate que o peso volte a ser do tecido seco.

Não acho que o sistema irá conseguir levar a secagem aos mesmos números do tecido seco, acho que alguma parte ficará ao menos um pouco úmida, e ai o peso não será o mesmo, e os dados serão diferentes do inicio, dai acho que precisarei fazer ajustes no programa aqui e regrava-lo, em PIC ( ser for PIC, precisarei de um gravador )  ou no ARDUINO.

O que preciso?   De uma ideia de como esse registro seria feito pelo programa, sei que no momento que o tecido for colocado, um sinal elétrico é enviado ao processador  ( enviado pela célula de carga ) Mas e dai ? o que acontece?

Como é memorizado e como o sistema saberia comparar as duas situações? Alguém conhece algum programa com necessidades parecidas para eu dar uma olhada?

Tenho uma Balança da china, seria possível regravar um novo programa no processador dela e usar tudo já meio pronto ( abaixo as fotos ) Ou e se eu colocar outro processador no lugar com o programa gravado, funcionaria? ( acredito que eu teria que trocar alguns componentes que são específicos para esse processador.

 

Minhas pesquisas ate agora mostraram que: Nas balanças eletrônicas, a massa é obtida da seguinte maneira:

O corpo é colocado sobre um prato ou bandeja (geralmente fabricada em aço inoxidável);

Por estar posicionado sobre uma célula de carga, o prato exerce uma compressão sobre a mesma;

Funcionando como um transdutor, a célula de carga capta a intensidade da compressão e a converte em um sinal elétrico de intensidade diretamente proporcional à da compressão sofrida;

  1. O sinal elétrico é enviado a um microprocessador que então interpreta o sinal. Quanto mais intenso for o sinal elétrico recebido, maior será a leitura feita pelo microprocessador e, consequentemente, maior a massa calculada por ele;

            

E  se eu for montar uma balança do zero, precisarei dos seguintes componetes:    Celula de carga  - Processador  - e amplificador de sinal –

Alguém conhece algum tutorial sobre o assunto? Com esquemas etc     <  seria  IMPORTANTE /u>

ALGUÉM SABE ONDE ACHAR O ESQUEMA ELETRICO DESSA BALANÇA ?   SF-400

E TEM UM TEXTO QUE NÃO ENTENDI  VEJAM:   CAPACITY: 10000 Gx1g/177ozX0. 1oz 

OS COMPONENTES: 

Microcontrolador - TI MSP430 ou PIC24F 32MHZ  E  CI SMD 100P TQFP-100 -  ( esses 2 últimos foi indicação do Juscilei )

Ele indicou também o CI POTENCIOMETRO DIGITAL DIP 8P   e o  IC INSTRUMENT AMP 1.3MHZ 130DB SOIC-8; No. of Amplifiers de sinal.

Esse fui eu que pesquisei :    ADS1232  CI CONVERSOR A/D 24P TSSOP   amplificador de ganho programável (PGA

Bem... quem puder ajudar, agradeço e quem não puder, obrigado assim mesmo.

ATENÇÃO:  Se alguém quiser me ajudar com paciência e com detalhes, eu posso pagar-lo pela ajuda, mas preciso de ate vídeo aulas e um prazo de pagamento.

Abraço

Eduardo castellani 

Exibições: 14696

Responder esta

Respostas a este tópico

Olá Eduardo, bom dia.

Faz tempo tb tento coletar peso com o Arduino, e não parece muito fácil... Diria que não é uma coisa tradicional, tb não achei muito na Net sobre isso... 

Então:

Eu acho que entendi o seu desejo, e acho que,pelo menos para mim, está indo para um caminho muito complicado (muitos fundamentos envolvidos e dificuldades) que não poderei ajudar. 

O que eu posso falar para vc é assim:

Peso é a melhor maneira para determinar se o material está seco? 

Digamos que alguma coisa fique aderido ao tecido, seja "tarado" com isso e depois isso saia na lavagem/secagem , vc terá um falso positivo. 

Uma alternativa que pode dar certo, é colocar um sensor de umidade relativa e temperatura na entrada e outro na saída do ar da secadora (por balanço, umidade relativa do ar - kg de água por kg de ar ... tem que pesquisar um pouso isso).

quando o ar parar de ficar ganhar umidade dentro da secadora, o tecido secou...  acho que o erro é menor)

com relação ao peso, se se tornar a unica coisa a fazer... acho que vc está indo muito no fundamento da balança... e isso ótimo para aprender. Mas se quiser alguma coisa mais fácil de fazer... existe no mercado balanças com saída para impressora, RS232. Pesquise como um arduino pode coletar esta informação e utilizar para operar todo o sistema.

Estas balanças são um pouco mais caras, mas dá a leitura, acho melhor que pegar o sinal eletrônico.

Assim, precisaria  de um arduino, o cabo de leitura, a balança (deve custar uns, sei la,  R$400 a R$800), e reles / contatores para acionar o aquecimento.

Boa sorte, espero ter ajudado

Ricardo

"Uma alternativa que pode dar certo, é colocar um sensor de umidade relativa e temperatura na entrada e outro na saída do ar da secadora (por balanço, umidade relativa do ar - kg de água por kg de ar ... tem que pesquisar um pouso isso)."


Eu concordo com isso! Sensores de umidade não são caros e balanços de massa nessa forma são muito utilizados na automação industrial.


Pois acredite, se existe pouco material sobre isso então são GRANDES as possibilidades de que exista algo mais viável para executar a mesma tarefa.


E mesmo que vc utilize a balança será necessário estudar balanços de massa e psicrometria, pois se a quantidade de água no tecido pode variar, então o tempo de secagem também vai, e como o processo vai precisar parar o vento para cada pesagem (e consequentemente a resistência também terá que ser desligada para não queimar) então grande parte do processo de automação e economia de energia será por conta do software desenvolvido e do equacionamento correto dos balanços de massa.

OI RICARDO

Peso é a melhor maneira para determinar se o material está seco? 

Digamos que alguma coisa fique aderido ao tecido, seja "tarado" com isso e depois isso saia na lavagem/secagem , vc terá um falso positivo.   NÃO . ESSE PROBLEMA ESTA DESCARTADO.

BOA DICA

Mas se quiser alguma coisa mais fácil de fazer... existe no mercado balanças com saída para impressora, RS232. Pesquise como um arduino pode coletar esta informação e utilizar para operar todo o sistema.

Estas balanças são um pouco mais caras, mas dá a leitura, acho melhor que pegar o sinal eletrônico.

Assim, precisaria  de um arduino, o cabo de leitura, a balança (deve custar uns, sei la,  R$400 a R$800), e reles / contatores para acionar o aquecimento.

Boa sorte, espero ter ajudado - OBRIGADO E ABRAÇOS

          RUIM SER CARO, JA QUERIA FAZER PENSANDO NO PROJETO ACABADO

Tenho esse esquema (anexo). Se quiser abrir o .s01 e o .pcb vai precisar do Tango.

Mas nem vale a pena... eh um esquema de 14 anos de idade... de um tempo em que os microcontroladores não tinham AD ainda..

Daih se aproveita só a ligação do Amplificador (AD620). Nem olhe o resto, vai te confundir.

Se vc tiver uma fonte de +5V e -5V, ligar a celular de carga e o AD620 dessa forma é só ligar o pino 6 do AD620 numa entrada analogica do Arduino.

Anexos

Obrigado Xará,

Vou estuda-lo, toda ajuda é importante,acho que não agradei a turma com o texto acima, o retorno esta fraco.

Abraço

Eduardo, mas eu tenho uma dúvida (na verdade tenho muitas), mas com o AD620, a célula de carga, o sinal analógico já chega linear ou tem que tratar?

vc acho que iniciante a intermediário como eu conseguiria fazer este esquema, com o arduino?

Obrigado, abraço..

Ele sai "reto", linear, à partir de certo peso. Aih usamos um prato que era de um fogareiro eletrico pra forçar a saida do trecho não linear da celula.

Mas vc precisa corrigir a curva para Kg: subtrair um tanto (tara) e multiplicar por um ganho.

Na época usavamos um peso de 1Kg e outro de 5Kg calibrados com uma balança confiável para testar a balança. 

Achei o programa !:

#include <8051.h>
#include <intrpt.h>
#include <float.h>
#define bus P0
#define RD P3_BITS.B5
#define WR P3_BITS.B4
#define INT P3_BITS.B2
#define CLOCK P3_BITS.B7
#define Ktara P1_BITS.B6
#define K5Kg P1_BITS.B7
#define K10Kg P1_BITS.B5

unsigned char dig[12];
unsigned int dado,tara,mm,visor,loops,c10,relacao;
idata unsigned int leitura[20];
double media,v;
unsigned char i,posicao;
bit novo;
far unsigned char eeprom[10];

void cmlcd(unsigned char c,char cd)
{ int t;
P1_BITS.B1=0;
P0=c;
if (cd==0) P1_BITS.B2=0; else P1_BITS.B2=1;
P1_BITS.B0=1;
P1_BITS.B0=0;
for (t = 0; t < 8; t++);
if ((cd==0) && (c<127)) for (t = 0; t < 180; t++);
}

void delay(void)
{ char t;
for (t=0;t<100;t++);
}
void initlcd(void)
{ cmlcd(0x39,0);
cmlcd(0x06,0);
cmlcd(0x0c,0);
cmlcd(0x01,0);
}

void write2(unsigned int i)
{ cmlcd(0x30 | ((i / 10)%10),1);
cmlcd(0x30 | ((i )%10),1);
}
void wrdouble(unsigned int w)
{ // unsigned int w;
// w=ww/10;
if (w>=10000) cmlcd(0x30 | ((w /10000)%10),1); else cmlcd(' ',1);
cmlcd(0x30 | ((w / 1000)%10),1);
cmlcd(',',1);
cmlcd(0x30 | ((w / 100)%10),1);
cmlcd(0x30 | ((w / 10)%10),1);
cmlcd(0x30 | ((w )%10),1);
}

void write(char *c)
{ for (;*c!=0;c++) cmlcd(*c,1);
}


void interrupt strob(void)
{// P2_BITS.B7=0;
if (P1_BITS.B3==1) { posicao=0; novo=1;}
dig[posicao]=P2 & 0xf;
posicao++;
if (posicao>=8) posicao=0;
// P2_BITS.B7=1;
}
void wrrelacao(void)
{ WMCON=0x18;
eeprom[0]=relacao&0xff;
while ((WMCON & 2)==0);
eeprom[1]=relacao>>8;
while ((WMCON & 2)==0);
}
void main(void)
{ set_vector(EXTI1,strob);
P3=255;
P2=255;
PX0=1;
IT1=1;
EX1=1;
while (P2_BITS.B4==0);
posicao=0;
WMCON=0x08;
loops=0;
initlcd();
cmlcd(0x80,0);
write(" Balancita 1999 ");
cmlcd(0xc0,0);
write("Medida:12,345Kg ");
relacao=eeprom[0]+256*eeprom[1];
if ((relacao<100) || (relacao>10000)) relacao=1000;
EA=1;
for(;;)
{ cmlcd(0x88,0);
for (i=0;i!=11;i++) leitura[i]=leitura[i+1];
while (novo==0);
novo=0;
leitura[10]=10000*dig[0]+
1000*dig[1]+
100*dig[2]+
10*dig[3]+
dig[4];
if (dig[0]>2) {if (posicao>=8) posicao++; else posicao=0;}
// for (i=0;i<5;i++) cmlcd(0x30|dig[i],1);
cmlcd(0xc7,0);
media=0;
for (i=0;i!=10;i++) media+=leitura[i];
media/=10;
mm=media;
if (Ktara==0) tara=mm;
if (K5Kg==0) {relacao=visor/5; wrrelacao();}
if (K10Kg==0) {relacao=visor/10; wrrelacao();}
if ((20+media-tara)>(visor+20+1)) visor=media-tara;
if ((20+media-tara)<(visor+20-1)) visor=media-tara;
if (visor<3) c10++; else c10=0;
if (c10==100) {visor=0; tara=mm;c10=0;}
if (loops!=100) { cmlcd(0xc7,0);
loops++;
tara=mm;
write("?? ???");}
else
{v=visor;
v=v*1000;
v=v/relacao;
if (visor<20000) wrdouble(v); else { write("-- ---"); tara=mm;}}
// cmlcd(0x80,0); wrdouble(relacao);

}
}

Obrigado Eduardo, as suas informações serão uteis, muito.

Vou trabalhar em cima delas.

se achar mais alguma coisa, por favor me envie.

abraço e fique com deus.

OI EDUARDO

VOCE DISSE: 

Ele sai "reto", linear, à partir de certo peso. Aih usamos um prato que era de um fogareiro eletrico pra forçar a saida do trecho não linear da celula.

Mas vc precisa corrigir a curva para Kg: subtrair um tanto (tara) e multiplicar por um ganho.

Na época usavamos um peso de 1Kg e outro de 5Kg calibrados com uma balança confiável para testar a balança.  

Mas vc precisa corrigir a curva para Kg: subtrair um tanto (tara) e multiplicar por um ganho.

Na época usavamos um peso de 1Kg e outro de 5Kg calibrados com uma balança confiável para testar a balança. 

AI COMPLICOU PRA MIM, MAS LEMBREI DESSE VIDEO QUE VI SOBRE A CALIBRAÇÃO DE UMA BALANÇA EM UMA FABRICA, VEJA SE PUDER.

        AJUSTE DE ZERO, É ISSO  O QUE VOCE DIZ ACIMA? EDUARDO

 

VEJA ESTA INF NOVAS ABAIXO, SE PUDER LHE AJUDAR COM O QUE TENHO.

UM OUTRO AMIGO, O ROBERTO FALOU O SEGUINTE:

Olá Eduardo.

Infelizmente estou com pouco tempo, pois estou fazendo o projeto de 4 equipamentos e já estou atrasado com eles.

Mas vamos lá.

O básico de uma balança é o processador, a célula de carga e um amplificador operacional entre a célula e o processador, pois dependendo da célula, o sinal é muito baixo e precisa ter uma certa estabilidade.

O amplificador operacional que geralmente uso é o LM358.

O processador vai monitorar a tensão da célula de carga.

O conversor AD do pic vai gravar o valor lido numa variável.

O valor que o usuário digitar vai ser gravado em uma outra variável.

Então o pic vai ter que comparar esses 2 valores para saber se precisa ligar o secador ou não.

Infelizmente não existe muita literatura sobre isso.

Acho que o ponto de partida é conseguir saber mais sobre a célula de carga.

Tentar entrar em contato com o fabricante.

Dependendo da célula, os parâmetros do pic serão diferentes.

Abraços.

Roberto.

Diria que vc está perfeitamente correto, fora um detalhe: O LM358 não é apropriado... Tentei com ele na época, mas precisava de uma montagem do tipo "amplificador instrumental", que usa 4 operacionais. Esse que foi usado no projeto é exatamente isso. A dica foi dada por um colega que desmontou uma balança da padaria da família dele e disse que usava isso... Partimos para a engenharia reversa por estarmos muito insatisfeitos com os operacionais convencionais.

A calibração é a tara mesmo. Vc precisa descontar o peso do prato... Para a celula que usamos o prato foi fundamental pra usar a celula no trecho linear da curva dela. Acredito que por isso a maioria das balanças tem prato pesado. As que não tem precisam fazer esse ajuste com calculos internos. Para vc o "prato" seria o varal.

Se vc ligar sua celula de carga em um AD620 ou 3 amp ops configurados como instrumental deve conseguir o resultado desejado. 

Não vi o video, chegando em casa eu vejo... To enrolado por aqui..

Quem sabe até seria uma dica de Shield pra disponibilizar: Sensores, incluindo celula de carga. Show seria uma pequena plaquinha com por ex 6 conexões: V+, V-, GND, In+, In- e OUT padrão. Aih vc troca o cartão e tem adequador pra pt100, N, e tal...

RSS

© 2024   Criado por Marcelo Rodrigues.   Ativado por

Badges  |  Relatar um incidente  |  Termos de serviço