Robot and robot system

A robot and robot system that are capable of functioning in a zero-gravity environment are provided. The robot can include a body having a longitudinal axis and having a control unit and a power source. The robot can include a first leg pair including a first leg and a second leg. Each leg of the first leg pair can be pivotally attached to the body and constrained to pivot in a first leg pair plane that is substantially perpendicular to the longitudinal axis of the body.

FIELD OF THE INVENTION

The present teachings relate to a robot that is capable of efficiently moving in zero-gravity conditions. In particular, the present teachings relate to a robot that can operate in an extra-terrestrial environment and can be controlled from a host computer located at a remote location.

BACKGROUND OF THE INVENTION

Many presently known robots include complex linkages having many joints, motors, and encoders. The complexity of these known robots makes them bulky, heavy, slow, expensive, and unreliable.

A few critical factors that are considered when designing a robot are compactness, complexity, cost, maneuverability, reliability, and speed.

Accordingly, there continues to exist a need for a robot that is compact, lightweight, inexpensive to manufacture, and capable of efficiently performing various requested tasks. There also exists a need for a robot that is capable of performing tasks in a zero-gravity environment that are communicated to the robot from a remote host computer.

SUMMARY OF THE INVENTION

The present teachings disclose such a robot that is capable of functioning in a zero-gravity environment, as well as a robot system.

According to the present teachings, the robot includes a body having a longitudinal axis and including a power source and a control unit. The robot also includes a first leg pair including a first leg and a second leg. Each leg of the first leg pair is pivotally attached to the body and is constrained to pivot in a first leg pair plane that is substantially perpendicular to the longitudinal axis of the body.

The present teachings also describe a robot having a body including a power source and a control unit. The robot also includes at least one leg pivotally attached to the body. The leg includes a first pivot joint that includes a first servo motor, a first controller module, and a first spring-loaded compliance mechanism. The control unit is arranged to communicate with the first controller module to control pivotal movement of the leg.

The present teachings further describe a robot system including a body having a communication system capable of receiving high level commands from a host computer, a control unit, and a power source. The robot system also includes at least one leg pivotably attached to the body. Each leg includes a first pivot joint including a first controller module and a first servo motor, a second pivot joint including a second controller module and a second servo motor, and a foot assembly. Further, each of the first and second controller modules is capable of directly communicating with the control unit.

Additional features and advantages of various embodiments will be set forth, in part, in the description that follows, and will, in part, be apparent from the description, or may be learned by the practice of various embodiments. The objectives and other advantages of various embodiments will be realized and attained by means of the elements and combinations particularly pointed out in the description herein.

It is to be understood that both the foregoing general description and the following detailed description are exemplary and explanatory only, and are intended to provide an explanation of various embodiments of the present teachings.

DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS

The present teachings are directed to a robot having a plurality of leg pairs and capable of functioning in a zero-gravity environment. According to the present teachings, the robot can receive commands from a remotely located host computer and can direct commands to the plurality of leg pairs to achieve movement of the robot.

Referring toFIG. 1, an embodiment of the robot100of the present teachings is shown. The robot100can include a body20having a longitudinal axis30and three leg pairs attached to the body20. Each of the leg pairs can be arranged to articulate or pivot in a corresponding leg pair plane, such as in leg pair planes40,80,110. Each of the leg pair planes40,80,110can be substantially perpendicular to the longitudinal axis30of the body20.

Referring toFIG. 2, a first leg pair42of the robot100of the present teachings is shown. The first leg pair42includes first legs42a,42b.One end of each of the first legs42a,42bcan be attached to a portion of the body20. Furthermore, each of the first legs42a,42bcan be arranged to articulate or pivot in a clockwise or a counter-clockwise direction with respect to the longitudinal axis30of the body20within the first leg pair plane40.

Referring toFIG. 3, the robot100of the present teachings is shown having two leg pairs42,82. The additional second leg pair82includes second legs82a,82b.One end of each of the second legs82a,82bcan be attached to a portion of body20. Furthermore, each of the second legs82a,82bcan be arranged to articulate or pivot in a clockwise or a counter-clockwise direction with respect to the longitudinal axis30of the body20in the second leg pair plane80. The second leg pair plane80can be substantially parallel to the first leg pair plane40.

Referring toFIG. 4, the robot100of the present teachings is shown having three leg pairs42,82,112. The additional third leg pair112includes third legs112a,112b.Each of the legs112a,112bcan be attached to the body20. Furthermore, each of the third legs112a,112bcan be arranged to articulate or pivot in a clockwise or a counter-clockwise direction with respect to the longitudinal axis30of the body20in the third leg pair plane110. Moreover, the third leg pair plane110can be substantially parallel to the first and second leg pair planes40,80. According to various embodiments, one or more of the leg pairs42,82,112can be arranged to not be completely perpendicular to the longitudinal axis30of the body20. For example, the arrangement of the first leg pair42and the second leg pair112can slightly deviate from being perpendicular with respect to the longitudinal axis30to provide an inherently self-centering tendency to the robot100as it moves.

During operation, coordinated movement of the three leg pairs42,82, and112in the first, second, and third leg pair planes40,80, and110, respectively, results in the robot100moving in a direction perpendicular to the longitudinal axis30of the body20. That is, the robot100can move in a direction transverse to the longitudinal axis of its body20, much like the walking characteristics of a crab, which moves in a sideways manner.

Although the robot100of the present teachings is described as having three leg pairs42,82, and112, the robot100can be arranged to incorporate any number of legs and leg pairs. For example, the robot100can have as few as one leg to as many as five or more leg pairs. According to various embodiments, one or more of the leg pairs can be arranged to articulate or pivot beyond the confines of the planes that are substantially perpendicular to the longitudinal axis30of the body20of the robot100.

Referring toFIG. 5, one exemplary leg of the robot100is shown. For illustrative purposes, the leg shown inFIG. 5corresponds to leg42aof the first leg pair42but could describe the structure of any of the legs of the robot100. The leg42acan include a shoulder44that can be connectable to the body20. The leg42acan also include a bicep46. A first pivot joint50can pivotally connect the shoulder44to the bicep46. Furthermore, the leg42acan include a forearm48. A second pivot joint60can pivotally connect the forearm48to the bicep46.

In addition, the leg42acan include a foot assembly52, such as a gripper assembly as shown inFIG. 5. Preferably, the gripper assembly52can include a first gripper54and a second gripper58. Either or both of the first gripper54and the second gripper58can include gripper teeth56. A first gripper pivot joint70can pivotally connect the first gripper54to the forearm48. Furthermore, a second gripper pivot joint90can pivotally connect the second gripper58to the underside of the forearm48. Together, the first gripper pivot joint70and the second gripper pivot joint90allow the grippers54,58to open and close to allow the gripper assembly52to grip and hold various different objects. The grippers54,58can be provided in different shapes depending upon the desired types of gripping and/or motions to be performed by the robot100.

The pivot joints50,60,70,90of the leg42acan provide it with at least three degrees of freedom: (i) the first pivot joint50can allow the leg42ato rotate above or below the body20in the first leg pair plane40, (ii) the second pivot joint60can allow the leg42ato achieve a curl motion in the first leg pair plane40, and (iii) the gripper joints70,90can allow the grippers54,58of the gripper assembly52to open or close. According to various embodiments, the leg42acan be provided with additional pivot joints, for example, a pivot joint can be provided above the first pivot joint50, on or in the vicinity of the shoulder44, to allow the leg42ato rotate and articulate beyond the first leg pair plane40. In such an alternative embodiment, the additional pivot joint would allow one or more of the legs to turn the robot100in order to re-direct the movement direction.

The robot100can also be designed so that one or more of the legs is modular. For example, the shoulder44of a leg42acan be provided with a body mount bracket62that would allow the leg42ato detachably connect with one or more connectors24arranged on the body20, seeFIGS. 6 and 9. Each of the body mount bracket62and the corresponding connectors24can include complimentary-arranged electrical connectors that provide electrical communication between the leg42aand the body20. The modular architecture of the legs can simplify debugging and reduce part complexity of the robot100.

The housings of the robot body20and each of the legs securely support and house various electrical and mechanical components of the robot100. Preferably, the body20and each of the legs can be fabricated using a process that minimizes the mass of the robot100and provides these housings with sufficient strength and durability to withstand extreme conditions, such as weightlessness, vibrations, heat, cold, and the like. For example, the total mass of the robot100can be designed to be less than about 5 lbs., and preferably can be about 1.5 lbs. Additionally, the overall dimensions of the robot100can be about 36 cm× about 50 cm× about 32 cm or less. Preferably, the robot100includes three leg pairs42,82,112, has overall dimensions of about 18 cm× about 25 cm× about 16 cm, and a mass of about 1.5 lbs.

To fabricate the robot100with the preferred overall dimensions of about 18 cm× about 25 cm× about 16 cm and a mass of about 1.5 lbs., a solid freeform fabrication process can be implemented. The solid freeform fabrication process can include a selective laser sintering (SLS) process and/or a stereolithography (SLA) process. The chassis of the robot100, that is, the housings for the body20and each of the legs, can be fabricated using both of the SLS process and the SLA process. The SLS process can be used to produce all parts of the robot100with the exception of the gripper assembly52, as this process results in much lighter and durable parts as compared to the SLA process. However, the SLA process results in the formation of more precise parts. Accordingly, the gripper assembly52, including an integrated gearing mechanism, can preferably be fabricated by the SLA process to achieve a smooth interconnectivity between parts, such as between the gears, while achieving relatively low brittleness.

Referring toFIG. 7, various components that are held within the housings of an exemplary leg42aof the robot100are shown. According toFIG. 7, the first pivot joint50can include a first servo motor64and the second pivot joint60can include a second servo motor74. Each of the first servo motor64and the second servo motor74can include a servo controller module, or SCM. Each SCM can include a motor controller (e.g., an H-Bridge DC motor controller) and a processor (e.g., an ATMEL MEGA88 processor commercially available from Atmel Corporation of San Jose, Calif.) for controlling a servo motor. Furthermore, each SCM can be separately programmed with a unique address so that commands can be addressed and sent specifically to that SCM from a control unit116of the robot100. The SCM of the second servo motor74of the second pivot joint60can also be arranged to control the gripper assembly52. Although not shown in the figures, a non-modified servo motor (e.g., a non-modified CIRRUS micro-servo commercially available from Global Hobby Distributors of Fountain Valley, Calif.) can be positioned in the first gripper pivot joint62. The non-modified servo motor can be arranged to power the gripper assembly52and can be controlled by the SCM of the second servo motor74.

In addition to servo motors64,74, each of the first pivot joint50, the second pivot joint60, and the first gripper pivot joint70can include a spring compliance mechanism72,76, and78, respectively. The spring compliance mechanisms72,76, and78can allow each pivoting component (i.e. bicep46, forearm48, first gripper54) of the leg42ato deflect past desired positions in either pivoting direction without the respective servo motor being turned. As will be further discussed below, the spring compliance mechanisms72,76,78can function to provide a level of fault tolerance, protect each of the servo motors, and allow the operator to determine torques that have been applied to the components of the leg42a.

Referring toFIG. 8, subcomponents of the first pivot joint50, which pivotally connects a shoulder44to a bicep46, will be described. WhileFIG. 8shows the subcomponents of the first pivot joint50and portions of the second pivot joint60, the same or substantially similar sub-components can be arranged in the second pivot joint60which connects the bicep46to the forearm40(not shown inFIG. 8), or in any other of the leg pivot joints. The first pivot joint50can include a spring mount socket84positioned within a first side portion of the shoulder44and a potentiometer mount socket98positioned inside a second side portion of the shoulder44. Additionally, the shoulder44can house additional sub-components of the first pivot joint50including a spring86, rocker arm88, front bearing92, the servo motor64(situated within the housing of the bicep46), potentiometer arm96, and a rear bearing94.

In an assembled state of the shoulder44, the spring86can sit securely about the spring mount socket84. Preferably, the spring mount socket84can include a groove that can accommodate the spring86and non-rotatably secure it in place, as will be described in more detail below with reference toFIG. 9. Similarly, and still referring toFIG. 8, the second pivot joint60formed on the bicep46can also include a spring mount socket84having a groove securing another spring.

Now referring toFIG. 9, an enlarged view of the structure for securing a spring of a pivot joint to its corresponding spring mount socket84is shown. In particular,FIG. 9shows a closed end of a second spring104fitted into a groove106of the spring mount socket84of the second pivot joint60of the bicep46. At the open end of the second spring104, the two spring ends extend outwardly and away from the spring mount socket84. Each of these spring ends can resiliently engage a groove formed in the rocker arm88in an assembled condition of the pivot joint, as will be discussed in more detail below.

Referring now toFIG. 10, the rocker arm88of the first pivot joint50is shown in an exploded view of the pivot joint50. The rocker arm88is shown separated by a distance from an output shaft of the servo motor64which is housed within the bicep46. The rocker arm88can essentially form a radially extending paddle having grooves into which the ends of the spring86can extend while a closed end of the spring86is arranged about the spring mount socket84in the assembled condition of the first pivot joint50. In an assembled state of the shoulder44, the front bearing92of the first pivot joint50can sit within the spring mount socket84of the shoulder44, as described above in relation toFIGS. 8 and 9. The front bearing92can support the rocker arm88and any loads applied to the leg. Whenever a torque is applied to a particular leg or a portion thereof, the rocker arm88is rotated which in turn pushes against one of the ends of the spring86resulting in a counteracting torque being exerted by the spring86against the rocker arm88in the opposite direction.

Torques that are applied to a particular leg section can be measured by the potentiometer arm96, shown inFIG. 8, and/or by one or more internal potentiometers (not shown) that can be incorporated into one or more of the servo motors64,74. Moreover, the internal potentiometer can provide information to a control unit116of the robot100corresponding to conditions of the servo motors64,74and the position of the rocker arm88.

Referring to bothFIGS. 11 and 12, which show additional exploded views of the first pivot joint50that connects the shoulder44to the bicep46, the potentiometer arm96can be arranged to fit into a keyed slot102on the potentiometer mount socket98formed on the shoulder44. The potentiometer arm96can provide information to the control unit116corresponding to the actual positions of the leg. This information can be provided by the potentiometer arm96even when the joints of the legs are deflected beyond their desired positions as allowed by the spring-loaded compliance mechanisms72,76,78. By measuring a difference or change between the internal potentiometer of a servo motor and the potentiometer arm96, the operator can be provided with information about the torque applied to each of the legs. This information can be analyzed and used by the operator to program further robot movements.

Referring toFIG. 13, a robot100is shown with internal components housed within its body20exposed. One or more body covers128can be provided to shield the internal components while allowing access thereto. The body20can house various components including a control unit116, a power source120, and a communication system130. The power source120can be positioned within a power source compartment124of the body20.

The power source120of the robot100can be any power source that is capable of providing sufficient power so that the robot100can continuously function for at least about 30 minutes. For example, the power source120can be a lithium ion cell. The lithium ion cell can be rated for approximately 2000 mAH at a supply voltage of 3.7 V. Other types of cells having different ratings and voltage supplies can be implemented as would be appreciated by one or ordinary skill in the art.

The control unit116arranged in the body20can be powered by the power source120. The control unit116can send commands to each of the SCMs located in the first pivot joints50and in the second pivot joints60of each of the legs. These commands can be communicated to the SCMs of the legs by a hard wired interface180(seeFIG. 15) that can link the control unit116with each of the SCMs. An exemplary wire interface180is ATMEL's two-wire interface (TWI) (commercially available from Atmel Corporation of San Jose, Calif.). Additionally, the control unit116can include a Universal Synchronous/Asynchronous Receiver/Transmitter (UART) interface that is capable of accommodating the communication system130. The communication system130allows the control unit116to receive commands from a remotely located host computer190and to send data, such as, for example, status reports to the host computer190. Any communication system130that would enable the control unit116to receive and send information from a remote host computer can be implemented in the robot100of the present teachings, such as, for example, a radio modem or BLUETOOTH communication device. Such a BLUETOOTH communication device can be arranged to communicate at band rates as high as about 115200 bps.

Referring toFIG. 14, a schematic of the control system of the robot100of the present teachings is shown. The control unit116can include a main processor140, such as, for example, the ATMEL MEGA88 processor (commercially available from Atmel Corporation of San Jose, Calif.). Sensor processing, motor control, command response, telemetry storage/transmittal, as well as other functions, can be processed by way of the main processor140of the robot100. A command/data acquisition station, such as, for example, a host computer190located at a remote location, allows the operator to send commands and receive and display robot telemetry data obtained from the robot100via a wireless link. The host computer190can be provided with sufficient memory to store telemetry data, as well as other data for use at a later time.

The control unit116of the robot100can be programmed with a first code and each of the SCMs (e.g., the first SCM150of the first pivot joint50and the second SCM160of the second pivot joint60) can be programmed with a second code. The first code can enable the control unit116to at least (i) send gait positions to each of the SCMs150,160, (ii) send gripper actuator commands to SCM160, (iii) receive commands from the host computer190to actuate robot movement, and (iv) send robot status information to the host computer190. The first SCM150of the first pivot joint50includes a first processor152. The second SCM160of the second pivot joint60includes a second processor162. The second SCM160can also be arranged to send control signals to a gripper servo170for controlling the gripper assembly52. Each of the SCMs150,160can implement proportional-integral-derivative (PID) control of the servo motors64,74. Implementation of PID control enables under-damped and relatively fast servo motor response during actuation. Furthermore, as discussed above, the internal potentiometers156,166of the servo motors64,74can provide the servo motors of the leg with status information that can be transmitted to the host computer190. Additionally, each of the potentiometer arms96of the first pivot joints50,60(shown inFIGS. 8 and 12) can provide information to the host computer190corresponding to the actual position of each of the legs. Moreover, by measuring the difference or changes between the internal potentiometers156,166and the potentiometer arms96information corresponding to the torque applied to each of the legs can determined.

Control of a sample requested leg movement will now be described with reference to bothFIGS. 14 and 15. During such sample operation, the remotely located host computer190can send a first command to the robot100directing it to pivot the bicep46of the leg in a counter-clockwise direction around the first pivot joint50. Concurrently, the host computer190can send a second command to the robot100directing it pivot the forearm48of the leg in a clockwise direction around the second pivot joint60, and a third command to directing it to open the gripper assembly52. Each of these commands can be received by the communication system130located within the body20of the robot100. The communication system130then forwards these commands to the control unit116via an UART interface132.

The main processor140of the control unit116then distinguishes each of these three commands. The first command is then forwarded to the first SCM150of the first pivot joint50by way of a wire interface180, while the second and third commands are forwarded to the second SCM160of the second pivot joint60by a further wire interface180.

The first SCM150processes the first command with the first processor152. The first processor152then sends the first command to a first motor controller154, which activates the first servo motor64thereby pivoting the bicep46in a counter-clockwise direction at a commanded speed and distance.

The second SCM160processes the second command with the second processor162and also determines whether the second command is providing instructions either to the second servo motor74of the forearm48or to the micro servo170of the gripper assembly52. Since the command is directed to the second servo motor74of the forearm48, the second processor162sends the second command to a second motor controller164to activate the second servo motor74to move the forearm48in a clockwise direction at a commanded speed and distance.

The second SCM160also processes the third command with the second processor162and again determines whether the third command is providing instructions to the second servo motor74of the forearm48or to the micro servo170of the gripper assembly52. Since the command is directed to the micro servo170of the gripper assembly52, the second processor162then sends the third command to the micro servo170to open the gripper assembly52.

Additional commands can be sent to the robot100and processed in a like manner to achieve coordinated movement of the legs and, in turn, efficient movement of the robot100.

Referring toFIG. 15, the robot100of the present teachings is shown in the process of employing a statically stable tripod gait. Characteristics of the tripod gait include a three-point contact with a surface at all times. To develop such a gait for use by the robot100of the present teachings, each of the pertinent positions along a path is recorded and entered into a gait table. An algorithm running on the main processor140of the robot100can parse the gait table and depending on the displacement of a particular joint, performs various interpolations (for larger position displacements, more interpolations can be calculated). After the position interpolations are calculated, they are stored into a new gait table that can be used to command robot motion using the host computer190, as discussed above.

Referring toFIG. 16, a testing arrangement for the robot100of the present teachings is shown. The testing arrangement encompassed a space analogue (i.e. zero-gravity) environment produced by a reduced gravity aircraft flight. The results of the test flight showed that the robot100of the present teachings can successfully traverse a wire mesh200in zero-gravity conditions. During the test, two high-resolution video cameras (not shown) filmed several attempts of the robot100to traverse the wire mesh200during the zero-gravity condition. The rate of traversal of the robot100was recorded as one body length (equivalent to three steps) per 18 seconds. In the testing environment, the robot100was exposed to 20 seconds of weightlessness. During this time, an inertial measurement unit (IMU)210passively monitored the conditions on the wire mesh200and sent data to the host computer190, which in this example was a laptop computer190, for storage. The flight conditions did not cause any recordable external disturbances in the testing environment, including the wire mesh200.

During a test flight, two robots100each having identical mechanical characteristics was run using different gait algorithms. The control unit116of the robot100included an interface connected to a processor that recorded data from the IMUs210. Due to time constraints, three external switches were mounted on the outside area of the chassis of the robots100and were interfaced to the main controller140of the robot100. These three switches operated to direct the robot100with commands to achieve movement during the test.

The test environment was subjected to the external effects of the plane. The plane, a modified Boeing 747, flew in a parabolic flight path to simulate zero-gravity (0 G) conditions. During each parabolic flight path, 20 seconds of 0 G conditions were followed by 30 seconds of 1.8 G conditions. During the 1.8 G conditions, the robot100was positioned on the mesh200and was enabled/turned on. It was recorded that the robot100sustained walking capabilities during the transition from 0 G to 1.8 G. The robot was also able to sustain walking capabilities during the 1.8 G period.

On the ground, much time was dedicated to constructing a gait table that would allow the robot100to crawl on the mesh200during zero-gravity conditions. This required a meticulous study of how the robot100would react while in flight. A gait table was refined to handle a gait that would allow the robot100to grip a rung with one leg and extend to another rung with a different leg from various positions on the mesh200. External perturbations of the mesh200, including low and high-frequency vibrations of both small and large magnitudes, were also applied to the robot100to test the functionality of the gait. Smoothing algorithms allowed an interpolation between the key positions of the gait to be entered into the table. This resulted in a smooth leg motion that would otherwise be unobtainable with the PID controllers. The robot100was programmed with gaits that allowed it to traverse the mesh200in all orientations (i.e. vertically, upside down, and right side up). The span of each gripper assembly when opened allowed for rough placement of the leg over a rung of the mesh200. The gripper assembly was arranged such that it could actuate and successfully catch a rung while being off by as much as about 0.39 in (1 cm) in any direction.

Those skilled in the art can appreciate from the foregoing description that the present teachings can be implemented in a variety of forms. Therefore, while these teachings have been described in connection with particular embodiments and examples thereof, the true scope of the present teachings should not be so limited. Various changes and modifications may be made without departing from the scope of the teachings herein.