Studio 5000编程:如何判断AB PLC系统中的硬件设备是否在正常工作
前言:PLC控制系统,主要由CPU、本机架I/O模块,分布式I/O模块,通信模块,或其他设备(如:伺服驱动器、交换机、第三方设备)等组成,如何判断这些设备是否工作正常?或是一旦出现故障,能在第一时间判断故障设备出在哪里?为排查故障节省时间,提高效率,降低停机时间,在大型项目中维护,尤其重要。本文,将分享一种如何判断AB PLC控制系统中的硬件设备是否在正常工作的方法。
一、使用方法
即通过编写GSV指令访问模块对象,硬件组态及编程注意事项:
1. 模块对象能提供有关模块的状态信息;
2. 模块必须出现在控制器项目管理器的“I/O 配置”(I/O Configuration) 组态中;
3. 模块必须具备一个设备名称
二、编程依据
通过GSV指令获取EntryStatus状态值,若为16#4000(转换为10进制等于16384),表明该模块正在运行、连接正常,且正在传输数据,详见通用指令集《1756-RM003S-ZH-P》.

三、方法步骤
1. 打开软件Studio 5000(本文版本为31.01),在项目的I/O配置中,组态硬件,依照规则,每一个模块均设置名称,比如:把1734-AENTR/B的名称设置为RIO11,其他设备模块也如此.

2. 硬件组态好以后,就可以针对这些模块进行编写判断是否连接正常的程序,不过编程之前先建立标签变量,如下图所示。本文举例,如何判断1个以太网通信模块,1个数字量输入模块,1个伺服驱动器是否工作正常。其中建立一个固定值标签变量StatusOkFlag,数据类型DINT,其他变量详见下图.

3. 变量建好以后,将变量编辑界面切换到运行监控界面,将固定值变量StatusOkFlag的值修改16384.

4. 开始编写程序,这里图方便,直接在主程序里写了,使用到GSV指令,获取模块的状态信息,如果状态等于16384,则连接运行正常,否则异常,详见下图.

四、测试效果
1. 下载程序,并使CPU处于运行状态,I/O OK灯常绿,I/O配置无异常图标,在程序中可以看到所有模块的状态值均为16384,说明目前所有模块设备连接正常.

2. 拔掉1734-AENTR/B上的网线,这时I/O OK灯闪烁,I/O配置出现黄色感叹号图标,在程序中可以看到,以太网通信、数字量输入模块的状态值均28672,将其转换为16进制,为16#7000,根据编程依据,表明模块正在等待连接,伺服驱动器状态值为12288,,将其转换为16进制,为16#3000,表明模块在连接,模块对象正在发起与模块的连接。只要模块状态值不为16384,就可以判断其连接错误,工作异常。

结束语:本文提供了一种判断硬件设备是否在正常工作的方法,通过编写程序,并将这些状态信息在触摸屏或上位机界面显示,这样就可以很好的运用在项目维护中。另外,在仿真软件Studio 5000 Logix Emulate中也可以模拟这种方法,即把建立的模块删除,就能测试效果。
--abseMe:坚持原创 注重实用
Studio 5000编程:如何判断AB PLC系统中的硬件设备是否在正常工作的更多相关文章
- Linux系统中的硬件问题如何排查?(3)
Linux系统中的硬件问题如何排查?(3) 2013-03-27 10:32 核子可乐译 51CTO.com 字号:T | T 在Linux系统中,对于硬件故障问题的排查可能是计算机管理领域最棘手的工 ...
- Windows下USB磁盘开发系列二:枚举系统中所有USB设备
上篇 <Windows下USB磁盘开发系列一:枚举系统中U盘的盘符>介绍了很简单的获取系统U盘盘符的办法,现在介绍下如何枚举系统中所有USB设备(不光是U盘). 主要调用的API如下: 1 ...
- Linux系统中的硬件问题如何排查?(6)
Linux系统中的硬件问题如何排查?(6) 2013-03-27 10:32 核子可乐译 51CTO.com 字号:T | T 在Linux系统中,对于硬件故障问题的排查可能是计算机管理领域最棘手的工 ...
- Linux系统中的硬件问题如何排查?(5)
Linux系统中的硬件问题如何排查?(5) 2013-03-27 10:32 核子可乐译 51CTO.com 字号:T | T 在Linux系统中,对于硬件故障问题的排查可能是计算机管理领域最棘手的工 ...
- Linux系统中的硬件问题如何排查?(4)
Linux系统中的硬件问题如何排查?(4) 2013-03-27 10:32 核子可乐译 51CTO.com 字号:T | T 在Linux系统中,对于硬件故障问题的排查可能是计算机管理领域最棘手的工 ...
- Linux系统中的硬件问题如何排查?(2)
Linux系统中的硬件问题如何排查?(2) 2013-03-27 10:32 核子可乐译 51CTO.com 字号:T | T 在Linux系统中,对于硬件故障问题的排查可能是计算机管理领域最棘手的工 ...
- Python 编程环境搭建(Windows 系统中)
由于大家普遍使用 Windows 系统,所以本文只介绍 Windows 系统中 Python 环境的安装. 在 Windows 中安装 Python 与安装普通软件没什么差别,下载所需版本的安装包后, ...
- Linux——解决RedHat6/CentOS6系统中“弹出界面eth0:设备似乎不存在”的问题
刚刚在自己的CentOS6系统中执行service network restart时,竟然提示: 弹出界面 eth0: 设备 似乎不存在, 初始化操作将被延迟. [失败] 这事可真神奇.于是手动编 ...
- Linux系统中的硬件问题如何排查?(1)
在Linux系统中,对于硬件故障问题的排查可能是计算机管理领域最棘手的工作,即使是经验相当丰富的用户有时也会遇上自己搞不定的状况,本文分享一些实用的技巧与处理方法,希望有助于读者朋友理解.查明并最终搞 ...
随机推荐
- 数据库MySQL和Redis实践
1.关于数据库设计的那些事 2.MySQL 3.Redis
- WEB框架-Django框架学习(一)-基础层级关系
今日主要内容为Django架构,主要有路由层,视图层和模板层 1. Django的路由层 URL配置(URLconf)就像Django 所支撑网站的目录.它的本质是URL与要为该URL调用的视图函数之 ...
- django drf json格式化日期时间带T的问题 基于python的解决方法
# models.py update_time = models.DateTimeField(verbose_name=u'更新时间', default=timezone.now) 问题:天 与 小时 ...
- 说说我心中的Linux系统
我不知道在阅读此篇文章的你,是一个什么样的人,或许你只是偶然看到此篇文章的路人,或许是对linux有兴趣但没接触过linux的圈外人,或许是已经入行没多久的菜鸟,或许是喜欢linux却学习不下去预备放 ...
- 重写URL
更新网页url /***省略部分代码***/ function rewriteUrl(url) { if (url.substr(0, 1) === "/") { url = (r ...
- Linux学习之路3-HelloWorld
1.window系统上创建helloworld.c文件,并编写程序 #include <stdio.h> main(){ printf("Hello World!"); ...
- SpringBoot配置日志logback
1.这里我们选择logback,首先加入pom依赖 <dependency> <groupId>ch.qos.logback</groupId> <artif ...
- 快速沃尔什变换(FWT)及K进制异或卷积&快速子集变换(FST)讲解
前言: $FWT$是用来处理位运算(异或.与.或)卷积的一种变换.位运算卷积是什么?形如$f[i]=\sum\limits_{j\oplus k==i}^{ }g[j]*h[k]$的卷积形式(其中$\ ...
- [SMB share]Create SMB share under powershell / poweshell下创建本机的SMB共享
New-SmbShare -Name share-name -Path C:\share -FolderEnumerationMode AccessBased -CachingMode Documen ...
- P1451 求细胞数量
题目描述 一矩形阵列由数字0到9组成,数字1到9代表细胞,细胞的定义为沿细胞数字上下左右若还是细胞数字则为同一细胞,求给定矩形阵列的细胞个数.(1<=m,n<=100)? 输入输出格式 输 ...