一文详解西门子PLC常见问题
在PLC中,西门子绝对是数一数二的大品牌,因此,了解一些它在工作中常见的问题,是很有帮助的!
1、POU加密后我还能正常使用吗?
POU即程序组织单元,包括S7-200项目文件中的主程序(OB1)、子程序和中断服务程序。POU可以单独加密,加密后的POU会显示一个锁的标记,不能打开查看程序内容。程序下载到CPU中,再上载后也保持加密状态。西门子公司随编程软件Micro/WIN提供的库指令、指令向导生成的子程序、中断程序都加了密。加密并不妨碍使用它们。
2、为什么模拟量是一个变动很大的不稳定的值?
a 你可能使用了一个自供电或隔离的传感器电源,两个电源没有彼此连接,即模拟量输入模块的电源地和传感器的信号地没有连接。这将会产生一个很高的上下振动的共模电压,影响模拟量输入值。
b 另一个原因可能是模拟量输入模块接线太长或绝缘不好。
可以用如下方法解决:
a 连接传感器输入的负端与模块上的公共M端以补偿此种波动。(但要注意确保这是两个电源系统之间的唯一联系。)
背景是:模拟量输入模块内部是不隔离的;共模电压不应大于12V;对于60Hz干扰信号的共模抑制比为40dB。
b 使用模拟量输入滤波器。
3、 使用定时器加自复位做一个不断重复的计时,调用其他功能或子程序时,为何看起来工作不规律?
按这种方法使用定时器时,定时器的置位、复位可能与程序扫描周期不配合,存在造成上述问题的机制。定时比较短的定时任务应使用“定时中断”功能,这样更为可靠。
4、 编了一个利用定时器的程序,在编译时已经通过,为何下载到CPU中时提示出错?
这种情况往往是调用的定时器号与定时器类型不配合造成的。参见帮助的表格,如T7只能用作TONR,而不能用于TON或TOF。
5、 定时中断(SMB34/SMB35)最长定时为255ms,如何实现更长时间的定时?
可以采用T32/T96中断,最长时间可到32.767s。在定时中断服务程序中对进入中断的次数进行计数,也能实现更长时间的中断延时。
6、 定时中断个数不够怎么办?
每个定时中断服务程序不一定只能处理一项定时任务,可以把几个任务放在一个定时中断服务程序中。对于定时间隔不同的任务,可以计算出它们的定时长度的最大公约数,以此作为定时中断的时间设置。在中断服务程序内部对中断事件进行计数,据此编程别处理不同的任务。
7、 使用子程序时,为何动作只能执行一次,或者某些状态不能结束?
如果发生动作不能重复执行,或者状态不能结束(像锁死了一样),而这些功能都与子程序有关时,请检查是否有条件调用子程序。调用子程序的条件在上述动作执行后,或者进入某个状态后不再有效,无法再次“激活”,而脱离上述状态或复位的指令正好在子程序内,必然造成上述的现象。
8、带形式参数的子程序,定义为OUT类型的变量为何会在多次调用子程序时互相干扰?
那是因为定义为OUT类型的形式参数又在子程序内部参与了运算。凡是此类参数都应当定义为IN_OUT类型。
9、 与中断服务程序有关的计算任务,为何会偶尔得出不正确的结果?
出现这种现象的原因多是在主(子)程序和中断程序之间传递数据的机制不当。中断程序可能在任何时刻执行,如果此时主程序(或子程序)正在对中断程序使用的数据进行操作,其中间结果可能带入中断程序,造成计算结果的变化;同样地,在中断程序中产生数据也对主(子)程序中的计算有类似影响。
10、 中断服务程序看起来没有执行?
可以在中断程序中加一个测试程序段,如使用SM0.0(常为“1”)将一个输出点置位(使用Set指令),观察是否进入中断服务程序。中断程序不执行,多数原因是初始化(连接中断事件和中断程序)的问题,或者没有“开中断”。应该使用SM0.1(或沿触发)执行一次初始化,然后开中断。
11、 TP170、TP170micro与S7-200相连接如何做“时钟同步”?
TP170默认的时钟格式与S7-200西门子PLC时钟指令所读取的时间日期格式有所区别,读出的时钟需要改变格式才能与TP170等做时钟同步。在TP170的组态软件ProTool的在线帮助中有相关的介绍。
12、 高速计数器怎样占用输入点?
高速计数器根据被定义的工作模式,按需要占用CPU上的数字量输入点。每一个计数器都按其工作模式占用固定的输入点。在某个模式下没有用到的输入点,仍然可以用作普通输入点;被计数器占用的输入点(如外部复位),在用户程序中仍然访问到。
13、 为什么高速计数器不能正常工作?
在程序中要使用初次扫描存储器位SM0.1来调用HDEF指令,而且只能调用一次。如果用SM0.0调用或者第二次执行HDEF指令会引起运行错误,而且不能改变第一次执行HDEF指令时对计数器的设定。
14、 对高速计数器如何寻址?为什么从SMDx中读不出当前的计数值?
可以直接用HC0;HC1;HC2;HC3;HC4;HC5对不同的高速计数器进行寻址读取当前值,也可以在状态表中输入上述地址直接监视高速计数器的当前值。SMDx不存储当前值。高速计数器的计数值是一个32位的有符号整数。
15、 高速计数器如何复位到0?
选用带外部复位模式的高速计数器,当外部复位输入点信号有效时,高速计数器复位为0也可使用内部程序复位,即将高速计数器设定为可更新初始值,并将初始值设为0,执行HSC指令后,高数计数器即复位为0.
16、 高速计数器的值在复位后是复位到初始值还是“0”值?
外部复位会将当前值复位到0值而不是初始值;内部复位则将当前值复位到初始值。如果你设定了可更新初始值,但在中断中未给初始值特殊寄存器赋新值,则在执行HSC指令后,它将按初始化时设定的初始值赋值。
17、 为何给高速计数器赋初始值和预置值时后不起作用,或效果出乎意料?
高速计数器可以在初始化或者运行中更改设置,如初始值、预置值。其操作步骤应当是:
a 设置控制字节的更新选项。需要更新哪个设置数据,就把控制字节中相应的控制位置位(设置为“1”);不需要改变的设置,相应的控制位就不能设置。
b 然后将所需的值送入初始值和预置值控制寄存器。
c 执行HSC指令。
18、 使用PTO/PWM发生器的功能应使用什么类型的CPU?
应使用24VDC晶体管输出的CPU,继电器输出的绝对不行。
19、 PTO或PWM输出的幅值是多少?
PTO或PWM输出的幅值为24V(高电平有效,共负端连接),若想实现输出其他电压的幅值,需自己加转换器来实现。
20、 在PTO脉冲串执行过程中,你能否通过PLS指令改变其周期值?
不行,必须终止PTO输出后才能改变周期值。
21、如何强制停止PTO或PWM输出?
可以通过编程将控制字节中的使能位SM66.7或SM76.7清零,然后执行PLS指令,便可立即停止PTO或PWM输出。
22、为何输出信号的指示灯已亮,却没有良好的电压波形输出,或者有时丢脉冲?
PTO或PWM输出负载最小不能低于额定负载的10%;即在输出为高电平的状态下,负载电流不低于140mA。
好的文章,需要您的鼓励
14
- 最新资讯
- 最新问答
-
埃斯顿机器人系列有哪些?怎么样?
关键字: 埃斯顿 埃斯顿机器人 系列 2024-07-05 -
轮式机器人的发展及其趋势
关键字: 轮式机器人 发展 趋势 2024-07-03 -
具身智能的定义和作用
关键字: 具身智能 2024-06-28 -
什么是agv小车?特点有哪些?
关键字: agv小车 特点 2024-06-27 -
机器视觉应用的分类?范围有哪些?
关键字: 机器视觉 应用分类 范围 2024-06-25
-
工业机器人技术是干什么的?
标签: 工业机器人,技术 提问:小杰 2024-07-03 13:03:15 -
机器人焊接焊机报TC异常怎么解决
标签: 焊接机器人,焊机,TC异常 提问:TC 2024-06-28 16:05:01 -
机器人运动轨迹的控制方式有哪两种
标签: 机器人,运动轨迹,控制方式 提问:张默 2024-06-25 10:10:02 -
具身智能什么意思
标签: 具身智能,什么意思 提问:MESSE 2024-06-19 10:37:04 -
3D视觉无序抓取系统配置要点?
标签: 3D视觉,无序抓取,系统配置 提问:QUTE 2024-06-17 13:17:05
- 2021-06-10 10:45:45
- 2021-06-11 13:34:28
- 2020-05-29 10:03:22
- 2019-09-24 11:19:01
- 2020-01-16 13:27:13
- 2019-10-08 09:43:45
- 2023-04-25 05:24:03
- 2023-04-17 15:40:34
- 2022-09-20 22:43:10
- 2023-04-22 10:04:44
- 2023-05-06 13:00:04
- 2022-08-03 10:20:40
- 2024-07-05
- 2024-07-03
- 2024-06-28
- 2024-06-27
- 2024-06-25
- 2024-06-20
- 2024-06-19
- 2024-06-17
- 2024-06-13
- 2024-06-11