|
|
EDA365欢迎您登录!
您需要 登录 才可以下载或查看,没有帐号?注册
x
基于单片机的电子秤测重原理 和设计方法
" \ \; E0 u3 f$ T8 r$ M' O5 P' G! Y+ I# I6 w# h
" F# g3 m+ T% ?, i功能:1 G0 ~, M3 Y: a6 k% W. _
按键K1为去皮功能,K2和K3是修改报警参数值。K2加,K3减。当所测重量大于设置的报警值时,P3.0驱动继电器工作,继电器可以接报警装置等。
! k! G3 s7 o% Z& G# r+ G% Q 校正方法:如果所测重量偏小。则按住K3键不放,再按下K1键。 直到显示重量为正确重量时再放开K1和K3按键。9 a$ w V! h3 x3 i) R; d
如果所测重量偏大。则按住K2键不放,再按下K1键。 直到显示重量为正确重量时再放开K1和K2按键。。 校正系数具有断电保存功能。, r( n( _$ P- n+ q
" j7 c' P/ g/ [2 @0 [
/ r8 z$ P3 K9 i$ D二、测重原理讲解:2 ~4 x% u, D8 l* `
1.9 ]) m) N% r: `8 Y, X
满量程输出电压=激励电压*灵敏度 1.0mv/v& x, N3 {7 s' p5 I" z
例如:供电电压是 5v 乘以灵敏度 1.0mv/v=满量程 5mv。
, r5 ?+ G" T& C1 I2 D相当于有 5Kg 重力产生时候产生 5mV 的电压。8 B, L; Z0 b! r" L6 A+ h
2.4 x9 w& E6 t Y5 w+ a
概述:711 模块 A 通道带有 128 倍信号增益,可以将 5mV 的电压放大 128 倍,然后采样输
9 `+ M* |2 x" }出 24bit AD 转换的值,单片机通过指定时序将 24bit 数据读出。! V3 ^' ?9 K% }: h! L
详细讲解程序计算原理:. _& h# E! l( B# |8 F# j9 Y
步骤 1 11 1:如何计算传感器供电电压
/ H0 p4 H. I2 ? L; O3 k7 KHX711 可以在产生 VAVDD 和 AGND 电压,即 711 模块上的 E+和 E-电压。+ r/ l( a3 J' `. Y1 I; N H
该电压通过 VAVDD=VBG(R1 +R2 )/R2 计算。* X* j+ M* J3 P
VBG 为模块儿基准电压 1.25v5 }; Y$ P* g1 y
R1 = 20K,R2 = 8.2K
1 d4 u9 w' P: ~* h* Q9 b因此得出 VAVDD = 4.3V" W3 `7 K: s% P" Z i. d% D
(为了降低功耗,该电压只在采样时刻才有输出,因此用万用表读取的值可能低于 4.3v,因" W0 [; V8 R6 v1 Y; l
为万用表测量的是有效值。)
+ U% p( m/ B5 S% _- i9 X& @+ z( M, f
% z1 X- Q6 e9 `步骤 2 22 2:如何将 AD ADAD AD 值反向转换为重力值。
8 ^! x2 @3 y# ~8 a$ F8 I N假设重力为 A Kg,(x<5Kg),测量出来的 AD 值为 y
3 W) s6 q& v$ Z5 q传感器输出,发送给 AD 模块儿的电压为 A Kg * 4.3mV / 5Kg = 0.86A mV
5 N7 I3 n& q3 V1 R; Z0 {经过 128 倍增益后为 128 * 0.86A = 110.08AmV# }. I$ x0 F0 H s
转换为 24bit 数字信号为 110.08A mV * 224 / 4.3V = 429496.7296A) N1 w& b1 |; M
所以 y = 429496.7296A
4 I' T N& U3 K' J0 F6 d' ?因此得出 A = y / 429496.7296
l. a! t( u9 N9 @1 n: X1 }所以得出程序中计算公式2 i' L& \" _# e, p8 J" x* A, m( [
Weight_Shiwu = (unsigned long)((float)Weight_Shiwu/429.5);
4 k( L. Z: N$ G9 e+ g* [特别注意:
$ @3 A, e; Y( Z# ]% k因为不同的传感器斜率特性曲线不是完全一样,因此,每一个传感器需要矫正这里的 429.5* q- l1 A. K/ u) \* a
这个除数,才能达到精度很高。! L' O: S7 I2 F0 ^5 e0 v
修改以下部分代码用于校准(该段程序在 main.c 最上面)
( U3 t4 K, c& K1 N#define GapValue 430" ^( Y. G% S4 F. l d" ?) v4 ^
当发现测试出来的重量偏大时,增加该数值。9 j7 c1 f/ Q) P V' R
如果测试出来的重量偏小时,减小改数值。该值可以为小数,例如 429.5 等。
. M3 Y- U* x9 M! Z' s! g/ T8 |9 o7 p$ D$ L
7 A' Y9 y. K% V \3 E( C/ Z
+ V: m2 ~* m* j, B# e% t
完整文档下载:
* e8 g+ P9 v2 Q0 \" m, V4 S+ ]3 X7 y3 K9 M4 _+ Y1 i5 n
|
|