基于单片机的通用控制器的设计

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

武汉大学本科综合实验报告(II)基于HostLink通信协议的OPC服务器开发

院(系)名称:动力与机械学院

专业名称:自动化系

学生姓名:王媛媛

指导教师:张世荣副教授

目录 (2)

摘要 (3)

第1章实验背景和原理 (4)

1.1实验背景 (4)

1.2 实验原理 (4)

第2章设计说明 (6)

2.1开发流程 (6)

2.1开发平台和编程环境介绍 (7)

2.2 Omron CQM1H-CPU21 (7)

2.3客户端组态王的介绍 (8)

2.4 HostLink通信协议 (9)

2.5 FCS校验 (11)

2.6 OPC技术 (13)

2.7多线程设计 (13)

第3章程序设计 (16)

3.1基于HostLink通信协议的数据传输实现 (16)

3.1.1窗体界面设计 (16)

3.1.2串口参数设置及开/关控制 (17)

3.1.3读写功能的实现 (18)

3.2基于C#语言的OPC服务器开发 (21)

3.2.1初始化服务器并写注册表 (21)

3.2.2设计客户端组态王画面 (22)

3.3.3服务器向客户端发送数据信息 (23)

3.3.4 线程2 客户端向服务器回写信息 (23)

第4章测试与分析 (24)

4.1通信测试 (24)

4.2访问和回写服务器 (25)

4.3 测试结果分析 (25)

第6章实验总结及感想 (26)

参考文献 (27)

本实验对欧姆龙CQM1H系列PLC 的HostLink 通信协议进行了介绍, 并提出了使用C# 利用Visual Studio 2010 中的SerialPort控件[1]实现PLC 与上位机通信的方法,并给出了实现通信的具体步骤以及优化的通信方案。鉴于PLC的人机交互性太差,而计算机具有良好的用户交互界面,所以在此基础上开发OPC 服务器,以便在组态王作为客户端能够实时的显示和回写PLC中的数据信息。

关键词:OmronPLC 、串口通信、HostLink协议、C#、OPC服务器、多线程。

第1章实验背景和原理

1.1实验背景

PLC是新一代工业控制装置,由于可靠性高、适应性好、抗干扰能力优、接口功能强、编程简单、直观以及模块化结构、使用方便等优点,在工业控制领域中,作为一种稳定可靠的控制器得到广泛的应用。但它也有自身的一些缺点,即数据的计算处理和管理能力较弱,不能给用户提供良好的界面等。而计算机恰好能弥补PLC的不足,它不但有很强的数据处理和管理能力,而且能给用户提供非常美观而又易于操作的界面[2]。将PLC与计算机结合,可使系统达到既能及时地采集、存储数据,又可处理和使用好数据,两者结合的关键是PLC与计算机之间的通信。本实验以欧姆龙公司的CQM1H-CPU21型号的PLC为例,用C#语言设计基于HostLink协议的PLC与计算机的通信程序,实现在Windows平台下为可编程控制器(PLC)网络提供实时数据传输和交换服务[3]。同时为了很好的利用计算机能够给用户提供良好的界面的优点,进行OPC服务器和客户端的开发,便于很好的显示和修改PLC中的数据信息。

1.2 实验原理

实验中,我们在.NET平台下,Visual studio2010开发环境中,用C#语言进行程序编写。本此实验中PC兼具作为控制主站和OPC服务器的功能,主站与从站(PLC)之间通过HoatLink协议实现读写通信,并利用组态王软件作为客户端,用来监测通信的实时状态,同时实现向PLC写入数据的功能。

图1-1 实验原理图

简而言之,我们要实现的就是PC机对PLC的可读可写,客户端对服务器的可读可写功能。

第2章设计说明

2.1开发流程

整个程序开发包括窗体界面设计和程序代码的编写,而开发流程主要分为两大部分,用到两个个线程。这两个部分分别是基于HostLink通信协议的数据传输实现和基于C#语言的OPC服务器开发。

1.准备工作

(1) 学习C#语言编程方法,窗体界面的设计方法,控件的功能和使用方法。

(2) 在Omron官网上下载CQM1H-CPU21型号的PLC的说明书和操作手册。查阅相关书籍和论文,学习Hsotlink协议。

(3) 在PC机上安装USB转串口的驱动,在CX-programmer里面测试PC机和PLC是否能正常连接。测试结果显示上位机能够和PLC连接,接下来可以开始进行程序设计部分了。

2. 程序设计流程

设计流程图如下:

图2-1 设计流程图

3. 测试

测试串口是否打开;在窗体界面发送测试命令,上位机读IR区,读数据区,读HR区;上位机写IR区,写DM区,写HR区,改写运行状态。客户端选取一个变量进行数据信息改写。

4. 程序优化

在测试结果无误的前提下,进一步的代码改进和通信窗口美化。如修改和添加注程,调整位置等。

2.2开发平台和编程环境介绍

1. NET框架介绍

.NET框架(.NET Framework)是由微软开发,一个致力于敏捷软件开发(Agile softwaredevelopment)、快速应用开发(Rapidapplication development)、平台无关性和网络透明化的软件开发平台。它是一个多语言组件开发和执行环境,它提供了一个跨语言的统一编程环境。.NET包含许多有助于互联网和内部网应用迅捷开发的技术。

2. Visual studio2010开发环境介绍

Microsoft Visual Studio(简称VS)是美国微软公司的开发工具包系列产品。VS是一个基本完整的开发工具集,它包括了整个软件生命周期中所需要的大部分工具,如UML工具、代码管控工具、集成开发环境(IDE)等等。所写的目标代码适用于微软支持的所有平台。

2.3Omron CQM1H-CPU21

1. Omron的CQM1H-CPU21介绍

Omron的CQM1H-CPU21是一种紧凑的支持同性功能和其他先进功能的课编程程序控制器。它是一个安装在DIN导轨上,控制中小型机械的组装型的PC。该PLC用串行通信与机械部件连接。串通信板支持协议宏的功能。即可以根据外部设备的通信规约生成一个协议宏,能用单个PMCR指令实现数据的传输。原则上从任何使用串口的参数都可以与之通信。

相关文档
最新文档