西门子模块6SL3120-2TE13-0AD0详细说明
将VB10~VB12中存放的3个ASCII码33、45、41,转换成十六进制数。
梯形图和语句表程序如图所示。
例题图
程序运行结果如下:
可见将VB10~VB12中存放的3个ASCII码33、45、41,转换成十六进制数3E和Ax ,放在VB20和VB21中,“x"表示VB21的“半字节"即低四位的值未改变
西门子CU240B2是G120 控制单元B-型 RS-485-接口使用 USS-/MODBUS RTU-协议 4 DI,1 个数字输出,1 个模拟输入,1 AO PTC/KTY/Thermoclick 接口 USB 和 SD/MMC 接口 防护等级 IP20 环境温度0 至 +50°C 无功率模块
描述
S7-300/400CPU在下载用户程序后,会出现CPU处于停止状态,stop和sf指示灯亮的现象。在线查看CPU的诊断缓冲区,会出现两种现象:
1、条显示由IO访问错误引起的停止模式,第二条显示I/O访问错误(见图1)。
图1 IO访问错误
图1中的第二条诊断信息显示的含义是:
I/O access error,writing——说明对一个输出地址进行写数据操作时发生错误。
P area,word access,Accessaddress:200——说明是使用立即访问方式,字地址200。这两条合起来就说明对PQW200进行写操作时发生了错误。出现这样的错误多是程序中对PQW200这个地址进行了赋值,而实际的硬件配置中并没有分配PQW200这个地址。
2、或者是条显示由编程错误引起的停止模式,第二条显示区域长度错误(见图2)。
图2 区域长度错误
图2中的第二条诊断信息显示的含义是:
Area length error when reading——说明读取一个地址时发生长度错误。
Global DB,word access,Accessaddress:2——说明是访问DB块中字地址2。这两条合起来就说明对全局DB块中DBW2进行读取时发生了错误。这样的错误多是由于程序中使用了DB块中的某个数据,DB块实际长度并没有包含所使用的地址造成的。
解决办法
出现上面两种编程使用错误地址导致CPU停机的情况时,除了可以根据诊断信息分析出错误地址使用交叉索引找到相应的语句外,还有一个更加简便的办法。打开CPU诊断缓冲区,鼠标点中条诊断信息,接着再点击下面的“OpenBlock"按钮,会直接打开相应的错误语句。下面举例说明。图3中的诊断信息显示编程错误导致的停止,错误的原因是区域长度错误。点中“OpenBlock"按钮,自动定位到程序中的错误语句(图4),里面使用到地址DB1.DBW2。打开DB1发现实际长度只有2个字节(图5),不存在DBW2这个地址,才产生错误。造成IO访问错误的语句也可以通过此方法查找。
图3 Open Block
图4 错误语句
图5 DB1实际长度
接触器的检测使用万用表的电阻挡,检测过程如下: ①常态下检测常开触点和常闭触点的电阻。下图为在常态下检测交流接触器常开触点的电阻,因为常开触点在常态下处于开路,故正常电阻应为无穷大,数字万用表检测时会显示超出量程符号“1”或“OL”,在常态下检测常闭触点的电阻时,正常测得的电阻值应接近0Ω。对于带有联动架的交流接触器,按下联动架,内部的常开触点会闭合,常闭触点会断开,可以用万用表检测这一点是否正常。
|