1. Technical Field
Embodiments of the present invention generally relate to an environment based navigation systems for automated industrial vehicles and, more importantly, to a method and apparatus for sharing map data associated with automated industrial vehicles.
2. Description of the Related Art
Entities regularly operate numerous facilities in order to meet supply and/or demand goals. For example, small to large corporations, government organizations and/or the like employ a variety of logistics management and inventory management paradigms to move objects (e.g., raw materials, goods, machines and/or the like) into a variety of physical environments (e.g., warehouses, cold rooms, factories, plants, stores and/or the like). A multinational company may build warehouses in one country to store raw materials for manufacture into goods, which are housed in a warehouse in another country for distribution into local retail markets. The warehouses must be well-organized in order to maintain and/or improve production and sales. If raw materials are not transported to the factory at an optimal rate, fewer goods are manufactured. As a result, revenue is not generated for the unmanufactured goods to counterbalance the costs of the raw materials.
Unfortunately, physical environments, such as warehouses, have several limitations that prevent timely completion of various tasks. Warehouses and other shared use spaces, for instance, must be safe for a human work force. Some employees operate heavy machinery and industrial vehicles, such as forklifts, which have the potential to cause severe or deadly injury. Nonetheless, human beings are required to use the industrial vehicles to complete tasks, which include object handling tasks, such as moving pallets of goods to different locations within a warehouse. Most warehouses employ a large number of forklift drivers and forklifts to move objects. In order to increase productivity, these warehouses simply add more forklifts and forklift drivers.
In order to mitigate the aforementioned problems, some warehouses utilize equipment for automating these tasks. As an example, these warehouses may employ automated industrial vehicles, such as forklifts, to carry objects on paths and then, unload these objects onto designated locations. When navigating an industrial vehicle, it is necessary to account for uncertainty and noise associated with the sensor measurements. Because the sensors coupled to the industrial vehicle are limited to specific field of view or range, the industrial vehicle cannot extract and process data associated with certain features and landmarks that cannot be observed.
Therefore, there is a need in the art for a method and apparatus for sharing map data amongst automated industrial vehicles.
Various embodiments of the present disclosure generally include a method and apparatus comprising processing local map data associated with a plurality of industrial vehicles, wherein the local map data comprises feature information generated by the plurality of industrial vehicles regarding features observed by industrial vehicles in the plurality of vehicles; combining the feature information associated with local map data to generate global map data for the physical environment; and navigating an industrial vehicle of the plurality of industrial vehicles using at least a portion of the global map.
So that the manner in which the above recited features of the present invention can be understood in detail, a more particular description of the invention, briefly summarized above, may be had by reference to embodiments, some of which are illustrated in the appended drawings. It is to be noted, however, that the appended drawings illustrate only typical embodiments of this invention and are therefore not to be considered limiting of its scope, for the invention may admit to other equally effective embodiments.
In some embodiments, the physical environment 100 includes a vehicle 102 that is coupled to a mobile computer 104, a central computer 106 as well as a sensor array 108. The sensor array 108 includes a plurality of devices for analyzing various objects within the physical environment 100 and transmitting data (e.g., image data, video data, map data, three-dimensional graph data and/or the like) to the mobile computer 104 and/or the central computer 106, as explained further below. The sensor array 108 includes various types of sensors, such as encoders, ultrasonic range finders, laser range finders, pressure transducers and/or the like.
The physical environment 100 further includes a floor 110 supporting a plurality of objects. The plurality of objects include a plurality of pallets 112, a plurality of units 114 and/or the like as explained further below. The physical environment 100 also includes various obstructions (not pictured) to the proper operation of the vehicle 102. Some of the plurality of objects may constitute obstructions along various paths (e.g., pre-programmed or dynamically computed routes) if such objects disrupt task completion. For example, an obstacle includes a broken pallet at a target destination associated with an object load being transported. The physical environment 100 also includes a plurality of markers 116. The plurality of markers 116 are illustrated as objects attached to a ceiling. In some embodiments, the markers 116 may be located on the floor or a combination of the floor and ceiling. In some embodiments, the plurality of markers 116 are beacons that facilitate environment based navigation as explained further below. The plurality of markers 116 as well as other objects around the physical environment 100 form landmarks defined by environmental features. The mobile computer 104 extracts the environment features and determines an accurate, current vehicle pose.
The physical environment 100 may include a warehouse or cold store for housing the plurality of units 114 in preparation for future transportation. Warehouses may include loading docks to load and unload the plurality of units from commercial vehicles, railways, airports and/or seaports. The plurality of units 114 generally include various goods, products and/or raw materials and/or the like. For example, the plurality of units 114 may be consumer goods that are placed on ISO standard pallets and loaded into pallet racks by forklifts to be distributed to retail stores. The vehicle 102 facilitates such a distribution by moving the consumer goods to designated locations where commercial vehicles (e.g., trucks) load and subsequently deliver the consumer goods to one or more target destinations.
According to one or more embodiments, the vehicle 102 may be an automated guided vehicle (AGV), such as an automated forklift, which is configured to handle and/or move the plurality of units 114 about the floor 110. The vehicle 102 utilizes one or more lifting elements, such as forks, to lift one or more units 114 and then, transport these units 114 along a path within a transit area 120 (e.g., corridor) to be placed at a slot area 122. Alternatively, the one or more units 114 may be arranged on a pallet 112 of which the vehicle 102 lifts and moves to the designated location.
Each of the plurality of pallets 112 is a flat transport structure that supports goods in a stable fashion while being lifted by the vehicle 102 and/or another jacking device (e.g., a pallet jack and/or a front loader). The pallet 112 is the structural foundation of an object load and permits handling and storage efficiencies. Various ones of the plurality of pallets 112 may be utilized within a rack system (not pictured). Within a certain rack system, gravity rollers or tracks allow one or more units 114 on one or more pallets 112 to flow to the front. The one or more pallets 112 move forward until slowed or stopped by a retarding device, a physical stop or another pallet 112.
In some embodiments, the mobile computer 104 and the central computer 106 are computing devices that control the vehicle 102 and perform various tasks within the physical environment 100. The mobile computer 104 is adapted to couple with the vehicle 102 as illustrated. The mobile computer 104 may also receive and aggregate data (e.g., laser scanner data, image data and/or any other related sensor data) that is transmitted by the sensor array 108. Various software modules within the mobile computer 104 control operation of hardware components associated with the vehicle 102 as explained further below.
Embodiments of the invention utilize and update map information that is used by the industrial vehicle 102 to navigate through the environment 100 and perform tasks. The map information comprises a local map maintained by the mobile computer 104 and a global map that is maintained by the central computer 106. The local map defines features in the environment 100 that are either proximate a particular vehicle 102 or comprise features from an area of the environment 100 in which the vehicle is operating or is about to operate, while a global map defines the entire environment 100. As a vehicle performs tasks, the local map is updated by the mobile computer 104 and data added to the local map is also used to update the global map, such that the local map information updated by one vehicle is shared with other vehicles 102. The map use and update processes are described in detail below.
The forklift 200 (i.e., a lift truck, a high/low, a stacker-truck, trailer loader, sideloader or a fork hoist) is a powered industrial truck having various load capacities and used to lift and transport various objects. In some embodiments, the forklift 200 is configured to move one or more pallets (e.g., the pallets 112 of
The forklift 200 typically includes two or more forks (i.e., skids or tines) for lifting and carrying units within the physical environment. Alternatively, instead of the two or more forks, the forklift 200 may include one or more metal poles (not pictured) in order to lift certain units (e.g., carpet rolls, metal coils and/or the like). In one embodiment, the forklift 200 includes hydraulics-powered, telescopic forks that permit two or more pallets to be placed behind each other without an aisle between these pallets.
The forklift 200 may further include various mechanical, hydraulic and/or electrically operated actuators according to one or more embodiments. In some embodiments, the forklift 200 includes one or more hydraulic actuator (not labeled) that permit lateral and/or rotational movement of two or more forks. In one embodiment, the forklift 200 includes a hydraulic actuator (not labeled) for moving the forks together and apart. In another embodiment, the forklift 200 includes a mechanical or hydraulic component for squeezing a unit (e.g., barrels, kegs, paper rolls and/or the like) to be transported.
The forklift 200 may be coupled with the mobile computer 104, which includes software modules for operating the forklift 200 in accordance with one or more tasks. The forklift 200 is also coupled with an array comprising various sensor devices (e.g., the sensor array 108 of
In some embodiments, a number of sensor devices (e.g., laser scanners, laser range finders, encoders, pressure transducers and/or the like) as well as their position on the forklift 200 are vehicle dependent, and the position at which these sensors are mounted affects the processing of the measurement data. For example, by ensuring that all of the laser scanners are placed at a measurable position, the sensor array 108 may process the laser scan data and transpose it to a center point for the forklift 200. Furthermore, the sensor array 108 may combine multiple laser scans into a single virtual laser scan, which may be used by various software modules to control the forklift 200.
Each of the plurality of mobile computers 104 is a type of computing device (e.g., a laptop computer, a desktop computer, a Personal Desk Assistant (PDA) and the like) that comprises a central processing unit (CPU) 304, various support circuits 306 and a memory 308. The CPU 304 may comprise one or more commercially available microprocessors or microcontrollers that facilitate data processing and storage. Various support circuits 306 facilitate operation of the CPU 304 and may include clock circuits, buses, power supplies, input/output circuits and/or the like. The memory 308 includes a read only memory, random access memory, disk drive storage, optical storage, removable storage, and the like. The memory 308 includes various data, such as local map data 310, feature information 312, landmark data 314, slot occupancy data 316, pose prediction data 317, pose measurement data 318 and a request 319. The memory 308 includes various software packages, such as an environment based navigation module 320 and a local map module 338.
The central computer 106 is a type of computing device (e.g., a laptop computer, a desktop computer, server, a Personal Desk Assistant (PDA) and the like) that comprises a central processing unit (CPU) 322, various support circuits 324 and a memory 326. The CPU 322 may comprise one or more commercially available microprocessors or microcontrollers that facilitate data processing and storage. Various support circuits 324 facilitate operation of the CPU 322 and may include clock circuits, buses, power supplies, input/output circuits and/or the like. The memory 326 includes a read only memory, random access memory, disk drive storage, optical storage, removable storage, and the like. The memory 326 includes various software packages, such as a global map module 328, as well as various data, such as a task 330, global map data 334 and a path 336.
The network 302 comprises a communication system that connects computers by wire, cable, fiber optic, and/or wireless links facilitated by various types of well-known network elements, such as hubs, switches, routers, and the like. The network 302 may employ various well-known protocols to communicate information amongst the network resources. For example, the network 302 may be part of the Internet or intranet using various communications infrastructure such as Ethernet, WiFi, WiMax, General Packet Radio Service (GPRS), and the like.
The sensor array 108 is communicably coupled to the mobile computer 104, which is attached to an automated vehicle, such as a forklift (e.g., the forklift 200 of
In some embodiments, for a given task 330, the central computer 106 computes a path 336 to be used by the vehicle 102 to complete the task 330. The use of both local map data 310 and global map data 334 facilitates accurate and autonomous guidance of the vehicle 102 through the environment to complete the task 330.
In some embodiments, the local map module 338 utilizes and maintains the local map data 310 as well as transmits updates to the global map module 326 of the central computer 106. The local map data 310 comprises feature information 312 and landmark data 314. In one embodiment, the feature information includes a dynamic and/or static features representing a physical environment proximate the vehicle, such as a shared use area for human workers and automated industrial vehicles. Static features represent objects that do not change within the environment, e.g., walls, storage racks, and the like. The local map data 310 may be organized to form a vector of known landmarks, static and dynamic features. In some embodiments feature information 312 include: feature geometry (line, corner, arc, etc.); a feature pose in global coordinate system; and a feature pose uncertainty. Static features represent objects that do not change within the environment, e.g., walls, storage racks, and the like. Typically the pose uncertainty for static features is zero.
In some embodiments, dynamic features represent objects that change within the environment, e.g. temporary obstructions such as broken pallets, objects to be stored, and the like. These features are likely to be stationary for a sufficient amount of time for the system to use them as localization map features. The system does not contain a-priori information about the pose of these features and thus the pose of these dynamic features can only be inferred by superimposing the vehicle centric measurement from sensors onto the estimated pose of the vehicle with respect to the global coordinate system. Because of the noise in sensor data, as well as the uncertainty in the vehicle pose estimation, all dynamic features have a pose uncertainty associated with their pose.
In some embodiments, the map module 338 stores local map information as landmarks 314. A landmark represents a physical entity within the environment (100 of
In some embodiments, the local map module 338 maintains slot information (as a set of slot geometries and poses, as part of the landmark data 314. Slots are a class of virtual landmark since their geometry is fixed however the presence of a pallet in the slot will indicate whether this landmark and the associated features information 312 is visible to the vehicle. The slot occupancy data 316 indicates the presence of a pallet in the associated slot and thus whether the features associated with this pallet form part of the local map data. Slots may exist on the floor where they may be used for navigation or above the floor in either a stacked arrangement or in the racking system.
In some embodiments, the environment based navigation module 320 includes software code (e.g., processor-executable instructions) for determining an accurate vehicle pose and updating the local map data 310 with new landmarks and associated portions of the landmark feature information 312 including their pose and pose uncertainty. After the environment based navigation module 320 processes the pose measurement data 318 from the plurality of sensor devices 332, the environment based navigation module 320 corrects the pose prediction data 317.
In some embodiments, the pose prediction data 317 includes an estimate of vehicle position and/or orientation of which the present disclosure may refer to as the vehicle pose prediction. The environment based navigation module 320 may produce such an estimate using a prior vehicle pose in addition to a vehicle motion model. The environment based navigation module 320 may also use a process filter to estimate uncertainty and/or noise for an upcoming vehicle pose prediction and update steps. After subsequently referencing a map of the physical environment, the environment based navigation module 320 determines an estimate of a current vehicle position. The uncertainty in a vehicle pose creates an uncertainty in the position of observed features. The pose uncertainty in the feature information 312 is derived from a combination of vehicle position uncertainty and sensor noise.
The global map module 328 includes software code (e.g., processor-executable instructions) for processing the local map data 310 from at least two industrial vehicles and generating the global map data 334. In some embodiments, the global map module 328 defines the global map data 334 as a vector of vector of known landmarks, which can be used to construct a vector of known features. These features correspond to features expected to be extracted from vehicle sensors. Some of the at least two industrial vehicles may reference different coordinate systems for the local map data 310. As such, one or more landmark positions are transformed into positions of a common coordinate system.
In some embodiments, the global map module 328 correlates the feature information 312 and landmark data 314 of the local map data associated with each of the at least two industrial vehicles by combining observed features for known landmarks and/or adding features for new landmarks to the global map data 334. The global map data 334 may be used to supplement the local map data 310 at a later date with expected features that have not yet been observed by a vehicle. Hence, the feature information 312 associated with a particular industrial vehicle may be used to provide additional features on landmarks or entirely new landmarks that have not been observed by another industrial vehicle, such as corners, walls, objects behind infrastructure and/or the like.
In one embodiment, the global map module 328 uses statistical methods to estimate the pose of a new feature observed by at least two industrial vehicles evaluating the feature pose uncertainty provided by each vehicle. In an alternative embodiment the global map module 328 may use a filter to combine pose measurements from multiple vehicles and develop a derived pose estimate.
In some embodiments, the mobile computer 104 periodically sends a request 319 to the central computer 106. In response to the request 319, the central computer 106 sends an update to the local map data 310. The update may include an update to: the slot occupancy data 316, feature information 312 derived from other vehicles, landmark data 314 and the like. Such updates ensure that the mobile computer utilizes the most recent information for navigating the vehicle. In an alternative embodiment, the central computer 106 may periodically publish the updates to the local map data 310 and push the update to the mobile computer 104.
The mobile computer 104 includes various software modules (i.e., components) for performing navigational functions of the environment based navigation module 320 of
In some embodiments, the sensor data is corrected in correction module 408 to correct for temporal and/or spatial distortion. The localization module 402 processes the corrected data and extracts features from the sensor data using feature extraction component 416. These features are matched with the features from local map module 338, with the feature pose uncertainty and observation noise taken into account, and vehicle state 418 is then adjusted by the filter 414. Features extracted will also be used to update any dynamic features 422 and/or used to add additional dynamic features. These features will be processed by map module 338 along with the vehicle pose uncertainty at the time of observation, as well as the observation uncertainty caused by noise in sensor reading. The map module will be using the features and their observed pose uncertainty to update map data 310. The vehicle state 418 which is modeled by the filter 414, refers to a current vehicle state, and includes pose information (e.g., coordinates) that indicate vehicle position and orientation. The localization module 402 communicates data associated with the vehicle state 418 to the mapping module 404 while also communicating such data to the vehicle controller 410. Based on the vehicle position and orientation, the vehicle controller 410 navigates the industrial vehicle to a destination.
In addition to the filter 414 for calculating the vehicle state 418, the localization module 414 also includes the feature extraction module 416 for extracting standard features from the corrected sensor data. The map module 338 uses feature selection 420 together with the vehicle state 418 to select from the available the dynamic features 422 and static features 424 available to the localization module 402 by eliminating invisible features from the feature set 422 and 424 thus reducing the number of features that must be examined by feature extraction 416. This can be performed by partitioning the map data into smaller area, where the partition only contains landmarks likely to be observed by the vehicle given the approximate pose of the vehicle. The feature selection module 420 also manages addition and modification of the dynamic features 422 to the map data 310. The localization module 402 and/or map module 338 can update the map data 310 to indicate areas recently occupied or cleared of certain features, such as known placed and picked items.
In some embodiments the map module 338 includes a landmark expansion module 426 which processes that landmark data 428 forming part of the local map 406 to create the static features 422 and dynamic features 424 that are associated with this landmark. Landmark expansion will associate a feature uncertainty with the created features according to the landmark uncertainty.
It is appreciated that the system 400 may employ several computing devices to perform environment based navigation. Any of the software modules within the computing device 104 may be deployed on different or multiple physical hardware components, such as other computing devices. The local map module 338, for instance, may be executed on a server computer (e.g., the central computer 106 of
In some embodiments, the local map module 338 processes observed features from the industrial vehicle and generates (or enhances) the local map data 310 (i.e., maintains local map data). Essentially, the map module 338 at the mobile computer 104 updates the dynamic features 422 as well as the map data 310 with features and landmarks that were observed by the industrial vehicle upon which the mobile computer 104 is associated. The observed features (and/or landmarks) are transmitted to the central computer 106 for inclusion in the global map data. As such, the local map data of other vehicles will be updated with information from the global map data. Consequently, the disparate vehicles share their observed features and/or landmarks. The vehicle controller 410, therefore, can now navigate the industrial vehicle associated with the mobile computer 104 using features and/or landmarks that are observed by another vehicle without first observing the landmarks.
The feature extraction 506 examines data inputted by sensor devices and extracts observed features (e.g. lines and corners). The data association 508 compares the observed features with known feature information to identify matching features with existing static and/or dynamic map data 424, 422. The EKF 710 is an Extended Kalman Filter that, given measurements associated with the matching features and a previous vehicle pose, provides a most likely current vehicle pose. The map manager 512 maintains an up-to-date dynamic map of features used for localization that are not found in a-priori static map. These updates to the dynamic map data are sent to the central computer for inclusion in the global map data.
The sensor data correction 502 is a step in the localization process 514 where motion artifacts are removed from the sensor data prior to a vehicle pose prediction according to some embodiments. The sensor data correction 502 uses the vehicle motion data, which is acquired from various sensor data and then modifies sensor data that may be affected by the vehicle motion prior to this data being communicated to the interface 504. For example, the sensor data correction 502 uses a wheel diameter and encoder data to compute velocity measurements. A change in vehicle pose causes the motion artifacts in subsequent laser scanner data. Accordingly, the sensor data correction 502 modifies the laser scanner data prior to invoking the EKF 510 via the interface 504. The EKF 510, in response, performs a pose prediction in order to estimate current position data based on the vehicle motion data. The EKF 510 corrects the estimated current position data in response to the laser scanner data. Via the interface 504, the corrected current position data is communicated back to the vehicle.
At step 606 the method 600 evaluates the observed features to identify if either new features information or in some embodiments whether new observations of features with a sundown time has been received. If there are now new features to method proceeds to step 614
At step 608, the method 600 processes new features to against landmark information (e.g., the landmark information 328 of
At step 612, the method 600 generates local map data for the physical environment (i.e., a shared used space). The local map data includes the feature information associated with the disparate features that form the certain landmark. In other words, the local map data includes features that are observed by the industrial vehicle. This landmark data (comprising the features) is transmitted to the central computer for inclusion into the global map data.
At step 614 the method 600 decides whether to update the global map with new landmark information. Updates may be generated whenever a new landmark is identified, or may be updated periodically. In addition the method may generate a request to update the local may to add new features observed by other industrial vehicles.
At step 616 the method 600 packages the new landmark information in a form suitable to update the global map. Each new landmark includes a pose and an uncertainty. The uncertainty is dependent on the uncertainty of the feature observations and the number of features that match the landmark geometry. Thus the uncertainty includes a position uncertainty and an identification uncertainty At step 618, the method 600 ends.
At step 704, the method 700 receives local map data from one vehicle in a plurality of autonomous industrial vehicles. The local map data comprises at least one landmark that previously was not recognized as contained within the local map of the sending vehicle. At step 706 the method processes the new landmarks. In one embodiment the process will combine the landmark data received from multiple industrial vehicles evaluating each new landmark for similarity with the landmarks previously reported. The method adds the existing landmarks new features observed by independent vehicles and reduces the pose and identification uncertainty associated with the landmark. In an alternative embodiment the step implement a process filter which statistically combines observations from multiple industrial vehicles and only generate new landmarks for the global map when sufficient observations have been received to reduce the uncertainty to an acceptable limit. In one embodiment new features are assigned a sundown value which requires that the features be continuously observed to be maintained in the global map.
At step 708, the method 700 updates global map data at the central computer with the feature information. In one embodiment the step will include evaluating the sundown value of map features and removing those landmarks that have not been recently observed. Hence, the global map data includes observed features of another industrial vehicle that facilitate industrial vehicle navigation. Since all the industrial vehicles report to the method 700 in this manner, the global map contains the observed features of all the industrial vehicles.
At step 710, the method 700 determines whether a request (e.g., the request 319 of
In other embodiments, the central computer has knowledge of the positions of all the vehicles. As such, the central computer may automatically extract local map data and send it to the vehicles, i.e., without a request being received. The process may be performed either periodically or when a vehicle enters a region that has previously received a feature information update from another vehicle.
In a further embodiment, local maps may be sent continuously to vehicles as they progress through an environment. The local maps may overlap such that a prior map can be used as the next map is being received. A sequence of local maps may be sent to the vehicle, where the sequence encompasses a path being traversed by a particular vehicle.
Through the use of a global map that is updated using local map data produced by various vehicles, the vehicles can enhance the environment to add navigation landmarks, e.g., position an object to use as a landmark to enhance navigation, then share the feature information with other vehicles via the global map. In other embodiments, obstructions become dynamic feature entries in the local map data such that knowledge of an obstruction is shared by the vehicles through the global map. To enhance the use of features, some embodiments may “sun-down” certain types of features, i.e., a static feature that is repeatedly identified by the vehicles may form a permanent landmark in the global map, while dynamic features that newly appear in the global map may be assigned a sun-down value when they will be removed from the global map unless renewed through being observed another vehicle.
Various elements, devices, and modules are described above in association with their respective functions. These elements, devices, and modules are considered means for performing their respective functions as described herein.
While the foregoing is directed to embodiments of the present invention, other and further embodiments of the invention may be devised without departing from the basic scope thereof, and the scope thereof is determined by the claims that follow.
Number | Name | Date | Kind |
---|---|---|---|
4855915 | Dallaire | Aug 1989 | A |
4858132 | Holmquist | Aug 1989 | A |
5011358 | Andersen et al. | Apr 1991 | A |
5051906 | Evans, Jr. et al. | Sep 1991 | A |
5170352 | McTamaney et al. | Dec 1992 | A |
5202832 | Lisy | Apr 1993 | A |
5471393 | Bolger | Nov 1995 | A |
5491670 | Weber | Feb 1996 | A |
5539638 | Keeler et al. | Jul 1996 | A |
5568030 | Nishikawa et al. | Oct 1996 | A |
5612883 | Shaffer et al. | Mar 1997 | A |
5646845 | Gudat et al. | Jul 1997 | A |
5682317 | Keeler et al. | Oct 1997 | A |
5916285 | Alofs et al. | Jun 1999 | A |
5938710 | Lanza et al. | Aug 1999 | A |
5961571 | Gorr et al. | Oct 1999 | A |
6012003 | Astrom | Jan 2000 | A |
6092010 | Alofs et al. | Jul 2000 | A |
6208916 | Hori | Mar 2001 | B1 |
6246930 | Hori | Jun 2001 | B1 |
6295503 | Inoue et al. | Sep 2001 | B1 |
6308118 | Holmquist | Oct 2001 | B1 |
6539294 | Kageyama | Mar 2003 | B1 |
6592488 | Gassmann | Jul 2003 | B2 |
6917839 | Bickford | Jul 2005 | B2 |
6952488 | Kelly et al. | Oct 2005 | B2 |
7148458 | Schell et al. | Dec 2006 | B2 |
7162338 | Goncalves et al. | Jan 2007 | B2 |
7177737 | Karlsson et al. | Feb 2007 | B2 |
7246007 | Ferman | Jul 2007 | B2 |
7272467 | Goncalves et al. | Sep 2007 | B2 |
7499796 | Listle et al. | Mar 2009 | B2 |
7539563 | Yang et al. | May 2009 | B2 |
7646336 | Tan et al. | Jan 2010 | B2 |
7679532 | Karlsson et al. | Mar 2010 | B2 |
7688225 | Haynes et al. | Mar 2010 | B1 |
7689321 | Karlsson | Mar 2010 | B2 |
7720554 | DiBernardo et al. | May 2010 | B2 |
7734385 | Yang et al. | Jun 2010 | B2 |
7844364 | McLurkin et al. | Nov 2010 | B2 |
7996097 | DiBernardo et al. | Aug 2011 | B2 |
8020657 | Allard et al. | Sep 2011 | B2 |
8050863 | Trepangnier et al. | Nov 2011 | B2 |
8103383 | Nakamura | Jan 2012 | B2 |
8126642 | Trepagnier et al. | Feb 2012 | B2 |
8150650 | Goncalves et al. | Apr 2012 | B2 |
8204679 | Nakamura | Jun 2012 | B2 |
8255107 | Yang et al. | Aug 2012 | B2 |
8280623 | Trepagnier et al. | Oct 2012 | B2 |
20040030493 | Pechatnikov et al. | Feb 2004 | A1 |
20040202351 | Park et al. | Oct 2004 | A1 |
20040249504 | Gutmann et al. | Dec 2004 | A1 |
20050075116 | Laird et al. | Apr 2005 | A1 |
20050149256 | Lawitzky et al. | Jul 2005 | A1 |
20050182518 | Karlsson | Aug 2005 | A1 |
20060181391 | McNeill et al. | Aug 2006 | A1 |
20060184013 | Emanuel et al. | Aug 2006 | A1 |
20070061043 | Ermakov et al. | Mar 2007 | A1 |
20070090973 | Karlsson et al. | Apr 2007 | A1 |
20070106465 | Adam et al. | May 2007 | A1 |
20070150097 | Chae et al. | Jun 2007 | A1 |
20070153802 | Anke et al. | Jul 2007 | A1 |
20070262884 | Goncalves et al. | Nov 2007 | A1 |
20080015772 | Sanma et al. | Jan 2008 | A1 |
20090012667 | Matsumoto et al. | Jan 2009 | A1 |
20090140887 | Breed et al. | Jun 2009 | A1 |
20090216438 | Shafer | Aug 2009 | A1 |
20100023257 | Machino | Jan 2010 | A1 |
20100161224 | Lee et al. | Jun 2010 | A1 |
20100222925 | Anezaki | Sep 2010 | A1 |
20100256908 | Shimshoni et al. | Oct 2010 | A1 |
20100268697 | Karlsson et al. | Oct 2010 | A1 |
20100286905 | Goncalves et al. | Nov 2010 | A1 |
20110010023 | Kunzig et al. | Jan 2011 | A1 |
20110121068 | Emanuel et al. | May 2011 | A1 |
20110125323 | Gutmann et al. | May 2011 | A1 |
20110150348 | Anderson | Jun 2011 | A1 |
20110153338 | Anderson | Jun 2011 | A1 |
20110230207 | Hasegawa | Sep 2011 | A1 |
20120035797 | Oobayashi et al. | Feb 2012 | A1 |
20120101784 | Lindores et al. | Apr 2012 | A1 |
20120191272 | Andersen et al. | Jul 2012 | A1 |
20120323431 | Wong et al. | Dec 2012 | A1 |
20130006420 | Karlsson et al. | Jan 2013 | A1 |
Number | Date | Country |
---|---|---|
19757333 | Sep 1999 | DE |
10220936 | Dec 2003 | DE |
10234730 | Feb 2004 | DE |
102007021693 | Nov 2008 | DE |
1732247 | Dec 2006 | EP |
2389947 | Dec 2003 | GB |
60067818 | Apr 1985 | JP |
2992048579 | Feb 2002 | JP |
2002108446 | Apr 2002 | JP |
2005114546 | Apr 2005 | JP |
03096052 | Nov 2003 | WO |
Entry |
---|
International Search Report and Written Opinion mailed Oct. 9, 2012 for PCT/NZ2012/000092. |
Office Action from U.S. Appl. No. 13/159,501 mailed Jan. 10, 2013. |
Office Action from U.S. Appl. No. 12/660,616 mailed Nov. 27, 2012. |
“Three Engineers, Hundreds of Robots, One Warehouse,” Guizzo, IEEE Spectrum, Jul. 2008. |
Office Action from U.S. Appl. No. 13/116,600 mailed Dec. 31, 2012. |
Search Report/Written Opinion from PCT/NZ2012/000051 mailed Jan. 2, 2013. |
Search Report/Written Opinion from PCT/NZ2012/000091 mailed Oct. 31, 2012. |
Search Report/Written Opinion from PCT/US2012/054062 mailed Nov. 27, 2012. |
Search Report/Written Opinion from PCT/US2012/052247 mailed Nov. 27, 2012. |
Borenstein et al. “Mobile Robot Positioning—Sensors and Techniques”, Journal of Robotic Systems, Special Issue on Mobile Robots, vol. 14, No. 4, pp. 231-249, Apr. 1997. |
Harmon et al., “A Technique for Coordinating Autonomous Robots”, Autonomous Systems Branch Naval Ocean Systems Center San Diego, CA 92152, 1986. |
Jansfelt et al., “Laser Based Position Acquisition and Tracking in an Indoor Environment”, Proc. Int. Symp. Robotics and Automation, 1998. |
Siadat et al., “An Optimized Segmentation Method for a 2D Laser-Scanner Applied to Mobile Robot Navigation”, Proceedings of the 3rd IFAC Sympo9sium on Intelligent Components and Instruments for Control Applications, 1997. |
International Search Report and Written Opinion pertaining to International Patent Application No. PCT/NZ2012/000084, dated Jan. 30, 2013. |
Office Action pertaining to U. S. Appl. No. 13/219,271, dated Feb. 25, 2013. |
Office Action pertaining to U. S. Appl. No. 13/153,743, dated Mar. 4, 2013. |
Office Action from U.S. Appl. No. 12/948,358 mailed Apr. 8, 2013. |
Office Action mailed May 8, 2013 from U.S. Appl. No. 13/672,260, filed Nov. 8, 2012. |
Office Action mailed Jun. 4, 2013 from U.S. Appl. No. 13/159,501, filed Jun. 14, 2011. |
Office Action mailed May 21, 2013 from U.S. Appl. No. 12/718,620, filed Mar. 5, 2010. |
Office Action mailed Jul. 12, 2013 from U.S. Appl. No. 13/227,165, filed Sep. 7, 2011. |
Number | Date | Country | |
---|---|---|---|
20120323431 A1 | Dec 2012 | US |