1 新建普通字符串变量(名称为设备名字+参数名称)
示例 1:西门子动态修改 IP
(1)新建字符串变量 (!注意名称命名为 设备名字+参数名称)
如图所示 变量名为 设备名:西门子 S7-200smart + 固定参数名称: _addr

(2)把该变量设置为自动保存

(3)修改变量的值

(4)保存逻辑
cpp 复制代码 vm->saveAll();

此时设备运行 ip 地址即为 该变量地址
示例 2:ModBusRTU 动态修改 COM
(1)新建字符串变量
如图所示 变量名为 设备名:西门子 S7-200smart + 固定参数名称: _portName

可通过该方式设置的参数
下面添加的设备名称为 Modbus/RTU
创建 设备名称+以下参数 如 Modbus/RTU_portName、Modbus/RTU_baudRate ...
串口
端口号 _portName
波特率 _baudRate
数据位 _dataSize
校验位 _parity
停止位 _stopBits
485 延时 _r485delay
网口
用法同串口
地址 _addr
端口 _port
动态修改其他参数
下面以 modbus 为例
修改站号
c++ 复制代码dm->getDevice("Modbus/RTU")->setStationNo(n)
进行其他 setting 设置
c++ 复制代码string settings = R"({"stopBits":"1","maxReadLen":"120","parity":"1","DeviceId":"Modbus/RTU","portName":"COM1","maxAddrInterval":"10","issim":"true","NoR":"3","coding":"0","seqAsc":"0","comDelay":"1200","StationNo":"1","seqLong":"0","Protocol":"ModbusRtu","if":"RS485","framDelay":"4","seqFloat":"2","period":"10","Optz":"true","dll":"ModBusDriver","seqInt32":"2","dataSize":"8","maxWriteLen":"120","baudRate":"9600","seqInt16":"0"})"
dm->getDevice("Modbus/RTU")->setSettings(settings)
需要确认型号或具体项目?联系技术支持 ↗