关注

LabView控件介绍(二)

一、Create Master Instance (Serial) VI/创建主实例(串行)VI

1.1 功能

创建串行或TCP Modbus主实例。

1.2 控件图

1.3 输入

serial type——数据传输类型(RTU/ASCII)。
unit ID——从站设备ID。
VISA resoure name——打开的资源(串口)。
baud rate——从站波特率。
parity——奇偶校验。
error in(no error) ——错误输入表明该节点运行前发生的错误条件。该输入将提供标准错误输入功能。

1.4 输出

serial master instance——串行Modbus主站实例。
error out——错误输出包含错误信息。该输出提供标准错误输出功能。

二、Shutdown VI/关闭VI

2.1 功能

执行关闭和清理提供的Modbus实例所需的任何操作。
关闭 Modbus 实例
释放串口 COM 资源
释放 TCP 连接
清理内部引用
避免下次运行端口被占用

2.2 控件图

2.3 输入

Modbus master in——接收任何Modbus主实例,由Create Master Instance (Serial) VI/创建主实例(串行)VI创建。
error in(no error) ——错误输入表明该节点运行前发生的错误条件。该输入将提供标准错误输入功能。

2.4 输出
error out——错误输出包含错误信息。该输出提供标准错误输出功能。

三、Inialize VI/初始化VI

3.1 功能

初始化Modbus主实例。如果使用创建Modbus实例VI,则不需要这样做。此功能将启动任何所需的总线通信。(Create Master Instance VI 里面已经帮你完成了 Initialize 的工作

3.2 控件图

3.3 输入

Modbus master in——接收任何Modbus主实例,由Create Master Instance (Serial) VI/创建主实例(串行)VI创建。
error in(no error) ——错误输入表明该节点运行前发生的错误条件。该输入将提供标准错误输入功能。

3.4 输出

Modbus master out——输出Modbus主站引用,继续传输后续Modbus VI。
error out——错误输出包含错误信息。该输出提供标准错误输出功能。

四、Set Uint ID VI/设置从站ID VI

4.1 功能

提供了一个简单的函数,用于定义作为modbus主读写操作目标的单元id。此函数立即生效,并将使用modbus主输出返回的实例更改任何未来操作的目标。通过分叉写入可以同时访问多个单元。此函数仅适用于使用RTU或ascii串行传输数据单元时。tcp/ip传输数据单元忽略单元id。(设置当前 Modbus Master 要访问的从站地址,也就是 Slave ID / Unit ID。Create Master Instance (Serial) VI 本身就有unit ID输入端。NI 文档里也说明,创建串口 Master 实例时,unit ID用来指定要通信的 Modbus 从站。如果你只连接一个从站,用Create Master Instance (Serial) VI的unit ID即可,但如果你要在同一个主站实例里轮询多个从站,就用Set Unit ID VI来动态切换。)

4.2 控件图

4.3 输入

Modbus master in——接收任何Modbus主实例,由Create Master Instance (Serial) VI/创建主实例(串行)VI创建。
unit ID——单元ID定义了所有Modbus主读写操作所针对的设备。此值仅用于串行传输数据单元。

error in(no error) ——错误输入表明该节点运行前发生的错误条件。该输入将提供标准错误输入功能。

4.4 输出

Modbus master out——输出Modbus主站引用,继续传输后续Modbus VI。
error out——错误输出包含错误信息。该输出提供标准错误输出功能。

五、Set Timeouts VI/设置超时VI

5.1 功能

设置 Modbus 主站在读/写从站时,最多等待多长时间。也就是说,LabVIEW 主站发出读写命令后,如果从站在规定时间内没有响应,就会报超时错误。Modbus master 默认读写超时时间是 5000 ms。

5.2 控件图

5.3 输入

Modbus master in——接收任何Modbus主实例,由Create Master Instance (Serial) VI/创建主实例(串行)VI创建。
read operation timeout——读操作超时时间。
write operation timeout——写操作超时时间。

5.4 输出

Modbus master out——输出Modbus主站引用,继续传输后续Modbus VI。
error out——错误输出包含错误信息。该输出提供标准错误输出功能。

Create Master Instance
        ↓
Set Unit ID
        ↓
Set Timeouts
        ↓
Read Holding Registers / Write Registers
        ↓
Shutdown

六、Read Coils VI/读取线圈VI

6.1 功能

从设备的起始地址开始读取输入线圈的数量。(主站读取从站里一段连续的布尔量开关状态)

6.2 控件图

6.3 输入

Modbus master in——接收任何Modbus主实例,由Create Master Instance (Serial) VI/创建主实例(串行)VI创建。
starting address——起始Coils地址。
number of inputs——从初始地址开始从设备要读取的Coils数量。
error in(no error) ——错误输入表明该节点运行前发生的错误条件。该输入将提供标准错误输入功能。

6.4 输出

Modbus master out——输出Modbus主站引用,继续传输后续Modbus VI。
coils——读取到的 Coil 状态,布尔数组(Boolean 布尔量
),1 个点 = 1 bit。
error out——错误输出包含错误信息。该输出提供标准错误输出功能。

七、Write Single Coil VI/写单线圈VI

7.1 功能

将线圈写入设备的地址。(主站向从站的某一个开关量地址写入 True 或 False)

7.2 控件图

7.3 输入

Modbus master in——接收任何Modbus主实例,由Create Master Instance (Serial) VI/创建主实例(串行)VI创建。
address——要写入的Coil地址​​​​​​​。
coil to write——要写入的布尔值,True 或 False。
error in(no error) ——错误输入表明该节点运行前发生的错误条件。该输入将提供标准错误输入功能。

7.4 输出

Modbus master out——输出Modbus主站引用,继续传输后续Modbus VI。
error out——错误输出包含错误信息。该输出提供标准错误输出功能。

八、Write Multiple Coils VI/写入多个线圈VI

8.1 功能

主站一次性向从站写入一组连续的开关量 True/False。

8.2 控件图

8.3 输入

Modbus master in——接收任何Modbus主实例,由Create Master Instance (Serial) VI/创建主实例(串行)VI创建。
starting address——起始 Coil 地址​​​​​​​。
coil to write——要写入的布尔值,True 或 False。(Boolean Array 布尔数组

error in(no error) ——错误输入表明该节点运行前发生的错误条件。该输入将提供标准错误输入功能。

8.4 输出

Modbus master out——输出Modbus主站引用,继续传输后续Modbus VI。
error out——错误输出包含错误信息。该输出提供标准错误输出功能。

九、Write Multiple Coils VI/写入多个线圈VI

9.1 功能

主站一次性向从站写入一组连续的开关量 True/False。

9.2 控件图

9.3 输入

Modbus master in——接收任何Modbus主实例,由Create Master Instance (Serial) VI/创建主实例(串行)VI创建。
starting address——起始 Coil 地址。
coil to write——要写入的布尔值,True 或 False。(Boolean Array 布尔数组

error in(no error) ——错误输入表明该节点运行前发生的错误条件。该输入将提供标准错误输入功能。

9.4 输出

Modbus master out——输出Modbus主站引用,继续传输后续Modbus VI。
error out——错误输出包含错误信息。该输出提供标准错误输出功能。

十、Read Holding Registers VI/读取保持寄存器VI

10.1 功能

从连续的保持寄存器读取值。此VI可以读取的最大保持寄存器数为125。

10.2 控件图

10.3 输入

Modbus master in——接收任何Modbus主实例,由Create Master Instance (Serial) VI​​​​​​​/创建主实例(串行)VI创建。
starting address——起始地址指定读取操作的初始地址。有效值介于0和65535之间,其中65535是最大值。

number of holding registers——从初始地址开始从设备读取的寄存器数量。
error in(no error) ——错误输入表明该节点运行前发生的错误条件。该输入将提供标准错误输入功能。

10.4 输出

Modbus master out——输出Modbus主站引用,继续传输后续Modbus VI。
register values——读取到的寄存器值(U16一维数组)。
error out——错误输出包含错误信息。该输出提供标准错误输出功能。

十一、Write Single Holding Register VI/写入单保持寄存器VI

11.1 功能

主站向从站的某一个 16 位保持寄存器写入一个 U16 数值。

11.2 控件图

11.3 输入

Modbus master in——接收任何Modbus主实例,由Create Master Instance (Serial) VI/创建主实例(串行)VI创建。
address——要写入的保持寄存器地址。
register to write——要写入的寄存器值。
error in(no error) ——错误输入表明该节点运行前发生的错误条件。该输入将提供标准错误输入功能。

11.4 输出

Modbus master out——输出Modbus主站引用,继续传输后续Modbus VI。
error out——错误输出包含错误信息。该输出提供标准错误输出功能。

十二、Write Multiple Registers VI/写入多个保持寄存器VI

12.1 功能

主站从某个起始地址开始,连续向从站写入一组 U16 寄存器值。

12.2 控件图

12.3 输入

Modbus master in——接收任何Modbus主实例,由Create Master Instance (Serial) VI/创建主实例(串行)VI创建。
staring address——起始保持寄存器地址​​​​​​​。
registers to write——要写入的 U16 数组​​​​​​​。
error in(no error) ——错误输入表明该节点运行前发生的错误条件。该输入将提供标准错误输入功能。

12.4 输出

Modbus master out——输出Modbus主站引用,继续传输后续Modbus VI。
error out——错误输出包含错误信息。该输出提供标准错误输出功能。

十三、Read Input Registers VI​​​​​​​/读取输入寄存器VI

13.1 功能

主站从从站读取一段连续的只读输入寄存器,返回 U16 数组。
Input Register 通常只能读,不能写
Holding Register 通常可读可写

13.2 控件图

13.3 输入

Modbus master in——接收任何Modbus主实例,由Create Master Instance (Serial) VI/创建主实例(串行)VI创建。
staring address——起始输入寄存器地址。

number of inputs——要读取的输入寄存器数量​​​​​​​。
error in(no error) ——错误输入表明该节点运行前发生的错误条件。该输入将提供标准错误输入功能。

13.4 输出

Modbus master out——输出Modbus主站引用,继续传输后续Modbus VI。
register values——读取到的输入寄存器值,U16 数组。

error out——错误输出包含错误信息。该输出提供标准错误输出功能。

转载自 CSDN-专业IT技术社区

原文链接:https://blog.csdn.net/weixin_42715977/article/details/162521463

评论

赞0

评论列表

微信小程序
QQ小程序

关于作者

点赞数:0
关注数:0
粉丝:0
文章:0
关注标签:0
加入于:--