|
|
EDA365欢迎您登录!
您需要 登录 才可以下载或查看,没有帐号?注册
x
基于单片机的电子秤测重原理 和设计方法
$ p' k1 h2 E9 R- Q: h+ i9 ] s! B5 t E$ y8 C7 [
* c6 F. U- o1 f( I功能:1 X1 Y& \: t0 w6 D
按键K1为去皮功能,K2和K3是修改报警参数值。K2加,K3减。当所测重量大于设置的报警值时,P3.0驱动继电器工作,继电器可以接报警装置等。. K+ ^' E- A1 Z" E/ R
校正方法:如果所测重量偏小。则按住K3键不放,再按下K1键。 直到显示重量为正确重量时再放开K1和K3按键。
- l- d, h0 W7 I 如果所测重量偏大。则按住K2键不放,再按下K1键。 直到显示重量为正确重量时再放开K1和K2按键。。 校正系数具有断电保存功能。" U! v4 J& d, I+ N: K$ M$ n
, d( J8 g4 S5 h u; ^
1 q/ w: e2 {# C$ D8 h$ n2 h+ y二、测重原理讲解:
6 \9 j) J1 q+ y. J$ d1.$ [+ L7 m/ E4 b
满量程输出电压=激励电压*灵敏度 1.0mv/v) H8 Z5 j% m) j9 P/ O. R" X1 y6 V: b. \
例如:供电电压是 5v 乘以灵敏度 1.0mv/v=满量程 5mv。4 O, u& N/ C8 [2 S, u* J% {4 J
相当于有 5Kg 重力产生时候产生 5mV 的电压。* n$ `2 g5 G9 y( N& R& [
2.
# x* O: ?% c8 t8 y5 f概述:711 模块 A 通道带有 128 倍信号增益,可以将 5mV 的电压放大 128 倍,然后采样输
& v; X& ]) |" |) h0 a4 N出 24bit AD 转换的值,单片机通过指定时序将 24bit 数据读出。
% k! h8 }5 @3 Y% f r5 o- E" ?详细讲解程序计算原理:
4 Q; m9 Y, r5 q% y4 Y9 {步骤 1 11 1:如何计算传感器供电电压
+ H+ c) K7 P" F' i5 GHX711 可以在产生 VAVDD 和 AGND 电压,即 711 模块上的 E+和 E-电压。1 B# D* U7 `3 R) u" v8 {4 n+ N
该电压通过 VAVDD=VBG(R1 +R2 )/R2 计算。
* F" U. R/ O; B, O+ @' TVBG 为模块儿基准电压 1.25v5 v3 U( V* _+ v1 k0 A6 z) P
R1 = 20K,R2 = 8.2K! ^, `9 a8 D7 V* C7 x w7 y) X! W
因此得出 VAVDD = 4.3V& }1 a# z* I6 r4 F3 i9 M/ u I3 U2 k
(为了降低功耗,该电压只在采样时刻才有输出,因此用万用表读取的值可能低于 4.3v,因8 K+ N1 A2 l3 T$ R
为万用表测量的是有效值。); N# c% g& W' M3 F6 d8 [ D4 S
& {- I9 c! [& h& A6 q步骤 2 22 2:如何将 AD ADAD AD 值反向转换为重力值。% U! s* W P' ^0 K
假设重力为 A Kg,(x<5Kg),测量出来的 AD 值为 y$ h5 }7 R! @# r0 f3 d
传感器输出,发送给 AD 模块儿的电压为 A Kg * 4.3mV / 5Kg = 0.86A mV
) ^2 y! @8 t. e& l$ _, l经过 128 倍增益后为 128 * 0.86A = 110.08AmV
3 @, |% D9 G' X5 q转换为 24bit 数字信号为 110.08A mV * 224 / 4.3V = 429496.7296A
+ i" a+ ^" h5 C% Q G! [' y所以 y = 429496.7296A
2 [5 Q1 g1 \# `$ U5 r8 o2 g1 ]0 v1 Y因此得出 A = y / 429496.7296) w& P8 ]+ J1 o
所以得出程序中计算公式3 X; _$ |- q& d ]# D* z; f
Weight_Shiwu = (unsigned long)((float)Weight_Shiwu/429.5);& T) l& d* H5 P0 y5 }3 A/ |- K ]
特别注意:) [- u) q& V; m% w
因为不同的传感器斜率特性曲线不是完全一样,因此,每一个传感器需要矫正这里的 429.5
( x6 s1 j# |& A, }这个除数,才能达到精度很高。, t9 r3 y# A4 w3 u& z: `
修改以下部分代码用于校准(该段程序在 main.c 最上面)
* g! P+ y$ p! K4 p#define GapValue 430
" r2 s4 o; `7 `3 q7 A! x) @当发现测试出来的重量偏大时,增加该数值。
. g6 \& t( g6 v# k, \如果测试出来的重量偏小时,减小改数值。该值可以为小数,例如 429.5 等。
/ S, T; ~3 k7 F6 B5 m
. d! w) e* H# v, U! A) y2 W3 M% {; w% \) I
9 u$ Y4 R9 Z" L
完整文档下载:$ z3 Z6 b3 v% O3 _
; E% n1 e/ `1 V, Z& W; D
|
|