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

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

[复制链接]

该用户从未签到

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

EDA365欢迎您登录!

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

x
基于单片机的电子秤测重原理 和设计方法! d' N2 W$ }1 I' I
  m& Y  U* P1 _* @' X
1 Y0 A5 n1 X; d
功能:6 C( I# O& @# K! e4 a
     按键K1为去皮功能,K2和K3是修改报警参数值。K2加,K3减。当所测重量大于设置的报警值时,P3.0驱动继电器工作,继电器可以接报警装置等。* V# U' M% d* e; ~6 l' V  [* S
         校正方法:如果所测重量偏小。则按住K3键不放,再按下K1键。 直到显示重量为正确重量时再放开K1和K3按键。7 j  b0 J' c2 V
                        如果所测重量偏大。则按住K2键不放,再按下K1键。 直到显示重量为正确重量时再放开K1和K2按键。。 校正系数具有断电保存功能。7 J* O9 X8 a2 k
* K: k, s+ a6 Y  d

: x, {. ~4 C+ S/ C7 c二、测重原理讲解:
- M+ `6 L, f* ]2 A1.: K1 \/ p# B7 Y. ~* A) h  D/ H
满量程输出电压=激励电压*灵敏度 1.0mv/v
, V9 S8 B9 r4 I, {: m) h5 n例如:供电电压是 5v 乘以灵敏度 1.0mv/v=满量程 5mv。
, R/ l6 \$ g" k, Q$ @& `相当于有 5Kg 重力产生时候产生 5mV 的电压。+ _+ i0 u( ~' Y' h7 l4 C5 t
2.
, h: n  }/ B* s8 d1 M% [# B6 p概述:711 模块 A 通道带有 128 倍信号增益,可以将 5mV 的电压放大 128 倍,然后采样输6 |! e# I  C7 x( F) h+ l8 @5 F0 n; p
出 24bit AD 转换的值,单片机通过指定时序将 24bit 数据读出。8 A- ~  R# O' Y( m7 w" m0 c8 l8 l
详细讲解程序计算原理:3 r, h2 F. ~! o
步骤 1 11 1:如何计算传感器供电电压
: E/ Z1 ?" i5 Q- z8 X+ HHX711 可以在产生 VAVDD 和 AGND 电压,即 711 模块上的 E+和 E-电压。
: L9 O' ~0 r3 x* E$ P该电压通过 VAVDD=VBG(R1 +R2 )/R2 计算。
9 k. ^9 R( ^- e. l! VVBG 为模块儿基准电压 1.25v
; i" k; w/ A5 |. ^" `4 VR1 = 20K,R2 = 8.2K
* y7 z( d, n! @3 F# A因此得出 VAVDD = 4.3V  r0 d- [+ k5 S* E# Q
(为了降低功耗,该电压只在采样时刻才有输出,因此用万用表读取的值可能低于 4.3v,因, V# H. n9 }1 w6 g6 Z
为万用表测量的是有效值。)
/ s, s6 E7 W+ s
* s* F" A* ?- @# s步骤 2 22 2:如何将 AD ADAD AD 值反向转换为重力值。' A% z' T4 V7 m& }5 h, a
假设重力为 A Kg,(x<5Kg),测量出来的 AD 值为 y
4 v: b! [- u4 ?1 O+ e+ a) \9 G! c传感器输出,发送给 AD 模块儿的电压为 A Kg * 4.3mV / 5Kg = 0.86A mV- j/ g- m' o  b0 i8 C
经过 128 倍增益后为 128 * 0.86A = 110.08AmV. J2 n. \# {* t8 l) u( F# y8 y
转换为 24bit 数字信号为 110.08A mV * 224 / 4.3V = 429496.7296A
( W' V* l6 A8 \' T3 e. y所以 y = 429496.7296A% W9 p5 l; d; }
因此得出 A = y / 429496.7296$ l9 [5 d; g- b) C8 [7 w- K
所以得出程序中计算公式- P5 j" h, j0 e5 W4 @
Weight_Shiwu = (unsigned long)((float)Weight_Shiwu/429.5);
" r: g  q) H6 L2 e8 O. h+ N特别注意:
) V' B8 A3 ]0 a3 C因为不同的传感器斜率特性曲线不是完全一样,因此,每一个传感器需要矫正这里的 429.5
1 h, d2 L2 H& `1 p  v这个除数,才能达到精度很高。
- {4 a! z- Z0 O3 S& d3 x7 s: t修改以下部分代码用于校准(该段程序在 main.c 最上面)
! ^. l2 ?5 e0 G0 f) T#define GapValue 4308 K4 E. W. m- A, H& n3 p# x2 m
当发现测试出来的重量偏大时,增加该数值。1 L5 I! J* t2 N* B- ?& _+ y
如果测试出来的重量偏小时,减小改数值。该值可以为小数,例如 429.5 等。% R) A+ v  a2 J1 ^" M  J

9 D1 {- i" V0 t9 d# s$ `, D  r7 [5 g
; S$ j, ?+ ?; G- m
8 D0 P/ P+ P: |4 v
完整文档下载:
& ]* |$ D7 m( B9 F
游客,如果您要查看本帖隐藏内容请回复

8 E6 \* z! g8 a# L

该用户从未签到

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

本版积分规则

关闭

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

EDA365公众号

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

GMT+8, 2025-8-3 03:29 , Processed in 0.140625 second(s), 26 queries , Gzip On.

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

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

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