著录项信息
专利名称 | 工业机器人离线编程系统 |
申请号 | CN200710043744.1 | 申请日期 | 2007-07-12 |
法律状态 | 权利终止 | 申报国家 | 中国 |
公开/公告日 | 2007-12-26 | 公开/公告号 | CN101092031 |
优先权 | 暂无 | 优先权号 | 暂无 |
主分类号 | B25J9/16 | IPC分类号 | B25J9/16;B25J13/00查看分类表>
|
申请人 | 上海交通大学 | 申请人地址 | 上海市闵行区东川路8***
变更
专利地址、主体等相关变化,请及时变更,防止失效 |
权利人 | 上海交通大学 | 当前权利人 | 上海交通大学 |
发明人 | 栾楠 |
代理机构 | 上海交达专利事务所 | 代理人 | 王锡麟;王桂忠 |
摘要
一种机器人技术领域的工业机器人离线编程系统,包括:文本编辑与代码转换模块、图形化校验模块、通信与远程控制模块,所述文本编辑和代码转换模块实现由G代码数控程序到MOTOMAN机器人用的INFORMII代码工作程序的转换,生成完整的MOTOMAN机器人工作文件,实现机器人离线编程作业;所述图形化校验模块针对文本编辑和代码转换模块所生成的机器人工作文件,以三维图形方式实现其运动轨迹的仿真和校验;所述通信和远程控制模块将代码编辑与转换模块和图形化校验模块处理后的文件与MOTOMAN机器人进行通信,实现工作程序的上传下载以及远程控制操作。本发明具有精确和快速、功能简洁、成本低廉的特点,容易为用户接受。
1.一种工业机器人离线编程系统,其特征在于,包括:文本编辑与代码转 换模块、图形化校验模块、通信与远程控制模块,其中:
所述文本编辑和代码转换模块,实现由G代码数控程序到莫托曼机器人专用 的INFORMII代码工作程序的转换,通过语法分析对G代码程序进行编译,生成 包含有运动控制信息的中间数据,再依照INFORMII编程语言的语法要求,将中 间数据翻译为莫托曼机器人工作程序即INFORMII语言的控制命令和位形数据, 同时根据参数设定情况补充莫托曼机器人工作程序中的信息,生成完整的莫托曼 机器人工作文件,实现莫托曼机器人离线编程作业;
所述图形化校验模块,针对文本编辑和代码转换模块所生成的莫托曼机器人 工作文件,以三维图形方式实现其运动轨迹的仿真和校验,通过语法分析对使用 INFORMII编写的莫托曼机器人工作程序进行编译,生成中间数据,依据中间数 据以三维动画形式展示莫托曼机器人工作过程,由编程者判断程序中的运动错误 以及其工艺的合理性;
所述通信和远程控制模块,实现与莫托曼机器人远程通信和远程控制,通过 对莫托曼机器人通信协议的分析,将文本编辑和代码转换模块和图形化校验模块 处理后的文件与莫托曼机器人进行通信,实现工作程序的上传下载以及远程控制 操作。
2.根据权利要求1所述的工业机器人离线编程系统,其特征是:所述文本 编辑与代码转换模块由一个G代码编辑子模块、一个INFORMII代码编辑子模块、 第一代码转换子模块、第二代码转换子模块和一个参数输入界面构成,其中G 代码编辑子模块和INFORMII代码编辑子模块用于分别打开和编辑G代码文档和 INFORMII代码文档,第一代码转换子模块接受来自G代码编辑子模块的信息, 对G代码编辑子模块中打开的当前文档进行编译,生成中间数据,用户由参数输 入界面手工输入G代码文件中所没有包含的信息,第二代码转换子模块接受来自 第一代码转换子模块的中间数据,对其进行反编译,同时增加用户通过参数输入 界面输入的信息,生成INFORMII代码文档,并送往INFORMII代码编辑子模块中 进行显示和手工编辑。
3.根据权利要求2所述的工业机器人离线编程系统,其特征是:所述的第 二代码转换子模块在莫托曼机器人工作程序即INFORMII代码文档的数据量大于 莫托曼机器人控制器的限制的情况下,分析来自第一代码转换子模块的中间数 据,找到可停顿的运动指令,在这些停顿点将超大程序分割为若干子程序。
4.根据权利要求1所述的工业机器人离线编程系统,其特征是:所述图形 化校验模块由第三代码转换子模块和一个图形仿真子模块构成,第三代码转换子 模块对文本编辑与代码转换模块所最终生成的INFORMII代码工作文件进行编 译,生成中间数据,该过程是第二代码转换子模块的逆过程,图形仿真子模块根 据第三代码转换子模块输出的中间数据模拟莫托曼机器人运动过程,以三维动画 的形式显示莫托曼机器人末端执行器的运动,用户根据图形仿真过程判断莫托曼 机器人运动的正确性和工艺的合理性。
5.根据权利要求4所述的工业机器人离线编程系统,其特征是:所述图形 仿真子模块具有图形缩放、多视角显示、时间比例因子可调功能,同时图形仿真 子模块对运动超界、速度超限错误提出警告。
6.根据权利要求2所述的工业机器人离线编程系统,其特征是:所述通信 与远程控制模块由一个通信驱动子模块、一组操作界面和一个文件分割子模块构 成,其中通信驱动子模块用于与莫托曼机器人进行远程通信和远程控制,包括 RS232C串行通信和以太网络通信两种驱动方式,能够依照莫托曼机器人的通信 协议与之进行通信应答,用户利用一组操作界面根据莫托曼机器人所具有的远程 控制功能进行远程控制,对于特别复杂的加工轨迹,因数据量过大而被所述第二 代码转换子模块分割为若干子程序,文件分割子模块将这种带有子程序的大文档 按照其子程序分割成一组有序的小文档,并自动添加文件头信息,通信驱动子模 块能自动实现一边运行工作程序,一边进行后台下载,一边删除已执行程序,从 而实现大数据量的工作程序的连续运行。
7.根据权利要求6所述的工业机器人离线编程系统,其特征是:所述一组 操作界面远程控制的内容包括:文件和参数的上传与下载,远程读取莫托曼机器 人各项状态,手动控制莫托曼机器人运动,启动或停止莫托曼机器人工作程序。
技术领域
本发明涉及的是一种机器人技术领域的系统,特别是一种工业机器人离线编 程系统。
背景技术
在工业机器人的使用中,目前一般仍采用示教编程的方法,即手动控制机器 人沿所需轨迹运动,同时记录运动轨迹。示教编程一方面较为繁琐,另一方面往 往还需要先有样品才能示教。而现在随着CAD、CAM技术的发展,机器人工作轨 迹可以从电子图纸中直接获得,效率更高的离线编程模式成为必然。
目前国内应用最多的日本安川公司的MOTOMAN机器人(莫托曼机器人),使 用INFORMII语言(一种专用的机器人动作编程语言)作为编程语言。原理上说, 使用普通的文本编辑器也可以实现离线编程,但是这种方法及其繁琐,既不直观, 又没有相应的校验手段,只有非常熟练的专业技术人员才能使用,且编程效率低 下。同时INFORMII语言专业化程度高,用途不广,掌握这项技能的专业技术人 员极少。易学易用的编程工具是目前市场所急需的。国外生产厂商虽然也开发了 相应的编程软件,但价格昂贵,限制了它的推广使用。
G代码实现工业机器人编程的思想是2003年提出的,在工业数控领域,G代 码的使用非常广泛,各类型数控机床绝大部分均可使用G代码编程,相关专业的 技术人员均能熟练掌握。G代码用于描述设备的运动轨迹简洁明了,非常方便。 更重要的是绝大多数的数控编程系统都支持G代码输出,使用G代码进行工业机 器人编程可以利用各类通用的数控编程系统实现工业机器人自动编程。
经对现有技术的文献检索发现,日本发那科株式会社申请的中国发明专利 (申请号:200510088687.X)提出一种加工程序生成装置,该发明所描述的系统 包括有一种离线编程装置,视觉传感器,以及机器人控制装置,通信线等。其中 的离线编程装置保存并表示用CAD生成的要加工的工件的形状,指定工件形状的 顶点、棱线端点作为示教点,生成加工路径,从而生成加工程序。并通过利用视 觉传感器摄像的实际工件的位置姿势修正加工程序。该方法相当于将示教方法用 图形仿真的方式来实现。结合其上下文,该方法适用于特定的CAD工具和特定的 工业机器人,其编程方式(运动轨迹指定方式)比较简单,且自成体系,通用性 不足,与其他CAD、CAM系统的兼容性还有待改进。
发明内容
本发明的目的在于克服现有技术中之不足,提供一种易学易用、成本较低的 MOTOMAN机器人离线编程系统,使其可达到对MOTOMAN机器人实现离线编程的目 的,并且具有精确和快速、功能简洁、成本低廉的特点,容易为一般用户接受。
本发明是通过以下技术方案实现的,本发明包括:文本编辑与代码转换模块、 图形化校验模块、通信与远程控制模块。其中:
所述文本编辑和代码转换模块,实现由通用的G代码数控程序到MOTOMAN 机器人用的INFORMII代码工作程序的转换,通过语法分析对G代码程序进行编 译,生成包含有运动控制信息的中间数据,再依照INFORMII编程语言的语法要 求,将中间数据翻译为MOTOMAN机器人工作程序(INFORMII语言)的控制命令 和位形数据,同时根据参数设定情况补充MOTOMAN机器人工作程序中的其他信 息,生成完整的MOTOMAN机器人工作文件,实现MOTOMAN机器人离线编程作业;
所述图形化校验模块,针对文本编辑和代码转换模块所生成的MOTOMAN机器 人工作文件,以三维动画形式实现其运动轨迹的仿真和校验,通过语法分析对使 用INFORMII编写的MOTOMAN机器人工作程序进行编译,生成中间数据,依据中 间数据在三维界面上以动画形式展示MOTOMAN机器人工作过程,由编程者判断程 序中的运动错误以及其工艺的合理性等;
所述通信和远程控制模块,实现与MOTOMAN机器人远程通信和远程控制,通 过对MOTOMAN机器人通信协议的分析,将代码编辑与转换模块和图形化校验模块 处理后的文件与MOTOMAN机器人进行通信,实现工作程序的上传下载以及远程控 制操作。
所述文本编辑与代码转换模块,由一个G代码编辑子模块、一个INFORMII 代码编辑子模块、第一代码转换子模块、第二代码转换子模块和一个参数输入界 面构成。其中G代码编辑子模块和INFORMII代码编辑子模块用于分别打开和编 辑G代码文档和INFORMII代码文档。第一代码转换子模块接受来自G代码编辑 子模块的信息,对G代码编辑子模块中打开的当前文档进行编译,生成中间数据。 用户由参数输入界面手工输入G代码文件中所没有包含的信息,如MOTOMAN机器 人坐标系,MOTOMAN机器人使用的工具等等。第二代码转换子模块接受来自第一 代码转换子模块的中间数据,对其进行反编译,同时增加用户通过参数输入界面 输入的信息,生成INFORMII代码文档,并送往INFORMII代码编辑子模块中进行 显示和手工编辑。此外,对于特别复杂的加工轨迹,MOTOMAN机器人工作程序 (INFORMII代码文档)的数据量可能大于MOTOMAN机器人控制器的限制,在这 种情况下第二代码转换子模块可以分析来自第一代码转换子模块的中间数据,找 到可停顿的运动指令,在这些停顿点将超大程序分割为若干子程序。
所述图形化校验模块,由第三代码转换子模块和一个图形仿真子模块构成。 第三代码转换子模块对INFORMII代码编辑子模块中打开的当前文档进行编译 (该文档即前述文本编辑与代码转换模块的最终输出),生成中间数据,该过程 相当于第二代码转换子模块的逆过程。图形仿真子模块根据第三代码转换子模块 输出的中间数据模拟MOTOMAN机器人运动过程,以三维动画的形式显示MOTOMAN 机器人末端执行器的运动。该图形仿真子模块具有图形缩放,多视角显示,时间 比例因子可调等功能。用户主要根据图形仿真过程判断MOTOMAN机器人运动的正 确性和工艺的合理性等,同时图形仿真子模块可以对运动超界、速度超限等明显 错误提出警告。
所述通信与远程控制模块,由一个通信驱动子模块、一组操作界面和一个文 件分割子模块构成。其中通信驱动子模块用于与MOTOMAN机器人进行远程通信和 远程控制,包括RS232C串行通信和以太网络通信两种驱动方式,能够依照 MOTOMAN机器人的通信协议与之进行通信应答。根据MOTOMAN机器人所具有的远 程控制功能,设计了一组操作界面用于远程控制:主要有文件和参数的上传与下 载,远程读取MOTOMAN机器人各项状态,手动控制MOTOMAN机器人运动,启动 MOTOMAN机器人工作程序等。通信与远程控制模块可以作为独立的MOTOMAN机器 人远程控制器使用,集成在本系统中主要是为用户提供方便的操作方式。与标准 的MOTOMAN远程控制功能相比,本通信与远程控制模块还增加了一个特殊的功 能:对于特别复杂的加工轨迹,因数据量过大而被所述第二代码转换子模块分割 为若干子程序,因数据量过大而被分割为若干子程序。文件分割子模块将这种带 有子程序的超大文档按照其子程序分割成一组有序的小文档,并自动添加文件头 信息。通信驱动子模块可以自动实现一边运行工作程序,一边进行后台下载,一 边删除已执行程序,从而实现超大数据量的工作程序的连续无间断运行。
相对于传统的系统,本发明的突出特点是精确和快速。由于可以由设计图纸 (纸质图纸或电子图纸)直接获得有关数据,写入控制程序文件,比示教法手动 操作工业机器人,肉眼目视找准的方式要简便快捷得多,也精确得多。即使只采 用文本编辑方式对简单加工轨迹进行手动编程,也比示教方式编程要快上数倍, 如果结合第三方CAM产品(如CAXA数控加工系统)使用本发明,对复杂轨迹进 行编程,原来数天才能完成的工作只需数分钟即可完成。另一个重要的优点是编 程是离线进行的,不需占用工业机器人设备即可编程和初步调试,而设备停产编 程调试通常意味着巨大的经济损失,反之则带来巨大效益。相对于其他工业机器 人离线编程系统,本发明的突出特点是简单易用,成本低廉。由于巧妙地利用被 广泛使用的G代码作为工作语言,使得一般数控技术人员都能立即掌握其使用方 法,而且由于可以结合第三方CAM产品使用,本发明不再包含这些功能,使得本 发明功能简洁,成本低廉,容易为一般用户接受。
附图说明
图1为本发明系统的结构框图。
具体实施方式
下面结合附图对本发明的实施例作详细说明:本实施例在以本发明技术方案 为前提下进行实施,给出了详细的实施方式和具体的操作过程,但本发明的保护 范围不限于下述的实施例。
如图1所示,本实施例所涉及的部件包括MOTOMAN机器人(图上未画出)及 其控制器,本发明离线编程系统,通信电缆等。
本实施例中离线编程系统包括三个主要的功能模块:代码编辑与转换模块, 图形化校验模块,通信与远程控制模块。其中代码编辑与转换模块实现MOTOMAN 机器人工作文件生成的功能,图形化校验模块则对所生成的工作文件进行仿真和 校验,通信与远程控制模块用于文件的上传下载以及远程启动等操作,三个模块 实现了完整的MOTOMAN机器人编程作业。
所述包含文本编辑和代码转换模块,可以实现由通用的G代码数控程序到 MOTOMAN机器人用的INFORMII代码工作程序的转换。通过语法分析对G代码程 序进行编译,生成包含有运动控制信息的中间数据,再依照INFORMII编程语言 的语法要求,将中间数据翻译为MOTOMAN机器人工作程序(INFORMII语言)的 控制命令和位形数据,同时根据参数设定情况补充MOTOMAN机器人工作程序中的 其他信息,生成完整的MOTOMAN机器人工作文件,实现MOTOMAN机器人离线编程 作业。
所述图形化校验模块,针对文本编辑和代码转换模块所生成的MOTOMAN机器 人工作文件,可以以三维动画形式实现其运动轨迹的仿真和校验。通过语法分析 对使用INFORMII编写的MOTOMAN机器人工作程序进行编译,生成中间数据;依 据中间数据在三维界面上以动画形式展示MOTOMAN机器人工作过程,由编程者判 断程序中的运动错误以及其工艺的合理性等。
所述通信和远程控制模块,实现与MOTOMAN机器人远程通信和远程控制,通 过对MOTOMAN机器人通信协议的分析,代码编辑与转换模块和图形化校验模块处 理后的文件与MOTOMAN机器人进行通信,实现工作程序的上传下载以及远程控制 操作。在MOTOMAN机器人本体控制器本身存储空间不足的情况下,可以通过后台 动态下载的方式提供超大型工作程序的运行。
所述文本编辑与代码转换模块由一个G代码编辑子模块、一个INFORMII代 码编辑子模块、第一代码转换子模块、第二代码转换子模块和一个参数输入界面 构成,其中G代码编辑子模块和INFORMII代码编辑子模块用于分别打开和编辑 G代码文档和INFORMII代码文档,第一代码转换子模块接受来自G代码编辑子 模块的信息,对G代码编辑子模块中打开的当前文档进行编译,生成中间数据, 用户由参数输入界面手工输入G代码文件中所没有包含的信息,第二代码转换子 模块接受来自第一代码转换子模块的中间数据,对其进行反编译,同时增加用户 通过参数输入界面输入的信息,生成INFORMII代码文档,并送往INFORMII代码 编辑子模块中进行显示和手工编辑。
所述的第二代码转换子模块在MOTOMAN机器人工作程序即INFORMII代码文 档的数据量大于MOTOMAN机器人控制器的限制的情况下,分析来自第一代码转换 子模块的中间数据,找到可停顿的运动指令,在这些停顿点将超大程序分割为若 干子程序。
所述图形化校验模块由第三代码转换子模块和一个图形仿真子模块构成,第 三代码转换子模块对文本编辑与代码转换模块所最终生成的INFORMII代码工作 文件进行编译,生成中间数据,该过程是第二代码转换子模块的逆过程,图形仿 真子模块根据第三代码转换子模块输出的中间数据模拟MOTOMAN机器人运动过 程,以三维动画的形式显示MOTOMAN机器人末端执行器的运动,用户根据图形仿 真过程判断MOTOMAN机器人运动的正确性和工艺的合理性。
所述通信与远程控制模块由一个通信驱动子模块、一组操作界面和一个文件 分割子模块构成,其中通信驱动子模块用于与MOTOMAN机器人进行远程通信和远 程控制,包括RS232C串行通信和以太网络通信两种驱动方式,能够依照MOTOMAN 机器人的通信协议与之进行通信应答,用户利用一组操作界面根据MOTOMAN机器 人所具有的远程控制功能进行远程控制,对于特别复杂的加工轨迹,因数据量过 大而被所述第二代码转换子模块分割为若干子程序,文件分割子模块将这种带有 子程序的大文档按照其子程序分割成一组有序的小文档,并自动添加文件头信 息,通信驱动子模块能自动实现一边运行工作程序,一边进行后台下载,一边删 除已执行程序,从而实现大数据量的工作程序的连续运行。
上述结构的本发明实施例使用时,按照以下的步骤进行:
首先需要对MOTOMAN机器人坐标原点等进行校准,由于使用G代码编程所用 的坐标与MOTOMAN机器人坐标不一致,MOTOMAN机器人必须工作在用户坐标下, 要对用户坐标原点进行校准,该工作对特定的工装夹具只需进行一次。
接下来的步骤可以使用第三方CAM产品(如CAXA数控软件)生成数控加工 代码文件(G代码文件),然后使用代码编辑与转换模块提供的G代码编辑子模 块打开。对于较为简单的情况,可以直接利用G代码编辑子模块手工建立G代码 文件并编辑修改。
第三步是启动代码转换,这是本发明的主要创新之处,核心在于实现G代码 程序到INFORMII代码程序的转换。具体实现过程为:调用第一代码转换子模块 对G代码文件进行编译,根据其命令字和位形数据生成包含有运动控制信息的中 间数据,按加工运动次序以链表的形式存在存储器中,完成第1次转换。同时代 码编辑与转换模块中的参数输入界面可以让用户设置那些没有包含在G代码程 序中的其他信息,例如坐标类型,坐标号,工具号等。第二代码转换子模块依照 INFORMII编程语言的语法要求,将中间数据翻译为MOTOMAN机器人工作程序 (INFORMII语言)的控制字和位形数据。利用控制字、位形数据和其他参数等 信息进行反编译,按照INFORMII的语法格式生成完整的MOTOMAN机器人工作程 序文本,完成第2次转换,并在INFORMII代码编辑子模块中打开该文本。用户 可以直接利用INFORMII代码编辑子模块对文本进行手工修改。
第四步是对生成代码进行校验:图形化校验模块中的第三代码转换子模块通 过语法分析对INFORMII代码编辑器中的文档进行编译,生成中间数据,以链表 方式保存于存储器中,该过程为上述第三步中第2次转换的逆过程。依据这些中 间数据,图形仿真子模块以三维动画形式展示MOTOMAN机器人末端执行器的运动 过程,该图形仿真子模块可以由用户设置动画的尺寸缩放,选择视角,调整时间 比例因子(即快进和慢放)等。该图形仿真子模块还会对对超出工作空间、超出 最大速度等明显错误进行提示,但是由于工艺的复杂和多样性的原因,用户应该 判断程序中的运动错误以及其工艺的合理性等。对于不合理之处,用户可以直接 调整MOTOMAN机器人工作程序(INFORMII代码文件)中的数据和命令字,再次 仿真校验;也可以利用G代码编辑子模块修改G代码文件,重复第三步的代码转 换,再进行仿真,直至满意为止。
第五步启动远程通信与控制模块的操作界面,选择正确的通信方式和参数, 将上述MOTOMAN机器人工作程序下载到MOTOMAN机器人控制器即完成了离线编程 任务。接下来可以直接用MOTOMAN机器人控制器操作MOTOMAN机器人执行工作, 也可以用远程通信与控制模块启动MOTOMAN机器人工作。工作中也可以根据实际 情况再对工作程序进行修改(回到第二步或者第三步,手工修改G代码或者 INFORMII代码文件)。
因为CAM产品生成的加工代码数据量较大,尤其是复杂的曲线曲面加工时, 数据点数量可能大于MOTOMAN机器人控制器存储能力,此时本发明系统的文本编 辑与代码转换模块中的第二代码转换子模块(即第三步的第2次转换过程)可以 根据运动指令的类型,智能地在可停顿点处将超大程序分割为若干子程序。而本 系统提供的远程通信与控制模块可以自动实现文件分割,一边运行工作程序,一 边进行后台下载,一边删除已执行程序的功能,从而实现超大数据量的工作程序 的光滑无间断运行。以MOTOMAN机器人XRC控制器为例,该控制器要求单个工作 文件中的运动步数不能超过1000步,全部存储空间所能存放的数据也只有40000 步,而在复杂曲面加工中,即使中等精度也往往需要数千乃至数万步,则MOTOMAN 机器人不能连续实现这种加工作业,中途必须停顿,人工处理数据更新问题;而 使用本系统可以自动实现这种复杂的过程。
法律信息
- 2012-09-05
未缴年费专利权终止
IPC(主分类): B25J 9/16
专利号: ZL 200710043744.1
申请日: 2007.07.12
授权公告日: 2009.02.11
- 2009-02-11
- 2008-02-20
- 2007-12-26
引用专利(该专利引用了哪些专利)
序号 | 公开(公告)号 | 公开(公告)日 | 申请日 | 专利名称 | 申请人 |
1
| | 暂无 |
1991-07-12
| | |
2
| |
2005-10-12
|
2005-04-06
| | |
3
| |
2006-07-12
|
2004-06-01
| | |
被引用专利(该专利被哪些专利引用)
序号 | 公开(公告)号 | 公开(公告)日 | 申请日 | 专利名称 | 申请人 | 该专利没有被任何外部专利所引用! |