关键词:冰壶机器人;Sysmac;运动控制;3D仿真
引言
冰壶运动起源于苏格兰,是一项技巧、智慧、个人和团体相结合、策略性较强的运动,距今已有500多年的历史。我国开展这项活动的时间不长,但是近二十年时间取得了不少优异的成绩,2022年北京冬奥会为这项运动的进一步发展提供了良好的契机[1]。但是,还存在群众认知度低、后备人才短缺、基础建设落后等问题,人才的短缺是最紧迫的问题。为了一定程度上解决人才缺乏、社会认知度低、科学研究缺乏等问题,设计了一种基于Sysmac控制平台的冰壶机器人,首先对冰壶机器人进行了动力学分析,初步研究了冰壶机器人控制程序及算法策略,最后进行了算法仿真调试,为进一步实现人机对战、机机对战做好前期工作。
1冰壶机器人运动学分析
1.1位置的正、反解
冰壶又称为冰球,以最终场上冰球与圆心的距离远近来计算分数高低,十分讲究策略和智慧。本冰壶机器人平台为了方便研究算法设计了一个如图1的简化的平台,冰壶用模拟的圆柱体小球替代,对弈双方可以是人-机,或者机-机,双方根据视觉传感器返回的小球的位置采用不同的策略进行对战。如果要控制机械手运动,需要分析其运动学正解、反解。
1.2冰壶碰撞分析
冰壶击打时两球之间、球与球场之间会存在碰撞、反弹等物理运动,需要进一步分析。其中碰撞有完全弹性碰撞、完全非弹性碰撞和弹性碰撞三种,这里将模型简化,默认冰壶之间的碰撞遵守动量守恒定律,则只存在完全弹性碰撞。如图3所示,球111O(x%2Cy)速度为V,质量为m1,球222O(x%2Cy)速度为U,质量为m2,半径均为r。在t时刻两球碰撞,设两球球心连线O1O2为tx轴,过两球切点且垂直于tx轴的为ty轴,碰撞后球O1速度为V%27,球O2速度为%27U。
2Sysmac控制平台设计%0D%0A%0D%0A2.1Sysmac控制平台简介
Sysmac控制平台是欧姆龙公司新一代集运动控制、逻辑编译、视觉分析为一体的自动化设计平台,具有高速度、高精度和高可靠性等特点[4]。该平台关注于自动化设备的一体化连接性能,由四部分组成,分别是集成顺序逻辑、运动控制和网络通信功能的机械自动化控制器NJ,整合运动、序列、驱动和视觉传感、编程和仿真的Sysmac+studio软件,实现运动、视觉等信号高速传输的网络控制器EtherCAT,和可对整条生产线或者智能工厂实现控制协议的工业开放式网络EtherNet%2FIP。
2.2运动轴组的建立
冰壶机器人通过左右两个伺服电机来控制前端的平动盘沿着X-Y平面运动,这里采用Sysmac+studio软件来实现伺服轴的配置。首先在运动控制设置里添加两根并联的伺服运动轴MC_Axis000和MC_Axis001,分别为机器人的左右电机,然后如图5所示,分别进行基本参数设置、单位换算设置、轴操作设置等,最后将它们配置成的一个轴组MC_Group000。
2.3FB??樯杓?br />
Sysmac平台使用一个Sysmac+studio软件即可对整个机械系统进行一体化编程,该软件基于国际IEC61131-3标准,提供了包含程序、功能和功能块的POU编程环境。不同于以往的梯形图编程环境,这种丰富的编程方式可以使程序更加条理化、易读易维护化,由于冰壶机器人需要输入的参数比较多,设计了如图6所示的FB功能块,通过集成化的功能块实现多数据输入、多数据输出,仅需一个软元件即可启动程序。通过该FB可对冰壶机器人控制系统的球的参数、球的位置、场地环境等进行设置,同时输出目标位置和初速度等关键信息。
2.4仿真环境搭建
Sysmac+studio提供了完善的程序调试和仿真功能,支持运动模拟仿真,可以以2D或3D形式显示跟踪的数据和设备运动的轨迹。如图7在“数据跟踪设置--右键添加--单击数据跟踪”即可添加一个数据项目。如图8所示即可进行跟踪类型、采样间隔、后触发速度比率、触发条件等设置,点击加载3D模型可以加载冰壶机器人3D模型,而冰壶机器人可以简化为一个正交机械手,之后进行运动仿真可以观察各轴运动数据和仿真图像。
3冰壶机器人程序设计及调试
3.1运动控制程序设计
冰壶机器人的控制程序主要是对Sysmac+stduio中配置的两个轴进行运动控制,利用内置的运动控制??镸C(Motion+Control+Function+Module)以及梯形图与ST语言相结合的方式实现[5]。首先使用MC_Power指令对各轴进行伺服锁定,接着使用MC_Home指令将各轴回原点,最后启用轴组指令MC_GroupEnable将MC_Group000设置为有效。
冰壶机器人两轴组成的轴组可以调用内置的直线插补指令MC_MoveLinear来实现平面坐标的位移,只需要输入轴组、位置、速度、加速度等变量,其中位置、速度加速度参数可以由自编的ST算法语言计算得出。
3.2球场局势检测
冰壶机器人需要对场上敌我双方球的数量和位置实时检测,通常的做法是采用视觉传感器捕捉场内小球的球心坐标,本系统由于先期采用模拟仿真的方式开发,故而场上的球均用系统内部的虚拟运动轴组来替代,通过输入相关坐标信息来仿真实际环境,验证击球算法。这里假设本方球最多有四个,对方最多也是四个,通过检测球的X,Y坐标值是否在球场内可以判断场上是否有球,再统计场上本方和对方球的数量和位置可以进行球场局势的判断,为下一步击打策略的实施做好数据统计。
3.3击打策略的分析
经过场上局势检测,获得本方和对方球数量及位置分布数据,冰壶机器人需要采取不同的策略进行击打。如图9所示,场上如果是有无球状态,机器人可以直接击打至靶心占据分数最高位置,取得先发优势。如果场上只有一个对方球,可以直接将对方球击打远离靶心,本方球取代其位置,亦可取得领先。如果场上存在本方球和对方球各一个,若发球到靶心间无遮挡,则可以直接击打至靶心,否则判断本方球是否离靶心更近,若本方球近则只需击打一个半径大小的力即可,若对方更近则采用策略二方式或者策略四将本方球击打至靶心。
3.4仿真调试
冰壶机器人控制系统搭建完毕即可输入相关参数进行测试,通过不同的本方和对方球数量和位置可以验证算法的可行性及击打效果。这里选取本方球坐标为[108%2C360],对方球坐标为[-155%2C480],发球位置为[180%2C0],如图10所示,系统启动并且开启仿真调试后,系统判断对方球离靶心近,但是通往靶心的路径又被本方球阻挡,则采取策略二的方式把对方球打远。
4总结
本文分析了冰壶机器人运动学正解、反解以及碰撞的物理特性,建立了相关模型,基于先进的综合性Sysmac平台,利用Sysmac+studio设计了运动控制模块,搭建了3D仿真仿真平台。在仿真环境中研究了冰壶机器人控制算法,规划了几种击打策略,为下一步研究智能控制算法奠定了基础。
注:如果侵犯了您得权益,请告诉我们,我们会及时处理。
