CN110053054B - 基于Android手机IMU的机械臂示教方法 - Google Patents

基于Android手机IMU的机械臂示教方法 Download PDF

Info

Publication number
CN110053054B
CN110053054B CN201910280528.1A CN201910280528A CN110053054B CN 110053054 B CN110053054 B CN 110053054B CN 201910280528 A CN201910280528 A CN 201910280528A CN 110053054 B CN110053054 B CN 110053054B
Authority
CN
China
Prior art keywords
mobile phone
mechanical arm
android mobile
imu
android
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201910280528.1A
Other languages
English (en)
Other versions
CN110053054A (zh
Inventor
徐建明
赵智鹏
董建伟
周巧倩
何德峰
朱俊威
张文安
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Zhejiang University of Technology ZJUT
Original Assignee
Zhejiang University of Technology ZJUT
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Zhejiang University of Technology ZJUT filed Critical Zhejiang University of Technology ZJUT
Priority to CN201910280528.1A priority Critical patent/CN110053054B/zh
Publication of CN110053054A publication Critical patent/CN110053054A/zh
Application granted granted Critical
Publication of CN110053054B publication Critical patent/CN110053054B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/0081Programme-controlled manipulators with master teach-in means

Landscapes

  • Engineering & Computer Science (AREA)
  • Robotics (AREA)
  • Mechanical Engineering (AREA)
  • Manipulator (AREA)

Abstract

一种基于Android手机IMU的机械臂示教方法,包括如下步骤:标定固连手机的坐标系与机械臂末端执行器坐标系,依据Android操作系统底层函数接口调用IMU加速度数据ax、ay、az以及陀螺仪数据gx、gy、gz,执行自定姿态解析器方法并通过OpenGLES绘制动态图,根据Android手机端发送的俯仰角
Figure DDA0002021503200000011
偏航角θ与横滚角γ进行逆运动学求解并控制驱动器运行,Android手机接收驱动器反馈位移数据构造控制误差并进行PI修正。

Description

基于Android手机IMU的机械臂示教方法
技术领域
本发明涉及一种利用Android手机进行机械臂示教的方法。
背景技术
随着现代化工业的迅速发展以及“工业4.0”概念的提出,人们对于工业生产的要求越来越高。作为工业生产的重要一部分,工业机器人凭借其生产效率、工作精度以及成本等方面诸多优势,也越来越受到关注。示教器是工业机器人的重要组成部分,其功能以及操作的便捷性快速成为国内外的研究重点。
传统机器人示教器通过示教器上的按钮对机器人进行编程来控制机器人的运动,这使得示教器有着笨重的外壳,操作的便捷性很难得到保证。同时,市场上诸多厂商生产的机器人大都有自己研发控制器,示教器依赖不同的控制器很难进行平台间的移植。
随着各种移动终端的普及,机器人示教器也向着便携式的方向发展,目前,市场上针对移动智能终端开发的操作系统主要有苹果公司的iOS系统,谷歌公司的Android系统以及微软的Windows Phone系统。其中,Android操作系统以其强大的开放性、丰富的第三方开发、优秀的内置服务、Google强大的长期维护支持等特点,在机器人示教器行业应用较为广泛。
发明内容
本发明针对传统示教器外壳笨重,难以提供便捷操作,不同平台间可移植性差的缺点,提出一种适用于工业机械臂基于Android手机的示教方法。
本发明基于Android操作系统,通过调用手机内嵌式IMU数据,实时计算手机在三维空间中的姿态以及固连手机端坐标系各个轴上的速度、位移,将其给定为机械臂末端姿态与数据,通过控制器逆运动学求解实现路径跟踪,以达到机械臂示教目的。
一种基于Android手机IMU的机械臂示教方法,具体步骤如下:
(1)标定坐标系,设固连在手机上的IMU空间坐标系为x-y-z,机械臂末端执行器的坐标系为x'-y'-z',调整手机姿态,使得固连在手机上的传感器坐标轴x与机械臂末端执行器坐标轴x'重合,y轴与y'轴重合,z轴与z'轴重合。
(2)Android手机端采用如图1所示的姿态解析器,设定计算周期T,利用Android系统自带的底层接口函数获取嵌入式IMU器件采集到的加速度信号与陀螺仪信号,以此作为输入,进行姿态解析运算。同时,适当选取低通滤波系数β以滤除加速度计中的重力加速度成分来获得线性加速度值。位移xn与线性加速度an满足:
Figure BDA0002021503180000021
速度vn与线性加速度的关系为:
vn=anT (2)
对于轨迹路径的计算采用分段式,由于IMU传感器具有一定的误差,实验测定Android手机静止状态下各轴速度输出均值为vstop,当|vn|<vstop时,Android手机端判定为静止状态,此时设定vn=0m/s。因此,一条完整的示教路径可以被分解为若干条初速度为0m/s的直线运动轨迹。调节姿态解析器中的PI控制器参数Kp,Ki,可得到较为理想的控制效果。手机的空间姿态通过OpenGLES实时绘制在屏幕上,并将四元数q0,q1,q2,q3转化为俯仰角
Figure BDA0002021503180000022
偏航角θ与横滚角γ,其中:
Figure BDA0002021503180000023
Figure BDA0002021503180000024
Figure BDA0002021503180000025
将姿态角与速度值包装成数据报通过Socket发送给Staubli机器人控制器。
(3)Staubli机器人控制器接收到Android手机发送的数据进行逆运动学求解并执行控制,将执行后末端执行器运动的位移通过Socket发送给Android手机端。
(4)Android手机接收控制器发送的位移数据x',结合步骤(2)中的位移xn构造位移误差ex,即
ex=xn-x' (6)
然后对ex做PI运算,结果计入下一周期的速度运算。
(5)重复运行步骤(1)、(2)、(3)、(4)。
优选地,步骤(1)中标定坐标系,通过事先调整手机姿态使得固连坐标系与机械臂末端执行器坐标系重合,使得之后的各项运算不用考虑坐标系映射关系,简化了计算步骤,节省CPU计算开销。
优选地,步骤(2)所述的利用低通滤波器滤除加速度计中的重力加速度成分来获得线性加速度值,具体是选取滤波系数β使得滤波器既能较准确的过滤重力,又能保证稳定的滤波效果。
优选地,步骤(2)所述的轨迹路径分段式计算方法,通过构造死区:
Figure BDA0002021503180000031
滤除了加速度计数据“漂移”现象所产生的影响,同时使得轨迹路径能够用多段直线运动来近似表示。
优选地,步骤(2)所述的误差的具体处理方法是:通过机械臂控制器Socket发送的数据与Android手机端计算数据构造误差表达式,采用PI反馈控制,将误差规划到下一周期的运算中,能够有效降低本发明运行中的动态误差。
优选地,步骤(2)中所需要计算的速度加速度传感器经过均值滤波方法得到较为平滑的加速度数据后积分得到:如图1所示,已知加速度传感器采样周期T内连续10次的采样值分别为a0,a1,…,a9,经均值滤波,T时间端内的平均速度
Figure BDA0002021503180000032
满足下式
Figure BDA0002021503180000033
优选地,步骤(2)中采用Mahony互补滤波算法融合陀螺仪与加速度计数据进行姿态解析计算。将算法实现步骤封装成输入为三轴加速度数据与陀螺仪数据的姿态解析器,其中,通过陀螺仪的积分来获得四轴的旋转角度,再利用加速度计的比例积分运算来修正陀螺仪的积分结果。具体算法步骤如下:
(1)将加速度计的数据进行归一化处理,已知x轴加速度ax,y轴加速度ay,z轴加速度az,得到归一化后x轴加速度
Figure BDA0002021503180000041
y轴加速度
Figure BDA0002021503180000042
z轴加速度
Figure BDA0002021503180000043
Figure BDA0002021503180000044
Figure BDA0002021503180000045
Figure BDA0002021503180000046
(2)根据当前姿态的四元数值q0,q1,q2,q3估算出x,y,z三轴重力分量
Figure BDA0002021503180000047
用于和加速度计实际测量得到的各轴重力分量进行对比。
Figure BDA0002021503180000048
Figure BDA0002021503180000049
Figure BDA00020215031800000410
(3)利用叉积计算估计的重力和实际的重力两个向量之间的误差,x轴误差为ex,y轴误差为ey,z轴误差为ez
Figure BDA00020215031800000411
Figure BDA00020215031800000412
Figure BDA00020215031800000413
(4)在t0时刻,将计算得到的x,y,z轴误差进行PI运算,比例增益为Kp,积分系数为Ki,得到的结果用于修正陀螺仪数据,x轴陀螺仪测量值为gx,y轴陀螺仪测量值为gy,z轴测量值为gz
Figure BDA00020215031800000414
Figure BDA00020215031800000415
Figure BDA00020215031800000416
(5)利用一阶近似毕卡算法更新四元数,得到经过T时间后新的姿态的四元数。
Figure BDA0002021503180000051
Figure BDA0002021503180000052
Figure BDA0002021503180000053
Figure BDA0002021503180000054
优选地,步骤(2)中线性加速度值由加速度计经过一阶低通滤波算法得到,滤波系数β大小取决于t/(t+dt),当前采样值为X(n),当前滤波输出值为Y(n),上一周期滤波输出值为Y(n-1)滤波算法公式为:
Y(n)=βX(n)+(1-β)Y(n-1) (25)
一阶低通滤波法采用本次采样值与上次滤波输出值进行加权,使得输出对输入又反馈作用。可见,β对滤波结果有很大影响,β偏大,则结果更偏向于当前采样值,系统灵敏度高,滤波效果不稳定;β偏小,结果偏向于前一周期滤波输出值,系统滤波效果稳定,但对于数据起伏变化敏感度较小。
本发明的优点是:利用Android手机嵌入式IMU数据计算手机姿态,并将计算结果反馈给控制器,实现了对机械臂的便捷示教;对于不同生产商的机械臂都具有适用性。
附图说明
图1为本发明的姿态解析器系统结构图。
图2为本发明实施例控制系统框图,系统采用位移反馈PI控制。
具体实施方式
以下结合附图和实施例对本发明技术方案作进一步描述。
实施例
以本发明配合STAUBLI TX90机械臂使用为例,具体实施本发明的步骤如下:
(1)标定坐标系,设固连在手机上的IMU空间坐标系为x-y-z,机械臂末端执行器的坐标系为x'-y'-z',调整手机姿态,使得固连在手机上的传感器坐标轴x与机械臂末端执行器坐标轴x'重合,y轴与y'轴重合,z轴与z'轴重合。
(2)Android手机端采用如图1所示的姿态解析器,设定计算周期T,利用An droid系统自带的底层接口函数获取嵌入式IMU器件采集到的加速度信号与陀螺仪信号,以此作为输入,进行姿态解析运算。同时,适当选取低通滤波系数β以滤除加速度计中的重力加速度成分来获得线性加速度值。位移xn与线性加速度an满足公式(1),速度vn与线性加速度的关系满足公式(2)。对于轨迹路径的计算采用分段式,由于IMU传感器具有一定的误差,实验测定Android手机静止状态下各轴速度输出均值为vstop,当|vn|<vstop时,Android手机端判定为静止状态,此时设定vn=0m/s。因此,一条完整的示教路径可以被分解为若干条初速度为0m/s的直线运动轨迹。调节姿态解析器中的PI控制器参数Kp,Ki,可得到较为理想的控制效果。手机的空间姿态通过OpenGLES实时绘制在屏幕上,并将四元数q0,q1,q2,q3转化为俯仰角
Figure BDA0002021503180000061
偏航角θ与横滚角γ,转换关系如公式(3)、(4)、(5)所示,将姿态角与速度值包装成数据报通过Socket发送给Staubli机器人控制器。
(3)Staubli机器人控制器接收到Android手机发送的数据进行逆运动学求解并执行控制,将执行后末端执行器运动的位移通过Socket发送给Android手机端。
(4)Android手机接收控制器发送的位移数据x',结合步骤(2)中的位移xn构造如公式(6)位移误差ex,然后对ex做PI运算,结果计入下一周期的速度运算。
(5)重复运行步骤(1)、(2)、(3)、(4)。
通过以上设计的姿态解析器以及PI控制,结合Socket网络通信,实现了对StaubliTX90机械臂的运动轨迹示教。因此,通过实施本发明方法,实现了机械臂的智能示教,同时,由于Android系统基于Linux的架构,使得本发明方法在应对不同厂商生产的机械臂时具有较高的可移植性。

Claims (5)

1.一种基于Android手机IMU的机械臂示教方法,具体步骤如下:
(1)标定坐标系,设固连在手机上的IMU空间坐标系为x-y-z,机械臂末端执行器的坐标系为x'-y'-z',调整手机姿态,使得固连在手机上的传感器坐标轴x与机械臂末端执行器坐标轴x'重合,y轴与y'轴重合,z轴与z'轴重合;
(2)Android手机端采用姿态解析器,设定计算周期T,利用Android系统自带的底层接口函数获取嵌入式IMU器件采集到的加速度信号与陀螺仪信号,以此作为输入,进行姿态解析运算;同时,利用低通滤波器滤除加速度计中的重力加速度成分来获得线性加速度值;位移xn与线性加速度an满足:
Figure FDA0002496202130000011
速度vn与线性加速度的关系为:
vn=anT (2)
对于轨迹路径的计算采用分段式,由于IMU传感器具有一定的误差,实验测定Android手机静止状态下各轴速度输出均值为vstop,因此当|vn|<vstop时,Android手机端判定为静止状态,此时设定vn=0m/s;因此,一条完整的示教路径可以被分解为若干条初速度为0m/s的直线运动轨迹;调节姿态解析器中的PI控制器参数为Kp,Ki可得到较为理想的控制效果;手机的空间姿态通过OpenGLES实时绘制在屏幕上,并将四元数q0,q1,q2,q3转化为俯仰角
Figure FDA0002496202130000012
偏航角θ与横滚角γ,其中:
Figure FDA0002496202130000013
Figure FDA0002496202130000014
Figure FDA0002496202130000015
将姿态角与速度值包装成数据报通过Socket发送给Staubli机器人控制器;
(3)Staubli机器人控制器接收到Android手机发送的数据进行逆运动学求解并执行控制,将执行后末端执行器运动的位移通过Socket发送给Android手机端;
(4)Android手机接收控制器发送的位移数据x',结合步骤(2)中的位移xn构造位移误差ex,即
ex=xn-x' (6)
然后对ex做PI运算,结果计入下一周期的速度运算;
(5)重复运行步骤(1)、(2)、(3)、(4)。
2.根据权利要求1所述的一种基于Android手机IMU的机械臂示教方法,其特征在于:在步骤(1)中标定坐标系,通过事先调整手机姿态使得固连坐标系与机械臂末端执行器坐标系重合,使得之后的各项运算不用考虑坐标系映射关系,简化了计算步骤,节省CPU计算开销。
3.根据权利要求1所述一种基于Android手机IMU的机械臂示教方法,其特征在于:步骤(2)所述的利用低通滤波器滤除加速度计中的重力加速度成分来获得线性加速度值,具体是选取滤波系数β使得滤波器既能较准确的过滤重力,又能保证稳定的滤波效果。
4.根据权利要求1所述一种基于Android手机IMU的机械臂示教方法,其特征在于:步骤(2)所述的轨迹路径分段式计算方法,通过构造死区:
Figure FDA0002496202130000021
滤除了加速度计数据“漂移”现象所产生的影响,同时使得轨迹路径能够用多段直线运动来近似表示。
5.根据权利要求1所述的一种基于Android手机IMU的机械臂示教方法,步骤(2)所述的误差的具体处理方法是:通过Socket发送的数据与Android手机端计算数据构造误差表达式,采用PI反馈控制,将误差规划到下一周期的运算中,能够有效降低本发明运行中的动态误差。
CN201910280528.1A 2019-04-09 2019-04-09 基于Android手机IMU的机械臂示教方法 Active CN110053054B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201910280528.1A CN110053054B (zh) 2019-04-09 2019-04-09 基于Android手机IMU的机械臂示教方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201910280528.1A CN110053054B (zh) 2019-04-09 2019-04-09 基于Android手机IMU的机械臂示教方法

Publications (2)

Publication Number Publication Date
CN110053054A CN110053054A (zh) 2019-07-26
CN110053054B true CN110053054B (zh) 2020-07-28

Family

ID=67318671

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910280528.1A Active CN110053054B (zh) 2019-04-09 2019-04-09 基于Android手机IMU的机械臂示教方法

Country Status (1)

Country Link
CN (1) CN110053054B (zh)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111531551A (zh) * 2020-04-22 2020-08-14 实时侠智能控制技术有限公司 一种使用通用平板电脑的安全示教器和示教方法
CN112987723B (zh) * 2021-02-04 2024-06-18 珠海一微半导体股份有限公司 一种基于智能终端控制的机器人系统

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100813668B1 (ko) * 2006-12-20 2008-03-14 한국생산기술연구원 안드로이드 로봇의 감정표현 방법
KR20120043865A (ko) * 2010-10-27 2012-05-07 주식회사 케이티 이동통신 단말의 위치정보를 활용한 로봇 인터랙션 서비스 제공 시스템, 방법 및 장치
JP5792226B2 (ja) * 2013-05-29 2015-10-07 株式会社神戸製鋼所 多関節リンク機構の逆運動学解法、及びこの逆運動学解法を利用した教示データ作成装置
KR20150044241A (ko) * 2013-10-16 2015-04-24 대우조선해양 주식회사 로봇 자세 교시장치 및 그 방법
US10059003B1 (en) * 2016-01-28 2018-08-28 X Development Llc Multi-resolution localization system
CN106182003A (zh) * 2016-08-01 2016-12-07 清华大学 一种机械臂示教方法、装置及系统
JP6939024B2 (ja) * 2017-03-31 2021-09-22 セイコーエプソン株式会社 ロボット制御装置、ロボットおよびロボットシステム
CN106863308B (zh) * 2017-04-14 2019-08-30 清研华翊(天津)教育科技有限公司 一种移动机器人轨迹修正控制算法
CN107309882B (zh) * 2017-08-14 2019-08-06 青岛理工大学 一种机器人示教编程系统及方法
CN108356817A (zh) * 2018-01-12 2018-08-03 宁波易拓智谱机器人有限公司 一种基于3d模型的示教方法

Also Published As

Publication number Publication date
CN110053054A (zh) 2019-07-26

Similar Documents

Publication Publication Date Title
CN111618857B (zh) 一种机械臂的多负载自适应重力补偿方法
CN108061855B (zh) 一种基于mems传感器的球形电机转子位置检测方法
CN110605721A (zh) 一种基于末端六维力传感器的机械臂拖动示教方法
CN110253574B (zh) 一种多任务机械臂位姿检测和误差补偿方法
CN105583824A (zh) 力控牵引和摆位的多自由度机械臂控制装置及其控制方法
CN110053054B (zh) 基于Android手机IMU的机械臂示教方法
CN111624941A (zh) 一种面向未知环境的六自由度机器人力控方法
CN104589304A (zh) 机器人控制装置以及机器人
CN107457783B (zh) 基于pd控制器的六自由度机械臂自适应智能检测方法
CN114216456B (zh) 一种基于imu与机器人本体参数融合的姿态测量方法
CN110977990A (zh) 一种基于末端六维力传感器的机械臂拖动示教方法
CN109352656B (zh) 一种具有时变输出约束的多关节机械臂控制方法
CN111590564A (zh) 一种六维力传感器重力补偿方法及系统
US20130338832A1 (en) Robot controller which conducts a force control by using a three-axial force sensor
CN111515928B (zh) 机械臂运动控制系统
CN112797979B (zh) 一种应用于agv的惯性姿态导航系统
CN114131617A (zh) 一种工业机器人的智能柔顺控制方法和装置
CN106092053A (zh) 一种机器人重复定位系统及其定位方法
CN110142764B (zh) 力矩姿态无线传感器的数据融合处理系统及处理方法
CN111397605A (zh) 一种基于惯性传感器的混凝土泵送车臂架姿态实时检测方法
CN113218249B (zh) 跟随式遥操作战车及控制方法
CN113580131A (zh) 一种基于动作映射的机械臂末端位姿控制装置及控制方法
CN113733155A (zh) 六轴工业机器人标定装置和标定方法
CN113848780B (zh) 一种多核异构处理器架构下的高机动平台姿态解算装置及方法
CN115674188B (zh) 基于双路滤波器的串联机械臂精确柔顺开环跟踪控制系统

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant