基于单片机与PLC通讯系统的设计与实现.pdf
自动化与仪器仪表2 0 1 2年第 5期 总第 1 6 3期 基于单片机与P L C 通讯系统的设计与实现 葛 辉 南京理工大学泰州科技学院 江苏泰州, 2 2 5 3 0 0 摘要设计了S 7 2 0 0 PL C与51系列单片机实现 串行通信系统的硬件连接与软件实现的方案。 通过 R S 2 3 2转 R S 4 8 5 接 口电路, 将单片机硬件电路与P L C进行硬件的连接 , 以单片机为上位机 , 向P L C 发送数据 , 控制P L C 上三相异 步 电动机的正、 反转 。 P L C 通过异或校验码对接受到的数据进行核对 , 以进一步提高数据传输的可靠性 , 然后 P L C将 自身状态信息反馈给单片机 , 最终实现单片机能够正确的控制 P L C及 P L C正确反馈信息的操作。 关键词5 l单片机; P L C ;自由通信协议 Ab s l r a c t I nt h ed i s s e r t a t i o n , a s c h e metha t c a n a c c o mp l i s hh a r d wa r e c o n n e c t i o na n d s o f t wa r e r e a l i z a t i o no f s e r i a l c o mmu n i c a t i o n wh i c h h a s b e e n a p p l i c a t e d i n S 7 . 2 0 0 P LC a n d 5 1 MCU. Wi t h t h e RS 2 3 2 t r a n s f o r mi n g t o RS 4 8 5 i n t e r f a c e c h i p . i t c o n n e c t e d 5 1 MCU d e v e l o p me n t b o a r dt o P I b yf r e ep o r t c o mmu n i c a t i o n . As ah o s t c o mp u t e r , 5 1 MICU s e n dd a t at o眦a n dc o n t r o l p o s i t i v e r o t a t i o n a n d r e v e r s e r o t a t i o no f t h et h r e e - p h a s e a s y n c h r o n o u smo t o r wh i c hc o n n e c t t oP LC. T oi mp r o v et h e r e l i a b i l i tyo f d a t at r a n s mi s s i o n . P LC c h e c k l h e r e c e i v e dd a t ab yX0Rc h e c kc o d e . Th e nt h e s t a t ei n f o r ma t i o no f P LC wi l l b e s e n t b a c kt o5 1 M CU. I no r d e r t or e a l i z et h er i g h t o p e r a t i o n f r o m 51 Ma 7 t 0P LC. t h e s t a t ei n f o r ma t i o no f P wi l l b e s e n t t ot h e5 1 MCUi nr e t u m. Ke ywo r d s 51 MCU P LC F r e ep o r t c o mmu n i c a t i o n 中图分类号“1 “ P 3 8 8 . 2 文献标识码B 文章编号1 O 0 1 - 9 2 2 7 2 O 1 2 0 5 - 0 1 6 1 - 0 3 0 引 言 单片机 由于其驱 动能力非 常弱 ,无法驱动大 功率大 电流的设备直接工作, 故在与强电设计相结合使用的情况 受到限制 。 P L C因其运行可靠、 使用简单、 抗干扰能力强, 并且负载驱动 能力强 , 适用于环境条件较差 的工业现场 , 所 以在机械制造 、 钢铁、 化工、 石油、 电力 、 轻纺 、 汽车、 交 通运输 等生产机械和生产过程 的 自动控制 中得到广泛的 应用 。 但是 , 单片机作为一款智能化程 度较高 的嵌入式系 统 的核心处理器, 在系统设计和外设管理过程 中起着至关 重要 的作用 , 因此成 为弱 电控制强 电的环境最佳 的选择 。 同时,单片机价格低、体积小 、 使用灵活 以及智 能化程度 高, 适用 于家 电、 办公设备 、 仪表仪器及传感器 内部 的核 心器件⋯ 。 P L C虽然控制能力极强, 但是缺 乏智能化,没有可操 作 的人机界面, 无法外接键盘等外设, 所 以在使用P L C时 就必需通过外部的智能设备编程来实现它 的控制要求 。 因 此在实际使用 中往往希望能将 两者结合起来 ,为实现更为 优化的设计具有重要的意义。 通过单片机与PL c进行通信 , 对P L C编写新的控制要求 , 就可以充分利用单片机扩展方 便的特点, 使得P L C应用更具灵活性。 本文设计了P L C与单片机实现 串行通信 的软件编程与 硬件连接的方法。 通过R S 2 3 2 转R S 4 8 5 转换 电路, 将单片机 开发板与实验室P L C 进行硬件的连接 , 以单片机为上位机, 向P L C发送数据, 控制P L C上三相异步电动机 的正、 反转。 P L C通过异或校验码对接受到的数据进行核对 , 以进一步 提高数据传输的可靠性 , 然后P L C将 自身状态信息反馈给 收稿 E l 期 2 0 1 2 0 6 3 0 作者简介葛辉,男, 江苏徐州人, 硕士, 讲师, 主要研究方向 为运 动控 制技 术 和机 器视 觉技 术 。 单片机, 最终实现单片机和P L C结合控制 电机, 下面通过 实例就单片机与P L C的通讯设计与实现介绍如下。 1 软件设计 设计任务是实现单片机与P L C的通信, 单片机作为主 站, 通过c o g口发送控制指令到P L C的P O R T O口 , P L C 通过 R C V指令接收数据 , 然后对指令进行译码,译码后控制程 序 ,以实现指令要求 的操作 ,同时返 回指令 的状态信 息。 1 . 1 通讯 协议 在单片机与P L C的通信中, 主要是利用单片机 向P L C 发送命令和接收返回数据, 通信协议采用命令 /响应模式 , 一 次通信 发送的一组数据作一帧, 每帧 由3 3个字符组成 , 单片机发送的命令具体格式如表 1所示 。 表1 单片机发送指令格式 超 始 { 指令 l 目 标 P t 站地 l 目 标寄 存 l 读/ 字 I 数据隧 } 唧校 验 l 鲇求 字 符 字符{ 类型 l 址 l 器地址 数 l I 码 l 1 起始字符 占用一个字符, 用 “ g” 表示开始; 2 指令类型 占一个字符, 分为读/写两种, 本文用到 了写指令 , 用“ 0 6H” 表示; 3 目标P L C站地址用十六进 lJ A s c I I 码表示, 占用两 个字符, 先在P L C程序中设定好 , 保持与单片机中一样, 占 用指令两个字节。 如设定地址为0 3 t t , 用十六进制A S C I I 码 表示为两个字节为B 2 3 0 , B 3 3 3 ; 4 目 标寄存器地址用十六进 II A S C I I 码表示, 占八个 字符, 寄存器在 P LC内部可以用4个字节来表示, 其中, 前 两个字节用来表示寄存器类 型, 后两个字节用来表 示寄存 器号, 例如O 0 0 0 H I 寄存器区, 0 I O O H Q寄存器区, 0 2 0 0 H M寄存器区, 0 80 0 H V寄存器区。 若将数据传输V寄存器区 1 61 学兔兔 w w w .x u e t u t u .c o m 基于单片机与P L C 通讯系统的设计与实现 葛辉 中, 如V B 9 9 , 则地址表示为0 8 0 0 0 0 6 3 H ; 5 读 / 写字节数M,占一个字符, 它表示要写入P L C的 十六进制AS C I I码数据所 占的字节数; 6 要写入的数据 , 也用十六进制A S C I I 码表示, 所以 这部分数据共 1 6个字节,最多可 以写入 8个字节 的数据, 数据区要填满 , 但P L C只读前M个字节的数据; 7 B C c 校验码,占两个字符, 用来检验传输数据是否 发生错误 ,以提 高传 输的准确率; 8结束字符,占一个字符,用来辨认指令的结束, 这 里设定为“ G” 。 单片机接 收数据格式如表 2所示 。 表2 单片机接收数据格式 起始 字符 1 状态信息 I 数 据 I B C C 校 验码 l结束字符 P L C向单片机反馈相应信息, 如现在是执行开始命令 或者结束命令等, 开始字符与结束字符还是为“ g” 和“ G” , 而状态信 息中则为 电动机 的状态信息 。 s 7 - 2 0 0 P L C 支持多种通信协议, 如多点接口协议 M P I 协议 、 点对点接 口协议 P P I协议 和 自由通信协议以及 P R O F I B U S协议等。 其中自由口通信模式允许应用程序控制 S 7 2 0 0的串行通讯口, S 7 2 0 0处于R U N 方式时, 当选择了 自 由 口通信 ,用 户程序通 过接受 中断 、发送 中断来收 发指 令 , 用户程序通过使用发送指令、 接受指令 、 发送接收 中 断指令来控制通信 口的操作⋯ 。 P L C通信参数的设置有控制寄存器S M B 3 0或者S M B 1 3 0 来 设定,包括波特 率、数据位 、 校验方式等都要与单片机 保持一致, 而 P LC内部运行过程如图 1所示。 图l P L C 内部流程图 1 . 2 通讯协议的实现 通信协议设计主要包括单片机程序设计和 P L C程序设 计 。单片机 部分程序 1 单片机初始化部分子程序 v oi d i n i t s e r i a l c o m m v o i d { S C O N O x 5 0 / 木 串口工作方式1 , 允许接收术 / T M O D O x 2 0 P C O N O x O 0 / * S M O D O * / T H I O x F D / 木 波特率为9 . 6 K * / T L I O x F D I E O x 9 5 / 木 开总中断, 开串口 中断, 开外部中断0, 开外部中断 1 木 / 2 单片机发送数据子程序 v oi d s e n d d a t a 0 i n t e r r u p t 0 u s i n g 2 1 62 E X O O d e l a y l 4 i f K E Y O { f o r j 0 j 3 3 j { S B U F t a b[ j ]/ 木 将数据发送到串口术 / w h i l e T I / 木等待串口数据发送结束术 / T I O 复位串口中断木 / E X O I ; 3 单片机接收数据子程序 v o i d i n t c o m i n t e r r u p t 4 u s i n g 0/ 木 输入中断木 / { E X O O E X I O f o r i O i 2 1 i { i f R I R I O r c [ i ] S B U F PL C的部分通信程序 1 主程序部分 L D S M 0 . 1 C AL L S B R 一0 S B R O / / 首次扫描调用初始化程序 L D B V B 1 3 4 , V B 1 9 9 / / 指令中的站地址与本站地址 相 符 A B V B 1 0 2 , 6 / /指令类型为写指令 A M O . 0 / / B c c 校验码正确 C A L L w r i t e S B R 1 / / 调用写子程序 L D M O . 1 C A L L v e r i f y S B R 3 / / 调用B C C 校验码子程序 L D S M O . 0 C A L L S BR 一2 S B R 2 / / 调用电动机控制子程序 L D S M 4 . 5 / /当端口空闲时启动 R C V R C V V B I O 0 , 0 2 P L C初始化子程序 L D S M O . 0 M O V B 9 , S M B 3 0 / /自由口协议, 9 6 0 0 b p s , 8 个数据 位 , 无校验位 L D S M O . 0 / / R C V 指令初始化 M O V B 1 6 E C , S M B 8 7 M O V B 1 0 3 , S M B8 8 M O V B 7 1 , S M B 8 9 M O V W 1 0 0 0 , S M W 9 2 M O V B 3 5 , S M B 9 4 R S M 8 7 . 2 , 1 L D S M O . 0 A T C H I N T 一0 I N T O ,2 3 / / 接收完成事件连接到 中断程序 0 L D S M 0 . 0 下转第1 6 5 页 学兔兔 w w w .x u e t u t u .c o m 自动化与仪器仪表2 0 1 2年第 5期 总第 1 6 3期 选用有很 高的要求 。 ②当 d越大时, 节流后 的背压越高, 从喷嘴损失的能 耗也越高,但x值对背压的影响平缓 。 基于这种特性, 对产 品的设计及零件的加工和材料选择要求 不高 。目前 国内的 材料水平和 加工水平 , 可 以满 足对 产品的设计需求 。 4 结 论 本文通过 理论公式计算推 导出理想状态 下的技 术参 数 , 结合计算机A N S Y S模拟分析加 以论证, 为设计者提供 了一种有效的设计计算喷嘴档板结构参数的选择方法 , 各 个企业可 以根据国内的加工工艺水平和本厂的实际情 况, 从控制产品成本出发, 最终选择适合各 自产品的技术参数。 参考 文献 [ 1 ]黄继强. 智能阀门定位器的原理和发展方向[ J ] .自动化技术, 2 0 0 3 . 3 1 4 3 6 0 3 6 2 [ 2 ]长坂文雄, 本田善郎. 智能式阀门定位器s v P 3 O 0 O A 1 p h a p 1 u s 的 开发[ J ] . 世界仪表与自动化. 1 9 9 8 , 2 6 6 5 6 9 . [ 3 ]蔡明. Z P Z D 3 1 0 0 型智能阀门定位器的原理与设计 [ J ] . 自 动化 仪表,2 0 0 8 , 1 1 ,V o 1 . 2 9 u . [ 4 ]周智刚. 浅析智能电气阀门定位器开发关键技术[ J ] . 现代制造 技术与装备2 0 0 9 4 . [ 5 ]现代实用气动技术. S M C 中国 有限公司编, 1 9 9 8 . [ 6 ]控制阀手册. 费希尔控制设备国际有限公司编, l 9 9 9 . 上接第1 6 2页 A T C H I N T j I N T 1 , 9 / / 发送完成事件连接到中 断程序 1 L D S M O . 0 E NI L D S M O . 0 M O V B 3 , V B 1 9 9 / / 将本机站地址装入寄存器 L D S M O . O M O V D V B 1 0 2 ,V D 1 4 9 / / 装入地址指针 M O V B 0 ,V B 1 7 9 / / B C C 码寄存器清零 M O V D V B 1 5 6 ,V D 1 8 1 / / 装入地址指针 M 0 V B 0 ,V B 1 8 0 / / B C C 校验码寄存器清 2 硬件连接 硬件部分主要 由S T C 8 9 C 5 2 单片机、 S 7 2 0 0 P L C 、 M A X 4 8 5 接 口芯片 以及三相异步电动机组成 , 如下图2所示。 图2 硬件结构图 其中S T C 8 9 C 5 2 单片机与M A X 2 3 2 芯片被集成在单片机 开 发板 上 , 从 单 片机 开 发板 上 出来 的 电平 已经转 换 成 R S 2 3 2电平, 所以单片机开发板直接与R S 4 8 5总线相连, 然 后再接P L C, 由P L C上的输 出信号控制继电器来实现控制 电动机的 目的 。 将 电动机 的状态 以及传输过程 中是否发 生错误等信息以及 P L C反馈信息显示在 与单片机相连接 的 1 6 0 2 1 C D 屏幕上。 2 . 3 2 3 2 / 4 8 5 电平 转换 电路 P L C上的P PI电缆是一根R S 2 3 2转R S 4 8 5的匹配 电缆, 因为P L C 使用 R S 4 8 5 , 而单片通信 口采用 R S 2 3 2 , 两者的电 气规范并不相容 , 需要用 中间电路进行 匹配 。 R s 2 3 2接口收R X D 和发T X D线独立, 可以同时进行收发 通讯,同时R S 2 3 2设计成两个设备之间的单独通讯,不支 持多于两个设备 的联接 , 所 以它 的收发随时都可进行 , 不 会发生通讯碰撞。 而R S 4 8 5 采用差分的两根 A / B 线进行通 讯, A和B两根线的相对 电平来表达 0和 1,同一时刻只能 由一个设备驱动总线。 M A X 4 8 5 接 口芯片是M a xi m公司的一 种R S 4 8 5 芯片, 采用半双工通讯方式工作在 5 V 单一电源 的环境下 。 其中, R 0脚为数据输 出引脚,D I脚为数据输入引脚 , R E脚为R O的使能端, 低电平时有效, D E脚为DI的使能端 , 高电平时选通 。 A、 B两脚既是M Ax4 8 5的输入端也是输出 端, 在选择作为输入还是输 出时,由使能端R E、 DE的电平 来确定,该芯片与PL C的连接如图3所示 。 ] _ S7 2∞ PL C MAl48 l lI 图3 电平转换电路连接图 3 总结 由5 1 单片机和S 7 - 2 0 0 P L C 组成的串行通信系统, 采用 平衡驱动、 差分接收的R s一4 8 5接 口标准, 具有开发简单、 成本低 的优点 , 经过试 用证 明性稳 能定、运行可靠、抗干 扰能力强 。 在 以后的研 究中, 可 以将本系统为原型 , 集成 网络技 术和智 能传感技术 , 本系统将 具备更加 强大 的功 能, 应用 前景将 更加广 泛。 参考 文献 [ 1 ]胡辉, 王晓, 戴永成. 单片机原理及应用设计 [ M ] . 北京 中国 水利水电出版社, 2 0 0 5 . [ 2 ]陈建明, 王亭岭, 孙 标. 电气控制与P L C 应用[ M ] . 第2 版. 北京 电子工业出版社, 2 0 1 0 . [ 3 ]廖常初. P l c 编程及应用 第2 版 [ M ] . 北京 机械工业出版社. 2 0 0 5. [ 4 ]吴晓渊, 赵德安. 单片机的P L C 编译程序设计 [ J ] . 计算机应用与 软件, 2 0 0 8 , 0 8 8 3 8 4 . [ 5 ]杨汉生, 刘眠 孑 L 鲲鹏. 单片机多机通信的P r o t e u s 仿真设计 [ J ] . 四川兵工学报, 2 0 1 0 , 3 1 4 8 2 8 4 . [ 6 ]江小霞, 李叶妮. P L C 可编程控制器与PI c单片机的远程通信 [ J ] . 集美大学学报 自然科学版 , 2 0 0 9 , 1 4 4 2 4 4 2 8 . 1 65 学兔兔 w w w .x u e t u t u .c o m