正运动技术
正运动技术
EN

协助伙伴成功,是我们的价值所在

The value of Zmotion is to bring customers more success!

首页 / 支持与服务 / 常见问题

COMMON PROBLEMS

常见问题

  • 一、错误码整理列表

  • 二、PLC中LV局部寄存器的使用介绍

    局部寄存器LV:

    在函数内局部有效的寄存器,每个函数的每个运行实例使用不同的数据;每个函数有8个LV,编号0-7;此寄存器为32位浮点数。
    此寄存器与ZBASIC的LOCAL类似,ZBASIC调用ZPLC时,调用参数自动传入LV寄存器。
    LV存储器可以同时作为变址寄存器。

    编程示例:

    微信图片_20191031150738.png
    程序功能介绍: 上电后,通过BASIC程序开启两个子任务,分别调用PLC中的SUB_CAL和SUB_CAL1两个子函数, 两个子函数都通过局部寄存器LV1作返回值,但由于LV是局部寄存器,每个函数都有独自的8个LV寄存器,所以,当X0接通时,a、b两个变量分别被赋值为3和4。同时由于LV局部寄存器可以作变址寄存器,所以,DT2的值为3,DT3的值为4。

  • 三、IO扩展模块的IO口编号如何计算

    根据模块的ID来确定,ID通过拨码开关的组合值来确定,类似8421方式的组合。

    对ZIO1608所有拨码OFF,ID0 – 输入16 – 31 输出16-23

    第一个拨码ON,其他OFF,ID1 – 输入32 – 47 输出32-39

    拨码1,2,ON,其他OFF,ID3 – 输入64 – 79 输出64-71

    依次类推。

  • 四、ZMC控制器使用常见问题(1)

    1.调用运动指令,但是轴没有动

    可能1:

           有限位或告警输入,或限位告警的电平配置错误。

           特殊信号缺省是常闭的,国内部分产品是常开的。需要设置INVERT_IN把对应的口翻转过来。

     

    可能2:

           轴的atype配置错误.

     

    2.提示不认识的label

    可能1:

           变量没有在使用前声明。

     

    可能2:

           label有字符敲错。

     

    3.使用 MPOS= 赋值修改坐标后坐标有误差

    DPOS是虚拟位置,MPOS是反馈位置,对虚拟轴,MPOS = DPOS。

    修改MPOS时确认运动已经完全停止,否则会有不确认的因素。

    为保险起见,可以使用DPOS=赋值来修改坐标,此时只用虚拟轴停止即可。

     

    4.RUN启动多任务出错

    RUN STOP 后面接BAS文件名。

    RUNTASK 后面接SUB过程名

     

    5. ticks计算出来的值有问题

    ticks是减减计数的。

     

    6.连续插补如何实现

    设置参数  merge=on

    如果需要拐角减速和小圆限速,则要使用更多的参数。

    merge = on '启动连续插补

    CORNER_MODE = 2'启动拐角减速

    DECEL_ANGLE = 15 * (PI/180)'开始减速的角度 15度

    STOP_ANGLE = 45 * (PI/180)'降到最低速度的角度45度

    FULL_SP_RADIUS = 100    '小圆

     

    如何知道连续插补当前运动到那一段了?

    使用 MOVE_MARK 和 MOVE_CURMARK 来判断。

     

    如何自己规划每条线段的限速?

    采用 MOVESP等指令, 同时设置好FORCE_SPEED, ENDMOVE_SPEED等参数。

     

    7.点位运动如何实现

    没有专门的点位运动指令,直接使用MOVE指令来实现,一次只操作一个轴。

    MOVE AXIS(0)

    MOVE AXIS(1)

     

    8.vmove多个轴是否可以

    不可以, 必须分多条命令。

    VMOVE(1)  axis(0)

    VMOVE(1)  axis(1)

     

    9.插补运动的参数如何设置

    BASE的第一个轴为主轴,主轴的参数就是插补运动的参数。

     

    BASE(1,2)

    move(1000,122)     '轴1的参数为插补参数

    move(1000,122)  axis(0)     '轴0的参数为插补参数

     

    10.中断函数为什么没有用?

    中断开关缺省是关闭的,可以查看中断开关系统参数是否打开。

     

    11.能否使用输入口跳变作为中断函数?

    不可以,输入口的个数理论上可上万,无法实现这样多的中断函数。

     

    12.如何从PC访问控制器定义的变量?

    最好把要访问的变量,数组等定义为全局变量。

    通过execute函数来修改或读取。

     

    13. 是否所有的指令都可以从PC直接发送

    WAIT等部分指令限制从PC发送,因为会造成PC命令通道阻赛。

    也不能通过PC命令来定义变量数组。

     

    14.如何立刻停止运动?

    不存在绝对的立刻停止, 通过设置fastdel参数为很大值, 可以使得限位或rapidstop时可以快速停止。

    停止之后再次运动,最好加上wait idle的判断

    rapidstop无视base,停止所有的轴

     

    15.手轮如何实现?

    采用connect指令来实现, 参见手轮例程。

     

    16.forward和reverse不能立刻修改运动方向?

    forward和reverse每次调用都会加入缓冲,因此最好cancel之后再调用新的运动指令。

     

    另外一种方式是使用vmove,vmove会自动判断以前的指令,如果也是vmove则直接修改方向,因此要实现类似jog的功能,最好用vmove来实现。

     

    17.如何通过modbus直接访问一些系统状态?

    通过特殊的modbus寄存器可以访问IO,位置等。

    位 10000开始表示输入, 20000开始表示输出。

     

    字寄存器每个轴占两个字,float格式

    #define  MODBUS_REGNUM_DPOS_X   10000

    #define  MODBUS_REGNUM_MPOS_X   11000

    #define  MODBUS_REGNUM_VP_SPEED_X   12000

     

    18.cancel后运动还在执行

    cancel缺省是取消当前运动,缓冲的运动不取消,带参数2,cancel(2)后所有的都取消。

     

    19.能否使得打印命令受控,这样不需要打印的时候可以不用删除代码。

    使用TRACE  WARN  ERROR 来打印,通过对 ERRSWITCH 赋值不同的值可以控制对应的指令是否输出。

     

    20.是否支持不同脉冲当量的轴做圆弧插补?

    支持

     

    21.设置了forcespeed,但是实际运动的速度没有达到forcespeed

    speed参数也会对插补运动产生限制,而且是动态的,把speed修改即可。

     

    22.需要掉电能保存数据,怎么办?

    VR的数据是掉电保存的,如果其他数据要保存,可以写入flash,上电时再读取出来。

     

    23.定义了变量,但是另外一个文件中访问不到?

    变量分为全局,文件,局部三种类型,缺省的都是文件变量,只能在当前文件中访问,请修改为global定义,则可以所有的地方访问。

     

    24.定义了sub,但是另外一个文件中无法调用?

    sub分为全局和文件两种类型,缺省的是文件类型,只能在当前文件中访问,请修改为global定义,则可以所有的地方访问。

     

    25.程序运行中出错,如何查错?

    不要重启,用zdevelop工具连接上去(选择附加到当前程序的方式),即可查看程序运行内部状态和出错位置。

    通过命令栏输入: ?*task 也可以参考出错原因和位置。

     

    26.内部的Warn输出如何关闭?

    设置系统参数 ERRSWITCH<2即可关闭WARN输出。

     

    27.Print输出的排列不整齐,如何处理?

    可以采用TOSTR格式化输出。

     

    28.Offpos修改生效的等待时间有多长?

    非常短,基本上是立即生效的。

  • 五、ZMC控制器使用常见问题(2)

    1.error:2032:Invalid char is met. 的原因是什么?

    一般是出现了中文字符,检查引号等符号是否是中文的。

     

     

    2.如果想自动支持多个型号的控制器,应该在程序中怎么处理?

    通过CONTROL 参数可以获取控制器基本型号。

     

    通过FLASH_SECTES  FLASH_SECTSIZE可以获取FLASH的规格。

     

    3.网络连接不上

     

    检查PC的IP地址,需要在同一网段。

    检查控制器IP地址,可以用串口连接上去查看。

    检查PC防火墙设置。


    4.PC无法同时连接上internet和控制器

     

    方式1:修改控制器IP地址与PC和网关位于同一个网段。

    方式2:修改PC的子网掩码,使得网关和控制器IP地址位于同一个网段,比如改为:255.255.128.0


    5.IDLE以后 MPOS还在变化

    IDLE以后DPOS不会再变化,MPOS并不一定稳定,可以延时一会,或是等待MPOS到达结束位置。

     

    6.通过DEFPOS的方式来触发CAMBOX运动启动偶尔不成功。

    不能DEFPOS修改后立刻改回去,修改后要延时一个周期,确保CAMBOX运动有检测到起始条件。如果是立即启动的不需要用位置触发方式。

     

    7.如何把一个不自动运行的文件单独执行一次。

    通过命令行输入 “run filename”, filename为需要执行的文件名,注意如果文件有修改,则需要全部重新下载。

     

    8.限位的时候冲过去了。

    提高FASTDEC的设置, 或是加快限位信号的挡片感应范围。

     

    9.使用运动SP指令时总是边界出现减速。

    检查STARTMOVE_SPEED与ENDMOVE_SPEED这两个参数,这两个参数与FORCE_SPEED一样是会带入SP指令的缓冲的。

     

    10.设置了MERGE但是没有连续。

    检查MERGE是否设置在MOVESP指令的第一个BASE轴上?

     

    11.传感器信号跳动,一个信号受其他信号的影响。

    检查是否IO传感器的电源与控制器的IO电源不是同一个,此时需要将两者的底线连接起来。

     

    12.回零时本身在原地附件时出现慢速一直反找的现象。

    控制器针对伺服类电机可能冲过原点的情况有加特别的保护,此时可能是应该控制器检测到原点即停止,但是完全停止时又检测不到原点了,因此误以为轴已经冲过了原点感应范围。解决办法:LSPEED在回零时设置为0,让回零产生一定的减速距离。

     

    13.WHILE NOT 1 跳不出循环。

    ZBASIC的NOT是按位取反,NOT 1 的结果是-2, 所以还是不为FALSE, 应该使用 WHILE FALSE 或者 WHILE NOT TRUE, TRUE的值为-1,取反后刚好等于0。

  • 六、硬件接口 - 输入口(NPN)常见问题

    一、通用接线
    图片1.png


    二、通用说明

    输入口电平

    1.输入口常态电平为24V,因为内部做了上拉处理。

    2.输入口低电平导通,例如高速输入开启电压小于15V导通,大于15.1V关闭,详情需参考硬件手册的IO规格说明。

    3.输入阻抗的作用是限制输入电流,最大电流也就几个mA,详情需参考硬件手册的IO规格说明。

    4.光电隔离的作用是保护内部电路,使内外电路不直接相连,避免外部电路的故障干扰等。

    5.延申到内部。

     

    IO注意事项

    1.控制器上的EGND与主电源端子上的EGND内部都是连通的,但是主电源负极必须采用电源端子上的EGND,不能用其他的EGND代替。

    2.切勿使用导线自行将所有EGND连在一起,不用的就不要连。

    3.主电源若不为24V电源,将会导致IO参数与硬件手册给出的参考值发生偏差。

    4.IO信号通常不易受电磁干扰的影响,若有故障,请采集波形仔细分析。

     

    IN口高低速输入频率

    IN口有高速输入和低速输入之分。一般高速IN口允许的输入信号频率为100kHz,其他普通IN口允许输入的频率在5kHz左右。 没有特殊说明所有数字量输入/输出允许接入的信号类型默认为NPN,PNP型需定制。

     

    IN口特殊功能

    控制器IN口除了数字输入外,还具有多种特殊功能。其中包含锁存功能、单端编码器工作,额外IN口也可以设定为特殊信号,如:原点信号(DATUM_IN)、正限位信号(FWD_IN)、负限位信号(REV_IN)、报警信号(ALM_IN)。使用INVERT_IN指令可以设置反转电平。

     

    三、常见问题

    输入口检测不到信号(输入口没信号/没输入/输入没反应)

    排查方法:

    1.在RTSys/ZDevelop软件中的[输入口]窗口查看输入口是否接收到数据;

    2.检查所使用的控制器是否需要额外接IO电源;

    3.检查输入口编号是否与操作的一致;

    4.检查信号电平是否与输入口匹配(NPN信号),排查公共端是否相连;

    5.短接IN口和EGND测试IN口是否有信号,若有信号说明控制器输入IN口正常,排查外部输入设备的输出信号和接线是否正常,接线可参考相应型号的用户手册;

    6.若EtherCAT总线驱动器IO映射后,IO信号跳动,请排查所有模块IO映射的地址是否重复。在RTSys/ZDevelop软件中点击[控制器]->[控制器状态]后弹出[控制器状态]窗口,点击窗口下方的[槽位0节点]查看总线驱动器的IO映射情况;

    7.CAN扩展板IO映射后,IO信号跳动,请排查所有模块IO映射的地址是否重复。在RTSys/ZDevelop软件中点击[控制器]->[控制器状态]后弹出[控制器状态]窗口,点击窗口下方的[ZCAN节点]查看扩展的IO映射情况;

    8.在使用扩展板的情况中,若使用单电源供电或者非双绞屏蔽线,可能引起由通讯导致的输入口异常。
    注:扩展板接线要严格按照手册说明来操作。

     

    硬限位信号不起作用(限位信号没作用/限位不生效/限位设置/限位)

    本回答仅针对限位传感器接到控制器输入口的场合:

    排查方法:

    1.检查限位传感器工作是否正常,调试软件“输入口”窗口是否可以监控到限位传感器的信号变化;

    2.检查限位开关的映射是否正确;

    3.检查限位传感器和控制器的公共端是否相连;

    4.手动移动轴测试触发限位时,传感器的信号是否持续有效,不会闪烁;

    5.监控出现该异常时,此时的限位参数设置正确,避免运动时参数被错误修改。

     

    遇到限位过冲(限位过冲/限位不停止)

    参考现象:

    遇到限位后不会立即停止,过一会才能完全停止。

    解决方法:

    1.可能是减速度太慢,加大快减速参数FastDec的设置;

    2.加大限位信号的挡片感应范围;

    3.检查正负限位开关设置是否正确,是否有效。

     

    传感器信号跳动,一个信号受其他信号的影响。(输入/传感器/IN、信号跳动/信号干扰/信号相互影响)

    参考现象:

    1.外部传感器正常,但程序监控某个IN输入信号会闪烁。

    2.上电时,输入口异常变化导致的程序问题,气缸莫名其妙的动作。

    排查方法:

    1.检查是否IO传感器的电源与控制器的IO电源不是同一个,此时需要将两者的地线连接起来;   

    2.若EtherCAT总线驱动器IO映射后,IO信号跳动,检测所有模块IO映射的地址是否重复。

     

    限位信号不固定问题处理方法(限位有时无效/限位信号不固定)

    排查步骤:

    1.检查程序中是否在循环设置限位信号,且设置限位信号的值非固定值;

    2.手动移动轴测试触发限位时,传感器的信号是否持续有效,不会闪烁。

     

    使用锁存功能,锁存MARK一直不触发

    参考现象:

    用到锁存功能,使用了REG_INPUTS指令映射锁存信号接口为IN1,使用锁存R0的信号模式,锁存MARK一直不触发

    可能原因:控制器型号ZMC306X,该型号的锁存输入已限定,R0->IN0   R1->IN1,,使用IN1就需要使用R1对应的锁存模式

    解决方法:使用两种方式锁存的锁存模式,要注意,如果刷新信号沿不及时会导致mark标志错位,锁存结果出错

  • 七、硬件接口 - 输出口(NPN)常见问题

    一、通用接线

    图片1.png 


    二、通用说明

    1.续流二极管

    说明:每个输出口都设计有续流二极管用来保护MOS的安全。

    原理:输出口很多时候需要外接如继电器这类感性负载,输出口打开时感性负载存储能量,当输出口关闭时,感性负载产生感应电动势,其两端电压突增甚至高达上千伏,从而击穿MOS;当有续流二极管时,其突增的电压开启二极管从而泄放掉感性负载之前存储的能量保护MOS。

     

    2.过流保护

    说明:控制器的外部数字输出OUT口均支持过流保护。

    原理:过流保护功能依靠串接的PTC热敏电阻起作用,电流超过阈值,导致PTC发热,当温度达到PTC的上限,PTC断开输出,冷却一段时间温度下降,PTC自行恢复通电。

    注意:通用IO支持,轴接口内的IO不支持。

     

    三、常见问题

    1.输出口电压为0V(输出口电压0V/输出口没电压)

    参考现象:测量OUT口和EGND,输出口无论有无打开,电压均为0V。

    问题分析:输出口打开时,OUT口为高阻态,相当于是和内部断开的,故没有电压,测量为0V;输出口关闭时,OUT口与EGND之间接近于短路状态,测量也是0V。

    测量方法:

    方法一:在输出口上外接上拉电阻再测,上拉到24V至少采用3.3KΩ色环电阻,上拉到5V,至少采用100Ω色环电阻;

    方法二:或将输出口接入输入口后再检测有无输出;

    方法三:万用表拨到蜂鸣器档位,测量EGND和OUT,是否导通。

     

    2.输出口虚电压(输出口空载有电压/输出口默认电压)

    参考现象:输出口在空载且没有打开的情况下测量有一个0.7V左右的电压。

    问题分析:该电压是由MOS管漏电流引起的虚电压,不同的万用表不同时间测试结果均有差别,但用示波器测试可以看到电平始终为0V。

    解决方法:该电压对于实际使用不会产生任何影响,直接忽略掉。

     

    3.PWM输出波形失真(PWM异常/ PWM变形)

    参考现象:输出口PWM信号出现波形变形、尖波等失真情况,且频率越大失真越严重。

    问题分析:这主要是由输出口本身或负载的寄生电容引起的。

    解决方法:

    方法一:将外接上拉电阻尽量更换成阻值较小的电阻(注:不建议外接上拉电阻拉高电压使用,上拉电阻会导致波形较差);

    方法二:更换具有专用PWM输出口的控制器或更换寄生电容较小的负载;

    方法三:输出口这种失真情况不仅仅存在于PWM信号,诸如单端PUL/DIR等都存在这种频率越大信号波形失真越严重的情况,如果没有上拉电阻可更换且不能接受这种情况则只能考虑更换设备。

     

    4.HW检测不到输出(PSO不输出/飞拍不输出/高速口不输出)

    解决方案:

    (1)可以利用示波器观察是否有输出波形,若没有,排查程序问题,观察hw位置设置是否错误,或者轴控POS没依次经过比较位置,或低速测试;

    (2)使用示波器可以观察输出波形,硬件示波器没有输出。单独控制op开关,排查是否时单个op口问题-参照输出口电压为0的问题。

     

    5.输出口操作无响应(输出口不输出/没动作/无响应)

    参考现象:

    打开输出口,实际输出口上的外部设备无动作。

    解决方法:

    (1)检查控制器是否需要IO电源,若需要并且已外接IO电源则需观察IOPOWER灯是否亮;

    (2)检查输出口编号是否与操作的一致;

    (3)排查接线硬件问题;

    (4)排查程序中是否持续复位;

    (5)在RTSys软件中[输出口视图]查看是否一直在置位,停止控制器内Basic程序以及客户PC程序后单独使用RTSys测试;

    (6)排查是否有IO编号冲突情况,在RTSys软件中点击[控制器状态]窗口下方的[ZCAN节点]查看CANIO扩展版状态信息,或者在RTSys软件中点击[控制器状态]窗口下方的[槽位0节点]查看EtherCATIO扩展板状态信息。

  • 八、硬件接口 - 模拟量AD/DA常见问题

    一、通用接线

    图片2.png 

    二、通用说明

    模拟量使用

    控制器上的模拟量接口大多12位分辨率,刻度范围0-4095,量程为0-10V,数据刷新率为1KHz,不满足要求选择16位分辨率的型号或搭配扩展模块。

    注意事项

    1.模拟量接口仅支持连接模拟量设备,不能做其他用途。

    2.模拟量的负载阻抗按照手册要求接入,若不符合参考值,将会导致电压不准确。

    3.模拟量接口悬空时,能测得电压波动,属于正常现象,可忽略;将悬空的模拟量端子,接入模拟量AGND上,可解决电压波动。


    三、常见问题

    1.控制器DA输出接上负载以后出现很大偏差(模拟量输出不准/模拟量输出偏差大)

    解决方法:

    (1)检查负载AD端口的阻抗是多少,如果负载AD的输入阻抗太小会导致DA输出口的限流电阻明显分压,端口上的测量值自然会出现明显偏差;

    (2)空载测量模拟量电压,如果正常,短接到AD口测试,看是否正常,不正常,可能硬件故障。

     

    2.控制器AD采集跳动比较厉害(模拟量/AD 波动大 /模拟量AD模块输入口数值范围变动大)

    解决方法:

    (1)传感器信号本身有问题,或者受到干扰。自身问题,拿第三方仪器检测。干扰问题,检测接线和走线,信号线不要和强电路走一起。

    (2)控制器本身空载就有跳动,接负载更明显,可以使用软件滤波取平均值。

    图片3.png 

  • 九、硬件接口 - EGND/GND/PE/FG/EARTH接口常见问题

    一、通用说明

    EGND、GND、PE、FG、EARTH等多种接地的区别

    GND的概念指的是电流回流的通道,所以在直流电源上一般描述为负极,功能上通常作为信号公共端。

    控制器上丝印为“EGND”的接口都可以作为IO的GND,控制器上的“GND”是内部主控芯片的GND,为了区分所以IO的GND叫“EGND”。一般建议电源的负极与IO的EGND分开使用。由于电源隔离,“EGND”和“GND”不相关不能借用不能共用,但是都属于GND的概念。

    FG、PE、EARTH都是保护地,拿来接机器外壳,只是写法不一样(都是主流写法,行业中没有统一的写法)。信号线的屏蔽层也是接在这个上面,这些最终都要接到地桩(大地)上去。


    二、常见问题

    由于外部模拟量设备原因导致控制器的EGND和AGND导通,这会有什么问题吗?

    一般不会有问题,但是如果这样的话就相当于没有隔离了。在我们的控制器中,绝大部分AGND和内部的GND是连在一起的,只是为了凸显他是给模拟量用的参考,所以标注成AGND。所以AGND和EGND导通就相当于GND和EGND导通。

  • 十、硬件接口 - 指示灯常见问题

    一、通用说明

    三个指示灯介绍

    控制器上的三个指示灯分别为POW灯、RUN灯和ALM灯,都属于状态指示灯。

    含义

    POW

    电源指示灯:电源接通时亮灯

    RUN

    运行指示灯:正常运行时亮灯

    ALM

    错误指示灯:运行错误时亮灯


    二、常见问题

    1.POWER灯亮,RUN灯不亮

    解决方法:

    (1)检查供电电源接线是否正确,可能只接了io电源,没接主电源;

    (2)检查供电电源功率是否充足,当供电电压低于18V且不低于5V时,将电压再升至24V时(控制器低于5V才会重启),控制器只power灯亮。最好给控制器单独供电,调整好后重启控制器;

    (3)ALM灯是否有规律的闪烁(硬件问题);

    (4)3系以下产品固件升级进入BOIS状态时RUN灯均不亮,4系以上产品固件升级时RUN灯不熄灭。

     

    2.RUN灯亮,ALM灯也亮

    参考现象:

    控制器指示灯RUN灯亮,ALM灯也亮,控制器无法运行。

    解决方法:

    控制器内HMI,Basic或PLC程序运行错误,请查验RTSys/ZDevelop错误码,给控制器下载空项目程序进去,观察ALM灯会不会报警。如果空项目程序也会报警,需要检查一些硬件的问题。或观察ALM的闪烁次数等判断分析。

邮箱留言

Copyright © 2013 正运动技术有限公司 Design by Zmotion 版权所有   粤ICP备13037187号    Powered by www.zmotion.com.cn 运动控制器-运动控制卡

在线咨询