IPC분류정보
국가/구분 |
United States(US) Patent
등록
|
국제특허분류(IPC7판) |
|
출원번호 |
UP-0428637
(2006-07-05)
|
등록번호 |
US-7587260
(2009-09-22)
|
발명자
/ 주소 |
- Bruemmer, David J.
- Few, Douglas A.
|
출원인 / 주소 |
- Battelle Energy Alliance, LLC
|
대리인 / 주소 |
|
인용정보 |
피인용 횟수 :
97 인용 특허 :
64 |
초록
▼
A robot platform includes perceptors, locomotors, and a system controller, which executes instructions for autonomously navigating a robot. The instructions repeat, on each iteration through an event timing loop, the acts of defining an event horizon based on the robot's current velocity, detecting
A robot platform includes perceptors, locomotors, and a system controller, which executes instructions for autonomously navigating a robot. The instructions repeat, on each iteration through an event timing loop, the acts of defining an event horizon based on the robot's current velocity, detecting a range to obstacles around the robot, testing for an event horizon intrusion by determining if any range to the obstacles is within the event horizon, and adjusting rotational and translational velocity of the robot accordingly. If the event horizon intrusion occurs, rotational velocity is modified by a proportion of the current rotational velocity reduced by a proportion of the range to the nearest obstacle and translational velocity is modified by a proportion of the range to the nearest obstacle. If no event horizon intrusion occurs, translational velocity is set as a ratio of a speed factor relative to a maximum speed.
대표청구항
▼
What is claimed is: 1. A method for autonomously navigating a robot, comprising: repeating on each iteration through an event timing loop, the acts of: defining an event horizon comprising a distance from the robot that is proportional to a current velocity of the robot; detecting a range to obstac
What is claimed is: 1. A method for autonomously navigating a robot, comprising: repeating on each iteration through an event timing loop, the acts of: defining an event horizon comprising a distance from the robot that is proportional to a current velocity of the robot; detecting a range to obstacles around the robot; testing for an event horizon intrusion by determining if any range to the obstacles is within the event horizon; adjusting a rotational velocity comprising: modifying the rotational velocity if the event horizon intrusion occurs based on a proportion of a current rotational velocity reduced by a proportion of the range to a nearest obstacle within the event horizon; and adjusting a translational velocity comprising: modifying the translational velocity if the event horizon intrusion occurs based on a proportion of the range to the nearest obstacle within the event horizon; and setting the translational velocity if the event horizon intrusion does not occur to a ratio of a predetermined speed factor relative to a maximum allowable speed. 2. The method of claim 1, further comprising: determining whether a detection behavior is in progress and if so, then: if the event horizon intrusion occurs, refraining from setting the translational velocity; and if the event horizon intrusion does not occur, setting the translational velocity to a safe speed proportional to a physical configuration of a detection apparatus used in the detection behavior. 3. The method of claim 1, further comprising: determining whether a predetermined velocity limit has been set and if so, then: if the event horizon intrusion occurs, refraining from setting the translational velocity; and if the event horizon intrusion does not occur, setting the translational velocity to a ratio of the predetermined speed factor relative to the predetermined velocity limit. 4. The method of claim 1, further comprising sensing whether the robot is blocked in a front direction and if the robot is blocked then: refraining from adjusting the rotational velocity; refraining from adjusting the translational velocity; setting the translational velocity to zero; sensing whether the robot is blocked on a lateral side of the robot and if the robot is blocked on the lateral side, then: setting a rotational direction opposite to the lateral side that is blocked; and setting the rotational velocity by a fractional amount of the current rotational velocity; and if the robot is not blocked on the lateral side, then: determining a left-side range to a closest obstacle on a left side of the robot; determining a right-side range to a closest obstacle on a right side of the robot; setting the rotational direction to the right if the left-side range is less than the right-side range; setting the rotational direction to the left if the right-side range is less than the left-side range; and setting the rotational velocity to a fractional amount of a predetermined maximum rotational velocity. 5. The method of claim 1, further comprising sensing whether obstacles are substantially near a front direction of the robot, but not directly in front of the robot and if so, then setting the rotational velocity to a fractional amount of the current rotational velocity. 6. The method of claim 1, further comprising: reducing the current rotational velocity of the robot in proportion to a loop period of the event timing loop if the event horizon intrusion occurs; and reducing the current translational velocity of the robot in proportion to the loop period of the event timing loop if the event horizon intrusion occurs. 7. The method of claim 1, wherein the maximum allowable speed and the predetermined speed factor are set by a source selected from the group consisting of a user in communication with the robot, a robot attribute, a robot behavior, a cognitive conduct, and combinations thereof. 8. The method of claim 1, wherein a loop period is adjusted based on a current work load of a system controller on the robot. 9. A computer readable medium having computer instructions thereon, which when executed on a system controller provide a method for autonomously navigating a robot, the computer instructions comprising instructions for: repeating on each iteration through an event timing loop, the acts of: defining an event horizon comprising a distance from the robot that is proportional to a current velocity of the robot; detecting a range to obstacles around the robot; testing for an event horizon intrusion by determining if any range to the obstacles is within the event horizon; adjusting a rotational velocity comprising: modifying the rotational velocity if the event horizon intrusion occurs based on a proportion of a current rotational velocity reduced by a proportion of the range to a nearest obstacle within the event horizon; and adjusting a translational velocity comprising: modifying the translational velocity if the event horizon intrusion occurs based on a proportion of the range to the nearest obstacle within the event horizon; and setting the translational velocity if the event horizon intrusion does not occur to a ratio of a predetermined speed factor relative to a maximum allowable speed. 10. The computer readable medium of claim 9, further comprising instructions for: determining whether a detection behavior is in progress and if so, then: if the event horizon intrusion occurs, refraining from setting the translational velocity; and if the event horizon intrusion does not occur, setting the translational velocity to a safe speed proportional to a physical configuration of a detection apparatus used in the detection behavior. 11. The computer readable medium of claim 9, further comprising instructions for: determining whether a predetermined velocity limit has been set and if so, then: if the event horizon intrusion occurs, refraining from setting the translational velocity; and if the event horizon intrusion does not occur, setting the translational velocity to a ratio of the predetermined speed factor relative to the predetermined velocity limit. 12. The computer readable medium of claim 9, further comprising instructions for sensing whether the robot is blocked in a front direction and if the robot is blocked then: refraining from adjusting the rotational velocity; refraining from adjusting the translational velocity; setting the translational velocity to zero; sensing whether the robot is blocked on a lateral side of the robot and if the robot is blocked on the lateral side, then: setting a rotational direction opposite to the lateral side that is blocked; and setting the rotational velocity by a fractional amount of the current rotational velocity; and if the robot is not blocked on the lateral side, then: determining a left-side range to a closest obstacle on a left side of the robot; determining a right-side range to a closest obstacle on a right side of the robot; setting the rotational direction to the right if the left-side range is less than the right-side range; setting the rotational direction to the left if the right-side range is less than the left-side range; and setting the rotational velocity to a fractional amount of a predetermined maximum rotational velocity. 13. The computer readable medium of claim 9, further comprising instructions for sensing whether obstacles are substantially near a front direction of the robot, but not directly in front of the robot and if so, then setting the rotational velocity to a fractional amount of the current rotational velocity. 14. The method of claim 9, further comprising instructions for: reducing the current rotational velocity of the robot in proportion to a loop period of the event timing loop if the event horizon intrusion occurs; and reducing the current translational velocity of the robot in proportion to the loop period of an event timing loop if the event horizon intrusion occurs. 15. The computer readable medium of claim 9, wherein the maximum allowable speed and the predetermined speed factor are set by a source selected from the group consisting of a user in communication with the robot, a robot attribute, a robot behavior, a cognitive conduct, and combinations thereof. 16. The computer readable medium of claim 9, wherein a loop period is adjusted based on a current work load of a system controller on the robot. 17. A robot platform, comprising: at least one perceptor configured for perceiving environmental variables of interest; at least one locomotor configured for providing mobility to the robot platform; a system controller configured for executing computer instructions configured for autonomously navigating a robot, the computer instructions comprising instructions for: repeating on each iteration through an event timing loop, the acts of: defining an event horizon comprising a distance from the robot that is proportional to a current velocity of the robot; detecting a range to obstacles around the robot; testing for an event horizon intrusion by determining if any range to the obstacles is within the event horizon; adjusting a rotational velocity comprising: modifying the rotational velocity if the event horizon intrusion occurs based on a proportion of a current rotational velocity reduced by a proportion of the range to a nearest obstacle within the event horizon; and adjusting a translational velocity comprising: modifying the translational velocity if the event horizon intrusion occurs based on a proportion of the range to the nearest obstacle within the event horizon; and setting the translational velocity if the event horizon intrusion does not occur to a ratio of a predetermined speed factor relative to a maximum allowable speed. 18. The robot platform of claim 17, further comprising instructions for: determining whether a detection behavior is in progress and if so, then: if the event horizon intrusion occurs, refraining from setting the translational velocity; and if the event horizon intrusion does not occur, setting the translational velocity to a safe speed proportional to a physical configuration of a detection apparatus used in the detection behavior. 19. The robot platform of claim 17, further comprising instructions for: determining whether a predetermined velocity limit has been set and if so, then: refraining from setting the translational velocity if the event horizon intrusion occurs; and setting the translational velocity to a ratio of the predetermined speed factor relative to the predetermined velocity limit if the event horizon intrusion does not occur. 20. The robot platform of claim 17, further comprising instructions for sensing whether the robot is blocked in a front direction and if the robot is blocked then: refraining from adjusting the rotational velocity; refraining from adjusting the translational velocity; setting the translational velocity to zero; sensing whether the robot is blocked on a lateral side of the robot and if the robot is blocked on the lateral side, then: setting a rotational direction opposite to the lateral side that is blocked; and setting the rotational velocity by a fractional amount of the current rotational velocity; and if the robot is not blocked on the lateral side, then: determining a left-side range to a closest obstacle on a left side of the robot; determining a right-side range to a closest obstacle on a right side of the robot; setting the rotational direction to the right if the left-side range is less than the right-side range; setting the rotational direction to the left if the right-side range is less than the left-side range; and setting the rotational velocity to a fractional amount of a predetermined maximum rotational velocity. 21. The robot platform of claim 17, further comprising instructions for sensing whether obstacles are substantially near a front direction of the robot, but not directly in front of the robot and if so, then setting the rotational velocity to a fractional amount of the current rotational velocity. 22. The robot platform of claim 17, further comprising instructions for: reducing the current rotational velocity of the robot in proportion to a loop period of the event timing loop if the event horizon intrusion occurs; and reducing the current translational velocity of the robot in proportion to the loop period of the event timing loop if the event horizon intrusion occurs. 23. The robot platform of claim 17, wherein the maximum allowable speed and the predetermined speed factor are set by a source selected from the group consisting of a user in communication with the robot, a robot attribute, a robot behavior, a cognitive conduct, and combinations thereof. 24. The robot platform of claim 17, wherein the loop period is adjusted based on a current work load of the system controller.
※ AI-Helper는 부적절한 답변을 할 수 있습니다.