找回密码
 注册
关于网站域名变更的通知
查看: 1109|回复: 5
打印 上一主题 下一主题

[电子大赛] 基于单片机的电子秤测重原理 和设计方法

[复制链接]

该用户从未签到

跳转到指定楼层
1#
发表于 2018-11-28 09:29 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

EDA365欢迎您登录!

您需要 登录 才可以下载或查看,没有帐号?注册

x
基于单片机的电子秤测重原理 和设计方法
% J2 v# g  E  h" |6 S- I7 {7 x" m
& K  y# h8 l3 B
( V; _% _0 I% \  M
功能:
/ x8 Z8 b* K8 o$ P+ W7 z     按键K1为去皮功能,K2和K3是修改报警参数值。K2加,K3减。当所测重量大于设置的报警值时,P3.0驱动继电器工作,继电器可以接报警装置等。
6 B7 O2 h& B& Y5 b" ]9 E, F' E- C         校正方法:如果所测重量偏小。则按住K3键不放,再按下K1键。 直到显示重量为正确重量时再放开K1和K3按键。
4 ?# u' ^9 d- i9 z                        如果所测重量偏大。则按住K2键不放,再按下K1键。 直到显示重量为正确重量时再放开K1和K2按键。。 校正系数具有断电保存功能。9 L3 u& \, j# N0 m, F& j* o' R
0 V$ y5 P% j8 U1 F9 ~: a; B
/ v8 Y" u- {& R, J4 }
二、测重原理讲解:* K9 N2 m/ Z  x. J! Y7 l3 L
1.
0 T3 r$ I3 \$ C6 I8 N' I! f9 d满量程输出电压=激励电压*灵敏度 1.0mv/v3 q9 }. c! i$ ?, N
例如:供电电压是 5v 乘以灵敏度 1.0mv/v=满量程 5mv。
8 J4 }4 c" y4 i, S2 @8 l7 o相当于有 5Kg 重力产生时候产生 5mV 的电压。9 E9 _& l+ Y2 i. {
2.
2 u) R8 z* l6 \) `- ?概述:711 模块 A 通道带有 128 倍信号增益,可以将 5mV 的电压放大 128 倍,然后采样输
, ^" Z; H+ ]. h- r) R* O出 24bit AD 转换的值,单片机通过指定时序将 24bit 数据读出。
0 j$ ?1 D  R' O( e详细讲解程序计算原理:
# ?) l5 D4 f, Z1 h" I4 C! n步骤 1 11 1:如何计算传感器供电电压
  M0 {& x; y8 c+ [9 m1 U; `HX711 可以在产生 VAVDD 和 AGND 电压,即 711 模块上的 E+和 E-电压。. z* @  v5 w, p! V, l
该电压通过 VAVDD=VBG(R1 +R2 )/R2 计算。3 G; I$ J$ U9 w
VBG 为模块儿基准电压 1.25v8 |# _0 @8 \4 T5 X/ e/ F0 I, _' }
R1 = 20K,R2 = 8.2K4 T4 k  K( w9 U( E
因此得出 VAVDD = 4.3V" a0 p6 ?& _2 n( J# d
(为了降低功耗,该电压只在采样时刻才有输出,因此用万用表读取的值可能低于 4.3v,因
; V+ |5 d! v" [) ~; K: p6 ^为万用表测量的是有效值。)0 f( H) H( o3 p( B) H$ \

& o* E* J+ Q. @! G' ]6 G步骤 2 22 2:如何将 AD ADAD AD 值反向转换为重力值。9 j) Q% d0 d7 \5 U6 a
假设重力为 A Kg,(x<5Kg),测量出来的 AD 值为 y5 F: p: J' d5 [6 j0 D' N9 G
传感器输出,发送给 AD 模块儿的电压为 A Kg * 4.3mV / 5Kg = 0.86A mV
- S4 H, q1 g4 |: ?0 t经过 128 倍增益后为 128 * 0.86A = 110.08AmV
3 c! u2 h. o; ~1 h3 t5 l转换为 24bit 数字信号为 110.08A mV * 224 / 4.3V = 429496.7296A- w$ p9 @1 c7 r8 Z& }$ X
所以 y = 429496.7296A
0 H) O  f% x  z( o2 X1 C因此得出 A = y / 429496.72967 v4 a' X5 g- a/ L7 q+ Z* [, T/ n
所以得出程序中计算公式  L- U3 x+ y; t* B
Weight_Shiwu = (unsigned long)((float)Weight_Shiwu/429.5);4 e) G7 H! N  }% r% V
特别注意:( U" ~3 G0 ^  i2 b1 u
因为不同的传感器斜率特性曲线不是完全一样,因此,每一个传感器需要矫正这里的 429.5
) A* m6 w7 X+ C- V, F. w: }, m这个除数,才能达到精度很高。
+ ?5 Y7 z2 P4 R9 n修改以下部分代码用于校准(该段程序在 main.c 最上面)
, L6 `  o5 U8 ~) o& F. B#define GapValue 4301 I# x% Z$ p2 U8 e0 O! d: G, I$ Y% K
当发现测试出来的重量偏大时,增加该数值。
$ o6 p% v- e& T% v) Q$ ~如果测试出来的重量偏小时,减小改数值。该值可以为小数,例如 429.5 等。
$ H  @) t: u9 M; z" z7 Y# ?

, N& K. ^0 B" a& t( S% S! b# _) M$ q- t" i! T

" n8 E4 Y/ Z, o; P( n完整文档下载:. X9 @8 d5 {: J8 m
游客,如果您要查看本帖隐藏内容请回复

3 N# ?8 Z: U5 j

该用户从未签到

2#
发表于 2018-11-28 11:04 | 只看该作者
看看先 谢谢楼主
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

推荐内容上一条 /1 下一条

EDA365公众号

关于我们|手机版|EDA365电子论坛网 ( 粤ICP备18020198号-1 )

GMT+8, 2025-7-17 15:11 , Processed in 0.125000 second(s), 26 queries , Gzip On.

深圳市墨知创新科技有限公司

地址:深圳市南山区科技生态园2栋A座805 电话:19926409050

快速回复 返回顶部 返回列表