发明名称 Automated testing and verification of a robotic system
摘要 Methods automatically and comprehensively self-test the operation, hardware, and programs of a robotic system to reveal problems in a robotic system. The system preferably evaluates repeatability of measurement by each distance sensor, an accuracy of measurement by each distance sensor, an accuracy of movement of any positioning joints used to position the robot arm, and an accuracy of at least one routine of the system control programs. The positioning joints may include one or more rotational joints or one or more translational joints. In some embodiments, the robotic system is a robotic pulse/echo layer thickness (PELT) system. When a robotic system has passed all of the tests, then the system performance has been verified. The inclusion of these self-tests allows a robotic PELT system owner to determine whether or not the robotic portion of a system is performing correctly.
申请公布号 US9579788(B2) 申请公布日期 2017.02.28
申请号 US201213370855 申请日期 2012.02.10
申请人 Ascent Ventures, LLC 发明人 Rosenberg Samuel;Jackson Todd
分类号 G06F15/00;B25J9/16 主分类号 G06F15/00
代理机构 Brown & Michaels, PC 代理人 Brown & Michaels, PC
主权项 1. A method of self-evaluating the accuracy of a robotic system comprising at least one robot arm comprising at least one positioning joint for positioning the robot arm, at least one distance sensor coupled to the robot arm, a robot controller for directing movement of the robot arm, and at least one position-determining mechanism for determining a position of the positioning joint or the robot arm, and robot control programs residing on a system control computer, the method comprising the steps of: a computer evaluating repeatability of a distance sensor, comprising the substeps of: (a) instructing the robot controller to direct the distance sensor towards a location on a surface, wherein the distance sensor is held stationary with respect to the surface;(b) receiving a plurality of distance measurements from the distance sensor;(c) storing the received distance measurements in a repository;(d) evaluating repeatability of the plurality of distance measurements by comparing maximal deviation from a mean value of the distance measurements for each distance sensor to a predetermined tolerance value; and(e) repeating substeps (a) through (d) for each of the other distance sensors to individually evaluate the repeatability of each of the other distance sensors; the computer evaluating accuracy of each distance sensor, comprising the substeps of: (f) instructing the robot controller to direct the distance sensor towards a location on a surface;(g) instructing the robot controller to translate the distance sensor along its measurement axis until the sensor is positioned near a first end of its operational range relative to the surface;(h) receiving from the distance sensor a first distance measurement of a distance between the distance sensor and the location on the surface and storing the first distance measurement in a repository;(i) collecting a first set of robot arm position data from the position-determining mechanism and storing the first position data in the repository;(j) instructing the robot controller to translate the distance sensor along its measurement axis, towards the second end of its operational range by an incremental distance, such that the distance sensor remains directed towards the same location on the surface, with the incremental distance representing a fraction of a measurement range of the distance sensor;(k) receiving from the distance sensor a second distance measurement for the distance between the distance sensor and the location on the surface and storing the second distance measurement in the repository;(l) determining a difference between the second distance measurement and the first distance measurement as a measured distance translation value for the distance sensor;(m) collecting a second set of robot arm position data from the position-determining mechanism and storing the second position data in the repository;(n) calculating a distance by which the distance sensor was translated using the first set of robot arm position data and the second set of robot arm position data as a calculated distance translation value for the distance sensor;(o) comparing the measured distance translation value to the calculated distance translation value and determining whether the measured distance translation value agrees with the calculated distance translation value within a predetermined tolerance value:(p) repeating steps (j) through (o) until the distance sensor has been translated to the second end of its distance-sensing range, thereby evaluating measurement accuracy of the distance sensor across its full measurement range;(q) repeating steps (f) through (p) for each of the other distance sensors to individually evaluate accuracy of each of the other distance sensors in the robotic system; the computer evaluating accuracy of movement of the positioning joint, comprising the substeps of: (r) instructing the robot controller to move the positioning joint to near a first end of its range of motion;(s) instructing the robot controller to position other positioning joints so that a distance sensor is directed towards a location on a surface with the distance to the surface within the measurement range of the distance sensor;(t) receiving a third distance measurement value of the distance between the distance sensor and the location on the surface and storing the third distance measurement in a repository;(u) collecting a third set of positional data from the position-determining mechanism and storing the third positional data in the repository;(v) instructing the robot controller to move the positioning joint by an increment in a direction towards a second end of its range of motion and adjusting the other positioning joints so that the distance sensor remains directed towards the same location on the surface;(w) receiving a fourth distance measurement value from the distance sensor for the distance between the distance sensor and the location on the surface and storing the fourth distance measurement in the repository;(x) determining a difference between the fourth distance measurement and the third distance measurement as a measured distance translation value for the distance sensor;(y) collecting a fourth set of positional data from the position determining mechanism and storing the fourth positional data in the repository;(z) calculating the distance by which the distance sensor was translated using the third set of robot arm position data and the fourth set of robot arm position data as a calculated distance translation value for the distance sensor;(aa) comparing the measured distance translation value to the calculated distance translation value and determining whether the two values agree to within a predetermined tolerance value thereby evaluating the accuracy of the positioning joint;(bb) repeating substeps (s) through (aa) until the positioning joint reaches a second end of its range of motion to evaluate the accuracy of the positioning joint across its full range of motion; and(cc) repeating substeps (r) through (aa) for each of the other positioning joints to individually evaluate the accuracy of each of the other positioning joints in the robotic system as well as the accuracy of the robot controller; and the computer evaluating accuracy of a plurality of motions of the robot arm, wherein the motions have been programmed into the robot control program residing on the system control computer, comprising the substeps of: (i) evaluating a system control program with an evaluating program, wherein the evaluating program comprises a first repository for storing all distance sensor measurement values and robot arm position values employed by the system control program during evaluation;(ii) storing all distance sensor measurement values and all robot arm-position data employed by the system control program into the first repository, providing a record of the motion of the robot arm;(iii) assessing the first distance sensor measurement values and robot arm position values stored in the first repository, computing an anticipated second set of robot arm position values, and determining whether the second set of robot arm position values stored in the repository agrees with the computed values to within a predetermined tolerance;(iv) sequentially evaluating all sets of robot arm position values stored in the repository based on computing anticipated values from prior distance measurement data and robot arm position values to evaluate overall accuracy of the robot system control program; and(v) repeating substeps (ii) through (iv) for the other system control programs; wherein the computer uses no calibrated reference standards or comparisons to stored baseline references in executing the method.
地址 Pittsford NY US