昆仑通态MCGS与台达伺服ASD-B2 通讯控制案例功能:通过昆仑通态MCGS触摸屏实现与台达ASD B2通讯控制,全通讯控制台达 B2驱动器速度设置,速度选择,速度启动,带扭矩限制速度控制,扭矩限制通讯设置。
配件:昆仑通态MCGS触摸屏,台达ASD B2伺服驱动器+伺服电机。
CN1接线端子,CN3伺服驱动器通讯接头。
说明:是程序,带说明教程

最近在项目中捣鼓了昆仑通态MCGS触摸屏与台达ASD – B2伺服驱动器的通讯控制,现在来和大家分享下这个有趣的过程。
一、所需配件
本次项目用到的“小伙伴”有:昆仑通态MCGS触摸屏、台达ASD – B2伺服驱动器搭配伺服电机、CN1接线端子以及CN3伺服驱动器通讯接头。这些都是实现通讯控制的关键“角色”。
二、实现功能
三、程序及说明教程
(一)昆仑通态MCGS触摸屏端设置
在MCGS的实时数据库中,我们需要建立一系列变量与台达ASD – B2驱动器的参数进行关联。例如:
// 速度设置变量
float SpeedSet;
// 速度选择变量,假设0代表低速,1代表高速
int SpeedSelect;
// 速度启动变量,0为停止,1为启动
int StartStop;
// 扭矩限制设置变量
float TorqueLimit;
这些变量就像是连接触摸屏与驱动器的桥梁,负责数据的传递。
在MCGS的用户界面设计窗口,绘制速度设置输入框、速度选择按钮、启动停止按钮以及扭矩限制设置输入框等控件,并将它们与刚才建立的变量进行绑定。比如说,速度设置输入框绑定到 SpeedSet 变量,这样在输入框中输入的值就会实时更新到 SpeedSet 变量中。
(二)通讯设置
台达ASD – B2驱动器支持RS – 485通讯,所以在MCGS触摸屏的设备窗口中添加串口通讯设备,并设置通讯参数与驱动器一致。例如:
// 设置波特率为9600
Device.BaudRate = 9600;
// 设置数据位为8位
Device.DataBits = 8;
// 设置停止位为1位
Device.StopBits = 1;
// 设置校验位为无校验
Device.Parity = "None";
确保通讯参数正确无误,就像两个人约定好用同样的语言交流一样,这是通讯成功的基础。
台达ASD – B2驱动器使用的是MODBUS RTU协议。在MCGS中,我们通过脚本语言编写MODBUS通讯指令。以下是一个简单的写入速度设置值的示例代码:
Sub WriteSpeedSet()
Dim slaveAddr As Integer
Dim regAddr As Integer
Dim data As Float
slaveAddr = 1 '从站地址,根据实际设置
regAddr = 30001 '假设速度设置寄存器地址为30001
data = SpeedSet '获取触摸屏上设置的速度值
// 这里使用MCGS提供的MODBUS写寄存器函数
Call Modbus.WriteSingleRegister(slaveAddr, regAddr, data)
End Sub
在这段代码中,我们首先定义了从站地址 slaveAddr、寄存器地址 regAddr 以及要写入的数据 data,然后调用MCGS提供的MODBUS写寄存器函数将速度设置值写入到驱动器对应的寄存器中。
(三)台达ASD – B2驱动器端设置
进入驱动器的参数设置界面,将通讯模式设置为RS – 485,并且确保波特率、数据位、停止位、校验位等参数与MCGS触摸屏设置的一致。例如,将波特率设置为9600,数据位8位,停止位1位,无校验。
将驱动器的速度设置、速度选择、启动停止以及扭矩限制等功能与MODBUS寄存器进行映射。例如,将速度设置映射到寄存器30001,速度选择映射到寄存器30002等。这样,当MCGS触摸屏通过MODBUS协议向这些寄存器写入数据时,驱动器就能正确识别并执行相应的操作。

经过以上步骤的设置和编程,昆仑通态MCGS触摸屏就能与台达ASD – B2伺服驱动器实现稳定的通讯控制啦。整个过程就像是搭建一座复杂的桥梁,每个环节都至关重要,希望大家在实际操作中能顺利实现这个功能。如果遇到问题,欢迎一起交流探讨。


