激光功能¶
1.1 简介¶
运动控制器支持激光能量输出功能,并且提供三种激光能量输出模式来控制激光输出能量大小,分别为:占空比模式、频率模式和模拟量模式。控制器和网络模块内部都有激光功能资源,两者之间的工作原理见下图。

重要
- 资源映射请参考“基本操作指南”章节,在开卡时已明确控制器和网络模块之间的资源映射。
- 网络模块中的1路激光对应2路HSO差分信号,包括开关信号和PWM信号。
1.1.1 控制器资源¶
不同类型的控制器激光软件资源个数不一样,详细请参考下表,也可以通过指令GTN_GetResCount(参数type = MC_LASER)获取控制器的激光软件资源个数。
| 型号 | 核1 | 核2 |
|---|---|---|
| GSN-008-G-00 | 4 | - |
| GSN-008-V-00 | 4 | - |
| GSN-008-LT-01 | 4 | - |
| GSN-024-G-01 | 4 | - |
| GSN-024-V-01 | 4 | - |
| GSN-024-LT-01 | 4 | - |
| GSN-048-G-01 | 4 | - |
1.1.2 网络模块资源¶
网络型模块的激光资源和硬件输出类型及资源个数:
| 模块类型 | 激光资源个数 | HSO差分信号 (硬件通道路数) |
|---|---|---|
| GNM403 | 2 | 2 |
| GTM+振镜激光子板 | 1 | 2 |
重要
- GTM中的激光子板是每个子板支持1套激光和2路5V硬件输出通道。每个GTM可根据实际情况接多个激光子板。
1.2 激光硬件通道¶
1.2.1 指令列表¶
| 指令 | 说明 |
|---|---|
| GTN_SetTerminalPermitEx | 设置硬件通道口的控制权。 |
| GTN_GetTerminalPermitEx | 获取硬件通道口的控制权。 |
1.2.2 重点说明¶
激光功能只能从高速输出(HSO / LASER) 硬件接口输出,高速输出口通常为多个功能复用,为了保证激光开关光和PWM信号能够正常输出,首先需要将高速硬件输出口的控制权与激光绑定。具体的软件功能可参考指令GTN_SetTerminalPermitEx中的参数permit解释说明。
默认状态下,GNM-403-00模块的HSO00±、HSO01± 分别配置为激光功能的开关信号(Laser+ 和Laser-)和激光能量通道(即使能PWM 信号输出(PWM+ 和PWM-)),具体可参考《GNM系列GNM 模块用户手册》。
1.3 通用激光控制功能¶
1.3.1 指令列表¶
| 指令 | 说明 |
|---|---|
| GTN_GetLaserStatus | 读取激光信息。 |
| GTN_LaserOff | 关闭激光开关信号。 |
| GTN_LaserOn | 打开激光开关信号。 |
| GTN_LaserOnStatus | 读取激光开关信号的状态。 |
| GTN_LaserOutFrq | 当激光能量输出模式为占空比模式时,设置激光PWM信号输出的频率。 |
| GTN_LaserPowerMode | 设置激光能量输出方式和能量最大最小限制值。 |
| GTN_LaserPrfCmd | 设定激光PWM信号输出能量的大小。 |
| GTN_SetPulseWidth | 当激光能量输出模式为频率模式时,设置固定脉宽值。 |
| GTN_SetLevelDelay | 设置打开和关闭激光开关信号的延时时间。 |
运动控制器提供的三种激光能量输出模式详细信息如下:
1.3.2 占空比输出模式¶
该模式为在固定的PWM频率下,通过调整占空比实现对激光输出能量的控制。
(1) 首先要调用指令GTN_LaserPowerMode将激光设置为占空比输出模式,并且设定占空比范围。
(2) 调用指令GTN_LaserOutFrq设置PWM信号的输出频率,单位:kHz。
(3) 占空比的设置则通过调用指令GTN_LaserPrfCmd来实现。
(4) 最后调用指令GTN_LaserOn打开激光开关光。
注意
- 出于安全考虑,激光PWM信号默认与开关光信号绑定,在激光关闭的情况下,PWM不单独输出,只有在激光开关光信号打开的时候,PWM信号才输出。
- 在激光打开时,允许通过调用指令GTN_LaserPrfCmd实时调节PWM输出能量大小。
例程
例程请参考“激光功能”文件夹中“2-占空比输出模式”。
1.3.3 频率输出模式¶
该模式为设置固定的PWM脉冲宽度,通过调整频率实现对激光输出能量的控制。
(1) 先调用指令GTN_LaserPowerMode将激光设置为频率输出模式,同时设置输出频率的范围。
(2) 再调用指令GTN_SetPulseWidth设置PWM信号输出的脉冲宽度,单位:μs。
(3) 与占空比模式一样,频率模式下的能量调节也是通过指令GTN_LaserPrfCmd来实现。
(4) 设置好之后,调用指令GTN_LaserOn启动输出即可。
例程
请参考“激光功能”文件夹中“3-频率输出模式”。
1.3.4 模拟量输出模式¶
该模式为通过直接调整输出电压大小来实现对激光输出能量的控制,与前两个模式不同之处为,激光模拟量从pin4口输出,而不是HSO口。
(1) 调用指令GTN_LaserPowerMode将激光设置为模拟量输出模式,并且设置输出范围。
(2) 再调用指令GTN_LaserPrfCmd设置模拟量输出值。
(3) 最后调用指令GTN_LaserOn启动输出。
例程
请参考“激光功能”文件夹中“4-模拟量输出模式”。
1.3.5 激光开关光延时¶
激光开关光延时包括激光的开延时和激光的关延时两种,单位为μs,最大延时时间为65535μs。通过调用指令GTN_SetLevelDelay可以设置激光开关光信号与运动之间的延时。开延时主要解决机械滞后引起的起笔重的现象,关延时主要解决机械惯性造成的终点不完整和封口等现象。
用户设置了激光开关的延时之后,一旦有激光开关的动作,控制器都会自动插入延时。该延时时间只和激光开关有关。
考虑到机械系统的滞后性,用户需要设置激光开关的延时,否则会出现起始点处有激光打重点的情况(即火柴头现象),如图所示的现象:

激光开关光延时的大小不仅和激光头运动的速度和加速度有关,并且和实际的控制系统也有关,用户应使用系统反复地调试才能有比较好的效果。一般情况下,关延时应该比开延时要长。
例程
请参考“激光功能”文件夹中“5-激光开光延时”。
1.4 插补缓存区的激光操作¶
1.4.1 指令列表¶
| 指令 | 说明 |
|---|---|
| GTN_BufLaserOffEx | 插补缓存区关闭激光开关信号。 |
| GTN_BufLaserOnEx | 插补缓存区打开激光开关信号。 |
| GTN_BufLaserPrfCmdEx | 插补缓存区设置激光PWM信号输出能量的大小。 |
| GTN_BufLaserFollowModeEx | 插补缓存区设置能量跟随的模式参数。 |
| GTN_BufLaserFollowOffEx | 插补缓存区关闭激光能量跟随功能。 |
| GTN_BufLaserFollowRatioEx | 插补缓存区设置能量跟随的比率参数。 |
控制器不仅支持激光的立即输出,而且还提供了两种在插补缓冲区操作激光能量输出的方式:能量直接输出模式、能量跟随输出模式。
1.4.2 能量直接输出模式¶
在插补运动过程中,
(1) 通过缓冲区指令GTN_BufLaserOnEx和GTN_BufLaserOffEx控制激光在特定的位置开和关。
(2) 能量直接输出则是指激光开时,输出的能量为用户通过缓冲区激光能量控制指令GTN_BufLaserPrfCmdEx设置的值。同时也支持在固定的位置通过指令GTN_BufLaserPrfCmdEx调整后续插补运动段输出能量大小。
该模式需要在启动插补运动之前设置好激光能量输出模式以及其他固定的能量参数,具体流程详见1.2 章节。
例程
请参考“激光功能”文件夹中“6-直接输出频率模式”。
1.4.3 能量跟随输出模式¶
激光加工过程中,常常会在加工的起点和终点以及轨迹拐角处加工得比较重,这主要是因为加工过程中能量分布不均匀而引起的。如果激光能量可以和加工速度协调输出(即能量跟随),则可以很好地解决上述问题。
为了解决上述问题,控制器提供了一种线性能量跟随输出的方式,即激光能量输出值严格地按照一定的函数关系与运动速度相匹配,达到激光能量分布均匀的效果。与能量直接输出模式相同,需要先设置好激光能量输出模式。再在缓冲区调用开激光指令GTN_BufLaserOnEx之前,通过缓冲区指令GTN_BufLaserFollowModeEx设置激光为能量跟随模式和初始激光能量值,再通过缓冲区指令GTN_BufLaserFollowRatioEx设置能量跟随的比例系数,以及能量的最大值和最小值限制等参数,同时启动激光能量跟随功能。在需要关闭缓冲区激光能量跟随时,可调用指令GTN_BufLaserFollowOffEx关闭。
能量跟随模式下,激光输出的能量信号会按照用户设定的跟随比例跟着合成规划/编码器速度变化。假设合成速度为vel,单位为pulse/ms,以占空比来控制能量的变化,在输出的占空比大小为x%的情况下,则它们之间的关系为:
其中minPower为用户设定的最小能量输出。
如果以频率来控制能量的变化,则频率按跟随比例与合成速度的乘积成正比,公式同上。模拟量输出模式同理。用户在应用过程中,要保证x的值不能大于maxPower(设定的最大能量值),如果x的值大于maxPower,则输出为maxPower。其输出如图表示:

例程
请参考“激光功能”文件夹中“7-能量跟随频率模式”。
1.5 10路激光能量跟随功能¶
1.5.1 指令列表¶
| 指令 | 说明 |
|---|---|
| GTN_LaserFollowMode | 设置激光能量跟随模式参数。 |
| GTN_LaserFollowRatio | 设置激光能量跟随参数。 |
| GTN_BufMultiLaserFollowOnEx | 插补缓冲区中批量使能激光能量跟随功能,能量跟随参数分别为指令GTN_BufLaserFollowModeEx和指令 GTN_BufLaserFollowRatioEx设置的对应值。 |
| GTN_BufMultiLaserFollowOffEx | 插补缓冲区中批量关闭激光能量跟随功能。 |
| GTN_BufMultiLaserOnEx | 插补缓冲区中批量开激光功能。 |
| GTN_BufMultiLaserOffEx | 插补缓冲区中批量关闭激光功能。 |
1.5.2 重点说明¶
一个控制器最多支持10路激光,目前GNM402支持1路激光,GNM403支持1路激光,GTM支持最多10路激光。如果同时接了上述三种网络型模块,当只想操作GTM上的10路激光时,必须把GTM接到GNM402和GNM403之前。
10路激光能量跟随可以通过原有方式实现,参考1.4.3章节。也可以先通过该章节列出的新指令批量控制:
(1) 首先调用立即指令GTN_LaserFollowMode和GTN_LaserFollowRatio分别设置10路激光能量跟随的模式和比例系数。
(2) 再通过缓冲区指令GTN_BufMultiLaserFollowOnEx、GTN_BufMultiLaserFollowOffEx以及GTN_BufMultiLaserOnEx、GTN_BufMultiLaserOffEx使能和关闭能量跟随和激光。
例程
请参考“激光功能”文件夹中“8-GTM10路激光输出”。
1.6 激光波形控制功能¶
1.6.1 指令目录¶
| 指令 | 说明 |
|---|---|
| GTN_LoadWaveformParameter | 下载波形控制数据。 |
| GTN_EnableWaveform | 使能波形控制开关。 |
| GTN_GetWaveformStatus | 获取波形控制功能状态。 |
| GTN_BufEnableWaveformEx | 波形控制开关使能。 |
| GTN_SetWaveformMode | 设置波形控制功能模式。 |
| GTN_GetWaveformMode | 获取波形控制功能模式。 |
| GTN_SetWaveformPairPrm | 设置波形控制两路输出波形参数。 |
| GTN_SetWaveformPairAhead | 设置波形控制两路输出提前模式波形参数。 |
| GTN_EnableWaveformPair | 使能波形控制两路输出开关。 |
| GTN_SetWaveformPairOutputValid | 单独设置硬件输出口为波形控制有效/无效。 |
| GTN_GetWaveformPairStatus | 获取波形控制两路输出功能状态。 |
1.6.2 重点说明¶
支持用户自定义激光能量曲线来调节激光能量的功能,可以提高激光加工和测量的精度和稳定性。激光能量曲线支持立即输出模式、到点输出模式(和位置比较输出功能关联),详细可参考指令GTN_SetWaveformMode。