基于labview的plc与上位机通讯系统设计毕业论文内容摘要:
行要一定的时间故需延长才能保障命令的发送接收成功的率 ④命令接收以后按命令的格式对其进行分解如果包含字符说明命令发送是正确 且成功的相反如果命令包含说明的命令发送错误并返回错误码对错误码进行读取并在错误数组常量中检索最后显示错误原因和错误代码以供操作者参考修正 图 38 串口通信实现图 322 设计系统的通讯模型 1 端口初始化 前面板设计和程序框图如下图所示 图 38 端口初始化前后面板 BCC 码的生成 BCC 码的的计算是通讯的一个基本元素起到关键作用在该通讯协议当中 BCC码是用与校验通讯数据的正确与否使用频繁为减少编程工作量特地编写了一个子程序方便调用 BCC 码的生成原理见第 2 章说明在 LABVIEW 中的实现如下所示 图 39 BCC 码程序图 说明①操作者把命令明确以后生成的字符串进入一个 for循环循环次数为 n N1 一次其中 N 为字符串的长度 ②字符转换为数值以后和字符串的数据一起进入 for 循环先进过一个一位截取控件把字符串的第二字符截取转换为数值然后跟的数值进行异或得出一个数字进入移位寄存器供下次循环使用 ③上次循环产生的数据在第二次循环中跟第三个字符进行异或得出一个数值其他的以此类推 ④循环结束后输出一个数值这个数值与 15进行比较如果大于 15直接转换为字符输出如果小于等于 15 如果不经过图 39 的处理就得不出 2 位 BCC 码 整个程序的流程如下所示 图 310 通讯系统原理图 说明①程序的前面板如图 27 所示上图显示的是系统的通讯原理图其主要模块包括刚开始运行时的端口初始化 PLC 版本信息读取然后是触点控制定时计数器控制寄存器控制这 3 打块是操作者根据自己的需求选择其中一项进行操作点击确定按钮后命令会按之前的规定发送出去然后对返回的数据进行分离显示 ②如果系统处于 RUN状态时系统会对 PLC进行监控不断地发送指令对端口进行状态的读取然后显示在状态灯上 323 典型模块通讯 1 触点控制 触点控制主要对 X 输入点读取数据读 Y 点进行读写读写包 括单点读写多点读写以及字的读写本文从数据出发只对 X 和 Y 的单点读取以及字的读取 命令格式 0 1 代码选择 触点编码 触点数据 BCC H BCC L CR 图311 触点控制 程序流程图如下 图 312 触点控制流程图 说明该程序框图主要实现对端口 YR 触点的写入读取控制其中写入和读取有单点和字两种操作所以一共有 222 8中命令格式在这里用到了 3个选择框图如下图 313 所示在进入最后一层框图的时候会有对应的命令格式在里面其中常量已近固定输入的变量配合选择的命令就可以对 PLC 进行命令操作例如在前面板触点控制模块选择 R 读出数据 点控制则程序模块会进入 RCS读取但触点命令模式 Labview 中的程序框图如下所示 图 313 触点控制程序图 向 PLC 中通过设计的系统写布尔逻辑命令 前面板如下所示 图 314 写指令前面板 ②操作说明 在软键盘中点击各个键组成命令每一步为一个记录也可以在左上角的输入框中键盘输入指令输入完毕后点击输出转换按钮确定无误后点击下载 PLC 按钮旁边的指示灯亮则表明成功反之查看命令输入格式是否有误在左边框在修正再从新转换 ③原理说明 图 315 写命令程序原理图 说明从上述输出的代 码中组成一个字符串然后把字符串以 68 个字符为单元截取因为传送命令时字符长度有限制 68 个代码组成的命令为 01 WP 首地址末地址 CODEBCCCR 一共 87 个字符可以传送 ④发送到 PLC 后生成的梯形图如下 图 316 命令发送后 PLC 生成的梯形图 33 Labview 实时监控 PLC 实例流水灯监控 前面介绍了 Labview 的通讯原理和通讯系统的各种模块以及特殊模块的工作情况下面作为整个设计系统对 PLC 进行实时监控演示该本通讯系统的工作性能 我们以 PLC 的 16 盏输出的 LED 为流水灯使其从左到右依次点亮没个灯 亮 1S然后熄灭熄灭的同时下一盏灯亮依次类推到第 16 盏灯以后循环到第一盏灯不断地运行直到一个信号使其中断 331 流水灯梯形图设计 1 流水灯原理 按照要求流水灯要依次点亮并保持 1 秒根据定时器的原理可以用来产生该脉冲信号其状态图如下所示 图 317 状态图 说明上述状态图可以看出 Y0Y1 依次点亮且当 T1 运行的时候 T0 断开则 Y0也断开要实现这种功能只需把 T1 常闭串联到 R0当 T1 得电时 R0 短开 R0 断开则T0 停止 T0 停止输出则 Y0输出低电平依次类推就可以得出 Y i 依次点亮的效果了 为了让 16盏灯依次点亮需要两个属 于端口一个触发输入信号配置为 X1另一个停止运行的输入信号配置为 X2 此外需要 17 个定时器和 16 个输出端口以及 16个内部寄存器 23 个流水灯的梯形图分析 简洁分析起见下面分析 3 个流水灯的梯形图完整梯形图见附录 4 图 318 3 盏流水灯的梯形图 分析上面的梯形图在 R40的触发下可以依次点亮输出端的 LED灯程序运行到最后的时候 Y3 断开如果需要从新开始这里使用了一种特殊的方式就是想办法让R40隔一段时间产生一个脉冲从而驱动整个程序只要 R40脉冲不断就可以周而复始地运行状态灯 下面就产生脉冲的 R40 进行程序分析梯形图 如下 图 319 产生脉冲信号梯形图 分析说明输入端 X1 触发 R39 自锁 R 40 输出 1 当定时器在 R 39 接通后 04秒后 T30 接通 T30 非断开 R40 输出 0 在 T 30 接通后的 TM31 开始计时图中的值大于 16 盏灯完成一个点亮过程的时间此值要根据整个程序的一个完成周期来设定如果小了会产生混乱可能会出现两个灯在流动的情况如设大了等待的时间过长因此 TM31 的时间根据具体梯形图一个周期化的时间而定 图 320 脉冲产生状态图 分析说明由于 T31产生的是一个瞬间脉冲而软件的采用频率是 100ms故在 T 31 得电的瞬间无法 读取而实际上是存在的由此产生的 R40 脉冲信号就就是触发流水灯循环的信号这个循环代替了手工触发便于实验观察 3 整个流水灯的梯形图及状态图 把图 319的梯形图放在程序的开头然后接上图 318的流水灯状态产生梯形图最终的 16 盏流水灯的梯形图见附录 5 把程序下载到 PLC 运行得出的输出端口状态结果如下所示 图 321 输出端 Y 的状态图 分析说明 16 盏状态灯在 R 40 的触发下依次点 1 亮然后熄灭而且衔接得很好通过元件分析最后一盏灯灭到 R40产生下个触发脉冲的间隔差为 200ms衔接紧凑特别需要这样的是如果触发信号在 Y F灯灭前触发会出现两盏灯在流动的现象甚至产生混乱故 TM 31 的时间设定要注意其值要大于程序运行一个周期的时间 332 labview 的监控的程序设计 上节是流水灯的 PLC程序下载完后可以通过机子自带的 LED灯直观的观察到流水灯运动顺畅本节要介绍的是如何设计通讯系统实现状态灯的实时监控 1 读取流水灯命令流程图 图 322 流水灯命令流程图 分析说明①在读取多点命令中由于一次传输命令长度的限制最多只能读 8个端点的状态信息 ② 读 取 低 八 位 的 命 令 码 为01RCP8Y0000Y0001Y0002Y0003Y0004Y0005Y0006Y00077E ③读取高 8 位 的 命 令 码 为01RCP8X0008X0009X000AX000BX000CX000DX000EX000F78 ④命令发出要延迟一定时间否则正确读取时间甚至读不到数据这是因为传输和函数处理是要花一定时间的 ⑤这是实时监控程序是很费 CPU 的如果不需要把开关拨到 PROG 或者点击系统面板的 PROG 按钮其中读取分析数据显示这是一个子程序在提取数据中起到关键作用下面要来分析一下其原理 2 数据分析显示 从逻辑上来讲这个子程序需要两个输入才能得出输出数据这两个输入一个是发出的命令这个输入是确定流水灯的显示范围另外一个就是命令发出后提取的数据信息这两个输入进入子程序后经过比较分析最后输出结果其流程图如下所示 图 323 数据分析流程图 分析说明这个子程序其实是个 for 循环结构输入的数据位 8 位故要进行 8次循环提取的数据是字符型故要把字符型转化为数值型然后把数值型转化为布尔型最后把布尔数据赋予给布尔显示灯 3 数据分析显示子程序在 Labview 中的设计 根据上面的逻辑分析在 Labview 中很容易就可以 实现具体设计如下图所示 图 324 数据分析子程序 分析说明从上图可以看出整个过程出了数据提取和转换外在流水灯的定位上运用了类似总线的原理即总线发出地址对应的地址选中响应同时发出数据对应地址的灯获得状态信息如果地址等没选中则处于假状态不进行任何操作类似地高位的地址灯出子程序处理也是这样只要把地址对比栏那里该为 8F 即可 333 系统的监控运行调试 前面已近把流水灯的 PLC梯形图设计完成并把梯形图下载到 PLC存储起来了在上节中通过分析流水灯状态信息提取后在 labview 中的关键处理子函数也已经编辑完成通过测试可 以使用 通过组合命令调用主程序的方法把程序图组合如下图 325 所示在这个程序图中先对低 8位进行操作后面接的高 8位的状态操作这样设计主要考虑到数据分析的简便如果直接用命令 RCC 读取字单元触点的的状态信息命令则会出现分辨状态灯号的困难同时用 RCP 读取多点的缺陷就是要两次读取操作这样会耗掉系统的时间而 PLC每盏灯的亮的时间是 1秒在经过低 8位的操作后已经有一定的延迟了这样读取高 8 位时存在读取不及时甚至造成读取失败故对延迟时间的设定要谨慎 图 325 低 8 位状态的读取分析程序图 程序加载完后运行主程序点击运行控 制控件的 RUN 然后可以观察到灯在流动但相比 PLC 的 LED 灯有明显的滞后感这是由于程序的安排设计电脑的运行速度和命令的传输等各个因素累积的结果其运行情况如下所示 图 326 前面板监 35 本章小结 本章先介绍了 labview 的通讯函数本论文设计的通讯界面以及其中典型的通讯模块然后以流水灯为实例展现了系统的实现方法工作流程以及最终的运行结果 网络远程虚拟仪器开发 为了方便实现硬件资源的共享通过网络可以很好的把虚拟仪器的信息传到远方甚至可以实现远程操控远程虚拟仪器技术为远程客户提供现场的检测数据和图像增强临场 感还可以对远程的检测进行实时的控制大大拓展了对象测试和控制的应用范围正成为未来发展的趋势 [9]同时由于远程虚拟仪器使得系统的测量分析输出和测控等部分可以在空间上分离因此避免了随身携带庞大且笨重的测量仪器提高了工作效率也可解决因地理位置和条件的限制而无法快速维修测试的难题另外虚拟仪器也促进了远程测控技术的进一步发展具有较好的应用前景 [11] 41 通信模式 411 CSClientServer 模式 即客户端服务器模式 CS 是 20 世纪 80 年代末逐步成长起来的一种模式 CS 结构的关键在于功能的分布一些功能放在前端 机即客户机上执行另一些功能放在后端机即服务器上执行功能的分布在于减少的各种瓶颈问题 CS 模式简单地讲就是基于企业内部网络的应用系统与 BSBrowserServer 服务器模式相比 CS模式的应用系统最大的好处是不依赖企业外网环境即无论企业是否能够上网都不影响应用 CS 组网模式一般如图 图 41 CS 拓扑结构 从图中可以看出 CS 组网模式一般由现场测控设备测控机和远程服务器组成在 CS 模式下一般采用 TCPIP 协议进行数据传输 412 BS Browser Server 模式 BSBrowserServer 服务器模式 又称 BS 结构它是随着的兴起对应用的扩展在这种结构下用户工作界面是通过来实现的 BS 模式最大的好处是运行维护比较简便能实现 不同的人 员从不 同的地 点以不同 的接入 方式比 如 LAN WAN InterIntra 等访问和操作共同的数据最大的缺点是对企业外网环境依赖性太强由于各种原因引起企业外网中断都会造成系统瘫痪 BS 模式下一般采用HTTP 协议 BS 模式如图 图 42 BS 拓扑结构 从图中可以看出 BS 组网模式一般由客户机服务器以及和服务器相连的远程测控设备组成 413 CS 和 BS 的比较选择 从本质上说 BS模式与 传统 CS模式都是以同一种请求和应答方式来执行应用的但两者有较大区别 系统性能 在系统的性能方面 BS 占有优势的是其异地浏览和信息采集的灵活性任何时间任何地点任何系统只要可以使用浏览器上网就可以使用 BS 系统的终端不过采。基于labview的plc与上位机通讯系统设计毕业论文
相关推荐
Instrument Engineering Workbench( 实验室虚拟仪器集成环境 )的简称 , 是美国国家仪器公司 NI( National Instruments) 的创新软件产品 , 被誉为 “ 科学家与工程师 ” 的语言。 虚拟仪器是 LabVIEW的精髓 , 通过虚拟仪器的延伸与扩展 , 使 LabVIEW的应用更加广泛 .
信号经过快速傅里叶变换分解为单一的谐波分量,可以得到振动的频谱。 图 32 是系统软件的结构图,如图所示,使用 DAQ采集助手和相应的硬件设备,我们将振动信号采进计算机中,通过数字滤波滤除信号中的噪声和不需要的频率成分。 为了减少或抑制频率泄露,采用加窗处理。 32 系统软件结构框图 分模块进行加速度变化率的累加,求的当前速度;在进行速度变化率的累加,求得当前位移,积分用“数学
则可以用Windows菜单下的Show Functions Palette功能打开它,也可以在框图程序窗口的空白处点击鼠标右键以弹出功能模板。 注:只有打开了框图程序窗口,才能出现功能模板。 功能模板如下图所示。 结构子模板:包括程序控制结构命令,例如循环控制等,以及全局变量和局部变量。 数值运算子模板:包括各种常用的数值运算符,如+、等;以及各种常见的数值运算式,如+1运算;还包括数制转换
点。 : ( 1)虚拟仪器是一种创新的计算机仪器,而非一种传统意义上的具体的仪器,它是一种功能意义上而非物理意义上的仪器,仪器功能可由用户软件定义,柔性结构,灵活组态,给了用户一个充分发挥自己能力和想象力的空间。 ( 2)一台计算机被设计成多台不同功能的测量仪器,能集多种功能于一体,构成多功能 和多用途的综合仪器,极大地丰富和增强了传统仪器的功能。 ( 3)由于计算机有极其丰富的软件资源
,它是在传统的网页 HTML 文件 (*.htm,*.html)中插入 Java 程序段 (Scriptlet)和JSP 标记 (tag),从而形成 JSP 文件 (*.jsp)。 用 JSP 开发的 Web 应用是跨平台的,既能在 Linux 下运行,也能在其他操作系统上运行。 JSP 技术使用 Java 编程语言编写类 XML 的 tags 和 scriptlets
权,如 MicroSoft、 IBM、 Netscape、 Novell、 Apple DEC、 SGI 等,因此, Java 语言被美国的著名杂志 PC Magazine 评为 1995 年十 大优秀科技产品, (计算机类就此一项入选 ),随之大量出现了用 Java 编写的软 件产品,受到工业界的重视与好评,认为 Java 是八十年代以来计算机界的一 件大事