Robot elevator taking method, taking device, robot and computer program product
By setting up robot arms and sensors on the robot, independent interaction with the elevator is achieved, the problem of insufficient communication docking of elevators is solved, the interaction efficiency and applicability between the robot and the elevator is improved, and the deployment cost is reduced.
Patent Information
- Application Number
- CN202411571783.9
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2024-11-06
- Publication Date
- 2024-12-31
- Estimated Expiration
- 2044-11-06
AI Technical Summary
In the prior art, robots rely on communication between elevators and elevator control systems during cross-floor tasks, resulting in many elevators lacking the docking function with robots, requiring system transformation, increasing deployment costs, and elevator manufacturers and users are unwilling to open the communication interface. , reducing the scenario applicability of the robot.
The robot is equipped with a robot arm and sensor for interacting with the elevator button. By detecting the elevator information and calculating the operating point of the press button, it realizes independent elevator rides, avoids signal communication with the elevator, and reduces the need for transformation.
It improves the accuracy and efficiency of interaction between the robot and the elevator, reduces deployment costs, enhances the scenario applicability of the robot, avoids redundant actions, and improves the success rate of entering and exiting the elevator.
Smart Images

Figure CN119217342A_ABST
Abstract
Description
Technical Field
[0001] The present application belongs to the field of robot technology, and in particular, relates to a robot elevator riding method, a robot elevator riding device, a robot and a computer program product. Background Art
[0002] In related technologies, when a robot performs a cross-floor task, it generally communicates with the elevator through the elevator control system to take the elevator. When the robot reaches the elevator door, the robot communicates with the elevator control system, and the elevator control system sends a control command to the elevator, so that the elevator reaches the floor where the robot is located and opens the elevator door through robot communication, and keeps the elevator door open. After the robot enters the elevator, the door closes and goes to the target floor; after arriving at the target floor, according to the robot's communication command, the elevator control system opens the elevator door and closes the door after the robot leaves the elevator, thereby assisting the robot in completing the task.
[0003] Obviously, this solution relies on the communication between the elevator and the elevator control system, and needs to open up the elevator protocol to communicate with the robot. However, many elevators do not have the function of communicating with the robot, which requires the elevator system to be modified. However, the cost of modification is high, and different elevators require different adaptations, and the cost of robot deployment is high. In addition, not all elevator manufacturers and elevator users are willing to open elevator information communications to third parties, which may directly lead to the robot being unable to take the elevator, reducing the robot's applicability in scenarios. Summary of the invention
[0004] The present application provides a robot elevator riding method, a robot elevator riding device, a robot and a computer program product, which can make the interaction between the robot and the elevator more accurate and smooth, thereby improving the efficiency of elevator riding; in addition, the robot does not need to communicate with the elevator during the entire process, so there is no need to modify the elevator, which can improve the robot's applicability in different scenarios.
[0005] In a first aspect, the present application provides a robot elevator riding method, wherein the robot is provided with a mechanical arm for interacting with an elevator button, and the mechanical arm is provided with a sensor for detecting elevator information; the robot elevator riding method comprises:
[0006] In the process of performing cross-floor tasks, when the robot moves to the preset position, the robot arm is controlled to move from the safety point to the first detection point;
[0007] At a first detection point, first state information of the elevator is detected based on a sensor, where the first state information includes button information;
[0008] Calculating a first operation point corresponding to pressing a target button based on the first state information and the first detection point; matching the target button with task information of the cross-floor task;
[0009] Controlling the robot arm to move to a first operating point to press a target button;
[0010] After the target button is activated successfully, the user takes the elevator based on the second state information of the elevator; the second state information is detected by a sensor installed on the robot.
[0011] In a second aspect, the present application provides a robot elevator riding device, the robot is provided with a mechanical arm for interacting with an elevator button, and the mechanical arm is provided with a sensor for detecting elevator information; the riding device comprises:
[0012] A first control module is used to control the robot arm to move from a safe point to a first detection point when the robot moves to a preset position during the execution of a cross-floor task; a detection module is used to detect first state information of the elevator based on a sensor at the first detection point, where the first state information includes button information;
[0013] A calculation module, configured to calculate a first operation point corresponding to pressing a target button based on the first state information and the first detection point; the target button is matched with task information of a cross-floor task;
[0014] An interaction module, used to control the robot arm to move to a first operation point to press a target button;
[0015] The second control module is used to take the elevator based on the second state information of the elevator after the target button is successfully activated; the second state information is detected by the sensor installed on the robot.
[0016] In a third aspect, the present application provides a robot comprising a memory, a processor, and a computer program stored in the memory and executable on the processor, wherein the processor implements the steps of the method of the first aspect when executing the computer program.
[0017] In a fourth aspect, the present application provides a computer-readable storage medium, wherein the computer-readable storage medium stores a computer program, and when the computer program is executed by a processor, the steps of the method of the first aspect are implemented.
[0018] In a fifth aspect, the present application provides a computer program product, which includes a computer program. When the computer program is executed by one or more processors, it implements the steps of the method of the first aspect.
[0019] Compared with the prior art, the present application has the following beneficial effects: in order to effectively simulate the interaction between people and elevators, the robot is provided with a mechanical arm, and a sensor is provided on the mechanical arm. When the robot moves to the preset position, the mechanical arm is in a safe position, which can improve the safety of the robot's operation. When taking the elevator, the robot moved to the preset position can divide the interaction process into detection and operation stages, thereby improving the operability of the robot's interaction with the elevator. In the detection stage, the robot's mechanical arm moves from the safe position to the first detection point, and obtains the first state information including the effective button information of taking the elevator efficiently and in real time through the sensor, and can accurately calculate the operation point of pressing the target button to improve the reliability of the operation point; in the operation stage, the mechanical arm moves from the first detection point to the operation point, and accurately presses the target button, which can improve the probability of the robot pressing the button to successfully call the elevator / take the elevator. After the target button is activated, taking the elevator based on the second state information can improve the success rate of the robot entering / exiting the elevator. The setting of three points in two stages in this method avoids redundant actions in the process of interaction between the robot and the elevator, making the interaction between the robot and the elevator more accurate and smooth, thereby effectively improving the efficiency of taking the elevator. In addition, there is no need for the robot to communicate signals with the elevator during the entire process, so there is no need to modify the elevator, which can effectively ensure the robot's applicability in different scenarios.
[0020] It can be understood that the beneficial effects of the second to fifth aspects mentioned above can be found in the relevant description of the first aspect mentioned above, and will not be repeated here. BRIEF DESCRIPTION OF THE DRAWINGS
[0021] In order to more clearly illustrate the technical solutions in the embodiments of the present application, the drawings required for use in the embodiments or the description of the prior art will be briefly introduced below. Obviously, the drawings described below are only some embodiments of the present application. For ordinary technicians in this field, other drawings can be obtained based on these drawings without paying any creative work.
[0022] Figure 1 is a schematic diagram of the physical structure of the robot provided in the embodiment of the present application;
[0023] Figure 2 It is a flowchart of a robot elevator riding method provided in an embodiment of the present application;
[0024] Figure 3 It is a structural schematic diagram of a robot elevator riding device provided in an embodiment of the present application;
[0025] Figure 4 It is a schematic diagram of the structure of the robot provided in the embodiment of the present application. DETAILED DESCRIPTION
[0026] In the following description, specific details such as specific system structures, technologies, etc. are provided for the purpose of illustration rather than limitation, so as to provide a thorough understanding of the embodiments of the present application. However, it should be clear to those skilled in the art that the present application may also be implemented in other embodiments without these specific details. In other cases, detailed descriptions of well-known systems, devices, circuits, and methods are omitted to prevent unnecessary details from obstructing the description of the present application.
[0027] In the related technology, the robot riding the elevator depends on the communication between the elevator and the elevator control system, and the compatibility of the elevator protocol and the robot communication needs to be achieved. However, many existing elevators lack the function of docking and communicating with robots, and system modifications must be carried out. This not only increases the cost of modification and deployment, but also involves the issue of whether elevator manufacturers and users are willing to open the elevator communication interface to third parties. In this case, the robot may not be able to ride the elevator, which reduces its scenario applicability and application scope.
[0028] In order to solve this problem, this application proposes a robot elevator riding method, which enables the robot to actively interact with the elevator, and the interactive actions are accurate and smooth, which can effectively improve the efficiency of elevator riding. In addition, the robot does not need to communicate with the elevator during the whole process, so there is no need to modify the elevator, which can improve the scene applicability of the robot. The control method proposed in this application will be described below through specific embodiments.
[0029] The robot elevator riding method provided in the embodiment of the present application can be applied to a robot, which is provided with a mechanical arm for interacting with an elevator button, and a sensor for detecting elevator information is provided on the mechanical arm. The elevator riding method can also be applied to an electronic device that can establish a communication connection with the robot and control the robot based on the communication connection, or a cloud server, etc. For example, mobile phones, tablet computers, vehicle-mounted devices, augmented reality (AR) / virtual reality (VR) devices, laptops, ultra-mobile personal computers (UMPC), netbooks, personal digital assistants (PDA) and other electronic devices. The embodiment of the present application does not impose any restrictions on the specific type of electronic devices.
[0030] In some embodiments, see Figure 1 , Figure 1A schematic diagram of the structure of a robot 100 is shown. For the sake of convenience, only the parts related to the present application are shown in the figure. The robot 100 includes a body 110, a first sensor 111 is arranged on the body 110, and a mechanical arm 120 is arranged on both sides of the body 110. Each mechanical arm 120 includes a mechanical arm end 121 and a second sensor 122 arranged on the mechanical arm.
[0031] Among them, the first sensor 111 is mainly used to detect the surrounding environmental information, so that the robot 100 can achieve collision-free movement based on the environmental information; the second sensor 122 is mainly used to detect the elevator information, so that the robot 100 can interact with the elevator by controlling the mechanical arm 120 to achieve the elevator ride; the first sensor 111 can also be used to assist the second sensor 122 in detecting the elevator information. Exemplarily, the first sensor 111 and the second sensor 122 can both be image sensors. The second sensor 122 can be a stereoscopic vision image sensor. The mechanical arm has a large movable range. By setting two mechanical arms 120, no matter which side of the robot 100 the elevator button is on, the robot can control the mechanical arm 120 on the side adjacent to the elevator button to move within a certain distance without moving as much as possible, so as to detect the button information according to the corresponding second sensor 122, and then control the mechanical arm end 121 to press the target button based on the button information.
[0032] In order to illustrate the technical solution proposed in this application, each embodiment will be described below using a robot with the above-mentioned structure as the execution subject.
[0033] Figure 2 A schematic flow chart of a robot elevator riding method provided by the present application is shown, and the robot elevator riding method includes:
[0034] Step 210: During the execution of the cross-floor task, when the robot moves to a preset position, the robot controls the mechanical arm to move from the safety point to the first detection point.
[0035] Step 220: At the first detection point, the robot detects first status information of the elevator based on the sensor.
[0036] When the robot performs cross-floor tasks, such as cleaning or delivery tasks across floors, it usually needs to take the elevator from the departure floor of the task to the arrival floor to complete the task. When the robot receives task information, such as delivering items to room 306, it can obtain its current location. If the robot is currently on the 1st floor, it can be determined that the task is a cross-floor task and needs to take the elevator to the 3rd floor. The corresponding elevator information is determined based on the task information. The robot can take the elevator based on the elevator information to successfully complete the cross-floor task. For example, when the robot needs to complete the delivery task on the 3rd floor on the 1st floor, it needs to call the elevator on the 1st floor and take the elevator to the 3rd floor in the elevator, pressing the elevator button twice.
[0037] When riding the elevator, the robot can first move to a preset position so that the robot can drive the mechanical arm to interact with the elevator. When the robot moves to the preset position, its mechanical arm is in a safe position. At the safe point, the mechanical arm is not likely to collide with other objects, which can effectively ensure the safety of the robot's movement.
[0038] For example, the safety point can be the default setting when the robot leaves the factory, or it can be set according to customer needs. Figure 1 As shown, the safety point can be when the mechanical arm is placed vertically on both sides of the robot. At this time, the robot's safety radius is small and it is not easy to collide during movement. That is, the mechanical arm is close to the robot body like a human arm. In this state, the mechanical arm is not easy to interfere with the outside world, which can effectively ensure the safety of the robot during movement.
[0039] Specifically, taking an elevator can be divided into two processes: calling the elevator and taking the elevator. In different processes, the robot can interact with different buttons of the elevator at different preset positions to realize calling the elevator or taking the elevator. The preset position can be a preset position near the elevator before the robot enters the elevator, such as the elevator calling point, or it can be a stop position of the robot during the elevator riding process after entering the elevator, such as the elevator riding point, etc. The preset position can be determined when the robot builds a map.
[0040] During the elevator call process, the robot can move to the first preset position in order to interact with the elevator call button (i.e., the up button or the down button) of the elevator. It can be understood that if the range of motion of the robot arm and the sensor detection range are large enough, for example, the robot can detect the elevator information through the sensor at the elevator waiting point of the target elevator and directly drive the robot arm to interact with the elevator call button, then the first preset position can be the elevator waiting point; if the range of motion of the robot arm is small, for example, the robot cannot directly drive the robot arm to interact with the elevator button at the elevator waiting point, then the first preset position can be the elevator call point. Compared with the elevator waiting point, the elevator call point is closer to the elevator button, and the elevator call point and the elevator waiting point are separated to achieve accurate elevator calling and safe elevator waiting.
[0041] During the elevator ride, the robot can move to a second preset position to interact with the elevator's floor buttons. The second preset position is the robot's elevator ride point in the elevator car.
[0042] In any process, the interaction between the robot and the elevator is roughly the same. Specifically, the robot's mechanical arm structure can be combined to divide the interaction between the robot and the elevator into a detection phase and an operation phase, which can improve the operability of the interaction between the robot and the elevator. In the detection phase, the robot can control the mechanical arm to move from a safe point to a first detection point; at this time, the robot issues a command for the sensor to detect the elevator button, and the robot can efficiently and accurately obtain the first state information of the elevator in real time through the sensor set on the mechanical arm. The first state information includes the button information required to take the elevator.
[0043] Exemplarily, the first detection point is to control the robot arm to move to a point where the sensor provided on the robot arm can obtain the first state information of the elevator. For example, it can be the point where the robot arm moves from vertically at the side of the robot to lifted and extended. Compared with the robot reaching the preset position and directly controlling the robot arm to press the button to call the elevator according to the set parameters, this embodiment detects and obtains the first state information in real time at the first detection point, which can more accurately obtain the state of the elevator, such as whether the elevator call button is already lit, and can make the subsequently calculated operation points more accurate, thereby improving the success rate of elevator calls.
[0044] Step 230: The robot calculates a first operation point corresponding to pressing the target button based on the first state information and the first detection point.
[0045] The robot can determine which target button the robot should interact with based on the current elevator process and the task information of the cross-floor task. For example, in the elevator call process, the robot can determine whether to press the up button or the down button based on the task information; in the elevator process, the robot can determine the arrival floor button corresponding to the arrival floor based on the task information. After determining the target button, the robot can calculate the first operation point corresponding to pressing the target button in real time based on the first state information and the first detection point, which can improve the reliability of the operation point, thereby increasing the probability of the robot pressing the button to successfully call the elevator / take the elevator.
[0046] Step 240: The robot controls the mechanical arm to move to the first operating point to press the target button.
[0047] After calculating the precise first operating point, during the operation phase, the robot can control the mechanical arm at the first detection point to move to the first operating point to press the target button.
[0048] In the two stages, by setting three points, the interaction between the robot and the elevator can be made more reliable, thereby effectively improving the efficiency of elevator riding. For example, the robot controls the mechanical arm to move to the first operation point, and the mechanical hand / claw at the end of the mechanical arm moves a predetermined distance d1 in a preset direction to complete the pressing of the target button. The first operation point can be set to a position d2 distance in front of the target button, and d2 is less than d1.
[0049] Step 250: After the target button is activated successfully, the robot takes the elevator based on the second state information of the elevator.
[0050] If the target button is activated successfully, it means that the robot has completed the interaction with the target button through the aforementioned steps. At this time, the robot can detect the second state information of the elevator through the sensors installed on itself, such as the sensors set on the robotic arm or other sensors configured by the robot. Taking the elevator through the second state information can improve the success rate of the robot entering / exiting the elevator.
[0051] In this embodiment, the robot is modified by the structure, and a mechanical arm equipped with a sensor is set, which can effectively simulate the interaction between people and elevators and realize autonomous elevator riding. In any elevator riding process, the robot can first move to a preset position, and drive the mechanical arm to move from a safe point to a first detection point to efficiently and accurately detect the first state information of the elevator, and the first state information includes the button information required for taking the elevator. Based on the button information and the task information of the cross-floor task, the robot can determine the corresponding target button; thus, the robot can determine the corresponding first operation point according to the first detection point and the first state information; the robot can accurately press the target button by controlling the mechanical arm to move from the first detection point to the first operation point. After the target button is activated, the robot rides the elevator based on the second state information detected in real time, which can improve the success rate of the robot entering / exiting the elevator. In the entire elevator riding process, there is no need for the robot to communicate signals with the elevator, so there is no need to modify the elevator, which can effectively ensure the scene applicability of the robot.
[0052] In some embodiments, in order to accurately calculate the first operating point, the aforementioned step 230 specifically includes:
[0053] Step A1: The robot calculates the first pose transformation matrix between the target button and the sensor based on the relative position information.
[0054] The first state information includes the relative position information between the target button and the sensor. Therefore, the robot can establish a reference system based on the sensor, and calculate the first pose transformation matrix from the position of the target button to the position of the sensor based on the relative position information, which can be expressed as
[0055] Step A2: The robot obtains a second posture transformation matrix between the end of the robotic arm and the robot's calibrated position corresponding to when the robotic arm is at the first detection point.
[0056] It is known that the robot is at the first detection point. Therefore, the robot can obtain the second posture transformation matrix at this point, which converts the position of the end of the manipulator to the robot's calibration position, which can be recorded as Usually, the robot's calibrated position is a position that is relatively difficult to change, such as the center of the robot base or the center of the robot body. Using these positions as reference points, the robot can control the movement of the robotic arm more accurately. Can be calibrated in advance.
[0057] Step A3: The robot calculates the first operating point based on the first posture transformation matrix, the second posture transformation matrix, and the third posture transformation matrix between the end of the robot arm and the sensor.
[0058] At the first detection point, the position between the end of the robotic arm and the sensor is relatively fixed. Therefore, the robot can also obtain the third posture transformation matrix from the sensor to the position of the end of the robotic arm, which can be recorded as Can be calibrated in advance.
[0059] For example, it is assumed that the sensor installed on the robot arm is a stereoscopic vision sensor, which is specifically set at the end of the robot arm near the flange. The position between the two is relatively fixed. Based on this, the distance from the center of the sensor detection to the robot hand / claw at the end of the robot arm can be determined in advance by calibration. The calibration is similar to that of , which will not be described here.
[0060] When calculating, directly and Used as a parameter, the posture transformation matrix corresponding to the first operating point can be efficiently calculated.
[0061] In order to facilitate the robot to drive the end of the mechanical arm to press the target button, the position of the target button can be converted to the coordinate system established by the robot calibration position through three posture transformation matrices. Specifically, the posture transformation matrix corresponding to the first operation point is The calculation formula is as follows:
[0062]
[0063] The first pose transformation matrix defines the position of the target button relative to the sensor, but this is still different from the reference frame of the robot. The second pose transformation matrix converts the reference frame of the end of the robot to the reference frame of the robot's calibrated position. The third pose transformation matrix aligns the sensor and the end of the robot to ensure the uniformity of the final operation.
[0064] Exemplarily, to prevent the manipulator / claw from deviating from the target button, ensure that the direction of the manipulator / claw is always perpendicular to the plane where the target button is located. For example, the posture transformation matrix of the first operating point not only contains the position information of the target button, but also takes into account the relative posture of the target button and the manipulator / claw. The "vertical" rotation amount ensures that the contact surface of the manipulator / claw is parallel to the button surface, ensuring that the button can respond accurately when pressed, and avoiding operational errors due to angle deviation.
[0065] Exemplarily, the posture transformation matrix of the first operating point can be divided into two parts: the first part makes the direction of the manipulator / claw perpendicular to the plane where the target button is located; on this basis, the second part can make the manipulator / claw accurately align with the target button through a single-dimensional linear motion to achieve precise pressing.
[0066] In this embodiment, the robot can effectively ensure the accuracy of the robot's operation by combining multiple posture transformations, because each posture transformation matrix provides an accurate description of the position information and posture. Through multiple combinations, the measurement error of a single data source can be eliminated, and the compensation of multiple small-range errors can be accumulated. In addition, different posture matrices can bring together the coordinate system between the sensor, the end of the robotic arm, and the calibration point to ensure the coordination of each part during the operation and avoid error accumulation. Multiple transformations can also adapt to complex scenes and dynamic changes, allowing the robot to update and correct the first operating point in real time, so that the pressing operation can achieve higher accuracy and stability.
[0067] In some embodiments, if the first detection point is set unreasonably or the robot positioning is deviated, the robot may not be able to obtain all the button information and operation information of the elevator through the sensor at the first detection point. To deal with this situation, the robot can loop through the following steps until the complete first state information is obtained:
[0068] Step B1: The robot determines whether the sensor detects complete first state information.
[0069] In some special cases, such as when the first detection point is close to the elevator button, or when there are many elevator floors, resulting in a large space occupied by the elevator buttons, it is difficult for the robot to obtain complete first state information through only one detection. In order to reduce the impact of this situation on the robot's elevator riding efficiency, the robot can determine whether the first state information obtained is complete.
[0070] Optionally, in view of the fact that not all button information and operation information are useful during the elevator ride, in order to improve the efficiency of elevator ride, when the robot determines whether the first state information is complete, it can make a judgment based on whether the currently acquired first state information contains the button information and operation information required for the current elevator ride.
[0071] Step B2: If the complete first state information is not detected, the robot updates the first detection point based on the partial first state information and the elevator information.
[0072] If it is determined that the complete first state information is not obtained, the robot can determine a new first detection point corresponding to the missing first state information based on the elevator information, such as the arrangement information of the elevator buttons and the operation information on the elevator, to update the first detection point. For example, when the robot needs to obtain the position of the up button, and can only capture the down button and part of the up button at the first detection point, the robot can determine that the up button is not completely captured based on the result of image recognition, and move the robot arm to the new first detection point based on the captured part of the up button position to obtain the complete information of the up button.
[0073] Step B3: The robot controls the mechanical arm to move to the updated first detection point to complete the first state information.
[0074] After updating the detection point, the robot can control the robot arm to move to the updated first detection point to detect part or all of the missing first state information. After re-detection, the detection results of each detection can be integrated to obtain the corresponding first state information. Based on the integrated first state information, the robot can return to execute step B1 until the complete first state information is obtained.
[0075] In this embodiment, after obtaining the first state information, the robot can determine whether the first state information is complete. In the case of incomplete first state information, in order to avoid the lack of effective information required for taking the elevator and reduce the occurrence of elevator failures, the robot can determine a new first detection point in combination with the first state information and the elevator information. By updating the first detection point and re-detecting, the complete first state information can be obtained. Based on this method, the elevator taking method of the present application can be applied to elevators of different structures, and the influence of robot positioning deviation on elevator taking can be reduced, thereby improving the practicality and reliability of the elevator taking method of the present application.
[0076] In some embodiments, in order to further ensure the reliability and safety of taking the elevator, after controlling the mechanical arm to move to the first operating point and pressing the corresponding target button, the following steps are further included:
[0077] Step C1: The robot controls the mechanical arm to move to the first detection point and detects the button information again.
[0078] After pressing the target button once through the end of the robot arm, in order to avoid the target button activation failure due to inaccurate operation or insensitive target button, the robot can control the robot arm to move from the first operation point to the first detection point and detect the button information again. Through the button information, especially the target button information, the robot can determine whether the target button is activated successfully, for example, whether the target button is successfully lit.
[0079] Step C2: If it is determined based on the button information that the target button has been activated, the robot controls the robotic arm to reset to a safe point.
[0080] When the target button is determined to be activated according to the button information, the robot can determine that the interaction between the end of the robotic arm and the target button is successful and can execute the subsequent elevator riding steps. In order to ensure the safety during the elevator riding process, the robot can control the robotic arm to reset from the first detection point to the safety point.
[0081] It can be understood that, when it is determined according to the button information that the target button is not activated, the robot can return to execute the aforementioned 230 and 240, and then execute the steps of this embodiment again until it is determined that the target elevator button is activated.
[0082] In the embodiment of the present application, after the robot controls the end of the mechanical arm to press the target button, in order to ensure that the target button is activated, the robot can control the mechanical arm to move to the first detection point, obtain the button information, and determine whether the target button is activated according to the button information to determine whether to loop the step of interacting with the target button or the subsequent steps to ensure that the robot can smoothly take the elevator. In addition, when it is determined that the target button has been activated, the robot can control the mechanical arm to reset to a safe point in order to avoid collision during the process of entering / exiting the elevator.
[0083] In some embodiments, in some cases, the target button that the robot wants to activate may have been activated before the robot interacts with the target button. In order to reduce useless operations, the robot may first determine whether the target button has been activated before executing step 230. If it is activated, step 250 may be executed directly; if it is not activated, step 230 and its subsequent steps may be executed.
[0084] In some embodiments, when the robot is currently on the departure floor, the robot may go to the elevator call point corresponding to the elevator on the departure floor. The target button is a target elevator call button that matches the running direction from the departure floor to the arrival floor. For example, if the departure floor is the 5th floor and the arrival floor is the 7th floor, then the target elevator call button is the up button. After the robot successfully activates the target elevator call button through the detection phase and the operation phase, the robot may perform the following steps:
[0085] Step D1, control the robot to move to the elevator waiting point.
[0086] Step D2: When the robot moves to the elevator waiting point, it obtains the second state information.
[0087] After the robot successfully activates the target elevator call button at the elevator call point, in order to facilitate efficient entry into the elevator, the robot can move to the elevator waiting point. Exemplarily, the elevator waiting point can be a set distance directly in front of the target elevator. After moving to the elevator waiting point, the robot can obtain the second state information of the elevator in order to enter the elevator in time after the elevator reaches the current floor and opens the door. The second state information is mainly used to determine whether the elevator has reached the current floor, such as the elevator door state information. The first detection point can also be used to determine whether the elevator running direction is consistent with the direction corresponding to the target elevator call button, which may include the elevator door state information and the first backlight panel state change of the target elevator call button.
[0088] For example, the robot at the elevator waiting point can drive the mechanical arm to move to the second detection point to obtain the second state information through the sensor on the mechanical arm. It can be understood that the robot obtains the second state information in this way, so before entering the elevator, in order to avoid the mechanical arm colliding with the elevator, the robot can first control the mechanical arm to reset to a safe point before entering the elevator.
[0089] Exemplarily, the robot may also obtain the second state information through a sensor installed on the robot body, or communicate with other robots to obtain the second state information.
[0090] Step D3: When the elevator door status information indicates that the elevator door is open and the first backlight panel status changes from bright to dark, the robot moves from the elevator waiting point to the elevator boarding point in the elevator car.
[0091] When the elevator reaches the current floor, the elevator door will open, so whether the elevator has reached the current floor can be determined based on whether the elevator door is open. At the same time, if the elevator's running direction is consistent with the target elevator call button, the first backlight panel will change from bright to dark. For example, if the target elevator call button is the up button and the elevator's running direction is up, after the elevator reaches the current floor, the first backlight panel of the up button changes from bright to dark. Based on this, if the elevator door opens and the first backlight panel changes from bright to dark, the robot can move to the elevator boarding point in the elevator car to take the elevator to the destination floor.
[0092] In this embodiment, the robot that moves to the elevator waiting point can determine whether the elevator has reached the current floor and whether the current running direction of the elevator is consistent with the direction corresponding to the target elevator call button by acquiring the second state information of the elevator. When it is determined that both conditions are met based on the changes in the state of the elevator door and the state of the first backlight panel, the robot can enter the elevator to take the elevator to the destination floor.
[0093] In some embodiments, after the robot enters the elevator, it can move to the elevator boarding point, and the target button is the arrival floor button corresponding to the arrival floor. For example, if the robot wants to go from the 8th floor to the 3rd floor, the 3rd floor is the arrival floor button. After the robot successfully activates the arrival floor button through the detection phase and the operation phase, the robot can perform the following steps:
[0094] Step E1: When the elevator door status information indicates that the elevator door is open and the state of the second backlight panel changes from bright to dark, the robot moves out of the elevator.
[0095] If the elevator has reached the arrival floor, the second backlight panel of the arrival floor button will change from bright to dark, and the elevator door will open. Based on this, if the elevator door status information of the second status information and the second backlight panel status change meet both conditions, it means that the elevator has reached the arrival floor, and the robot can move from the boarding point in the elevator car to the ground of the arrival floor, which also means that the robot has completed an elevator ride.
[0096] It can be understood that the aforementioned departure floor and arrival floor correspond to each other.
[0097] For example, if the task is to deliver items from the 5th floor to the 9th floor, and the robot is on the 3rd floor when receiving the delivery task, then the robot needs to take the elevator twice to complete the delivery task. The first departure floor is the 3rd floor and the arrival floor is the 5th floor; the second departure floor is the 5th floor and the arrival floor is the 9th floor. However, if the robot is on the 5th floor when receiving the delivery task, then the robot can complete the delivery task by taking the elevator once, and the corresponding departure floor is the 5th floor and the arrival floor is the 9th floor.
[0098] In some instances, under some special circumstances, such as too many people in the elevator, the robot may not be able to move for a period of time, or the elevator door tends to close during the robot's movement. In these cases, the robot will not be able to leave the elevator smoothly. In order to shorten the time it takes for the robot to take the elevator, the robot can exit the elevator through the following steps:
[0099] Step F1: When the floor information matches the arrival floor, and the state of the first backlight panel changes from bright to dark, and the robot does not complete the exit within the first preset time period, the robot calculates the second operation point of the door opening button according to the door opening button information and the first detection point.
[0100] When the robot determines that the conditions for exiting the elevator are met based on the second state information, if the robot cannot successfully exit the elevator within the first preset time period, the robot can activate the door opening button to extend the elevator opening time so as to exit the elevator smoothly and efficiently. The first preset time period is less than or equal to the single command door opening time of the elevator.
[0101] Specifically, the robot's interaction with the door opening button may also include a detection phase and an operation phase. Considering that the robot may have obtained the information of the door opening button when pressing the floor arrival button, in this case, the detection phase may be skipped, and the second operation point of pressing the door opening button may be directly calculated based on the door opening button information and the first detection point.
[0102] Step F2: The robot controls the mechanical arm to move to the second operating point and long presses the door opening button.
[0103] Step F3: When the sensor detects that the elevator door has an opening trend within the second preset time period, the robot controls the mechanical arm to move to a safe point and then completes the exit from the elevator.
[0104] After calculating the second operating point, the robot can drive the mechanical arm to move to the second operating point and press and hold the door opening button. During the pressing process, if the robot detects that the elevator has an opening trend through the sensor within the second preset time period, in order to ensure the safety of exiting the elevator, the robot can first control the mechanical arm to reset to a safe point before leaving the elevator.
[0105] In this embodiment, if the robot cannot leave the elevator within the first preset time period, the elevator door may be closed. In order to shorten the time required to take the elevator, the robot can interact with the door opening button. After the door opening button successfully opens the elevator door again, the robot first controls the robotic arm to reset to a safe point to ensure its own safety before leaving the elevator.
[0106] In some embodiments, if based on the embodiments of steps F1 to F3, the robot still fails to leave the elevator and reach the safe floor, the robot can drive the mechanical arm to interact with the arrival floor button again, activate the arrival floor button again, and leave the elevator after the elevator reaches the arrival floor again and opens the door.
[0107] It should be understood that the size of the serial numbers of the steps in the above embodiments does not mean the order of execution. The execution order of each process should be determined by its function and internal logic, and should not constitute any limitation on the implementation process of the embodiments of the present application.
[0108] Corresponding to the robot elevator riding method of the above embodiment, Figure 3 A structural block diagram of a robot ladder riding device 3 provided in an embodiment of the present application is shown. For ease of explanation, only the parts related to the embodiment of the present application are shown.
[0109] Reference Figure 3 , the robot elevator device 3 comprises:
[0110] The first control module 31 is used to control the robot arm to move from the safety point to the first detection point when the robot moves to a preset position during the execution of the cross-floor task;
[0111] A detection module 32, configured to detect first state information of the elevator based on a sensor at a first detection point, where the first state information includes button information;
[0112] The calculation module 33 is used to calculate the first operation point corresponding to pressing the target button based on the first state information and the first detection point; the target button is matched with the task information of the cross-floor task;
[0113] The interaction module 34 is used to control the robot arm to move to a first operation point to press a target button;
[0114] The second control module 35 is used to take the elevator based on the second state information of the elevator after the target button is successfully activated; the second state information is detected by the sensor installed on the robot.
[0115] Optionally, the first state information includes relative position information between the target button and the sensor; the calculation module 32 is specifically used for:
[0116] Calculate the first pose transformation matrix between the target button and the sensor based on the relative position information;
[0117] Obtaining a second posture transformation matrix between the end of the robotic arm and the robot calibration position corresponding to when the robotic arm is at the first detection point;
[0118] The first operating point position is calculated based on the first pose transformation matrix, the second pose transformation matrix, and the third pose transformation matrix between the end of the robotic arm and the sensor.
[0119] Optionally, the first state information also includes operation information of the elevator; the detection module 32 is specifically used for:
[0120] The following steps are executed repeatedly until the complete first state information is obtained:
[0121] determining whether the sensor detects complete first state information;
[0122] If the complete first state information is not detected, updating the first detection point based on the partial first state information and the elevator information;
[0123] The robot arm is controlled to move to the updated first detection point to improve the first state information.
[0124] Optionally, the robot elevator device 3 may include:
[0125] Control the robot arm to move to the first operation point, press the corresponding target button, control the robot arm to move to the first detection point, and detect the button information again;
[0126] If it is determined based on the button information that the target button has been activated, the robot arm is controlled to reset to a safe point.
[0127] Optionally, the preset position is a corresponding elevator call point when calling the elevator at the departure floor, and the target button is a target elevator call button that matches the running direction from the departure floor to the arrival floor; the second state information includes the elevator door state information and the first backlight panel state change of the target elevator call button; the second control module 35 can be used for:
[0128] Control the robot to move to the elevator waiting point;
[0129] When the robot moves to the elevator waiting point, it obtains the second state information;
[0130] When the elevator door status information indicates that the elevator door is open and the first backlight panel status changes from bright to dark, the robot moves from the elevator waiting point to the elevator boarding point in the elevator car.
[0131] Optionally, the preset position is a boarding point in the elevator car, the target button is an arrival floor button corresponding to the arrival floor; the second state information includes the elevator door state information and the second backlight state change of the arrival floor button; the second control module 35 can be used for:
[0132] When the elevator door status information indicates that the elevator door is open and the state of the second backlight panel changes from bright to dark, the robot moves out of the elevator.
[0133] Optionally, the first state information includes all elevator button information corresponding to the preset position; the second state information also includes the current floor information of the elevator; the second control module 35 can be used to:
[0134] When the floor information matches the arrival floor, and the state of the first backlight panel changes from bright to dark, and the robot does not complete the exit within the first preset time period, the second operation point of the door opening button is calculated according to the door opening button information and the first detection point;
[0135] Control the robot arm to move to the second operating point and long press the door opening button;
[0136] When the sensor detects that the elevator door has a tendency to open within the second preset time period, the robot controls the mechanical arm to move to a safe point and then completes the exit from the elevator.
[0137] It should be noted that the information interaction and execution process between the above-mentioned devices / units are based on the same concept as the method embodiment of the present application. Their specific functions and technical effects can be found in the method embodiment part and will not be repeated here.
[0138] Figure 4 This is a schematic diagram of the physical structure of a robot provided in one embodiment of the present application. Figure 4As shown, the robot 4 of this embodiment includes: at least one processor 40 ( Figure 4 Only one processor is shown in the figure), a memory 41, and a computer program 42 stored in the memory 41 and executable on at least one processor 40. When the processor 40 executes the computer program 42, the steps in any of the above-mentioned robot elevator riding method embodiments are implemented, for example Figure 2 Steps 210-250 are shown.
[0139] The processor 40 may be a central processing unit (CPU), or other general-purpose processors, digital signal processors (DSP), application-specific integrated circuits (ASIC), field-programmable gate arrays (FPGA) or other programmable logic devices, discrete gate or transistor logic devices, discrete hardware components, etc. A general-purpose processor may be a microprocessor or any conventional processor, etc.
[0140] In some embodiments, the memory 41 may be an internal storage unit of the robot 4, such as a hard disk or memory of the robot 4. In other embodiments, the memory 41 may also be an external storage device of the robot 4, such as a plug-in hard disk, a smart media card (SMC), a secure digital (SD) card, a flash card, etc., equipped on the robot 4.
[0141] Furthermore, the memory 41 may include both an internal storage unit and an external storage device of the robot 4. The memory 41 is used to store operating devices, application programs, boot loaders, data, and other programs, such as program codes of computer programs, etc. The memory 41 may also be used to temporarily store data that has been output or is to be output.
[0142] The technicians in the relevant field can clearly understand that for the convenience and simplicity of description, only the division of the above-mentioned functional units and modules is used as an example for illustration. In practical applications, the above-mentioned function allocation can be completed by different functional units and modules as needed, that is, the internal structure of the above-mentioned device can be divided into different functional units or modules to complete all or part of the functions described above. The functional units and modules in the embodiment can be integrated in a processing unit, or each unit can exist physically separately, or two or more units can be integrated in one unit. The above-mentioned integrated unit can be implemented in the form of hardware or in the form of software functional units. In addition, the specific names of the functional units and modules are only for the convenience of distinguishing each other, and are not used to limit the scope of protection of this application. The specific working process of the units and modules in the above-mentioned system can refer to the corresponding process in the aforementioned method embodiment, which will not be repeated here.
[0143] An embodiment of the present application further provides a computer-readable storage medium, which stores a computer program. When the computer program is executed by a processor, the steps in the above-mentioned method embodiments can be implemented.
[0144] An embodiment of the present application provides a computer program product. When the computer program product runs on a robot, the robot can implement the steps in the above-mentioned method embodiments when executing the computer program product.
[0145] If the integrated unit is implemented in the form of a software functional unit and sold or used as an independent product, it can be stored in a computer-readable storage medium. Based on this understanding, the present application implements all or part of the processes in the above-mentioned embodiment method, which can be completed by instructing the relevant hardware through a computer program. The above-mentioned computer program can be stored in a computer-readable storage medium, and the computer program can implement the steps of the above-mentioned various method embodiments when executed by the processor. Among them, the above-mentioned computer program includes computer program code, and the above-mentioned computer program code can be in source code form, object code form, executable file or some intermediate form. The above-mentioned computer-readable medium may at least include: any entity or device that can carry the computer program code to the camera / electronic device, recording medium, computer memory, read-only memory (ROM, Read-Only Memory), random access memory (RAM, Random Access Memory), electrical carrier signal, telecommunication signal and software distribution medium. For example, a USB flash drive, a mobile hard disk, a disk or an optical disk.
[0146] In the above embodiments, the description of each embodiment has its own emphasis. For parts that are not described or recorded in detail in a certain embodiment, reference can be made to the relevant descriptions of other embodiments.
[0147] Those of ordinary skill in the art will appreciate that the units and algorithm steps of each example described in conjunction with the embodiments disclosed herein can be implemented in electronic hardware, or a combination of computer software and electronic hardware. Whether these functions are performed in hardware or software depends on the specific application and design constraints of the technical solution. Professional and technical personnel can use different methods to implement the described functions for each specific application, but such implementation should not be considered to be beyond the scope of this application.
[0148] In the embodiments provided in the present application, it should be understood that the disclosed devices / network equipment and methods can be implemented in other ways. For example, the device / network equipment embodiments described above are merely schematic. For example, the division of the above modules or units is only a logical function division. There may be other division methods in actual implementation, such as multiple units or components can be combined or integrated into another system, or some features can be ignored or not executed. Another point is that the mutual coupling or direct coupling or communication connection shown or discussed can be through some interfaces, indirect coupling or communication connection of devices or units, which can be electrical, mechanical or other forms.
[0149] The units described above as separate components may or may not be physically separated, and the components shown as units may or may not be physical units, that is, they may be located in one place or distributed on multiple network units. Some or all of the units may be selected according to actual needs to achieve the purpose of the solution of this embodiment.
[0150] The above embodiments are only used to illustrate the technical solutions of the present application, rather than to limit them. Although the present application has been described in detail with reference to the aforementioned embodiments, a person skilled in the art should understand that the technical solutions described in the aforementioned embodiments may still be modified, or some of the technical features may be replaced by equivalents. Such modifications or replacements do not deviate the essence of the corresponding technical solutions from the spirit and scope of the technical solutions of the embodiments of the present application, and should be included in the protection scope of the present application.
Claims
1. A robot elevator riding method, characterized in that: The robot is provided with a mechanical arm for interacting with an elevator button, and the mechanical arm is provided with a sensor for detecting elevator information; the robot elevator riding method comprises: In the process of performing a cross-floor task, when the robot moves to a preset position, the robot arm is controlled to move from a safe point to a first detection point; At the first detection point, first state information of the elevator is detected based on the sensor, where the first state information includes button information; Calculating a first operation point corresponding to pressing a target button based on the first state information and the first detection point; matching the target button with the task information of the cross-floor task; Control the robotic arm to move to the first operating point and press the target button; After the target button is successfully activated, the elevator is taken based on second state information of the elevator; the second state information is detected by a sensor installed on the robot.
2. The robot elevator riding method according to claim 1, characterized in that: The first state information includes relative position information between the target button and the sensor; The calculating the first operation point corresponding to pressing the target button based on the first state information and the first detection point includes: Calculate a first pose transformation matrix between the target button and the sensor based on the relative position information; Obtaining a second posture transformation matrix between the end of the robotic arm and the robot calibration position corresponding to when the robotic arm is at the first detection point; The first operating point position is calculated based on the first posture transformation matrix, the second posture transformation matrix, and a third posture transformation matrix between the end of the robotic arm and the sensor.
3. The robot elevator riding method according to claim 1, characterized in that: The first state information also includes the operation information of the elevator; detecting the first state information of the elevator based on the sensor at the first detection point includes: The following steps are executed repeatedly until the first state information is completely obtained: determining whether the sensor detects complete first state information; If the complete first state information is not detected, updating the first detection point based on part of the first state information and the elevator information; The robotic arm is controlled to move to the updated first detection point to improve the first state information.
4. The robot elevator riding method according to claim 1, characterized in that: The controlling the mechanical arm to move to the first operating point and pressing the corresponding target button further includes: Controlling the robotic arm to move to the first detection point and detecting the button information again; If it is determined based on the button information that the target button has been activated, the robotic arm is controlled to reset to the safety point.
5. The robot elevator riding method according to any one of claims 1 to 4, characterized in that: The preset position is a corresponding elevator call point when calling the elevator at the departure floor, and the target button is a target elevator call button that matches the running direction from the departure floor to the arrival floor; the second state information includes elevator door state information and a first backlight panel state change of the target elevator call button; and taking the elevator based on the second state information of the elevator includes: Controlling the robot to move toward the elevator waiting point; When the robot moves to the elevator waiting point and obtains the second state information; When the elevator door status information indicates that the elevator door is open and the first backlight panel status changes from bright to dark, the robot moves from the elevator waiting point to the elevator boarding point in the elevator car.
6. The robot elevator riding method according to any one of claims 1 to 4, characterized in that: The preset position is a boarding point in the elevator car, the target button is an arrival floor button corresponding to the arrival floor; the second state information includes elevator door state information and a second backlight panel state change of the arrival floor button; and taking the elevator based on the second state information of the elevator includes: When the elevator door status information indicates that the elevator door is open and the state of the second backlight panel changes from bright to dark, the robot moves out of the elevator.
7. The robot elevator riding method according to claim 6, characterized in that: The first state information includes all elevator button information corresponding to the preset position; The second status information also includes the current floor information of the elevator; and taking the elevator based on the second status information of the elevator also includes: When the floor information matches the arrival floor, and the state of the first backlight panel changes from bright to dark, and the robot does not complete the exit within a first preset time period, a second operation point of the door opening button is calculated according to the door opening button information and the first detection point; Control the robotic arm to move to the second operating point, and long press the door opening button; When the sensor detects that the elevator door has an opening trend within the second preset time period, the robot controls the mechanical arm to move to the safety point and then completes the exit from the elevator.
8. A robot elevator device, characterized in that: The robot is provided with a mechanical arm for interacting with the elevator button, and the mechanical arm is provided with a sensor for detecting elevator information; the boarding device comprises: A first control module, used for controlling the robot arm to move from a safety point to a first detection point when the robot moves to a preset position during the execution of a cross-floor task; a detection module, used for detecting first state information of the elevator based on the sensor at the first detection point, wherein the first state information includes button information; A calculation module, configured to calculate a first operation point corresponding to pressing a target button based on the first state information and the first detection point; the target button is matched with task information of the cross-floor task; An interaction module, used to control the robot arm to move to the first operation point to press the target button; The second control module is used to take the elevator based on second status information of the elevator after the target button is successfully activated; the second status information is detected by a sensor installed on the robot.
9. A robot comprising a memory, a processor, and a computer program stored in the memory and executable on the processor, wherein: When the processor executes the computer program, the robot elevator riding method according to any one of claims 1 to 7 is implemented.
10. A computer program product, comprising a computer program, characterized in that When the computer program is executed by one or more processors, the robot elevator riding method according to any one of claims 1 to 7 is implemented.
Citation Information
Patent Citations
Intelligent robot for autonomously taking elevator and control method of intelligent robot
CN112591571A
Method for adjusting tail end pose of robot mechanical arm based on vision
CN114378822A
Intelligent service robot for autonomously operating box type elevator
CN114505840A
Wide-view-angle and high-precision robot elevator taking method in complex environment
CN117710463A
Elevator system linked with robot
KR1020100077920A
Cited By
Robot system
CN120503261A
Elevator assistance robot based on visual target positioning
CN120503261B