bg

如何将称重天平或台秤数据记录到 MySQL 数据库

轮询称重串口设备并将提取的数据直接导出到 MySQL 数据库的完整指南。

1. 协议配置:RS232称重仪

通信类型: 被动监听(连续或按需打印)

大多数工业称重仪发送以回车符(CR)和换行符(LF)结尾的ASCII字符串。请使用软件的“ASCII数据解析器”模块,并将数据包结束符设置为“#0D#0A”。然后,您可以通过指定固定列位置或使用正则表达式来提取数字重量。此外,记录器还包含为最常见的称重仪预定义的解析器。

应用此基础配置进行串行连接:

{
  "port": "COM1",
  "baud_rate": 9600,
  "data_bits": 8,
  "stop_bits": 1,
  "parity": "none",
  "flow_control": "hardware",
  "packet_end": "#0D#0A"
}
称重仪插件选择,用于轮询设备并解析传入数据

称重仪插件选择,用于轮询设备并解析传入数据

称重仪插件配置:称重仪类型和轮询间隔

称重仪插件配置:称重仪类型和轮询间隔

准备好将 RS232称重仪 连接到 MySQL 了吗?

2. 数据库设置:MySQL

您需要在运行 Data Logger 的计算机上安装 MySQL Connector/ODBC。创建一个指向 MySQL 服务器实例的系统 DSN。

使用以下 SQL 脚本创建目标表。 我们建议使用 InnoDB 引擎来处理高频率并发插入,而无需锁定表。

CREATE TABLE sensor_data (
  id INT AUTO_INCREMENT PRIMARY KEY,
  log_timestamp DATETIME DEFAULT CURRENT_TIMESTAMP,
  device_id VARCHAR(50),
  register_value FLOAT
) ENGINE=InnoDB;
用于导出数据的 MySQL 插件。

用于导出数据的 MySQL 插件。

MySQL 数据库连接设置。

MySQL 数据库连接设置。

带有自定义参数的 INSERT SQL 语句队列。

带有自定义参数的 INSERT SQL 语句队列。

3. 协议特定故障排除

  • 屏幕上出现乱码字符: 这几乎总是表明波特率或校验位不匹配。9600-8-N-1是标准配置,但老式梅特勒-托利多或奥豪斯称重仪经常使用2400波特率或7-Even-1校验位。请查阅硬件手册。
  • 是否可以仅处理稳定重量并忽略中间值?: 使用我们的某个过滤器插件,例如,忽略数据包中所有不含“stable”标记的记录。
  • 是否可以处理大于100.0 kg的重量值?: 表达式过滤器插件允许您使用任何数学表达式。例如,以下命令:DISCARD_DATA_PACKET_IF(WEIGHT < 100)。

4. 数据库特定故障排除

  • MySQL 服务器已断开连接: 如果您的串行设备在一夜之间处于空闲状态,MySQL 将断开连接。在 Data Logger 的 ODBC 导出模块中启用「保持连接活跃」设置。
  • 如何为我的设备插入或更新数据行?: 您可以在我们的「SQL Database Pro」插件中使用任何 SQL 查询。在 MySQL 中,您可以轻松执行以下 SQL:「INSERT INTO ....... ON DUPLICATE KEY .... UPDATE ....」。
  • 我想将每个设备的数据写入不同的表。如何做到?: 在「SQL Database Pro」插件中,您可以在 SQL 中使用占位符。例如「INSERT INTO SerialData%DEVICE_ID% (....)」。在执行 SQL 之前,记录器将 %DEVICE_ID% 替换为解析数据中的相应值,实际目标表将有所不同(SerialData1、SerialData2 等)。

准备好将 RS232称重仪 连接到 MySQL 了吗?

软件产品 购买程序 下载 支持区域 联系人 网站地图
版权所有 © 1999 - 2026, AGG Software.
版权所有。. 使用条款 | 隐私政策