首页
|
新闻
|
新品
|
文库
|
方案
|
视频
|
下载
|
商城
|
开发板
|
数据中心
|
座谈新版
|
培训
|
工具
|
博客
|
论坛
|
百科
|
GEC
|
活动
|
主题月
|
电子展
注册
登录
论坛
博客
搜索
帮助
导航
默认风格
uchome
discuz6
GreenM
»
FPGA/CPLD可编程逻辑
» 基于VC的PLC数据采集管理系统
返回列表
回复
发帖
发新话题
发布投票
发布悬赏
发布辩论
发布活动
发布视频
发布商品
基于VC的PLC数据采集管理系统
发短消息
加为好友
yuchengze
当前离线
UID
1062083
帖子
5837
精华
0
积分
2921
阅读权限
70
在线时间
222 小时
注册时间
2016-6-30
最后登录
2018-9-9
金牌会员
UID
1062083
性别
男
1
#
打印
字体大小:
t
T
yuchengze
发表于 2016-8-23 12:04
|
只看该作者
基于VC的PLC数据采集管理系统
数据采集
,
人机界面
,
管理系统
,
管理软件
,
实际应用
0 引 言 PLC具有可靠性高,系统设计灵活,编程简单,易于安装,抗干扰能力强等优点,但单独的PLC不能提供良好的人机界面和数据处理能力。在实际应用中,往往需要将一组PLC的数据存储、显示和打印出来并对PLC进行实时的监控,应用工业监控组态软件可以解决此类问题。当系统不是很大时,也可以采用VC等工具自己开发出上位机监控通信软件,相对于专业监控组态软件,它具有灵活、小巧、成本低等优点。正是基于现场的应用实际,使用VC开发出了一套满足现场需要的数据采集管理软件系统。
l 现场需求描述
车间有10台单独的试验台(由OMRON CJlG-HPLC和触摸屏组成),负责检验4种类型制动阀产品的性能参数,并存入各自的DM,EM存储区中,现要求用一台工控机将各台PLC内的数据采集进去,实现产品信息的集中管理,可以灵活地查询、修改、添加、导出所有的产品信息,并能打印出各种指定格式的产品记录单和汇总单;同时需要对PLC工作状态进行监视。
2 系统的硬件构成
该系统的硬件由1台上位机(工控机),11个RS 232/RS 485转换模块(该系统选用1个FS-485G模块(需外接电源)连接工控机,10个UT-201型连接PLC),10根CJIG-H自由口到RS 232的转换电缆(该系统选用FS-CN26),10台CJIG-H PL及若干双绞线组成,其示意图如图1所示。
3 上位机软件的实现
3.1 通信部分的实现
3.1.1 功能描述
自动将现场10台试验台的紧急阀和主阀信息采集存人数据库;较实时地监视工控机与各试验台的通信状态和通信内容;并可设置COM口;配置待通信的试验台;编排试验员姓名与其编号的对应序列。通信部分的运行界面如图2所示。
3.1.2 上位机与PLC之间的通信协议
该系统采用Host Link通信协议,上位机与PLC组成1:N的Host Link通信系统。Host Link采用总线式通信方式,通信的主动权在上位机一方,上位机启动通信;首先向PLC发出FINS命令,PLC收到后会自动识别并加以执行,然后将执行结果返回上位机,上位机以帧的形式发送命令(命令码),PLC也以帧的形式回送执行结果(响应码)。在通信时,PLC与上位机的通信参数(如节点地址、通信波特率、数据格式)应设为一致。上位机的通信设置在对应的VC编写的程序中进行,PLC的通信设置在其对应的系统设定区进行。FINS命令具体格式可在OMRON CJCS通信手册中查找。
3.1.3 上位机的通信编程
上位机通过串口与PLC相连,故使用VC的串口通信控件 MSComm,完成对串口的读写工作。在使用Mscomm控件进行读写前,必须先初始化该控件的一些属性,串口初始化代码如下:
该程序中使用事件驱动(Event-driven)的方法来接收数据,当串口接收缓冲区中有字符到达时,MsComm控件的Oncomm事件处理函数捕获到相关的通信事件,并被自动调用,在OnComm函数中加入自己的处理代码,即可把PLC中传来的数据进行处理、存储等;通过MSComm控件的SetRThreshold函数设置产生OnComm事件之前要接收的字符数,在OnComm函数中用Switch语句,即可实现对不同的响应码的不同处理。
通过定时函数和循环控制函数,周期地依次向各个PLC发送读写PLC的FINs命令码,再在OnComm函数中加入对不同PLC响应码的处理函数,就可实时地完成对PLC数据的采集。同时根据响应码的内容监视PLC的运行状态。PLC自动将检验的产品性能数据连续存入D存储区中,当存储区满时自动从头循环覆盖存放,上位机定时将PLC的D存储区的产品数据读入、处理并存人数据库。该系统中上位机1 min内可依次读完10台PLC的各自1条产品性能信息,而PLC检验完1个产品需15 min左右,故可满足相对的实时性。为保证上位机完整且不重复地读取PLC的所有产品性能数据,在各台PLC中对每种产品都定义了A,B两个存储单元,A单元存放上位机读取过的最后一条信息地址,当上位机每读完1条信息,就由上位机对此单元的内容更新;B单元存放最新的产品信息存放地址,当PLC每产生1条新信息时,就由PLC更改该单元内容;上位机在读取产品信息前,先对比A,B单元的内容,决定是否进行数据读取和读取哪个地址的数据。这样即使上位机与PLC断开一定时间后,当重新连接上,也可将以前没读到的信息读入。程序流程图如图3所示。
收藏
分享
评分
回复
引用
订阅
TOP
返回列表
电商论坛
Pine A64
资料下载
方案分享
FAQ
行业应用
消费电子
便携式设备
医疗电子
汽车电子
工业控制
热门技术
智能可穿戴
3D打印
智能家居
综合设计
示波器技术
存储器
电子制造
计算机和外设
软件开发
分立器件
传感器技术
无源元件
资料共享
PCB综合技术
综合技术交流
EDA
MCU 单片机技术
ST MCU
Freescale MCU
NXP MCU
新唐 MCU
MIPS
X86
ARM
PowerPC
DSP技术
嵌入式技术
FPGA/CPLD可编程逻辑
模拟电路
数字电路
富士通半导体FRAM 铁电存储器“免费样片”使用心得
电源与功率管理
LED技术
测试测量
通信技术
3G
无线技术
微波在线
综合交流区
职场驿站
活动专区
在线座谈交流区
紧缺人才培训课程交流区
意见和建议