库卡ForceTorqueControl(一)

1. 功能说明

ForceTorqueControl 是一个可后载入的备选软件包,具有下列功能:
  • 执行取决于测得的过程力和力矩的运动
  • 遵守过程力和力矩,不取决于工件的位置和尺寸
  • 遵守加工工件期间复杂的过程力变化
  • 沿着根据测得的过程力编程的轨迹调整速度
  • 通过对机器人柔韧性的编程补偿工件的位置和尺寸偏差
  • 无应力定位 - 进入接触位置
  • 通过一个 KRL 程序确定传感器负载数据
  • 传感器负载数据的监控
  • 传感器修正极限的监控

        ForceTorqueControl 的基础技术是 RobotSensorInterface (RSI)。通过 RSI 的核心功能,可以通过处理传感器信号,对机器人的运动施加影响。
        通过 ForceTorqueControl 和一个软件支持的力 / 力矩传感器系统,机器人得到了一种触觉。机器人就能感觉灵敏地对外力和外力矩作出反应,并在工件上施加编程的力和力矩。

2. 力/力矩控制

主要包括6个自由度的力和力矩控制。这里提到的自由度包括三维空间中的力(Fx、Fy、Fz)和力矩(Tx、Ty、Tz),以及如何在不同的场景下应用这些控制策略。下面我来详细解释每个部分的含义。

2.1 6个自由度 (Fx、Fy、Fz、Tx、Ty、Tz)

  • 力(F):分别表示在X轴、Y轴和Z轴方向上的线性力(单位通常为牛顿N),即对机器人施加的推拉力。

    • Fx:沿X轴方向的线性力。
    • Fy:沿Y轴方向的线性力。
    • Fz:沿Z轴方向的线性力。
  • 力矩(T):分别表示围绕X轴、Y轴和Z轴的旋转力矩(单位通常为牛顿米Nm),即对机器人施加的旋转力。

    • Tx:围绕X轴的旋转力矩。
    • Ty:围绕Y轴的旋转力矩。
    • Tz:围绕Z轴的旋转力矩。

这些6个自由度代表机器人在空间中可能受到的所有力和力矩影响。通过控制这些自由度,机器人可以实现复杂的力/力矩感应和运动控制。

2.2 力/力矩控制

  • 力/力矩控制指的是机器人根据外部的力或力矩传感器感应到的数值来调整自己的运动行为。比如:
    • 如果机器人需要感知某个物体的接触力,当传感器检测到预设的力值时,机器人会停止运动或执行特定的动作。
    • 在装配、抛光、打磨等需要敏感力控制的任务中,机器人需要通过这种方式确保动作的精确性和安全性。

    开始阶段说明:

  • 力/力矩控制被激活时,机器人会移动,直到力/力矩传感器检测到一个定义好的力或力矩。这意味着你可以设置某个方向上的力或力矩阈值,当机器人动作时,如果传感器检测到的值达到了这个设定的值,机器人就会停止或调整其动作。

例如:机器人沿着Z轴向下施加力,直到传感器检测到Fz的值等于某个预设值(比如20N),机器人才会停止移动。这适用于像压紧、打磨等需要特定力的操作。

2.3 重叠式力/力矩控制

  • 重叠式力/力矩控制指的是机器人不仅会沿着预设的轨迹运动,同时还会根据外部力/力矩的反馈进行调整。

    在这种模式下,机器人已经被编程执行一个固定轨迹(例如沿直线或曲线移动),但如果力/力矩传感器检测到的值超过预定值,机器人会调整或偏离其轨迹来响应检测到的力或力矩。例如,机器人沿着设定的直线路径移动,但如果它碰到障碍物而产生了过大的力,机器人可能会根据设定的阈值改变路径或减缓运动速度。

2.4 基准坐标系作为参考系

  • 基准坐标系定义了机器人感知和控制力/力矩的参照系。通常,基准坐标系可以是机器人自身的工具坐标系(TCP坐标系)或工作空间中的某个固定坐标系。

    • 当你定义了一个基准坐标系后,力和力矩的控制是相对于这个坐标系的。例如,Fx是沿着这个坐标系X轴的力,不管这个坐标系是在机器人末端还是在外部的某个工作台上。
    • 在力/力矩控制中,基准坐标系的选择至关重要,因为它决定了机器人如何解读力/力矩的方向和大小,并决定机器人在感知到力后如何调整其运动行为。

2.5 场景应用示例

  • 打磨应用:机器人沿着预设的路径(编程的轨迹)对物体表面进行打磨。你可以设置力/力矩控制,使得机器人在检测到超过某个力值(如Fz)时,减小压力,确保均匀打磨。

  • 装配任务:机器人执行插入或对接任务时,可以通过力/力矩传感器感知接触力,确保机器人在与物体接触时不会过度施力,以免损坏精密部件。

3. 支持传感器

  • 现场总线设备

        现场总线设备可以通过 RSI 的输入 / 输出系统进行连接。为此 RSI 访问机器人控制系统的现有现场总线系统。

  • 传感器系统 ATI NET F/T (推荐)
  • 传感器系统 ATI DAQ F/T

4. 通讯

        ForceTorqueControl 使用 RSI 实现机器人控制系统和传感器系统之间的数据交换。因此,机器人控制系统可以通过一个总线系统或者以太网与传感器系统进行通信。
        通信的方式取决于所使用的传感器:
  •  现场总线设备:
        通过现场总线系统进行通信并且通过 RSI 的输入 / 输出系统连接。
  • 传感器系统 ATI NET F/T:
        通过机器人控制系统的以太网接口 (KLI)通信
  • 传感器系统 ATI DAQ F/T:
        通过一个总线系统通讯。建议使用 Beckhoff 公司的 EtherCAT 总线设备耦合器。为了配置传感器系统 ATI DAQ F/T 或现场总线设备,需要以下软件:WorkVisual 5.0
  • ATI NET F/T:

    • 采用网络接口(通常是以太网),使用TCP/IP或UDP协议进行通讯。
    • 适合需要远程连接和快速数据传输的应用。
    • 提供更高的灵活性和可扩展性,特别是在需要多个传感器和系统集成时。
  • ATI DAQ F/T:

    • 主要通过数据采集(DAQ)接口进行连接,通常使用模拟信号输出(如电压或电流信号)。
    • 适合直接与数据采集设备连接的应用,通常用于需要较低延迟和高频率采样的场景。
本机使用NET六维力传感器。
1 机器人控制系统
2 KUKA FT-NET 外部控制箱
3 以太网至 KLI 的电缆
4 传感器导线
5 带有传感器电缆的拖链
6 NET F/T 传感器

5.运动方式

5.1 传感器引导的运动

说明: 如果机器人执行一个传感器引导的运动,则机器人不接近编程的目标,而是基于已测量的传感器数据从起点开始移动。机器人移动,直到满足一个已定义的中断条件。为了移动机器人,可以调节用于最多 6 个自由度 ( Fx, Fy, Fz, Tx, Ty, Tz ) 的额定力量和力矩。选择一个基准坐标系作为参考系。

示例: 机器人在刀具坐标系中按 Z 方向移动,直到达到定义的额定力 100 N 为止。

5.2 重叠式力 / 力矩控制

说明: 机器人按已编程的轨迹移动。机器人以定义的额定力量和力矩沿着该轨迹移动。可以调节用于最多 6 个自由度 ( Fx, Fy, Fz, Tx, Ty, Tz ) 的额定力量和力矩。选择一个基准坐标系作为参考系。可以用重叠式力 / 力矩控制完成下面的运动方式:
        PTP,LIN,CIRC ,SLIN,SCIRC
  • LINCIRC 是较为基础的线性和圆弧运动指令,适用于简单的点到点或圆弧运动。
  • SLINSCIRC 则是更高级的运动指令,利用样条插值来确保机器人运动的平滑性,特别适用于复杂轨迹和连续运动的应用场景。

示例:机器人按照一个在基础坐标系中编程的轨迹在 XY 平面上移动。此外,机器人沿着编程的轨迹在 Z 方向上施加定义的额定力 100 N。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/bicheng/56510.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

【高分论文密码】AI赋能大尺度空间模拟与不确定性分析及数字制图

随着AI大语言模型的广泛应用,大尺度空间模拟预测与数字制图技术在不确定性分析中的重要性日益凸显。这些技术已经成为撰写高分SCI论文的关键工具,被誉为“高分论文密码”。大尺度模拟技术能够从不同的时空尺度揭示农业生态环境领域的内在机理和时空变化规…

JAVA开源项目 课程智能组卷系统 计算机毕业设计

本文项目编号 T 009 ,文末自助获取源码 \color{red}{T009,文末自助获取源码} T009,文末自助获取源码 目录 一、系统介绍二、演示录屏三、启动教程四、功能截图五、文案资料5.1 选题背景5.2 国内外研究现状5.3 可行性分析 六、核心代码6.1 老…

【JAVA毕业设计】基于Vue和SpringBoot的医院电子病历管理系统

本文项目编号 T 008 ,文末自助获取源码 \color{red}{T008,文末自助获取源码} T008,文末自助获取源码 目录 一、系统介绍二、演示录屏三、启动教程四、功能截图五、文案资料5.1 选题背景5.2 国内外研究现状5.3 可行性分析 六、核心代码6.1 医…

python自动化办公实例(使用openpyxl、os处理统计Excel表中的数据并将其合并)

源数据格式 以其中一个表格为例 可以看到表中数据比较杂乱且并没有我们想要的数据、指标(如一等奖、二等奖的数量)不利于下一步数据的分析。所以我们需要手动对数据进行一些处理,大致格式如下: 数据处理格式 这里的手动处理可以…

基础算法(6)——模拟

1. 替换所有的问号 题目描述: 算法思路: 从前往后遍历整个字符串,找到问号之后,尝试用 a ~ z 的每一个字符替换即可 注意点:需考虑数组开头和结尾是问号的边界情况 代码实现: class Solution {public …

《深度学习》OpenCV FisherFaces算法人脸识别 原理及案例解析

目录 一、FisherFaces算法 1、什么是FisherFaces算法 2、原理 3、特点 4、算法步骤 1)数据预处理 2)特征提取 3)LDA降维 4)特征投影 5)人脸识别 二、案例解析 1、完整代码 运行结果: 一、Fish…

【题解】【记忆化递归】——Function

【题解】【记忆化递归】——Function Function题目描述输入格式输出格式输入输出样例输入 #1输出 #1 提示数据规模与约定 1.思路解析2.AC代码 Function 通往洛谷的传送门 题目描述 对于一个递归函数 w ( a , b , c ) w(a,b,c) w(a,b,c) 如果 a ≤ 0 a \le 0 a≤0 或 b ≤…

阿里Dataworks使用循环节点和赋值节点完成对mongodb分表数据同步

背景 需求将MongoDB数据入仓MaxCompute 环境说明 MongoDB 100个Collections:orders_1、orders_2、…、orders_100 前期准备 1、MongoDB数据源配置 需要先保证DW和MongoDB网络是能够联通的,需要现在集成任务中配置MongoDB的数据源信息。 具体可以查…

项目分析:自然语言处理(语言情感分析)

在这个信息爆炸的时代,我们每天都在与海量的文本数据打交道。从社交媒体上的帖子、在线评论到新闻报道,文本信息无处不在。然而,这些文本不仅仅是文字的堆砌,它们背后蕴含着丰富的情感和观点。如何有效地理解和分析这些情感&#…

Linux下的防病毒软件(Antivirus software for Linux)

💝💝💝欢迎来到我的博客,很高兴能够在这里和您见面!希望您在这里可以感受到一份轻松愉快的氛围,不仅可以获得有趣的内容和知识,也可以畅所欲言、分享您的想法和见解。 本人主要分享计算机核心技…

FFmpeg的简单使用【Windows】--- 指定视频的时长

目录 功能描述 效果展示 代码实现 前端代码 后端代码 routers 》users.js routers 》 index.js app.js 功能描述 此案例是在上一个案例【FFmpeg的简单使用【Windows】--- 视频混剪添加背景音乐-CSDN博客】的基础上的进一步完善,可以先去看上一个案例然后再…

docker环境安装mongoDB实现平滑迁移实战

docker环境安装mongoDB实现平滑迁移实战 一、备份原始数据(从别的服务器备份到当前服务器)二、数据迁移三、迁移过程日志打印四、验证迁移数据准确性 一、备份原始数据(从别的服务器备份到当前服务器) 使用mongodump工具对原始mo…

Java发送请求实现QPS限制

业务场景 在开发中,当有业务需求需要调用第三方服务实现功能,但是服务接口有QPS限制,所以我们需要在发送请求时限制发送频率防止请求失败。 实现方法 使用 Java Semaphore 类来实现控制请求QPS QPS限制 Component public class QPSControll…

MySQL 8.4修改user的host属性值

MySQL 8.4修改user的host属性值 update mysql.user set host localhost where user mysql用户名; MySQL 8.4修改初始化后的默认密码-CSDN博客文章浏览阅读804次,点赞6次,收藏11次。先下载mysql的zip压缩包:MySQL :: Download MySQL Communi…

STL-string

STL的六大组件&#xff1a; string // string constructor #include <iostream> #include <string> using namespace std; int main() {// 构造std::string s0("Initial string");std::string s1; //nullptrstd::string s2("A character sequenc…

【在Linux世界中追寻伟大的One Piece】Jsoncpp|序列化

目录 1 -> Jsoncpp 1.1 -> 特性 1.2 -> 安装 2 -> 序列化 3 -> 反序列化 4 -> Json::Value 1 -> Jsoncpp Jsoncpp是一个用于处理JSON数据的C库。它提供了将JSON数据序列化为字符串以及从字符串反序列化为C数据结构的功能。Jsoncpp是开源的&#xf…

RHCSA复习题

第一~七章 1.创建以下目录和文件结构&#xff0c;并将/yasuo目录拷贝4份到/目录下。 [rootlocalhost ~]# mkdir /yasuo [rootlocalhost ~]# mkdir /yasuo/dir1 [rootlocalhost ~]# cd /yasuo/dir1 [rootlocalhost dir1]# touch hostname hostname02 passwd ssh_config sshd [r…

F5-TTS开源项目详解:非自回归语音合成技术革新与应用场景

在现代科技的推动下&#xff0c;语音合成技术取得了长足的进步。随着越来越多的场景开始依赖语音交互&#xff0c;如何高效、自然地生成语音成为了行业的一个重要课题。今天我们要讨论的是一个在语音合成领域备受瞩目的开源项目——F5-TTS。它不仅采用了非自回归架构&#xff0…

Arduino配置ESP32环境

Arduino配置ESP32环境 引言一、IDE下载教程操作取巧方法 二、社区安装包三、官方手动安装 引言 最近入手了一款ESP32-C3的开发板&#xff0c;想继续沿用现有Arduino IDE&#xff0c;网上看了很多方法&#xff0c;大致分了三类&#xff1a;IDE下载、社区安装包、github手动配置…

南京邮电大学电工电子A实验十一(数据选择器及逻辑电路的动态测试)

文章目录 一、实验报告预览二、Word版本报告下载 一、实验报告预览 二、Word版本报告下载 点我