跳到主要内容

CAN接收-公式编辑

组件作者梅清组件ID11747
功能该模块用CAN接收。和CAN接收组件功能类似,增加了用户自定义公式对CAN数据处理功能。 __
输入桩格式json
输出桩格式自定义
其他

组件原理


输入

"配置CAN"接收一个JSON数据,如下,可以只包含下面key的子集,缺省默认使用参数配置中的内容,如

{
"canInterface": "vcan0",
"bustype": "socketcan",
"bitrate": 500000,
"filterCanId": 1
}

输出

用户自定义公式对CAN数据处理后的数据。
公式编辑功能:用户可以按需求增加输出端子以及端子类型,如int或float,公式编辑器中编辑公式,如[in1[0], in1[1]]代表输出两路端子,分别为CAN接收数据的第一字节和第二字节。公式编辑器也支持一些简单的数学计算,如加减乘除。

参数配置

  • CAN接口标识符(如vcan0):

字符串

  • 总线类型:

单选下拉

  • 波特率:

正整数

  • 只接收指定ID信息(-1为不过滤):

整数

  • 输出数据-公式编辑:

字符串

使用示例_

image.png image.png 如上列中用户编辑的公式为,为一个包含3个元素的数组,即通过三路输出

[(in1[0] + in1[1] * 256 + in1[2] * 65536 + in1[3] * 1677721) / 1000,
(in1[4] + in1[5] * 256) / 1000, (in1[6] + in1[7] * 256) / 1000]

如果CAN数据8个字节为[89, 3, 2, 12, 3, 1, 4, 91],上述in1变量值即为此CAN数据数组,输出为[20264.581, 0.259, 23.3],3个数值分别输出到3个输出端子。