# Patent

## Title
Nesting negotiation for self-mobile devices

## Abstract

Disparate robotic devices can be automatically recharged and reprogrammed by self-scheduling individual time slots for the available recharging area(s) of a charging station. These charging stations provide a nest to which each robot must return periodically for power. These nests can also provide new tasking or patches for the robotic devices. The charging station and the robotic devices are both provided with communications capabilities and a protocol by which they can negotiate to find a time slot in which the device can be recharged, as well as determining a correct connector and a battery type.

## Background
BACKGROUND OF THE INVENTION
1. Technical Field
The invention relates to the ability of a robotic device to monitor and negotiate the charging of its own battery and to automatically receive re-tasking and patches during recharging. More specifically, the invention relates to a nesting device to which each robotic device must return periodically, with the robotic devices and nesting device sharing a protocol by which they negotiate a time slot for each robotic device.
2. Description of Related Art
Robots have been the stuff of science fiction from the early part of the nineteenth century to the present. Now, however, many types of robotic devices have been realized and many more are being designed. Some of these are relatively fixed, such as a robotic arm to locate tapes in a tape library, and these can be connected to a source of electricity by a power line. For self-mobile robotic devices, a battery is generally included as a power supply that must be periodically recharged. For a self-mobile robot, periodic recharging of the battery is necessary and it has been suggested that the more capable a robot is of taking care of its own needs, the less of a burden it is on the infrastructure it serves. For instance, U.S. Pat. No. 4,777,416 to George et al., in its abstract, discloses a “recharge docking system for a battery-powered mobile robot which senses when the battery charge is below a predetermined level and halts the travel of the robot at its next navigational node following which the robot independently plots and negotiates a path from the next node back to a base node at a recharge station, where the batteries are charged.” Thus, providing for automatic recharging is known.
However, as self-mobile robotic devices infiltrate into the mainstream, a company or individual who utilizes robots can find themselves with a large number of robotic devices that require regular recharging. It would be desirable to have a device and protocol by which a large number of robotic devices can be charged by a single charging unit in the most efficient possible manner, i.e., without human intervention.
SUMMARY OF THE INVENTION
A nesting device, system, and method are provided by which a number of disparate robotic devices can be automatically recharged and reprogrammed during self-scheduled time slots. The nesting device contains one or more recharging areas, which can be generic to serve disparate types of devices or can contain a specific connector for a certain type of robotic device. Because these nests must be visited on a regular basis, they can communicate updates or new sets of instructions to the robotic devices during recharging. The nesting device and the robotic devices are both provided with communications capabilities and a protocol by which they can negotiate to find a time slot in which the robotic device can be recharged and provided other information.



BRIEF DESCRIPTION OF THE DRAWINGS
The novel features believed characteristic of the invention are set forth in the appended claims. The invention itself, however, as well as a preferred mode of use, further objectives and advantages thereof, will best be understood by reference to the following detailed description of an illustrative embodiment when read in conjunction with the accompanying drawings, wherein:
FIGS. 1A and 1B depict a top-down view and a perspective view of a nesting station according to a first embodiment of the present invention.
FIG. 2 depicts a robotic device connected for recharging to the nesting station of FIG. 1.
FIGS. 3A and 3B depict a top-down view and a perspective view of a nesting station according to an alternate embodiment of the present invention
FIG. 4 depicts a nesting station configured as a free-standing tower, according to an alternate embodiment of the invention.
FIG. 5 depicts a nesting station according to a further alternate embodiment of the invention.
FIG. 6 depicts a nesting station having multiple connectors for charging, according to a further alternate embodiment of the invention.
FIG. 7 is a block diagram of the circuitry necessary for the nesting station.
FIG. 8 is a flowchart of the protocol for negotiating a time slot for recharging according to an embodiment of the invention; and
FIG. 9 is a flowchart of a method by which the nesting station and the robotic devices can negotiate charging times according to an embodiment of the invention.



DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENT
The invention will now be described with regard to the drawings. With attention first to FIGS. 1a and 1B, nesting station 100 is shown according to an exemplary embodiment of the invention. In its broadest embodiments, nesting station 100 of the present invention is designed to offer charging (and retasking, if needed) to as wide a variety of robotic devices as possible. To this end, nesting station 100 has base 102 onto which a robotic device can roll by means of beveled edge 103. The top surface of nesting station 100 is generally flat to provide a stable surface on which the robotic devises can rest. Two metal plates form respectively negative terminal 104 and positive terminal 108. Between these two contact plates, infrared (IR) transmitter/receiver 106 allows communications between nesting device 100 and the robotic devices. Infrared transmissions can be used for point-to-point communications when there are no obstructions between the charging station and robotic device. When the communications is point-to-point, it is necessary that a protocol exist for regular contact between the nesting station and the robotic devices whenever they are within line of sight. This contact can be initiated by nesting station 100 or by the robotic devices, but should include checking the battery level in order to estimate time until a charge is needed. Alternatively, a trigger point can be set for each robot, indicating a battery level at which the device should seek recharging. The value of this trigger point would be determined according to the number of robotic devices using the nesting station, the length of time necessary for charging, the level of activity of the robotic devices, etc. When it is determined that the battery has reached a trigger point, the robotic device requests a time slot for charging. Nesting station 100 keeps a record of scheduled charging times so that two devices are not attempting to charge at the same time. Nesting station 100 and robotic devices then work through a suitable protocol to schedule a time. The robotic device can proceed to nesting station 100, if it is available, or return to work until nesting station 100 is free.
Because the nesting station 100 has a generalized structure, it is possible that the station 100 can offer charging to many different types of batteries. To this end, the nesting station 100 is preferably configured to determine the type of battery to be charged and to shift its output characteristics accordingly.
FIG. 2 shows small robotic cleaning device 202 that has returned to nesting unit 100 as scheduled. Robotic device 202 has rolled onto base 102 of nesting unit 100, using wheels 204. Once there, robotic device 202 either extends or allows to drop two metal connectors 206. These will contact respectively positive contact 108 and negative contact 104. At the same time, an infrared port (not shown) on the bottom of robotic device 202 is brought into alignment with IR port 406 on top of nesting station 100. Further communications, such as new tasks to be performed or upgrades to the software of the robotic device, can be downloaded to the device while it is charging.
FIGS. 3A and 3B show an alternate version of the innovative nesting device. In this version, there are two main changes from the embodiment of FIGS. 1A and 1B. First, electrical connectors 304, 308 on nesting station 300 are much larger, taking up most of the surface area on base 302. Secondly, rather than IR 106, the device is equipped with a technology, such as Bluetooth (a short-range radio signal), WiFi (wireless fidelity, a generic term for any type of 802.11 network), or a similar technology. These technologies do not require line-of-sight to operate and thus has more flexibility in communicating with the robotic devices.
FIG. 4 discloses another embodiment of the innovative nesting station. In this embodiment, electrodes 404, 408 are placed, one above the other, in a tower arrangement. Body 410 of nesting station 400 can be mounted on a stable base 401 or can be attached to a wall for stability. Communications link 406 can utilize any of the wireless technologies available. FIG. 5 is another embodiment in which contacts 504, 508 are in a vertical configuration, with body 510 either supported by base 502 or fastened to a wall. Again, communications link 506 can utilize any of the wireless technologies. In both FIGS. 4 and 5, the robotic device does not rest on the nesting station, but moves into close proximity so that positive and negative terminals of the battery are able to come into contact with the contacts.
In an alternate embodiment, the nesting device does not contain generic, flat contacts, but a number of different styles of contacts are made available to suit the needs of a variety of robotic devices. FIG. 6 demonstrates a fanciful version of this embodiment of the invention, with three connectors 610, 612, 614 provided. In this embodiment the processor will keep a separate schedule for each type of connector; a robotic device will need to know and communicate the type of connection it requires.
FIG. 7 demonstrates circuitry 700 necessary to run the innovative nesting unit. In this diagram, a combined power converter and charging circuit 702 receives power from the main power grid and converts it to the proper voltage needed by the robotic devices. This converted power is sent to the positive and negative terminals of the nesting station and from there into the battery of the robotic unit. In the preferred embodiment, the power converter and charging circuit 702 are adapted to charge more than one battery type. To this end, the power converter and charging circuit 702 preferably has the ability to shift its output characteristics from voltage source to current source, as well as the ability to monitor the charging current and voltage and the charging time. Processor 708, which is connected to memory 710, controls power converter 702. Processor 708 has connections to communications module 712 for communicating with the robotic devices and to clock 714 that supplies date and time. A schedule of charging times can be kept in memory 710 for access when scheduling.
FIG. 8 demonstrates circuitry 800 necessary to run the innovative robotic device. In this illustrative embodiment, the robotic device 800 contains a processor 808 that directs its activity according to instructions stored in the memory 810. The robotic device 800 also contains some type of device that provides mobility 816 for the robotic device, a clock 814 for determining the time, and communications capabilities 812 to allow it to communicate with the charging station. The processor 808, clock 814, and communications device 812 are all powered by battery 802. Battery 802 is in turn charged using external connectors 804.
FIG. 9 demonstrates an exemplary flowchart of a method by which the nesting station and the robotic devices can negotiate charging times. In this exemplary embodiment, a triggering device on a robotic device has detected that the battery charge is getting low. The robotic device will contact the nesting station (step 910) at the first available moment. If a line-of-sight form of communication is utilized, there can be a delay in time between the device noticing that charging is needed and contacting the nesting station. If a robotic device follows a preset route, this may mean waiting until reaching a known location where communications are possible; if not, the device can periodically attempt communications until a response is received. Once the nesting station is contacted, the robotic unit requests a time slot for charging. If a number of different types of connectors are available, the unit will also identify the type of connector necessary.
Depending on its programming, the nesting station checks the availability of the needed connector and if necessary, the priority of the robotic device, then assigns a time slot to the robotic device (step 915). The priority of a robotic device can be important if the nesting station is shared, for example, by some devices that are used daily and others that are only needed weekly or sporadically. A device that is used only weekly may have a low priority if the device is not scheduled to be used for several days, but can be bumped up in priority nearer to the time of its use. In systems where only a few robotic devices are used, the scheduling can be very simple, while a corporation using a large number of mobile robotic devices can have a more complex scheduling algorithm as necessary.
The nesting station notifies the robotic device of the next available slot and sets that time aside for this particular device (step 920). Unless a slot is available immediately, the robotic device will store the time at which it is scheduled for charging. When this time nears, the robot reports at the nesting station for charging. The nesting station can verify that this robotic device is indeed for this time slot and grant permission for charging (step 925). At that time, the robotic device can position itself and begin charging (step 930). While the device is recharging, the nesting station can check to see is there is an outstanding order to retask the robotic device by providing new or updated instructions, whether patches are needed in the programming (step 935). If so, the nesting station can communicate this to the robotic device and proceed to provide updating while the robotic device is charging (step 940). Because the robotic devices themselves perform their own charging and updating, the owner or manager of the robotic devices does not need to contact each robotic device individually. Instead, the manager simply provides instructions to the nesting station(s) and allows the nesting station(s) to coordinate the updates with the robotic devices themselves.
One of ordinary skill in the art will realize that variations in this flowchart are possible without departing from the spirit of the invention. One such example can be an environment where only a few robotic devices are used and the nesting unit is available much of the time. In this environment, the nesting station can be programmed to respond to a request for charging with a simple notification that the charger is currently available or not available. The requesting robotic device can be instructed to check back in a given amount of time to see if the nesting station is available. Alternatively, where a large number of robotic units share a nesting station, a request from a high priority robotic device can cause another, already scheduled, robotic device to be “bumped” out of its time slot into a later slot. In this case, the nesting station must contact the device originally scheduled and negotiate a later time for charging.
In a further alternate embodiment, the negotiations can be more extensive. For example, if a robotic device has a regular schedule of activity it must maintain, the robotic device can be programmed to provide suggested time slots when it is available for recharging; the nesting station can then verify that a suggested time is available or not, or can bump a lower priority device from a needed slot.
Thus, the exact protocol for negotiation can be varied according to the environment, but the embodiments of the inventive nesting system allow the robotic devices to regularly schedule and receive nesting without human intervention.
It is important to note that while the present invention has been described in the context of a fully functioning data processing system, those of ordinary skill in the art will appreciate that the processes of the present invention are capable of being distributed in the form of a computer readable medium of instructions and a variety of forms and that the present invention applies equally regardless of the particular type of signal bearing media actually used to carry out the distribution. Examples of computer readable media include recordable-type media, such as a floppy disk, a hard disk drive, a RAM, CD-ROMs, DVD-ROMs, and transmission-type media, such as digital and analog communications links, wired or wireless communications links using transmission forms, such as, for example, radio frequency and light wave transmissions. The computer readable media may take the form of coded formats that are decoded for actual use in a particular data processing system.
The description of the present invention has been presented for purposes of illustration and description, and is not intended to be exhaustive or limited to the invention in the form disclosed. Many modifications and variations will be apparent to those of ordinary skill in the art. The embodiment was chosen and described in order to best explain the principles of the invention, the practical application, and to enable others of ordinary skill in the art to understand the invention for various embodiments with various modifications as are suited to the particular use contemplated.

## Claims

1. A method of recharging robotic devices, said method comprising the steps of:
querying a robotic device whether it has reached a given level of depletion;
if the robotic device has reached said given level of depletion, negotiating with said robotic device using a protocol to determine a time slot for charging said robotic device; and
providing charging for said robotic device during said time slot.

2. The method of claim 1, further comprising the steps of:
providing said robotic device with new tasks or updated programming during said time slot.

3. The method of claim 1, wherein the step of using said protocol comprises the steps of:
offering a next available time slot at which said robotic device can report to said charging station for charging; and
if said robotic device provides a confirmation of said time slot, scheduling said robotic device for said time slot, else
incrementing said available time slot and returning to said offering step.

4. The method of claim 1, wherein said charging station maintains separate schedules for each of a plurality of connectors.

5. The method of claim 1, wherein said plurality of connectors are different and said protocol includes determining a connector of said plurality of connectors that said robotic device can utilize for charging.

6. A method of recharging a robotic device, said method comprising the steps of:
determining that an onboard battery has reached a given level of depletion;
contacting an associated charging station;
requesting charging;
receiving and storing a time slot for charging; and
reporting for charging during said time slot.

7. The method of claim 6, further comprising the steps of:
receiving new tasks or updated programming during said time slot.

8. The method of claim 6, further comprising notifying said charging station of a need for a specific connector needed for charging.