1.潜水器收放系统中机械手仿真系统的设计方法,其特征在于:包括以下步骤:
S1:构建三维模型,利用制图软件等比尺寸建立六自由度的机械手、海试船舶、潜水器和船载收放设备的模型并且导出SAT格式文件;
S2:对模型进行优化处理,利用3dsMAX对导出的模型进行装配与细节优化,调整机械手各关节的局部坐标轴位置及轴向,对海试船舶、潜水器和船载收放设备备进行简化处理,并制作机械手辅助帧动画,导出为FBX格式预制件;
S3:将导出的预制件导入Unity3D虚拟现实引擎中,构建完整的机械手海试实验场景:运动仿真示教模块、海试虚拟遥操作模块和场景漫游模块,编写C#脚本并分别挂载给相应的对象,设置参数,完成完整的机械手海试实验场景中所需要的运动控制、碰撞检测、场景切换、GUI人机交互及场景漫游功能的设置;
所述运动仿真示教模块完成控制机械手各关节的运动、反向运动学下机械手对目标物体的抓取移动及机械手运动过程的碰撞检测;
所述海试虚拟遥操作模块利用基于TCP/IP协议的Socket网络通信,建立与实际机械手以及上位机窗体的通信连接,进行机械手各关节转角数据的实时传输,实现虚实机械手同步运动,实现可视化仿真机械手实时运动位姿的功能以及对实际作业机械手进行遥操作的功能;
所述场景漫游模块中利用Unity3D添加地形进行编辑与细节绘制,进行湖试及海试场景的搭建,并创建角色控制器利用键盘和鼠标实现第一或第三人称的全方位场景漫游,搭建船载无人潜水器收放系统的海试环境,并进行全方位场景漫游。
2.根据权利要求1所述的潜水器收放系统中机械手仿真系统的设计方法,其特征在于:所述S1中导出三维模型时,需要进行运动控制的机械臂各关节组件需要单个导出,其他没有动画效果的模型作为整体导出。
3.根据权利要求1所述的潜水器收放系统中机械手仿真系统的设计方法,其特征在于:所述S2中对模型进行优化处理时,调节机械手的各关节自身的局部坐标轴,3dsMAX层次参数中仅影响轴的命令对齐到各关节旋转轴处,并统一各关节局部坐标轴的轴向。
4.根据权利要求1所述的潜水器收放系统中机械手仿真系统的设计方法,其特征在于:所述机械手辅助帧动画在制作时,从3dsMAX中导出时勾选导出动画选项,导入Unity3D时设置预制件参数导入动画为旧版并应用。
5.根据权利要求1所述的潜水器收放系统中机械手仿真系统的设计方法,其特征在于:所述S3中的运动控制功能的设置具体为:利用IK插件中的CCDIK组件,将其添加到机械手第一个关节上,再按照父节点优先原则依次添加其他关节,形成机械手骨骼,通过改变骨骼末端目标节点位置ccdIK.solver.IKPosition实现机械手的反向运动学仿真;利用水平滑动条GUI.HorizontalSlider调整各关节的目标角度,实现机械手的正运动学仿真。
6.根据权利要求1所述的潜水器收放系统中机械手仿真系统的设计方法,其特征在于:所述S3中的碰撞检测功能的设置具体为:对产生碰撞的机械手关节及周围模型分别添加特定标签,并添加刚体及碰撞器组件,对应C#脚本中使用OnTriggerEnter和OnTriggerExit函数,通过gameObject.tag找到物体并判断碰撞的开始与结束,发生碰撞时,机械手运动停止,同时系统发出警示。
7.根据权利要求1所述的潜水器收放系统中机械手仿真系统的设计方法,其特征在于:所述S3中场景切换功能的设置具体为:使用SceneManager.LoadScene加载/切换场景,使用前把加载的场景在File‑>Build Setting中添加。
8.根据权利要求1所述的潜水器收放系统中机械手仿真系统的设计方法,其特征在于:所述S3中GUI人机交互功能的设置具体为:在脚本中编写OnGUI函数创建GUI,包括Label、Button、RepeatButton、TextField、HorizontalSlider、PasswordField及TextField控件,利用GUI.skin.label.fontSize调整字体大小,GUI.skin.label.normal.textColor调整字体颜色,使用GUI.BeginGroup、GUI.EndGroup将机械手正运动学运动仿真的相关UI控件裁剪到一个GUI组群,便于对同一类控件的整体移动与调整。
9.根据权利要求1所述的潜水器收放系统中机械手仿真系统的设计方法,其特征在于:所述S3中场景漫游功能的设置具体为:添加标准资源包中
UnityStandardAssets.Characters创建第一或第三人称角色控制器,漫游时通过键盘上的W、S、A、D、上、下、左和右键控制角色前后左右的水平移动方向,空格键跳跃,鼠标平面移动控制相机转向,角色的瞄准方向总是沿着相机向前。
10.潜水器收放系统中机械手仿真系统的控制方法,其特征在于:具体包括以下步骤:第一步:在仿真系统的运动仿真示教模块中,选择湖试或海试场景,通过操作对应机械手各关节的滑动条及运动控制按钮,对机械手进行正逆运动学离线示教模拟,了解各关节运动及位姿变化;
第二步:在仿真示教模块结束后,进入海试虚拟环境,根据仿真示教模块对机械手的学习,对机械手进行第二次示教仿真,通过碰撞检测,记录机械手在受海试环境其他因素影响下各关节转角的极限范围;
第三步:虚拟仿真机械手抓取挂钩收放无人潜水器的运动过程,记录机械手在此过程中各主要位姿转角的数据及运动轨迹;
第四步:进行真实海试环境的场景漫游,全方位多视角的了解海试周边环境、机械手位姿及机械手各关节相对海面和船舷的距离;
第五步:真实环境下示教及漫游完成后,进入海试虚拟遥操作模块,通讯连接机械手上位机窗体,在船舱控制室内对海试中的机械手进行远程遥操作,在海试虚拟场景中可视化实时显示机械手运动状态及位姿;
第六步:根据仿真数据及记录的各关节转角范围,操作机械手抓取挂钩收放无人潜水器,完成船载无人潜水器收放系统的海试任务。