已阅读5页,还剩2页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
Whole-Body Control with (Self) Collision Avoidance Using Vector Field Inequalities Juan Jos Quiroz-Omaa and Bruno Vilhena Adorno, Senior Member, IEEE AbstractThis work uses vector fi eld inequalities (VFI) to prevent robot self-collisions and collisions with the workspace. Differently from previous approaches, the method is suitable for both velocity and torque-actuated robots. We propose a new distance function and its corresponding Jacobian in order to generate a VFI to limit the angle between two Plcker lines. This new VFI is used to prevent both undesired end-effector orientations and violation of joints limits. The proposed method is evaluated in a realistic simulation and on a real humanoid robot, showing that all constraints are respected while the robot performs a manipulation task. I. INTRODUCTION Collision avoidance has been addressed either in off- line or on-line approaches. The former is based on motion planning, where probabilistic methods have been widely used 1, 2. These strategies are usually applied in the confi guration space and are computationally expensive, free of local minima and used in structured scenarios 3. The latter is based on reactive methods and usually require less computation time; therefore, they can be used in real-time feedback control and are suitable for applications within unstructured workspaces. Reactive methods are, in general, based on minimization problems 4, which exploit the robot redundancy by select- ing admissible control inputs based on a specifi ed criterion. When the robot is commanded by joint velocity inputs and operates under relatively low velocities and accelerations, its behavior is appropriately described by the kinematic model and the minimization can be performed in the joint velocities. In that case, since the control law is based entirely on the kinematic model, it is not affected by uncertainties in the inertial parameters (e.g., mass and moment of inertia). On the other hand, if the robot is commanded by torque inputs, the minimization is performed in the joint torques, which usually requires the robot dynamic model. Both methods are widely used to perform whole-body control with reactive behavior. Whole-body control strategies with collision avoidance usually have been handled by using the task priority frame- work, where the overall task is divided into subtasks with different priorities. For instance, distance functions with con- tinuous gradients between convex hulls (or between simple geometrical primitives such as spheres and cylinders) that This work was supported by the Brazilian agencies CAPES, CNPq (424011/2016-6 and 303901/2018-7), FAPEMIG, and by the INCT (Na- tional Institute of Science and Technology) under the grant CNPq (Brazilian National Research Council) 465755/2014-3. J.J. Quiroz Omaa is with the Graduate Program in Electrical Engineering and B.V. Adorno is with the Department of Electrical Engineering - Federal University of Minas Gerais (UFMG), 31270-901, Belo Horizonte-MG, Brazil (e-mail: juanjqoufmg.br; adornoufmg.br). represent the body parts are used and the lower-priority collision-avoidance tasks are satisfi ed in the null space of higher-priority ones 5, 6. Those secondary tasks are fulfi lled as long as they are not in confl ict with the higher- priority ones. Therefore, they do not prevent collisions when in confl ict with the primary task. One way to circumvent this problem is to place the collision avoidance as the higher priority task 7, at the expense of not guaranteeing the fulfi llment of the main task, such as reaching targets with the end-effector. This can be addressed by using a dynamic task prioritization 8, where the control law is blended continuously between the collision-avoidance task and the end-effector pose control task as a function of the collision distance 9. Dietrich et al. 10 propose a torque-based self- collision avoidance also using dynamic prioritization, where the transitions are designed to be continuous and comply with the robots physical constraints, such as the limits on joint torque derivatives. However, changing priorities to enforce inequality constraints has an exponential cost in the number of inequalities 11. Alternatively, non-hierarchical formula- tions based on weighted least-square solutions are used to solve the problem of constrained closed-loop kinematics in the context of self-collision avoidance 12. However, the non-hiearchical approach requires an appropriate weighting matrix that results in a collision-free motion, which may not work in general, specially for high-speed motions 13. That can be solved by combining the weighting matrix with the virtual surface method, which redirects the collision points along a virtual surface surrounding the robot links at the expense of potentially disturbing the trajectory tracking when the distance between collidable parts is smaller than a critical value. Other strategies address the collision-free motion genera- tion problem explicitly by using mathematical programming, which allows dealing with inequality constraints directly in the optimization formulation, providing an effi cient and elegant solution, where all constraints are clearly separated from the main task. Analytical solutions, however, usually do not exist and numeric solvers must be used 14, 15, 16. Marinho et al. 17 propose active constraints based on VFI to deal with collision avoidance in surgical applications. Both robot and obstacles are modeled by using geometric primitivessuch as points, planes, and Plcker lines, and distance functions with their respective Jacobian matrices are computed from these geometric primitives. Our work extends the VFI method, which was fi rst pro- posed using fi rst order kinematics 17, to use second order IEEE Robotics and Automation Letters (RAL) paper presented at the 2019 IEEE/RSJ International Conference on Intelligent Robots and Systems (IROS) Macau, China, November 4-8, 2019 Copyright 2019 IEEE kinematics. This enables applications that use the robot dynamics by means of the relationship between joint torques and joint accelerations in the Euler-Lagrange equations. Furthermore, we propose a new distance function related to the angle between two Plcker lines and the corresponding Jacobian matrix to prevent violations of joint limits and avoid undesired end-effector orientations. Differently from other approaches, such as 18, our approach has a formal proof showing that the second-order inequality constraints for collision avoidance always prevent collisions between any pair of primitives. II. TASK-SPACECONTROLUSINGQUADRATIC PROGRAMMING A classic strategy used in differential inverse kinematic problems consists in solving an optimization problem that minimizes the joint velocities, q Rn, in the l2-norm sense. Given a desired task xd Rm, where xd= 0, t, and the task error x , x xd, the control input u is obtained as u argmin q kJ q + xk2 2+ 2k qk2 2 subject toW q w, (1) where J Rmnis the task Jacobian, 0,) is a damping factor, and W Rlnand w Rlare used to impose linear constraints in the control inputs. An analogous scheme can be used to perform the min- imization at the joint acceleration level. Given the desired error dynamics x + kd x + kp x = 0, with kd,kp (0,) such that k2 d 4kp 0 to obtain a non-oscillatory exponen- tial error decay, the control input uais obtained as uaargmin q kJ q + k2 2+ 2k qk2 2 subject to q , (2) where = ? kdJ + J ? q + kp x, , ?I IW T?T and , ?T u,Tl ,wT ?T , with R(2n+l)nand R2n+l. Analogously to (1), W and w are used to impose arbitrary linear constraints in the acceleration inputs, and two additional constraints, that is l q u, are imposed to minimize the joints velocities by limiting the joints accelerations. More specifi cally, we defi ne the acceleration lower bound land the acceleration upper bound u, respectively: l, k ?1 ng ? x? q?,u, k ?1 ng ? x? q?,(3) where k 0,) is used to scale the feasible region, g : R 0,) is a positive defi nite nondecreasing function (e.g., g ? x?, ? ? x? ? 2) and 1n is a n-dimensional column vector composed of ones. As the bounds (3) depend on the error velocity x, then l uwhen x 0. Therefore, l= u= and q becomes q = = k q, whose solution is given by q (t) = q (0)exp(kt); that is, as the task velocity goes to zero, the robot stops accordingly.1 1Those bounds are necessary because (2) minimizes the joints acceler- ations. Without them, the objective function can be minimized even if the joints velocities are not null. If the robot is commanded by means of torque inputs (i.e., , u), we use (2) to compute uaand the Euler-Langrange equation M q + n = , where M Rnnis the inertia matrix and n Rndenotes the nonlinear terms including Coriolis and gravity forces, to compute the control input u= n + Mua.(4) III. VECTORFIELDINEQUALITIES The VFI framework is composed of differential inequali- ties that are used to avoid collisions between pairs of geo- metrical primitives 19, 17. It requires a signed distance function d(t) R between two collidable objects and the Jacobian matrix Jdrelating the robot joint velocities with the time derivative of the distance; that is, d(t) = Jd q. In order to keep the robot outside a collision zone, the error distance is defi ned as d(t) , d(t) dsafe, where dsafe 0,) is an arbitrary constant safe distance, and the following inequalities must hold for all t 17: d(t) dd(t) Jd q dd(t),(5) where d 0,) is used to adjust the approach velocity. The lower is d, the lower is the approach velocity. Alternatively, if we consider acceleration inputs, the VFI can be extended by means of a second-order differential inequality 20 d(t) 1 d(t) 2d(t) Jd q d,(6) where d= ? 1Jd+ Jd ? q + 2d(t), and 1,2 0,) are used to adjust the approach acceleration. We enforce the condition 2 1 42 0 to obtain, in the worst case, a non- oscillatory exponential approach. Analogously, if it is desired to keep the robot inside a safe region (i.e., d(t) 0), the constraints (5) and (6) are rewritten, respectively, as Jd q dd(t),Jd q d.(7) In order to show that the inequality in (6) prevents col- lisions with static obstaclesi.e., d(t) 0, t 0,) in robot commanded by means of acceleration inputs,2we propose the following lemma. Lemma 1: Considertheinequalityconstraint(6), with 1,2 (0,), 2 1 42 0, d(0) , d0 (0,), d(0) , d0 (,) and 1 2 ? ? ? d0 ? ? ?/ d0. Let d(t) be a smooth function for all t 0,), then d(t) 0, t 0,). Proof:Firstconsider d(t) = 1 d(t) 2d(t), whosesolutionisgivenby d(t) = (r1 r2)1(c1exp(r1t) + c2exp(r2t),where c1= d0 d0r2,c2= d0r1 d0andr1,r2 (,0) aretherootsofthecharacteristicequation. 2Actual robots are usually commanded by means of velocity or torque inputs. In the latter case, acceleration inputs are transformed into torque inputs by using (4). Furthermore, we assume that the actuators do not work in saturation in order to ensure feasibility of (6) and (7). UsingtheComparisonLemma321,itcanbe shownthatthesolutionof(6)t 0,)is d(t) (r1 r2)1(c1exp(r1t) + c2exp(r2t). Both f1(t) , exp(r1t) and f2, exp(r2t) are decreasing monotonic functions where f2(t) decreases at a higher rate than f1(t) because r1,r2 (,0) and r2 r1. Therefore, by inspection, d(t) 0,t 0,) if c1 0 and c1 |c2 |, which is satisfi ed when d0 d0r2and d0 d0(r1+ r2)/2. Because d0 d0(r1+ r2)/2 d0r2and 1= (r1+ r2), then 1 2 d0/d0. Since 2 ? ? ? d0 ? ? ?/ d0 2 d0/d0then we choose 1 2 ? ? ? d0 ? ? ?/ d0, which concludes the proof. Since we consider arbitrary values for d0, additional bounds on the accelerations (i.e., qmin q qmax) may result in the unfeasibility of constraints (6) and (7). There- fore, existing techniques 22 may be adapted to determine the maximum bounds on the accelerations such that the VFI can still be satisfi ed. IV. DISTANCEFUNCTIONS ANDJACOBIANS Each VFI requires a distance function between two ge- ometric primitives and the Jacobian that relates the robot joint velocities to the time-derivative of the distance function. Marinho et al. 17 presented some useful distance functions and their corresponding Jacobians based on pair of geometric primitives composed of Plcker lines, planes, and points. In some applications, it is advantageous to defi ne target regions, instead of one specifi c position and/or orientation, in order to relax the task and, therefore, release some of the robot degrees of freedom (DOF) for additional tasks. For instance, if the task consists in carrying a cup of water from one place to another, one way to perform it is by defi ning a time-varying trajectory that determines the robot end-effector pose at all times, which requires six DOF. An alternative is to defi ne a target position to where the cup of water should be moved (which requires three DOF) while ensuring that the cup is not too tilted to prevent spilling, which require one more DOF (i.e., the angle between a vertical line and the line passing through the center of the cup, as shown in Fig. 1). The task can be further relaxed by using only the distance to the fi nal position, which requires only one DOF, plus the angle constraint, which requires, when activated, one more DOF. The idea of using a conic constraint, which is equivalent to constraining the angle between two intersecting lines, was fi rst proposed by Gienger et al. 23. However, their description is singular when the angle equals k, for all k Z. Therefore, we propose a singularity-free conic constraint based on VFI. Since this constraint requires a new Jacobian, 3Let u = f (t,u), v f (t,v), where f is continuous in t and in the functions u(t) and v(t), and v0 u0; then v(t) u(t) t 0,T). Because it is possible to reduce any nthorder linear differential equation to n fi rst-order linear ones, the Comparison Lemma, which is defi ned to fi rst order systems, can be extended to higher order linear systems in a straightforward way. namely the line-static-line angle Jacobian, we briefl y review the line Jacobian 17. A. Line Jacobian Given a frame Fzattached to the robot kinematic chain, let lzbe a dynamic Plcker line collinear to the z-axis of Fz. The line lzand its time derivative lz are described with respect to the inertial frame F as 17 lz= ? lz mz ? R6, lz = ? Jlz Jmz ? q , Jlz q.(8) where lz R3, with klzk2= 1, is the line direction, and pzlz= mz R3is the line moment, with pz R3being an arbitrary point on the line. B. Line-static-line-angle Jacobian, Jlz,l Since the angle between lzand the static Plcker line l = ?lT mT ?T (i.e., l = 0, t), which is given by l z,l = arccos(hlz,li), has a singular time derivative when hlz,li = 1, the function f : 0, 0,4 is proposed instead: f ? lz,l ? , klz lk2 2 = 2 2coslz,l= (lz l)T(lz l). (9) As f ? lz,l ? is a continuous bijective function, controlling the distance function (9) is equivalent to controlling the angle lz,l 0,. The time derivative of (9) is given by d dtf ? lz,l ? = 2(lz l)T d dt (lz l) = 2(lz l)TJlz |z Jl z,l q. (10) V. (SELF)-COLLISIONAVOIDANCECONSTRAINTS As shown in Fig. 1, the line-static-line-angle constraint is used to prevent violation of joint limits (right) and also to avoid undesired end-effector orientations (left). In order to prevent violation of joint limits, for each joint we place a line, l, perpendicular to the joint rotation axis and in the middle of its angular displacement range. We also place a line, lz, along the link attached to the joint; therefore, the angle distance between them is calculated by using (9). Since the angle distance is constrained between 0, in any direction (the other one is equivalent to ,0), the maximum joint range limit can be defi ned in the interval 0,2. This strategy requires one constraint per joint instead of two, as in other approaches 24, 25, because those approaches need to defi ne constraints for both upper and lower joint limits. Likewise, this strategy allows defi ning a maximum end- effector angle to avoid undesired orientations. In this case, however, the angle is obtained between a vertical line, l, passing through the origin of the end-effector frame and a line collinear with the z-axis of the end-effector frame, lz. Given a maximum angle safe, the constraint lz,l safe defi nes a cone whose centerline is given by l. l lz lz,l safe lz,l safe l lz Feff z dlz,l dlz,l Fig. 1.Applications of the line-static-line-angle Jacobian. On the left, the constraint is used to keep a bounded inclination of the end-effector with respect to a vertical line passing through the origin of the end-effector frame. On the right, the constraint is used to impose joint limits. The angle lz,l between two Plcker lines is related to the distance dl z,l = f(lz,l)1/2 by means of the law of cosines. The corresponding fi rst-order and second-order VFIs used to constrain the angle inside a safe cone are given, respec- tively, by Jlz,l q f ? lz,l ? ,(11) Jlz,l q lz,l,(12) where f ? lz,l ? ,f ? lz,l ? f (safe) and lz,l= ? 1Jlz,l+ Jlz,l ? q + 2f ? lz,l ?. In order to prevent self-collisions, we modeled the robot with spheres and cylinders, as shown in Fig. 2. The line-static-line constraint 17 is used to prevent collisions between the arm and the torso, where the line lz is located along the torso and the line l is placed along the forearm. In case that the distance dlz,lbetween the lines is zero but there is no collision, which could happen because lines are infi nite, the constraint is disabled and a point-s
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 本科外科护理学思考题库及答案解析
- 安全生产执法实务测试题及答案解析
- 电厂安全规则考试题库及答案解析
- 三级安全教育培训试题6及答案解析
- 2025年社交电商行业社交电商新商业模式研究报告及未来发展趋势预测
- 2025年环保行业可持续发展解决方案研究报告及未来发展趋势预测
- 项目管理会议材料准备与展示模板
- 2025年人才培训行业职业教育培训模式创新与人才需求研究报告及未来发展趋势预测
- 跨部门协作项目团队分工与责任矩阵
- 安全生产法律法规题库答题软件及答案解析
- 2025北京市公安局顺义分局勤务辅警、流动人口管理员招聘100人考试笔试备考试题及答案解析
- 2025沧州银行招聘考试笔试参考题库附答案解析
- 2025年商标代理行业分析报告及未来发展趋势预测
- 2025年涂覆玻璃纤维布行业分析报告及未来发展趋势预测
- 天津某五层框架结构标准厂房施工组织设计
- 5.1.1 生物与环境的相互作用-2025-2026学年人教版2024新教材生物八年级上册同步教学课件
- 美业人公司年会活动方案
- 2025广东东莞寮步镇人民政府招聘编外聘用人员14人备考参考题库及答案解析
- 中职cad理论考试试卷及答案
- 船体火工安全素养强化考核试卷含答案
- 人教版二年级数学上册期中测试卷(带答案)
评论
0/150
提交评论