计算机与PLC通信技术在煤矿探测与救援机器人中的应用.pdf

返回 相似 举报
计算机与PLC通信技术在煤矿探测与救援机器人中的应用.pdf_第1页
第1页 / 共5页
计算机与PLC通信技术在煤矿探测与救援机器人中的应用.pdf_第2页
第2页 / 共5页
计算机与PLC通信技术在煤矿探测与救援机器人中的应用.pdf_第3页
第3页 / 共5页
计算机与PLC通信技术在煤矿探测与救援机器人中的应用.pdf_第4页
第4页 / 共5页
计算机与PLC通信技术在煤矿探测与救援机器人中的应用.pdf_第5页
第5页 / 共5页
亲,该文档总共5页,全部预览完了,如果喜欢就下载吧!
资源描述:
2 0 1 2年 4月 第 4 o卷 第 8期 机床与液压 MACHI NE T0OL & HYDRAULI CS Ap r .2 01 2 Vo 1 . 4 0 No . 8 D OI 1 0 . 3 9 6 9 / j . i s s n . 1 0 0 1 3 8 8 1 . 2 0 1 2 . 0 8 . 0 4 1 计算机与 P L C通信技术在煤矿探测与救援机器人中的应用 吴倩颖 ,高峻晓,朱建国 北京X- Y - 大学机电学院,北京 1 0 0 0 8 1 摘要机器人内部各个控制模块之间的通信、下位机 P L C模块与上位机 P C之间的通信是机器人智能控制中的重要环 节。以某大学研制的煤矿探测与救援机器人为平台,介绍下位机中多个 P L C的通信过程及下位机与上位机通信的实现,重 点阐述了采用 V i s u a l C6 . 0开发串行通信程序来实现 P C与 P L C实时通信的过程。通过 P c对机器人的通信控制实验证 明,这种通信方式简单有效、实时性较强。 关键词串口通信; P L C ;煤矿探测与救援机器人 中图分类号T P 2 7 3 文献标识码A 文章编号1 0 0 1 3 8 8 1 2 0 1 2 8 1 1 0 4 Ap pl i c a t i o n o f t he Co mmu ni c a t i o n be t we e n Co mp ut e r a nd PLC i n Co a l M i n e De t e c t i n g a nd Re s c u e Ro b o t wu Q i a n y i n g , G A O J u n y a o , Z H U J i a n g u o S c h o o l o f Me c h a t r o n i c E n g i n e e r i n g ,B e i j i n g I n s t i t u t e o f T e c h n o l o g y , B e i j i n g 1 0 0 0 8 1 ,C h i n a Ab s t r a c t T h e c o mmu n i c a t i o n b e t we e n t h e i n n e r p a r t s o f t h e r o b o t ,a n d t h e c o mmu n i c a t i o n b e t we e n u p p e r a n d l o we r c o mp u t e r a r e i mp o r t a n t p a r t i n i n t e l l i g e n t c o n t r o l o f r o b o t . T h e r e a l i z a t i o n s o f t h e c o mmu n i c a t i o n s b e t we e n s e v e r a l p r o g r a mma b l e c o n t r o l l e r s P L Ci n t h e r o b o t we r e i n t r o d u c e d .Th e r e a l i z a t i o n o f t h e c o mmu n i c a t i o n b e t we e n P C a n d P L C b a s e d o n Vi s u a l C 6 . 0 wa s d e m o n s t r a t e d i n d e t a i l .Al l t h e e x p e ri me n t s we r e ma d e b a s e d o n t h e c o a l mi n e d e t e c t i n g a n d r e s c u e r o b o t d e v e l o p e d b y s o me i n s t i t u t e .T h e e x p e r i me n t a l r e s u l t s p r o v e t h a t t h e c o mmu n i c a t i o n me t h o d i s s i mp l e,e f f e c t i v e a n d h a s g o o d r e al- t i me p e r f o r ma n c e . Ke y wo r d sS e ri a l c o mmu n i c a t i o n ;P L C;C o al mi n e d e t e c t i n g a n d r e s c u e r o b o t 在机器人的控制中,实时控制是非常重要的,特 别是在煤矿探测与救援中,机器人要在未知的、非常 恶劣的环境中工作 ,感应环境变化 ,搜救受困人员。 操作者要准确控制机器人 的各种动作 ,接 收机器人采 集反馈的各种信息,这就要求通信系统和通信方式稳 定可靠 ,人机交互系统 的设计要高效和人性 化 ,既能 设置相关参数 ,向下位机发出准确命令,又能实时显 示下位机反馈 的信息 。以基 于松下 F P ∑系列 P L C的 煤矿探测与救援机器人为平台,对机器人上下位机通 信原理和过程进行介绍 ,详细阐述了机器人本体中多 个 P L C间、下位机与上位机 P c之间的通信系统的设 计 。 1 下位机控制系统的组成 下位 机 中 的控制 系统 由 5个 松 下 F P∑系 列 的 P L C组成,型号为 F P 2 . C 3 2 T 2 H,可扩展数模转换等 单元,程序容量为3 2 k B 。它完全具有工控机的所有 功能,各种接 口模块、通讯模块、数学函数齐全,具 有速度 、位置 电机多轴控制 ,循环扫描周期 0 . 3 2 s ,具有 直线插 补功能 。现在所有 的 5台 P L C均扩 展 了 F P G. C O M4通 讯 插卡,具有一个三线 式 R S 2 3 2 C 通 道 和 一 个两线式 R S 4 8 5通道 , R S 2 3 2串 口用来 和 各 自相应 的模 块 通信 , R S 4 8 5接 口用于通信 组 网 ,从 而 实 现 各 P L C之 间的通信。多 图 1 多 P L C的 R S 4 8 5 总线通信示意图 P L C组成 的 R S 4 8 5网络示意 图如 图 1 所示。 机器人本体 中5个 P L C分别编号 1 _5 ,各 自分 工,实现机器人的主体控制及信号的采集功能。其中 P L C 1 充当通信系统的网关节点,实现信息的中转作 用,即接收上位机的指令并发送给下位机 中的其他 P L C ,同时接收其他 P L C采集和反馈的信息 ,返回给 上位机。P L C 1与其他 P L C之间采用 R S 4 8 5进行通 信,P L C 1 与上位机之间利用无线通信模块 S R WF 一 1 0 2 8 ,采用 R S 2 3 2进行通信。通信示意图如 图 2所 示 。 收稿 日期 2 0 1 1 0 3 2 8 作者简介吴倩颖 1 9 8 6 一 ,女,硕士研究生,主要研究方向为传感与控制技术、机器人技术。Em a i l w u q i a n y i n g l 0 0 3 y a h o o . c o n. e n 。 第 8期 吴倩颖 等 计算机与 P L C通信技术在煤矿探测与救援机器人中的应用 1 1 1 图 2 机器人通信系统示意图 2 通信方式的选择和设定 2 . 1 通信 方 式的 选择 作者所采用的 F P∑系列的通信插卡,可以实现 以下 3种通信功能 计算机链 接 功能 。计 算 机链 接 功能 是计 算 机 与 P L C 、P L C与外部设备连接后进行通信的功能。当计 算机链接后通信时,应使用松下公司提供的专用协议 ME WT O C O L C O M。这种通信协议 以计算 机作为 主 站 ,P L C作为从站 ,通信由主站发起,将命令帧发向 从 站 ,从站 以响应 帧或错 误 帧做 应答 。ME WT O C O L C O M协议对命令帧 、响应帧及错误帧做了严格的规 定。这种通信方式的局限性较大,可移植性差 ,只能 用于特定的 P L C 。 P c P L C 链接。使用专 门的内部继电器 [ 链 接继电器 L ]和数据寄存器 [ 链接寄存器 L D] ,使连 接起来的 P c P L C 间数据共享。这种通信方式主 要用于 P L C的调试 中。 通用串行通信方式。C O M端 口上连接的外部设 备的数据,可以通过串行通信来接收或发送。这种通 信方式应用广泛,可移植性强。设计者可以根据实际 需要 ,自行设 计和规定通信协议 ,简单 易行 。基 于通 用串行通信方式的简单和易移植性,采用此种方式进 行通信 。 2 . 2上 下位 机通信 协议 的设 定 机器人上下位机的通信主要包括上位机发送命令 帧 给机器人本体执行 ,机器人返还信息帧给上位机显 示。其中命令帧的格式如表 1 所示。 表 1 命令帧的格式 命令 以 开始 ,可 自行选择通信方式 。机器人地 址用 于在 多个机器人 的控制 中 自主选择多个或某个特 定 的机器人 发送 或接受相应 的指令 。命令字段为控制 机器人本体的直接命令 ,包括前进、后退等。参数 1 和参数 2利用机器人命令的扩展,默认为 0 。校验码 为对前 面的 6位数据进行异或运算 ,使发 送的命令 帧 更加准确有效 。最后一个字段是结束符 ,判断一帧数 据结束与否 。 返还给上位机的信息帧的数据格式与命令帧格式 类似,同样包含帧起始符、帧结束符、校验码、机器 人地址等 ,另外还包含许多机器人状态信息字段 ,如 机器人左右履带 当前速度 、前后摆臂角度 、罗盘三维 姿态信息 、红外传感器所测障碍物的距离信息、温湿 度和各种气体浓度信息等。 2 . 3 煤矿机器人 中P L C与 P C通信 的软件设置 上位机的通信界面如图3所示。 打开软件界面,系统初始化为串 口打开,选择 C O M1口。点击相应的按钮时,上位机把包含具体操 作代码的数据帧通过无线通信模块 S R WF 一 1 0 2 8发送 给下位机。如图 1所示 ,操作代码 0 x 7 1 、0 x 7 6代表 具体的操作 ,如前进、右转指令。 图 3 上位机的用户界面 下位机中的 P L C 1 起到网络节点的作用 ,直接与 上位机进行通信 ,并 向下位机 中的其他 P L C发送或 采集指令。对于 P L C 1 ,通信插件选 用 A F P G 8 0 6 一 R S 4 8 5 1 通道 C O M1 ,用于与下位机中的其他 P L C 进行通信,选用 R S 2 3 2 C 1 通道混载型 C O M 2 用 于接收或发送上位机的指令。通信口的系统寄存器设 置如下 1 1 2 机床与液压 第 4 0卷 C O M 1口 R S 4 8 5 ,用于 R S 4 8 5组 网通信设 置 N o . 4 1 2 通信模式通用通信 N o . 4 1 4 通信格式 8 n 1 ,结束符C R, 起始 符 无 S T X N o . 4 1 5速率 1 1 5 2 0 0 b / s N o . 4 1 6 C O M1串 口接收 区开始地址 2 7 0 0 0 N o . 4 1 7 C O M1串口接收区大小 字 2 0 0 0 数据接收缓 冲区范围 D T 2 7 0 0 0~D T 2 8 9 9 9 C O M 2口 R S 2 3 2用于和上位机通信设置 N o . 4 1 2 通信模式 通用通信 N o . 4 1 4 通信格式8 n 1 ,结束符 C R, 起始 符 无 S T X N o . 4 1 5 速率 2 4 0 0 b / s N o . 4 1 8 C O M 2串口接收区开始地址 2 5 0 0 0 N o . 4 1 9 C O M 2串口接收区大小 字 2 0 0 0 数据接收缓 冲区范 围 D T 2 5 0 0 0~ D T 2 6 9 9 9 其他 P L C的设置类似 ,除了 C O M 2的通信波特 率和通信格式稍有区别。各个 P L C的软件流程图如 图4所示 。 r _ ] L 鼋 喜 申 竺 I 向 P L c 跋送 I 1 兰 里 l a 网关 节点P L cl 程序 流程 图 b P L c 2 至P L c 5 程序 流程 图 图4 各个 P L C的软件流程图 3基于 V C6 . 0上位机通信界面的设计和实现 道,而 c语言与其他高级语言相 比,在此方面具有 3 . 1 V C6 . 0的通信控件友相关属性 较大的优势,这也是采用 V i s u a l C作为程序开发 M i c r o s o f t 公司的 v i s u a l c6 . 0功能强大,利 平台的另外一个重要原因。 用它可以开发出规模强大、功能复杂的Wi n d o w s 应用 M S C o m m控件是 V c6 . 0专 门用于通信的控 程序,并且用它来实现底层的通信控制,有着较快的 件,通过串行端口传输和接收数据,为应用程序提供 通信速度。因此该通信系统的上位机采用 V i s u a l C 串行通信功能。MS C o m m控件在串 口编程时非常方 6 . 0开发串行通信程序来实现 P C与 P L C的实时通信。 便 ,程序员不必花时间去了解更为复杂的 A P I 函数。 R S 2 3 2协议是 O S I 0 p e n S y s t e m I n t e r c o n n e c t i o n 协 MS C o m m控件属性很多,而且其属性可以随时改变, 议体系中基于物理层的通信协议。它负责与硬件打交 表 2介绍了文中用到的属性及设定值。 第 8期 吴倩颖 等计算机与 P L C通信技术在煤矿探测与救援机器人中的应用 1 1 3 表 2部分 MS C o m m控件属性及设定值 属性 属性功能说明 设定值 C o mm P o r t P C端 口号 1 I n B u f f e r S i z e 输入缓冲区的大小 1 0 2 4 B O u t B u f f e r S i z e 输出缓冲区的大小 5 1 2 B I n p u t M o d e 设置输入方式 1 二进制输入 I n p u t L e n 从接收缓冲区读取的字节0 全读 R t h r e s h o l d 接收几个字符串时触发事件 1 P o r t O p e n P C端 E l 的状 态 默认为 1 I n p u t 读人数据 O u t p u t 输 出数据 3 . 2 利 用 V C 4 - 4-6 . 0编写通 信程 序 上位机通信的流程图如图 5 所示 。 初 始 化 串口 厂 毕 I ta r o n c 。 m m 事 件 卜 从 串 13读入 P L C发送 的 数据 N 图5 上位机串口通信流程图 具体的操作过程如下 1 在 V C6 . 0中新建一个 基于对话 框 的文 件,并在当前项 目中加入 MS C o m m控件。 2 在主对话框 中加入所需要的控件,设置各 个控件的属性 ,并在 M F C C l a s s Wi z a r d中将对话框的 控件和变量相关联 。设计 完成的对话框如图 6 所示 。 图6 对话框添加控件后的状态 3 添加消息和程序代码。 ①串口初始化 / 串 口初 始化开始 l / s e ria l p o r t o p e n _ f la g FALS E; m m s c o m . S e t C o m m P o r t 1 ; / / 串口 1 m m s c o m . S e t l n B u f f e r S i z e 1 0 2 4 ; / / 设 置输入缓 冲 区 的大小 , 1 0 2 4 B y t e s . m m s c o m . S e t O u t B u f f e r S i z e 5 1 2 ; / / / / 设置输 人缓 冲区的大小, 5 1 2 B y t e s i f m m s c o m . G e t P o r t O p e n / / 打开 串口 m ms c o m. S e t P o r t O p e n T R U E; m m s c o m . S e t I n p u t M o d e 1 ; / / 设置输 入方式 为二 进制方式 m m s c o m . S e t S e t t i n g s ” 2 4 0 0 , n , 8 , 1 ” ; / / 设置波 特率等参数 m m s c o m . S e t R T h r e s h o l d 1 ; / / 为 1表 示 有 一个 字符即引发事件 m ms c o m. S e t l n p u t L e n 0 ; ②发送数据过程 i n t C J Cr o b o t c o n t r o l a p p l i c a t i o n Dl g s e n d c o mma n d f r a m e c h a r n o d e i d , c h a r c m d , c h a r a r g l , c h a r a r g 2 { c h ar b c c_t e mp; C B y t e A r r a y s e n d A r r ; / / 构 造 要发 送 的 字节数组 s e n d A r r . S e t S i z e L E N G T H O F C OMMAN D S E ND TO R O B O T ; / / 设置数组元素的个数 i n t i _s e n d; c o mma n d s e n dt or o b o t [ I N D E X O F N O D E I D I N COMMAND F R A ME ]n o d e i d ; / / 节点 I D c o mma n ds e n d t o r o b o t [ I N D E X O F C M D I N COMMAND F R A ME ]c m d ; / / 命令 c o mma n d s e n d t o r o b o t [ I N D E X O F A R G 1 一 I N COMMAND F R A ME ]a r g l ; / / 参数 1 c o mma n d .s e n d t or o b o t [ I N D E X O F A R G 2 . I N COMMAND F R A ME ]a r g 2 ; / / 参数 2 b c c _t e mp b c cc h e c k c o mma n d s e n d t o r o b o t , I NDEX OF BCC I N COMMAND F R A M E ; / / 计 算 B C C校验码 c o mma n d s e n dt or o b o t [ I N D E X O F B C C I N COMMAND F R A ME ] b c c t e m p ; / / 添加 B C C校验码 f o r i s e n d 0 ;i s e n d f r a m e n u n, 1 ; / m _p D s t 解码后的数据 / m e m c p y m p P D a t a 1 , m p D s t , L o n g ; L o n g / 使用 U D P协议发送编码后的数据到服务器 / s e n d t o s o e k f d , m p P D a t a , Lon g , 0 , s t r u c t s o c k a d d r a d d r d s t , s i z e o f s t r u c t s o c k a d d r _ i n ; } } 4结论 基于 H . 2 6 4 ,在运行 L i n u x操作系统的 A R M 9开 发板上成功实现了远程监控,程序设计采用统一的 V 4 L 2接 口规范 ,模块化编程 ,思路清晰 ,操作简单 , 视频成像清晰。该系统已在实际中运行 ,其稳定性和 实时性均得到用户认 可。 参考文献 【 1 】毕厚杰. 新一代视频压缩编码标准 一 H . 2 6 4 / A V C [ M] . 北京 人民邮电出版社。 2 0 0 5 . 【 2 】 韦东山. 嵌入式 L i n u x 应用开发完全手册[ M] . 北京 人 民邮电出版社 , 2 0 0 9 . 【 3 】 杜春雷. A R M体系结构与编程[ M] . 北京 清华大学出 版社 , 2 0 0 9 . 【 4 】 C O R B E T J o n a t h a n , R U B I N I A l e s s and r o , K R O A H H A R T M A N G r e g . L i n u x D e v i c e D r i v e r s[ M] . 0、 R e i l l y Me d i a , I n c , 2 0 05. 【 5 】 郑灵翔. 嵌入式 L i n u x 系统设计[ M] . 北京 北京航空航 天大学出版社, 2 0 0 8 . 【 6 】 王姣, 宫政. 基于嵌入式系统的数控机床信息采集与监 测技术的研究[ J ] . 机床与液压 , 2 0 1 0, 3 8 8 9 0 9 2 . 【 7 】 宋兴亮, 姜培刚, 丁士钰. 基于 I n t e r n e t 的嵌入式监控系 统设计[ J ] . 机床与液压, 2 0 0 9 , 3 7 2 1 0 41 0 5 , 1 5 5 . 【 8 】R O S E N B E R G J , W E I N B E R G E R J , H U I T E M A C . S T U N s i m p l e T r a v e r s a l o f U s e r D a t a g r a m P r o t l c o l U D P N e t w o r k Ad dr e s s Tr a n s l a t o r s, 20 03. 上接第 1 1 3页 ③接收数据过程 s w i t c h m m s c o m . G e t C o m m E v e n t / / 1] 用 G e t C o m m E v e n t 函数检 测控件 引起 的实践 { c a s e 2 / c a s e 2代表 c o m E v R e c e i v e事件 , 有数据到达。下面接收数据的过程和发送数据类似, 省 略 / v a r i a n t i n p m ms c o m. G e t I n p u t ; s a f e a r r a y i n p v a r i a n t i n p; l e n s a f e a r r a y i n p . G e t On e D i mS i z e ; f o r i 0 ; i l e n ; i s a f e a r r a y i n p . G e t E l e me n t i 。 r x d a t a [ i ] ; r x d a t a[ i ] \ 0 ; 4结论 介绍了煤矿搜救机器人通信技术的实现方法。简 单介绍下位机多个 P L C之间的通信过程和信息共享, 重点 阐述上位机 与下位机 的基 于 V C 6 . 0的 串行通 信的实现 方法。V C 6 . 0 ,特别是 MS C o m m控件在 串行通信中具有强大的优势。松下 F P ∑系列的P L C为 其产品设置的通用串行通信方式使用户有了更广泛的 应用空间。通过 P C对煤矿探测与救援机器人的通信控 制实验证明,文中所述的通信方式是实时和可行的。 参考文献 【 1 】 李现勇. V i s u a l C 串口通信技术与工程实践[ M ] . 北 京 人 民邮电出版社 , 2 0 0 2 . 【 2 】 邱公伟. 可编程控制器网络通信及应用[ M] . 北京 清华 大学出版社 , 2 0 0 0 . 【 3 】 廖育武, 胡家勤. 多 P L C的分布式控制系统的通讯方法 [ J ] . 矿山机械, 2 0 0 9, 3 7 1 4 3 8 4 1 . 【 4 】 李东晓. P c与 P L C实时通信的 V i s u a l C 6 . 0实现 [ J ] . 计算机应用研究, 2 0 0 2 1 1 1 1 1 1 2 .
展开阅读全文

资源标签

最新标签

长按识别或保存二维码,关注学链未来公众号

copyright@ 2019-2020“矿业文库”网

矿业文库合伙人QQ群 30735420