27 个版本 (7 个主要版本更新)
11.0.2 | 2021 年 12 月 1 日 |
---|---|
11.0.1 | 2021 年 11 月 30 日 |
10.0.0 | 2021 年 10 月 20 日 |
8.0.0 | 2021 年 5 月 5 日 |
0.2.1 | 2021 年 3 月 26 日 |
#127 in 可视化
每月 49 次下载
205KB
968 行
flintec_lpp (记录 - 处理 - 绘图) 🦀
此包编译以下三个用于记录、预处理和绘制负载时间序列的二进制程序。
1 flintec_log
CLI 应用程序通过 Flintec DAD 141.1 数字放大器(使用 TCP-UTF8)记录负载传感器。应用程序允许以 1 天的约数(分钟或小时)为间隔自动记录,有效分钟间隔为 1、2、3、5、10、15、20、30 和 60 分钟。有效小时间隔为 1、2、3、6、12 和 24 小时。使用 RFC 3339 - ISO 8601 标准格式用于日期时间,以提高通用性和对时区和夏令时的鲁棒性。
2 flintec_process
此 CLI 应用程序按以下步骤处理负载时间序列
- 读取并解析记录的负载时间序列。
- 将所有日期时间转换为所选时区,例如,如果需要则删除夏令时或更改时区。
- 使用数据中找到的最小时间间隔使时间序列连续。
- 可选,用 NAN 替换记录错误。
- 可选,用 NAN 替换输入文件中的给定日期时间(例如,受维护影响的值)。
- 可选,用 NAN 替换给定的每日间隔(例如,每日温度影响或维护期)。
- 可选,使用加权移动平均来平滑时间序列(例如,风速和温度)并填充 NAN 值。它使用具有线性权重的移动平均,权重在用户定义的中心权重(通常为最大权重)和侧权重(通常为最小权重)之间。窗口宽度可以通过指定每侧的数据点数来调整,这种参数化保证了窗口的对称性。可以设置约束以定义缺失信息太大而无法填充 NAN 值的情况(最大缺失负载值或它们的累积相关权重)。
- CLI 应用程序保存一个与 flintec_plot 兼容的新 CSV 文件。
3 flintec_plot
CLI 应用程序用于绘制 flintec_log 或 flintec_process 保存的负载时间序列。应用程序自动调整日期时间格式。图形的输出格式为 svg。
注意,在整个包中,负载用于负载传感器数据,而重量用于移动平均。
文档:rust_crate
CLI应用程序是用Rust编程语言编写的。
DAD141.1注意事项
一般
- 移除封印开关跳线以启用所有命令,这仅适用于合法应用。
- 使用函数
2.4
来显示实际的原始电压mV/V。 - 菜单3.1用于过载,确保它超过所需的最高负载。
校准:零(截距)和量程(斜率、量程校准)
请参阅DAD手册中的示例以及DOP手册第7.4节(第34页)。
- 使用函数
1.2 - CZ
(重力)或1.3 - AZ
(电子)进行归零,这会将当前测量的电压(mV/V)与零读数相关联。 - 使用函数
2.1
设置span_kg,设置RO_kg_sum。 - 使用函数
2.3
,从下面的公式中设置span_V。
计算量程值(span_V)
span_kg = RO_kg_sum = RO_kg_1 + RO_kg_2 + ... + RO_kg_n.
在我们的例子中,span_kg = 20kN * 6 = 120 kN = 120 = 12,236.5921 kg。将RO_kg_sum放入函数2.1。
RO_V_1 + RO_V_2 + ... + RO_V_n = RO_V_sum,以mV/V为单位。
span_V = (V_sum / kg_sum) * kg_max,以mV/V为单位。在我们的例子中,12.00062 / 6 = 2.000103333 mV/V。
在我们的例子中,SPAN_V = 2.00032 + 2.00034 + 1.99979 + 2.00014 + 2.00011 + 1.99992 = 12.00062 mV/V。将span_V放入函数2.3。
其中
- RO_V是从校准证书中得出的额定输出(RO)处的电压输出(mV/V)。
- RO_kg是额定输出,始终来自校准。
kg来自mV
kg@x = (mV@x / (mV@RO * 激励电压)) * kg@RO
kg@RO = 2039.43 kg mv/V@RO ~ 2 mv/V 激励电压应为5 V
例如,~2040 kg应该给出10mV(即,2 mv/V * 5 V)例如,~1020 kg应该给出5mV(即,2 mv/V * 5 V / 2)一般,204 kg = 1 mV
格式
应用程序期望10字节的DAD格式,对十进制分隔符的位置具有灵活性。前两个字符是值的描述,不包括在数值负载值的解析中。然而,原始字符串也被写入csv文件,以避免丢失关于读数类型的有关信息,并在解析错误的情况下恢复值。将正确删除并忽略可能的空白属性字符(Unicode标准)。
负载细胞和安装模块的安装
安装模块
使用三种类型的安装模块来获得正确的自由度,以匹配系统的变形。
- 固定:无移动性,模块将该系统点固定在该位置(0D自由度)。
- 缓冲器:限制一个方向的移动(1D自由度)。
- 自由:允许在负载细胞平面内所有方向上移动(2D自由度)。
对准
根据机械变形的自由度对齐负载细胞。特别是,注意固定和缓冲器负载细胞及其与缓冲器主变形的对齐。请参阅手册中的图。
润滑剂/油脂
它用于在安装模块移动时保护其移动部件(摇臂销和匹配的上表面)。
- Mettler Toledo手册:洛氏防粘,食品级
- Flintec:在Flintec中,使用Fuchs公司的RENOLIT ST-80。然而,他们已经提供了与负载传感器类似的设备。
远程/SSH日志记录
查找IP地址和/或主机名
- 查找IP地址,例如,使用
ifconfig
。 - 使用
host ipaddr_from_ifconfig
查找主机名。
启动
- 通过SSH连接到树莓派,
ssh user@ip
- 打开tmux,
tmux
- 启动日志记录进程,请参阅
./compiled_binary --help
- 使用
Ctrl+b
然后d
从终端断开tmux会话n,它将返回[detached (from session n)] - 使用
tmux ls
检查tmux会话是否仍然存在,它应该返回n: 1 windows (created datetime 2),其中datetime是点2的时间 - 关闭终端/SSH连接,
exit
,它将返回Connection to uset@ip closed
检查日志
- 如启动步骤1,通过SSH连接到树莓派,
ssh user@ip
- 如启动步骤5,使用
tmux ls
查找tmux会话 - 使用
tmux attach -t n
连接会话,其中n是启动步骤4中的数字 - 重复启动中的步骤4、5、6
复制数据
- 打开终端,使用
scp
从树莓派复制文件到笔记本电脑,例如,scp user@localhost:~/path/to/file/loadcells.log ./Desktop/
关闭日志
- 如启动步骤1,通过SSH连接到树莓派,
ssh user@ip
- 如启动步骤5,使用
tmux ls
查找tmux会话 - 使用
Ctrl+c
关闭正在运行的日志,应该返回[exited] - 使用
tmux ls
进行二次检查,应该返回no server running on ...
附加信息
依赖关系
~15MB
~108K SLoC