Robot Assistant
By introducing foldable arms and lifting mechanisms into the robot assistant, the problems of insufficient accessibility and non-modular design of existing robot assistants are solved, realizing the flexibility and adaptability of end-to-end logistics services and improving the task execution capability of the robot assistant.
Patent Information
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- UBKANG (QINGDAO) TECH CO LTD
- Filing Date
- 2021-04-30
- Publication Date
- 2026-05-26
Smart Images

Figure CN114025922B_ABST
Abstract
Description
Technical Field
[0001] This invention relates generally to robots, and more particularly to intelligent logistics robot assistants capable of performing delivery, tracking and other tasks. Background Technology
[0002] The significant increase in the global elderly population is accompanied by problems such as a shortage of healthcare professionals, declining quality of care services for the elderly, and economic challenges in medical treatment. Recent advances in robotics offer an innovative solution to alleviate these challenges by improving the quality of life for older adults and prioritizing their dignity and independence. Consequently, healthcare robots have attracted considerable attention in recent years. By assisting in tasks such as monitoring and tracking the health of older adults and performing repetitive tasks, healthcare robots can provide services to both healthcare professionals and older adults.
[0003] One type of robotic assistant can be designed to assist humans in performing tasks, such as logistics and transportation. For example, robotic assistants, particularly those used in the healthcare industry such as hospitals, typically include wheels for movement and fixed storage containers / pallets, enabling them to deliver objects such as medicines, equipment, and food to the required locations.
[0004] However, due to the fixed nature of the storage containers / pallets and the lack of attached manipulators, these robotic assistants suffer from a lack of accessibility, meaning they cannot extend beyond their basic physical footprint. Furthermore, the non-modular design of these robotic assistants means they can only perform one task at a time and cannot provide end-to-end logistics services (e.g., collection, storage, navigation, distribution) for healthcare settings such as nursing homes or hospitals. Moreover, the non-modular design of these robotic assistants does not allow for minor modifications to the platform for different business applications.
[0005] Therefore, a robotic assistant is needed to overcome the above problems. Summary of the Invention
[0006] The purpose of this invention is to provide a robot assistant that addresses the aforementioned problems.
[0007] The present invention is implemented as follows: a robot assistant includes: a wheeled base; a storage unit including one or more drawers; a foldable arm including an end-effector connected to the distal end of the foldable arm, the foldable arm being connected to the top of the storage unit; a lifting mechanism positioned on the wheeled base, the lifting mechanism being configured to move the storage unit up and down; and a control system receiving command instructions, the control system being configured, in response to the command instructions, to: move the wheeled base, open or close the one or more drawers, drive the movement of the foldable arm and the end-effector to pick up an external object from a defined location and place an external object to a defined location, and control the storage unit to drive the one or more drawers.
[0008] Furthermore, the lifting mechanism includes an actuator and a lifting mechanism, the lifting mechanism being connected to the storage unit and the wheel base, the actuator being fixed to the wheel base and configured to drive the lifting mechanism to extend or retract in the vertical direction.
[0009] Furthermore, the storage unit includes a housing and one or more drive devices configured to drive the one or more drawers to slide relative to the housing to an open position and a closed position.
[0010] Furthermore, the foldable arm includes N links, M first rotary joints and a second rotary joint. The N links are rotatably connected in series with each other through the M first rotary joints. The first of the N links is rotatably connected to the top of the storage unit through the second rotary joint, where N is a natural number greater than 2 and N = M + 1.
[0011] Furthermore, the robot assistant also includes a camera configured to detect objects, and the control system instructs the foldable arm to be in a defined orientation and / or position via connections of one or more of the N rotary joints and N links, and instructs the end-effector tool to pick up and place external objects from the one or more drawers according to the command instructions based on the output from the camera.
[0012] Furthermore, the camera is located on the foldable arm and close to the arm-end tool, or on / inside the arm-end tool.
[0013] Furthermore, the robotic assistant also includes an arm guard for protecting the foldable arm, which is either fixed or retractable.
[0014] Furthermore, the actuator is a linear actuator configured to apply a thrust or pull force to the lifting mechanism to drive the lifting mechanism to extend or retract in the vertical direction.
[0015] Furthermore, the robot assistant also includes a plurality of actuated feet connected to the wheeled base, and the control system instructs the actuated feet to move downward to contact a surface.
[0016] Furthermore, the foldable arm is configured to fold onto the top of the storage unit in a generally flat state.
[0017] The present invention also provides a robot assistant comprising: a wheeled base; a drawer mechanism including one or more drawers; a foldable arm connected to the top of the drawer mechanism, the foldable arm including an end-effector tool, the end-effector tool being configured, in response to a command, to pick up an external object from a defined location and place the external object to a defined location by actuation of the foldable arm; and a lifting mechanism positioned on the wheeled base, the lifting mechanism being configured to move the one or more drawers up and down.
[0018] Furthermore, the determined position is the position within the one or more drawers after they are fully opened.
[0019] Furthermore, the lifting mechanism includes an actuator and a lifting mechanism, the lifting mechanism being connected to the drawer mechanism and the wheel base, the actuator being fixed to the wheel base and configured to drive the lifting mechanism to extend or retract in the vertical direction.
[0020] Furthermore, the drawer mechanism includes a housing and one or more drive devices configured to drive one or more drawers to slide relative to the housing to an open position and a closed position.
[0021] Furthermore, the foldable arm includes N links, M first rotary joints and a second rotary joint. The N links are rotatably connected in series with each other through the M first rotary joints. The first of the N links is rotatably connected to the drawer mechanism through the second rotary joint, where N is a natural number greater than 2 and N = M + 1.
[0022] Furthermore, the robot assistant also includes a camera configured to detect objects, a control system instructing the foldable arm to be in a defined orientation and / or position via connections of one or more of the N rotary joints and N links, and instructing the end-effector tool, based on output from the camera and according to the command instructions, to pick up external objects from the one or more drawers and place external objects into the one or more drawers.
[0023] Furthermore, the camera is located on the foldable arm and close to the arm-end tool, or on / inside the arm-end tool.
[0024] Furthermore, the foldable arm is configured to fold in a substantially flat state on top of the drawer mechanism.
[0025] The present invention also provides a robot assistant comprising: a wheeled base; a storage unit; a foldable arm including an end-effector connected to the distal end of the foldable arm, the foldable arm being connected to the top of the storage unit, the end-effector being configured to pick up an external object from a predetermined position and place the external object to a predetermined position by actuation of the foldable arm; and a lifting mechanism positioned on the wheeled base, the lifting mechanism being configured to move the one or more drawers up and down.
[0026] Furthermore, the lifting mechanism includes an actuator and a lifting mechanism, the lifting mechanism being connected to the lifting mechanism and the wheel base, the actuator being fixed to the wheel base and configured to drive the lifting mechanism to extend or retract in the vertical direction.
[0027] The technical advantages of this invention compared to existing technologies are as follows: The robot assistant of this invention includes a foldable arm and a lifting mechanism. This foldable arm, together with the lifting mechanism, enables the robot assistant to have an extended reach, which extends beyond the robot assistant's basic physical footprint. The robot assistant can be an autonomous robot with capabilities including precise positioning, motion planning, and trajectory tracking, enabling intelligent logistics and providing unsupervised end-to-end logistics solutions. Attached Figure Description
[0028] To more clearly illustrate the technical solutions of the embodiments of the present invention, the drawings used in the description of the embodiments of the present invention or the prior art will be briefly introduced below. Obviously, the drawings described below are only some embodiments of the present invention. For those skilled in the art, other drawings can be obtained based on these drawings without creative effort.
[0029] Figure 1A This is an isometric view of a robot assistant according to one embodiment.
[0030] Figure 1B This is an isometric view of a robot assistant according to another embodiment.
[0031] Figure 2 yes Figure 1A A plan view of the robot assistant.
[0032] Figure 3 yes Figure 1A An isometric view of the robot assistant in an elevated state.
[0033] Figure 4 yes Figure 1AAn isometric view of the wheeled base of the robot assistant.
[0034] Figure 5 Viewing from different angles Figure 4 A semi-exploded view of the wheel base.
[0035] Figure 6 yes Figure 4 An isometric diagram of a wheel-based base drive wheel mechanism.
[0036] Figure 7 yes Figure 4 Isometric diagram of wheeled base casters.
[0037] Figure 8A yes Figure 4 A plan view of the wheel base, with the actuating foot in its retracted position.
[0038] Figure 8B yes Figure 4 A plan view of the wheeled base, with the actuating foot in its extended position.
[0039] Figure 9 It shows Figure 4 A comparison of the accessibility of foldable arms for robotic assistants with and without actuated legs.
[0040] Figure 10A A schematic diagram of a wheel base including a drive wheel mechanism and casters according to one embodiment is shown.
[0041] Figure 10B A schematic diagram of an alternative wheeled base comprising two drive wheel mechanisms and four casters according to one embodiment is shown.
[0042] Figure 11 This is an isometric view of the drawer mechanism of a robot assistant according to one embodiment.
[0043] Figure 12 This is an isometric view of the drawer mechanism of a robot assistant viewed from a different angle according to another embodiment.
[0044] Figure 13 According to one embodiment Figure 1B An isometric exploded view of the foldable arm of a robotic assistant.
[0045] Figure 14A yes Figure 13 The image shows an isometric view of a foldable arm in its original flat state according to one embodiment. The foldable arm has an end-of-arm tool (EOAT) or an EOAT manipulator.
[0046] Figure 14B yes Figure 13An isometric view of the foldable arm with the EOAT in its original flat state, according to another embodiment.
[0047] Figure 14C yes Figure 14B An isometric view of the foldable arm in its intermediate position.
[0048] Figure 14D yes Figure 14B An isometric view of the foldable arm in its final state when grasping an object.
[0049] Figure 15A This is an isometric view of another embodiment of the EOAT of a robot assistant according to one embodiment.
[0050] Figure 15B yes Figure 15A An isometric decomposition plot of EOAT.
[0051] Figure 15C yes Figure 15A An isometric view of EOAT.
[0052] Figure 16A This is an isometric view of another EOAT of a robot assistant according to one embodiment.
[0053] Figure 16B yes Figure 16A An isometric view of EOAT.
[0054] Figure 16C yes Figure 16A An isometric view of EOAT.
[0055] Figure 17A This is an isometric view of another embodiment of the EOAT of a robot assistant according to one embodiment.
[0056] Figure 17B yes Figure 17A An isometric decomposition plot of EOAT.
[0057] Figure 17C yes Figure 17A An isometric view of EOAT.
[0058] Figure 17D This is an isometric view of another embodiment of the EOAT of a robot assistant according to one embodiment.
[0059] Figure 18A This is an isometric view of another embodiment of the EOAT of a robot assistant according to one embodiment.
[0060] Figure 18B yes Figure 18A An isometric decomposition plot of EOAT.
[0061] Figure 18C yes Figure 18A An isometric exploded view of EOAT viewed from different angles.
[0062] Figure 19A This is an isometric view of another embodiment of the EOAT of a robot assistant according to one embodiment.
[0063] Figure 19B yes Figure 19A An isometric decomposition plot of EOAT.
[0064] Figure 20 This is an isometric exploded view of the vacuum module EOAT of a robot assistant according to one embodiment.
[0065] Figure 21A Showing installation Figure 13 The camera is mounted on the foldable arm of the EOAT.
[0066] Figure 21B Similar to Figure 20 A shows an EOAT mounted on a camera and rotated to different directions.
[0067] Figure 21C Show connection Figure 13 The camera is mounted on a foldable arm and is positioned close to the robot assistant's EOAT.
[0068] Figure 21D The camera shown is connected to the EOAT robot assistant.
[0069] Figure 22 This is an isometric view of the lifting mechanism of the robot assistant.
[0070] Figure 23 yes Figure 22 The lifting mechanism is viewed from different angles in isometric views, with its top plate separated.
[0071] Figure 24 It shows Figure 22 A plan view of the lifting mechanism of the drawer mechanism.
[0072] Figure 25 This is a schematic diagram illustrating how a robotic assistant avoids obstacles while moving along a planned path.
[0073] Figure 26 This is a schematic diagram showing a robotic assistant picking up a specific object from a storage rack.
[0074] Figure 27 This is a schematic block diagram of a robot assistant according to one embodiment.
[0075] Figure 28This is a schematic block diagram of a base control subsystem for a robot assistant according to one embodiment.
[0076] Figure 29 This is a schematic block diagram of the body control subsystem of a robot assistant according to one embodiment.
[0077] Figure 30 This is a schematic block diagram of a sensor subsystem for a robot assistant according to one embodiment.
[0078] Figure 31 This is a schematic block diagram of a battery pack for a robot assistant according to one embodiment.
[0079] Figure 32 This is a schematic block diagram of the power system of a robot assistant according to one embodiment.
[0080] Figure 33A This is a schematic diagram illustrating a user interface used with a robot assistant according to one embodiment.
[0081] Figure 33B This is a schematic diagram illustrating a user interface used with a robot assistant according to one embodiment.
[0082] Figure 33C This is a schematic diagram illustrating a user interface used with a robot assistant according to one embodiment.
[0083] Figure 34 This is a schematic flowchart of a method implemented by a robot assistant's control system according to one embodiment.
[0084] Figure 35 This is a schematic diagram illustrating the motion trajectory of a foldable arm according to one embodiment.
[0085] Figure 36 This is a schematic flowchart of a method for controlling a foldable arm and EOAT of a robot assistant according to one embodiment.
[0086] Figure 37 This is a schematic flowchart illustrating the method for controlling the drawer of a robotic assistant.
[0087] Figure 38 This is a schematic flowchart of a robot assistant navigation method according to one embodiment.
[0088] Figure 39 This is a schematic flowchart illustrating the method for determining the parameters of a foldable arm.
[0089] Figure 40A This is a schematic diagram showing the structure and boundaries of the foldable arm.
[0090] Figure 40BThis is a top view illustrating the configuration of the foldable arm.
[0091] Figure 40C This is a schematic diagram illustrating the configuration of the foldable arm.
[0092] Figure 40D It is a diagram showing the order in which the accessibility of each point inside the drawer is determined.
[0093] Figure 41A and 41B This is a schematic diagram showing the accessible workspace of the foldable arm inside / on the frame when the lifting mechanism is at different heights. Detailed Implementation
[0094] Embodiments of the present invention are described in detail below. Examples of these embodiments are illustrated in the accompanying drawings, wherein the same or similar reference numerals denote the same or similar elements or elements having the same or similar functions throughout. The embodiments described below with reference to the accompanying drawings are exemplary and intended to explain the present invention, and should not be construed as limiting the present invention.
[0095] In the description of this invention, it should be understood that the terms "length", "width", "upper", "lower", "front", "rear", "left", "right", "vertical", "horizontal", "top", "bottom", "inner", "outer", etc., indicate the orientation or positional relationship based on the orientation or positional relationship shown in the accompanying drawings. They are only for the convenience of describing this invention and simplifying the description, and do not indicate or imply that the device or element referred to must have a specific orientation, or be constructed and operated in a specific orientation. Therefore, they should not be construed as limitations on this invention.
[0096] Furthermore, the terms "first" and "second" are used for descriptive purposes only and should not be construed as indicating or implying relative importance or implicitly specifying the number of technical features indicated. Thus, a feature defined as "first" or "second" may explicitly or implicitly include one or more of that feature. In the description of this invention, "a plurality of" means two or more, unless otherwise explicitly specified.
[0097] In this invention, unless otherwise explicitly specified and limited, the terms "installation," "connection," "linking," and "fixing," etc., should be interpreted broadly. For example, they can refer to a fixed connection, a detachable connection, or an integral part; they can refer to a mechanical connection or an electrical connection; they can refer to a direct connection or an indirect connection through an intermediate medium; they can refer to the internal communication of two components or the interaction between two components. Those skilled in the art can understand the specific meaning of the above terms in this invention according to the specific circumstances.
[0098] To make the objectives, technical solutions, and advantages of this invention clearer, the invention will be further described in detail below with reference to the accompanying drawings and embodiments.
[0099] Figure 1A and Figure 1B This is an isometric view of a robotic assistant 100, which employs lifting and extended reach mechanisms to assist humans in performing tasks such as logistics and transportation. In one embodiment, the robotic assistant 100 can be used in settings such as healthcare facilities, elderly care facilities, etc., to assist healthcare professionals in performing their daily tasks. However, the robotic assistant 100 can also be used in security / surveillance scenarios. In an exemplary embodiment, the robotic assistant 100 can be used in assisted living facilities or healthcare facilities to provide unsupervised end-to-end logistics solutions to meet timely delivery and logistics needs ranging from food to medicine. The robotic assistant 100 can free healthcare providers from time-consuming and other tedious and repetitive tasks, including retrieving and delivering objects, allowing them to focus on meeting the more important physical and emotional needs of assisted living persons or others. However, it should be understood that, according to the embodiment, the robotic assistant 100 can be used in other settings, such as warehouses, packaging facilities, schools, and restaurants.
[0100] Reference Figures 1A to 3 The robot assistant 100 includes a wheeled base 10, a storage unit (e.g., a drawer mechanism 20 including one or more drawers 21), a foldable arm 30 connected to the top of the drawer mechanism 20, a lifting mechanism 40, sensors 62, 63, 64, and 65, a control system 70 that receives commands from a host computer, and a graphical user interface (GUI) displayed on a display 82, which allows the operator to directly control the robot assistant. In response to the commands, the control system 70 controls the movement of the wheeled base 10, the foldable arm 30, and the lifting mechanism 40, and / or other mechanical or software aspects of the robot assistant 100. In other embodiments, the storage unit may include an open shelf. In another embodiment, the foldable arm 30 may be omitted or replaced by a manipulator with a different configuration and different degrees of freedom.
[0101] The wheeled base 10 provides the robotic assistant 100 with a mobility mechanism to move from one location to another. In one embodiment, the wheeled base 10 includes two differential drive wheel mechanisms 11 and one or more other wheels. The drive wheel mechanisms 11 allow the wheeled base 10 to move along a defined path, while the one or more other wheels provide balance and stability for the wheeled base 10. The suspension system of the wheeled base 10 enables smoother travel over smaller gaps, carpets, mats, and floor imperfections. Additionally, the use of the wheeled base 10 allows the robotic assistant 100 to traverse the floors of an assisted living space by entering and exiting elevators. The one or more other wheels may be casters or omnidirectional drive wheels. A further description of the wheeled base 10 is provided below.
[0102] The storage unit includes a drawer mechanism 20, which is a platform for one or more drawers 21. The drawers 21 can be in an open or closed state by actuation of the drawer mechanism 20. In one embodiment, prescription drugs, needles, and surgical instruments can be stored in the drawers 21. One or more drawers 21 can be stacked on top of each other in the vertical direction (e.g., along the y-axis shown in Figure 1) to save valuable space and / or in the horizontal direction (e.g., along...). Figure 3 (shown along the x-axis) They are stacked on top of each other. Each drawer 21 can be opened individually or in combination. In one example, drawers 21 can be locked and can only be unlocked and opened by an authorized healthcare professional, and / or by an authorized person when the robotic assistant 100 delivers one or more items to a designated location. It should be noted that the number and construction of drawers 21 are not limited and can be varied as needed. For example, when the robotic assistant 100 is used in a restaurant, drawers 21 can be in the form of open shelves. In this example, food items (such as plates, trays, and cups) can be placed on open shelves and can be quickly and easily retrieved. Open shelves can be stacked vertically and / or horizontally. Alternatively, drawers 21 can be in the form of closed or semi-closed shells with depth, height, length, and width.
[0103] A foldable arm 30 is attached to the top of the drawer mechanism 20, and an end-of-arm tool (EOAT) 50 or robotic gripper is included at the distal end of the foldable arm 30. The foldable arm 30 can be extended to an open or folded position via actuation. In the folded position, the foldable arm 30 can be actuated to fold flat or substantially flat onto the top of the drawer mechanism 20. A visor or shield, made of transparent or translucent plastic / polycarbonate or any other material, can be used to cover and / or protect the arm 30. When the foldable arm 30 is in working mode, the visor / shield can automatically retract to increase the workspace of the foldable arm 30. Additionally, this foldable arm 30, together with the lifting mechanism 40, provides the robotic assistant 100 with an extended reach mechanism that extends beyond the basic physical footprint of the robotic assistant 100. The EOAT 50 is located at the distal end of the foldable arm 30 and can grasp various objects, such as prescription medications, gloves, or water bottles. The foldable arm 30 and EOAT 50 can be used to grasp objects on shelves and place those objects into drawer 21. The foldable arm 30 and EOAT 50 are then configured to reach into drawer 21, retrieve the object, and deliver it to a different shelf, table, or into the hands of a healthcare professional or patient. The foldable arm 30 and EOAT 50 are also configured to place objects in empty drawer 21 and empty shelves. More details are provided below. EOAT 50 can resemble a human hand to further anthropomorphize the robotic assistant 100.
[0104] The lifting mechanism 40 is connected between the wheel base 10 and the drawer mechanism 20. Driven by the lifting mechanism 40, the drawer mechanism 20 can be in the retracted position (see...). Figure 1A ) and the position of the extension (see Figure 3 The lifting mechanism 40 moves vertically between the retracted and extended positions. In the retracted position, the lifting mechanism 40 provides the robot assistant 100 with a limited height, which contributes to stability during the movement and travel of the robot assistant 100. In the extended position, the lifting mechanism 40 provides increased accessibility of the foldable arm 30 in the vertical direction. The lifting mechanism 40 can be driven to adjust the robot assistant 100 to a comfortable height for an elderly person who may be lying in bed, sitting in a wheelchair, or standing. Further description of the lifting mechanism 40 is provided below. With the arm guard fixed, the lifting mechanism 40 allows the base of the foldable arm 30 to be flush with the top edge of the arm guard, thereby maximizing the workspace of the foldable arm 30. In an alternative embodiment, the arm guard 281 can be fully retracted to create maximum workspace for the foldable arm 30 without adjusting the height of the lifting mechanism 40.
[0105] Sensors enable the robot assistant 100 to perceive its environment, allowing it to perform tasks. In one embodiment, the sensors include ranging sensors that do not require physical contact with the object being detected. They enable the robot assistant 100 to perceive obstacles without actually contacting them. The ranging sensors may include an infrared (IR) sensor 64, an ultrasonic sensor 65, one or more optical detection and ranging (LiDAR) sensors 63, near field communication (NFC), and an RFID sensor / reader. In one embodiment, the sensors may include an inertial measurement unit (IMU) sensor and a camera 62. Each IMU sensor 66 includes at least one accelerometer and at least one gyroscope. One or more LiDAR sensors 63 are used to create an environmental map. In conjunction with the IMU sensors 66, the LiDAR sensors 63 are used to determine the robot assistant 100's real-time position within the environmental map. Data from the ranging sensors and the camera 62 is used to detect obstacles such as devices or people during the robot assistant 100's movement. The robot assistant 100 can thus move autonomously along a determined path. These sensors can be positioned along the wheel base 10 or other locations on the robot assistant 100, such as on the foldable arm 30 or EOAT 50. The sensors will be described further below.
[0106] The control system 70 is electrically connected to the wheeled base 10, drawer mechanism 20, foldable arm 30, lifting mechanism 40, and sensors, and is configured to receive command instructions to control the robot assistant 100 to perform tasks. Command instructions can be received from the control system 70 in response to the robot assistant's movement / action, or the control system 70 can receive command instructions from a host computer wirelessly or via a wired connection or through a GUI on a display 82. In response to the command instructions, the control system 70 controls the movement of the wheeled base 10, opens or closes one or more drawers 21, drives the movement of the foldable arm 30 and EOAT 50 to pick up and place external objects from a defined location, and controls the drawer mechanism 20 to drive one or more drawers 21. Further description of the control system 70 is provided below. A defined location can be a location in one or more fully open drawers.
[0107] In one example, the wheeled base 10 is a differential drive platform. (See reference...) Figure 4In one embodiment, the wheel base 10 includes two independently driven drive wheel mechanisms 11 and two caster mechanisms 13. The two drive wheel mechanisms 11 are spaced apart from each other and arranged on opposite sides of the wheel base 100, with their axes of rotation aligned with each other and extending along the width direction of the wheel base 10. The two caster mechanisms 13 are respectively arranged near opposite ends in the length direction of the wheel base 10. It should be noted that the number and arrangement of the drive wheel mechanisms 11 and caster mechanisms 13 can be changed according to actual needs. For example, in... Figure 10A In the alternative embodiment shown, the two drive wheel mechanisms 11 and the two caster mechanisms 13 can be respectively arranged at the four corners of the wheel base 10. Figure 10B In yet another alternative embodiment shown, the two drive wheel mechanism 11 can be similar to Figure 4 In one embodiment, the four caster mechanisms 13 can be arranged at the four corners of the wheel base 10.
[0108] Reference Figure 4 and Figure 5 In one embodiment, the wheel base 10 includes a base 12 comprising a top member 121 and a bottom member 122 spaced apart from and connected to each other. In one embodiment, the top member 121 is in the form of a rectangular frame and includes a plurality of rods connected to each other. The bottom member 122 includes a plurality of outer rods 123, two inner rods 124, and four connecting rods 125 connected to each other. The two inner rods 124 are received in spaces defined by the outer rods 123 and extend along the length of the base 12. Opposite ends of each inner rod 124 are connected to the outer rods 123 at opposite ends of the base 12. A first pair of connecting rods 125 are connected to an inner rod 124 and an outer rod 123 on one side of the base 12, thereby defining a space for receiving a drive wheel mechanism 11. A second pair of connecting rods 125 are connected to another inner rod 124 and an outer rod 123 on opposite sides of the base 12, defining a space for receiving another drive wheel mechanism 11. It should be understood that the connecting rods 125 provide support and placement, and their number can be adjusted according to actual needs.
[0109] In one embodiment, one drive wheel mechanism 11 is connected to a first pair of connecting rods 125 and an inner rod 124, and another drive wheel mechanism 11 is connected to a second pair of connecting rods 125 and another inner rod 124. A caster 13 is connected to the inner rod 124 and is located near the opposite longitudinal ends of the base 12.
[0110] Reference Figure 5 and Figure 6In one embodiment, each drive wheel mechanism 11 includes a spring and shock absorber suspension mechanism 110, and a wheel 111 connected to the suspension mechanism 110. In one embodiment, a motor may be arranged within the wheel 111 and configured to drive the wheel 111 to rotate. The suspension mechanism 110 provides each wheel 111 with slight vertical movement relative to the base 12, enabling smooth passage through gaps between the floor and the elevator, as well as other small bumps or gaps. In one embodiment, the suspension mechanism 110 includes: a housing 1102 fixed to a pair of connecting rods 125 and an inner rod 124; a fixing member 113 fixed to the housing 1102; a sliding member 112; two linear sliding bearings 114 that allow the sliding member 112 to move vertically relative to the fixing member 113; and a plurality of dampers 115 fixed to the fixing member 113. In another embodiment, damping performance can be achieved by replacing the drive wheel with a pneumatic tire or by adjusting the tire material of the drive wheel.
[0111] Reference Figure 5 and Figure 6 The housing 1102 is a structure that houses the components of the suspension mechanism 110. In one embodiment, the fixing member 113 is a flat plate and is substantially horizontal when fixed to the housing 1102. The sliding member 112 includes a body 116, a cover 118, and a post 117, with opposite ends of the post 117 fixed to the body 116 and the cover 118, respectively. In one embodiment, the body 116 is connected to the housing 1102 via a linear sliding bearing 114. The body 116 includes a base 1161, two sidewalls 1162 projecting from opposite ends of the base 1161, and a wheel connection 1163 projecting from the lower side of the base 1161. The lower end of the post 117 is fixed to the base 1161. Each sliding bearing 114 includes a sliding track 1141 and a slider 1142 slidable on the sliding track 1141. The sliding track 1141 is fixed to the housing 1102 and extends in a substantially vertical direction. The sidewalls 1162 are respectively fixed to the sliders 1142, which allows the body 116 to move together with the sliders 1142 in a substantially vertical direction. In one embodiment, the wheel 111 may be fixed to the wheel connection 1163.
[0112] Reference Figure 6The column 117 is substantially perpendicular to the body 116 and passes through a through hole in the fastener 113, allowing the column 17 to move vertically together with the body 116. The cover 118 is a flat piece fixed to the top of the column 117, and the cover 118 and body 116 are located on opposite sides of the fastener 113. The shock absorber 115 can be a known internal spring shock absorber, which will not be described here. Each includes a hollow tube 1151 and a spring-loaded rod 1152, which is partially housed in the tube 1151 and slidable relative to the tube 1151. The rod 1151 can move into the tube 1151 and compress the spring to absorb shocks, and return to its normal position under spring pressure. In one embodiment, four dampers 115 are fixed to the fastener 113, with the rods 1151 of two dampers abutting the body 116 and the rods of the other two dampers abutting the cover 118. It should be noted that the drive wheel mechanism 11 may further include one or more springs. The spring responds to unevenness on the ground and returns to its neutral position, and the damper 115 smooths the motion and limits the resonance effect caused by the motion of the drive wheel mechanism 11 and the spring.
[0113] Reference Figure 5 and Figure 7 In one embodiment, each caster mechanism 13 includes a spring and shock absorber suspension mechanism 130, a wheel connector 132 connected to the bottom of the suspension mechanism 130 and rotatable about a generally vertical axis, and a wheel 131. The wheel 131 is connected to the wheel connector 132 and rotatable about a generally horizontal axis. With this arrangement, the wheel 131 has two degrees of freedom and can therefore align itself with the direction of travel.
[0114] Reference Figure 5 and Figure 7 In one embodiment, the suspension mechanism 130 includes a housing 1301 that accommodates other components of the suspension mechanism 130. Figure 5 The suspension mechanism 130 also includes a hollow tube 133, a movable element 134, and a plurality of dampers 137. The hollow tube 133 includes a cylindrical portion 1331 and a plate 1332 formed at the top end of the cylindrical portion 1331 and extending axially along the cylindrical portion 1331. The plate 1332 is fixed to the housing 1301.
[0115] like Figure 7 As shown, the movable member 134 includes a spring-loaded rod 1341 connected to and passing through the tube 133, and connecting plates 1342 and pieces 136 respectively connected to opposite ends of the rod 1341. The rod 1341 is slidable in a vertical direction and is movably connected to the cylinder 1331 via a sliding bearing 139. The sliding bearing 139 is fixed to the piece 1332 of the tube 133. The connecting plate 1342 is connected to the wheel connector 132. The rod 1341 is movable relative to the tube 133 and compresses the spring to absorb impact, and returns to its normal position when pushed by the spring.
[0116] In one embodiment, such as Figure 7 As shown, four dampers 137 are fixed to plate 1332 and have the same construction as damper 115. The rods of two dampers 137 abut against plate 136, and the rods of the other two dampers 137 abut against two blocks 138 protruding from connecting plate 1342 to achieve bidirectional damping performance. It should be noted that the two blocks 138 can be omitted, and the rods of the other two dampers 137 can directly contact connecting plate 1342. With this arrangement, the dampers 137 can absorb shocks and vibrations exerted on wheel 131 by the gap between the floor and the elevator, as well as other small bumps or gaps. It should be noted that the suspension mechanism 130 can be modified to provide unidirectional damping performance by using a pair of dampers or a single damper.
[0117] Reference Figure 5 , Figure 8A and Figure 8B In one embodiment, the robot assistant 100 also includes a plurality of actuating feet 15 connected to a wheel base 10. In one embodiment, four actuating feet 15 are arranged at the four corners of the wheel base 10. Each actuating foot 15 includes: a motor 152 (e.g., a linear motor) fixed to a top member 121 of the wheel base 10; and a support foot 151 driven by the linear motor and retractable in a retracted position (see [link to documentation]). Figure 8A ) and the position of the extension (see Figure 8B The robot assistant 100 moves between the wheel base 10 and the control arm 30. During movement of the wheel base 10, the outrigger 151 is controlled to move to its retracted position, allowing wheels 111 and 131 to contact the support surface (e.g., the floor). During manipulation tasks, when the arm 30 is extended (in the extended position or during extension) and the drawer 21 is opened, the outrigger 151 is controlled to move to its extended position and contact the support surface, while wheels 111 and 131 do not contact the support surface, thus isolating the suspension mechanism from the overall system for more precise gripping and manipulation performance. Because the outrigger 151 can provide a larger support polygon than wheels 111 and 131, the robot assistant 100 can have increased static stability, a key factor during manipulation tasks. The outrigger 151 also eliminates the effects of suspension and provides a more secure connection to the floor, preventing the arm base from shifting due to its movement.
[0118] Reference Figure 9 The arrangement of the actuating feet 15 also facilitates increased accessibility of the folding arm 30. Specifically, compared to a wheel base without actuating feet, a wheel base 10 including actuating feet 15 significantly increases the folding arm 30's stable accessibility, which is determined by the curves surrounding the wheel base 10 without actuating feet and the wheel base 10 including actuating feet 15 (see...). Figure 9 Figures A and B illustrate this. It should be noted that in one embodiment, when the wheel base 10 does not include any suspension system, the four actuation feet 15 may be omitted.
[0119] Reference Figure 11 The drawer mechanism 20 includes a housing 22 surrounding the drawer 21. In one embodiment, the housing 22 includes a body 223, a bottom plate 221, and a top plate 222. The bottom plate 221 and the top plate 222 are fixed to the bottom and top of the frame 223, respectively. In one embodiment, the body 223 is a frame that includes a plurality of generally vertical rods 2231 connected to each other by a plurality of connecting rods 2232. The bottom plate 221 and the top plate 222 are fixed to the connecting rods 2232. In an alternative embodiment, the vertical rods 2231 may be directly connected to the bottom plate 221 and the top plate 222. In another embodiment, the housing 22 may be made of a bent sheet metal. In yet another embodiment, the body 223 may be a structural frame made of bent sheet metal ribs, which are fixed to the sheet metal to reduce weight without compromising rigidity.
[0120] Reference Figure 11 The drawer 21 is slidable relative to the housing 22. In one embodiment, the housing 22 further includes a plurality of slide rails 224 fixed to a vertical rod 223 to provide support for the drawer 21. Each slide rail 224 extends in a substantially horizontal direction and defines a groove 2241 extending along the length of the slide rail 224. Accordingly, each drawer 21 includes a body 211 and two sliders 212 on opposite sides of the body 211. The sliders 212 extend in a substantially horizontal direction and are respectively fitted into and slidable in the grooves 2241 of the two slide rails 224. With this arrangement, each drawer 21 can be in an open position relative to the housing 22 (see Figure 11 Slide between the ) and the closed position (see Figure 1).
[0121] Reference Figure 11 In one embodiment, the drawer mechanism 20 further includes a plurality of drive units 23 for driving the drawers 21 to slide between their open and closed positions, respectively. Each drive unit 23 includes a motor 231 fixed to one of the vertical rods 2231 and a transmission device 232 for converting the rotational motion from the motor 231 into sliding motion. In one embodiment, the transmission device 232 includes an output gear 233 fixed to the output shaft of the motor 231 and a rack 234 fixed to one side of the body 211 of the drawer 21. The rack 234 is substantially parallel to a slider 212 fixed to the same side of the body 211 and meshing with the output gear 233. When the output gear 233 rotates together with the output shaft of the motor 231, the rack 234 moves and drives the corresponding drawer 21 to slide relative to the housing 22.
[0122] Reference Figure 11 In one embodiment, the drawer mechanism 20 further includes two limit switches 24 for each drawer 21. The two limit switches 24 are respectively fixed to two vertical rods 2231 and are capable of contacting a block 25 that can be fixed to and slide with the body 211 of a shelf 234 or a drawer 21. When one of the limit switches 24 contacts the block 25, the limit switch 24 sends a signal to the motor controller, which then stops the rotation of the motor 231. Movement of the drawer 21 thus stops. With this arrangement, the travel limits of the drawer 21 can be monitored, and when the travel limits of the drawer 21 are reached, the motor 231 is de-energized. It should be noted that other types of limit switches that do not require physical contact for activation can be used, depending on actual needs. In another embodiment, the drive motor of the drive unit may include an absolute encoder attached to determine the precise position of the drawer.
[0123] In one embodiment, collision detection sensors, such as force-sensitive resistors and tactile sensors, can be disposed on the robot assistant 100, for example, on the front surface 213 and inner surface 214 of drawer 21. If a collision is detected (e.g., someone bumps into the robot assistant 100), the collision detection sensor can send a signal to the motor controller, thereby shutting off the power to motor 231, which can prevent damage to motor 231. Furthermore, other non-contact sensors, such as distance sensors and safety light curtains, can be disposed on drawer 21 to identify potential collisions, so that drawer 21 only opens if there is sufficient opening space. Alternatively, collisions can be detected by sensing the motor current and setting a threshold to determine whether a collision has been detected during drawer opening operations. On the other hand, when drawer 21 is closed, potential obstruction due to a human finger or an object not properly inserted into drawer 21 can be detected. In this case, movement of drawer 21 can be stopped.
[0124] Figure 12A drawer mechanism 20a according to an alternative embodiment is shown, which differs from drawer mechanism 20 in that it includes a housing 22a and a drive unit 23a. The housing 22a includes two side plates 221a, with a drawer 21 connected to and slidable relative to the side plates 221a via a mechanism similar to that described above. Each drive unit 23a includes a motor 231a and a transmission 232a, the transmission 232a including a timing belt 233a, a pulley 234a rotatably connected to one side plate 221a, and a rack 235a fixed to a drawer 21 and extending from a longitudinal groove 222a defined on the side plate 221a where the pulley 234a is located. The timing belt 233a surrounds the pulley 234a and an output gear connected to the output shaft of the motor 231a, and meshes with the rack 235a. When the output gear rotates, the timing belt 233a moves and drives the rack 235a to move. Then, the drawer 21a slides relative to the housing 22a between an open position and a closed position. It should be noted that the drive mechanism for moving the drawer 21 is not limited to the above embodiment and can be changed according to actual needs. For example, a linear actuator can be used to move the drawer 21 between the open and closed positions.
[0125] It should be noted that the drive mechanism for actuating drawer 21 is not limited to the embodiments shown in 11 and 12, and can be modified as needed. In one example, a piston-shaped linear actuator can be used to drive each drawer 21. The linear actuator can be positioned below the drawer 21, with the drawer 21 fixed to the shaft of the linear actuator. The drawer 21 can slide along the shaft of the linear actuator. In another example, a stepper motor can be used to drive each drawer 21. The stepper motor may include a lead screw and a nut that can slide along the lead screw. The drawer 21 can be fixed to the nut and can slide along the lead screw as the lead screw rotates. In yet another example, the drive mechanism may include a motor and a friction wheel fixed to the output shaft of the motor. The friction wheel can be positioned below each drawer 21 and remain in contact with the bottom surface of the drawer 21. When the friction wheel rotates, the friction wheel can drive the drawer 21 to slide relative to the housing 22.
[0126] In one embodiment, such as Figure 11 and 12 As shown, three drawers 21 are stacked vertically on top of each other within the housing of the drawer mechanism 20. However, the number and arrangement of the drawers 21 can be adjusted according to actual needs. For example, the drawer mechanism 20 may include only one drawer 21, or it may include two drawers 21 arranged side by side.
[0127] In one embodiment, the drawer mechanism 20 may further include an ID checking module. In one example, the ID checking module may include a keyboard 202. Figure 11 This allows for the use of passwords, card readers, facial recognition cameras, etc. With the help of an ID verification module, the robotic assistant can allow authorized personnel to access stored items.
[0128] Reference Figure 13 In one embodiment, the foldable arm 30 is an articulated arm with a single-axis rotary joint. The rotary joint chain provides the foldable arm with a high degree of freedom and flexibility of movement. It should be noted that the construction of the foldable arm 30 can be changed as needed. For example, in an alternative embodiment, the foldable arm 30 can be a selectively compliant articulated robotic arm (SCARA).
[0129] In one embodiment, the foldable arm 30 includes a first link 31, a second link 32, a third link 33, a fourth link 34, a fifth link 35, and a sixth link 36. The foldable arm 30 also includes six rotary joints 37 for providing rotational movement to the links. In one embodiment, the second link 32, the third link 33, the fourth link 34, the fifth link 35, and the sixth link 36 are rotatably connected in series with each other via five of the rotary joints 37 (“first rotary joints”). The first link 31 is substantially vertical and rotatably connected to a base 301 fixed to the top of the drawer mechanism 20 via the remaining rotary joints (“second rotary joints 37”). In an alternative embodiment, the base 301 may be omitted, and the first link 31 may be directly rotatably connected to the top of the drawer mechanism 20. The first link 31 is rotatable relative to the top of the drawer mechanism 20 about a substantially vertical axis. The first link 31 may be hollow and accommodate the second rotary joints 37.
[0130] In one embodiment, the first link 31 includes a vertical body 311 and a connecting portion 312 projecting from a side surface of the vertical body 311. A second link 32 is rotatably connected to the connecting portion 312 and is rotatable about an axis substantially perpendicular to the vertical body 311. In one embodiment, the second link 32 includes an elongated body 321 and a connecting portion 322 connected to a first end of the elongated body 321. One of the connecting portions 312 of the first link 31 and the connecting portion 322 of the second link 32 houses a first rotary joint 37, and the other of the connecting portions 312 of the first link 31 and the connecting portion 322 of the second link 32 is fixed to the output shaft of the first rotary joint 37, rotatably connecting the second link 32 to the first link 31. In one embodiment, the second link 32 is rotatable about an axis substantially perpendicular to the elongated body 321.
[0131] In one embodiment, one end of the third link 33 is fixed to the second end of the elongated body 321 of the second link 32, which is opposite to the connecting portion 322.
[0132] In one embodiment, the fourth link 34 includes a bent body 341 and a connecting portion 342 connected to one end of the bent body 341. One of the third link 33 and the bent body 341 houses a first rotary joint 37, and the other of the third link 33 and the bent body 341 is fixed to the output shaft of the first rotary joint 37, rotatably connecting the fourth link 34 to the third link 33. The fourth link 34 is rotatable about an axis substantially perpendicular to the length direction of the elongated body 321 of the second link 32. Figure 14A and 14B As shown, by arranging the bent body 341, EOAT, the sixth link 36, the fifth link 35, and the fourth link 34 can be moved to a position adjacent to the elongated body 321 of the first link 31 and the second link 32. As a result, the foldable arm 30 can be actuated to fold compactly and substantially flat on top of the drawer mechanism 20. This saves valuable space in both the horizontal and vertical directions. As described above, when the foldable arm 30 is in the folded position, a cover / protective shield can be used to partially or completely surround the foldable arm 30. The cover / protective shield can retract from the open position to the closed position.
[0133] In one embodiment, the fifth link 35 is substantially U-shaped and includes a base 351 and two sidewalls 352 connected to the base 351. A connecting portion 342 of the fourth link 34 houses a first rotary joint 37, and the base 351 is fixed to the output shaft of the first rotary joint 37, rotatably connecting the fifth link 35 to the fourth link 34. The fifth link 35 is rotatable about an axis substantially perpendicular to the axis of rotation of the fourth link 34.
[0134] In one embodiment, the sixth link 36 is partially housed in a space defined by a base 351 and two sidewalls 352. The sixth link 36 is rotatably connected to the sidewalls 352 via a first rotary joint 37. The sixth link 36 is rotatable about an axis substantially perpendicular to the axis of rotation of the fifth link 35. The sixth link 36 also houses a first rotary joint 37 therein, which rotatably connects the EOAT 50 to the sixth link 36. The EOAT 50 is rotatable about an axis substantially perpendicular to the axis of rotation of the sixth link 36. The rotary joint 37 connecting the EOAT 50 to the sixth link 36, the rotary joint 37 connecting the sixth link 36 to the fifth link 35, and the rotating body 37 connecting the fifth link 35 to the fourth link 34 form a ball joint.
[0135] In one embodiment, each rotary joint 37 may be a motor assembly including a motor, an encoder, a motor controller, a drive mechanism, and a brake. The encoder provides a closed-loop feedback signal by tracking the speed and / or position of the motor output shaft. The drive mechanism is configured to transmit motion from the motor to a link driven by the motor assembly. The brake is configured to lock the link driven by the motor assembly in place, so that the foldable arm 30 can be locked in place in the event of a power failure or other technical malfunction. It should be noted that rotary joints for robotic arms have been well developed, and the configuration of the rotary joint 37 can be modified according to actual needs.
[0136] It should be noted that the number, length, and arrangement of links and rotary joints can be changed according to actual needs. For example, the foldable arm 30 can have more or fewer degrees of freedom, which requires more or fewer links and rotary joints. Specifically, the foldable arm 30 includes N links, M first rotary joints, and one second rotary joint. The N links are rotatably connected in series with each other through the M first rotary joints, and the first of the N links is rotatably connected to the drawer mechanism 20 through the second rotary joint, where N is a natural number greater than 2, and N = M + 1.
[0137] Each rotary joint 37 can be controlled independently, allowing the foldable arm 30 to be in various defined postures during object manipulation tasks. For example, Figures 14A to 14D The diagram illustrates the changes in the state of the foldable arm 30 during a pickup task, including an initial compact and substantially flat state. Figure 14A and Figure 14B ), intermediate state ( Figure 14C ) and the final pose of grasping the defined object 200 ( Figure 14D In its initial compact and generally flat configuration, the foldable arm 30 can be flush with the edge of the shield / protective cover, or the protective cover can be fully retracted. This allows for maximum operational accessibility of the foldable arm 30.
[0138] Reference Figures 15A to 15CIn one embodiment, the EOAT 50b includes two parallel-jaw fingers 52b and 53b and an adaptive thumb 54b. This configuration allows for precise pinching and gripping using only the two parallel-jaw fingers 52b and 53b, as well as gripping larger and heavier objects when the thumb 54b is engaged and the fingers 52b and 53b are joined together or separated. Specifically, the EOAT 50b further includes a base 51b to which the fingers 52b and 53b and the thumb 54b are attached. The base 51b includes a base plate 55b, a front cover 56b and a rear cover 58b spaced apart from and fixed to the base plate 55b, and an internal support 57b fixed to and located between the front cover 56b and the rear cover 58b. In one embodiment, the fingers 52b and 53b have the same configuration, with each finger 52b and 53b and the base 51b forming a four-bar linkage. Specifically, each finger 52b and 53b includes a crank 521b, a rocker arm 522b, and a connecting rod 523b.
[0139] Reference Figure 15B In one embodiment, crank 521b includes two rods 527b spaced apart from and parallel to each other. The two rods 527b have substantially the same construction and are connected to each other at their first ends by a shaft 528b. The two rods 527b are rotatably connected at their second ends to a front cover 56b and a rear cover 58b, respectively, allowing the two rods 527b to rotate about a common axis. In one embodiment, a shaft 525b is fitted into each through-hole 561b defined in the body 562b of the front cover 56b. The other rod 527b can be rotatably connected to the rear cover 58b in the same manner, which will not be described further here. Rocker arm 522b is rotatably connected at its opposite ends to an internal support 57b and a connecting rod 523b, respectively. In one embodiment, the internal support 57b includes a body 571b and two spacers 576b projecting onto the top of the body 571b. Each rocker arm 522b is rotatably connected to a spacer 576b via a shaft 524b, the opposite end of which extends beyond the rocker arm 522b and is received in a through-hole 574b defined in the spacer 576b.
[0140] Reference Figure 15BIn one embodiment, the connecting rod 523b includes a connecting rod 529b and a fingertip 530b. One end of the connecting rod 529b is rotatably connected to two rods 527b via a shaft 528b, and the other end of the connecting rod 529b is rotatably connected to a rocker arm 522b. The fingertip 530b is fixed to the other end of the connecting rod 529b. In one embodiment, one rod 527b rotates when driven by a motor 515b, driving the connecting rod 523b and the rocker arm 522b to rotate. The connecting rod 523b of the two fingers 52b and 53b can then move toward / away from each other, allowing the connecting rod 523b to grasp / release objects. In this embodiment, the crank 521b, the rocker arm 522b, and the connecting rod 523b are configured such that the connecting rod 523b remains substantially parallel to each other during their movement toward / away from each other. In one embodiment, the fingertips 530b all have a curved construction that allows for non-grappling tasks, such as pulling a handle, using the ring feature to lift an object, or repositioning an object.
[0141] Reference Figure 15B In one embodiment, the motor 515b is housed within a space 573b defined in the body 571b of the internal support 57b. A transmission mechanism transmits motion from the motor 515b to two levers 527b of the fingers 52b and 53b. The transmission mechanism includes: an output gear 516b fixed to the output shaft of the motor 515b; and two gears 526b rotatably configured about an axis 525b. The two levers 527b are fixed to the two gears 526b. In one embodiment, one of the two gears 526b is a stepped gear, which includes a large gear meshing with another gear 526b and a small gear meshing with the output gear 516b. When the output gear 516b rotates, the small gear is driven to rotate and the large gear rotates synchronously and drives the other gear 526b to rotate. The two gears 526b then drive the two levers 527b of the fingers 52b and 53b to rotate. In one embodiment, EOAT 50b may further include two shafts 531b rotatably passing through two through holes 575b defined in the body 571b of the inner support 57b. Two rods 527b of the fingers 52b are respectively fixed to opposite ends of one shaft 531b, and two rods 527b of the fingers 53b are respectively fixed to opposite ends of the other shaft 531b.
[0142] Reference Figure 15BIn one embodiment, the thumb 54b includes a base 546b, a motor assembly 545b, a crank 543b, a connecting rod 541b, and a rocker arm 542b. The base 546b is connected to a base plate 55b. The lower end of the crank 543b is fixed to the output shaft of the motor assembly 545b, and the upper end of the crank 543b is rotatably connected to the lower end of the connecting rod 541b. The lower end of the rocker arm 542b is rotatably connected to a connecting member 544b fixed to the top of the motor assembly 545b. The upper end of the rocker arm 542b is rotatably connected to the connecting rod 541b. The crank 543b rotates when driven by the motor assembly 545b, driving the connecting member 541b to rotate toward / away from the two fingers 52b and 53b. The thumb 54b can then cooperate with the fingers 52b and 53b to grasp larger, heavier objects.
[0143] Reference Figure 15B In one embodiment, the thumb 54b is rotatably connected to the base plate 55b. The body 562b of the front cover 56b defines a space 563b at a lower corner. The top surface 564b of the space 563b, the bottom surface of the internal support 57b, and the bottom surface of the rear cover 58b are substantially flush with each other. These surfaces face the base plate 55b and form a receiving space between these surfaces and the base plate 55b, which allows the base 546b of the thumb 54b to rotate within the receiving space. Specifically, the base 546b is partially received in the receiving space and is rotatably connected to the base plate 55b via a shaft 548b. The lower end of the shaft 548b is rotatably fitted into a through hole 551b defined in the base plate 55b, and the top end of the shaft 548b is rotatably received into a hole defined in the internal support 57b. The shaft 548b is substantially vertical, and the base 546b is therefore rotatable about a vertical axis. Figure 15A The thumb 54b is shown in the first position. Figure 15C The diagram shows the thumb 54b rotated from a first position to a second position to free up operating space for fingers 52b and 53b. In one embodiment, the rocker arm 542b is a spring-loaded two-bar linkage. Specifically, the rocker arm 542b includes a first member 5421b and a second member 5422b rotatably connected to the first member 5421b. The rocker arm 542b passively reconfigures upon contact with an object. After the object is released, the first member 5421b and the second member 5422b return to their original positions via springs. This configuration allows the thumb 54b to rotate to various positions to accommodate different objects of varying shapes and sizes, making the EOAT 50b highly versatile for grasping diverse objects. In one embodiment, sensors may be embedded in fingers 52b, 53b, and 54b for additional grasping robustness.
[0144] Reference Figure 15BIn one embodiment, EOAT 50b further includes a motor 511b, which is fixed to an internal support 57b and housed in a space 572b defined within the internal support 57b. Movement from the motor 511b is transmitted to the base 546 of the thumb 54b via an output gear 512b fixed to the output shaft of the motor 511b, an intermediate gear 513b rotatably connected to and meshing with the output gear 512b on a block 514b fixed to the front cover 56b, and a gear 547b fixed to the shaft 548b and meshing with the intermediate gear 513b.
[0145] Reference Figures 16A to 16C In one embodiment, the EOAT 50c includes a base 51c and three fingers 52c rotatably connected to the base 541c. The base 51c includes a bottom plate 511c, an intermediate plate 512c, and a top plate 513c, which are vertically spaced apart and connected to each other via a plurality of vertical rods 514c. The EOAT 50c also includes a linear platform 55c connected to a post 56c fixed to the bottom plate 511c and the top plate 513c. The post 56c is substantially vertical, and the linear platform 55c is slidable along the post 56c. The linear platform 55c is arranged between the intermediate plate 512c and the top plate 513c. The EOAT 50c also includes three connecting rods 54c, each including an opposing end rotatably connected to the linear platform 55c and one finger 52c. Each finger 52c is further rotatably connected to the top plate 513c.
[0146] Reference Figure 16A As the linear platform 55c moves up and down, the fingers 52c are driven to rotate toward / away from each other, enabling them to grasp / release objects. In one embodiment, the EOAT 50c also includes a linear motor 53c disposed between a base plate 511c and an intermediate plate 512c. The linear platform 55c is fixed to a slider connected to the output shaft of the linear motor 53c. As the output shaft of the linear motor 53c rotates, the linear platform 55c moves up and down together with the slider. In one embodiment, the fingers 52c may be made of an elastic material and passively deformable to envelop smaller objects for a more secure grip. In one embodiment, a sensor may be embedded in the fingers 52c. Using an elastic material as the integral structure increases robustness.
[0147] Reference Figures 17A to 17CIn one embodiment, the EOAT 50d includes a base 51d and two fingers 52d connected to the base 51d. The EOAT 50d also includes a crank 54d and a rocker arm 53d for each finger 52d. The base 51d includes a front cover 511d, a base plate 514d, and a rear cover 515d. The front cover 511d is fixed to the base plate 514d, and the rear cover 515d is fixed to the front cover 511d. In one embodiment, each crank 54d is in the form of two rods parallel to each other and is fixed to opposite ends of a shaft 541d extending through a through-hole 512d in the front cover 511d and a through-hole (not shown) in the rear cover 515d. The two rods of each crank 54d are rotatably connected to one finger 52d.
[0148] Reference Figure 17B In one embodiment, each rocker arm 53d is in the form of two parallel rods and is fixed to the opposite end of a shaft 531d extending through a through-hole 513d in a front cover 511d and a through-hole (not shown) in a rear cover 515d. The two rods of each rocker arm 53d are rotatably connected to a finger 52d. With this configuration, each finger 52d, its crank 54d, and the rocker arm 53d, along with the base 51d, collectively form a four-bar linkage. As the crank 54d of the two fingers 52d rotates, the two fingers 52d move toward / away from each other, allowing the two fingers 52d to grasp / release an object. In one embodiment, each finger 52d, its crank 54d, and the rocker arm 53d are configured such that the grasping surfaces 521d of the two fingers 52d remain parallel to each other during movement. In one embodiment, the finger 52d is made of an elastic material and passively deforms and envelops a smaller object for a more secure grip. In one embodiment, the sensor can be embedded in the finger 52d for additional robustness.
[0149] Reference Figure 17B In one embodiment, the EOAT 50d also includes a motor 55d secured to the rear cover 515d by a fastener 56d. The motor 55d is configured to drive a crank 54d of two fingers 52d to rotate. In one embodiment, the motor 55d includes a worm 551d fixed to the output shaft of the motor 55d. The EOAT 50d also includes two worm gears 542 fixed to the shaft 541d and meshing with the worm 551d, which allows rotational motion to be transmitted from the output shaft of the motor 55d to the crank 54d.
[0150] Figure 17DAn EOAT 50d' similar to the EOAT 50d is shown according to one embodiment. The EOAT 50d' includes a base 51d', two fingers 52d', cranks 54d' for each finger 52d', and a rocker arm. The EOAT 50d' also includes a motor 55d' for driving the two cranks 54d' to rotate. The EOAT 50d' is constructed and operates similarly to the EOAT 50d. The difference between the EOAT 50d' and the EOAT 50d is that the rocker arm 53d' is a single lever. Another difference between the EOAT 50d' and the EOAT 50d is that the curved fingertips enable a variety of non-comprehensile tasks.
[0151] Reference Figures 18A to 18C In one embodiment, the EOAT 50e includes a base 51e, a first finger 52e, a second finger 53e, a first motor 55e for driving the first finger 52e, and a second motor 54e for driving the second finger 53e. The base 51e includes a base plate 511e and a top plate 512e spaced apart from each other and fixed to each other by a plurality of supports 513. In one embodiment, the first finger 52e includes a connecting base 521e fixed to the top of the top plate 512e, a first phalanx 522e rotatably connected to the connecting base 521e, and a second phalanx 523e rotatably connected to the tip of the first phalanx 522e. The first phalanx 522e includes two half-phalanxes 5221e arranged side-by-side and connected to each other. The EOAT 50e also includes three pulleys 501e, 502e, and 503e arranged between the first half-phalanx 5221e and a pulley 504 connected to the connecting base 521e. Pulley 501e is arranged adjacent to the second finger joint 523e, and pulley 503e with a larger diameter is arranged adjacent to the connecting base 521e. Pulley 502e is arranged between pulleys 501e and 503e. It should be noted that the number, size, and arrangement of pulleys can be adjusted according to actual needs.
[0152] Reference Figure 18BThe EOAT 50e also includes a first tendon 56e. The tip of the tendon 56e is attached to a second phalanx 523e, and the tendon 56e is wound sequentially around pulleys 501e, 502e, 503e, and 504e. The tendon 56e then passes through a through-hole in the top plate 512e and is wound around a wheel 551e fixed to the output shaft of the motor 55e. In one embodiment, the first finger 52e and the second finger 53e initially contact each other. During the grasping of a defined object, the wheel 551e rotates together with the output shaft of the motor 55e and pulls the tendon 56e. As the tendon 56e pulls the second phalanx 523e, the second phalanx 523e rotates relative to the first phalanx 522e, and the first phalanx 522e rotates away from the second finger 53e. In one embodiment, the EOAT 50e also includes a tension spring 58e disposed between the second phalanx 523e and the first phalanx 522e. When tendon 56e pulls the second phalanx 523e to move, tension spring 58e is stretched, and after motor 55e is de-energized, it causes the second phalanx 523e to return to its original position. Tendon 56e passes through phalanxes 522e and 523e to achieve adaptive behavior through an underactuated design. Similarly, a tension spring (not shown) is arranged between the first phalanx 522e and the connecting base 521e, which causes the first phalanx 522e to return to its original position after motor 55e is de-energized. This tension spring allows tendon 56e to remain taut after motor 55e is de-energized. It should be noted that the use of tendons in robotic applications has been studied since the 1980s, and tendon 56e will not be described in detail here.
[0153] Reference Figure 18A and Figure 18C The second finger 53e includes a connecting base 531e fixed to the top of the top plate 512e, and a phalanx 532e and tendon 57e rotatably connected to the connecting base 531e. One end of the tendon 57e is fixed to the phalanx 532e and wound around a pulley 505e rotatably connected to the connecting base 531e, passes through a through hole in the top plate 512e, and is wound around a wheel 541e fixed to the output shaft of the motor 54e. When the wheel 541e rotates together with the output shaft of the motor 54e, the tendon 57e pulls the phalanx 532e to rotate away from the first finger 52e. The EOAT 50e also includes a tension spring 59e arranged between the connecting bases 531e. When the tendon 56e pulls the second phalanx 523e to move, the tension spring 59e is stretched, which, after the motor 55e is de-energized, causes the second phalanx 523e to return to its original position. In another embodiment, tendon 57e may be replaced by a timing belt wound around pulley 505e.
[0154] With this construction, the first finger 52e and the second finger 53e can be controlled to move away from each other to create enough space for the object, and rotate back to contact the object when pushed by the spring.
[0155] Reference Figure 19A and Figure 19B In one embodiment, the EOAT 50f includes a base 51f and two first fingers 52f and a second finger 53f connected to the base 51f. Each first finger 52f is coupled to... Figure 18A The first finger 52e is constructed in the same manner and stacked on top of the motor 55f. The motor 55f is constructed in the same way as... Figure 18A The first finger 52f is driven in the same way as motor 53e. The second finger 53f is driven in the same way. Figure 18A The second finger 53e is constructed in the same manner and stacked on top of the motor 56f. The motor 56f is constructed in the same way as... Figure 18A The second finger 53f is driven in the same manner as the motor 54e. With this configuration, each of the first finger 52f and the second finger 53f can be controlled to be far apart from each other to create enough space for the object, and rotate back to contact the object when pushed by the spring.
[0156] Reference Figure 19B In one embodiment, the base 51f defines a first chamber 511f and a second chamber 512f to accommodate a motor 55f for two first fingers 52f. The EOAT 50f also includes a motor 54f housed in a third chamber 513 defined in the base 51f. The motor 54f is configured to drive the second fingers 53f and the motor 56f to rotate generally about a substantially vertical axis. The second fingers 53f also include a first piece 531f and a second piece 532f spaced apart from each other. The first piece 531f and the second piece 532f are connected to output shafts and bearings on the bottom and top surfaces of the motor 54f. When the motor 54f is in operation, the second fingers 53f and the motor 56f can be rotated to a defined position relative to the base 51f. With this configuration, the second fingers 53f can rotate to various positions to accommodate different objects of different shapes and sizes, making the EOAT 50f highly versatile in gripping different objects. Each of the fingers 52f and 53f is designed to be modular, which simplifies maintenance and allows the parameters of each finger (e.g., link length or degrees of freedom) to be modified to suit the target task.
[0157] In one embodiment, the EOAT described above may have integrated sensors to assist in grasping and manipulating actions. For example, the sensors may include IR-range sensors similar to those used in the wheel base 10, used in conjunction with a high-definition 2D RGB camera to achieve the same capabilities as a larger 3D RGBD camera. In practice, this allows the robot assistant 100 to acquire images with higher resolution than conventional systems used for object recognition. This also allows for the use of smaller, more compact camera modules that can be more tightly integrated into the EOAT. As a result, the overall size of the EOAT can be minimized for operation in cluttered environments. The camera may also have active illumination to better adapt the vision system to varying ambient lighting conditions and to help the camera capture object details with maximum clarity. In one embodiment, the sensors may include tactile sensors for detecting contact and identifying stable grasping. The tactile sensor may be a resistive bending sensor that changes resistance in response to bending strain and may be overmolded in the compliant fingertips of one or more EOATs as described above. The tactile sensor may also be a resistive pressure pad molded in the compliant finger pads of one or more EOATs as described above. Tactile sensors can be mechanical switches fixed behind one or more compliant finger pads of EOAT, as described above, where the stiffness of the finger pad material determines the force threshold for detecting contact events. These tactile sensors can act as "skin" and can sense and respond to external stimuli.
[0158] Reference Figure 20 In one embodiment, the robot assistant 100 may further include a vacuum module 510 that can be fixed to the aforementioned EOAT. The vacuum module 510 includes a base 511, a connecting tube 512, and a soft rubber, plastic, or elastic suction cup 513. The suction cup 513 is configured to be pressed against an object by pushing downwards, thereby expelling air beneath the suction cup to form a seal, thus providing a lifting force to the object. The vacuum module 510 can be used as a standalone picking tool or to provide assistance in non-prehensile (e.g., push / pull) tasks to position a target object in a more advantageous position for grasping by the jaws / fingers of the EOAT 50. In one embodiment, the suction cup 513 is connected to the connecting tube 512 via a nut 514 and is slidable along the connecting tube 512. The nut 514 is connected to the base 511 by a spring 515 arranged around the connecting tube 512. When the suction cup 513 is pressed onto the object, the nut 514 pushes and compresses the spring 515, which in turn pushes the suction cup 513 to press it firmly against the object.
[0159] Reference Figures 21A to 21DIn one embodiment, the robot assistant 100 also includes a camera 61. The camera 61 assists the robot assistant 100 in perceiving the environment and guiding the foldable arm 30 to perform object manipulation tasks. In one embodiment, the robot assistant's control system 70 orients the foldable arm 30 in a defined direction by hinges of one or more of its N rotary joints and N links, and guides the EOAT 50 to pick up or place external objects from or into one or more drawers 21 based on command instructions and output from the camera 61.
[0160] In one embodiment, camera 61 may be a wrist-mounted camera. Specifically, as shown below... Figure 21C As shown, camera 61 is connected to the side of the output disk of rotary joint 37, which is housed in the sixth link 36 of foldable arm 30, adjacent to EOAT 50. EOAT 50 is connected to the end face of the output disk of rotary joint 37, which is housed in the sixth link 36. In this wrist-mounted configuration, camera 61 can observe the task environment with minimal obstruction from the manipulation system, while minimizing the overall footprint. It should be noted that, depending on actual needs, camera 61 can be positioned in different locations on foldable arm 30 adjacent to EOAT 50, or it can be rotatable. The rotatability of camera 61 allows the camera to always face the grasping workspace, regardless of the placement of the jaws / fingers of EOAT 50.
[0161] In wrist-mounted designs, termination may occur with a rotary joint whose axis of rotation is parallel to the EOAT “palm” normal vector. However, it is understood that alternative joint designs or prismatic joints with additional offsets could be considered to minimize singularities in the arm workspace and achieve the aforementioned dual design objectives.
[0162] In another embodiment, camera 61 can be a camera-in-hand or palm-mounted camera. In such a design, the camera can be positioned in the "palm" of EOAT 50 (i.e., Figure 21D ), or be mounted on the outer surface of EOAT 50 (i.e., Figure 21A and Figure 21BThis allows EOAT to continuously visualize the environment as it approaches an object without resetting to a predefined scanning configuration, and to persistently view the object. Continuous observation of the task during reaching and grasping can help minimize pre-grasp posture errors. It should be noted that one or more cameras can be mounted on the ceiling or on a high rack of a shelf, such as in a storage room. In this configuration, ceiling-mounted cameras can provide fixed-point information including visual information of the environment, including the collapsible arm 30, the shelf, obstacles, and the object to be grasped. Using ceiling-mounted cameras and cameras positioned on / near the EOAT 50 and / or the palm of the hand can improve object manipulation tasks.
[0163] Because visual sensors may have issues with detecting close-range targets, it can be difficult for the EOAT to adaptively adjust based on visual feedback when it approaches a target object (e.g., 30-50mm). To overcome this limitation, haptic or proximity sensors can be integrated into the EOAT 50 or the palm of the hand.
[0164] In one embodiment, camera 61 may be a 3D vision system comprising one or more 3D cameras. In such a configuration, camera 61 can be selected from many commercially available 3D vision systems depending on the object to be detected. For example, while laser rangefinders using time-of-flight methods can be used to locate distant objects, stereo imaging systems may be better suited for imaging high-contrast objects. In cases where the object is highly specularly reflective, the use of projection texture techniques (such as structured light) may be more useful. 3D vision systems used to assist robots in detecting and picking up objects are well known and will not be described in detail here.
[0165] Reference Figure 22 and Figure 23 In one embodiment, the lifting mechanism 40 is based on a lifting mechanism. Specifically, the lifting mechanism 40 includes a lifting mechanism 42 connected to the drawer mechanism 20 and the wheel base 10, and an actuator 41 fixed to the wheel base 10 and configured to drive the lifting mechanism 42 to extend or retract in the vertical direction. When the lifting mechanism 42 extends, the drawer mechanism 20 moves vertically upward, and when the lifting mechanism 42 retracts, it moves vertically downward. It should be noted that the lifting mechanism 40 is not limited and can be adjusted as needed. In one embodiment, the lifting mechanism may be a scissor-type lifting mechanism.
[0166] Reference Figure 22 and 23The lifting mechanism 42 includes a pair of supports 421 and 422, which are rotatably connected to each other and form an interlaced "X" pattern. Support 421 includes two rods 4211 of substantially the same length, parallel to each other, and fixed. The top ends of the two rods 4211 are rotatably connected to a top plate 432, to which the drawer mechanism 20 is connected. The lower ends of the two rods 4211 are rotatably connected to a base plate 431 fixed to a wheel base 10. In one embodiment, the base plate 431 defines two recesses 4311 to receive two wheels 423, each rotatably connected to the lower ends of the two rods 4211. When the lower supporting ends of the support 421 are driven by an actuator 41, the two wheels 423 are able to roll and move within the two recesses 4311. In another embodiment, the two wheels 423 can be replaced by two sliders rotatably connected to the lower ends of the two rods 4211 and received in two recesses 4311. When the supporting lower end of the support member 421 is driven by the actuator 41, the two sliders can slide in the two recesses 4311.
[0167] Reference Figure 22 and 23 In one embodiment, support 422 is constructed and arranged in a manner similar to support 421. Specifically, support 422 includes two rods 4221 having substantially the same length and being parallel and fixed to each other. One rod 4221 is rotatably connected to a rod 4211 at its midpoint, and the other rod 4221 is rotatably connected to another rod 4211 at its midpoint. The bottom ends of the two rods 4221 are rotatably connected to a base plate 431. The upper ends of the two rods 4221 are movably connected to a top plate 432. In one embodiment, the top plate 432 defines two recesses 4321 to receive two wheels 423, each rotatably connected to the upper ends of the two rods 4221. When support 422 is driven by support 421, the two wheels 423 are able to roll and move within the two recesses 4321. In another embodiment, the two wheels 423 may be replaced by two sliders rotatably connected to the upper ends of the two rods 4221 and received within the two recesses 4321. When the lower end of the support member 421 is driven by the linear track 41, the two sliders can slide in the two grooves 4321. In another embodiment, the linear track 41 can be positioned with angular displacement relative to the base plate, and the lower end of the support member 422 is located at a displacement away from the end of the base plate.
[0168] With this configuration, when the lower end of support 421 or the upper end of support 422 is pushed / pulled by actuator 41, the two wheels 423 of support 421 move in groove 4311, or the two wheels 423 of support 422 move in groove 4321. Then, lifting mechanism 42 extends / retracts vertically, thereby moving drawer mechanism 20 to a raised / lowered position. Figure 24 As shown, it should be noted that the lifting mechanism 42 may include a pair or more supports 421 and 422. The arrangement of these supports 421 and 422 is well known and will not be described in detail here.
[0169] Reference Figure 22 and 23 In one embodiment, actuator 41 is a linear actuator configured to apply a push or pull force to lifting mechanism 42 to drive lifting mechanism 42 to extend or retract in a vertical direction. Actuator 41 includes an output shaft 411 movable in a direction parallel to a groove 4311 of base plate 431. The lower end of rod 4211 of support member 421 is connected to output shaft 411 via connecting rod 412. Output shaft 411 can then apply a push / pull force to the lower end of rod 4211 of support member 421. Wheels of support member 421 can then move in groove 4311, thereby driving lifting mechanism 42 to extend or retract. In one embodiment, lifting mechanism 40 also includes two rods 433 fixed to top plate 432 and two tubes 434 fixed to base plate 431. Guide rods 433 are substantially perpendicular to top plate 432. Tubes 434 are substantially perpendicular to base plate 432 and arranged relative to the two rods 433. The lifting mechanism 40 also includes two springs 435. The bottom end of each spring 435 is fixed in a tube 434, and each rod 433 is fixed in a spring 435. When the lifting mechanism 42 is in the fully retracted state, the springs 435 are compressed by the top plate 432. When the lifting mechanism 42 is in the fully extended state, the springs 435 return to their original shape. As the drawer assembly 20 moves downward, the springs 435 are gradually compressed by the top plate 432, which reduces the load acting on the linear track of the actuator 41. In another embodiment, four springs 435 are arranged at the four corners of the base plate.
[0170] Reference Figure 25 The robot assistant 100, including the mechanical and software aspects described above, can be an autonomous robot with capabilities including precise positioning, motion planning, and trajectory tracking. The robot assistant 100 can determine its real-time position in a known map while moving along a planned path. If dynamic obstacles exist on the planned path (e.g., ...), ... Figure 25(Regarding obstacles in the path), the robot assistant 100 can detect obstacles and plan new paths to avoid them. With these capabilities, the robot assistant 100 can move autonomously between a starting position and a target position to perform assigned tasks, such as moving from position A to position B, retrieving medication from position B, and delivering medication to position C. This enables intelligent logistics and provides an unsupervised end-to-end logistics solution.
[0171] Reference Figure 26 The robotic assistant 100, encompassing the aforementioned mechanical and software aspects, can be an autonomous robot, including a foldable arm 30 and a highly dexterous EOAT 50. The EOAT 50 is versatile enough to precisely grasp small objects as well as powerfully grasp heavier / bulky objects. The robotic assistant 100 can recognize objects in a scene, train or detect the optimal grasping posture for each object's geometry, locate objects relative to the manipulator base or EOAT, plan collision-free or "collision-safe" paths to achieve a pre-grasping posture, plan grasping configurations, and locate objects in subsequent grasping configurations. Utilizing these capabilities, the robotic assistant 100 can provide unsupervised end-to-end logistics solutions to meet various delivery and logistics needs. Specifically, such as... Figure 26As shown, after the robot assistant 100 moves to the target location (e.g., shelf 300), the foldable arm 30 and EOAT 50 are controlled to be in a state such that the EOAT 50 can reach the designated location to pick up the designated object 400. During this process, the robot assistant 100 will determine the accessibility of the object 400 and can control the lifting mechanism 40 to move the drawer mechanism 20 to a designated height so that the foldable arm 30 and EOAT 50 can reach the object 400. In one embodiment, after the EOAT 50 grasps the object 400, the robot assistant 100 can open a drawer 21 to allow the foldable arm 30 to load the object 400 into the drawer 21 and close the drawer 21 before the robot assistant 100 is in motion. After the robot assistant 100 moves from the shelf 300 to the designated location, the robot assistant 100 can open the drawer 21 to allow the foldable arm 30 to unload the object 400. During the loading and unloading process, the robot assistant 100 may employ a tracking system (e.g., RFID-enabled item tracking or barcode scanner) to track the inventory of objects being loaded and unloaded (e.g., medications, gloves). Additionally, the tracking system allows the robot assistant 100 to determine which authorized person or patient has loaded, received, and / or opened the drawer mechanism 20. All this information can be uploaded to a centralized database for tracking and can be used to automatically reorder inventory when certain thresholds are met. Furthermore, the tracking system may send visual, audio, or electronic alarms when an authorized person or patient has loaded, received, and / or opened the drawer mechanism 20, or when inventory is depleted.
[0172] Reference Figure 27 In one embodiment, the control system 70 includes a processor 71 and a memory 72 storing computer-readable instructions.
[0173] Processor 71 runs or executes various software programs and / or instruction sets stored in memory 72 to perform various functions of robot assistant 100 and process data. Processor 71 may be a central processing unit (CPU), a general-purpose processor, a digital signal processor (DSP), an application-specific integrated circuit (ASIC), a field-programmable gate array (FPGA), a programmable logic device, a discrete gate, a transistor logic device, a discrete hardware component, or a combination of some or all of these elements. A general-purpose processor may be a microprocessor or any conventional processor, etc.
[0174] The memory 72 may store software programs and / or computer-readable instruction sets, may include high-speed random access memory, and may include non-volatile memory, such as one or more disk storage devices, flash memory devices, or other non-volatile solid-state memory devices.
[0175] The robot assistant 100 also includes a base motion controller 101 electrically connected to the processor 71, a motor driver 153 electrically connected to the base motion controller 101 and configured to drive a motor 152 (hereinafter referred to as "foot motor 152") of the actuation foot 15, and a motor driver 102 electrically connected to the base motion controller 101 and configured to drive a motor of the base 10 (hereinafter referred to as "base motor 1101").
[0176] Reference Figure 27 The robot assistant 100 also includes a body motion controller 401 electrically connected to the processor 71, a motor driver 26 electrically connected to the body motion controller 401 and configured to drive a motor 231 or 231a (hereinafter referred to as "drawer motor 231") of the drawer mechanism 20, and a motor driver 402 electrically connected to the body motion controller 401 and configured to drive an actuator 41 (hereinafter referred to as "lifting motor 41") of the lifting mechanism 40.
[0177] Reference Figure 27 The robot assistant 100 also includes an arm motion controller 302 electrically connected to the processor 71, and a motor driver 303 electrically connected to the arm motion controller 302 and configured to drive joint motors 370 of the foldable arm 30. The robot assistant 100 also includes an EOAT motion controller 501 electrically connected to the processor 71, and a motor driver 502 electrically connected to the EOAT motion controller 501 and configured to drive EOAT motor 503 of the EOAT 50. The EOAT motor 503 may include one or more of the motors 511b, 515b, 545b, 53c, 55d, 54e, 55e, 54f, 55f, and 56f described above.
[0178] The robot assistant 100 also includes a power system 81 that powers the various components of the robot assistant 100. The power system 81 may include a power management system, one or more power sources (e.g., batteries, alternating current (AC)), a charging system, power failure detection circuitry, a power converter or inverter, a power status indicator (e.g., light-emitting diodes (LEDs)), and any other components related to power generation, power management, and distribution. The power system 81 may also include a self-charging unit that can engage with a docking charging station at a fixed location, thereby allowing the robot assistant 100 to be charged.
[0179] In one embodiment, the robot assistant 100 may further include a display 82. The display 82 may be a touch-sensitive screen and provides an input and output interface between the robot assistant robot 100 and the user. The display 82 displays visual output to the user. The visual output may include graphics, text, icons, video, and any combination thereof.
[0180] In one embodiment, the robot assistant 100 may further include a speaker 83 and a microphone 84, which provide an audio interface between the user and the robot assistant 100. The microphone 84 receives audio data, converts the audio data into electrical signals, and sends the electrical signals as commands to the control system 70. The speaker 83 converts the electrical signals into sound waves that are audible to the human ear.
[0181] It should be noted that, Figure 27 Only one example of a robot assistant 100 is shown, and the robot assistant 100 may have more or fewer components than shown, may combine two or more components, or may have different component configurations or arrangements. For example, the robot assistant 100 may further include a wireless communication interface 85, such as a Wi-Fi and Bluetooth module. In another example, the EOAT motion controller may be connected to the arm motion controller. In this example, commands to the EOAT are transmitted through the arm motion controller. Conversely, in this embodiment, commands go directly to the EOAT. In either case, the processor is responsible for directly or indirectly commanding the EOAT. Figure 27 The various components shown can be implemented in hardware, software, or a combination of hardware and software, including one or more signal processing and / or application-specific integrated circuits.
[0182] Reference Figure 28 In one embodiment, the robot assistant 100 includes two base motors 1101, each for driving two wheels 111 of the base 10. The base motors 1101 may be direct current (DC) motors. The robot assistant 100 includes two motor drivers 102, each driving one of the base motors 1101. A base motion controller 101 responds to commands from a processor 71 to instruct the movement of the base motors 1101. The base motion controller 101 may be a DC motor controller capable of speed control of the DC motors using pulse width modulation (PWM) methods. The base motion controller 101 performs various calculations based on its programming and provides outputs to the gate drivers of the motor drivers 102 and 153, thereby driving the base motors 1101 and the foot motors 152. In other embodiments, the base motors 1101 and the foot motors 152 may be controlled by two or more separate motion controllers.
[0183] In one embodiment, each motor driver 102 includes a gate driver 103 electrically connected to a base motion controller 101 and a plurality of transistors 104 electrically connected to a base motor 1101. The gate driver 103 and transistors 104 may be separate components or integrated into a single integrated circuit. Each base motor 1101 includes an encoder 105 configured to detect the angular position of the rotor of the base motor 1101 and output the rotor angle information as a rotor position signal to the base motion controller 101. In other embodiments, the encoder 105 may be replaced by other position sensors, such as Hall effect sensors, back electromotive force (EMF) zero-crossing detectors, and / or any other device that can typically generate information indicating the angular position of the rotor of the base motor 1101.
[0184] Angular position signals from the two encoders 105 allow the base motion controller 101 to generate closed-loop commands for the gate driver 103. The angular position signals from the two encoders 105 also serve as additional odometer information to enhance navigation and self-positioning performance. The gate driver 126 then generates a variable duty cycle PWM motor drive signal to drive the base motor 1101. Specifically, there may be six transistors 104 arranged in a three-and-a-half H-bridge configuration. Each gate driver 126 generates a gate drive signal to drive each of the six transistors 104. The six transistors 104 generate a variable duty cycle PWM motor drive signal that rotates one base motor 1101. In one embodiment, each of the transistors 104 is an N-channel metal-oxide-semiconductor field-effect transistor (MOSFET). It should be noted that the transistors 104 are not limited to N-channel MOSFETs; other types of switching elements can be used, such as P-channel MOSFETs, bipolar junction transistors (BJTs), silicon controlled rectifiers (SCRs), thyristors, triacs, or other similar switching elements. It should be noted that the motor driver 12 is not limited and can be changed as needed. For example, motor driver 12 can be replaced by a commercially available DC motor driver.
[0185] The base motion controller 101 receives commands from the processor 71. These commands may include a variety of instructions, including descriptions of the movements to be performed by the wheels 111, or instructions for the base motion controller 101 to perform other system maintenance / system monitoring tasks.
[0186] An example of a motion instruction is the transmission of a target speed to be achieved within a predetermined time. The base motion controller 101 is programmed in such a way that it continuously monitors and calculates the speed of the wheels 111 using signals from the encoder 105 associated with each wheel 111, and thus can determine the difference between the target speed and the current speed. The base motion controller 101 can then translate this difference into instructions for its onboard pulse width modulator (PWM) system to increase or decrease the duty cycle of the PWM signal. This PWM signal is fed to the transistor 104 via the gate driver 103 and causes a corresponding increase or decrease in the current directed to the coils of the base motor 1101, thereby causing the base motor 1101 to move faster or slower.
[0187] A similar sequence of operations can also control the direction of movement, as the base motion controller 101 can convert left or right turn commands from the processor 71 into signals that drive the two wheels 111 at different rates, turning them as the robot assistant 100 moves. In one embodiment, another sequence of operations for the base motion controller 101 is receiving commands to move the wheeled base 10 forward, backward, or along a path described as a sequence of positions relative to the current position of the wheeled base 10, by a predetermined distance.
[0188] The base motion controller 101 can also perform other functions. Specifically, the base motion controller 101 can calculate the information derived from the encoder 105 to report the position of the wheel 111, the angular distance moved by the wheel 111, or the speed to the processor 71.
[0189] The robot assistant 100, including two differential drive wheels 111, is a differential drive wheeled mobile robot. These two wheels are independently driven. One or more passive casters are used for balance and stability. If the wheels rotate at the same speed, the robot will move forward or backward. If one wheel is moving faster than the other, the robot will follow a curve along the arc of an instantaneous circle. If the two wheels rotate in opposite directions at the same speed, the robot will rotate around the midpoint between the two drive wheels.
[0190] In one embodiment, the foot motor 152 is a DC motor, and each motor driver 153 may include an H-bridge circuit comprising four switching elements (e.g., MOSFETs). Specifically, the H-bridge circuit includes two high-side switching elements S1 and S2, and two low-side switching elements S3 and S4. High-side switching element S1 and low-side switching element S3 are connected in series, and high-side switching element S2 and low-side switching element S4 are connected in series. Switching elements S1, S3 and S2, S4 are connected in parallel between power supply and ground. The foot motor 152 driven by the motor driver 153 is connected to the connection points of switching elements S1 and S3 and the connection points of switching elements S2 and S4. When switching elements S1 and S4 of one motor driver 153 are switched on, the foot motor 152 driven by the motor driver 153 rotates in a first direction (e.g., clockwise). When switching elements S2 and S3 are switched on, the foot motor 152 rotates in the opposite second direction (e.g., counterclockwise). The configuration of the H-bridge circuit is unrestricted and can be changed according to actual needs.
[0191] Each motor driver 153 may also include a gate driver. The gate driver is configured to generate a gate drive signal to drive the H-bridge circuit. The speed of the foot motor 152 can be adjusted by changing the duty cycle of the PWM input signal from the base motion controller 101. It should be noted that the configuration of the motor driver 153 is not limited, and other commercially available DC motor drivers can be used instead.
[0192] In one embodiment, according to commands from processor 71, base motion controller 101 controls foot motor 152 to move to its retracted position (see... Figure 8A The movable support 151 between the extended position and the extended position (see) Figure 8B The foot motor 152 may be a non-reverse-drive linear motor, meaning that when the foot motor 152 is de-energized, its slider will be locked, thus allowing the foot 151 to remain in contact with the support surface during a power failure in the event of an object manipulation task. In one embodiment, each foot motor 152 may have a built-in mechanical snap-action switch to automatically stop its movement when it reaches either end of its travel. It should be noted that... Figure 28 Only one example is shown, and the robot assistant hand 100 may have more components than shown, or may have different configurations or arrangements of components.
[0193] In one embodiment, the arm motion controller 302 may have the same or similar configuration as the base motion controller 101. The motor driver 303 may have the same or similar configuration as motor drivers 102 or 153. The joint motors 370 may be DC motors. The processor 71 may execute a motion planning algorithm to generate a probabilistic route map, or PRM. A PRM is a graph consisting of points in an unobstructed space, where straight lines between these points are called "edges," and direct movement between them will not result in a collision. The processor 71 sends commands to the arm motion controller 302, which in turn drives the joint motors 370. Each joint motor 370 then rotates by a defined angle to move the foldable arm 30 within the unobstructed space.
[0194] In one embodiment, the EOAT motion controller 501 may have the same or similar configuration as the base motion controller 101. The motor driver 502 may have the same or similar configuration as motor drivers 102, 153, or 303. The EOAT motor 503 may be a DC motor. After the EOAT 50 is moved by the arm motion controller 302 to a position within a predetermined range of the determined object, the processor 71 sends a command to the EOAT motion controller 501. The EOAT motion controller 501 then controls the EOAT motor 503 to move the fingers of the EOAT 50 as the EOAT 50 approaches the determined object, allowing the EOAT 50 to grasp the determined object. The processor 71 may monitor the grip force acting on the determined object and send a command to the EOAT motion controller 501 when the grip force reaches a predetermined value. The EOAT motion controller 501 then sends a signal to the motor driver 502 to stop the movement of the EOAT motor 503, allowing the fingers of the EOAT 50 to grasp the determined object without slipping. Then, processor 71 can execute a motion planning algorithm and send a signal to arm motion controller 302 to control the foldable arm 30 to move towards a predetermined drawer 21 in an unobstructed space. After the EOAT 50 has moved to a position within the predetermined range of drawer 21, processor 71 then sends a signal to EOAT motion controller 501 to control the fingers of EOAT 50 to release the object. The object is then placed into drawer 21.
[0195] Reference Figure 29 In one embodiment, the body motion controller 401 may have the same or similar configuration as the base motion controller 101. The motor driver 26 may have the same or similar configuration as motor drivers 102, 153, 303, or 502. The drawer motor 231 may be a DC motor. The body motion controller 401 may receive commands from the processor 71. These commands may include a variety of instructions, including descriptions of movements performed by a defined drawer 21, such as from an open position (see...). Figure 11 The drawer 21 slides from the open position to the closed position (see Figure 1). Then, a motor driver 26 sends a rotation signal to the corresponding drawer motor 231 to drive the determined drawer 21 to slide from the open position to the closed position. The body motion controller 401 can stop the operation of the drawer motor 231 when it receives a signal from a limit switch 24 indicating that the drawer 21 has reached its travel limit. In another embodiment, the body motion controller 401 can determine the position of the drawer in its workspace based on position feedback signals from an encoder device attached to the drawer mechanism.
[0196] Motor driver 402 may have the same or similar configuration as motor drivers 102, 153, 303, 502, or 26. Lifting motor 41 may be a DC motor. Body motion controller 401 may receive commands from processor 71. These commands may include a variety of instructions, including those describing the movements that drawer mechanism 20 driven by lifting mechanism 40 will achieve, such as from the initial lowered position (see...). Figure 1A Move upwards to the lift position (see) Figure 3 The motion controller 401 can monitor the distance traveled by the drawer mechanism 20 by performing calculations based on signals from an angle sensor 44, which indicates the rotation angle of the rotor of the lifting motor 41. Once the drawer mechanism 20 has moved a predetermined distance and reached a defined position, the motion controller 401 can stop the operation of the lifting motor 41. The motion controller 401 can also stop the operation of the lifting motor 231 when it receives a signal from one of the two limit switches 45 indicating that the drawer mechanism 20 has reached its travel limit.
[0197] In one embodiment, the robot assistant 100 may further include an arm guard 280 made of transparent or translucent plastic / polycarbonate for concealing and / or protecting the foldable arm 30. Figure 1B ) or 281 ( Figure 1A Arm guards 280 / 281 are connected to drawer mechanism 20, and in the raised position ( Figure 1A ) and hidden locations ( Figure 1BThe arm guards 280 / 281 are slidable or retractable between the two positions. In another embodiment, the arm guards 280 / 281 are mounted on the outer housing and can be retransmitted or lifted by the cover motor 28. The robot assistant 100 may also include an arm guard motor 28 for moving the arm guards 280 / 281 between a raised position and a retracted position. The arm guard motor 28 may be a DC motor. The robot assistant 100 may also include a motor driver 27 configured to drive the arm guard motor 28. The motor driver 27 may have the same or similar configuration as motor drivers 102, 153, 303, 502, 26, or 402. The body motion controller 401 may receive commands from the processor 71. These commands may include a variety of instructions, including those describing the movements to be performed by the arm guards 280 / 281, such as a sliding movement from the retracted position to the raised position. When a signal is received from one of the two limit switches 29, the body motion controller 401 may stop the operation of the arm guard motor 28, indicating that the drawer 21 has reached its travel limit.
[0198] In one embodiment, the robot assistant 100 may further include a vacuum pump motor 507 to [extract vacuum pump motor 507 from...]. Figure 20 Most of the air is evacuated from under the suction cup 513. The vacuum pump motor 507 can be a DC motor. The robot assistant 100 may also include a motor driver 506 that drives the vacuum pump motor 507. The motor driver 506 may have the same or similar configuration as motor drivers 102, 153, 303, 502, 26, 27, or 402. The body motion controller 401 can monitor the pressure level below ambient atmospheric pressure within the suction cup based on a signal from the pressure sensor 508. The body motion controller 401 can then signal the motor driver 506 to drive the vacuum pump motor 507 so that the pressure level below ambient atmospheric pressure within the suction cup is maintained at a defined value, which allows the suction cup to provide a defined lifting force to the object during object manipulation tasks. It should be noted that Figure 29 Only one example is shown, and the robot assistant 100 may have more components than shown, or may have different configurations or arrangements of components.
[0199] Reference Figure 27 In one embodiment, the robot assistant 100 includes multiple sensors 60, including two RGB-D or 3D cameras 61 and 62, multiple LiDAR sensors 63, multiple IR sensors 64, multiple ultrasonic sensors 65, and multiple IMU sensors 66. One of the cameras 61 is mounted on the foldable arm 30 or EOAT 50. The other camera 62 is disposed on the housing surrounding the drawer mechanism 20, such as... Figure 1A As shown. The IR sensor 64 and the ultrasonic sensor 65 are arranged on a housing surrounding the wheel base 10, as... Figure 1AAs shown, IMU sensor 66 is arranged on wheeled base 10. Sensors 62 to 66 are configured to output data to processor 71, enabling processor 71 to perform localization, motion planning, trajectory tracking control, and obstacle avoidance for robot assistant 100, which will be described in detail below. In one embodiment, sensors 61 to 66 are directly electrically connected to processor 71.
[0200] Reference Figure 30 In one embodiment, the IR sensor 64 and the ultrasonic sensor 65 may be electrically connected to the sensor processor 601. The sensor processor 601 receives and processes data from the IR sensor 64 and the ultrasonic sensor 65, and sends the processed data (e.g., distance from the sensor to the object) to the processor 71 and / or one or more of the aforementioned motion controllers. In one embodiment, two IR sensors 64 and two ultrasonic sensors 65 are arranged on the front side of the robot assistant 100, and two IR sensors 64 and two ultrasonic sensors 65 are arranged on the rear side of the robot assistant 100. However, the number and arrangement of the IR sensors 64 and ultrasonic sensors 65 can be changed according to actual needs.
[0201] In one embodiment, the IR sensor 64 and the ultrasonic sensor 65 are electrically connected to the sensor processor 601 via multiple differential drivers. Specifically, two differential drivers 602 and two differential drivers 603 are electrically connected to the sensor processor 601. Each differential driver 602 is electrically connected to two differential drivers 651, and each differential driver 651 is electrically connected to one ultrasonic sensor 65. Each differential driver 603 is electrically connected to two differential drivers 641, and each differential driver 641 is electrically connected to one IR sensor 64. In one embodiment, differential drivers 602, 603, 641, and 651 have the same configuration and may be differential driver I2C bus buffers. Differential drivers 602, 603, 641, and 651 can receive digital signal data packets transmitted by the IR sensor 64 and the ultrasonic sensor 65 and convert them into signals that the sensor processor 601 can recognize. The bus connected to the IR sensor 64 is routed through differential drivers to protect it from electromagnetic noise emitted by the base motor 1101. The differential driver also provides level shifting from 3.3V to 5V and back to 3.3V to further improve the signal-to-noise ratio of the sensor cable.
[0202] In one embodiment, an I / O expander 642 is connected to each IR sensor 64 and a differential driver 641. The sensor processor 601 can individually reset / reboot each IR sensor 64 via an I / O expander, allowing the IR sensors 64 to have different I / O values. 2C-bus addresses, these addresses are assigned by sensor processor 601, which sequentially resets each IR sensor 64 and immediately issues a write command. In another embodiment, the arrangement of I / O expander 642 and differential driver 641 can also be applied to sonar sensors. The use of I / O expander 642 can be achieved through I... 2 The C bus provides remote I / O functionality, which limits the number of wires that can be extended on the robot assistant 100. Figure 30 Only one example of the arrangement of the sensor processor, differential drive, IR sensor and ultrasonic sensor is shown, and the robot assistant 100 may have more components than shown, or may have different configurations or arrangements of components.
[0203] Reference Figure 31 In one embodiment, the power system 81 includes a battery pack comprising a battery monitor 810 electrically connected to the processor 71 and a battery module 814, the battery module 814 including a plurality of battery cells 815. The processor 71 can use the battery monitor 810 to implement battery pack management functions, such as monitoring (cell voltage, battery pack current, battery pack temperature), protection (controlling charge / discharge FETs), and balancing. The power system 81 also includes a FET driver 811, a charging FET 812, and a discharging FET 813. In one embodiment, the charging FET 812 is connected to the positive terminal of the battery module 814, and the discharging FET 813 is connected to the positive charging terminal of the battery module 814. In another embodiment, the battery cells 815 may be replaced by individual battery modules that can back each other up and provide more flexibility, as they can be arranged in different locations as needed.
[0204] In one embodiment, the charging FET 812 and discharging FET 813 may be N-channel MOSFETs. Both the charging FET 812 and discharging FET 813 are electrically connected to the FET driver 811. In response to a command from the battery monitor 810, the FET driver 811 can turn the charging FET 812 and / or the discharging FET 813 on / off. When the charging FET 812 is on, it allows charging current from the charging terminal CHR+ to flow into the battery cell 815 to charge the battery cell 815. When the discharging FET 813 is on, it allows discharging current from the battery 815 to flow to the positive terminal of the battery module 814, enabling the battery module 814 to power other components of the robot assistant 100. When the charging FET 812 is off, the charging current is blocked by the charging FET 812, thereby stopping the charging process when the battery 815 is fully charged. When the discharging FET 813 is off, the discharging current is blocked by the discharging FET 813, which prevents the battery module 814 from being damaged due to over-discharge. It should be noted that... Figure 31and 32 Only one example of power system 81 is shown, and power system 81 may have more components than shown, or may have different component configurations or arrangements.
[0205] refer to Figure 32 In one embodiment, the power system 81 may further include a connection to Figure 31 The battery pack's power generation and distribution system includes a power system controller that manages the generation and distribution of different DC power supply voltages to the rest of the robot assistant. In one embodiment, these power supply voltages may be 24V, 12V, and the voltage on the PACK+ for the robot's actuators, as well as 12V for other electronics in the robot assistant. The power system controller can disable power at some of these different power outputs. Additionally, an emergency stop switch can disconnect power to some of these power outputs to stop the robot assistant's actuators in an emergency. The docking station used with the robot assistant is a fixed element connected to a wall socket. When the robot assistant docks at the docking station, it uses the electricity available at the socket to generate a charging current to charge the robot assistant's battery pack. The power system controller also allows docking to the docking station and the battery charging process. The docking process also includes beacons on the docking station and beacon sensors on the robot assistant's power system, as well as a TITS processor, motion controller, and other sensing elements. In one embodiment, the beacon on the docking station may include an infrared LED and its driving circuitry. The docking sensor on the robot assistant's power system may include an infrared-sensitive phototransistor and its driving circuitry.
[0206] Figure 33AExamples of three user interfaces are depicted, providing the ability to receive requests from care seekers, communicate with care seekers, and create task requests. The user interfaces are displayed on the screen of a mobile device 910 and can be generated by a mobile application or website. The mobile device 910, described as a phone in this embodiment, can be any mobile computing device, including but not limited to smartphones, tablets, or wearable computing devices. In the described scenario, the user interface includes a first user interface 911 that allows healthcare professionals to receive video communication requests from care seekers. Video communication refers to the transmission of information via live video streaming or video sharing. Through this form of communication, the sender and recipient can interact using audio and video. The user interface also includes a second user interface 912 that allows healthcare professionals to communicate with care seekers after receiving a video communication request. Healthcare professionals can understand the needs of the person seeking care. The user interface also includes a third user interface 913 that allows healthcare professionals to create task requests, including the object to be delivered and the location where the object needs to be delivered, and send the task request to a management system that assigns a robotic assistant 100 to perform the task. The task request can be sent directly to a robotic assistant 100 to perform the task. It should be noted that... Figure 33A This is just an example of the user interface for Robot Assistant 100, and more user interfaces with different elements can be provided.
[0207] Figure 33BAn example of a user interface that provides a more holistic view of a task is depicted. The user interface gives care providers intuitive fleet management and traceability, allowing them to locate not only the working robotic assistant 100, but also roaming healthcare professionals (such as nurses and doctors) or care seekers (such as elderly people and patients) anywhere in the bedside or aged care facility. The user interface is presented on the display of a mobile device 920 and can be generated by a mobile application or website. The mobile device 920 can be a tablet or laptop computer with a display capable of displaying more content. The user interface presents the user with a task description 921, which may include the name of the object and the location where the object needs to be delivered. The user interface also includes a schematic floor plan 922 associated with the task. Profile images of care seekers 923 and healthcare professionals 924 are displayed on the floor plan of their locations. The user interface also includes an image 925 representing the robotic assistant 100 performing the current task. The location of the robotic assistant 100 is updated in real time, and the position of image 925 on the floor plan is adjusted accordingly. The direction of movement of the robotic assistant may also be displayed. The user interface may further include buttons for "Change," "Cancel," "Task Queue," and "Record," allowing users (e.g., healthcare professionals) to adjust the current task, access information for all tasks, and record audio. It should be noted that... Figure 33B This is just an example of a user interface for the Robot Assistant 100, and more user interfaces with different elements can be provided.
[0208] Figure 33C An example of a user interface, generated by an application and rendered on the display of a personal computer (e.g., a desktop computer, laptop computer) 930, is depicted. All the functionality of the aforementioned mobile and tablet user interfaces will be available. The displayed information can be customized for care providers. For example, the user interface displays information about all tasks that one or more robotic assistants are performing or preparing to perform. This application is ideal for healthcare managers or administrators who have access to the most data-rich user interfaces and complete visibility into the entire operation. From prioritization to authorization, complete control is centralized in the most efficient workflow. It should be noted that... Figure 33C This is just an example of a user interface used with the robotic assistant 100; many more user interfaces with different elements can be provided. All of these user interfaces enable care providers to have the functionality required for “smart logistics,” including responding to requests, optimizing task schedules, determining optimal routes, and so on.
[0209] Figure 34 This is a flowchart illustrating a method for controlling a robot assistant 100 according to one embodiment, which includes the following steps. It should be noted that, as Figure 34The order of the steps shown is not limited and can be changed as needed. For example, the wheel base 10 can be controlled to move to a predetermined position, and then the drawer mechanism 20 can be controlled to move up / down to the predetermined position before one or more drawers 21 are opened. Then, the foldable arm 30 and EOAT 50 are controlled to grasp one or more predetermined objects.
[0210] Step S101: Receive command instructions. The processor 71 of the control system 70 receives command instructions. For example, the processor 71 may receive command instructions from a user (e.g., a healthcare professional) who requests the robot assistant 100 to retrieve an object from one location and deliver the object to another location.
[0211] Step S201: Move the wheeled base 10 in response to the first command instruction. The processor 71 can analyze each command instruction and move the wheeled base 10 to a determined position in response to the first command instruction. The first command instruction may include a description of the location that the robot assistant 100 needs to reach. For example, when a user (e.g., a healthcare professional) requests the robot assistant 100 to retrieve and deliver an object, the first command instruction may include a description of the starting position of the object storage and the target position where the object needs to be delivered. The processor 71 can execute software programs and / or instruction sets stored in the memory 72 to perform localization, motion planning, and trajectory tracking, enabling the wheeled base 10 to determine its real-time position on a known map during movement along a planned path. If there are dynamic obstacles on the planned path (e.g., Figure 25 (Obstacles in the path), the processor 71 can plan a new path to avoid the obstacles. The wheeled base 10 can move autonomously, first to the starting position and then to the target position.
[0212] Step S301: Open or close one or more drawers 21 in response to a second command instruction. Processor 71 can analyze each command instruction and open or close one or more drawers 21 in response to the second command instruction. The processor can receive the second command instruction from a user (e.g., a healthcare professional) to open or close one or more drawers 21. Additionally, processor 71 can open or close one or more drawers 21 when certain conditions are met, such as when the robot assistant 100 has reached a defined location (e.g., a starting position and a target position). In one embodiment, the healthcare professional can use his / her company badge (typically a lanyard badge or wristband or other identification indicator) for an RFID sensor, using voice commands or facial recognition to authorize the opening of the drawer 21. The RFID information of the company badge and / or the person's facial recognition information can be uploaded to a tracking system.
[0213] Can execute such as Figure 37The exemplary method shown controls drawer 2. The drawer will only open when there is sufficient space and will only close if no potential obstruction caused by a person's finger or object not properly inserted into drawer 21 is detected. The method includes the following steps. Step S801: Receive a command from a user or data from a sensor reflecting the user's intention. Processor 71 may receive a command from a user attempting to open or close drawer 21. Processor 71 may receive data from one or more sensors reflecting the user's intention. For example, one or more sensors may include non-contact sensors (e.g., a camera) to detect user gestures associated with the user's intention to open / close drawer 21. Step S802: Perform an obstacle check to determine if there is an obstacle that would prevent the movement of the determined drawer 21. Processor 71 may determine the presence of an obstacle that would prevent the movement of the determined drawer 21 based on data from collision detection sensors (e.g., force-sensitive resistors and distance sensors). If an obstacle is detected, the process proceeds to step S805; otherwise, the processor proceeds to step S804. Step S804: Control the movement of the determined drawer 21. Processor 71 can control the opening or closing of drawer 21 in response to commands or data from sensors. Step S805: Output warning message. Processor 71 can output visual and / or audio warning messages to alert the user to potential abnormal conditions. Then, processor 71 can suspend the response to commands or data from sensors.
[0214] Step S401: In response to a third command instruction, drive the movement of the foldable arm 30 and EOAT 50 to pick up and place an external object from a determined location. The processor 71 may drive the movement of the foldable arm 30 and EOAT 50 to pick up and place the external object in response to the third command instruction. The third command instruction may include a description of the location the robot assistant 100 needs to reach and the object to be delivered. After the robot assistant 100 has reached the determined location, the processor 71 may determine the location of the object. For example, the processor 71 may detect the object from a pre-trained list of items based on data from the camera 61 and possible supplemental range / proximity sensors (collectively, the "vision module"). The vision module may report the pose of the detected object relative to the camera 61 and global coordinate frames. Reference labels / tags may be added to containers, features in the environment, and / or selected objects to make detection more robust. The foldable arm 30 may help reposition and orient the vision module mounted at its end to increase its default field of view and coverage. It can be used in scanning tasks to comprehensively search for target objects in the surrounding area and to compensate for the fixed focus of the camera module. Coordinated localization and image acquisition can also be performed iteratively to maximize the accuracy of target localization. Many target detection and recognition methods have been discussed in publications, such as papers and patents, and will not be described in detail here.
[0215] Processor 71 can execute a motion planning algorithm to generate a probabilistic route map (PRM). A PRM is a graph consisting of points in an unobstructed space, where straight lines between these points are called "edges," and direct movement between them will not result in a collision. Processor 71 can then control the movement of the foldable arm 30 within the unobstructed space. Processor 71 can move the fingers of EOAT 50 as it approaches a designated object, allowing EOAT 50 to grasp the object. Processor 71 can monitor the gripping force acting on the designated object, ensuring that EOAT 50's fingers can grasp the object without slipping. Then, processor 71 can control the foldable arm 30 to move towards a designated drawer 21 within the unobstructed space. After EOAT 50 has moved to a predetermined position within the drawer 21, processor 71 can then control the fingers of EOAT 50 to release the object. The object is then placed into drawer 21.
[0216] Reference Figure 35During the operation, the movement of the foldable arm 30 needs to follow a given time profile trajectory within a required time period. Arm motion profiles can be created to control the movement of the foldable arm 30. For example, when tracking a four-stage trajectory including unfolding the foldable arm 30 to its extended state, moving it to its leftmost position, moving it to its rightmost position, and folding it back to its original flat state, an arm motion profile as shown in the figure below can be created. Based on the arm motion profile, the foldable arm 30 is controlled to accelerate for the first 20% of each motion phase, then move at a constant speed for the next 60% of the time, and decelerate for the remaining 20% of each motion phase.
[0217] Reference Figure 36 In one embodiment, step S401 may include the following steps: Step S402: Locate the determined object. Step S403: Move the foldable arm 30 and EOAT 50 to a pre-grasping posture. Step S404: Determine whether EOAT 50 has been moved to the pre-grasping posture. If EOAT 50 has been moved to the pre-grasping posture, the process proceeds to step S405; otherwise, the process returns to step S403. Step S405: Control EOAT 50 to grasp the object. Step S406: Determine whether the object has been successfully grasped. If the object has been successfully grasped, the process proceeds to step S407; otherwise, the process returns to step S404. Step S407: Control the foldable arm 30 and EOAT 50 to move the object and place it in the determined position.
[0218] Step S501: In response to the fourth command instruction, control the lifting mechanism 40 to move the drawer mechanism 20 up and down. The processor 71 can control the lifting mechanism 40 to move the drawer mechanism 20 up and down in response to the fourth command instruction. The fourth command instruction may include a description of the location that the robot assistant 100 needs to reach and the object to be delivered. After the processor 71 has determined the location of the object, it can determine the accessibility of the object. Based on the determined accessibility, the processor 71 can control the lifting mechanism 40 to move the drawer mechanism 20 upward, so that the foldable arm 30 can reach the determined object. During the process of placing the object into the drawer, the processor 70 can control the lifting mechanism 40 to move the drawer mechanism 20 downward to its original lowered position.
[0219] Figure 38 This is a flowchart illustrating a method for controlling a robot assistant 100 according to one embodiment, which includes the following steps.
[0220] Step S601: Create an environmental map based on at least one sensor, at least based on the movement of the wheeled base 10. In one embodiment, simultaneous localization and mapping (SLAM) can be used to create the environmental map. SLAM achieves simultaneous localization and mapping based on self-awareness. SLAM can combine data from different sensors to simultaneously calculate position and build a map. The robot assistant 100 starts from an unknown position in an unknown environment, locates its own position and orientation by repeatedly observing environmental features during movement, and then builds an incremental map of the surrounding environment based on its own position, thereby achieving the purpose of simultaneous localization and mapping. Two common SLAM methods include visual SLAM and LiDAR-based SLAM. In one embodiment, LiDAR-based SLAM can be used to create an environmental map, which combines data from LiDAR sensor 63 and IMU sensor 66. In another embodiment, visual SLAM combining data from camera 62 and IMU sensor 66 can be used to create an environmental map. However, other types of SLAM methods can be used to simultaneously calculate position and build a map.
[0221] Step S602: Determine the current position of the robot assistant 100 in the environmental map. In one embodiment, LiDAR-based SLAM can be used to determine the real-time orientation and position of the robot assistant 100. In another embodiment, the real-time orientation and position of the robot assistant 100 can be determined using visual SLAM. In one embodiment, after an environmental map has been created, the real-time orientation and position of the robot assistant 100 in the previously created environmental map can be determined by using Adaptive Monte Carlo Localization (AMCL). Specifically, if an environmental map exists, the AMCL algorithm uses a particle filter to represent the distribution of possible states, with each particle representing a possible state, i.e., the assumption that the robot assistant 100 is in. The algorithm typically begins with a uniform random distribution of particles in the configuration space, meaning that the robot assistant 100 has no information about where it is and assumes that it is equally likely to be at any point in the space. Whenever the robot assistant 100 moves, it moves the particles to predict the new state after the move. Whenever the robot assistant 100 senses something, the particles are resampled based on a recursive Bayesian estimate (i.e., the degree of correlation between the actual sensed data and the predicted state). Eventually, the particles should converge to the actual position of the robot assistant 100.
[0222] Step S603: During the movement of the robot assistant 100 along the determined path, instruct the robot assistant 100 to avoid obstacles. In one embodiment, the A-star algorithm can be used to determine a collision-free path for the robot assistant 100. The A-star algorithm aims to avoid collisions with obstacles and processes the problem of the mobile robot assistant 100 based on feedback information from sensors (e.g., LiDAR sensor 63, IMU sensor 66, camera 62). The A-star algorithm can modify the trajectory of the robot assistant 100 in real time so that the robot assistant 100 can avoid collisions with dynamic obstacles found on its path. For its map representation, the A-star algorithm uses a grid-based search area divided into squares. Each square can be free space or an obstacle. To find the shortest path, a collision-free trajectory consisting of free space squares (also called nodes) is computed. To find the shortest path to the target, the A-star algorithm uses a heuristic method. The A-star algorithm first adds its starting node A to an open set of free space nodes containing possible paths. The next step is to find available space nodes around node A, add them to its list, and set node A as its parent node. The next step is to add node A to the closed set and then remove it from the open set. The next node to be processed is determined by the minimum cost F to reach the target. The minimum cost F = G + H, where G is the cost to reach the next node and H is the estimated distance to the target point. The A-Star algorithm provides efficient and complete pathfinding. However, other obstacle avoidance algorithms can be used to determine the collision-free path for the robot assistant 100.
[0223] In one embodiment, Dijkstra's algorithm can be used to determine a collision-free path for a robot assistant 100. Dijkstra's algorithm is a graph search algorithm that solves the single-source shortest path problem in a graph with non-negative edge path costs, generating a shortest path tree. For a given source vertex (node) in the graph, the algorithm finds the path (i.e., the shortest path) with the lowest cost between that vertex and every other vertex. Specifically, the distance to node Y is set as the distance from the initial node to Y. Dijkstra's algorithm assigns some initial distance values and attempts to improve them step by step. Step 1: Assign a provisional distance value to each node: for the initial node, set it to zero; for all other nodes, set it to infinity. Step 2: Mark all unvisited nodes. Set the initial node as the current node. Create a set of unvisited nodes, called the unvisited set consisting of all nodes. Step 3: For the current node, consider all its unvisited neighbors and calculate their provisional distances. For example, if the current node A is marked with a distance of 6, and the edge connecting it to its neighbor B has a length of 2, then the distance to B (through A) will be 6 + 2 = 8. If the distance is less than the previously recorded provisional distance B, then that distance is overwritten. Even if neighbors are checked, they are not marked as "visited" at this point and remain in the unvisited set. Step 4: After all neighbors of the current node have been considered, mark the current node as visited and remove it from the unvisited set. Visited nodes will no longer be checked. Step 5: If the target node has been marked as visited (when planning a path between two specific nodes), or if the minimum provisional distance between nodes in the unvisited set is infinite (when planning a complete traversal; this occurs when there is no connection between the initial node and the remaining unvisited nodes), then stop. The algorithm has ended. Step 6: Select the unvisited node marked with the minimum provisional distance, set it as the new "current node," and then return to step 3. Dijkstra's algorithm can modify the trajectory of the robot assistant 100 in real time, so that the robot assistant 100 can avoid collisions with dynamic obstacles found on its path.
[0224] During the movement of the robot assistant 100 from one position (e.g., a starting position) along a planned path to another position (e.g., a target position), trajectory tracking control can be performed to control the robot assistant 100 to follow the planned path. In one embodiment, trajectory tracking control can be performed using a motion controller based on a nonlinear proportional-integral-derivative (PID) controller. A PWM signal is generated based on the input PWM value and fed into the motor controller of the base motor 1101 to drive the base motor 1101. It should be noted that many methods have been proposed for trajectory tracking control of wheeled robots using PID motion controllers, and these methods can be used for trajectory tracking control of the robot assistant 100.
[0225] Reference Figures 40A to 40C ,create Figure 1A The kinematic model of the foldable arm 30a is described. In one embodiment, the kinematic model can be used to optimize the Denavit–Hartenberg (DH) parameters of the foldable arm 30a, such that the foldable arm 30a has maximum accessibility to one or more workspaces within the drawer 21. Specifically, joint 1 represents a rotary joint that drives the first link 31a of the foldable arm 30a to rotate about a first vertical axis. Joint 2 represents a rotary joint that drives the second link 32a to rotate relative to the first link 31a about a second axis substantially perpendicular to the first axis. Joint 3 represents a revolute joint that drives the third link 33a to rotate relative to the second link 32a about a third axis substantially parallel to the second axis. Joints 4, 5, and 6 represent rotary joints that drive the fourth link 34a to rotate relative to the third link 33a, the fifth link 35a to rotate relative to the fourth link 34a, and the sixth link 36a to rotate relative to the fifth link 35a, respectively. Figure 1A As shown, joints 1 to 6 are arranged based on the foldable arm 30a in a flat state.
[0226] Figure 40A This is a schematic diagram showing the structure and boundaries of the foldable arm, illustrating a workspace optimization problem. In one embodiment, a reference coordinate system is established with the center of joint 1 as the origin, the longitudinal direction of drawer mechanism 20 as the X-axis, the transverse direction of drawer mechanism 20 as the Y-axis, and the longitudinal direction of drawer mechanism 20 as the Z-axis. The coordinates of the center of the top plate of drawer mechanism 20 are (x, y, -z), where x, y, and z are greater than zero. The projections of joints 1-6 onto the XY plane are as follows. Figure 40B As shown. The projection of joint 1 onto the XY plane is a point coinciding with the origin of the base coordinate system. The projection of joint 2 onto the XY plane is a line segment located on the X-axis. The projection of joint 3 onto the XY plane is a line segment perpendicular to the projection of joint 2. The projections of joints 4 to 6 onto the XY plane are represented by line segments parallel to the projection of joint 2.
[0227] After creating the kinematic model of the foldable arm 30a and the base coordinate system, the following parameters can be defined. Specifically, d1 is the distance between joint 2 and the top plate of drawer mechanism 20. d2 is the distance between the projection center of joint 2 and the origin of the base coordinate system. a2 is equal to the projected length of the line segment on the X-axis, starting from the center of joint 2 and ending at the center of joint 3. d3 is equal to the projected length of the line segment on the Y-axis, starting from the center of joint 2 and ending at the center of joint 3. d4 is the distance between the projection centers of joints 3 and 6.
[0228] Figure 39This is a flowchart illustrating a method for determining parameters of a foldable arm 30a according to one embodiment. The method may include the following steps. Step S701: Receive information on the motion structure of the foldable arm 30a, the joint angles of the foldable arm 30a when folded, the dimensions of the drawer 21, and the outer envelope of the foldable arm 30a. This information includes information associated with the aforementioned motion structure of the foldable arm 30a. The joint angles of the foldable arm 30a refer to the angles of the rotational joints of the foldable arm 30a when it is in a folded, flat state, such as... Figure 1A As shown. The dimensions of drawer 21 include its width, length, and depth.
[0229] Step S702: Randomly generate DH parameters for the foldable arm 30a. In one embodiment, the parameters may include the coordinates x and y of the center of the top plate of the drawer mechanism 20, and distances d1, d2, a2, d3, d4, and d6, where d6 is the distance between the projection center of joints 4 to 6 and the center of EOAT 50. Random values are generated and assigned to these parameters.
[0230] Step S703: Determine whether the foldable arm 30a can be folded within the boundary of the top plate of the drawer mechanism 20. After assigning random values to x, y, d1, d2, a2, d3, d4, and d6, it can be determined based on the information received in step S701 whether any points on joints 1 to 6 and EOAT 50 fall outside the predetermined area. If so, the foldable arm 30a cannot be folded within the boundary of the top plate of the drawer mechanism 20 due to collision with the arm guard 281, and the process returns to step S702. Otherwise, the process proceeds to step S703. The predetermined area is a rectangular area smaller than the top plate of the drawer mechanism 20. For example, if the maximum radius of each link of the foldable arm 30a is not greater than 0.05m, the distance between the long side of the predetermined area and the long side of the top plate of the drawer mechanism 20 is not less than 0.05m, and the same applies to the distance between the short side of the predetermined area and the top plate of the drawer mechanism 20. In addition, the size of EOAT 50 can also be a factor in determining the predetermined area.
[0231] Step S704: Determine the workspace accessibility of the foldable arm 30a to the drawer 21. Workspace accessibility here refers to the ratio of the volume within the drawer 21 reachable by the EOAT 50 to the total volume of the space within the drawer 21. Workspace accessibility can be used to assess whether the motion configuration of the foldable arm 30a is sufficient to complete the required task. Many methods have been proposed to determine the workspace that the robot EOAT can reach.
[0232] For example, one approach uses a direct kinematics-based algorithm to calculate reachable workspace points. Specifically, in this approach, the redundant manipulator is modeled as a series of links connected to either rotary or prismatic joints. Each joint is assumed to have one degree of freedom without loss of generality. A joint with m degrees of freedom is modeled as m joints connected to zero-length links. To describe the relationship between two consecutive links, a coordinate frame is attached to each link. A homogeneous matrix Ai is used to describe the relationship between the consecutive frames. The elements of matrix A are calculated using Denavit-Hartenberg notation for prismatic and rotary joints. The Denavit-Hartenberg (DH) convention is used to assign coordinate frames to each joint of the manipulator in a simplified and consistent manner. The transformation matrix A for the rotary joints is:
[0233] The four quantities θi, ai, di, and αi are parameters associated with link i and joint i. These four parameters, ai, αi, di, and θi, are typically named as link length, link twist, link offset, and joint angle, respectively. The DH convention for robotic manipulators is well-known and will not be described in detail here. If it is a rotary joint (θi), it is called an angular variable; the other three fixed quantities (di, ai, αi) are called link parameters.
[0234] The description of the end effector relative to the base is denoted by Tn, given by Tn = A1A2…An-1An. The computational cost for each point is θ(n), where n is the number of degrees of freedom associated with the joint in the path from the end effector to the proximal link. Workspace points calculated by direct kinematics are not necessarily located on surface boundaries. Edge detection algorithms can be used to obtain workspace boundaries as well as holes and voids hidden within the reachable workspace. This can be achieved by calculating the dimensions of the cube containing the workspace points. This cube is divided into multiple cells according to the resolution required by the application. A cell is marked as 1 if it contains a workspace point and as 0 if it does not contain a reachable point. A workspace cell is considered a boundary cell if any of its adjacent cells are marked as zero. Matrix Tn is a 4x4 square matrix. The first, second, and third elements in the last column of this matrix are the x, y, and z coordinates of the end effector's position in the base coordinate system. In this way, points located inside the drawer and reachable by EOAT 50 can be determined. Therefore, the accessibility of the working space of drawer 21 can be determined. That is, the ratio of the volume occupied by these points to the total volume of the space inside drawer 21 can be determined.
[0235] In another embodiment, inverse kinematics can be used to calculate an reachable workspace. Specifically, inverse kinematics is the mathematical process of calculating the variable joint parameters required to position a robot end effector in a given location and orientation. For a given location, if one or more solutions exist for the joint parameters, then the given location is a reachable location. Figure 40D As shown, the 3D mesh of points within the drawer will be examined to determine which of these points are accessible to the EOAT of the folding arm. For the location of each point, inverse kinematics will be used to calculate one or more solutions for the joint parameters that allow the EOAT 50 to reach that point. These points can be examined in a predetermined order. For example, these points can be considered as lying on multiple parallel planes, first examining all points on the first plane, then all points on the second plane, and so on until all points on the last plane. In this way, points located within drawer 21 and accessible to the EOAT 50 can be determined. Therefore, the accessibility of the workspace of drawer 21 can be determined. That is, the ratio of the volume occupied by these points to the total volume of the space within drawer 21 can be determined.
[0236] Step S705: Determine if reference reachability exists. If reference reachability exists, the process proceeds to step S707; otherwise, the process proceeds to step S706.
[0237] Step S706: Select the current work area reachability as the reference reachability.
[0238] Step S707: Compare the current work area accessibility and the reference accessibility, and select the larger one as the reference accessibility.
[0239] Step S708: Determine whether the workspace accessibility determination in step S704 has reached the predetermined number of times. If the workspace accessibility determination in step S704 has reached the predetermined number of times, the process proceeds to step S709; otherwise, the process returns to step S702. In one embodiment, the predetermined number of times can be set to 1000.
[0240] Step S709: Output the parameters of the foldable arm 30a corresponding to the reference reachability.
[0241] In one embodiment, if the workspace accessibility determination in step S704 has not reached a predetermined number of times, then it is determined whether the number of workspace accessibility determinations in step S704 is greater than a preset value (e.g., 10). If so, the process proceeds to step S710; otherwise, the process returns to step S702.
[0242] Step S710: Generate the parameters of the foldable arm 30a by randomly changing ±n% of each parameter of the foldable arm 30a associated with reference reachability, where n is greater than zero. Then, the process returns to step S703.
[0243] according to Figure 39 The parameters determined by the method enable the foldable arm 30a to have satisfactory workspace accessibility to the drawer 21, allowing the EOAT 50 to reach almost any position inside the drawer 21.
[0244] refer to Figure 41A and 41B According to Figure 39 After determining the parameters of the foldable arm 30a, the accessibility of the foldable arm 30a to the workspace within / on the shelf can also be evaluated. In one embodiment, the width and depth of the shelf are assumed to be 0.35m, which is half the width of drawer 21. The distance from the back of drawer mechanism 20 to the shelf can be set to 0.21m, which is the radius required for the robot assistant 100 to rotate 90 degrees. The accessibility to the workspace of the shelf can be determined in the same or similar manner as the accessibility of the drawer 21 described above. Figure 40A and 40B As shown, the foldable arm 30a can reach most of the space inside the rack using a lifting mechanism. The accessible workspace includes a fully accessible workspace, a lower partially accessible workspace, and an upper partially accessible workspace, such as... Figure 40A and 40B As shown.
[0245] It should be understood that the foregoing disclosure details several embodiments of the robot assistant 100 that performs logistics and other tasks. As described above, the robot assistant 100 can be used in assisted living or healthcare settings to provide unsupervised end-to-end logistics solutions. However, the invention is not limited thereto. In other exemplary use cases, the robot assistant 100 can be used in schools, offices, or warehouses, etc.
[0246] For purposes of explanation, the foregoing description has been given with reference to specific embodiments. However, the illustrative discussion above is not intended to be exhaustive or to limit the invention to the precise forms disclosed. In view of the foregoing teachings, many modifications and variations are possible. The embodiments were chosen and described in order to best explain the principles of the invention and its practical application, thereby enabling others skilled in the art to best utilize the invention and its various embodiments, and to make various modifications thereto, to suit the particular purpose contemplated.
Claims
1. A robot assistant, characterized in that, include: Wheel base; A storage unit includes a drawer mechanism, the drawer mechanism comprising one or more drawers; A foldable arm, including an arm-end tool attached to the distal end of the foldable arm, the foldable arm being connected to the top of the drawer mechanism of the storage unit; A lifting mechanism positioned on the wheel base is configured to move the drawer mechanism of the storage unit up and down; A control system receiving a command instruction, in response to the command instruction, is configured to: move the wheeled base, after the wheeled base moves the drawer mechanism to a determined first position and determines the accessibility to an external object to be picked up at a determined second position, open one or more drawers or control the lifting mechanism to move the drawer mechanism upward to a determined height, drive the movement of the foldable arm and end-of-arm tool to pick up the external object from the determined second position, drive the foldable arm according to foldable arm parameters corresponding to a reference accessibility to place the external object into the opened one or more drawers, and control the storage unit to drive the one or more drawers, wherein the reference accessibility is the ratio of the volume that the end-of-arm tool of the foldable arm can reach inside the opened one or more drawers to the total volume of the internal space of the opened one or more drawers; and The control system is configured to instruct the actuating feet, which are connected to the wheel base, to move downwards to contact a surface, thereby disengaging the wheel base from the surface and increasing the accessibility of the foldable arm.
2. The robot assistant as described in claim 1, characterized in that, The lifting mechanism includes an actuator and a lifting mechanism connected to the storage unit and the wheel base. The actuator is fixed to the wheel base and configured to drive the lifting mechanism to extend or retract in the vertical direction. After the lifting mechanism moves the drawer mechanism upward to a predetermined height, the control system is also configured to control the lifting mechanism to move the drawer mechanism downward to an original lowered position during the process of placing an external object into the one or more opened drawers.
3. The robot assistant as described in claim 1, characterized in that, The storage unit includes a housing and one or more drive devices configured to drive the one or more drawers to slide relative to the housing to an open position and a closed position.
4. The robot assistant as described in claim 1, characterized in that, The foldable arm includes N links, M first rotary joints and one second rotary joint. The N links are rotatably connected in series with each other through the M first rotary joints. The first of the N links is rotatably connected to the top of the storage unit through the second rotary joint. N is a natural number greater than 2 and N = M + 1.
5. The robot assistant as described in claim 4, characterized in that, It also includes a camera configured to detect objects, and the control system instructs the foldable arm to be in a defined orientation and / or position via a connection of one or more of the N rotary joints and N links, and instructs the arm-end tool to pick up and place external objects into the one or more drawers according to the command instructions based on the output from the camera.
6. The robot assistant as described in claim 5, characterized in that, The camera is located on the foldable arm and close to the arm-end tool, or on / inside the arm-end tool.
7. The robot assistant as described in claim 1, characterized in that, It also includes an arm guard for protecting the foldable arm, which is fixed or retractable.
8. The robot assistant as described in claim 2, characterized in that, The actuator is a linear actuator configured to apply a thrust or pull force to the lifting mechanism to drive the lifting mechanism to extend or retract in the vertical direction.
9. The robot assistant as described in claim 1, characterized in that, The foldable arm is configured to fold onto the top of the storage unit in a generally flat state.
10. A robot assistant, characterized in that, include: Wheel base; Drawer mechanism including one or more drawers; A foldable arm connected to the top of the drawer mechanism includes an end-of-arm tool that, in response to a command, is configured to pick up an external object from a determined first position by actuation of the foldable arm and to place the external object to a determined second position by actuation of the foldable arm according to foldable arm parameters corresponding to a reference accessibility, wherein the determined second position is a position in the one or more drawers when fully opened, and the reference accessibility is the ratio of the volume within the one or more open drawers that the end-of-arm tool of the foldable arm can reach to the total volume of the interior space of the one or more open drawers; A lifting mechanism positioned on the wheeled base is configured to move the one or more drawers up and down. In response to the wheeled base moving the drawer mechanism to a determined third position and accessibility to an external object to be picked up at a determined first position, the lifting mechanism is configured to move the drawer mechanism up to a determined height. and A plurality of actuated feet are attached to the wheel base, and the control system is configured to instruct the actuated feet to move downward to contact a surface, thereby disengaging the wheel base from the surface and thus increasing the accessibility of the foldable arm.
11. The robot assistant as described in claim 10, characterized in that, The lifting mechanism includes an actuator and a lifting mechanism connected to the drawer mechanism and the wheel base. The actuator is fixed to the wheel base and configured to drive the lifting mechanism to extend or retract in the vertical direction. After the lifting mechanism moves the drawer mechanism upward to a predetermined height, the lifting mechanism is also configured to move the drawer mechanism downward to an original lowered position during the placement of the external object in the second position.
12. The robot assistant as described in claim 10, characterized in that, The drawer mechanism includes a housing and one or more drive mechanisms configured to drive one or more drawers to slide relative to the housing to an open position and a closed position.
13. The robot assistant as described in claim 10, characterized in that, The foldable arm includes N links, M first rotary joints and one second rotary joint. The N links are rotatably connected in series with each other through the M first rotary joints. The first of the N links is rotatably connected to the drawer mechanism through the second rotary joint. N is a natural number greater than 2 and N = M + 1.
14. The robot assistant as described in claim 13, characterized in that, It also includes a camera configured to detect objects, a control system instructing the foldable arm to be in a defined orientation and / or position via a connection of one or more of the N rotary joints and N links, and instructing the arm-end tool to pick up and place external objects from the one or more drawers according to the command instructions based on the output from the camera.
15. The robot assistant as described in claim 14, characterized in that, The camera is located on the foldable arm and close to the arm-end tool, or on / inside the arm-end tool.
16. The robot assistant as described in claim 10, characterized in that, The foldable arm is configured to fold in a substantially flat state on top of the drawer mechanism.
17. A robot assistant, characterized in that, include: Wheel base; Storage unit, including one or more drawers; A foldable arm includes an arm-end tool attached to the distal end of the foldable arm, the foldable arm being connected to the top of the storage unit, the arm-end tool being configured to pick up an external object from a determined first position by actuation of the foldable arm, and to place the external object to a determined second position by actuation of the foldable arm according to foldable arm parameters corresponding to reference accessibility. A lifting mechanism positioned on the wheeled base is configured to move one or more drawers of the storage unit up and down in response to the wheeled base moving the storage unit to a determined third position and accessibility to an external object to be picked up at a determined first position. The lifting mechanism is also configured to move the storage unit upward to a determined height, wherein the reference accessibility is the ratio of the volume within the one or more drawers that the end-effector of the foldable arm can reach to the total volume of the interior space of the one or more drawers. and A plurality of actuated feet are attached to the wheel base, and the control system is configured to instruct the actuated feet to move downward to contact a surface, thereby disengaging the wheel base from the surface and thus increasing the accessibility of the foldable arm.
18. The robot assistant as described in claim 17, characterized in that, The lifting mechanism includes an actuator and a lifting mechanism connected to the storage unit and the wheel base. The actuator is fixed to the wheel base and configured to drive the lifting mechanism to extend or retract in the vertical direction. After the lifting mechanism moves the storage unit upward to a predetermined height, the lifting mechanism is also configured to move the storage unit downward to an original lowered position during the placement of the external object in the second position.