西门子巢湖触摸屏一级代理商
出现这种现象的原因多是在主(子)程序和中断程序之间传递数据的机制不当。
中断程序可能在任何时刻执行,如果此时主程序(或子程序)正在对中断程序使用的数据进行操作,其中间结果可能带入中断程序,造成计算结果的变化;同样地,在中断程序中产生数据也对主(子)程序中的计算有类似影响。
88:中断服务程序看起来没有执行?
可以在中断程序中加一个测试程序段,如使用SM0.0(常为“1")将一个输出点置位(使用Set指令),观察是否进入中断服务程序。中断程序不执行,多数原因是初始化(连接中断事件和中断程序)的问题,或者没有“开中断"。应该使用SM0.1(或沿触发)执行一次初始化,开中断。
89:TP170、TP170 micro与S7-200相连接如何做“时钟同步"?
TP170默认的时钟格式与S7-200西门子PLC时钟指令所读取的时间日期格式有所区别,读出的时钟需要改变格式才能与TP170等做时钟同步。在TP170的组态软件ProTool的在线帮助中有相关的介绍。
90:高速计数器怎样占用输入点?
高速计数器根据被定义的工作模式,按需要占用CPU上的数字量输入点。每一个计数器都按其工作模式占用固定的输入点。在某个模式下没有用到的输入点,仍然可以用作普通输入点;被计数器占用的输入点(如外部复位),在用户程序中仍然访问到。
91: 为什么高速计数器不能正常工作?
在程序中要使用初次扫描存储器位SM0.1来调用HDEF指令,只能调用一次。如果用SM0.0调用或者第二次执行HDEF指令会引起运行错误,不能改变第一次执行HDEF指令时对计数器的设定。
92: 对高速计数器如何寻址? 为什么从SMDx中读不出当前的计数值?
可以直接用HC0;HC1;HC2;HC3;HC4;HC5对不同的高速计数器进行寻址读取当前值,也可以在状态表中输入上述地址直接监视高速计数器的当前值。SMDx不存储当前值。
高速计数器的计数值是一个32位的有符号整数。
93: 高速计数器如何复位到0?
选用带外部复位模式的高速计数器,当外部复位输入点信号有效时,高速计数器复位为0 也可使用内部程序复位,即将高速计数器设定为可更新初始值,并将初始值设为0,执行HSC指令后,高数计数器即复位为0
94: 高速计数器的值在复位后是复位到初始值还是“0"值?
外部复位会将当前值复位到0值而不是初始值;内部复位则将当前值复位到初始值。如果你设定了可更新初始值,但在中断中未给初始值特殊寄存器赋新值,则在执行HSC 指令后,它将按初始化时设定的初始值赋值。