MODOBUS伺服通讯设置

本文介绍了一种基于Modbus_RTU协议的通讯模块配置方法,并详细阐述了如何通过Modbus通讯进行伺服参数的读写操作。文章覆盖了从初始化Modbus通讯到具体参数的设定过程。

(*********************************【Modbus_Comm_Load参数设置】********************************)
//Modbus_Comm_Load允许组态Modbus_RTU的通讯模块端口
#Modbus_Comm_Load_Instance.REQ := "第一个循环触发" OR #Re_Load_Master;

#Modbus_Comm_Load_Instance(REQ:= #Modbus_Comm_Load_Instance.REQ ,//触发位
                           "PORT":="Local~CM_PtP_RS422_485_HF_1",//CM 端口值,即“硬件 ID
                           BAUD:=57600,//波特率
                           PARITY:=0,//选择奇偶校验
                           FLOW_CTRL:=0,//选择流控制 默认)无流控制                           
                           RTS_ON_DLY:=0,//RTS 接通延迟选择,
                           RTS_OFF_DLY:=0,//RTS 关断延迟选择
                           RESP_TO:=1000,//响应超时
                           DONE=>#Modbus_Comm_Load_Instance.DONE,//完成并且没有错误
                           ERROR=>#Modbus_Comm_Load_Instance.ERROR,//完成出错
                           STATUS=>#Modbus_Comm_Load_Instance.STATUS,//完成出错代码
                           MB_DB:=#Modbus_Master_Instance.MB_DB);

IF #Re_Load_Master = 1 OR "第一个循环触发" THEN
    IF #Modbus_Comm_Load_Instance.ERROR = 0 THEN
        IF #Modbus_Comm_Load_Instance.DONE = 1 THEN
            "流程控制_DB".#基础报警.Alarm_10 := 0;
            #Re_Load_Master := 0;
        END_IF;
    END_IF;
END_IF;

//如果首次参数设置失败则退出MODBUS通讯块。
IF   #Re_Load_Master OR  "第一个循环触发"  OR ("参数设定_DB".穿梭车状态.任务执行中=0 AND "触摸屏使用".维修.维修执行=0)
THEN
    #伺服参数写入 := 1;
    #伺服参数读取 := 0;
    #W_DATA := 0;
    #伺服读取无措完成 := 0;
    #伺服读取无措完成 := 0;
    #伸缩伺服动作开始 := 0;
    RETURN;
END_IF;

(**************************************行走伺服参数设定**********************************)
IF "流程控制_DB".穿梭车状态.M_28 = 1 AND "触摸屏使用".维修.维修执行=0 THEN
    
    IF #伺服读取无措完成 = 1 THEN
        #伺服参数写入 := 1;
        #伺服读取无措完成 := 0;
    ELSIF #伺服写入无措完成 = 1 THEN
        #伺服参数读取

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

meslog

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值