Pages: [1]   Go Down
Author Topic: Ayuda con datos de Bascula Digital puerto SERIAL  (Read 1814 times)
0 Members and 1 Guest are viewing this topic.
0
Offline Offline
Newbie
*
Karma: 0
Posts: 13
Arduino rocks
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Hola a todos

Tengo bastantes inconvenientes con la interpretacion de datos de una bascula diguital, si bien leo los datos no se como convertirlos a las unidades adecuadas. Posteo aparte del manual de la bascula donde muestra la coneccion y como manda los datos.



Este es el codigo que uso para recibir los datos:

Code:
//--------------------------------------------------
 
#include "LCD4884.h"   //libreria para uso de LCD NOKIA 5110
 #include <NewSoftSerial.h>
 
NewSoftSerial mySerial(8, 9);


int led=13;
int incomingByte = 0; // almacenar el dato serie


    void setup()
    {
    pinMode(led, OUTPUT);
    Serial.begin(9600);
 
 // set the data rate for the NewSoftSerial port
    mySerial.begin(9600);
   
    lcd.LCD_init();
    lcd.LCD_clear();

    }

char buf[10];

    void loop() // run over and over again
    {

  //Recibe y escribe datos de puerto     
    if (mySerial.available() >0) {
    incomingByte = mySerial.read();
    Serial.print("He recibido: ");
    Serial.println(incomingByte, DEC);

//Escribre el la LCD
    sprintf(buf, "%d", (byte)incomingByte);
    lcd.LCD_write_string(20, 1, "He recibido:", MENU_NORMAL);
    lcd.LCD_write_string_big(25, 3, buf, MENU_NORMAL);
   
//Enciende y apaga led al recibi dato del pruerto
    digitalWrite(led, HIGH);
    }else
    digitalWrite(led, LOW);
   

    }
//------------------------------------

Este codigo solo me muestra un numero que es oscila entre 220-255, No se como hacer para que me muestre el valor expresado en Kg . smiley-confuse
Si alguien puede ayudarme con eso le estare muy agradecido, es bastante importante  smiley-sad-blue
Logged

Orduña- Bizkaia
Offline Offline
Sr. Member
****
Karma: 0
Posts: 317
Arduino rocks
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Segun el manual la bascula te da el peso el lb o libras y cada 1000gr es 2,2libras, lo que no se es porque te marca tanto por 220lb son 99kg a no ser q lo multiplique por 100 y el valor de 220 sea 0,09gr q se aproxima a 0.
prueba a hacer pruebas con esa conversion.
Un saludo.
Logged

Euskadi
Offline Offline
God Member
*****
Karma: 16
Posts: 739
Arduinotarrak
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset


Hola,
en el manual, que se puede buscar en Google, habla de salida continua en forma de una cadena de seis caracteres ascii acabada en retorno de carro, por ejemplo si pesas 100kg recibes '1' + '0' +  '0 ' +  '.'  + '0' + '0' + '0' + 13, o sea, la cadena "100.000". Se trataría de leer caracteres hasta que llegue el <CR>
Lo que no entiendo bien cómo se direccionan esos "Address"

Quote
4.4 Continuous ASCII RS-232 data output format
4.4.1 Automatic Output
4.4.1.1 Address: Adr = 00
The ASCII data format is “=,X1,X2, X3,X4,X5,X6”
<stx> =,X1 , X2, X3 , X4, X5, X6 <cr>
X1, X2, X3, X4, X5, X6 is weight data.
If the weight is 〖100.00〗kg, the continuous output is = 00.001 = 00.001=
4.4.1.2 Address: Adr = 99
The ASCII data format is “=,X6,X5,X4,X3,X2,X1”
<stx> =,X6 , X5, X4 , X3, X2, X1 <cr>
X6, X5, X4, X3, X2, X1 is weight data..
If the weight is 〖100.00〗kg, the continuous output is = 100.00 = 100.00=


Logged

Pages: [1]   Go Up
Jump to: