Patent US5303384A successfully refreshed from Google Patents.
← Back to Patent Explorer
US5303384A Expired / Lapsed US ⏱️ 0.0 years remaining

High level language-based robotic control system

Assignee: ALBERTO RICARDO CUETO TRUSTEE OF GUILLERMO RODRIGUEZ REVOCABLE TRUST - 2005
•
Filing: 1991-11-01
•
Granted: 1994-04-12
•
Expires: 2011-11-01
📄 Original PDF 🌐 Google Patents 🔄 Sync Now

Abstract

Abstract This invention is a robot control system based on a high level language implementing a spatial operator algebra. There are two high level languages included within the system. At the highest level, applications programs can be written in a robot-oriented applications language including broad operators such as MOVE and GRASP. The robot-oriented applications language statements are translated into statements in the spatial operator algebra language. Programming can also take place using the spatial operator algebra language. The statements in the spatial operator algebra language from either source are then translated into machine language statements for execution by a digital control computer. The system also includes the capability of executing the control code sequences in a simulation mode before actual execution to assure proper action at execution time. The robot's environment is checked as part of the process and dynamic reconfiguration is also possible. The languages and system allow the programming and control of multiple arms and the use of inward/outward spatial recursions in which every computational step can be related to a transformation from one point in the mechanical robot to another point to name two major advantages.

Inventors

  • 👤 Guillermo Rodriguez
  • 👤 Kenneth K. Kreutz
  • 👤 Abhinandan Jain

Bibliographic Details

Application Number —
Jurisdiction US
Data Source google_patents
Last Synchronized 2026-11-07 14:27
CPC Classifications
B; B25; B25J; B25J9/00; B25J9/16; B25J9/1656; B25J9/1658; G; G05; G05B; G05B2219/00; G05B2219/30; G05B2219/40; G05B2219/40393; H; H01; H01F; H01F38/00; H01F2038/003; Y; Y10; Y10S; Y10S700/00; Y10S700/90

Claims Analysis

Total Claims: 42
Claim 1
Independent Claim 226 words
A high level language-based control system for a robot which performs a set of movement functions comprising: a) a digital control computer operably connected to the robot to control the movement functions thereof, said digital control computer including program execution means for executing control programs; b) translator means for reading a set of robot control statement sequences and for generating control programs therefrom defining a set of robot control sequences, said translator means comprising: (1) first translator means for accepting as inputs thereto statements in a high level spatial operator algebra language and for outputting machine language sequences reflecting said inputs to said first translator means and executable by said digital control computer, and (2) second translator means for accepting as inputs thereto statements in a high level robot applications language and for outputting to said first translator means statements in said high level spatial operator algebra language reflecting said inputs to said second translator means; c) means for inputting said control programs into said digital control computer for execution thereby; and d) robot computer simulation means operably connected to said digital control computer for executing said control programs in a simulation mode prior to executing them to control the robot and for preventing said digital control computer from executing said control programs to control the robot if a problem is detected in said simulation mode.
Claim 2
Dependent Claim 226 words
A high level language-based control system for a robot which performs a set of movement functions comprising: a) a digital control computer operably connected to the robot to control the movement functions thereof, said digital control computer including program execution means for executing control programs; b) translator means for reading a set of robot control statement sequences and for generating control programs therefrom defining a set of robot control sequences, said translator means comprising: (1) first translator means for accepting as inputs thereto statements in a high level spatial operator algebra language and for outputting machine language sequences reflecting said inputs to said first translator means and executable by said digital control computer, and (2) second translator means for accepting as inputs thereto statements in a high level robot applications language and for outputting to said first translator means statements in said high level spatial operator algebra language reflecting said inputs to said second translator means; c) means for inputting said control programs into said digital control computer for execution thereby; and d) robot computer simulation means operably connected to said digital control computer for executing said control programs in a simulation mode prior to executing them to control the robot and for preventing said digital control computer from executing said control programs to control the robot if a problem is detected in said simulation mode.
Claim 3
Dependent Claim 60 words
The high level language-based control system for a robot of claim 1 and additionally comprising: reconfiguration means connected to said robot simulation means for reconfiguring said programs when problems exist in said simulation mode to a form in which no problems exist in said simulation mode before allowing said digital control computer to execute said programs to control the robot.
Claim 4
Dependent Claim 63 words
The high level language-based control system for a robot of claim 1 in which said robot operates in an environment, and additionally comprising: robot and environmental definition means connected to said robot simulation means for holding and providing data about the robot and the environment in which the robot is working which is used to determined if problems exist in said simulation mode.
Claim 5
Dependent Claim 38 words
The high level language-based control system for a robot of claim 3 wherein: said robot and environmental definition means includes means for dynamically changing said data about the robot and the environment in which the robot is working.
Claim 6
Dependent Claim 172 words
A high level language-based control system for a robot which performs a set of movement functions comprising: a) a digital control computer operably connected to the robot to control the movement functions thereof, said digital control computer including program execution means for executing control programs; b) means for inputting said control programs into said digital control computer for execution thereby; and c) translator means for reading a set of robot control statement sequences and for generating control programs therefrom defining a set of robot control sequences, said translator means comprising, c1) first translator means for accepting as inputs thereto statements in a high level spatial operator algebra language and for outputting machine language sequences reflecting said inputs to said first translator means and executable by said digital control computer, and c2) second translator means for accepting as inputs thereto statements in a high level robot applications language and for outputting to said first translator means statements in said high level spatial operator algebra language reflecting said inputs to said second translator means.
Claim 7
Dependent Claim 172 words
A high level language-based control system for a robot which performs a set of movement functions comprising: a) a digital control computer operably connected to the robot to control the movement functions thereof, said digital control computer including program execution means for executing control programs; b) means for inputting said control programs into said digital control computer for execution thereby; and c) translator means for reading a set of robot control statement sequences and for generating control programs therefrom defining a set of robot control sequences, said translator means comprising, c1) first translator means for accepting as inputs thereto statements in a high level spatial operator algebra language and for outputting machine language sequences reflecting said inputs to said first translator means and executable by said digital control computer, and c2) second translator means for accepting as inputs thereto statements in a high level robot applications language and for outputting to said first translator means statements in said high level spatial operator algebra language reflecting said inputs to said second translator means.
Claim 8
Dependent Claim 67 words
The high level language-based control system for a robot of claim 5 and additionally comprising: robot simulation means operably connected to said digital control computer for executing said control programs in a simulation mode prior to executing them to control the robot and for preventing said digital control computer from executing said control programs to control the robot if a problem is detected in said simulation mode.
Claim 9
Dependent Claim 60 words
The high level language-based control system for a robot of claim 6 and additionally comprising: reconfiguration means connected to said robot simulation means for reconfiguring said programs when problems exist in said simulation mode to a form in which no problems exist in said simulation mode before allowing said digital control computer to execute said programs to control the robot.
Claim 10
Dependent Claim 63 words
The high level language-based control system for a robot of claim 6 in which said robot works in an environment, and additionally comprising: robot and environmental definition means connected to said robot simulation means for holding and providing data about the robot and the environment in which the robot is working which is used to determine if problems exist in said simulation mode.
Claim 11
Dependent Claim 38 words
The high level language-based control system for a robot of claim 8 wherein: said robot and environmental definition means includes means for dynamically changing said data about the robot and the environment in which the robot is working.
Claim 12
Dependent Claim 36 words
The high level language-based control system for a robot of claim 5 wherein: said first translator means includes embedded algorithms defining standard robot movements and actions whereby execution time of said machine language sequences is minimized.
Claim 13
Dependent Claim 286 words
In a computer-controlled robot having at least one gripping arm with a plurality of degrees of freedom for performing a set of movement functions wherein a digital control computer executing control programs contained therein is operably connected to the robot to control the movement functions thereof whereby said robot is a computer-controlled robot, an improvement for improving ease of programming the digital control computer and for improving operation of the robot comprising: b) translator means for reading a set of robot control statement sequences and for generating control programs therefrom defining a set of robot control sequences, said translator means comprising: a) translator means for reading a set of robot control statement sequences and for generating control programs for the digital control computer therefrom defining a set of robot control sequences, said translator means comprising: (1) first translator means for accepting as inputs thereto statements in a high level spatial operator algebra language and for outputting machine language sequences reflecting said inputs to said first translator means and executable by said digital control computer, and (2) second translator means for accepting as inputs thereto statements in a high level robot applications language and for outputting said first translator means statements in said high level spatial operator algebra language reflecting said inputs to said second translator means; b) means for inputting said control programs into the digital control computer for execution thereby; and c) robot simulation means operably connected to the digital control computer for executing said control programs in a fast simulation mode prior to executing them to control the robot and for preventing said digital control computer from executing said control programs to control the robot if a problem is detected in said simulation mode.
Claim 14
Dependent Claim 286 words
In a computer-controlled robot having at least one gripping arm with a plurality of degrees of freedom for performing a set of movement functions wherein a digital control computer executing control programs contained therein is operably connected to the robot to control the movement functions thereof whereby said robot is a computer-controlled robot, an improvement for improving ease of programming the digital control computer and for improving operation of the robot comprising: b) translator means for reading a set of robot control statement sequences and for generating control programs therefrom defining a set of robot control sequences, said translator means comprising: a) translator means for reading a set of robot control statement sequences and for generating control programs for the digital control computer therefrom defining a set of robot control sequences, said translator means comprising: (1) first translator means for accepting as inputs thereto statements in a high level spatial operator algebra language and for outputting machine language sequences reflecting said inputs to said first translator means and executable by said digital control computer, and (2) second translator means for accepting as inputs thereto statements in a high level robot applications language and for outputting said first translator means statements in said high level spatial operator algebra language reflecting said inputs to said second translator means; b) means for inputting said control programs into the digital control computer for execution thereby; and c) robot simulation means operably connected to the digital control computer for executing said control programs in a fast simulation mode prior to executing them to control the robot and for preventing said digital control computer from executing said control programs to control the robot if a problem is detected in said simulation mode.
Claim 15
Dependent Claim 56 words
The improvement to a computer-controlled robot of claim 11 and additionally comprising: reconfiguration means connected to said robot simulation means for reconfiguring said programs when problems exist in said simulation mode to a form in which no problems exist in said simulation mode before allowing the control computer to execute said programs to control the robot.
Claim 16
Dependent Claim 52 words
The improvement to a computer-controlled robot of claim 11 and additionally comprising: robot and environmental definition means connected to said robot simulation means for holding and providing data about the robot and the environment in which the robot is working which is used to determine if problems exist in said simulation mode.
Claim 17
Dependent Claim 35 words
The improvement to a computer-controlled robot of claim 13 wherein: said robot and environmental definition means includes means for dynamically changing said data about the robot and the environment in which the robot is working.
Claim 18
Dependent Claim 33 words
The improvement to a computer-controlled robot of claim 13 wherein: said first translator means includes embedded algorithms defining standard robot movement and actions whereby execution time of said machine language sequences is minimized.
Claim 19
Dependent Claim 222 words
A high level language-based control system for programming and controlling a multiple-armed robot having multiple degrees of freedom for performing a set of movement functions, comprising: a) a digital control computer operably connected to the multiple-armed robot to control the movement functions thereof, said digital control computer including program execution means for executing control programs; b) means for inputting said control programs into said digital control computer for execution thereby; and c) translator means for reading a set of robot control statement sequences and for generating control programs therefrom defining a set of robot control sequences, said translator means comprising, c1) first translator means for accepting as inputs thereto statements in a high level spatial operator algebra language and for outputting machine language sequences reflecting said inputs to said first translator means and executable by said digital control computer, said first translator means including embedded algorithms defining standard robot movements and actions whereby execution time of said machine language sequences is minimized, and c2) second translator means for accepting as inputs thereto statements in a high level robot applications language comprising operators for standard robot movement of multiple arms moving in cooperation such as MOVE, SQUEEZE, GRIP and for outputting to said first translator means statements in said high level spatial operator algebra language reflecting said inputs to said second translator means.
Claim 20
Dependent Claim 222 words
A high level language-based control system for programming and controlling a multiple-armed robot having multiple degrees of freedom for performing a set of movement functions, comprising: a) a digital control computer operably connected to the multiple-armed robot to control the movement functions thereof, said digital control computer including program execution means for executing control programs; b) means for inputting said control programs into said digital control computer for execution thereby; and c) translator means for reading a set of robot control statement sequences and for generating control programs therefrom defining a set of robot control sequences, said translator means comprising, c1) first translator means for accepting as inputs thereto statements in a high level spatial operator algebra language and for outputting machine language sequences reflecting said inputs to said first translator means and executable by said digital control computer, said first translator means including embedded algorithms defining standard robot movements and actions whereby execution time of said machine language sequences is minimized, and c2) second translator means for accepting as inputs thereto statements in a high level robot applications language comprising operators for standard robot movement of multiple arms moving in cooperation such as MOVE, SQUEEZE, GRIP and for outputting to said first translator means statements in said high level spatial operator algebra language reflecting said inputs to said second translator means.
Claim 21
Independent Claim 280 words
A system for controlling a multi-link, multi-joint robot with a processor controlling joint servos and responsive to joint sensors for executing arithmetic instructions, said system comprising: first compiler means for translating each one of a selected sequence of plural low level spatial operators to a corresponding sequence of arithmetic instructions and transmitting said sequence of arithmetic instructions to said processor, said set of said low level operators comprising a first type of operator for performing a coordinate transformation to a frame of reference of a current robot link, a second type of operator for propagating vector quantities across at least one of said current robot link and a corresponding robot joint, a third type of operator comprising a combination of operators of said second type, a fourth type of operator for performing a recursion of plural operators of said third type across plural robot links of a robot member, a fifth type of operator including operators produced from operators of said fourth type, and a sixth type of operator for combining operators of said fifth type; second compiler means for translating each one of a set of plural high level operators to a corresponding sequence of at least some of said low level operators and transmitting said sequence of low level operators to said first compiler means as said selected sequence, said sequence of low level operators comprising plural iterations associated with plural discrete points in time, each iteration comprising a first, second, third, fourth, fifth and sixth levels comprising, respectively, low level operators of said first, second, third, fourth, fifth and sixth types, whereby each high level operator comprises a modular assembly of ones of said low level operators.
Claim 22
Independent Claim 280 words
A system for controlling a multi-link, multi-joint robot with a processor controlling joint servos and responsive to joint sensors for executing arithmetic instructions, said system comprising: first compiler means for translating each one of a selected sequence of plural low level spatial operators to a corresponding sequence of arithmetic instructions and transmitting said sequence of arithmetic instructions to said processor, said set of said low level operators comprising a first type of operator for performing a coordinate transformation to a frame of reference of a current robot link, a second type of operator for propagating vector quantities across at least one of said current robot link and a corresponding robot joint, a third type of operator comprising a combination of operators of said second type, a fourth type of operator for performing a recursion of plural operators of said third type across plural robot links of a robot member, a fifth type of operator including operators produced from operators of said fourth type, and a sixth type of operator for combining operators of said fifth type; second compiler means for translating each one of a set of plural high level operators to a corresponding sequence of at least some of said low level operators and transmitting said sequence of low level operators to said first compiler means as said selected sequence, said sequence of low level operators comprising plural iterations associated with plural discrete points in time, each iteration comprising a first, second, third, fourth, fifth and sixth levels comprising, respectively, low level operators of said first, second, third, fourth, fifth and sixth types, whereby each high level operator comprises a modular assembly of ones of said low level operators.
Claim 23
Dependent Claim 47 words
The system of claim 17 further comprising: robot architecture memory means for storing high level program statements in an order which includes said set of high level operators whereby to define a particular robot architecture, and for transmitting said statements to said second compiler in said order.
Claim 24
Dependent Claim 38 words
The system of claim 17 wherein fifth type of operator comprises a Kalman transition operator and said sixth type of operator comprises an operator which performs a Kalman filter operation in combining said operators of said fifth type.
Claim 25
Dependent Claim 43 words
The system of claim 19 wherein said Kalman filter provides a Kalman gain for each one of said links, and wherein said second type of operator which propagates vector quantities across a robot joint comprises the Kalman gain of said corresponding robot joint.
Claim 26
Dependent Claim 24 words
The system of claim 19 wherein said fifth type of operator further comprises a robot joint axis projection operator and a pickoff projection operator.
Claim 27
Dependent Claim 28 words
The system of claim 21 wherein the sequence of low level operators of one of said high level operators further comprises another one of said high level operators.
Claim 28
Dependent Claim 43 words
The system of claim 21 wherein said recursion comprises one of an inward recursion beginning at a tip joint and concluding at a base joint of said robot and an outward recursion beginning at said base joint and concluding at said tip joint.
Claim 29
Dependent Claim 41 words
The system of claim 21 wherein one of said high level operators corresponds to a linearized robot dynamic model and at least some of the fifth type of operators thereof comprise partial derivatives of others of said fifth type of operators.
Claim 30
Dependent Claim 72 words
The system of claim 21 further comprising designer input means external of said robot and connected to said second compiler means for naming a high level operator and for selecting plural ones of said low level operators and specifying connections among the selected plural low level operators corresponding to a sequence of said low level operators to which said second compiler means translates the high level operator named by said input means.
Claim 31
Dependent Claim 16 words
The system of claim 21 wherein said first and second compiler means reside within said robot.
Claim 32
Dependent Claim 27 words
The system of claim 22 further comprising user input means external of said robot for entering said high level program statements into said robot architecture memory means.
Claim 33
Independent Claim 270 words
A method for controlling a multi-link, multi-joint robot with a processor controlling joint servos and responsive to joint sensors for executing arithmetic instructions, said method comprising: compiling each one of a selected sequence of plural low level spatial operators to a corresponding sequence of arithmetic instructions and transmitting said sequence of arithmetic instructions to processor, said set of said low level operators comprising a first type of operator for performing a coordinate transformation to a frame of reference of a current robot link, a second type of operator for propagating vector quantities across at least one of said current robot link and a corresponding robot joint, a third type of operator comprising a combination of operators of said second type, a fourth type of operator for performing a recursion of plural operators of said third type across plural robot links of a robot member, a fifth type of operator including operators produced from operators of said fourth type, and a sixth type of operator for combining operators of said fifth type; translating each one of a set of plural high level operators to a corresponding sequence of at least some of said low level operators and transmitting said sequence of low level operators as said selected sequence for said compiling step, said sequence of low level operators comprising plural iterations associated with plural discrete points in time, each iteration comprising a first, second, third, fourth, fifth and sixth levels comprising, respectively, low level operators of said first, second, third, fourth, fifth and sixth types, whereby each high level operator comprises a modular assembly of ones of said low level operators.
Claim 34
Independent Claim 270 words
A method for controlling a multi-link, multi-joint robot with a processor controlling joint servos and responsive to joint sensors for executing arithmetic instructions, said method comprising: compiling each one of a selected sequence of plural low level spatial operators to a corresponding sequence of arithmetic instructions and transmitting said sequence of arithmetic instructions to processor, said set of said low level operators comprising a first type of operator for performing a coordinate transformation to a frame of reference of a current robot link, a second type of operator for propagating vector quantities across at least one of said current robot link and a corresponding robot joint, a third type of operator comprising a combination of operators of said second type, a fourth type of operator for performing a recursion of plural operators of said third type across plural robot links of a robot member, a fifth type of operator including operators produced from operators of said fourth type, and a sixth type of operator for combining operators of said fifth type; translating each one of a set of plural high level operators to a corresponding sequence of at least some of said low level operators and transmitting said sequence of low level operators as said selected sequence for said compiling step, said sequence of low level operators comprising plural iterations associated with plural discrete points in time, each iteration comprising a first, second, third, fourth, fifth and sixth levels comprising, respectively, low level operators of said first, second, third, fourth, fifth and sixth types, whereby each high level operator comprises a modular assembly of ones of said low level operators.
Claim 35
Dependent Claim 47 words
The method of claim 28 further comprising: storing high level program statements in an order which includes selected ones of said high level operators whereby to define a particular robot architecture, and transmitting said statements as said set of plural high level operators for said translating step.
Claim 36
Dependent Claim 38 words
The method of claim 28 wherein fifth type of operator comprises a Kalman transition operator and said sixth type of operator comprises an operator which performs a Kalman filter operation in combining said operators of said fifth type.
Claim 37
Dependent Claim 43 words
The method of claim 30 wherein said Kalman filter provides a Kalman gain for each one of said links, and wherein said second type of operator which propagates vector quantities across a robot joint comprises the Kalman gain of said corresponding robot joint.
Claim 38
Dependent Claim 24 words
The method of claim 30 wherein said fifth type of operator further comprises a robot joint axis projection operator and a pickoff projection operator.
Claim 39
Dependent Claim 37 words
The method of claim 28 wherein the sequence of low level operators of one of said high level operators further comprises another one of said high level operators at one of said first, second and third levels.
Claim 40
Dependent Claim 43 words
The method of claim 28 wherein said recursion comprises one of an inward recursion beginning at a tip joint and concluding at a base joint of said robot and an outward recursion beginning at said base joint and concluding at said tip joint.
Claim 41
Dependent Claim 41 words
The method of claim 28 wherein one of said high level operators corresponds to a linearized robot dynamic model and at least some of the fifth type of operators thereof comprise partial derivatives of others of said fifth type of operators.
Claim 42
Dependent Claim 50 words
The method of claim 32 further comprising naming a high level operator, selecting plural ones of said low level operators and specifying connections among the selected plural low level operators corresponding to a sequence of said low level operators to which said translating step translates the named high level operator.

References Cited (Backward Citations)

US4620831A Cited
US4680519A Cited
US5155423A Cited
US4757459A Cited
US4763055A Cited
US5008834A Cited
US4831549A Cited
US5204942A Cited
US5079491A Cited
US5084826A Cited

USPTO Annuity & Maintenance Windows

Annuity Stage Window Opens Payment Deadline Surcharge Period Until Estimated Fee Status
3.5 Years (Year 4) 1997-04-11 1997-10-11 1998-04-12 $2000.00 Window Closed / Lapsed
7.5 Years (Year 8) 2001-04-11 2001-10-11 2002-04-12 $3760.00 Window Closed / Lapsed
11.5 Years (Year 12) 2005-04-11 2005-10-11 2006-04-12 $7700.00 Window Closed / Lapsed

Assigned Categories & Tags

No categories assigned to this patent yet.

Assign Category Tag