WO2008150630A2 - Variable primitive mapping for a robotic crawler - Google Patents
Variable primitive mapping for a robotic crawler Download PDFInfo
- Publication number
- WO2008150630A2 WO2008150630A2 PCT/US2008/063058 US2008063058W WO2008150630A2 WO 2008150630 A2 WO2008150630 A2 WO 2008150630A2 US 2008063058 W US2008063058 W US 2008063058W WO 2008150630 A2 WO2008150630 A2 WO 2008150630A2
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- level
- robotic crawler
- low
- primitive
- sensor
- 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.)
- Ceased
Links
Classifications
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B25—HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
- B25J—MANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
- B25J5/00—Manipulators mounted on wheels or on carriages
- B25J5/005—Manipulators mounted on wheels or on carriages mounted on endless tracks or belts
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B25—HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
- B25J—MANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
- B25J9/00—Program-controlled manipulators
- B25J9/16—Program controls
- B25J9/1602—Program controls characterised by the control system, structure, architecture
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B62—LAND VEHICLES FOR TRAVELLING OTHERWISE THAN ON RAILS
- B62D—MOTOR VEHICLES; TRAILERS
- B62D55/00—Endless track vehicles
- B62D55/06—Endless track vehicles with tracks without ground wheels
- B62D55/075—Tracked vehicles for ascending or descending stairs, steep slopes or vertical surfaces
Definitions
- the present invention relates to the control of robotic devices capable of movement.
- robotic crawler Some robotic crawler are quite versatile, enabling a number of tasks to be performed. Control of a complex robotic crawler can be quite challenging when there are many joints, motors, etc. to be coordinated.
- One control approach is the so-called "replica master" mode of operation.
- the robot is slaved to a replica master, which provides the same joints and actuators as the robot. As the operator manipulates the master, the master communicates positions of joints and actuators to robot, which attempts to move to the same position.
- each additional function or capability provided by the robotic crawler involves the addition of controls that the operator will learn to operate to use the robotic crawler. With more controls to operate, the operator tends to be slower to respond to environmental changes, in turn limiting the robotic crawler's agility.
- the present invention includes a method and system for varying the character of movement of a robotic crawler.
- a method of varying the character of movement of the robotic crawler includes defining a plurality of low-level primitives to control basic movements of the robotic crawler.
- a high-level primitive, accepted from an operator, is mapped into a variable set of low-level primitives for execution by the robotic crawler to produce varying modes of movement.
- the mapping can be a function of environmental data sensed by the robotic crawler.
- the robotic crawler executes the variable set of low-level primitives to move the robotic crawler.
- FIG. l(a) - FlG. l(d) are perspective illustrations of a robotic crawler in various poses according to an exemplary embodiment of the present invention
- FIG. 2 is a block diagram of a robotic crawler control system in accordance with an embodiment of the present invention
- FIG. 3 is a block diagram of a primitive hierarchy in accordance with an embodiment of the present invention
- FIG. 4 is a block diagram of a robotic crawler control system in accordance with another embodiment of the present invention.
- FIG. 5 illustrates a flow chart of a method of varying character of movement of a robotic crawler within an environment in accordance with an embodiment of the present invention.
- FIG. l(a) - FIG. l(d) shown is an illustration of a robotic crawler in accordance with one embodiment of the present invention. While the illustrated crawler is a ground crawler, it will be appreciated that embodiments of the present invention are not limited to ground operated crawlers, and can be applied to robotic crawlers operating in other environments.
- the robotic crawler shown generally at 10, includes two frames 12a, 12b, each having a track 14a, 14b.
- the frames are coupled together through a multiple degree of freedom linkage arm 16 have a plurality of joints 18. Coupled to the frames are jointed arms 20a, 20b, each having a first arm segment 22a, 22b and a second arm segment 24a, 24b.
- the arm segments are coupled with an arm joint 26a, 26b,
- Each jointed arm can include a sensor 28a, 28b.
- the robotic crawler 10 is capable of a variety of movement modes.
- the frames 12a, 12b can be configured in a "train" pose as illustrated in FIG. l(a) where the frames are approximately aligned in the same direction.
- forward and backward movement can be achieved by operating the tracks 14a, 14b so they move in the same relative direction.
- the multi-degree of freedom linkage arm 16 can be configured to provide a sideways offset of the frames I2a, 12b to place the robotic crawler 10 in a "zag" pose, as illustrated in FIG. l(b).
- the zag pose provides increased lateral stability, for example, while traversing or climbing a hill. Movement can be provided by rotation of the tracks 14a, 14b in the same way as for when in the train pose.
- FIG. l(c) An alternate movement mode is possible when in the "tank" pose shown in FIG. l(c) where the frames 12a, 12b are positioned side by side.
- the robotic crawler 10 can be moved in a forward and reserve direction by driving the tracks 14a, 14b in the same relative direction.
- the robotic crawler can be turned by driving the continuous tracks differentially (at different rates or even in different directions).
- moving the robotic crawler in the tank pose can involve applying different drive speeds and directions to the tracks. The direction sense of one of the tracks is reversed when in the tank pose relative to direction when in the train pose.
- rotation of the tracks 14a, 14b can be combined with actuation of the jointed arms 20a, 20b.
- the leading arm 20a can lift the end of the leading frame 12a up to clear an obstacle, climb a step, or enter a raised hole.
- the jointed arms 20a, 20b can be rotated to provide a swimming or hopping like motion to the robotic crawler.
- movement can include various four-legged gaits, including for example, walk, trot, cantor, gallop, bound, and pronk.
- Four-legged gaits can be described in part in terms of the relative phase relationships of the leg movements. For example, in walk, one leg at a time is moved in succession (e.g., left front, right hind, right front and left hind, with phase lags of 0.25 cycles between each movement).
- Pronk is where all four legs move together, for example, producing a hopping motion.
- movement modes may also be implemented which combine actuation of the jointed arms 20a, 20b and the tracks 14a, 14b, or combine actuation of the jointed arms, tracks, and the multi-degree of freedom linkage arm 16.
- movement modes can include undulating caterpillar or inchworm like movement, hopping type movements, slithering type movements, etc.
- the robotic crawler 10 is capable of operating on either horizontal or vertical surfaces. For example, by wrapping itself around a vertical pole, the robotic crawler can provide sufficient traction forces to move up and down the vertical surface.
- the most advantageous movement mode to use will vary depending on the terrain in which the robotic crawler is operating. Different movement modes may produce differing stability, traction, efficiency, and energy usage. Attempting to produce a wide variety of movement modes with a replica master, while possible, is tedious and slow.
- switching between movement modes, starting, stopping, and turning can be complex operations that vary depending on the various movement modes.
- forward movement in the train pose requires rotating the tracks in different directions than when in the tank pose.
- control of the different movement modes is often different.
- differential rates of rotation of the tracks causes the robotic crawler to turn
- actuation of the multi- degree of freedom linkage arm causes the robotic crawler to turn.
- the robotic crawler can automatically adapt the movement mode to a changing environment. Movement modes of the robotic crawler can be controlled using a hierarchical set of primitives.
- Low-level primitives can be defined for basic functions, such as turning tracks, rotating arms, etc.
- High-level primitives can be built up from the low-level primitives, to execute complex, coordinated movements and behavior, for example, tank movement, four-legged walk, etc.
- High-level primitives may correspond to operator input commands, for example, move forward, stop, navigate toward a particular point, etc.
- High-level primitives can be executed by executing the low-level primitives mapped to the high-level primitive. Executing the low-level primitives causes the robotic crawler to move.
- the mapping of high-level primitives into low-level primitives may be variable.
- the mapping may be varied in response to environmental conditions sensed by the robotic crawler to adapt movement mode of the robotic crawler to the environment.
- Variable mapping enables the robotic crawler to switch from a first movement mode optimized for a first environment to a second movement mode optimized for a second, topologically different environment when the robotic crawler moves from the first environment into the second environment.
- the interface to the high-level primitives can be held constant, independent of the environment or movement mode being executed. This can help to provide a simpler, more intuitive operator control, which operates more consistently even though the underlying movement mode of the robotic crawler is changing.
- the movement mode can be automatically selected based on the environmental data sensed by the robotic crawler. For instance, the selection of the movement mode can be based on the environmental data using a predefined association of movement modes to particular environmental conditions.
- the robotic crawler can also be configured to adaptively vary the movement mode when the environmental data indicates undesired conditions.
- the robotic crawler is to travel through three different environments: an uneven field, tangled vegetation, and a hard surface.
- the tank configuration may be used due to the stability and traction provided.
- the train configuration may be used due to the reduced cross sectional profile reducing the risk of becoming hung up in the vegetation.
- a four-legged movement mode may be used to increased speed.
- Each of these movement modes is implemented using a different set of low-level primitives. High-level primitives for "move forward" and "turn” therefore map to different low-level primitives. The mapping is changed as the robotic crawler moves from one environment to the next. For example, FIG.
- the robotic crawler control system 60 accepts an operator input 62 to one or more high-level primitives 64 to control movement of the robotic crawler.
- various high-level primitives can be included to control direction of movement, speed of movement, pose, type of movement, etc.
- the high-level primitives can also accept operator input to control operation of the primitive, such as for example, throttle settings, steering wheel position, etc.
- the high-level primitive provides control outputs 66 to a mapper 68 that maps the high-level primitive into a variable set of low-level primitives 70.
- the low-level primitives provide drive outputs 72 to control actuators, motors, or the like within the robotic crawler to move the robotic crawler.
- the mapper 68 accepts sensor input 74, which is used to determine how to map the high-level primitives 64 into a variable set of low-level primitives 70.
- the sensor data may be processed to determine a type of environment in which the robotic crawler is operating. Based on the environment, a movement mode can then be selected. Based on the movement mode, different sets of low-level primitives can be executed to place the robotic crawler into the proper pose and to implement the selected movement mode.
- an operator control console can include a joystick to generate operator input for control of direction and speed of movement.
- Joystick control can be intuitive, with movement of the joystick forward and backwards corresponding to forward and backward motion of the robotic crawler, and side to side motions corresponding to turning. How operator movements of the joystick map into detailed movements of the robotic crawler is a complex function of the movement mode currently in use by the robotic crawler. Note that more than one high-level primitive may be active at a time, for example, pushing the joystick both forward and sideways can result in forward motion and turning simultaneously.
- movement of the joystick forward or backwards provides input to a high-level "move” primitive, and is mapped into low-level primitives for driving the tracks forward and backwards (relative to the line of travel).
- Movement of the joystick left or right is input to a high-level "turn” primitive, and is mapped into low-level primitives that drive the tracks differentially to cause the robotic crawler to turn.
- "move” is mapped into primitives for driving the tracks forward and backwards (as noted above, different rotational directions than when in the tank mode) and "turn” is mapped into primitives that actuate the multi-degree of freedom linkage arm to bend the shape of the robotic crawler to effect the turn.
- Primitives may be defined for both simple and complex actions.
- primitives may be defined to control individual motors or actuators.
- primitives may be defined which control multiple motors or actuators in a coordinated way making use of other primitives.
- Primitives may be defined to place the robotic crawler into particular poses or to implement particular movement modes or gaits.
- the hierarchy of primitives can include 2, 3 or more levels of primitives, ranging from lowest-level basic primitives (e.g., operating individual actuators or motors), to mid-level primitives, to very-high-level primitives (e.g., execute a predefined mission).
- lowest-level basic primitives e.g., operating individual actuators or motors
- mid-level primitives e.g., very-high-level primitives
- very-high-level primitives e.g., execute a predefined mission.
- the primitives do not need to follow a strict hierarchy, in that a primitive may rely on several other primitives from different levels in the hierarchy.
- the primitive hierarchy may be defined so that some low-level primitives can only be accessed through mid-level primitives, while other low-level primitives can be accessed from either mid-level or high-level primitives. For example, FIG.
- FIG. 3 illustrates a block diagram of a primitive hierarchy 40 in accordance with an embodiment of the present invention.
- high-level primitives 42 are mapped by the mapper 44 into mid-level primitives 48, which in turn map into low-level primitives 46.
- mid-level primitives may define pose, traction, drive mode, etc., which are in turn translated into detailed low-level primitives.
- Various other arrangements, including additional levels of primitives, and additional mappers at more than one position within the hierarchy may also be used in embodiments of the present invention.
- a robotic crawler control system can be implemented using a microprocessor (or microcontroller) as illustrated in block diagram form in FIG. 4 in accordance with an embodiment of the present invention.
- the robotic crawler control system 80 includes a means, such as a command interface 82, for accepting from an operator a high-level primitive 84 to be performed by the robotic crawler.
- the command interface may, for example, be a wired or wireless link to an operator control console (not shown).
- the high-level primitive commands can be provided to the microprocessor 86.
- the robotic crawler can also include means for sensing the environment, such as a sensor 92 which provides environmental data 94 to the microprocessor.
- sensors 92 can be used including, for example, a camera, a chemical sensor, a biological sensor, an optical sensor, a moisture sensor, a vibration sensor, a temperature sensor, an electromagnetic sensor, a sound sensor, a force sensor, a sonar sensor, a radar sensor, a lidar sensor, a radioactive isotope sensor, a seismic sensor, a pressure sensor, a magnetometer, a sampling sensor, an orientation sensor, an inertial measurement unit, a joint torque sensor, a joint position sensor, combinations of sensors, or multiple sensors.
- Outputs of sensors provide environmental data 94, for example, in a computer-readable format, describing characteristics of the actual real-world environment in which the robotic crawler is operating.
- the robotic crawler control system 80 can include means for mapping the high- level primitives into a variable set of low-level primitives for execution by the robotic crawler, for example, software instructions for the microprocessor 86 stored in memory 88.
- the memory may be part of the microprocessor or external to the microprocessor. Various types of memories may be used, including for example, read only memory, programmable read only memory, random access memory, and the like.
- the mapping from high-level primitives into a variable set of low-level primitives can be a function of the environmental data 94.
- the sensor data may be processed to recognize an environmental condition and then an optimal movement mode selected for the particular environmental conditions. Selections may be, for example, based on predefined determination of movement modes optimized for differing environmental conditions determined experimentally or analytically. Based on the selected movement mode, the appropriate set of low-level primitives are activated to implement the high-level primitive.
- movement modes may be selected adaptively, by the microprocessor 86 selecting a first movement mode and switching to a second movement mode if the first movement mode fails.
- the environmental data 94 may indicate slippage, tilting, unstable pose, or other undesired conditions. This can cause a particular primitive to be automatically activated, such as a traction-increasing primitive, self-righting primitive, self-stabilizing primitive, etc.
- the robotic crawler control system 80 can include means for executing the variable set of low level primitives to move the robotic crawler, for example drivers 96.
- the drivers provide output signals from the microprocessor to drive the various actuators, motors, etc. 98 of the robotic crawler to produce physical movements of the robotic crawler.
- variable set of low-level primitives that are executed may be dynamically changing. Some low-level primitives may be activated for a while, and then deactivated later. Furthermore, some predefined primitives may be activated (and deactivated) automatically when predetermined environmental conditions are sensed.
- mapping the high-level primitive into a variable set of low-level primitives can include executing a self-righting primitive when the environmental data indicates the robotic crawler is tipping over, a traction- increasing primitive when the robotic crawler is slipping, or a self-stabilizing primitive when the robotic crawler is in an unstable pose.
- FIG. 5 illustrates a method of varying character of movement of a robotic crawler within an environment.
- the method 100 includes defining 102 a plurality of low-level primitives to control basic movements of the robotic crawler.
- the low-level primitives may be defined by control circuits or software routines as described above.
- the method may also include accepting 104 from an operator a high-level primitive to be performed by the robotic crawler.
- the high-level primitive may be communicated via an operator control console (e.g., a joystick) via a wired or wireless link to the robotic crawler as described above.
- the method may also include mapping 106 the high-level primitive into a variable set of low-level primitives for execution by the robotic crawler to produce varying modes of movement.
- the mapping can be a function of environmental data sensed by the robotic crawler.
- the robotic crawler may include various sensors and processing to determine a desired pose and/or movement mode as described above.
- the method may include executing 108 the variable set of low- level primitives to move the robotic crawler.
- robotic control using embodiments of the present invention can improve the manageability of complex, highly capable robotic crawlers. While the robotic crawler may be capable of a wide variety of movement modes, detailed low-level primitive control of the movement modes can be mapped into high-level primitives that are controlled by the operator using a small number of intuitive inputs. The operator thus need not specify every detailed movement of the robotic crawler. When necessitated by environmental conditions, the robotic crawler can automatically adjust the movement mode, pose, or other aspects of its operation without requiring operator intervention and without requiring the operator to use different control techniques or different controls. Applications of the control techniques can include complex multi-jointed robotic crawlers used in search and rescue, military operations, and industrial operations.
- the term "preferably” is non-exclusive where it is intended to mean “preferably, but not limited to.” Any steps recited in any method or process claims may be executed in any order and are not limited to the order presented in the claims. Means-plus-function or step-plus-function limitations will only be employed where for a specific claim limitation all of the following conditions are present: a) "means for” or “step for” is expressly recited in that limitation; b) a corresponding function is expressly recited in that limitation; and c) structure, material or acts that support that function are described within the specification. Accordingly, the scope of the invention should be determined solely by the appended claims and their legal equivalents, rather than by the descriptions and examples given above.
Landscapes
- Engineering & Computer Science (AREA)
- Mechanical Engineering (AREA)
- Robotics (AREA)
- Automation & Control Theory (AREA)
- Chemical & Material Sciences (AREA)
- Combustion & Propulsion (AREA)
- Transportation (AREA)
- Control Of Position, Course, Altitude, Or Attitude Of Moving Bodies (AREA)
- Manipulator (AREA)
Abstract
Varying modes of movement of a robotic crawler are provided by using a variable mapping from high-level (operator input) primitives into low-level primitives. The mapping is a function of environmental data sensed by the robotic crawler enabling the movement mode to be adapted to the environment.
Description
VARIABLE PRIMITIVE MAPPING FOR A ROBOTIC CRAWLER
RELATED APPLICATIONS
This application claims the benefit of United States Provisional Patent Application No. 60/928,483, filed May 8, 2007 in the United States Patent and Trademark Office, and entitled, "Variable Primitive Mapping For A Robotic Crawler," which application is incorporated by reference in its entirety herein.
This application further incorporates herein by reference commonly-owned and co-pending U.S. Patent Application No. 11/985,323, entitled "Serpentine Robotic Crawler," and U.S. Patent Application No. 11/985,336, entitled "Tracked Robotic Crawler Having a Moveable Arm," both filed on November 13, 2007.
FIELD OF THE INVENTION
The present invention relates to the control of robotic devices capable of movement.
BACKGROUND OF THE INVENTION AND RELATED ART
Research in robotics has resulted in a plethora of different robot configurations. A particularly interesting area of robotics is robotic devices that can move, referred to generally as robotic vehicles or robotic crawlers. Some robotic crawler are quite versatile, enabling a number of tasks to be performed. Control of a complex robotic crawler can be quite challenging when there are many joints, motors, etc. to be coordinated. One control approach is the so-called "replica master" mode of operation. The robot is slaved to a replica master, which provides the same joints and actuators as the robot. As the operator manipulates the master, the master communicates positions of joints and actuators to robot, which attempts to move to the same position. While the replica master mode is handy for some types of robot manipulation (e.g., telemanipulation), this type of control can be a tedious way to navigate a robot through a varied terrain. Control is slow, as it puts the human operator within the control loop, making rapid response to environmental changes difficult to achieve. In addition, for very complex robotic crawlers, the number of joints to be controlled can be impractical to manage with replica master control.
Consequently, control of movement in complex robotic crawlers is often preprogrammed to establish a pattern of movement. Activation of joints and motors is coordinated according to predefined formulas or relationships to produce a specified movement mode or gait for the robotic crawler. Operator controls are typically limited to a few high level inputs into the preprogrammed movement, such as direction and speed. While such a control approach makes the operator's job much easier, it is at the cost of reduced capability for the robotic crawler. Typically, each additional function or capability provided by the robotic crawler involves the addition of controls that the operator will learn to operate to use the robotic crawler. With more controls to operate, the operator tends to be slower to respond to environmental changes, in turn limiting the robotic crawler's agility.
SUMMARY OF THE INVENTION
The present invention includes a method and system for varying the character of movement of a robotic crawler. In one embodiment, a method of varying the character of movement of the robotic crawler includes defining a plurality of low-level primitives to control basic movements of the robotic crawler. A high-level primitive, accepted from an operator, is mapped into a variable set of low-level primitives for execution by the robotic crawler to produce varying modes of movement. The mapping can be a function of environmental data sensed by the robotic crawler. The robotic crawler executes the variable set of low-level primitives to move the robotic crawler.
BRIEF DESCRIPTION OF THE DRAWINGS
The present invention will become more fully apparent from the following description and appended claims, taken in conjunction with the accompanying drawings. Understanding that these drawings merely depict exemplary embodiments of the present invention, they are, therefore, not to be considered limiting of its scope. It will be readily appreciated that the components of the present invention, as generally described and illustrated in the figures herein, can be arranged and designed in a wide variety of different configurations. Nonetheless, the invention will be described and explained with additional specificity and detail through the use of the accompanying drawings in which: FIG. l(a) - FlG. l(d) are perspective illustrations of a robotic crawler in various poses according to an exemplary embodiment of the present invention;
FIG. 2 is a block diagram of a robotic crawler control system in accordance with an embodiment of the present invention;
FIG. 3 is a block diagram of a primitive hierarchy in accordance with an embodiment of the present invention; FIG. 4 is a block diagram of a robotic crawler control system in accordance with another embodiment of the present invention; and
FIG. 5 illustrates a flow chart of a method of varying character of movement of a robotic crawler within an environment in accordance with an embodiment of the present invention.
DETAILED DESCRIPTION OF EXEMPLARY EMBODIMENTS The following detailed description of exemplary embodiments of the invention makes reference to the accompanying drawings, which form a part hereof and in which are shown, by way of illustration, exemplary embodiments in which the invention may be practiced. While these exemplary embodiments are described in sufficient detail to enable those skilled in the art practice the invention, it should be understood that other embodiments may be realized and that various changes to the invention may be made without departing from the spirit and scope of the present invention. Thus, the following more detailed description of the embodiments of the present invention is not intended to limit the scope of the invention, as claimed, but is presented for purposes of illustration only and not limitation: to describe the features and characteristics of the present invention, and to sufficiently enable one skilled in the art to practice the invention. Accordingly, the scope of the present invention is to be defined solely by the appended claims. The following detailed description and exemplary embodiments of the invention will be best understood by reference to the accompanying drawings, wherein the elements and features of the invention are designated by reference numbers throughout. Like reference numbers and designations in the drawings indicate like elements providing similar functionality. A letter after a reference designator number represents an instance of an element having the reference designator number
With reference to FIG. l(a) - FIG. l(d), shown is an illustration of a robotic crawler in accordance with one embodiment of the present invention. While the illustrated crawler is a ground crawler, it will be appreciated that embodiments of the
present invention are not limited to ground operated crawlers, and can be applied to robotic crawlers operating in other environments. The robotic crawler, shown generally at 10, includes two frames 12a, 12b, each having a track 14a, 14b. The frames are coupled together through a multiple degree of freedom linkage arm 16 have a plurality of joints 18. Coupled to the frames are jointed arms 20a, 20b, each having a first arm segment 22a, 22b and a second arm segment 24a, 24b. The arm segments are coupled with an arm joint 26a, 26b, Each jointed arm can include a sensor 28a, 28b.
The robotic crawler 10 is capable of a variety of movement modes. For example, the frames 12a, 12b can be configured in a "train" pose as illustrated in FIG. l(a) where the frames are approximately aligned in the same direction. In the train pose, forward and backward movement can be achieved by operating the tracks 14a, 14b so they move in the same relative direction.
The multi-degree of freedom linkage arm 16 can be configured to provide a sideways offset of the frames I2a, 12b to place the robotic crawler 10 in a "zag" pose, as illustrated in FIG. l(b). The zag pose provides increased lateral stability, for example, while traversing or climbing a hill. Movement can be provided by rotation of the tracks 14a, 14b in the same way as for when in the train pose.
An alternate movement mode is possible when in the "tank" pose shown in FIG. l(c) where the frames 12a, 12b are positioned side by side. The robotic crawler 10 can be moved in a forward and reserve direction by driving the tracks 14a, 14b in the same relative direction. The robotic crawler can be turned by driving the continuous tracks differentially (at different rates or even in different directions). In general, moving the robotic crawler in the tank pose can involve applying different drive speeds and directions to the tracks. The direction sense of one of the tracks is reversed when in the tank pose relative to direction when in the train pose.
Other movement modes for the robotic crawler 10 are also possible. For example, rotation of the tracks 14a, 14b can be combined with actuation of the jointed arms 20a, 20b. For example the leading arm 20a can lift the end of the leading frame 12a up to clear an obstacle, climb a step, or enter a raised hole. As another example, the jointed arms 20a, 20b can be rotated to provide a swimming or hopping like motion to the robotic crawler.
Yet another movement mode is possible when in the "standing" pose illustrated in FIG. l(d) where the jointed arms 20a, 20b are rotated underneath the robotic crawler 10
to function as legs. Accordingly, movement can include various four-legged gaits, including for example, walk, trot, cantor, gallop, bound, and pronk. Four-legged gaits can be described in part in terms of the relative phase relationships of the leg movements. For example, in walk, one leg at a time is moved in succession (e.g., left front, right hind, right front and left hind, with phase lags of 0.25 cycles between each movement). Trot, cantor, and gallop mirror movement modes in four legged animals, for example, horses. Bound is where the front legs move together and the rear legs move together. Pronk is where all four legs move together, for example, producing a hopping motion.
Other movement modes may also be implemented which combine actuation of the jointed arms 20a, 20b and the tracks 14a, 14b, or combine actuation of the jointed arms, tracks, and the multi-degree of freedom linkage arm 16. For example, movement modes can include undulating caterpillar or inchworm like movement, hopping type movements, slithering type movements, etc. As another example, the robotic crawler 10 is capable of operating on either horizontal or vertical surfaces. For example, by wrapping itself around a vertical pole, the robotic crawler can provide sufficient traction forces to move up and down the vertical surface.
The most advantageous movement mode to use will vary depending on the terrain in which the robotic crawler is operating. Different movement modes may produce differing stability, traction, efficiency, and energy usage. Attempting to produce a wide variety of movement modes with a replica master, while possible, is tedious and slow.
Conversely, while programming several different movement modes is possible, switching between movement modes, starting, stopping, and turning can be complex operations that vary depending on the various movement modes. For example, as noted above, forward movement in the train pose requires rotating the tracks in different directions than when in the tank pose. Moreover, control of the different movement modes is often different. For example, as noted above, when in the tank pose differential rates of rotation of the tracks causes the robotic crawler to turn, while in the train pose, actuation of the multi- degree of freedom linkage arm causes the robotic crawler to turn.
Accordingly, the robotic crawler can automatically adapt the movement mode to a changing environment. Movement modes of the robotic crawler can be controlled using a hierarchical set of primitives. Low-level primitives can be defined for basic functions, such as turning tracks, rotating arms, etc. High-level primitives can be built up from the low-level primitives, to execute complex, coordinated movements and behavior, for
example, tank movement, four-legged walk, etc. High-level primitives may correspond to operator input commands, for example, move forward, stop, navigate toward a particular point, etc. High-level primitives can be executed by executing the low-level primitives mapped to the high-level primitive. Executing the low-level primitives causes the robotic crawler to move.
The mapping of high-level primitives into low-level primitives may be variable. For example, the mapping may be varied in response to environmental conditions sensed by the robotic crawler to adapt movement mode of the robotic crawler to the environment. Variable mapping enables the robotic crawler to switch from a first movement mode optimized for a first environment to a second movement mode optimized for a second, topologically different environment when the robotic crawler moves from the first environment into the second environment. By changing the mapping between high-level primitives and low-level primitives, the interface to the high-level primitives can be held constant, independent of the environment or movement mode being executed. This can help to provide a simpler, more intuitive operator control, which operates more consistently even though the underlying movement mode of the robotic crawler is changing.
The movement mode can be automatically selected based on the environmental data sensed by the robotic crawler. For instance, the selection of the movement mode can be based on the environmental data using a predefined association of movement modes to particular environmental conditions. The robotic crawler can also be configured to adaptively vary the movement mode when the environmental data indicates undesired conditions.
Consider an example where the robotic crawler is to travel through three different environments: an uneven field, tangled vegetation, and a hard surface. For crossing the uneven field, the tank configuration may be used due to the stability and traction provided. Upon encountering the tangled vegetation, the train configuration may be used due to the reduced cross sectional profile reducing the risk of becoming hung up in the vegetation. Finally, for the hard surface, a four-legged movement mode may be used to increased speed. Each of these movement modes is implemented using a different set of low-level primitives. High-level primitives for "move forward" and "turn" therefore map to different low-level primitives. The mapping is changed as the robotic crawler moves from one environment to the next.
For example, FIG. 2 illustrates a block diagram of robotic crawler control system in accordance with an embodiment of the present invention. The robotic crawler control system 60 accepts an operator input 62 to one or more high-level primitives 64 to control movement of the robotic crawler. As mentioned above, various high-level primitives can be included to control direction of movement, speed of movement, pose, type of movement, etc. The high-level primitives can also accept operator input to control operation of the primitive, such as for example, throttle settings, steering wheel position, etc. The high-level primitive provides control outputs 66 to a mapper 68 that maps the high-level primitive into a variable set of low-level primitives 70. The low-level primitives provide drive outputs 72 to control actuators, motors, or the like within the robotic crawler to move the robotic crawler.
The mapper 68 accepts sensor input 74, which is used to determine how to map the high-level primitives 64 into a variable set of low-level primitives 70. For example, the sensor data may be processed to determine a type of environment in which the robotic crawler is operating. Based on the environment, a movement mode can then be selected. Based on the movement mode, different sets of low-level primitives can be executed to place the robotic crawler into the proper pose and to implement the selected movement mode.
As a specific example, an operator control console can include a joystick to generate operator input for control of direction and speed of movement. Joystick control can be intuitive, with movement of the joystick forward and backwards corresponding to forward and backward motion of the robotic crawler, and side to side motions corresponding to turning. How operator movements of the joystick map into detailed movements of the robotic crawler is a complex function of the movement mode currently in use by the robotic crawler. Note that more than one high-level primitive may be active at a time, for example, pushing the joystick both forward and sideways can result in forward motion and turning simultaneously.
In the tank mode, movement of the joystick forward or backwards provides input to a high-level "move" primitive, and is mapped into low-level primitives for driving the tracks forward and backwards (relative to the line of travel). Movement of the joystick left or right is input to a high-level "turn" primitive, and is mapped into low-level primitives that drive the tracks differentially to cause the robotic crawler to turn. In the train mode, "move" is mapped into primitives for driving the tracks forward and
backwards (as noted above, different rotational directions than when in the tank mode) and "turn" is mapped into primitives that actuate the multi-degree of freedom linkage arm to bend the shape of the robotic crawler to effect the turn. In four-legged mode, "move" is mapped into primitives that control operation of the jointed arms and "turn" is mapped either to primitives that control actuation of the multi-degree of freedom linkage arm or to primitives that control differential movement of the jointed arms. Table 1 provides a summary of the above example according to an embodiment of the present invention.
Table 1 - Summary of Mapping for Different Movement Modes
While the preceding example is somewhat simplified for illustration purposes, it should be appreciated that a large number of primitives and variable mappings may be used for the robotic crawler. Primitives may be defined for both simple and complex actions. For example, primitives may be defined to control individual motors or actuators. As another example, primitives may be defined which control multiple motors or actuators in a coordinated way making use of other primitives. Primitives may be defined to place the robotic crawler into particular poses or to implement particular movement modes or gaits.
Although described herein in terms of low-level primitives and high-level primitives, the hierarchy of primitives can include 2, 3 or more levels of primitives, ranging from lowest-level basic primitives (e.g., operating individual actuators or motors), to mid-level primitives, to very-high-level primitives (e.g., execute a predefined mission). Moreover, it should be appreciated that the primitives do not need to follow a strict hierarchy, in that a primitive may rely on several other primitives from different levels in the hierarchy. The primitive hierarchy may be defined so that some low-level primitives can only be accessed through mid-level primitives, while other low-level primitives can be accessed from either mid-level or high-level primitives.
For example, FIG. 3 illustrates a block diagram of a primitive hierarchy 40 in accordance with an embodiment of the present invention. In the primitive hierarchy, high-level primitives 42 are mapped by the mapper 44 into mid-level primitives 48, which in turn map into low-level primitives 46. For example, mid-level primitives may define pose, traction, drive mode, etc., which are in turn translated into detailed low-level primitives. Various other arrangements, including additional levels of primitives, and additional mappers at more than one position within the hierarchy may also be used in embodiments of the present invention.
A robotic crawler control system can be implemented using a microprocessor (or microcontroller) as illustrated in block diagram form in FIG. 4 in accordance with an embodiment of the present invention. The robotic crawler control system 80 includes a means, such as a command interface 82, for accepting from an operator a high-level primitive 84 to be performed by the robotic crawler. The command interface may, for example, be a wired or wireless link to an operator control console (not shown). The high-level primitive commands can be provided to the microprocessor 86. The robotic crawler can also include means for sensing the environment, such as a sensor 92 which provides environmental data 94 to the microprocessor. Various types of sensors 92 can be used including, for example, a camera, a chemical sensor, a biological sensor, an optical sensor, a moisture sensor, a vibration sensor, a temperature sensor, an electromagnetic sensor, a sound sensor, a force sensor, a sonar sensor, a radar sensor, a lidar sensor, a radioactive isotope sensor, a seismic sensor, a pressure sensor, a magnetometer, a sampling sensor, an orientation sensor, an inertial measurement unit, a joint torque sensor, a joint position sensor, combinations of sensors, or multiple sensors. Outputs of sensors provide environmental data 94, for example, in a computer-readable format, describing characteristics of the actual real-world environment in which the robotic crawler is operating.
The robotic crawler control system 80 can include means for mapping the high- level primitives into a variable set of low-level primitives for execution by the robotic crawler, for example, software instructions for the microprocessor 86 stored in memory 88. The memory may be part of the microprocessor or external to the microprocessor. Various types of memories may be used, including for example, read only memory, programmable read only memory, random access memory, and the like.
The mapping from high-level primitives into a variable set of low-level primitives can be a function of the environmental data 94. For example, the sensor data may be processed to recognize an environmental condition and then an optimal movement mode selected for the particular environmental conditions. Selections may be, for example, based on predefined determination of movement modes optimized for differing environmental conditions determined experimentally or analytically. Based on the selected movement mode, the appropriate set of low-level primitives are activated to implement the high-level primitive.
As another example, movement modes may be selected adaptively, by the microprocessor 86 selecting a first movement mode and switching to a second movement mode if the first movement mode fails. For example, the environmental data 94 may indicate slippage, tilting, unstable pose, or other undesired conditions. This can cause a particular primitive to be automatically activated, such as a traction-increasing primitive, self-righting primitive, self-stabilizing primitive, etc. The robotic crawler control system 80 can include means for executing the variable set of low level primitives to move the robotic crawler, for example drivers 96. The drivers provide output signals from the microprocessor to drive the various actuators, motors, etc. 98 of the robotic crawler to produce physical movements of the robotic crawler. The examples provided so far have been relatively straightforward, but it should be appreciated that complex mappings can be used. For example, sensor data may be processed to determine effectiveness of the movement mode with respect to traction, power efficiency, noise generation, etc. Accordingly, the variable set of low-level primitives that are executed may be dynamically changing. Some low-level primitives may be activated for a while, and then deactivated later. Furthermore, some predefined primitives may be activated (and deactivated) automatically when predetermined environmental conditions are sensed. For example, mapping the high-level primitive into a variable set of low-level primitives can include executing a self-righting primitive when the environmental data indicates the robotic crawler is tipping over, a traction- increasing primitive when the robotic crawler is slipping, or a self-stabilizing primitive when the robotic crawler is in an unstable pose.
FIG. 5 illustrates a method of varying character of movement of a robotic crawler within an environment. The method 100 includes defining 102 a plurality of low-level
primitives to control basic movements of the robotic crawler. For example, the low-level primitives may be defined by control circuits or software routines as described above. The method may also include accepting 104 from an operator a high-level primitive to be performed by the robotic crawler. For example, the high-level primitive may be communicated via an operator control console (e.g., a joystick) via a wired or wireless link to the robotic crawler as described above. The method may also include mapping 106 the high-level primitive into a variable set of low-level primitives for execution by the robotic crawler to produce varying modes of movement. The mapping can be a function of environmental data sensed by the robotic crawler. For example, the robotic crawler may include various sensors and processing to determine a desired pose and/or movement mode as described above. Finally, the method may include executing 108 the variable set of low- level primitives to move the robotic crawler.
Summarizing and reiterating to some extent, robotic control using embodiments of the present invention can improve the manageability of complex, highly capable robotic crawlers. While the robotic crawler may be capable of a wide variety of movement modes, detailed low-level primitive control of the movement modes can be mapped into high-level primitives that are controlled by the operator using a small number of intuitive inputs. The operator thus need not specify every detailed movement of the robotic crawler. When necessitated by environmental conditions, the robotic crawler can automatically adjust the movement mode, pose, or other aspects of its operation without requiring operator intervention and without requiring the operator to use different control techniques or different controls. Applications of the control techniques can include complex multi-jointed robotic crawlers used in search and rescue, military operations, and industrial operations. The foregoing detailed description describes the invention with reference to specific exemplary embodiments. However, it will be appreciated that various modifications and changes can be made without departing from the scope of the present invention as set forth in the appended claims. The detailed description and accompanying drawings are to be regarded as merely illustrative, rather than as restrictive, and all such modifications or changes, if any, are intended to fall within the scope of the present invention as described and set forth herein.
More specifically, while illustrative exemplary embodiments of the invention have been described herein, the present invention is not limited to these embodiments, but
includes any and all embodiments having modifications, omissions, combinations (e.g., of aspects across various embodiments), adaptations and/or alterations as would be appreciated by those in the art based on the foregoing detailed description. The limitations in the claims are to be interpreted broadly based the language employed in the claims and not limited to examples described in the foregoing detailed description or during the prosecution of the application, which examples are to be construed as nonexclusive. For example, in the present disclosure, the term "preferably" is non-exclusive where it is intended to mean "preferably, but not limited to." Any steps recited in any method or process claims may be executed in any order and are not limited to the order presented in the claims. Means-plus-function or step-plus-function limitations will only be employed where for a specific claim limitation all of the following conditions are present: a) "means for" or "step for" is expressly recited in that limitation; b) a corresponding function is expressly recited in that limitation; and c) structure, material or acts that support that function are described within the specification. Accordingly, the scope of the invention should be determined solely by the appended claims and their legal equivalents, rather than by the descriptions and examples given above.
Claims
1. A method for varying character of movement of a robotic crawler within an environment, comprising: defining a plurality of low-level primitives to control basic movements of the robotic crawler; accepting from an operator a high-level primitive to be performed by the robotic crawler; mapping the high-level primitive into a variable set of low-level primitives for execution by the robotic crawler to produce varying modes of movement, wherein the mapping is a function of environmental data sensed by the robotic crawler; and executing the variable set of low-level primitives to move the robotic crawler.
2. The method of claim 1, wherein defining a plurality of low-level primitives comprises defining a plurality of low-level primitives corresponding to particular poses of the robotic crawler.
3. The method of claim 1 , wherein the means for mapping the variable set of low-level primitives comprises means for activating a predefined primitive when a predefined environmental condition is sensed.
4. The system of claim 1, wherein the means for mapping the variable set of low-level primitives comprises means for deactivating a predefined primitive when a predefined environmental condition is sensed.
5. The method of claim 1, wherein mapping the high-level primitive into a variable set of low-level primitives comprises: switching from a first movement mode optimized for a first environment to a second movement mode optimized for a second, topographically different, environment when the robotic crawler moves from the first environment to the second environment.
6. The method of claim 5, wherein the first environment is a horizontal surface and the second environment is a vertical surface.
7. The method of claim 1, wherein mapping the high-level primitive into a variable set of low-level primitives comprises executing a self-righting primitive when the environmental data indicates the robotic crawler is tipping over.
8. The method of claim 1, wherein mapping the high-level primitive into a variable set of low-level primitives comprises executing a traction-increasing primitive when the environmental data indicates the robotic crawler is slipping.
9. The method of claim 1, wherein mapping the high-level primitive into a variable set of low-level primitives comprises executing a self-stabilizing primitive when the environmental data indicates the robotic crawler is in an unstable pose.
10. The method of claim 1, wherein mapping the high-level primitive into a variable set of low-level primitives comprises mapping a high-level movement primitive command into low-level primitives defining pose, traction and drive mode, wherein the pose, traction and drive mode are a function of the environmental data.
1 1. The method of claim 1 , wherein mapping the high-level primitive into a variable set of low-level primitives comprises selecting a movement mode based on the environmental data and activating low-level primitives associated with the selected movement mode.
12. The method of claim 1 1, wherein selecting a movement mode based on the environmental data uses a predefined association of movement modes to particular environmental conditions.
13. The method of claim 1 1, wherein selecting a movement mode based on the environmental data comprises adaptively varying movement mode when the environmental data indicates undesired conditions.
14. A computer readable medium comprising computer readable program code to implement the method of claim 1.
15. A method for varying the character of movement of a robotic crawler within an environment, comprising: defining a series of low-level primitives defining basic movements of the robotic crawler; accepting an operator commanded high-level primitive for robotic crawler movement; mapping the high-level primitive into a variable set of low-level primitives; executing the low-level primitives to implement the high-level primitive operation to move the robotic crawler; and varying the set of low-level primitives in response to environmental conditions sensed by the robotic crawler to adapt movement mode of the robotic crawler to the environment.
16. The method of claim 15, wherein mapping the high-level primitive into a variable set of low-level primitives comprises: switching from a first movement mode optimized for a first environment to a second movement mode optimized for a second, topologically different, environment when the robotic crawler moves from the first environment to the second environment.
17. The method of claim 15, wherein mapping the high-level primitive into a variable set of low-level primitives comprises selecting a movement mode based on the environmental data and activating low-level primitives associated with the selected movement mode.
18. A robotic crawler control system capable of varying the character of movement within an environment, comprising: means for sensing the environment in which the robotic crawler is operating to produce environmental data; means for accepting from an operator a high-level primitive to be performed by the robotic crawler; means for mapping the high level primitive into a variable set of low-level primitives for execution by the robotic crawler to produce varying modes of movement, wherein the mapping is a function of the environmental data; and means for executing the variable set of low-level primitives to move the robotic crawler.
19. The system of claim 18, wherein the plurality of low-level primitives comprises low-level primitives corresponding to particular poses of the robotic crawler.
20. The system of claim 18, wherein the plurality of low-level primitives comprises low-level primitives corresponding to basic movements of the robotic crawler.
21. The system of claim 18, wherein the means for mapping the high-level primitive into a variable set of low-level primitives comprises means for switching from a first movement mode optimized for a first environment to a second movement mode optimized for a second, topologicaily different, environment when the robotic crawler moves from the first environment to the second environment.
22. A robotic crawler control system comprising: a robotic crawler having a plurality of joints driven by a plurality of actuators and at least one sensor; a microprocessor coupled to the plurality of actuators through a plurality of drivers to enable microprocessor control of the actuators; a command interface configured to accept operator input high-level primitive commands and communicate the high-level primitive commands to the microprocessor; and a mapper implemented in computer readable instructions executable on the microprocessor to cause the microprocessor to map the high-level primitive commands into a variable set of low-level primitives which execute to produce signals to the drivers to produce varying modes of movement for the robotic crawler.
23. The robotic crawler control system of claim 22 wherein the command interface is a wired link or a wireless link.
24. The robotic crawler control system of claim 22, wherein the sensor is chosen from the group of sensors consisting of a camera, a chemical sensor, a biological sensor, an optical sensor, a moisture sensor, a vibration sensor, a temperature sensor, an electromagnetic sensor, a sound sensor, a force sensor, a sonar sensor, a radar sensor, a lidar sensor, a radioactive isotope sensor, a seismic sensor, a pressure sensor, a magnetometer, a sampling sensor, an orientation sensor, an inertial measurement unit, a joint torque sensor, a joint position sensor, or combinations thereof.
25. The robotic crawler control system of claim 22, wherein the mapper is further configured to select a movement mode based on the environmental data and to activate low-level primitives associated with the selected movement mode
26. The robotic crawler control system of claim 22, wherein the mapper comprises a predefined association of a plurality of movement modes to a plurality of environmental conditions.
Priority Applications (2)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2010507657A JP5331102B2 (en) | 2007-05-08 | 2008-05-08 | Variable primitive mapping for robotic crawlers |
| EP08755172A EP2146826A2 (en) | 2007-05-08 | 2008-05-08 | Variable primitive mapping for a robotic crawler |
Applications Claiming Priority (2)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| US92848307P | 2007-05-08 | 2007-05-08 | |
| US60/928,483 | 2007-05-08 |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| WO2008150630A2 true WO2008150630A2 (en) | 2008-12-11 |
| WO2008150630A3 WO2008150630A3 (en) | 2009-10-15 |
Family
ID=39970270
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| PCT/US2008/063058 Ceased WO2008150630A2 (en) | 2007-05-08 | 2008-05-08 | Variable primitive mapping for a robotic crawler |
Country Status (4)
| Country | Link |
|---|---|
| US (1) | US20080281468A1 (en) |
| EP (1) | EP2146826A2 (en) |
| JP (1) | JP5331102B2 (en) |
| WO (1) | WO2008150630A2 (en) |
Families Citing this family (42)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US8509972B2 (en) * | 2006-08-29 | 2013-08-13 | Industrial Technology Research Institute | Electronic pet and pet interaction system thereof |
| DE602007007807D1 (en) | 2006-11-13 | 2010-08-26 | Raytheon Sarcos Llc | VERSATILE USEFUL BAND FOR LIGHTWEIGHT MOBILE ROBOTS |
| US8345004B1 (en) * | 2009-03-06 | 2013-01-01 | Pixar | Methods and apparatus for differentially controlling degrees of freedom of an object |
| US8935014B2 (en) | 2009-06-11 | 2015-01-13 | Sarcos, Lc | Method and system for deploying a surveillance network |
| US9146558B2 (en) | 2010-11-30 | 2015-09-29 | Irobot Corporation | Mobile robot and method of operating thereof |
| US8805579B2 (en) * | 2011-02-19 | 2014-08-12 | Richard Arthur Skrinde | Submersible robotically operable vehicle system for infrastructure maintenance and inspection |
| US9314921B2 (en) | 2011-03-17 | 2016-04-19 | Sarcos Lc | Robotic lift device with human interface operation |
| US8977388B2 (en) * | 2011-04-29 | 2015-03-10 | Sarcos Lc | Platform perturbation compensation |
| US8942846B2 (en) | 2011-04-29 | 2015-01-27 | Raytheon Company | System and method for controlling a teleoperated robotic agile lift system |
| US8892258B2 (en) | 2011-04-29 | 2014-11-18 | Raytheon Company | Variable strength magnetic end effector for lift systems |
| US9789603B2 (en) | 2011-04-29 | 2017-10-17 | Sarcos Lc | Teleoperated robotic system |
| US9616580B2 (en) | 2012-05-14 | 2017-04-11 | Sarcos Lc | End effector for a robotic arm |
| US9409292B2 (en) | 2013-09-13 | 2016-08-09 | Sarcos Lc | Serpentine robotic crawler for performing dexterous operations |
| US9566711B2 (en) | 2014-03-04 | 2017-02-14 | Sarcos Lc | Coordinated robotic control |
| US10766133B2 (en) | 2014-05-06 | 2020-09-08 | Sarcos Lc | Legged robotic device utilizing modifiable linkage mechanism |
| US9395726B1 (en) | 2014-07-24 | 2016-07-19 | Google Inc. | Methods and devices for bound and gallop gaits |
| CN107850644B (en) | 2015-02-27 | 2020-11-03 | Abb瑞士股份有限公司 | Localization, mapping and haptic feedback for inspecting confined spaces inside machines |
| US10807659B2 (en) | 2016-05-27 | 2020-10-20 | Joseph L. Pikulski | Motorized platforms |
| US10071303B2 (en) | 2015-08-26 | 2018-09-11 | Malibu Innovations, LLC | Mobilized cooler device with fork hanger assembly |
| CN105216905B (en) * | 2015-10-27 | 2018-01-02 | 北京林业大学 | Immediately positioning and map building exploration search and rescue robot |
| US10821614B2 (en) | 2016-11-11 | 2020-11-03 | Sarcos Corp. | Clutched joint modules having a quasi-passive elastic actuator for a robotic assembly |
| US10919161B2 (en) | 2016-11-11 | 2021-02-16 | Sarcos Corp. | Clutched joint modules for a robotic system |
| US10828767B2 (en) | 2016-11-11 | 2020-11-10 | Sarcos Corp. | Tunable actuator joint modules having energy recovering quasi-passive elastic actuators with internal valve arrangements |
| US10765537B2 (en) | 2016-11-11 | 2020-09-08 | Sarcos Corp. | Tunable actuator joint modules having energy recovering quasi-passive elastic actuators for use within a robotic system |
| CN106645418B (en) * | 2017-01-26 | 2023-12-05 | 中国特种设备检测研究院 | Crawler-type magneto-acoustic composite detection robot and detection method and device |
| US10843330B2 (en) | 2017-12-07 | 2020-11-24 | Sarcos Corp. | Resistance-based joint constraint for a master robotic system |
| US11331809B2 (en) | 2017-12-18 | 2022-05-17 | Sarcos Corp. | Dynamically controlled robotic stiffening element |
| US11247737B2 (en) * | 2018-04-23 | 2022-02-15 | Eagle Technology, Llc | UGV with adaptive stabilizer |
| US11351675B2 (en) | 2018-12-31 | 2022-06-07 | Sarcos Corp. | Robotic end-effector having dynamic stiffening elements for conforming object interaction |
| US10906191B2 (en) | 2018-12-31 | 2021-02-02 | Sarcos Corp. | Hybrid robotic end effector |
| US11241801B2 (en) | 2018-12-31 | 2022-02-08 | Sarcos Corp. | Robotic end effector with dorsally supported actuation mechanism |
| US11833676B2 (en) | 2020-12-07 | 2023-12-05 | Sarcos Corp. | Combining sensor output data to prevent unsafe operation of an exoskeleton |
| US11794345B2 (en) | 2020-12-31 | 2023-10-24 | Sarcos Corp. | Unified robotic vehicle systems and methods of control |
| US12311550B2 (en) | 2020-12-31 | 2025-05-27 | Sarcos Corp. | Smart control system for a robotic device |
| CN117184262A (en) * | 2022-05-31 | 2023-12-08 | 上海电气电站设备有限公司 | A miniature inspection robot |
| US11826907B1 (en) | 2022-08-17 | 2023-11-28 | Sarcos Corp. | Robotic joint system with length adapter |
| US11717956B1 (en) | 2022-08-29 | 2023-08-08 | Sarcos Corp. | Robotic joint system with integrated safety |
| WO2024098070A1 (en) | 2022-11-04 | 2024-05-10 | Sarcos Corp. | Robotic end-effector having dynamic stiffening elements with resilient spacers for conforming object interaction |
| US11897132B1 (en) | 2022-11-17 | 2024-02-13 | Sarcos Corp. | Systems and methods for redundant network communication in a robot |
| US11924023B1 (en) | 2022-11-17 | 2024-03-05 | Sarcos Corp. | Systems and methods for redundant network communication in a robot |
| CN117565037B (en) * | 2023-11-22 | 2025-09-23 | 西北工业大学 | Real-time motion control method for crawler robots based on phase domain synthesis |
| CN120156609B (en) * | 2025-04-24 | 2025-12-05 | 中山大学 | A method for an autonomous stair climbing robot of a tracked snake |
Family Cites Families (106)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US2312072A (en) * | 1940-03-07 | 1943-02-23 | Tenger Victoria | Endless track for vehicles |
| US2345763A (en) * | 1941-02-27 | 1944-04-04 | Goodrich Co B F | Flexible track for self-laying track vehicles |
| US2311475A (en) * | 1941-09-19 | 1943-02-16 | Theodore G Schmeiser | Auxiliary traction wheel |
| US2701169A (en) * | 1954-08-18 | 1955-02-01 | Edgar M Cannon | Mud lug for endless traction track links |
| US2933143A (en) * | 1957-06-25 | 1960-04-19 | Canadair Ltd | Articulated vehicle |
| US2967737A (en) * | 1959-11-30 | 1961-01-10 | George V Moore | Detachable traction units |
| US3166138A (en) * | 1961-10-26 | 1965-01-19 | Jr Edward D Dunn | Stair climbing conveyance |
| US3311424A (en) * | 1965-06-03 | 1967-03-28 | Marval & O Farrell | Tractive device comprising a belt driven soft roller |
| US3362492A (en) * | 1966-02-14 | 1968-01-09 | Darrell L. Hansen | Snowbike attachment |
| US3565198A (en) * | 1967-06-26 | 1971-02-23 | Whiting Corp | Steering, driving and single track support systems for vehicles |
| US3497083A (en) * | 1968-05-10 | 1970-02-24 | Us Navy | Tensor arm manipulator |
| US3489236A (en) * | 1968-08-01 | 1970-01-13 | Us Army | Egressing device for military vehicles |
| US3572325A (en) * | 1968-10-25 | 1971-03-23 | Us Health Education & Welfare | Flexible endoscope having fluid conduits and control |
| US3808078A (en) * | 1970-01-05 | 1974-04-30 | Norfin | Glass fiber cable, method of making, and its use in the manufacture of track vehicles |
| US3715146A (en) * | 1970-01-19 | 1973-02-06 | W Robertson | Snow cleat and track for tracked vehicle |
| US3650343A (en) * | 1970-03-12 | 1972-03-21 | John B Helsell | Ski slope traversing and conditioning vehicle |
| US3712481A (en) * | 1971-12-23 | 1973-01-23 | Mc Donnell Douglas Corp | Actuator |
| US3933214A (en) * | 1972-07-12 | 1976-01-20 | Guibord Georges E | All terrain pleasure vehicle |
| US3864983A (en) * | 1972-09-15 | 1975-02-11 | Stephen C Jacobsen | Rotary-to-linear and linear-to-rotary motion converters |
| US3934664A (en) * | 1973-02-01 | 1976-01-27 | Pohjola Jorma | Steering mechanism for track vehicles |
| US4015553A (en) * | 1975-08-18 | 1977-04-05 | The United States Of America As Represented By The Secretary Of The Navy | Submersible barge control system |
| US4068905A (en) * | 1975-09-10 | 1978-01-17 | Black Chester A | Detachable road protecting device for tracked vehicles |
| BE845263A (en) * | 1976-08-18 | 1976-12-16 | SELF-MOVING TOWER END | |
| US4589460A (en) * | 1978-01-03 | 1986-05-20 | Albee William H | Off road vehicles |
| US4494417A (en) * | 1979-03-16 | 1985-01-22 | Robotgruppen Hb | Flexible arm, particularly a robot arm |
| US4260053A (en) * | 1979-10-09 | 1981-04-07 | Hirosuke Onodera | Flexible conveyor belt |
| SE436175B (en) * | 1982-07-05 | 1984-11-19 | Robotgruppen Hb | DEVICE FOR THE CONNECTION OF A ROBOT ARM OR SIMILAR INCLUDING ELEMENT |
| US4806066A (en) * | 1982-11-01 | 1989-02-21 | Microbot, Inc. | Robotic arm |
| US4900218A (en) * | 1983-04-07 | 1990-02-13 | Sutherland Ivan E | Robot arm structure |
| GB2145691B (en) * | 1983-08-29 | 1987-06-03 | Toshiba Kk | Extendible and contractable arms |
| US4661039A (en) * | 1983-10-20 | 1987-04-28 | Donaldson Company | Flexible-frame robot |
| CA1245510A (en) * | 1984-03-05 | 1988-11-29 | Arktos Developments Ltd. | All terrain vehicle and method of operating same |
| US4646906A (en) * | 1984-09-06 | 1987-03-03 | Fairchild Incorporated | Apparatus for continuously conveying coal from a continuous miner to a remote floor conveyor |
| GB8526602D0 (en) * | 1985-10-29 | 1986-11-05 | Secr Defence | Unmanned vehicle |
| JPS62165207A (en) * | 1986-01-17 | 1987-07-21 | Agency Of Ind Science & Technol | Robot controller |
| US4828339A (en) * | 1986-09-30 | 1989-05-09 | Joy Technologies Inc. | Crawler chain |
| FR2609335B1 (en) * | 1987-01-05 | 1989-04-14 | Protee | SYSTEM FOR TRACKING THE MOTION OF A TRACKED VEHICLE |
| US4828453A (en) * | 1987-04-21 | 1989-05-09 | The United States Of America As Represented By The United States Department Of Energy | Modular multimorphic kinematic arm structure and pitch and yaw joint for same |
| US4796607A (en) * | 1987-07-28 | 1989-01-10 | Welch Allyn, Inc. | Endoscope steering section |
| US5303384A (en) * | 1990-01-02 | 1994-04-12 | The United States Of America As Represented By The Administrator Of The National Aeronautics And Space Administration | High level language-based robotic control system |
| US5018591A (en) * | 1990-04-24 | 1991-05-28 | Caterpillar Inc. | Track laying work vehicle |
| US5080000A (en) * | 1990-05-11 | 1992-01-14 | Bubic Frank R | Flexible robotic links and manipulator trunks made thereform |
| US5205612A (en) * | 1990-05-17 | 1993-04-27 | Z C Mines Pty. Ltd. | Transport apparatus and method of forming same |
| WO1992002398A1 (en) * | 1990-08-08 | 1992-02-20 | Kabushiki Kaisha Komatsu Seisakusho | Disaster relief robot and its operation controller |
| US4997790A (en) * | 1990-08-13 | 1991-03-05 | Motorola, Inc. | Process for forming a self-aligned contact structure |
| US5186526A (en) * | 1990-08-31 | 1993-02-16 | General Chemical Corporation | One-piece crawler pad |
| US5199771A (en) * | 1992-03-02 | 1993-04-06 | Logan Manufacturing Company | Not retaining cleat for vehicle endless track |
| US5297443A (en) * | 1992-07-07 | 1994-03-29 | Wentz John D | Flexible positioning appendage |
| US5388900A (en) * | 1992-07-15 | 1995-02-14 | Kabushiki Kaisha Suzuki Shoji | Crawler pad |
| US5386741A (en) * | 1993-06-07 | 1995-02-07 | Rennex; Brian G. | Robotic snake |
| US5516249A (en) * | 1994-05-10 | 1996-05-14 | Technical Research Associates, Inc. | Exoskeleton with kinesthetic feedback and robotic control |
| GB2301187B (en) * | 1995-05-22 | 1999-04-21 | British Gas Plc | Method of and apparatus for locating an anomaly in a duct |
| US5749828A (en) * | 1995-12-22 | 1998-05-12 | Hewlett-Packard Company | Bending neck for use with invasive medical devices |
| US6186604B1 (en) * | 1996-06-19 | 2001-02-13 | Tyman H. Fikse | Tractor endless tread |
| US6030057A (en) * | 1996-06-19 | 2000-02-29 | Fikse; Tyman H. | Tractor endless tread |
| US5902254A (en) * | 1996-07-29 | 1999-05-11 | The Nemours Foundation | Cathether guidewire |
| IT1285533B1 (en) * | 1996-10-22 | 1998-06-08 | Scuola Superiore Di Studi Universitari E Di Perfezionamento Sant Anna | ENDOSCOPIC ROBOT |
| US6331181B1 (en) * | 1998-12-08 | 2001-12-18 | Intuitive Surgical, Inc. | Surgical robotic tools, data architecture, and use |
| US5888235A (en) * | 1997-01-07 | 1999-03-30 | Sarcos, Inc. | Body-powered prosthetic arm |
| US6056237A (en) * | 1997-06-25 | 2000-05-02 | Woodland; Richard L. K. | Sonotube compatible unmanned aerial vehicle and system |
| US6016385A (en) * | 1997-08-11 | 2000-01-18 | Fanu America Corp | Real time remotely controlled robot |
| DE19746510C2 (en) * | 1997-10-22 | 2003-03-06 | Pii Pipetronix Gmbh | Device for driving through pipes |
| US6203126B1 (en) * | 1998-06-05 | 2001-03-20 | Northern Freight Brokers, Inc. | Traction stud for a snowmobile belt made of a non-metal material |
| JP3017182B1 (en) * | 1998-09-29 | 2000-03-06 | 富太郎 服部 | Track pad |
| DE19857891A1 (en) * | 1998-12-15 | 2000-06-21 | Macmoter Spa | Tracked vehicle with separately driven tracks has body connected to running gear to pivot around pivot point, and spring unit between running gear and body a distance away from pivot point |
| DE19906970C2 (en) * | 1999-02-19 | 2003-03-27 | Rheinmetall W & M Gmbh | reconnaissance probe |
| JP3076841B1 (en) * | 1999-03-18 | 2000-08-14 | 工業技術院長 | Teaching program creation method for real environment adaptive robot |
| US6523629B1 (en) * | 1999-06-07 | 2003-02-25 | Sandia Corporation | Tandem mobile robot system |
| JP2001038663A (en) * | 1999-07-28 | 2001-02-13 | Yamaha Motor Co Ltd | Machine control system |
| US6505896B1 (en) * | 2000-09-01 | 2003-01-14 | Alain Boivin | Track for snow vehicles |
| IT1313346B1 (en) * | 1999-09-06 | 2002-07-23 | Abb Ricerca Spa | METHOD TO PERFORM THE OFF-LINE PROGRAMMING OF AN INDUSTRIAL ROBOT. |
| US7020701B1 (en) * | 1999-10-06 | 2006-03-28 | Sensoria Corporation | Method for collecting and processing data using internetworked wireless integrated network sensors (WINS) |
| EP1662972A4 (en) * | 2000-04-03 | 2010-08-25 | Intuitive Surgical Inc | Activated polymer articulated instruments and methods of insertion |
| AU2001262962A1 (en) * | 2000-05-01 | 2001-11-12 | Irobot Corporation | Method and system for remote control of mobile robot |
| JP2001353678A (en) * | 2000-06-12 | 2001-12-25 | Sony Corp | Authoring system, authoring method, and storage medium |
| GB0020461D0 (en) * | 2000-08-18 | 2000-10-11 | Oliver Crispin Consulting Ltd | Improvements in and relating to the robotic positioning of a work tool to a sensor |
| US6634725B2 (en) * | 2000-12-22 | 2003-10-21 | Hitachi Construction Machinery Co., Ltd. | Crawler |
| US6870343B2 (en) * | 2001-03-30 | 2005-03-22 | The University Of Michigan | Integrated, proportionally controlled, and naturally compliant universal joint actuator with controllable stiffness |
| US6512345B2 (en) * | 2001-03-30 | 2003-01-28 | The Regents Of The University Of Michigan | Apparatus for obstacle traversion |
| CN1529838A (en) * | 2001-05-25 | 2004-09-15 | Program Design of Toy Robot | |
| US6725128B2 (en) * | 2001-07-02 | 2004-04-20 | Xerox Corporation | Self-reconfigurable robot |
| US6715575B2 (en) * | 2001-08-16 | 2004-04-06 | Formula Fast Racing | Track tensioning system for a tracked vehicle |
| US6835173B2 (en) * | 2001-10-05 | 2004-12-28 | Scimed Life Systems, Inc. | Robotic endoscope |
| JP4403571B2 (en) * | 2001-11-22 | 2010-01-27 | 正喜 江刺 | Active guide wire and manufacturing method thereof |
| JP2005515903A (en) * | 2001-11-28 | 2005-06-02 | エヴォリューション ロボティクス インコーポレイテッド | Abstraction and aggregation within the hardware abstraction layer of robot sensors and actuators |
| US6540310B1 (en) * | 2002-02-01 | 2003-04-01 | Ironwood Designs Llc | Grouser |
| US20040030571A1 (en) * | 2002-04-22 | 2004-02-12 | Neal Solomon | System, method and apparatus for automated collective mobile robotic vehicles used in remote sensing surveillance |
| US6840588B2 (en) * | 2002-10-25 | 2005-01-11 | Soucy International Inc. | Non-repeating sequence of profiles |
| US7017687B1 (en) * | 2002-11-21 | 2006-03-28 | Sarcos Investments Lc | Reconfigurable articulated leg and wheel |
| AU2003283693A1 (en) * | 2002-12-19 | 2004-07-14 | Koninklijke Philips Electronics N.V. | System and method for controlling a robot |
| ATE339671T1 (en) * | 2003-01-31 | 2006-10-15 | Zeiss Ind Messtechnik Gmbh | PROBE FOR A COORDINATE MEASURING DEVICE |
| US6837318B1 (en) * | 2003-03-28 | 2005-01-04 | Hanna Craig | Rescue and exploration apparatus |
| US6974356B2 (en) * | 2003-05-19 | 2005-12-13 | Nekton Research Llc | Amphibious robot devices and related methods |
| US7044245B2 (en) * | 2003-06-17 | 2006-05-16 | Science Applications International Corporation | Toroidal propulsion and steering system |
| US7188473B1 (en) * | 2004-04-26 | 2007-03-13 | Harry HaruRiko Asada | Shape memory alloy actuator system using segmented binary control |
| US7865268B2 (en) * | 2004-06-24 | 2011-01-04 | Massachusetts Institute Of Technology | Mechanical fish robot exploiting vibration modes for locomotion |
| US7475637B2 (en) * | 2004-07-09 | 2009-01-13 | Jahangir S. Rastegar | Gun fired sensor platforms |
| WO2006068080A1 (en) * | 2004-12-20 | 2006-06-29 | Tokyo Institute Of Technology | Endless line body and crawler device |
| US7188568B2 (en) * | 2005-06-29 | 2007-03-13 | Arizona Public Service Company | Self-propelled vehicle for movement within a tubular member |
| US7493976B2 (en) * | 2005-08-04 | 2009-02-24 | Engineering Services, Inc. | Variable configuration articulated tracked vehicle |
| US7475745B1 (en) * | 2006-05-11 | 2009-01-13 | Deroos Bradley G | High mobility vehicle |
| WO2007134461A1 (en) * | 2006-05-24 | 2007-11-29 | Titan Medical Inc. | Snaking robotic arm with movable shapers |
| US20070293989A1 (en) * | 2006-06-14 | 2007-12-20 | Deere & Company, A Delaware Corporation | Multiple mode system with multiple controllers |
| CN102141181B (en) * | 2006-11-13 | 2014-10-08 | 雷神萨科斯公司 | Serpentine robotic crawler |
| GB0719946D0 (en) * | 2007-10-12 | 2007-11-21 | Subsea 7 Ltd | Apparatus and method |
| IL193216A (en) * | 2008-08-04 | 2013-08-29 | Israel Aerospace Ind Ltd | System for detecting suspected area |
-
2008
- 2008-05-08 EP EP08755172A patent/EP2146826A2/en not_active Withdrawn
- 2008-05-08 US US12/117,233 patent/US20080281468A1/en not_active Abandoned
- 2008-05-08 JP JP2010507657A patent/JP5331102B2/en not_active Expired - Fee Related
- 2008-05-08 WO PCT/US2008/063058 patent/WO2008150630A2/en not_active Ceased
Also Published As
| Publication number | Publication date |
|---|---|
| US20080281468A1 (en) | 2008-11-13 |
| WO2008150630A3 (en) | 2009-10-15 |
| JP5331102B2 (en) | 2013-10-30 |
| EP2146826A2 (en) | 2010-01-27 |
| JP2010527294A (en) | 2010-08-12 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| US20080281468A1 (en) | Variable primitive mapping for a robotic crawler | |
| JP7531710B2 (en) | Robot motion control method, device, robot, and computer program | |
| Lipkin et al. | Differentiable and piecewise differentiable gaits for snake robots | |
| JP5520048B2 (en) | Serpentine robotic endless track car | |
| Wu et al. | Neurally controlled steering for collision-free behavior of a snake robot | |
| Rollinson et al. | Torque control strategies for snake robots | |
| EP3768472A1 (en) | Systems and methods for learning agile locomotion for multiped robots | |
| Chipalkatty et al. | Human-in-the-loop: MPC for shared control of a quadruped rescue robot | |
| KR102325091B1 (en) | Virtual agricultural working simulation system and method of autonomous agricultural working machine | |
| KR20230103901A (en) | Autonomous walking vehicle and method of opreating the same | |
| Goldberg et al. | High speed trajectory control using an experimental maneuverability model for an insect-scale legged robot | |
| Kumar et al. | Offworld gym: open-access physical robotics environment for real-world reinforcement learning benchmark and research | |
| JP4810880B2 (en) | Robot and its control method | |
| KR20050088695A (en) | Biped robot which transforms itself into wheel-type vehicle and its method of operation | |
| Mahajan et al. | Four-legged intelligent mobile autonomous robot | |
| CN113967909A (en) | Mechanical arm intelligent control method based on direction reward | |
| Karydis et al. | Navigation of miniature legged robots using a new template | |
| Jagtap et al. | Hexapod: A spider for terrain and obstacle shunning by arduino | |
| Zuzánek et al. | Accepted autonomy for search and rescue robotics | |
| Anderson et al. | Navigation of autonomous robots with an intelligent Oscillator Controller | |
| Caglav et al. | A snake-like robot for variable friction unstructured terrains, pushing aside debris in clearing passages | |
| CN117207203B (en) | Robot control method, device, robot and storage medium | |
| Pavan et al. | Design and Development of a Quadruped Robot for achieving Multi-Terrain Locomotion | |
| Kurinov et al. | Towards Reinforcement Learning Based Log Loading Automation | |
| Kurmasheva | THE PROGRESS IN ROBOTIC ENGINEERING |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| WWE | Wipo information: entry into national phase |
Ref document number: 2008755172 Country of ref document: EP |
|
| WWE | Wipo information: entry into national phase |
Ref document number: 2010507657 Country of ref document: JP |
|
| NENP | Non-entry into the national phase |
Ref country code: DE |
|
| 121 | Ep: the epo has been informed by wipo that ep was designated in this application |
Ref document number: 08755172 Country of ref document: EP Kind code of ref document: A2 |
