CN110842925A - Torque feedforward compensation method of collaborative robot - Google Patents

Torque feedforward compensation method of collaborative robot Download PDF

Info

Publication number
CN110842925A
CN110842925A CN201911161059.8A CN201911161059A CN110842925A CN 110842925 A CN110842925 A CN 110842925A CN 201911161059 A CN201911161059 A CN 201911161059A CN 110842925 A CN110842925 A CN 110842925A
Authority
CN
China
Prior art keywords
robot
motion
torque
vector
robot joint
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.)
Pending
Application number
CN201911161059.8A
Other languages
Chinese (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.)
Shenzhen Yejiawei Technology Co Ltd
SHENZHEN HUASHU ROBOT Co Ltd
Guangdong Institute of Intelligent Manufacturing
Wuhan Huazhong Numerical Control Co Ltd
Original Assignee
Shenzhen Yejiawei Technology Co Ltd
SHENZHEN HUASHU ROBOT Co Ltd
Guangdong Institute of Intelligent Manufacturing
Wuhan Huazhong Numerical Control Co Ltd
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 Shenzhen Yejiawei Technology Co Ltd, SHENZHEN HUASHU ROBOT Co Ltd, Guangdong Institute of Intelligent Manufacturing, Wuhan Huazhong Numerical Control Co Ltd filed Critical Shenzhen Yejiawei Technology Co Ltd
Priority to CN201911161059.8A priority Critical patent/CN110842925A/en
Publication of CN110842925A publication Critical patent/CN110842925A/en
Pending legal-status Critical Current

Links

Images

Classifications

    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1628Programme controls characterised by the control loop
    • B25J9/1633Programme controls characterised by the control loop compliant, force, torque control, e.g. combined with position control
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1656Programme controls characterised by programming, planning systems for manipulators
    • B25J9/1664Programme controls characterised by programming, planning systems for manipulators characterised by motion, path, trajectory planning

Landscapes

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

Abstract

A method of torque feedforward compensation for a collaborative robot, the method comprising the steps of: s1: establishing robot actions and establishing robot motion coordinates; the method comprises the steps of establishing a motion coordinate for a robot, calculating a rated torque vector of the robot joint motion according to the rated speed and acceleration of the robot motion, then obtaining the actual position coordinate of the robot joint motion, then calculating the inertia change of the robot joint in the whole motion process and a feedforward value of output torque according to a mechanical constant and an obtained numerical value, superposing the calculated feedforward value of the torque output and the control output of a controller given value in a current ring, transmitting the superposed value to a motor for driving the robot joint to move, refreshing the feedforward value of the torque to a driver in a microsecond-level period, and greatly reducing the following error of a system on the basis of the same PID (proportion integration differentiation) parameters so as to improve the control precision of the system.

Description

Torque feedforward compensation method of collaborative robot
Technical Field
The invention belongs to the technical field of robots, and particularly relates to a torque feedforward compensation method of a collaborative robot.
Background
Robots are the common name for automatic control machines (Robot) that include all machines that simulate human behavior or thought and other creatures (e.g., machine dogs, machine cats, etc.). There are many taxonomies and controversy to define robots in a narrow sense, and some computer programs are even referred to as robots. In the modern industry, a robot refers to an artificial machine device capable of automatically executing tasks, which is used for replacing or assisting human work, and an ideal high-simulation robot is a product of high-level integration control theory, mechano-electronics, computers, artificial intelligence, materials science and bionics, and the scientific community is researching and developing in the direction;
due to the influence of factors such as inertia and gravity, the robot can follow the movement of each joint with errors in the movement process, and the robot is difficult to meet the operation requirement of high progress.
Disclosure of Invention
The invention provides a torque feedforward compensation method of a collaborative robot, and aims to solve the problem that the robot is difficult to meet the operation requirement of high progress due to errors in the following of the motion of each joint of the robot caused by the influence of factors such as inertia, gravity and the like in the motion process of the robot.
The invention is realized in such a way that a torque feedforward compensation method of a cooperative robot comprises the following steps:
s1: establishing robot actions and establishing robot motion coordinates;
s2: determining the motion rated position coordinates of the robot, the motion rated speed and acceleration of the robot, calculating the motion rated torque vector of the robot joint, and generating the motion track of the robot joint;
s3: acquiring the actual position coordinates of the robot joint movement, the speed and the acceleration value of the actual movement, and calculating the moment vector of the robot joint movement;
s4: calculating the feedforward values of inertia change and output moment output of the robot joint in the whole motion process according to the mechanical constant and the values obtained in the S2 and the S3;
s5: and superposing the calculated feedforward value of the torque output and the control output of the set value of the controller in the current loop, and transmitting the superposed control output to a motor for driving the robot joint to move.
Preferably, the establishing of the robot motion coordinate in S1 includes the following steps:
s11: establishing x, y and z three-dimensional coordinates according to the up-down, front-back and left-right directions of the robot;
s12: from the coordinate values that create the x, y and z three-dimensional coordinates.
Preferably, the rated moment vector for calculating the robot joint motion in S2 is calculated by using a lagrange equation.
Preferably, the specific calculation formula of the Lagrangian equation is
Figure 100002_DEST_PATH_IMAGE002
Wherein
Figure 100002_DEST_PATH_IMAGE006
And
Figure 100002_DEST_PATH_IMAGE008
respectively representing the position, the speed and the acceleration vector of the robot,
Figure 100002_DEST_PATH_IMAGE010
is a matrix of the inertia, and the inertia matrix,
Figure 100002_DEST_PATH_IMAGE012
is the vector of the Ge-type force and the centrifugal force,
Figure 100002_DEST_PATH_IMAGE014
representing the moment vectors applied to the various joints of the robot,
Figure 100002_DEST_PATH_IMAGE016
is the gravity term.
Preferably, in S3, the actual position coordinates of the robot joint motion and the speed and acceleration values of the actual motion are acquired, and are detected and acquired by the position sensor, the speed sensor and the acceleration sensor when the robot joint moves.
Preferably, the moment vector selection for robot joint motion calculated in S4The Lagrange equation is calculated by the following specific formula
Figure 100002_DEST_PATH_IMAGE002A
Wherein
Figure 100002_DEST_PATH_IMAGE004A
Figure 100002_DEST_PATH_IMAGE006A
And
Figure 100002_DEST_PATH_IMAGE008A
respectively representing the actual position, speed and acceleration vector of the robot after movement,
Figure 100002_DEST_PATH_IMAGE010A
is a matrix of the inertia, and the inertia matrix,
Figure 100002_DEST_PATH_IMAGE012A
is the vector of the Ge-type force and the centrifugal force,
Figure 100002_DEST_PATH_IMAGE014A
representing the moment vectors applied to the various joints of the robot,
Figure 100002_DEST_PATH_IMAGE016A
is the gravity term.
Preferably, the superposition period in S5 is 0.8ms
Compared with the prior art, the invention has the beneficial effects that: the invention relates to a moment feedforward compensation method of a collaborative robot, which comprises the steps of establishing a motion coordinate for the robot, calculating a rated moment vector of the robot joint motion according to the rated speed and acceleration of the robot motion, then obtaining the actual position coordinate of the robot joint motion, the actual motion speed and acceleration value, calculating the moment vector of the robot joint motion, then calculating the inertia change of the robot joint in the whole motion process and the feedforward value of output moment according to the mechanical constant and the obtained numerical value, superposing the calculated feedforward value of the moment output and the control output of the controller given value in a current loop, transmitting the superposed values to a motor for driving the robot joint motion, refreshing the moment feedforward value to a driver in microsecond-level period, greatly reducing the following error of the system on the basis of the same PID parameter, thereby improving the control accuracy of the system.
Drawings
FIG. 1 is a flow chart of the method of the present invention;
FIG. 2 is a diagram of an embodiment of a torque vector calculation formula of the present invention;
fig. 3 is a schematic diagram of a moment calculation formula of a corresponding joint according to the present invention.
Detailed Description
In order to make the objects, technical solutions and advantages of the present invention more apparent, the present invention is described in further detail below with reference to the accompanying drawings and embodiments. It should be understood that the specific embodiments described herein are merely illustrative of the invention and are not intended to limit the invention.
Referring to fig. 1-3, the present invention provides a technical solution: a method of torque feedforward compensation for a collaborative robot, the method comprising the steps of:
s1: establishing robot actions and establishing robot motion coordinates;
s2: determining the motion rated position coordinates of the robot, the motion rated speed and acceleration of the robot, calculating the motion rated torque vector of the robot joint, and generating the motion track of the robot joint;
s3: acquiring the actual position coordinates of the robot joint movement, the speed and the acceleration value of the actual movement, and calculating the moment vector of the robot joint movement;
s4: calculating the feedforward values of inertia change and output moment output of the robot joint in the whole motion process according to the mechanical constant and the values obtained in the S2 and the S3;
s5: and superposing the calculated feedforward value of the torque output and the control output of the set value of the controller in the current loop, and transmitting the superposed control output to a motor for driving the robot joint to move.
In the embodiment, by establishing a motion coordinate for the robot, a rated moment vector of the robot joint motion is calculated according to the rated speed and acceleration of the robot motion, then obtaining the actual position coordinates of the robot joint movement, the speed and the acceleration value of the actual movement, calculating the moment vector of the robot joint movement, then calculating the inertia change of the whole motion process of the robot joint and the feedforward value output by the output moment according to the mechanical constant and the obtained value, and the calculated feedforward value of the torque output is superposed with the control output of the given value of the controller in the current loop, and the torque is transmitted to a motor for driving the robot joint to move, a torque feedforward value is refreshed to a driver in a microsecond-level period, on the basis of the same PID parameter, the following error of the system is greatly reduced, and therefore the control precision of the system is improved.
Further, the establishing of the robot motion coordinate in S1 includes the following steps:
s11: establishing x, y and z three-dimensional coordinates according to the up-down, front-back and left-right directions of the robot;
s12: from the coordinate values that create the x, y and z three-dimensional coordinates.
In the present embodiment, by establishing three-dimensional coordinates for the robot, it is more convenient to represent the positions of the robot joint motions in the form of a matrix.
Further, the specific calculation formula of the Lagrangian equation is
Figure DEST_PATH_IMAGE002AA
Wherein
Figure DEST_PATH_IMAGE004AA
Figure DEST_PATH_IMAGE006AA
Andrespectively representing the position, velocity and acceleration vectors of the robot,is a matrix of the inertia, and the inertia matrix,
Figure DEST_PATH_IMAGE012AA
is the vector of the Ge-type force and the centrifugal force,
Figure DEST_PATH_IMAGE014AA
representing the moment vectors applied to the various joints of the robot,
Figure DEST_PATH_IMAGE016AA
is a gravity term;
and calculating the moment vector Lagrange equation of the robot joint motion in the step S4, wherein the specific calculation formula is
Figure DEST_PATH_IMAGE002AAA
Wherein
Figure DEST_PATH_IMAGE006AAA
And
Figure DEST_PATH_IMAGE008AAA
respectively representing the actual position, speed and acceleration vector of the robot after movement,
Figure DEST_PATH_IMAGE010AAA
is a matrix of the inertia, and the inertia matrix,is the vector of the Ge-type force and the centrifugal force,
Figure DEST_PATH_IMAGE014AAA
representing the moment vectors applied to the various joints of the robot,is the gravity term.
In the present embodiment, in the specific calculation
Figure DEST_PATH_IMAGE010AAAA
Figure DEST_PATH_IMAGE012AAAA
And
Figure DEST_PATH_IMAGE016AAAA
all the motion extremes of the same robot joint are constants, and only the consideration needs to be specifically considered in the calculation of feedforward moment compensation
Figure DEST_PATH_IMAGE004AAAA
Figure DEST_PATH_IMAGE006AAAA
And
Figure DEST_PATH_IMAGE008AAAA
numerical values.
Further, in S3, the actual position coordinates of the robot joint motion, and the speed and acceleration values of the actual motion are obtained, and are detected and obtained by the position sensor, the speed sensor and the acceleration sensor when the robot joint moves.
In the embodiment, the position, the speed and the acceleration of the actual motion of the robot joint can be conveniently known by the feedforward compensation system in real time through the position sensor, the speed sensor and the acceleration sensor, and then the moment compensation of the robot joint motion is performed in time.
Further, the superimposing period in S5 is 0.8 ms.
In the embodiment, the moment compensation is performed in a period of 0.8ms, so that the following error of each joint of the robot can be suppressed in time, and the tracking accuracy of the robot is improved.
The working principle and the using process of the invention are as follows: before the robot moves, the feedforward torque compensation system establishes x, y and z three-dimensional coordinates according to the up-down, front-back and left-right directions of the robot, then establishes coordinate values of the x, y and z three-dimensional coordinates, then determines the rated position coordinates of the robot movement, the rated speed and acceleration of the robot movement according to the established robot movement, calculates the rated torque vector of the robot joint movement, then obtains the actual position coordinates of the robot joint movement, the actual movement speed and acceleration value by corresponding sensors, calculates the torque vector of the robot joint movement, calculates the inertia change of the whole movement process of the robot joint and the feedforward value of output torque by mechanical constants and the obtained values, superposes the calculated feedforward value of the output torque and the control output of the given value of the controller in a current loop, and transmits the superposed feedforward value and the control output to a motor for driving the robot joint to move, thereby compensating the moment of the robot joint movement.
The above description is only for the purpose of illustrating the preferred embodiments of the present invention and is not to be construed as limiting the invention, and any modifications, equivalents and improvements made within the spirit and principle of the present invention are intended to be included within the scope of the present invention.

Claims (7)

1. A torque feedforward compensation method of a collaborative robot is characterized in that: the method comprises the following steps:
s1: establishing robot actions and establishing robot motion coordinates;
s2: determining the motion rated position coordinates of the robot, the motion rated speed and acceleration of the robot, calculating the motion rated torque vector of the robot joint, and generating the motion track of the robot joint;
s3: acquiring the actual position coordinates of the robot joint movement, the speed and the acceleration value of the actual movement, and calculating the moment vector of the robot joint movement;
s4: calculating the feedforward values of inertia change and output moment output of the robot joint in the whole motion process according to the mechanical constant and the values obtained in the S2 and the S3;
s5: and superposing the calculated feedforward value of the torque output and the control output of the set value of the controller in the current loop, and transmitting the superposed control output to a motor for driving the robot joint to move.
2. The method for torque feedforward compensation of a cooperative robot as recited in claim 1, wherein: the establishing of the robot motion coordinate in S1 includes the following steps:
s11: establishing x, y and z three-dimensional coordinates according to the up-down, front-back and left-right directions of the robot;
s12: from the coordinate values that create the x, y and z three-dimensional coordinates.
3. The method for torque feedforward compensation of a cooperative robot as recited in claim 1, wherein: and in the step S2, calculating the rated moment vector of the robot joint motion by using a Lagrange equation.
4. A method of torque feedforward compensation in a cooperative robot as recited in claim 3, wherein: the Lagrange equation has the specific calculation formula of
Figure DEST_PATH_IMAGE002
Wherein
Figure DEST_PATH_IMAGE004
Figure DEST_PATH_IMAGE006
Andrespectively representing the position, the speed and the acceleration vector of the robot,is a matrix of the inertia, and the inertia matrix,
Figure DEST_PATH_IMAGE012
is the vector of the Ge-type force and the centrifugal force,
Figure DEST_PATH_IMAGE014
indicating the various conditions imposed on the robotThe moment vector on the section(s) is,
Figure DEST_PATH_IMAGE016
is the gravity term.
5. The method for torque feedforward compensation of a cooperative robot as recited in claim 1, wherein: in S3, the actual position coordinates of the robot joint motion and the actual motion speed and acceleration values are obtained, and specifically, the position sensor, the speed sensor, and the acceleration sensor detect and obtain the actual position coordinates and the actual motion speed and acceleration values when the robot joint moves.
6. The method for torque feedforward compensation of a cooperative robot as recited in claim 1, wherein: and calculating the moment vector Lagrange equation of the robot joint motion in the step S4, wherein the specific calculation formula is
Figure DEST_PATH_IMAGE002A
Wherein
Figure DEST_PATH_IMAGE004A
Figure DEST_PATH_IMAGE006A
And
Figure DEST_PATH_IMAGE008A
respectively representing the actual position, speed and acceleration vector of the robot after movement,
Figure DEST_PATH_IMAGE010A
is a matrix of the inertia, and the inertia matrix,is the vector of the Ge-type force and the centrifugal force,
Figure DEST_PATH_IMAGE014A
representing the moment vectors applied to the various joints of the robot,
Figure DEST_PATH_IMAGE016A
is the gravity term.
7. The method for torque feedforward compensation of a cooperative robot as recited in claim 1, wherein: the superimposing period in S5 is 0.8 ms.
CN201911161059.8A 2019-11-24 2019-11-24 Torque feedforward compensation method of collaborative robot Pending CN110842925A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201911161059.8A CN110842925A (en) 2019-11-24 2019-11-24 Torque feedforward compensation method of collaborative robot

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201911161059.8A CN110842925A (en) 2019-11-24 2019-11-24 Torque feedforward compensation method of collaborative robot

Publications (1)

Publication Number Publication Date
CN110842925A true CN110842925A (en) 2020-02-28

Family

ID=69604198

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201911161059.8A Pending CN110842925A (en) 2019-11-24 2019-11-24 Torque feedforward compensation method of collaborative robot

Country Status (1)

Country Link
CN (1) CN110842925A (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112720482A (en) * 2020-12-22 2021-04-30 上海新时达机器人有限公司 Industrial robot motion control method

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101369286B1 (en) * 2012-12-14 2014-03-06 한국과학기술연구원 System for controlling high friction robot manipulator
CN108466289A (en) * 2018-03-07 2018-08-31 长安大学 A kind of dynamic modeling method for the parallel robot considering joint-friction
CN108621163A (en) * 2018-05-10 2018-10-09 同济大学 A kind of redundancy tow-armed robot cooperation control method towards remittance tenon technique
CN108714896A (en) * 2018-05-28 2018-10-30 华南理工大学 A kind of robot flexibility torque feed forward control method based on kinetics of deformable bodies model
CN109015658A (en) * 2018-09-20 2018-12-18 北京邮电大学 It is a kind of for capturing the Dual-arm space robot control method of Tum bling Target
CN109760048A (en) * 2018-12-28 2019-05-17 深圳市越疆科技有限公司 A kind of method of servo-controlling of robot, device and robot

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101369286B1 (en) * 2012-12-14 2014-03-06 한국과학기술연구원 System for controlling high friction robot manipulator
CN108466289A (en) * 2018-03-07 2018-08-31 长安大学 A kind of dynamic modeling method for the parallel robot considering joint-friction
CN108621163A (en) * 2018-05-10 2018-10-09 同济大学 A kind of redundancy tow-armed robot cooperation control method towards remittance tenon technique
CN108714896A (en) * 2018-05-28 2018-10-30 华南理工大学 A kind of robot flexibility torque feed forward control method based on kinetics of deformable bodies model
CN109015658A (en) * 2018-09-20 2018-12-18 北京邮电大学 It is a kind of for capturing the Dual-arm space robot control method of Tum bling Target
CN109760048A (en) * 2018-12-28 2019-05-17 深圳市越疆科技有限公司 A kind of method of servo-controlling of robot, device and robot

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
柳贺 等: "基于力矩前馈的重载机器人控制研究与实现", 《机械制造与自动化》 *

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112720482A (en) * 2020-12-22 2021-04-30 上海新时达机器人有限公司 Industrial robot motion control method

Similar Documents

Publication Publication Date Title
CN106094835B (en) The dynamic formation control method of front-wheel drive vehicle type mobile robot
Wang et al. Uncalibrated visual tracking control without visual velocity
CN109397265B (en) Joint type industrial robot dragging teaching method based on dynamic model
CN105772917B (en) A kind of three joint spot welding robot's Trajectory Tracking Control methods
CN109159151A (en) A kind of mechanical arm space tracking tracking dynamic compensation method and system
Dallej et al. Towards vision-based control of cable-driven parallel robots
JP6669715B2 (en) Vibration suppressor
CN106041926A (en) Industrial mechanical arm force/position mixed control method based on Kalman filter
CN108656112A (en) A kind of mechanical arm zero-force control experimental system towards direct teaching
CN110861090B (en) Torque feedforward control system and method
CN110394801A (en) A kind of joint control system of robot
CN103507070B (en) Triaxial force sensor is used to carry out the robot controller of power control
CN111515928B (en) Mechanical arm motion control system
CN111618861A (en) Double-follow-up intelligent arm control method based on four-axis structure
CN114536346B (en) Mechanical arm accurate path planning method based on man-machine cooperation and visual detection
CN110842925A (en) Torque feedforward compensation method of collaborative robot
Hawley et al. External force observer for medium-sized humanoid robots
CN107303626A (en) Laser processing device and laser processing
Cai et al. ROS-based depth control for hybrid-driven underwater vehicle-manipulator system
CN116728397A (en) Robot system, robot control method, and computer-readable storage medium
CN114800523B (en) Mechanical arm track correction method, system, computer and readable storage medium
CN113442118B (en) Collision response control method and system for wearable outer limb robot
JP2011255500A (en) Control device for legged mobile robot
Liu et al. Coordinating control for an agricultural vehicle with individual wheel speeds and steering angles [Applications of Control]
Liu et al. Force synchronization of multiple robot manipulators: A first study

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
CB02 Change of applicant information
CB02 Change of applicant information

Address after: 518000 floor 11, block a, Shenzhen industry university research base, Huazhong University of science and technology, South District, high tech Zone, Nanshan District, Shenzhen, Guangdong

Applicant after: SHENZHEN HUASHU ROBOT Co.,Ltd.

Applicant after: WUHAN HUAZHONG NUMERICAL CONTROL Co.,Ltd.

Applicant after: Institute of intelligent manufacturing, Guangdong Academy of Sciences

Applicant after: SHENZHEN YEJIAWEI TECHNOLOGY Co.,Ltd.

Address before: 518000 floor 11, block a, Shenzhen industry university research base, Huazhong University of science and technology, South District, high tech Zone, Nanshan District, Shenzhen, Guangdong

Applicant before: SHENZHEN HUASHU ROBOT Co.,Ltd.

Applicant before: WUHAN HUAZHONG NUMERICAL CONTROL Co.,Ltd.

Applicant before: GUANGDONG INSTITUTE OF INTELLIGENT MANUFACTURING

Applicant before: SHENZHEN YEJIAWEI TECHNOLOGY Co.,Ltd.

WD01 Invention patent application deemed withdrawn after publication
WD01 Invention patent application deemed withdrawn after publication

Application publication date: 20200228