1.4 实时发送机器人速度
1.4.1 速度输出
PLC希望实时获取当前机器人的实际运行速度,以便做数据记录和在HMI显示。
ABB工业机器人系统输出提供TCP Speed相关输出信号的配置,该信号反映机器人的实时速度变化,单位为m/s。注意,该信号为模拟量输出信号,所以需要先在机器人侧创建一个模拟量输出信号。具体实现如下所示。
(1)在机器人“控制面板”-“配置”-“I/O”中创建一个模拟量输出信号,关联至某个I/O设备(如图1-29中的PN_Internal_Device)。
(2)机器人的运行速度通常不会超过6000 mm/s,为提高显示精度,可保留一位小数。由于发送的组输出必须是整数,所以可以将速度放大10倍输出,即若机器人的速度为1000 mm/s,则发送组输出数据为10000。
(3)由于TCP Speed的输出速度单位是m/s,故在图1-29中将最大逻辑值设置为6,最大比特值设置为60000,即当TCP Speed的输出速度为6m/s时,对应的组输出为60000。
图1-29 模拟量输出信号
(4)采用16位数据就可以表示0~65535,故此处配置的信号占用16位地址。Device Mapping可以设置为“0-15”(若PLC端是西门子PLC等,考虑到大小字节的颠倒问题,Device Mapping设置为“8-15,0-7”)。
(5)在“控制面板”-“配置”-“I/O”-“Signal”的“System Output”中,进行如图 1-30 所示的配置,将之前创建的模拟量输出信号ao_speed关联到系统输出状态TCP_Speed上。
图1-30 将模拟量输出信号ao_speed关联到系统输出状态TCP Speed上
(6)PLC端对接收到的数据进行相应处理,如图1-31所示,即可实时获取机器人当前的运行速度。
图1-31 CODESYS读取机器人当前的运行速度