资源描述:
2 0 1 1 年 4月 第 3 9卷 第 8期 机床与液压 MACHI NE T 00L HYDRAULI CS Ap r . 2 01 1 V0 1 . 3 9 No . 8 D OI 1 0 . 3 9 6 9 / j . i s s n . 1 0 0 13 8 8 1 . 2 0 1 1 . 0 8 . 0 2 7 气门电镦热锻成型机器人系统 P c与 P L C串行通信的实现 陈生翰 ,李伟光 华 南理 工大学机械与汽车工程学院,广东广州 5 1 0 6 4 0 摘要 提出一种气门电镦热锻成型机器人系统 P C机与 P L C串行通信的实现方法,即采用定时扫描通讯状态的方式等 待 P L C发送回握信号或数据,基于 V i s u a l C 6 . 0 MS C o mm控件编写了应用程序。实验结果表明该应用程序实现了 P c 与 P L C间的串行通讯 , 且在连续读写 P L C时,应用程序 占用系统 c P U资源少 ,实时性好,提高了发动机气门电镦热锻成 型机器人 系统控 制的可靠性 。 。 关键 词气 门电镦 热锻 ;机器人 ;P L C;定 时扫描 ;串行通讯 中图分类 号 T P 3 1 1 文献标识码 B 文章编 号 1 0 0 1 3 8 8 1 2 0 1 1 80 9 7 3 Re a l i z a t i o n o f Se r i a l Co mmun i c a t i o n be t we e n PC a nd PLC i n t he RO b o t S y s t e m f o r Va l v e El e c t r i c Ups e t t i ng a nd Ho t For g i ng CHEN S h e ng ha n,LI W e i g ua n g S c h o o l o f Me c h a n i c a l a n d A u t o m o t i v e E n g i n e e r i n g , S o u t h C h i n a U n i v e r s i t y o f T e c h n o l o g y , G u a n g z h o u G u a n g d o n g 5 1 0 6 4 0 ,C h i n a Ab s t r a c t A me t h o d o f r e a l i z i n g s e r i al c o mmu n i c a t i o n b e t w e e n P C a n d P L C i n t h e r o b o t s y s t e m f o r v a l v e e l e c t ri c u p s e t t i n g a n d h o t f o r g i n g wa s p r e s e n t e d b y a d o p t i n g t h e w a y t h a t P C s c a n n e d c o mmu n i c a t i o n s t a t u s p e ri o d i c a l l y t o wa i t f o r P L C t o s e n d b a c k h a n d s h a k i n g s i g n a l o r d a t a .T h e a p p l i c a t i o n p r o g r a m wa s c o mp i l e d b a s e d o n Vi s u a l C 6 . 0 MS C o mm.T h e e x p e r i me n t a l r e s u l t s h o w s t h a t t h e a p p l i c a t i o n p r o gra m n o t o n l y r e a l i z e s t h e s e r i M c o mmu n i c a t i o n b e twe e n P C an d P L C,b u t a l s o u s e s a l i t t l e r e s o u r c e o f C PU a n d h a s a g o o d r e a l t i me p e rf o r ma n c e wh e n r e a d i n g o r w r i t i n g P L C c o n t i n u o u s l y .T h e r e l i a b i l i t y o f t h e r o b o t s y s t e m for v a l v e e l e c t ri c u p s e t t i n g a n d h o t f o r g i ng i s i mp r o v e d. Ke y wo r d s Va l v e e l e c t ri c u p s e t t i n g a n d h o t f o r g i n g;Ro b o t ;P L C;P e rio d i c al s c a n n i n g ;S e ri a l c o mmu n i c a t i o n 可编程控制器 P L C 是集计算 机技术 、 自动控 制技术 、通信技术 于一体 的新 型 自动控制装置 。由于 体积小、可靠性高以及组态灵活等优点 ,P L C在工业 控制领域得到 了广泛 的应用 ⋯。研 发的发动机气 门电 镦成 型机器人系统 中,发动机气 门电镦成 型机器人控 制系统采用 “ 上位机 P C运动控制卡 P L C”开放 式结构 。P C机 向 P L C发 控 制 信 号 指 令 ,实 时采 集 P L C的数据信号并进行数据处理 ,且显示在用户界面 上 ,实现实时监控 。因此 ,P C机 与 P L C的通讯 要求 较高 的实 时性 。 P c机与 P L C串行通信过程中,P C向 P L C发送 握手信号或控制信号后要等待 P L C发送 回握信号或 数 据 ,常见的做法是 用 S l e e p等 函数 延时 等待 。对 于 只读写 P L C一 次 ,对程 序 的执 行 影 响不 大 。若 连 续 多次读写 P L C ,则因连续使用 S l e e p延时等待而消耗 太多 C P U资源,应用程序出现 “ 死机”现象,影响 机器人系统控制的可靠性。为解决这一问题 ,作者基 于 V C 6 . 0提供 的 M S C o m m控 件 ,提 出另一 种 P c 与 P L C通信的查询方式的实现方法。 1 发动机气 门电镦热锻成型 系统组成和工作原理 从 图 1 可 以看 出 ,系统 主要 由机 器人 1 ,机 械手 3 ,电镦机 5 、6 、7 ,压 力机 4 ,电控 柜 2等 组 成 。3 台电镦机按 照一定时序进行 电镦 ,机 器人 1分别将 3 台电镦机 电镦完成 的气 门毛坯移 送到 机械手 3 ,由 2 图 1 发动机气 门电镦 热锻成型 系统 组成示意图 收稿 日期 2 0 1 0 0 3 2 3 作者简 介陈 生 翰 1 9 8 5 一 ,男 ,硕 士 研 究 生 ,研 究 方 向 为 机 械 制 造 及 其 自动 化 、数 控 技 术 。电 话 1 3 6 3 1 3 8 5 0 6 4 , E ma i l e hs 8 56 a be 1 2 6.c o rn 。 9 8 机床与液压 第 3 9卷 自由度的机械手 3完成将气 门毛坯放入摩 擦压力 机 4 成型模 腔 内并 向模腔 内喷润 滑剂 、取 出摩擦 压力 机 4 成型后的气 门并放入下料筐等工作 。这种应用于多 台 电镦机与一 台压力 机 之 间 的电镦 成 型工 序机 器人 系 统,降低了工人劳动强度,提高了气门产品质量的稳 定性和生产效率。 发动 机气 门电镦 热锻 成 型机 器人 控 制 系统 采 用 “ 上位机 P C运 动控 制卡 P L C ”开 放式 数控 结 构 。 其 中 P L C控制模块如 图 2所 示 。P C机 向 P L C发送 控 制指令 ,同时实时采集 P L C的数据信号并进行数据 处理 ,将结果显示在用户界面上,实现对电镦机、机 械手 、压力机等设备 的实 时监控 。P C与 P L C的通讯 方式一般采 用为 三菱 P L C配 备 的专 用通 讯模 块 ,如 F X 2 N - 2 3 2 一 B D、F X - 2 3 2 A D P等。较新 式的 P L C上都 配 备一个编程 口,在上传和下载完 P L C程序后就处 于 闲置状态 。所 以利用编程 口来实现 P L C和 P C间的通 讯 ,其 中 F X 2 N系列 P L C编程 口与 P C采用 R S - 2 3 2 一 C 标 准的异 步串行 通讯。 皇 塑壑塑 塞壁焦里 面 两 压力 机锻 压 完成 信 号 PC H皇 塑 垫 璧 王 二 鲎 塑 全 眦卜 } . { 塑 至 皇 望 塑 全 一 . { 丽 一 图2 发动机气门电镦成型系统 P L C控制模块 2 上位机 P C与 P L C通讯传输过程 P C机 与 P L C串行 通信采 用 应答 方 式, 其通讯传输过程如 图 3所示 。 可以看 出 ,P C与 P L C通信 由上位 机触 发开始 ,首先 P c机发 图 3 P C与 P L C间的应答 方 式通信传输过程 送握手信号 E N Q并等待,P L C接收到握手信号后 , 发送回握信号。若 P C机收到回握信号为N A K时,握 手失败 ,可再次进行握手 ;若 P c机收到回握信号为 A C K,握手成 功 ,则 P C可 开始 发 送读 写 命令 报 文 。 P L C接收到命令报文若和校验正确则发送应答报文给 P C机 ,P C机收到 应答 报文进行 和校验 ,和校验 不正 确则要求 P L C重发 ,正确则进行数据处理 。 P c向 P L C发送握手信号或控制命令时,P c要等 待 P L C发送回握信号或数据。等待 的常见的做法是 用 S l e e p等函数延时。对于只读写 P L C一次,对程序 的执行影响不大。若连续多次读写 P L C,则因连续使 用 S l e e p延时等待而消耗太 多 C P U资源 ,应用程序 出 现 “ 死机”现象,影响机器人系统控制的可靠性。 3用 V C 6 .0编 写上 位 机通讯 程序 MS C o m m控件提供了两种处理通讯的方式事件 驱动方式和查询方式。事件驱动方式是在 MS C o m m 控件 的 O n C o m m事件处理 函数 中加入 自己的处理代码 用以捕获并处理通信事件和错误 。这种方法 的优点是 程序响应及时,可靠性高。查询方式是在程序的每个 关键功能 之后 ,通过 检 查 C o m m E v e n t 属 性 的值 来 查 询事件或错 误 。其实质还是事件驱动 ,但在有些情况 下,这种方式更为便捷。如应用程序较小,并且是 自 保持 的 ,这种方 法可能更 可取 。按 照 图 3的 P C与 P L C通讯传输过程 ,作者用 V C 6 . 0 提供 的 M S C o m m 控件讨论 两种 P C机和 F X 2 N系列 P L C的串行通讯查询 方式的实现方法 ,并编写串行通讯应用程序 。 3 . 1 用 S l e e p函数延时方式等待 P L C发送 回握信 号或数 据 常 见 采 用 S l e e p 函数 延 时 方 式 ,在 P C等 待 P L C发 送 回 握信号或数据时进行 延时 。延时 时 间必 须 大于 P L C处 理器数 据 处理时 间。按这种 方 式进 行 P C与 P L C通 讯 ,结 合图 3可得 其 流程 如图 4所示 。 S l e e p 函 数 在 延 时期 间不能处 理其 他 的消息 ,如果 延时 时 间太 长 或 经 常 使用 S l e e p函数延时 ,C P U 占用率高,程序就好 象 “ 死机 ”一样 。若 单次读 写 P L C,则延 时时 间较短 ,对 程序 的执行影 响 不大 。但 若 按 图 4流程连续 读 写 P L C,则会 占用太 多 的 C P U 资 源 ,程 序 出现“ 死 机 ” 。 因 此提出另一 种实 现查 询的有效方法 。 开始 二] 串 口初 始 化 发送握手信号 N 时 延时时间到≥ 、、 , / . . 1 接收数据 I 雨 和 校 验 正 确 \ / 数据处理 l 二] 结束 I 图 4 用 S l e e p函数延时方式 P C与 P L C通讯 流程 图 3 . 2 用定时扫描通讯状态方式等待 P L C发送 回握 信 号或数 据 定时扫描通讯状态方式就是在 P C与 P L C通讯 时 ,用一成 员变量记录 当前通讯 的状态 。当通讯状态 不变 时 ,下一次定 时扫描执行 同一通讯状态 ,当通讯 状态 改变 时则执 行 改变 后 的状 态 。声 明 一成 员变 量 m S t a t e 来记录当前通讯状态 ,同时声明下列各种通讯 状态 ,m S t a t e的初始状态为 I D L E 。程序如下 enUI l l { I D L E, / / P C与 P L C无通讯或通讯完 第 8期 陈生翰 等气门电镦热锻成型机器人系统 P c与 P L C串行通信的实现 9 9 成 为方便说 明 ,只讨 论 读 P L C软 元件 。在编程时 , S T A R T ,/ /P C与 P L C开始通讯 用 B O O L C P C 2 P L C D l g R e a d P L C c o n s t C s t r i n g&s t r A d E N Q, / /P C与 P L C握 手 d r ,i n t p P l c S t a t e 函数来实现 P c读取 P L C软元件值 。 E N Q WA I T , / /P C等待 P L C发送 回握信号 返 回值 表 示 读 P L C操作 是 否完 成 ,T R U E表 示 无 读 DAT A S E N D, / /P C向 P L C发 送读指令 P L C操作或读 P L C完成 ,反 之为否。s t r A d d r 为读 P L C READ WA I T / /P C等待 P L C发送数 据 软元件号 字符 串,如” X 0 0 0 ” ;p P l c S t a t e指 向保存读 取 的数据结果。R e a d P L C函数的流程如 图 5 表示 。 开始 人 断mS t a t e 标志 垦 l l 墨 l I E N Q l lE NQ WA I T l I D A T A S E N D l l R E A D WAI T 函数 返 回 TRU E m St a t e 设 为ENQ 来 启动握 手 函数 返 回 FALSE 1 发送 握手信 号 2 mS t a t e 设为 ENQ WAI T 等待 回握 信号 函 数 返 回 FALSE 函数 返 回 FALS E 查 询Co mmEv e n 判 断接 收缓冲 区有 字 符 //\\ 接 收 到的是 字 符|ACK \/ l Y 主 mS t a t e 设 为 DAT A S END 准 备发送 读 写 指令 函数 返回 FALSE 函 数 返 回 TRU E 1 发送 读写 指令 1 mS t a t e 设 为 R EA D W AI T 函数 返 回 F ALS E 函数 返 回 FALSE 读 取缓冲 区 字符 和校 验正确 \/ 1 数 据处 理 2 mS t a t e 设 为I DL E 函数 返 回 TRU E 函数 返 回 TRU E l 壅 l 图 5 R e a d P L C函数 流程 图 R e a d P L C函数功能 可用 s w i t c h选 择语句 实现 。则 在 每次循 环 扫描 时都 要执 行 R e a d P L C函数 ,且 每次 只执行其 中的一个分支 ,当通讯状态 不变时 ,每次循 环扫描至此函数时都执行 同一分支 ,当通讯 状态改变 时执行 改变后的分支 。 为了将 m S t a t e状态 改 变 为 S T A R T来 启 动 P c与 P L C通讯 ,且要 保 证在 某次 读取 P L C完成 后才 能 进 行下 一 个 读 取 操 作 ,所 以还 要 一 个 管 理 函 数 v o i d C P C 2 P L C D R e a d P l c Mg e v o i d 函数 来 启 动 和管 理 P C与 P L C通 讯。其 中,mR e a d P L C C n t s 为 成 员 变 量,初始化为 0 ,用来读 P L C次数。每个分支通过 m S t a t e 值判断 某 次读 P L C是 否 正在 进 行 ;若 某 次 读 P L C未完成,下一个扫描周期去执行相同的分支,直 到某次读 P L C完成 后 才能 进入 另一 分 支进 行下 一 次 读 P L C 。R e a d P l c M g e函数 的流程 图如图 6 所 示 。 通 过 R e a d P l c Mg e函 数 就 可 以 方 便 地 增 加 读 取 P L C的 次数 。此 时可 以将 R e a d P l c M g e函数 放 在 O n . T i m e r 函数里进行循环 扫描读 取 P L C 。同时在 O n T i m e r 里也可 以将结果 P l c R e s u h显示在用户界 面上 。 图6 R e a d P l c M g e 函数的流程图 下转第 1 1 7页 有/ 区 / 黜 \ 询 断 符 \ 香 判 N 1 第 8期 梁胜龙 等轮毂槽对称度的投影法测量和数据处理 1 l 7 厂 ~ a p -- a Q , P ㈤ O 0 - 8 m m 或 f 1 n 一 。 口 6 2 轮毂槽对称度误差的测量方法 该测量方法采用的测量仪器是投影仪或万能工具 显 微镜 。将工件置于仪器工作 台上 ,将键槽侧 面调整 到与仪器坐标轴平行 ,进行压线 、读数 ;再测 量键槽 另一侧 面 ,进行 读数 ,然后计算 出键槽对称 中心线的 数值 截 面,安装 仪器接 触测量 杆 即灵 敏 杠杆 ,移 动工作 台 ,将测 量杆大致移动到孔壁直径位置 ,锁紧 仪器横 向移动手 轮 ,纵 向移动测量杆 ,使测头 与孔壁 左右壁接触并读数 ,计算 出孔心坐标 圆 心,则 键槽截 面对称 中心到 圆心 的垂直距 离 a 截 面一 圆 心 。 将零件反转 1 8 0 。 ,同上测量 出另一截 面的 a 值 。 则工件对称度误差计算 如下。 当 a a 时,键槽偏 离工件轴线状况如 图 1所 示 ,此时误差为 2 a h √截一D h f i 截 当 a和 a . 符 号相 反时 ,键 槽 偏离工 件 轴线 状 况 如 图 3所示 ,此时误差 为 /I a a l l 当 a和 a , 符 号相 同且 a ≠a 。 时 ,键 槽偏 离 工件 轴线状况如 图 6所示 假设 a ≥a . ,此时误差为 ,一 ,一 J PD h J Q D h f 1 一 。 一 n 。 或f 1 。 一 。 。 由于仪器 调焦过程受 到景深 的影响 ,为了使测 量更加准确 ,根据键 槽宽 度 可 设 计 如 图 8的定 位 块 ,定 位块伸 出部分 采用 棱形 ,棱 边利于调校 和压 线 。在测量 时定 位块需 面 Q和面 P两次安装 。 3测量 实例 图 8 键槽测量定位块 一 轮 毂 槽 工 件 孔 径 为 D 3 4 m m,槽 深 h为 1 0 m m,槽宽为 7 . 6 m m,按 上述 方 法 测 量 工 件 ,得 出 口 0 . 0 1 3 m m,a l 0 . 0 0 4 1T i m a和 a 1 符 号相 同 , 说明键槽偏离工件轴线状况 如图 6 ,则 0 . 0 0 5 9 mm D -4 - h 3 4 l 0 ‘ , 卜 。 一 。 Q 1 一 0 . 0 1 3 0 . 0 0 4 _ 0 0 5 9 0 . 0 1 3 rn m 4结束语 该测量方法 与常采用的定位块及模拟 芯轴的平板 测量相 比有 以下 特 点 测 量迅 速 方 便 ,数 据 处 理 简 单,测量效率高,精度高 ,对测量仪器也无特殊要 求 ,不需要专用的测量检具和平台,缩短了生产准备 周期 ,是一种轮毂槽对称度测量 的好方法 。 参考文献 【 1 】周湛学, 赵小明, 雒运强. 图解机械零件精度测量及实例 [ M] . 北京 化学工业出版社 , 2 0 0 9 . 【 2 】李小亭 , 王树彩. 长度计量[ M] . 北京 中国计量出版社 , 20 02. 【 3 】范真 , 刘桂玲. 轮毂槽对称度误差 的测量与正确评定 [ J ] . 计量技术 , 2 0 0 2 2 1 51 7 . 【 4 】张同虎. 一种新的孔键槽对称度测量方法[ J ] . 拖拉机, 1 9 8 9 1 5 1 5 3 . 【 5 】斐德琦, 赵向阳, 谭智健. 轴类零件中键槽对称度检测方 法与误差的分析[ J ] . 现代车用动力, 2 0 0 7 4 4 9 5 1 . 【 6 】陈志刚, 葛动元. 轴类零件形位误差测量的数据处理 [ J ] . 机械工程师, 2 0 0 5 3 9 0 9 1 . 上接 第 9 9页 4结论 用 S l e e p函数延时方式等待 P L C发送回握信号或 数据 的方法编写连续多次读 P L C操作的应用程序 , 结 果表明 应用程序能够 实现 P C与 P L C通讯 ,但在 应用程序中不能处理其他任务,出现 “ 死机”现象。 用定时扫描通讯状态方式等待 P L C发送 回握信号或 数据 的方 法编写程序 ,结果表 明 应用 程序不仅能够 实现 P C与 P L C通讯 ,还可进 行其他 操作 ,应用程 序 占用较少 系统 C P U资 源 ,实时 性好 ,从 而提 高发 动 机气 门电镦热锻 成型机器人系统控制 的可靠性 。 参考文献 【 1 】周万里 , 曾文火. V C环境下三菱 P L C与微机的串行通 信[ J ] . 计算机与信息技术 , 2 0 0 5 8 5 8 6 0 . 【 2 】张崇智. P c与三菱 F X 2 N型 P L C串口通信的实现[ J ] . 机 床电器 , 2 0 0 5 , 3 2 3 3 7 4 0 . 【 3 】庄尚志, 郑建彬. 基于多线程技术实现 P L C与 P c的串 行通信[ J ] . 武汉理工大学学报 信息与管理工程版 , 2 0 0 8 , 3 0 6 8 7 78 8 0 . 【 4 】 刘杰 , 阳林, 陈超丽. 三菱 F X 2 N系列 P L C与 P c通讯的 简易实现[ J ] . 制造业 自动化, 2 0 0 6 , 2 8 1 6 56 7 .
展开阅读全文