说明:本次内容基于本博客四篇文章《基于C#的机器人仿真平台和机器人运动学算法实现》、《六轴机器人轨迹规划(直线轨迹规划,弧线轨迹规划)——C#实现+ABB为例(规划直接下发离线程序运动)》、《机器人仿真搭建(以ABB为例)》和《ABB_2600运动学》进行整合和Code部分重构和改进。
一、内容改进
-
本次内容新添加了控制模块,控制界面命名为虚拟示教器。
-
通过对应的机器人算法将虚拟环境中的机器人位置姿态真实的反应到现实机器人中
-
通过虚拟示教器对机器人进行关节控制和逆解线性控制
-
添加了对机器人的多段轨迹规划的功能
-
对虚拟机器人进行多段轨迹规划并生成实际机器人的Rapid代码
二、关节、线性控制部分
可视化界面:
仿真环境:
通信模块:
正向规划模块(通过实际的数据规划机器人不同轨迹):
虚拟示教器
记录虚拟机器人点位
参数设置模块
生成实际机器人代码
部分代码:
/// <summary>
/// 初始化线性运动
/// </summary>
public void Init_T()
{
m_Theta[0] = 0.01;
m_Theta[1] = 0;
m_Theta[2] = 0;
m_Theta[3] = 0;
m_Theta[4] = 30;
m_Theta[5] = 0;
for (int i = 0; i < 6; i++)
{
m_Theta[i] = m_Theta[i] * (Math.PI / 180);
}
m_Theta[1] = m_Theta[1] + Math.PI / 2;
m_robotKine_form3.M_Trans_Mult(m_Theta);
T06_IK = m_robotKine_form3.Rob_Fkine();
T06_IK[0, 3] = T06_IK[0, 3] + addx - subx;