末端工具重力辨识

news2025/1/8 5:05:56

辨识工具重力

法一:6点标定

已知,工件重力在世界坐标系的大小为 { 0 , 0 , − G } \{0,0,-G\} {0,0,G},假设工件重心在工具坐标系下的坐标为 { L x , L y , L z } \{L_x,L_y,L_z\} {Lx,Ly,Lz},重力在工件的三个坐标轴分量为 { G x , G y , G z } \{G_x,G_y,G_z\} {Gx,Gy,Gz},重力矩在三个坐标轴的分量为 { M x , M y , M z } \{M_x,M_y,M_z\} {Mx,My,Mz}

根据力和力矩关系:
{ M x = G z ∗ L y − G y ∗ L z M y = G x ∗ L z − G z ∗ L x M z = G y ∗ L x − G x ∗ L y (1) \begin{cases} M_x=G_z*L_y-G_y*L_z \\ M_y=G_x*L_z-G_z*L_x\\\tag1 M_z=G_y*L_x-G_x*L_y \end{cases} Mx=GzLyGyLzMy=GxLzGzLxMz=GyLxGxLy(1)
求重力 G G G 与质心数据 { L x , L y , L z } \{L_x,L_y,L_z\} {Lx,Ly,Lz},先测量力传感器处于这几个姿态下的力传感器读数:

在这里插入图片描述
在这里插入图片描述
计算质量数据和质心数据:

G = F z 2 − F z 1 + F x 4 − F x 3 + F y 6 − F y 5 6 G=\frac{F_{z2}-F_{z1}+F_{x4}-F_{x3}+F_{y6}-F_{y5}}{6} G=6Fz2Fz1+Fx4Fx3+Fy6Fy5

L x = T y 1 − T y 2 + T z 6 − T z 5 4 G L_x=\frac{T_{y1}-T_{y2}+T_{z6}-T_{z5}}{4G} Lx=4GTy1Ty2+Tz6Tz5

L y = T x 2 − T x 1 + T z 3 − T z 4 4 G L_y=\frac{T_{x2}-T_{x1}+T_{z3}-T_{z4}}{4G} Ly=4GTx2Tx1+Tz3Tz4

L z = T y 4 − T y 3 + T x 5 − T x 6 4 G L_z=\frac{T_{y4}-T_{y3}+T_{x5}-T_{x6}}{4G} Lz=4GTy4Ty3+Tx5Tx6

法二:最小二乘参数辨识

将式一写成矩阵的形式

[ M x M y M z ] = [ 0 F z − F y − F z 0 F x F y − F x 0 ] [ x y z ] \begin{bmatrix} M_x \\ M_y\\M_z \end{bmatrix}=\begin{bmatrix} 0& F_z& -F_y \\ -F_z& 0& F_x\\F_y&-F_x&0\\\end{bmatrix}\begin{bmatrix} x \\ y\\z \end{bmatrix} MxMyMz = 0FzFyFz0FxFyFx0 xyz

控制机器人变换末端姿态,取N个不同的负载姿态,为了避免矩阵奇异,至少要求有三个姿态下机器人末端的指向向量不共面,且尽量不接近共面。根据N组传感器数据可得:

[ M x 1 M y 1 M z 1 M x 2 M y 2 M z 2 . . . M x N M y N M z N ] = [ 0 F z 1 − F y 1 − F z 1 0 F x 1 F y 1 F x 1 0 0 F z 2 − F y 2 − F z 2 0 F x 2 F y 2 − F x 2 0 . . . . . . . . . 0 F z N − F y N − F z N 0 F x N F y N − F x N 0 ] [ x y z ] \begin{bmatrix} M_{x1} \\ M_{y1}\\M_{z1}\\ M_{x2} \\ M_{y2}\\M_{z2}\\ .\\.\\.\\M_{xN} \\ M_{yN}\\M_{zN}\\ \end{bmatrix}=\begin{bmatrix} 0& F_{z1}& -F_{y1} \\ -F_{z1}& 0& F_{x1}\\F_{y1}&F_{x1}&0\\ 0& F_{z2}& -F_{y2} \\ -F_{z2}& 0& F_{x2}\\F_{y2}&-F_{x2}&0\\ .&.&.\\ .&.&.\\ .&.&.\\ 0& F_{zN}& -F_{yN} \\ -F_{zN}& 0& F_{xN}\\F_{yN}&-F_{xN}&0\\ \end{bmatrix}\begin{bmatrix} x \\ y\\z \end{bmatrix} Mx1My1Mz1Mx2My2Mz2...MxNMyNMzN = 0Fz1Fy10Fz2Fy2...0FzNFyNFz10Fx1Fz20Fx2...FzN0FxNFy1Fx10Fy2Fx20...FyNFxN0 xyz

m = F p \boldsymbol{m}=F \boldsymbol{p} m=Fp
由伪逆得:
p = ( F T F ) − 1 F T m \boldsymbol{p}=(F^TF)^{-1}F^T\boldsymbol{m} p=(FTF)1FTm

两种方法在实际情况不太好实现,即使调零了,变换一下方向六维力传感器的读数也会变化,在工具不重的情况下影响很大,所以最好每个使用的位姿,都调一下零,或者知道六维力传感器的初始读数。

如何对末端工具进行补偿

已知工具重力在base坐标系(b)下的方向为 b P g = { 0 ; 0 ; − G } ^bP_g=\{0;0;-G\} bPg={0;0;G},在工具坐标系(t)中的坐标为 L = { 0 ; 0 ; l Z } L=\{0;0;l_Z\} L={0;0;lZ}, 求 G x , G y , G z , T g x , T g y , T g z G_x,G_y,G_z,T_{gx},T_{gy},T_{gz} Gx,Gy,Gz,Tgx,Tgy,Tgz

则在工具坐标系下,重力的方向为:

t P = b a s e t R ⋅ b P g ^{t}P=^t_{base}R \cdot ^bP_g tP=basetRbPg

力矩大小为:
n = L × t P n=L×^{t}P n=L×tP

参考文献,
[1]张立建,胡瑞钦,易旺民.基于六维力传感器的工业机器人末端负载受力感知研究[J].自动化学报,2017,43(03):439-447.DOI:10.16383/j.aas.2017.c150753.
[2]赵敏. 装配机器人作业过程控制系统应用与软件开发[D].东南大学,2016.

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

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

相关文章

Docker安装MySQL8数据库

🎈 作者:互联网-小啊宇 🎈 简介: CSDN 运维领域创作者、阿里云专家博主。目前从事 Kubernetes运维相关工作,擅长Linux系统运维、开源监控软件维护、Kubernetes容器技术、CI/CD持续集成、自动化运维、开源软件部署维护…

为什么要拒绝嵌套代码?

linux 内核的最早作者 linus torvalds 在 linux 内核样式指南 第一节中提到: if you need more than 3 levels of indentation, you’re screwed anyway, and should fix your program. 如果你需要超过3级的缩进,你无论如何都搞砸了,应该修复…

ABBYY15免费照片识别文字识别软件

照片识别文字的软件有哪些?在日常的工作的时候,小伙伴们是不是经常会借助拍摄照片记录一些比较重要的事情或者是一些比较重要的笔记,等回头空闲出来的时候在去整理,那么这时候,如果我们运用好图片识别文字这项技术&…

线性代数篇

主线为花书第二章-线性代数,但其上面一些表述属实费解,于是参考B站3Blue1Brown线性代数和B站同济子豪兄的视频讲解。 先放一句3B1B的话共勉,伙计们不要被数学公式吓到,慢慢钻研,慢慢推肯定能学懂。线性代数这一部分相信…

cannot redeclare block-scoped variable

使用 Vue3.0 的时在模块类中声明方法的时候抛出了如下的异常:cannot redeclare block-scoped variable解决办法检查是否集成了 Vetur 插件,若存在禁用或卸载即可,该插件Vue3.0 的时候会冲突;Vue3.0 集成如下两款即可:名称: TypeScript Vue Plugin (Volar)ID: Vue.vscode-typesc…

Qt 自定义控件 带UI 不带 UI

一般自定义控件原因 有时Qt 现有控件不能满足我们的开发需求,这时候就需要我们进行自定义控件的使用,自定义控件,这大大提高了设计UI的通用性,程序利用,封装; Part1 easy one 继续 Lab 自定义Label控件:文本太长省略…

机械设备管理系统如何帮助企业做好成本核算管理?

随着多元化市场经济的深入发展,机械设备制造企业面临的竞争压力也越来越大,企业要想在激烈的市场环境中生存下去,就得不断提高竞争力。企业提高自身竞争能力最为重要一个途径便是不断提高企业的成本核算及管控能力,降低企业经营成…

java使用导出百万级别数据

用过POI的人都知道,在POI以前的版本中并不支持大数据量的处理,如果数据量过多还会常报OOM错误, 这时候调整JVM的配置参数也不是一个好对策(注:jdk在32位系统中支持的内存不能超过2个G,而在64位中没有限制&a…

栈、堆、全局区/静态存储区、常量区、代码段、到底是什么?

一、程序运行内存分布图 我们知道一个由我们编写好的程序,运行时,我们的程序中写的代码,定义的变量,写的函数、for 循环等等,这些运行时都分布在内存中的哪里吗? 一下是一个程序运行时 内存的各个区域的分…

C语言字符串指针(指向字符串的指针)详解

C语言中没有特定的字符串类型&#xff0c;我们通常是将字符串放在一个字符数组中&#xff0c;这里演示一下&#xff1a;#include<stdio.h> #include<string.h>intmain(){ char str[]"http://csdn.net"; int len strlen(str), i; //直接输出字符串 printf…

一套完全开源,支持多租户,界面配置单点的后端框架JVS,赶紧收藏

今天推荐的这个项目是「JVS数据全家桶中的 JVS微服务框架」—— 是一个免费开源的中后台模版&#xff0c;使用了最新的 vuespring cloud 主流技术开发&#xff0c;开箱即用的中后台前端解决方案&#xff0c;可以直接商用&#xff0c;并且这个脚手架上做了很多商业上的扩展&…

day19 二叉树 | 654、最大二叉树 617、合并二叉树 700、二叉搜索树中的搜索 98、验证二叉搜索树

题目 654、最大二叉树 给定一个不含重复元素的整数数组。一个以此数组构建的最大二叉树定义如下&#xff1a; 二叉树的根是数组中的最大元素。左子树是通过数组中最大值左边部分构造出的最大二叉树。右子树是通过数组中最大值右边部分构造出的最大二叉树。 通过给定的数组构…

数据中心转型利润中心:数据如何赋能零售行业营销升级?

通过大数据来提升营销效果已经是零售行业不同业态都绕不过去的话题。以往&#xff0c;市场团队在进行投放时需要依靠营销团队和销售团队的经验来判断&#xff0c;这样的营销策略较为粗放&#xff0c;对用户的感知也不精准&#xff0c;一般都是在海量投放后被动的等待营销反馈。…

C++代码优化(2):条款5~12

"然后自然老去吧&#xff0c;别再依依惜别了"条款5:了解C默默编写并调用了哪些函数(1)小试牛刀地回顾C编译器为类提供的默认函数很多人知道是有6个的。默认构造、拷贝构造、赋值重载、析构函数、重载取地址运算符&#xff0c;但是在C11更新后&#xff0c;又为类对象增…

软件测试项目实战,我们拿到项目第一步应该怎么做【附过程文档】

对于从事软件研发的组织来说&#xff0c;工作类型至少包括项目管理、产品设计、编码、测试、质量保证和软件配置管理&#xff0c;以及其它人员&#xff0c;如文档编制人员和美工人员/系统硬件管理人员等。根据职能需要&#xff0c;可以以半独立方式进行部门和项目的矩阵管理&am…

Let’s Encrypt共建安全的互联网

导读最近关于沃通和 StartCom 这两家 CA 公司的消息让人们再次关注到了网络隐私和安全的问题。随着 Mozilla、苹果和谷歌对这两家 CA 公司处罚落定&#xff0c;很多使用这两家 CA 所签发证书的网站纷纷寻求新的证书签发商。这里面固然有不少可信赖的 CA 公司可以提供服务&#…

UniRx之基本语法格式

前言 想要更好的去学习UniRx&#xff0c;我们最好是先理解UniRx 的语法格式。就像我们去学习英语或者汉语一样&#xff0c;理解了基本的语法规则后&#xff0c;再学其他的就信手拈来了。 语法示例 下面我们来看一个最简单的示例&#xff0c; Observable.EveryUpdate().Where…

Git安装,配置及Gitee项目代码pull到本地

一、Git安装从git官网下载&#xff1a;https://git-scm.com/downloads选择适合的版本进入下载&#xff0c;然后傻瓜式安装直到结束。检查安装是否成功&#xff1a;进入任意文件夹点击右键选择Git Bash Here进行基本配置输入如下命令&#xff1a;git --version就会显示当前安装的…

【Windows】ip地址修改器v5.0.5.4

简介 IP地址修改器&#xff0c;一款能够快速的切换IP地址&#xff0c;在几个不同的固定IP之间进行切换&#xff0c;手动输太麻烦&#xff0c;所以可以用到这款IP地址修改器&#xff01; 下载 ip地址修改器v5.0.5.4 软件介绍 程序主要原理还是利用了WMI的Win32_NetworkAda…

二叉搜索树,平衡二叉树,红黑树,B树,B+树

文章目录二叉树&#xff08;BT&#xff09;1. 满二叉树2. 完全二叉树二叉搜索树&#xff08;BST&#xff09;平衡二叉搜索树&#xff08;AVL&#xff09;1. 定义2. 如何保持平衡——旋转红黑树&#xff08;RBTree&#xff09;1.定义2.红黑规则3.插入规则B树1.定义2.在磁盘系统中…