Boa tarde galera, estou querendo automatizar minha produção de meta anfetamina (brincadeira kkkk).
Estou fazendo um projeto de separação de peças por peso, com uma balança de 0,01gr de precisão e um arduino ATMEGA 2560.

Quero que o arduino leia o peso da peça e mostre pelo Serial Monitor, o valor da peça.

OBS: A balança está conectada a um conversor RS232 / TTL. A balança está conectada ao arduíno (RX0/TX0), e o arduíno no PC.

Conversor RS232/TTL - http://mlb-s1-p.mlstatic.com/rs232-serial-macho-ttl-max232-max3232-...

/// CODIGO

void setup() {
Serial.begin(9600);
}

void loop() {
Serial.println(Serial.read());
}

///FIM DO CODIGO

Essa budega só funciona mais ou menos quando envia e recebe pela mesma porta (Serial USB e RX0/TX0), e quando fico pressionado o botao de reset... Tentei com outras portas e um display de comunicação L2C e não funciona.

https://youtu.be/CoKxqlmcn48

O que eu posso fazer?
Tenho em mãos um garagino, caso alguém tenha uma outra sugestão.

Exibições: 3115

Responder esta

Respostas a este tópico

Parece que esta faltando algum comando para a balança ou então um pino de comando na interfce RS232. 

Como request-to-send ou algo assim.

A interface parace que esta legal, pois o valor é recebido quando pressiona o reset.

Deve ser algo bem simples...

Nos envie informações sobre a balança e sobre a interface dela. 

Quantos pinos tem o conector RS-232? Tem a pinagem do conector ?

Conector: 4 pinos identificados. (RX, TX, VCC, GND)
Mudei no Setup da Balança para enviar os dados em Modo Contínuo.
Ao alterar o peso, o arduino lê tbm a oscilação de peso, conforme mostra no display, com o reset segurado é claro...

Balança PL1200AS da Exacta

Perai !!! Agora que eu vi.

Você esta conectando dois dispositivos na mesma serial !

O chip da  USB do Arduino esta conectado aos pinos RX0 e TX0. 

Recomendo que use uma outra serial do MEGA 2560 (somente o MEGA tem 4 UARTs - interface serial ), por exemplo RX1 e TX1. 

https://www.arduino.cc/en/Tutorial/MultiSerialMega

void setup() {
  Serial.begin(9600); //USB COMPUTADOR
  Serial1.begin(9600); //RX1 TX1 DA BALANÇA
}

void loop() {
  if(Serial1.available())
  {
  Serial.println(Serial1.read());
  }
}

Fica só mostrando o valor "0" no serial. Quando eu pressiono o Reset, para de mostrar o valor.

Coloquei o código da referência que vc me passou, e deu a mesma coisa...

Eu sei que o problema é no código, pq no exemplo acima, pressionando o botao reset, ele mostra o peso...

E agora?

Kennedy, você conectou a serial da balança nos pinos da Serial 1 do Arduino Mega ?

(D19) RX1 ---->TX balança

(D18) TX1 ----> RX Balança

Sim, conectei, mas nada... :/

Conecte outro dispositivo na serial 1 do Arduino Mega e faça testes. 

Por exemplo, um outro Arduino. 

O que será que o Arduino envia pela serial da Balança, quando é resetado ? 

Procure em Serial - comandos :

https://www.arduino.cc/en/Reference/Serial

http://playground.arduino.cc/Referencia/Serial

Poxa, ele deve enviar qualquer coisa, e ai a balança deve responder com o peso... hahaha vamo ver...

Essa balança funciona com a serial de um PC ?

Use o programa Hyperterminal (Windows). 

Configure a porta .

Oi KM, boa noite,

Eu uso um programa para ler e enviar dados pela serial do PC.

Ele é bom pois permite visualizar os dados de varias formas,

(ASCII, HEX, Dec).

Ele chama-se Hterm   

http://www.der-hammer.info/terminal/

Voce pode usa-lo pra testar na forma que recomendou o JG.

Rui

Boa tarde, ja resolveu? se ainda não... eu fiz funcionar o meu hoje, só que no Arduino Mega, liguei as portas Rx e Tx do shield no Rx e Tx 1 do Mega e rodei esse codigo

void setup() {
Serial.begin(9600);
Serial1.begin(9600);
}
void loop() {
if (Serial1.available()) {
int inByte = Serial1.read();
Serial.write(inByte);
}
}

no Monitor serial vc vai ver os dados vindo da balança, lembre que a balança tem que estar configurada pra enviar dados direto.

RSS

© 2024   Criado por Marcelo Rodrigues.   Ativado por

Badges  |  Relatar um incidente  |  Termos de serviço