TODOPIC
Microcontroladores PIC => Lenguaje Basic para microcontroladores PIC => Mensaje iniciado por: dawaherjesus en 18 de Mayo de 2020, 23:02:58
-
Un saludo cordial compañeros.
Estoy realizando un pequeño proyecto con un PIC 16F877A, un HX711 y una celda de carga de 150 Kg, por los momentos estoy simulando en Proteus 8 y programando en proton ide.
El inconveniente que tengo es con la calibración o adecuación de la señal del HX711. Ya logro leer el modulo y ver el peso que está en la celda de carga, pero es incorrecta la medición, a medida que aumenta el valor medido es mayor el desfase y si realizo una tara o puesta a cero la diferencia es mayor.
Quisiera saber si es un problema de la simulación o de mi código.
LoadCell:
Dataa = 1
Clock = 0
Hx711Cnt = 0
While Dataa = 1 : Wend
For i = 0 To 23
High Clock
Hx711Cnt = Hx711Cnt <<1
Low Clock
If Dataa = 1 Then Inc Hx711Cnt
Next
High Clock
Hx711Cnt = Hx711Cnt^0x800000
gram = ((Hx711Cnt-124000)*10)/500
gram = gram - 165090
gram = gram / 1000
Low Clock
Print At 2,1, " Peso: ",Dec1 gram,"Kg "
GoTo LoadCell
-
No programo en Basic, pero leyendo tu problema:
El inconveniente que tengo es con la calibración o adecuación de la señal del HX711. Ya logro leer el modulo y ver el peso que está en la celda de carga, pero es incorrecta la medición, a medida que aumenta el valor medido es mayor el desfase
Entonces quiere decir que al tratar de linealizar el sensor le erraste la pendiente. O mejor dicho, la formula hay un dato a modificar.
y si realizo una tara o puesta a cero la diferencia es mayor.
Esto no te deberia afectar en nada, debido a que es restar un valor nada mas. Pero si tenes el problema anterior entonces es obvio que a cero vas a tener mas error.
Lo primero que deberias hacer es una tabla con pesos conocidos y lectura que te da el sensor. De ahi se puede tratar de conseguir la funcion correcta.
-
Entonces quiere decir que al tratar de linealizar el sensor le erraste la pendiente. O mejor dicho, la formula hay un dato a modificar.
Podrias indicarme alguna forma de realizar la linealidad correctamente.
gracias por la ayuda.
-
Entonces quiere decir que al tratar de linealizar el sensor le erraste la pendiente. O mejor dicho, la formula hay un dato a modificar.
Podrias indicarme alguna forma de realizar la linealidad correctamente.
gracias por la ayuda.
Primero sacaria el dato crudo para verificar estar leyendo bien.
-
Entonces quiere decir que al tratar de linealizar el sensor le erraste la pendiente. O mejor dicho, la formula hay un dato a modificar.
Podrias indicarme alguna forma de realizar la linealidad correctamente.
gracias por la ayuda.
Primero crea una tabla como te dije:
Lo primero que deberias hacer es una tabla con pesos conocidos y lectura que te da el sensor.
Es decir sin ninguna operacion entre medio... Asi en toda el rango de peso que estes usando. Luego con esos datos se trata de buscar una funcion que se aproxime lo mejor posible cometiendo el minimo error.
Que va con lo que dice Eduardo... Los datos en crudo, leer el sensor y anotar el valor.