《机器人控制技术》PPT课件.ppt

上传人:jun****875 文档编号:8558191 上传时间:2020-03-29 格式:PPT 页数:129 大小:1.25MB
返回 下载 相关 举报
《机器人控制技术》PPT课件.ppt_第1页
第1页 / 共129页
《机器人控制技术》PPT课件.ppt_第2页
第2页 / 共129页
《机器人控制技术》PPT课件.ppt_第3页
第3页 / 共129页
点击查看更多>>
资源描述
1 1引言1 2示教再现控制1 3运动控制习题 1 1引言 1 1 1机器人控制特点1 1 2机器人控制方式1 1 3机器人控制功能1 1 4机器人控制系统 1 1 1机器人控制特点 1 大量的运动学 动力学运算 涉及矢量 矩阵 坐标变换和微积分等运算 2 机器人的控制不仅是非线性的 而且是多变量耦合的 3 机器人的控制还必须解决优化 决策的问题 1 1引言 机器人的控制方式主要有以下两种分类 1 按机器人手部在空间的运动方式分 1 点位控制方式 PTP点位控制又称为PTP控制 其特点是只控制机器人手部在作业空间中某些规定的离散点上的位姿 这种控制方式的主要技术指标是定位精度和运动所需的时间 常常被应用在上下料 搬运 点焊和在电路板上插接元器件等定位精度要求不高且只要求机器人在目标点处保持手部具有准确位姿的作业中 1 1 2机器人控制方式 1 1引言 1 按机器人手部在空间的运动方式分 2 连续轨迹控制方式 CP连续轨迹控制又称为CP控制 其特点是连续的控制机器人手部在作业空间中的位姿 要求其严格的按照预定的路径和速度在一定的精度范围内运动 这种控制方式的主要技术指标机器人手部位姿的轨迹跟踪精度及平稳性 通常弧焊 喷漆 去毛边和检测作业的机器人都采用这种控制方式 有的机器人在设计控制系统时 上述两种控制方式都具有 如对进行装配作业的机器人的控制等 1 1 2机器人控制方式 1 1引言 2 按机器人控制是否带反馈分 1 非伺服型控制方式非伺服型控制方式是指未采用反馈环节的开环控制方式 在这种控制方式下 机器人作业时严格按照在进行作业之前预先编制的控制程序来控制机器人的动作顺序 在控制过程中没有反馈信号 不能对机器人的作业进展及作业的质量好坏进行监测 因此 这种控制方式只适用于作业相对固定 作业程序简单 运动精度要求不高的场合 它具有费用省 操作 安装 维护简单的优点 1 1 2机器人控制方式 1 1引言 2 按机器人控制是否带反馈分 2 伺服型控制方式伺服型控制方式是指采用了反馈环节的闭环控制方式 这种控制方式的特点是在控制过程中采用内部传感器连续测量机器人的关节位移 速度 加速度等运动参数 并反馈到驱动单元构成闭环伺服控制 如果是适应型或智能型机器人的伺服控制 则增加了机器人用外部传感器对外界环境的检测 使机器人对外界环境的变化具有适应能力 从而构成总体闭环反馈的伺服控制方式 1 1 2机器人控制方式 1 1引言 1 示教再现功能示教再现功能是指示教人员预先将机器人作业的各项运动参数预先教给机器人 在示教的过程中 机器人控制系统的记忆装置就将所教的操作过程自动地记录在存储器中 当需要机器人工作时 机器人的控制系统就调用存储器中存储的各项数据 使机器人再现示教过的操作过程 由此机器人即可完成要求的作业任务 机器人的示教再现功能易于实现 编程方便 在机器人的初期得到了较多的应用 1 1 3机器人控制功能 1 1引言 2 运动控制功能运动控制功能是指通过对机器人手部在空间的位姿 速度 加速度等项的控制 使机器人的手部按照作业的要求进行动作 最终完成给定的作业任务 它与示教再现功能的区别 在示教再现控制中 机器人手部的各项运动参数是由示教人员教给它的 其精度取决于示教人员的熟练程度 而在运动控制中 机器人手部的各项运动参数是由机器人的控制系统经过运算得来的 且在工作人员不能示教的情况下 通过编程指令仍然可以控制机器人完成给定的作业任务 1 1 3机器人控制功能 1 1引言 由于机器人的控制过程中涉及大量的坐标变换和插补运算以及较低层的实时控制 所以 目前的机器人控制系统在结构上大多数采用分层结构的微型计算机控制系统 通常采用的是两级计算机伺服控制系统 1 1 4机器人控制系统 1 1引言 机器人控制系统具体的工作过程是 主控计算机接到工作人员输入的作业指令后 首先分析解释指令 确定手的运动参数 然后进行运动学 动力学和插补运算 最后得出机器人各个关节的协调运动参数 这些参数经过通信线路输出到伺服控制级作为各个关节伺服控制系统的给定信号 关节驱动器将此信号D A转换后驱动各个关节产生协调运动 并通过传感器将各个关节的运动输出信号反馈回伺服控制级计算机形成局部闭环控制 从而更加精确的控制机器人手部在空间的运动 作业任务要求的 在控制过程中 工作人员可直接监视机器人的运动状态 也可从显示器等输出装置上得到有关机器人运动的信息 1 1 4机器人控制系统 1 1引言 机器人控制系统的组成1 硬件 1 1 4机器人控制系统 1 1引言 机器人控制系统的组成1 硬件 单片机应用 1 1 4机器人控制系统 1 1引言 机器人控制系统的组成1 硬件 运动控制器介绍运动控制器核心由ADSP2181数字信号处理器及其外围部件组成 可以实现高性能的控制计算 同步控制多个运动轴 实现多轴协调运动 应用领域包括机器人 数控机床等 1 1 4机器人控制系统 1 1引言 机器人控制系统的组成1 硬件 运动控制器介绍运动控制器以PC为主机 提供标准的ISA PCI及通用的串口总线和数字I O接口 运动控制器提供高级语言函数库和Windows动态连接库 可以实现复杂的控制功能 用户能够将这些控制函数与自己控制系统所需的数据处理 界面显示 用户接口等应用程序模块集成在一起 建造符合特定应用要求的控制系统 以适应各种应用领域的要求 1 1 4机器人控制系统 1 1引言 机器人控制系统的组成1 硬件 运动控制器应用 1 1引言 1 1 4机器人控制系统 机器人控制系统的组成2 软件 1 1 4机器人控制系统 1 1引言 控制过程 示教人员将机器人作业任务中要求手的运动预先教给机器人 在示教的过程中 机器人控制系统就将关节运动状态参数记忆存储在存储器中 当需要机器人工作时 机器人的控制系统就调用存储器中存储的各项数据 驱动关节运动 使机器人再现示教过的手的运动 由此完成要求的作业任务 1 2示教再现控制 1 2示教再现控制 1 2 1示教方式1 2 2记忆过程 1 2 1示教方式机器人示教的方式种类繁多 总的可以分为集中示教方式和分离示教方式 1 集中示教方式将机器人手部在空间的位姿 速度 动作顺序等参数同时进行示教的方式 示教一次即可生成关节运动的伺服指令 2 分离示教方式将机器人手部在空间的位姿 速度 动作顺序等参数分开单独进行示教的方式 一般需要示教多次才可生成关节运动的伺服指令 但其效果要好于集中示教方式 1 2示教再现控制 1 2 1示教方式当对用点位 PTP 控制的点焊 搬运机器人进行示教时 可以分开编制程序 且能进行编辑 修改等工作 但是机器人手部在作曲线运动而且位置精度要求较高时 示教点数就会较多 示教时间就会拉长 且在每一个示教点处都要停止和启动 因此就很难进行速度的控制 1 2示教再现控制 1 2 1示教方式当对用连续轨迹 CP 控制的弧焊 喷漆机器人进行示教时 示教操作一旦开始就不能中途停止 必须不中断的连续进行到底 且在示教途中很难进行局部的修改 示教时 可以是手把手示教 也可通过示教盒示教 1 2示教再现控制 2020年3月29日星期日 1 2 2记忆过程 在示教的过程中 机器人关节运动状态的变化被传感器检测到 经过转换 再通过变换装置送入控制系统 控制系统就将这些数据保存在存储器中 作为再现示教过的手的运动时所需要的关节运动参数数据 1 2示教再现控制 1 记忆速度取决于传感器的检测速度 变换装置的转换速度和控制系统存储器的存储速度 2 记忆容量取决于控制系统存储器的容量 1 2 2记忆过程 1 2示教再现控制 机器人的运动控制是指机器人手部在空间从一点移动到另一点的过程中或沿某一轨迹运动时 对其位姿 速度和加速度等运动参数的控制 由机器人运动学可知 机器人手部的运动是由各个关节的运动引起的 所以控制机器人手部的运动实际上是通过控制机器人各个关节的运动实现的 1 3运动控制 控制过程 根据机器人作业任务中要求的手的运动 通过运动学逆解和数学插补运算得到机器人各个关节运动的位移 速度和加速度 再根据动力学正解得到各个关节的驱动力 矩 机器人控制系统根据运算得到的关节运动状态参数控制驱动装置 驱动各个关节产生运动 从而合成手在空间的运动 由此完成要求的作业任务 1 3运动控制 控制步骤 第一步 关节运动伺服指令的生成 即将机器人手部在空间的位姿变化转换为关节变量随时间按某一规律变化的函数 这一步一般可离线完成 第二步 关节运动的伺服控制 即采用一定的控制算法跟踪执行第一步所生成的关节运动伺服指令 这是在线完成的 1 3运动控制 1 3 1关节运动伺服指令的生成1 3 2关节运动的伺服控制1 3 3机器人语言 1 3运动控制 1 3 1关节运动伺服指令的生成1 轨迹规划机器人关节运动伺服指令的轨迹规划生成方法是指根据作业任务要求的机器人手部在空间的位姿 速度等运动参数的变化 通过机器人运动学方程的求解和各种插补运算等数学方法最终生成相应的关节运动伺服指令 示教再现控制生产方法 示教生成 1 3运动控制 1 3 1关节运动伺服指令的生成2 轨迹规划的实现过程在对机器人进行轨迹规划时 首先要对机器人的作业任务进行描述 得到机器人手部在空间的位姿变化 然后根据机器人运动学方程及其逆解并通过适当的插补运算求出机器人各个关节的位移 速度等运动参数的变化 再通过动力学运算最终生成机器人关节运动所需的伺服指令 PTP下的轨迹规划是在关节坐标空间进行 CP下的轨迹规划是在直角坐标空间进行 1 3运动控制 1 3 1关节运动伺服指令的生成2 轨迹规划的实现过程 1 PTP下的轨迹规划步骤 第一步 由手的位姿得到对应关节的位移 第二步 不同点对应关节位移之间的运动规划 第三步 由关节运动变化计算关节驱动力 矩 1 3运动控制 1 3 1关节运动伺服指令的生成2 轨迹规划的实现过程 1 PTP下的轨迹规划第一步 已知机器人起点和终点的位姿得到机器人对应的关节变量的取值 机器人运动学逆解 1 3运动控制 1 3 1关节运动伺服指令的生成2 轨迹规划的实现过程 1 PTP下的轨迹规划第二步 已知机器人起点和终点的关节变量取值问题 起点的变量取值如何变化到终点的变量取值 1 3运动控制 1 3 1关节运动伺服指令的生成2 轨迹规划的实现过程 1 PTP下的轨迹规划第二步 已知机器人起点和终点的关节变量取值分析 起点的变量取值如何变化到终点的变量取值 若按线性变化 则有 1 3运动控制 1 3 1关节运动伺服指令的生成2 轨迹规划的实现过程 1 PTP下的轨迹规划第二步 已知机器人起点和终点的关节变量取值分析 起点的变量取值如何变化到终点的变量取值 若加速度无冲击 则有 1 3运动控制 1 3 1关节运动伺服指令的生成2 轨迹规划的实现过程 1 PTP下的轨迹规划第二步 已知机器人起点和终点的关节变量取值A 三次多项式插值运算设起点到终点的位移变化规律为 则速度为 1 3运动控制 1 3 1关节运动伺服指令的生成2 轨迹规划的实现过程 1 PTP下的轨迹规划第二步 已知机器人起点和终点的关节变量取值A 三次多项式插值运算关节运动需要满足的约束条件可表示为 位移约束速度约束 1 3运动控制 1 3 1关节运动伺服指令的生成2 轨迹规划的实现过程 1 PTP下的轨迹规划第二步 已知机器人起点和终点的关节变量取值A 三次多项式插值运算由此可得有关系数的4个线性方程为 1 3运动控制 1 3 1关节运动伺服指令的生成2 轨迹规划的实现过程 1 PTP下的轨迹规划第二步 已知机器人起点和终点的关节变量取值A 三次多项式插值运算求解该方程组即可得 1 3运动控制 1 3 1关节运动伺服指令的生成2 轨迹规划的实现过程 1 PTP下的轨迹规划第二步 已知机器人起点和终点的关节变量取值A 三次多项式插值运算将其代入下式 可得该关节变量随时间的变化规律 此函数表达式适用于关节起始点和终止点速度为零的运动情况 1 3运动控制 1 3 1关节运动伺服指令的生成2 轨迹规划的实现过程 1 PTP下的轨迹规划第二步 已知机器人起点和终点的关节变量取值B 多点的三次多项式插值运算如果要求在路径点处的加速度连续 则可用两条三次曲线在路径点处连接起来 拼凑成所需要的运动轨迹 这时路径点处的速度不仅要连续 而且加速度也要连续 1 3运动控制 1 3 1关节运动伺服指令的生成2 轨迹规划的实现过程 1 PTP下的轨迹规划第二步 已知机器人起点和终点的关节变量取值B 多点的三次多项式插值运算设A点到C点的关节变量变化为 设C点到B点的关节变量变化为 1 3运动控制 1 3 1关节运动伺服指令的生成2 轨迹规划的实现过程 1 PTP下的轨迹规划第二步 已知机器人起点和终点的关节变量取值B 多点的三次多项式插值运算三点处的位移约束方程 1 3运动控制 1 3 1关节运动伺服指令的生成2 轨迹规划的实现过程 1 PTP下的轨迹规划第二步 已知机器人起点和终点的关节变量取值B 多点的三次多项式插值运算起点和终点处的速度约束方程 中间点处的速度和加速度约束方程 1 3运动控制 1 3 1关节运动伺服指令的生成2 轨迹规划的实现过程 1 PTP下的轨迹规划第二步 已知机器人起点和终点的关节变量取值B 多点的三次多项式插值运算联立上述8个线性方程 若令 则方程组的解为 1 3运动控制 1 3 1关节运动伺服指令的生成2 轨迹规划的实现过程 1 PTP下的轨迹规划第二步 已知机器人起点和终点的关节变量取值B 多点的三次多项式插值运算将其代入以下两式 可得两段曲线 将其拼接起来 就是该关节变量随时间的变化规律 1 3运动控制 1 3 1关节运动伺服指令的生成2 轨迹规划的实现过程 1 PTP下的轨迹规划第二步 已知机器人起点和终点的关节变量取值C 五次多项式插值运算设起点到终点的位移变化规律为 则速度和加速度为 1 3运动控制 1 3 1关节运动伺服指令的生成2 轨迹规划的实现过程 1 PTP下的轨迹规划第二步 已知机器人起点和终点的关节变量取值C 五次多项式插值运算约束条件线性方程组为 1 3运动控制 1 3 1关节运动伺服指令的生成2 轨迹规划的实现过程 1 PTP下的轨迹规划第二步 已知机器人起点和终点的关节变量取值C 五次多项式插值运算求解该方程组即可得 1 3运动控制 1 3 1关节运动伺服指令的生成2 轨迹规划的实现过程 1 PTP下的轨迹规划第二步 已知机器人起点和终点的关节变量取值C 五次多项式插值运算将其代入下式 可得该关节变量随时间的变化规律 此函数表达式可适用于已知关节起始点和终止点速度 加速度的运动情况 1 3运动控制 1 3 1关节运动伺服指令的生成2 轨迹规划的实现过程 1 PTP下的轨迹规划第三步 已知机器人关节的运动速度和加速度由此可得关节的驱动力 矩 1 3运动控制 机器人动力学正解 实现方法 1 3 1关节运动伺服指令的生成2 轨迹规划的实现过程 1 PTP下的轨迹规划在关节坐标空间进行轨迹规划时 要注意关节运动时加速度的突变引起的刚性冲击 严重时可使机器人产生较大的振动 而且在关节坐标空间内规划的直线只表示它是某个关节变量的线性函数 当所有关节变量都规划为直线时 并不代表机器人手部在直角坐标空间中的路径就是直线 关节坐标空间的轨迹规划是直角坐标空间轨迹规划的基础 1 3运动控制 1 3 1关节运动伺服指令的生成2 轨迹规划的实现过程 2 CP下的轨迹规划步骤 第一步 连续轨迹离散化 第二步 PTP下的轨迹规划 1 3运动控制 1 3 1关节运动伺服指令的生成2 轨迹规划的实现过程 2 CP下的轨迹规划第一步 连续轨迹离散化解决问题 离散点处的位置和姿态 1 3运动控制 1 3 1关节运动伺服指令的生成2 轨迹规划的实现过程 2 CP下的轨迹规划第一步 连续轨迹离散化A 离散点处的位置计算对于机器人手部在空间的位置变化 用时间的参数方程可表示为 1 3运动控制 1 3 1关节运动伺服指令的生成2 轨迹规划的实现过程 2 CP下的轨迹规划第一步 连续轨迹离散化A 离散点处的位置计算为了保证离散后的路径点均匀连续且便于控制 一般利用弧长公式 可将时间转换为弧长的函数 1 3运动控制 1 3 1关节运动伺服指令的生成2 轨迹规划的实现过程 2 CP下的轨迹规划第一步 连续轨迹离散化A 离散点处的位置计算假设起点所对应的弧长为 则路径就可表示为以弧长为参数的方程 1 3运动控制 1 3 1关节运动伺服指令的生成2 轨迹规划的实现过程 2 CP下的轨迹规划第一步 连续轨迹离散化A 离散点处的位置计算将整个路径以适当的弧长单位等分为n段 则任一点处的位置为 1 3运动控制 1 3 1关节运动伺服指令的生成2 轨迹规划的实现过程 2 CP下的轨迹规划第一步 连续轨迹离散化A 离散点处的位置计算由此可得任意点处的位置为 1 3运动控制 1 3 1关节运动伺服指令的生成2 轨迹规划的实现过程 2 CP下的轨迹规划第一步 连续轨迹离散化B 离散点处的姿态计算设整个路径的起始点A和终止点B的姿态矩阵为 1 3运动控制 1 3 1关节运动伺服指令的生成2 轨迹规划的实现过程 2 CP下的轨迹规划第一步 连续轨迹离散化B 离散点处的姿态计算若将机器人的手部姿态化成绕三个坐标轴的旋转变换 即先绕轴x旋转 角度 再绕轴y旋转 角度 最后绕轴z旋转 角度 由坐标变换左乘原则得 1 3运动控制 1 3 1关节运动伺服指令的生成2 轨迹规划的实现过程 2 CP下的轨迹规划第一步 连续轨迹离散化B 离散点处的姿态计算已知 1 3运动控制 1 3 1关节运动伺服指令的生成2 轨迹规划的实现过程 2 CP下的轨迹规划第一步 连续轨迹离散化B 离散点处的姿态计算当给定R的值 则有 1 3运动控制 1 3 1关节运动伺服指令的生成2 轨迹规划的实现过程 2 CP下的轨迹规划第一步 连续轨迹离散化B 离散点处的姿态计算根据以上计算公式 由路径两个端点A B的姿态矩阵即可得机器人手部在整个路径上绕三个坐标轴的旋转角度变化为 1 3运动控制 1 3 1关节运动伺服指令的生成2 轨迹规划的实现过程 2 CP下的轨迹规划第一步 连续轨迹离散化B 离散点处的姿态计算由作业任务的要求可将其用时间t的参数方程表示为 1 3运动控制 1 3 1关节运动伺服指令的生成2 轨迹规划的实现过程 2 CP下的轨迹规划第一步 连续轨迹离散化B 离散点处的姿态计算同样利用弧长公式将时间化为弧长的函数 并以等间隔弧长等分整个路径 则任一离散点处绕三个坐标轴的旋转角度为 1 3运动控制 1 3 1关节运动伺服指令的生成2 轨迹规划的实现过程 2 CP下的轨迹规划第一步 连续轨迹离散化B 离散点处的姿态计算由此可得任一离散点处的位姿为 1 3运动控制 1 3 1关节运动伺服指令的生成2 轨迹规划的实现过程 2 CP下的轨迹规划第一步 连续轨迹离散化根据以上计算 最终可得离散点n处的位姿为 1 3运动控制 1 3 1关节运动伺服指令的生成2 轨迹规划的实现过程 2 CP下的轨迹规划第二步 PTP下的轨迹规划有了各个离散点处的位姿 就可以用PTP下的轨迹规划实现方法 从而完成CP下的轨迹规划 至此 在直角坐标空间中两点之间连续路径的轨迹规划就全部完成了 1 3运动控制 1 3 2关节运动的伺服控制多关节的工业机器人控制系统往往可以分解成若干个带耦合的单关节控制系统 如果耦合是弱耦合 则每个关节的控制可近似为独立的 看成是每个关节由一个简单的伺服系统单独驱动 1 3运动控制 1 3 2关节运动的伺服控制机器人关节运动的伺服指令生成以后 就要采用一定的控制算法对关节的运动进行伺服控制 常用的控制方法有以下几种 1 基于前馈和反馈的计算力矩的控制方法注意 前馈指的是加速度 反馈指的是速度和位移 已知多自由度机器人的动力学模型为 且各项均可精确计算 1 3运动控制 1 3 2关节运动的伺服控制1 基于前馈和反馈的计算力矩的控制方法具有前馈补偿的闭环伺服系统的性能取决于本体和控制对象的动力学模型的估算准确性 当得不到准确的动力学模型或是环境变动超出系统反馈补偿范围时 控制性能就会改变 1 3运动控制 1 3 2关节运动的伺服控制1 基于前馈和反馈的计算力矩的控制方法选取控制规律为 式中 关节控制的输入力 矩 向量 关节速度误差反馈系数 关节位置误差反馈系数 希望跟踪的关节速度和位移 实际的关节速度和位移 1 3运动控制 1 3 2关节运动的伺服控制1 基于前馈和反馈的计算力矩的控制方法假定选取 则有 由于惯性矩阵可逆 所以可得误差微分方程为 式中 关节位移误差 分别为关节速度和加速度的误差 只要选取合适的和值 就可使关节变量的各项误差渐趋于零 1 3运动控制 1 3 2关节运动的伺服控制1 基于前馈和反馈的计算力矩的控制方法这种控制方法是基于关节变量加速度的前馈和速度 位移误差的反馈以及对耦合力项和重力项的补偿而实现的 其考虑的主要是位移和速度的误差对惯性力项的影响 所以适合于低速 重载的机器人 它的缺点是计算的工作量大 且控制的精度主要依赖于机器人动力学模型的精确度 1 3运动控制 1 3 2关节运动的伺服控制2 线性多变量控制方法线性多变量控制方法是利用机器人在工作点p0附近的线性模型工作的 对任一多自由度机器人 其在工作点处的初始关节控制力 矩 向量与该点处对应的关节位移 速度和加速度之间的动力学模型为 1 3运动控制 1 3 2关节运动的伺服控制2 线性多变量控制方法当机器人在工作点处有一微小扰动时 上述动力学模型就变为 式中 关节控制输入力 矩 的微小变化 关节位移的微小变化 关节速度的微小变化 关节加速度的微小变化 1 3运动控制 1 3 2关节运动的伺服控制2 线性多变量控制方法在工作点附近应用台劳级数将和展开 并忽略展开式中及的二阶及二阶以上的各次高阶项 且假定它们足够小 则上式可改写为 1 3运动控制 1 3 2关节运动的伺服控制2 线性多变量控制方法若令则得 该式即为机器人在工作点附近的增量线性定常模型 1 3运动控制 1 3 2关节运动的伺服控制2 线性多变量控制方法若再令 则得 对耦合线性定常微分方程应用以下的反馈控制律 式中 关节位移误差 关节速度误差 反馈的关节速度和位移 设定的关节速度和位移 1 3运动控制 1 3 2关节运动的伺服控制2 线性多变量控制方法对控制律两边求拉普拉氏变换可得则其传递函数为 由此可以看出 线性多变量控制选用的是一个比例微分 PD 控制器 其考虑的主要是位移和速度的误差对耦合力项和重力项的影响 所以适合于高速 轻载机器人的控制 1 3运动控制 1 3 2关节运动的伺服控制3 自适应控制自适应控制就是指机器人根据传感器对外界环境和对象物的感知 利用人工智能中的各种学习 推理和决策技术 对外界信息进行准确处理 然后对自己行为作出自主决策以自动地完成任务的控制方式 1 3运动控制 1 3 2关节运动的伺服控制3 自适应控制理想自适应控制是在基于模型控制的基础上 增添自适应控制规律 不断观测机器人各个关节的状态和伺服误差 驱动自适应算法 重新调整或更新非线性模型参数 直至伺服误差消失为止 由此可见 这种控制方法对机器人控制系统的动态性能具有自我调整功能 并且可以达到全局的稳定 1 3运动控制 1 3 2关节运动的伺服控制4 自学习控制自学习控制是近年来提出的一种智能控制方法 它可利用结构简单的控制器实现高精度的控制 目前人们提出的自学习控制方案主要有 迭代自学习控制重复自学习控制 1 3运动控制 1 3 2关节运动的伺服控制4 自学习控制迭代自学习控制 迭代自学习控制是以数学模型模仿人类在每次操作均在规定的时间内结束 且在期望值给定的条件下重复进行一件同样的工作为基本思路 若每次操作开始时系统的初始值已知 每次输出值可测 则输出与输入的误差信号就可作为下一次的控制输入 用简单的迭代律更新存入存储装置的控制输入 从而改善系统在输入作用下的输出 直至获得期望的控制结果 1 3运动控制 1 3 2关节运动的伺服控制4 自学习控制重复自学习控制 重复自学习控制同样适用于进行重复操作的机器人 但它与迭代自学习控制不同 它不是简单的生成期望的前馈控制信号 而是利用 内模原理 在稳定的闭环系统内设置一个可以产生与参考输入同周期的内部模型 从而使系统实现对外周期信号的跟踪 1 3运动控制 1 3 3机器人语言世界上最早开展机器人语言研究的是美国斯坦福大学 麻省理工学院以及英国的一些大学 他们在20世纪60年代初期就着手这方面的工作 1973年斯坦福大学人工智能研究室研制出实用的WAVE语言 这是第一个机器人语言 WAVE语言具有动作的描述 力和接触的控制 配合视觉系统可以完成手眼协调编程 1 3运动控制 1 3 3机器人语言之后斯坦福大学人工智能研究室在WAVE语言的基础上 又开发出了AL语言 AL语言不仅能用来描述机器人手爪的操作 而且还能记忆作业环境以及环境内各个对象物之间的相对位置 可以用来控制多台机器人协调工作 1 3运动控制 1 3 3机器人语言美国IBM公司在机器人语言研究上作了很多工作 也取得过不少成果 该公司在20世纪70年代中期开发了应用于直角坐标机器人上的EMILY和ML语言 能用于机器人的装配作业 此后又研制出用于装配机器人的AUTOPASS语言 这是一种比较高级的机器人语言 它可以对几何模型类任务进行半自动编程 在1982年 IBM公司又推出了AML语言 目前 AML语言已作为商业化产品用于IBM机器人的控制 1 3运动控制 1 3 3机器人语言1979年 美国Unimation公司推出了VAL语言 主要用于PUMA和Unimate等系列的机器人上 是一种比较成功的机器人语言 VAL语言是在BASIC语言的基础上扩展的机器人语言 它具有BASIC语言的结构 比较简单 易于编程 为工业机器人所适用 1984年该公司推出VAL 语言 它是在VAL语言的基础上 增加开发利用传感器信息进行运动控制和数据处理以及通讯等功能 现在VAL语言已经升级为V 语言 性能得到了更大的提高 1 3运动控制 1 3 3机器人语言20世纪80年代初 美国Automatix公司开发了RAIL语言 它能利用视觉传感器信息 进行检测零件作业 同期 麦道公司研制出了MCL语言 它是在数控语言APT基础上发展起来的机器人语言 MCL语言应用于由机床及机器人组成的柔性加工单元的编程 其功能较强 1 3运动控制 1 3 3机器人语言到目前为止 国内外尚无通用的机器人语言 虽然现有的品种繁多 仅在美 日 西欧实用的机器人语言就至少有数十种 但即使这样 新的机器人语言还不断出现 究其原因 就在于目前开发的机器人语言绝大多数是根据专用机器人而单独开发的 存在着通用性差的问题 1 3运动控制 1 3 3机器人语言有的国家正尝试在数控机床通用语言的基础上 形成统一的机器人语言 但由于机器人控制不仅要考虑机器人本身的运动 还要考虑机器人与配套设备间的协调通讯以及多个机器人之间的协调工作 因而技术难度非常大 目前尚处于研究探索阶段 1 3运动控制 1 3 3机器人语言1 机器人语言的特点 1 机器人语言描述的内容主要是机器人的作业动作 工作环境 操作内容 工艺和过程 2 机器人语言逐渐向结构简明 概念统一和容易扩展等方向发展 3 机器人语言越来越接近自然语言 并且具有良好的对话性 1 3运动控制 1 3 3机器人语言2 机器人语言的分类 1 根据机器人语言对作业任务描述水平的高低可分为动作级 对象级和任务级三大类 动作级动作级的机器人语言是以机器人手部的运动作为作业描述的中心 将机器人作业任务中的每一步动作都用命令语句来表述 每一条语句对应于一个机器人动作 若动作的目的是移动某一物体 基本运动语句形式为 MOVETO 目的地 这一级语言的典型代表是VAL语言 1 3运动控制 1 3 3机器人语言2 机器人语言的分类 对象级对象级的机器人语言是以近似自然语言的方式 按照作业对象的状态变化来进行程序设计 是以描述操作物体之间关系为中心的语言 由操作者给出作业本身的顺序过程的描述及环境模型的描述 机器人即可自行决定如何动作 这种语言可以利用传感器信息来修改 更新环境的描述和模型 也可以利用传感器信息进行控制 测试和监督 这一级语言的代表是AUTOPASS语言 1 3运动控制 1 3 3机器人语言2 机器人语言的分类 任务级在任务级语言环境下 使用者只要按某种原则给出作业起始状态和作业目标状态 机器人语言系统即可利用已有的环境信息和知识库 数据库自动进行推理 计算 最后自动生成机器人详细的动作 顺序和相应数据 因此 这类语言必须具有判断环境 描述环境的能力 同时 也必须有自动完成许多规划任务的能力 这一级语言现仍处于基础研究阶段 还有许多问题没有解决 1 3运动控制 1 3 3机器人语言2 机器人语言的分类 2 根据机器人语言的实际应用水平可分为动作指示语言和作业指示语言两大类 动作指示语言机器人的动作指示语言是直接表述机器人臂部 腕部 手部等动作控制的语言系统 它相当于上面所述的动作级机器人语言 1 3运动控制 1 3 3机器人语言2 机器人语言的分类 2 根据机器人语言的实际应用水平可分为动作指示语言和作业指示语言两大类 作业指示语言机器人的作业指示语言是仅表述机器人 如装配机器人 的某种操作过程的语言系统 它相当于上面所述的对象级机器人语言 1 3运动控制 1 3 3机器人语言3 机器人语言的处理过程当用机器人语言编写的程序对机器人进行控制时 它的处理过程主要有以下几个方面 1 分析程序分析程序要分析的对象是工作人员用机器人语言编写的作业程序 分析程序首先进行语法检查 并将程序中的错误指示出来 此外 分析程序还能对数据的维数和形式进行检查 一旦消除了所有的语法错误 作业程序就可以进行下一步的处理 1 3运动控制 1 3 3机器人语言3 机器人语言的处理过程 2 编译程序编译程序就是对作业程序的语义进行检查 它能检验有没有发出对存取不可能地址的移动命令和有没有使机器人手部过高速度的移动等 编译程序还要进行一些轨迹计算 即在编译作业程序时模拟机器人手部的位置和各个变量的值 跟踪其与坐标系相结合的状态 然后根据这个值进行轨迹计算 最后得到轨迹数据 编译程序还可将作业程序变换成实行解释程序可以解释的代码 1 3运动控制 1 3 3机器人语言3 机器人语言的处理过程 3 实时解释程序实时解释程序是将编译程序生成的代码实时解释并执行 实现动作结合时 将必要的轨迹数据给予伺服模块 通过状态监视模块监视它的动作 4 伺服模块伺服模块的作用是根据轨迹数据 通过关节位移和速度等所组成的反馈控制系统来实现被指定的运动 1 3运动控制 1 3 3机器人语言3 机器人语言的处理过程 5 状态监视模块状态监视模块的作用是处理各种传感器的反馈信号 抽出必要的信息交给实行解释程序 以上只是机器人语言处理系统的梗概 完整的系统还应包括生成作业程序的编辑程序 排除错误的调试程序和输出环境数据的示教系统程序等 1 3运动控制 1 3 3机器人语言4 VAL语言1979年美国Unimation公司推出的VAL语言 是在BASIC语言的基础上扩展的机器人语言 它具有BASlC语言的结构 在此基础上添加了机器人编程指令和VAL监控操作系统 操作系统包括用户交联 编辑和磁盘管理等部分 VAL语言适用于机器人两级控制系统 上级机是LSI 11 23小型计算机 机器人各关节则由6503微处理器控制 上级机还可以和用户终端 示教盒 I O模块和机器视觉模块等交联 1 3运动控制 1 3 3机器人语言4 VAL语言VAL语言在调试过程中可以和BASIC语言以及6503汇编语言联合使用 VAL语言目前主要用在各种类型的PUMA机器人以及UNIMATE2000 UNIMATE4000系列机器人上 在VAL语言中 机器人终端位置和姿态用齐次变换表征 当精度要求较高时 可以用精确点的数据表征终端位置和姿态 1 3运动控制 1 3 3机器人语言4 VAL语言VAL语言指令分为二类 程序指令和监控指令 1 程序指令 运动指令MOVE关节插补运动 MOVES苗卡尔直线运动 1 3运动控制 1 3 3机器人语言4 VAL语言 1 程序指令 运动指令可以在运动过程中进行手爪的控制 如MOVEPI 75该指令产生从目前位置到PI点的关节插补运动 并在运动过程中 手爪打开75mm 相应的笛卡尔直线插补运动指令为 MOVESPI 75 1 3运动控制 1 3 3机器人语言4 VAL语言 1 程序指令 运动指令APPRO表示终端从当前位置以关节插补方式移动到与目标点在z轴方向上相隔一定距离的处 APPROS含意同APPRO 但终端移动方式为直线运动 DEPART或DEPARTS表示终端从当前位置以关节插补形式 或直线运动 在z轴方向移动移动一段距离 1 3运动控制 1 3 3机器人语言4 VAL语言 1 程序指令 手爪控制指令OPEN CLOSE分别使手爪全部张开和全部闭合 并且在机器人下个运动过程中执行 OPENI CLOSEI表示立即执行 执行完后 再转下一个指令 GRASP使手爪立即闭合 并检查最后的开启量是否满足给定的要求 1 3运动控制 1 3 3机器人语言4 VAL语言 1 程序指令 程序控制指令GOTO无条件转移指令 GOSUB子程序调用指令 位姿控制指令RIGHTY右手 LEFTY左手 ABOVE上肘 BELOW下肘 FLIP上腕 NOFLIP下腕 1 3运动控制 1 3 3机器人语言4 VAL语言 1 程序指令 赋值指令HERE把当前的位置赋给定位变量 SET 把变量2的值给1 控制方式指令COARSE ALWAYS 在伺服控制中允许较大的误差 FIWD ALWAYS 在伺服控制中允许比较小的误差 1 3运动控制 1 3 3机器人语言4 VAL语言 2 监控指令 定义位置 姿态POINT终端位置 姿态的齐次变换或以关节位置表征的精确点赋值 DPOINT取消已赋值 BASE机器人基准坐标系位置 TOOI工具终端相对于工具支承端面的位置 姿态赋值 1 3运动控制 1 3 3机器人语言4 VAL语言 2 监控指令 程序编辑指令EDIT编辑指令进入编辑状态后 可使用各种编辑指令字 列表指令DIRECTORY显示存储器中的全部用户程序名 LISTP显示用户的全部程序 LISTL显示位置变量值 1 3运动控制 1 3 3机器人语言4 VAL语言 2 监控指令 存储指令STOREP在磁盘文件内 存储指定程序 LOADP将文件中的程序送入内存 控制程序指令ABORT紧急停止 DO执行单指令 EXECUTE按给定次数执行用户程序 NEXT控制程序单步执行 1 3运动控制 1 3 3机器人语言4 VAL语言 2 监控指令 系统状态控制STATUS显示机器人状态 FREE显示当前未使用的存储容量 ZERO清除全部用户程序和定义的位置 1 3运动控制 1 3 3机器人语言4 VAL语言VAL语言编程举例任务要求 将工件从传送线上拿到加工位置 设程序名为WORK 进入编辑状态键入 EDITWORK PROGRAMWORK 1 3运动控制 1 3 3机器人语言4 VAL语言VAL语言编程举例 输入源程序1 OPEN打开手指 同时亦向下步 2 APPROTAKE 40以关节插补运动移至TAKE点40mm处停下 3 SPEED30速度降为标准速度的30 4 MOVETAKE 以关节插补运动移至TAKE点 表示手指位置成为TAKE点 5 CLOSEI手指闭合 抓住工件 I 表示动作结束后才执行下一步 1 3运动控制 1 3 3机器人语言4 VAL语言VAL语言编程举例 输入源程序6 DEPART80以关节插补运动 沿坐标z轴后退离开TAKE点至80mm处停下 7 APPROSPUT 75以直线轨迹移至距离PUT点75mm处停下 8 SPEED20速度降为标准速度的20 9 MOVESPUT以直线轨迹移至PUT点 1 3运动控制 1 3 3机器人语言4 VAL语言VAL语言编程举例 输入源程序10 OPENI原地完成打开手指动作 11 DEPART50离开PUT点至50mm处停下 12 E结束编程并返回监控状态 1 3运动控制 1 3 3机器人语言4 VAL语言VAL语言编程举例 工作点位姿赋值以TAKE点为例 将手指移动至拾取位置 键入 HERETAKE当前位姿赋给TAKE点 CHANGE 是否修改 不修改则回车 否则再重复上述过程 1 3运动控制 1 3 3机器人语言4 VAL语言VAL语言编程举例 程序的执行 SPEED10执行速度改慢 便于观察 调试 EXECWORK执行程序WORK 完毕后显示 PROGRAMCOMPLETED STOPPEDATSTEP12 EXECWORK8执行程序WORK8次 EXECWORK 6执行程序WORK无限次 1 3运动控制 1 3 3机器人语言5 AUTOPASS语言AUTOPASS语言是IBM公司下属的一个研究所提出来的机器人语言 它像给人的组装说明书一样 是针对描述对机器人操作的语言 程序把工作的全部规划分解成放置部件 插入部件等宏功能状态变化指令来描述 AUTOPASS语言的编译 是用称作环境模型的数据库 一边模拟工作执行时环境的变化一边决定详细动作 作出对机器人的工作指令和数据 1 3运动控制 1 3 3机器人语言5 AUTOPASS语言 1 AUTOPASS语言的工作过程 用户提出装配要求 给出任务的装配工艺 编写AUTOPASS语言源程序 确定初始环境模型 AUTOPASS语言编译系统逐句处理源程序 并和环境模型和用户实时交联 产生装配作业方法和末端执行器状态指令码 AUTOPASS语言为用户提供控制和数据系统能力 1 3运动控制 1 3 3机器人语言5 AUTOPASS语言 2 AUTOPASS语言的指令 状态变更语句这组语句主要用于作业对象的各种操作 如移动 放置及抓紧等 主要语句有PLACE INSERT EXTRACT LIFT TURN等 工具语句工具语句用于指定某种操作和工具 主要语句有OPERATE LOAD UNLOAD等 1 3运动控制 1 3 3机器人语言5 AUTOPASS语言 2 AUTOPASS语言的指令 安装语句安装语句的主要作用是对作业对象进行安装装配操作 主要语句有ATTACH FASTEN和UNFASTEN等 其它语句用于程序 数据管理等方面的语句 1 3运动控制 1 3 3机器人语言5 AUTOPASS语言AUTOPASS语言编程举例 任务 设零件part1上有4个螺纹孔 将其分别定义为s1 s2 s3和s4 零件part2上有与其相对的4个过孔 被分别定义为h1 h2 h3和h4 要求用4个定义为n1 n2 n3和n4的螺钉 将零件part1和part2拧在一起 1 3运动控制 1 3 3机器人语言5 AUTOPASS语言AUTOPASS语言编程举例 源程序PLACEpart1ONpart2SUCHTHATs1ISALIGNEDWITHh1ANDs2ISALIGNEDWITHh2 FASTENpart1TOpart2SCREWINGn1INs1 n2INs2 n3INs3 n4INs4UNTILTORQUE 5NM 1 3运动控制 思考题 结束
展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 图纸专区 > 课件教案


copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!