如何使用称重传感器构建高精度数字秤

你可能会想,一个没有明显机械运动的秤是否可能存在。事实上,如果通过应变计(DMS)读取,铝块的极微小弯曲就足以以高精度测量质量。

在本教程中,我们使用称重传感器(附带应变片)和24位ADC HX711读取测量信号。ESP8266或ESP32(以下简称“ESP”)运行MicroPython来处理数据并在OLED屏幕上显示重量。

在上面的测压元件中,铝块被拧在右边的底板上,而左边则是称重平台。即使是非常轻的物体(比如0.9克的一张纸)也会在金属中引起微小但可测量的变形。

应变片是在塑料基板上的极薄导电轨道。当测压元件弯曲时,这些轨迹变得稍微更长和更窄,导致电阻的微小变化。在桥接电路中,这个微小的信号被HX711放大并数字化。

HX711模块放大这个非常小的电信号,并使用24位ADC进行转换,从而实现非常精细的测量。

程序和固件

•flash和编程ESP32/ESP8266通过thony IDE或µPyCraft。

•MicroPython固件:最新版本(例如v1.19.1版本)。

这个项目的MicroPython模块:

•ssd1306.py - OLED显示器的硬件驱动程序

•OLED显示的API

•用于数字显示的大字体集

•HX711 .py -用于HX711的API

•Scale.py -主要应用程序代码

自动启动和测试

要使程序在启动时自动运行,请将其重命名为boot.py并将其上传到ESP。在重置时,它将自动运行。

Thonny允许您手动运行脚本(例如,按F5)进行即时调试- MicroPython在传统Arduino工作流上的关键优势。

下面是与ESP8266和ESP32使用相同HX711模块的接线图。确保使用不干扰ESP启动过程的GPIO引脚,并正确连接I2C总线(ESP8266: GPIO4=SDA, GPIO5=SCL;Esp32: gpio21 = sda, gpio22 = scl)。

HX711 MicroPython模块

HX711不是I2C传感器;它通过输出和DPCLK引脚串行通信。每个24位转换之后是1-3位选择通道(A/B)和增益设置。

文件HX711 .py包含HX711类和一个自定义异常,如果模块没有响应。在下面的示例代码片段中,您可以看到如何逐位请求数据:

首先传输MSB(最高有效位)。channel参数选择使用哪个通道(A/B)和增益因子。

使用称重传感器HX711和ESP (ESP8266或ESP32),您可以构建非常精确的秤。MicroPython使读取和显示测量结果变得简单,即使实际的金属变形是在原子尺度上。HX711仍然能够产生稳定的、可重复的读数。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值