安全机制¶
1.1 本章简介¶
本章介绍运动控制器提供给用户的所有可用安全机制,包括:正负硬限位、正负软限位、驱动报警、闭环跟随误差、开环跟随误差、圆形运动安全区等触发或者越界时采取的平滑停止或者紧急停止等安全保护机制;由于不可抗力因素导致网络断线时从站及扩展模块的状态按照用户设置保持或者复位等安全保护机制。
1.2 限位¶
1.2.1 指令列表¶
| 指令 | 说明 |
|---|---|
| GTN_SetSoftLimitEx | 设置轴正向软限位和负向软限位。 |
| GTN_GetSoftLimitEx | 读取轴正向软限位和负向软限位。 |
| GTN_LmtsOnEx | 开启控制器限位。 |
| GTN_LmtsOffEx | 关闭控制器限位。 |
| GTN_GetLimitInfo | 读取当前限位状态和触发信息。 |
1.2.2 重点说明¶
运动控制器能够通过安装硬件限位开关或者设置软限位来限制各轴的运动范围,如图所示。
工作台碰到限位开关或者规划位置超越软限位时,运动控制器按照用户设置的紧急停止减速度紧急停止工作台的运动。限位触发以后,运动控制器禁止向触发限位方向运动,同时该轴相应的限位触发方向状态置1,状态可通过指令GTN_GetStsEx读取。轴运动到安全运动范围内后,需要调用指令GTN_ClrSts清除轴的状态,才能使轴状态恢复到正常状态。控制器复位后,默认软限位是无效的,没有触发的。
提示
- 限位标志为模态标志,一旦置起,需在离开限位回到安全运动范围以后,调用指令GTN_ClrSts清除限位触发状态。
- 软限位使用流程:回原点以后设置软限位。
- 正向软限位必须大于负向软限位。
- 软限位和限位开关可以同时使用,当软限位触发时也会置起限位触发标志。
- 限位触发以后使用急停减速度紧急停止。默认急停减速度为1000pulse/ms2,用户可以调用GTN_SetStopDec进行修改。
软限位设置例程
1.3 驱动报警¶
1.3.1 重点说明¶
运动控制器提供专用的驱动报警信号输入接口。当检测到驱动器报警信号以后,运动控制器将关闭该轴的伺服使能,立即停止运动规划,同时该轴报警触发标志置1,状态可通过指令GTN_GetStsEx读取。
提示
驱动器报警信号产生以后,应当执行以下操作:
1. 了解驱动器报警状态,确定引起驱动器报警的原因,解决驱动器报警。
2. 清除驱动器实际报警后,需要调用GTN_ClrSts清除控制器报警状态,控制器轴可以正常运动。
1.4 跟随误差¶
1.4.1 指令列表¶
| 指令 | 说明 |
|---|---|
| GTN_SetPosErr | 设置闭环跟随误差极限值。 |
| GTN_GetPosErr | 读取闭环跟随误差极限值。 |
| GTN_SetAxisPosErrLimit | 设置开环跟随误差极限值。 |
| GTN_GetAxisPosErrLimit | 读取开环跟随误差极限值。 |
| GTN_SetMcMode | 设置控制器功能模式。 |
| GTN_GetAxisError | 读取profile经过当量变换之后的规划位置与encoder经过当量变换之后的编码器位置的差值。 |
1.4.2 重点说明¶
对于伺服控制系统而言,在某些异常情况下,例如电机故障、编码器A、B相信号接反或断线、机械摩擦太大或者机械故障造成电机堵转等,电机的实际位置可能与规划位置差距很大。为了及时检测这些情况,增强系统的安全性并延长设备使用寿命,运动控制器提供跟随误差超限自动停止的安全保护机制。
运动控制器在每个控制采样周期内都检查控制轴的实际位置与规划位置的误差是否超越所设定的跟随误差极限。如果位置误差超越所设定的跟随误差极限,运动控制器自动紧急停止该轴的运动,同时该轴跟随误差越限标志置1,状态可通过指令GTN_GetStsEx读取。
设置闭环跟随误差极限可通过指令GTN_SetPosErr。通过MotionStudio设置请参考"系统配置"1.3.5节。
1.4.3 跟随误差来源设置¶
控制器默认状态下,跟随误差功能是由控制器根据规划位置和编码器位置实时计算的。由于控制器读取编码器位置时存在网络延时,计算出的跟随误差存在延时。固高自主研发的gLink-II驱动器支持计算实时的跟随误差,可以通过指令GTN_SetMcMode设置控制器所有轴的跟随误差数值来源(即指令GTN_GetAxisError读取的跟随误差值)和跟随误差报警状态数据依据(即指令GTN_GetStsEx读取的bit4状态)。
注意
- 通过指令GTN_SetMcMode设置跟随误差数值来源为驱动器计算的跟随误差。
(1) gLink-II驱动器模块需要通过DriverStudio设置相应的参数,如图所示。具体操作请咨询我司技术支持工程师。DriverStudio调试软件修改参数 (2) GTN_GetAxisError读取的是驱动器计算的误差。
(3) 非gLink-II驱动器模块(例如:GNM模块)通过指令GTN_GetAxisError读取的是控制器计算的误差。 - 通过指令GTN_SetMcMode设置跟随误差报警的数据依据为驱动器端的跟随误差。
(1) gLink-II驱动器模块需要通过DriverStudio设置相应的参数,如图所示。具体操作请咨询我司技术支持工程师。DriverStudio调试软件修改参数 (2) GTN_GetStsEx读取的bit4(跟随误差越限标志)的状判断依据为驱动器端的跟随误差值。
(3) 非驱动器模块(例如:GNM模块)通过指令GTN_GetStsEx读取的bit4(跟随误差越限标志)的状判断依据为控制器计算的跟随误差值。
1.5 圆形安全区功能¶
1.5.1 指令列表¶
| 指令 | 说明 |
|---|---|
| GTN_SetAxisCircularSafetyZone | 设置圆形安全区功能。圆形安全区使能后,轴只能在圆形安全区内运动。 |
| GTN_GetAxisCircularSafetyZone | 读取圆形安全区功能参数。 |
1.5.2 重点说明¶
圆形安全区可以由任意两个轴组成,并且允许轴不在坐标系中。如图所示:X轴、Y轴使能了圆形安全区,则X轴、Y轴只能在圆形安全区内运动。轴位置超过安全区后以“紧急停止减速度”停止,不会准确停止到边界上。
圆形安全区功能例程
1.6 安全模式¶
1.6.1 指令列表¶
| 指令 | 说明 |
|---|---|
| GTN_RN_SetStationSafeModeOut | 设置gLink-II网络型从站模块物理资源的安全模式。 |
| GTN_RN_ClearStationSafeModeStatus | 清除gLink-II网络型从站模块的安全模式状态。 |
| GTN_RN_SetStationSafeModeControl | gLink-II网络型从站模块安全模式总开关以及安全模式清除类型。 |
| GTN_RN_IlinkSetSafeModeOut | 设置gLink-I扩展模块指定物理资源的安全模式开关以及进入安全模式后的期望输出值。 |
| GTN_RN_IlinkClearSafeModeStatus | gLink-I扩展模块手动清除从站安全模式状态。 |
| GTN_RN_IlinkSetSafeModeControl | g设置gLink-I扩展模块物理资源安全模式的总开关以及安全模式清除类型。 |
1.6.2 重点说明¶
默认状态下,gLink-II网络型模块在一些异常情况(比如:控制器断电、网线通讯异常等)会处于断网的状态,数字量输出和使能等信号输出状态会保持断网前状态。但对于一些设备来说,断网时的这种状态是不安全的状态,用户需要根据自己设备的实际情况,设置断网时数字量输出和使能的状态。
安全模式可以设置gLink-II网络模块在断网状态下输出信号的保持状态。用户使能网络模块的安全模式后,在断网时,gLink-II网络模块进入安全保护状态,按照用户的设置值进行断网保持。
安全模式使能状态下,通用输出信号和使能信号均不可控制,需要清除或退出安全模式才能正常控制。控制器提供两种清除安全模式的方式:手动和自动。手动模式下,需要调用指令GTN_RN_ClearStationSafeModeStatus手动退出安全模式。自动模式下,gLink-II网络型模块通讯正常后自动退出安全模式。用户根据实际需求设置模式。
同样gLink-I协议的扩展模块也支持安全模式功能,用户可以通过指令设置安全模式。