Robotic testing method, apparatus, system, and storage medium
Patent Information
- Application Number
- CN202311869937.8
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2023-12-29
- Publication Date
- 2026-09-18
- Estimated Expiration
- 2043-12-29
AI Technical Summary
[0004]本申请实施例提供了一种机器人测试方法、装置、系统及存储介质,能够解决现有对智能机器人的测试过程中,需要特定人员全程跟随,耗费人工的问题
[0041] By acquiring the business process data of the tasks performed by the target robot, and constructing an initial operating strategy for the target robot based on the business process data; constructing supplementary strategies based on different scenarios when the target robot performs tasks, and improving the initial operating strategy according to the supplementary strategies, the target operating strategy of the target robot is obtained; controlling the operation of the target robot based on the target operating strategy, and receiving message data of the target robot during operation; analyzing the status data of the target robot during operation based on the message data, and using the status data as the test result of the target robot. By constructing the operating strategy of the target robot through the business process data of the tasks performed by the target robot and the different scenarios when the target robot performs tasks, the robot can solve different problems in different scenarios on its own when performing tasks, so that no personnel are needed to track the robot on-site during testing, thus freeing up human resources; at the same time, by receiving the message data of the target robot during operation and analyzing the status data of the target robot during operation based on the message data, since the message data is generated by the data obtained by the target robot itself through various sensors, the parameters of the target robot during operation can be recorded more accurately compared with the method of personnel observing the status of the intelligent robot by viewing.
Smart Images

Figure CN117817717B_ABST
Abstract
Description
Technical Field
[0001] This application belongs to the field of robot testing technology, and in particular relates to robot testing methods, apparatus, equipment and storage media. Background Technology
[0002] Before intelligent robots are put into use, they need to be placed in real-world scenarios to test their performance. For example, before intelligent food delivery robots are put into use, they need to be placed in real-world food delivery scenarios to test their food delivery capabilities, obstacle avoidance capabilities, and ability to avoid scratches, among other performance characteristics.
[0003] In existing technologies, when testing intelligent robots in real-world scenarios, R&D personnel (testing personnel) need to accompany the robot and move alongside it to monitor its status in real time and evaluate its performance. Since the testing process requires specific personnel to be present throughout, it is labor-intensive. Furthermore, observing the robot's status through a specific person can lead to inaccurate performance evaluations due to the subjectivity of that person. Additionally, observing the robot's status through a specific person makes it difficult to accurately record the robot's parameters during operation. Summary of the Invention
[0004] This application provides a robot testing method, apparatus, system, and storage medium, which can solve the problem that existing testing processes for intelligent robots require specific personnel to accompany the robot throughout the process, resulting in high labor costs.
[0005] In a first aspect, embodiments of this application provide a robot testing method, including:
[0006] Obtain the business process data of the business performed by the target robot, and construct the initial operation strategy of the target robot based on the business process data;
[0007] Based on different scenarios in which the target robot performs business, supplementary strategies are constructed, and the initial operating strategy is improved according to the supplementary strategies to obtain the target operating strategy of the target robot;
[0008] The target robot is controlled to run based on the target operation strategy, and message data of the target robot during operation is received.
[0009] The status data of the target robot during operation is analyzed based on the message data, and the status data is used as the test result of the target robot.
[0010] Optionally, obtaining the business process data of the business performed by the target robot includes:
[0011] Obtain the business type information of the business performed by the target robot;
[0012] If the business type information meets the preset conditions, then the business process data of the business performed by the target robot is determined to include at least pickup, delivery, arrival and return.
[0013] If the business type information does not meet the preset conditions, then the step of constructing the initial operation strategy of the target robot based on the business process data is stopped.
[0014] Optionally, the step of constructing the initial operating strategy of the target robot based on the business process data includes:
[0015] By using a preset compilation environment and based on the business process data, the initial operating strategy of the target robot is constructed in the order of pickup, delivery, arrival and return.
[0016] Optionally, the step of constructing supplementary strategies based on different scenarios when the target robot performs business, and improving the initial operating strategy according to the supplementary strategies, includes:
[0017] Acquire historical scenario data of the robot when performing business, and determine different scenarios of the target robot when performing business based on the historical scenario data, including scratch / collision scenario, jamming scenario, insufficient battery scenario and excessively long delivery time scenario;
[0018] Supplementary strategies are constructed for the scratch / collision scenario, the jamming scenario, the insufficient battery scenario, and the excessively long delivery time scenario, respectively, to obtain a supplementary strategy set;
[0019] The initial running strategy is improved based on the supplementary strategy set.
[0020] Optionally, receiving message data from the target robot during its operation includes:
[0021] The target robot is controlled to collect its position information and point cloud data of its sensing components at a preset period, and the target robot is controlled to generate message data based on the position information and the point cloud data.
[0022] The preset node, set by the preset compilation environment, subscribes to the location information and point cloud data in the message data.
[0023] Optionally, analyzing the target robot's status data during operation based on the message data includes:
[0024] The location information and the point cloud data are matched by time to obtain a data pair including the location information and the point cloud data;
[0025] The obstacle location information is determined by the point cloud data in the data pair;
[0026] The target robot's status data during operation is determined by calculating the distance between the location information and the obstacle location information corresponding to the location information.
[0027] Optionally, the step of controlling the operation of the target robot based on the target operation strategy further includes:
[0028] Obtain user request information from the target user regarding the target robot;
[0029] The target operation strategy is updated based on the user request information to obtain the updated target operation strategy, and the target robot is controlled to operate based on the updated target operation strategy.
[0030] Secondly, embodiments of this application provide a robot testing apparatus, comprising:
[0031] The data acquisition module is used to acquire business process data of the business performed by the target robot, and to construct the initial operation strategy of the target robot based on the business process data;
[0032] The strategy improvement module is used to construct supplementary strategies based on different scenarios when the target robot performs business, and improve the initial operation strategy according to the supplementary strategies to obtain the target operation strategy of the target robot.
[0033] The control module is used to control the operation of the target robot based on the target operation strategy, and to receive message data of the target robot during operation;
[0034] The analysis module is used to analyze the status data of the target robot during operation based on the message data, and use the status data as the test result of the target robot.
[0035] Thirdly, embodiments of this application provide a testing system, including a robot under test and a testing device, wherein the testing device performs the robot testing method described in any one of the first aspects above to test the robot under test.
[0036] Fourthly, embodiments of this application provide a terminal device, including: a memory, a processor, and a computer program stored in the memory and executable on the processor, wherein the processor executes the computer program to implement the robot testing method described in any one of the first aspects above.
[0037] Fifthly, embodiments of this application provide a computer-readable storage medium storing a computer program that, when executed by a processor, implements the robot testing method as described in any one of the first aspects above.
[0038] Sixthly, embodiments of this application provide a computer program product that, when run on a terminal device, causes the terminal device to execute the robot testing method described in any one of the first aspects.
[0039] It is understood that the beneficial effects of the second to sixth aspects mentioned above can be found in the relevant descriptions in the first aspect mentioned above, and will not be repeated here.
[0040] The beneficial effects of the embodiments in this application compared with the prior art are:
[0041] By acquiring the business process data of the tasks performed by the target robot, and constructing an initial operating strategy for the target robot based on the business process data; constructing supplementary strategies based on different scenarios when the target robot performs tasks, and improving the initial operating strategy according to the supplementary strategies, the target operating strategy of the target robot is obtained; controlling the operation of the target robot based on the target operating strategy, and receiving message data of the target robot during operation; analyzing the status data of the target robot during operation based on the message data, and using the status data as the test result of the target robot. By constructing the operating strategy of the target robot through the business process data of the tasks performed by the target robot and the different scenarios when the target robot performs tasks, the robot can solve different problems in different scenarios on its own when performing tasks, so that no personnel are needed to track the robot on-site during testing, thus freeing up human resources; at the same time, by receiving the message data of the target robot during operation and analyzing the status data of the target robot during operation based on the message data, since the message data is generated by the data obtained by the target robot itself through various sensors, the parameters of the target robot during operation can be recorded more accurately compared with the method of personnel observing the status of the intelligent robot by viewing. Attached Figure Description
[0042] To more clearly illustrate the technical solutions in the embodiments of this application, the drawings used in the description of the embodiments or the prior art will be briefly introduced below. Obviously, the drawings described below are only some embodiments of this application. For those skilled in the art, other drawings can be obtained based on these drawings without creative effort.
[0043] Figure 1 This is a schematic diagram of a test system provided in an embodiment of this application;
[0044] Figure 2 This is a schematic flowchart of a robot testing method provided in an embodiment of this application;
[0045] Figure 3 This is a flowchart illustrating a robot testing method provided in another embodiment of this application;
[0046] Figure 4 This is a schematic diagram of the structure of a robot testing device provided in one embodiment of this application;
[0047] Figure 5 This is a schematic diagram of the structure of a terminal device provided in an embodiment of this application;
[0048] Figure 6 This is a schematic diagram of the structure of a computer-readable storage medium provided in an embodiment of this application. Detailed Implementation
[0049] In the following description, specific details such as particular system architectures and techniques are set forth for illustrative purposes and not for limitation, in order to provide a thorough understanding of the embodiments of this application. However, those skilled in the art will understand that this application may also be implemented in other embodiments without these specific details. In other instances, detailed descriptions of well-known systems, apparatuses, circuits, and methods have been omitted so as not to obscure the description of this application with unnecessary detail.
[0050] It should be understood that, when used in this application specification and the appended claims, the term "comprising" indicates the presence of the described features, integrals, steps, operations, elements and / or components, but does not exclude the presence or addition of one or more other features, integrals, steps, operations, elements, components and / or a collection thereof.
[0051] It should also be understood that the term “and / or” as used in this application specification and the appended claims means any combination of one or more of the associated listed items and all possible combinations, and includes such combinations.
[0052] As used in this application specification and the appended claims, the term "if" may be interpreted, depending on the context, as "when," "once," "in response to determination," or "in response to detection." Similarly, the phrase "if determined" or "if detected [the described condition or event]" may be interpreted, depending on the context, as meaning "once determined," "in response to determination," "once detected [the described condition or event]," or "in response to detection [the described condition or event]."
[0053] Furthermore, in the description of this application and the appended claims, the terms "first," "second," "third," etc., are used only to distinguish descriptions and should not be construed as indicating or implying relative importance.
[0054] References to "one embodiment" or "some embodiments" as described in this specification mean that one or more embodiments of this application include a specific feature, structure, or characteristic described in connection with that embodiment. Therefore, the phrases "in one embodiment," "in some embodiments," "in other embodiments," "in still other embodiments," etc., appearing in different parts of this specification do not necessarily refer to the same embodiment, but rather mean "one or more, but not all, embodiments," unless otherwise specifically emphasized. The terms "comprising," "including," "having," and variations thereof mean "including but not limited to," unless otherwise specifically emphasized.
[0055] The robot testing method provided in this application can be applied to terminal devices such as mobile phones, tablets, wearable devices, in-vehicle devices, augmented reality (AR) / virtual reality (VR) devices, laptops, ultra-mobile personal computers (UMPCs), netbooks, and personal digital assistants (PDAs). This application does not impose any restrictions on the specific type of terminal device. Please refer to... Figure 1 , Figure 1This is a schematic diagram of a testing system provided in an embodiment of this application. The testing system includes: a local area network (LAN) side device 101, a network device 102, a testing device 104, and a wide area network (WAN) side application server 103. The LAN side device 101 and network device 102 send control commands to the testing device 104, and the testing device 104 controls the application server 103 to execute the robot testing method. The LAN side device 101, network device 102, testing device 104, and wide area network (WAN) side application server 103 communicate via wired and / or wireless networks. The application server 103 is installed on a target robot, which is the robot to be tested.
[0056] For example, the testing device 104 acquires the business process data of the business performed by the target robot, and constructs an initial operation strategy for the target robot based on the business process data. The business process data can be sent by at least one of the LAN-side device 101 and the network device 102. Supplementary strategies are constructed based on different scenarios when the target robot performs the business, and the initial operation strategy is improved according to the supplementary strategies to obtain the target robot's target operation strategy. The testing device 104 sends the target operation strategy to the target robot equipped with the application server 103 to control the operation of the target robot. The testing device 104 also receives message data from the target robot during its operation. The testing device 104 analyzes the status data of the target robot during its operation based on the message data and uses the status data as the test result for the target robot.
[0057] For example, to reduce the computational burden on the testing device 104 and thus lower its cost, the business process data can be obtained from at least one of the LAN-side device 101 and network device 102, which acquires the business process data of the target robot's execution of the business, and constructs an initial operating strategy for the target robot based on the business process data; constructs supplementary strategies based on different scenarios when the target robot executes the business, and improves the initial operating strategy according to the supplementary strategies to obtain the target operating strategy for the target robot; at least one of the LAN-side device 101 and network device 102 sends the target operating strategy to the testing device 104, and the testing device 104 controls the target robot's operation based on the target operating strategy and receives message data from the target robot during operation; the testing device 104 sends the received message data to at least one of the LAN-side device 101 and network device 102; at least one of the LAN-side device 101 and network device 102 analyzes the target robot's status data during operation based on the message data, and uses the status data as the test result for the target robot.
[0058] Specifically, the target robot refers to an intelligent robot capable of performing delivery tasks, specifically delivering items to users, particularly for room delivery services in hotel settings. Delivery tasks can be services that deliver goods to users. Delivery scenarios include residential communities, warehouses, airports, or hotels, etc. The delivery area refers to a pre-designated area within the delivery scenario. The robot can move to the delivery area, notify the user, and wait for the user to pick up the item. For example, the delivery area can be a specific location within the delivery scenario, such as a building in a residential community or the door of a room in a hotel. The target delivery area is the specific address to which the target delivery task requires delivery. For instance, if the target delivery task is to provide courier service to room B in area A, the robot can move to the target delivery area, i.e., the door of room B in area A, and call the landline inside the room to notify the user to pick up the item. Similarly, if the target delivery task is to provide food delivery service to door D of hotel C, the robot can move to the target delivery area, i.e., door D of hotel C, and call the phone inside the door to notify the user to pick up the food.
[0059] In a specific example, the delivery scenario is a hotel. The robot could be a hotel delivery robot, and each robot has an identification information, such as an ID (Identity Document), to identify its identity. The delivery area for the hotel's delivery robots includes the area in front of the hotel rooms. After checking into the hotel, users can order food or daily necessities through the hotel's service system, which can be a telephone ordering system or a mobile app (application) service system. For example, when ordering food, users can reserve meals through the service system and enter their room number. The service system sends the user's reservation information to the hotel's platform system. The platform system can then generate a target delivery task based on the user's room number and reservation information and send it to the hotel's delivery robot. After receiving the reservation from hotel staff, the robot moves to the target delivery area, which could be the area in front of the user's room. Before deploying and using the target robot, it needs to be tested to check its performance and the effectiveness of its delivery task execution, which involves robot testing methods.
[0060] This application provides a robot testing method, including:
[0061] S101. Obtain the business process data of the business performed by the target robot, and construct the initial operation strategy of the target robot based on the business process data;
[0062] For example, the business process data for different businesses are also different. For instance, the delivery process data for one delivery business is pickup, delivery, and arrival; while the delivery process data for another delivery business is pickup, delivery, arrival, and unloading. Therefore, by constructing the initial operating strategy of the target robot based on the business process data, the target robot is guaranteed to complete the business it is performing.
[0063] For example, when the business process data is pickup, delivery, and arrival, the initial operation strategy of the target robot constructed based on the business process data includes a pickup strategy, a delivery strategy, and an arrival strategy. Specifically, the pickup strategy includes pickup location, pickup method, etc., the delivery strategy includes delivery route, delivery method, etc., and the arrival strategy includes arrival location, arrival method, etc.
[0064] S102. Construct supplementary strategies based on different scenarios when the target robot performs business, and improve the initial operation strategy according to the supplementary strategies to obtain the target operation strategy of the target robot.
[0065] For example, different scenarios in which the target robot performs business, such as the target robot queuing when picking up goods, or the target robot scraping / collision when delivering goods.
[0066] For example, when the target robot encounters a certain scenario while performing a business, a specific operating strategy is needed to enable the target robot to successfully complete the business. That is, by constructing a supplementary strategy and improving the initial operating strategy based on the supplementary strategy, the target robot can perform business without human intervention when encountering different scenarios.
[0067] S103. Control the operation of the target robot based on the target operation strategy, and receive the message data of the target robot during operation;
[0068] For example, the message data of the target robot during operation is obtained. The process of generating the message data is as follows: the target robot collects the sensing data of each sensor during operation, such as point cloud data of stereo vision or lidar sensors; and generates the message data based on the sensing data of each sensor.
[0069] For example, a lidar sensor can be installed in the target robot device. The lidar sensor can rotate along a set plane, causing the photoelectric receiving array corresponding to the lidar sensor to form a scanning cylinder. Specifically, the lidar sensor can be installed at an opening in the robot's shell, making it easy to emit laser signals to detect surrounding objects. The lidar sensor includes a photoelectric receiving array and a laser emitting unit array. When the lidar sensor rotates along the set plane, the photoelectric receiving array can form a scanning cylinder, thereby increasing the scanning area and facilitating the acquisition of detailed object shapes. This avoids collisions between the robot device and obstacles. If the lidar sensor only contains a single photoelectric receiving unit and a single laser emitting unit, the lidar sensor can only measure the shape of an object within a circle after rotating along the set plane, and cannot acquire the shape of complex objects in a timely manner, which can easily lead to collisions and endanger personal and property safety. Optionally, the set plane can be a horizontal plane, which facilitates object detection during the robot device's movement. In addition, other set planes, such as a vertical plane, can be selected according to user needs. This embodiment does not limit this.
[0070] For example, since the message data is generated from data obtained by the target robot's own various sensors, it can more accurately record the parameters of the target robot during operation, such as location information and trajectory information, compared to the way people observe the state of the intelligent robot by looking at it.
[0071] S104. Analyze the status data of the target robot during operation based on the message data, and use the status data as the test result of the target robot.
[0072] For example, based on the sensor data from different sensors in the message data, the different state information of the target robot during operation can be analyzed. For instance, based on the point cloud data from stereo vision or lidar sensors, the distance between the target robot and obstacles can be calculated, as well as the distance change data between the target robot and obstacles can be calculated. Based on the distance between the target robot and obstacles, it can be determined whether the target robot has scraped / collided with the obstacles, i.e., whether the target robot is in a scraping / collision scenario. Based on the distance change data between the target robot and obstacles, it can be determined whether the target robot is in a stuck scenario or a queuing scenario.
[0073] By acquiring business process data of the tasks performed by the target robot, and constructing an initial operating strategy for the target robot based on the business process data; constructing supplementary strategies based on different scenarios when the target robot performs tasks, and improving the initial operating strategy according to the supplementary strategies, to obtain the target operating strategy for the target robot; controlling the operation of the target robot based on the target operating strategy, and receiving message data of the target robot during operation; analyzing the status data of the target robot during operation based on the message data, and using the status data as the test result of the target robot. By analyzing the business process data of the target robot and the different scenarios in which it performs these tasks, an operational strategy for the target robot is constructed. This ensures that the robot can autonomously solve different problems in different scenarios when performing tasks, eliminating the need for on-site tracking during robot testing and freeing up human resources. Simultaneously, by receiving message data from the target robot during operation and analyzing its status data, the system can more accurately record parameters compared to manual observation. Specifically, manual observation cannot accurately determine when the robot enters a stuck state, thus failing to accurately record the duration of the stuck state. Furthermore, manual observation cannot accurately determine the scraping distance when the robot is in a scraping state.
[0074] In one possible implementation, acquiring the business process data of the tasks performed by the target robot includes:
[0075] Obtain the business type information of the business performed by the target robot;
[0076] If the business type information meets the preset conditions, then the business process data of the business performed by the target robot is determined to include at least pickup, delivery, arrival and return.
[0077] If the business type information does not meet the preset conditions, then the step of constructing the initial operation strategy of the target robot based on the business process data is stopped.
[0078] For example, since different robots are often used for different specific types of business, when designing and manufacturing robots, the robot's shape, material, structure, and other attributes are designed according to the specific type of business. In order to ensure that the robot is used for the specific type of business, it is necessary to determine the business type information of the business performed by the target robot. If the business type information of the performed business matches the specific type of business, then the step of constructing the initial operation strategy of the target robot based on the business process data is executed. If the business type information of the performed business does not match the specific type of business, then the robot designed for the specific type of business obviously cannot perform business other than the specific type of business well, which may lead to a waste of robot functions and may also lead to the risk of business not being realized.
[0079] For example, for delivery-type businesses, if the business type information of the business performed by the target robot does not match the delivery-type business, then the initial operating strategy of the target robot cannot be constructed based on the business process data (pickup, delivery, arrival, and return) of the delivery-type business. By verifying the business type information of the executed business through preset conditions, the relevance of the initial operating strategy is ensured, and strategies are avoided for other businesses that do not include pickup and / or delivery and / or arrival and / or return, which would cause business execution disorder.
[0080] In one possible implementation, the step of constructing the initial operating strategy of the target robot based on the business process data includes:
[0081] By using a preset compilation environment and based on the business process data, the initial operating strategy of the target robot is constructed in the order of pickup, delivery, arrival and return.
[0082] For example, using a desktop system (Ubuntu system) and a preset compilation environment (Ros environment), an initial operating strategy for the target robot is constructed based on the business process data, following the order of pickup, delivery, arrival, and return. The initial operating strategy includes a program for operating the target robot's movement.
[0083] For example, the desktop system (Ubuntu system) can be used on devices such as laptops, desktop computers, and servers. The desktop system (Ubuntu system) can broaden the applicability of the robot testing method described in this application. At the same time, the preset compilation environment (Ros environment) provides common robot-specific libraries and tools, which can enable the robot to start and run quickly, improving testing efficiency.
[0084] In one possible implementation, the step of constructing supplementary strategies based on different scenarios in which the target robot performs its tasks, and improving the initial operating strategy according to the supplementary strategies, includes:
[0085] Acquire historical scenario data of the robot when performing business, and determine different scenarios of the target robot when performing business based on the historical scenario data, including scratch / collision scenario, jamming scenario, insufficient battery scenario and excessively long delivery time scenario;
[0086] Supplementary strategies are constructed for the scratch / collision scenario, the jamming scenario, the insufficient battery scenario, and the excessively long delivery time scenario, respectively, to obtain a supplementary strategy set;
[0087] The initial running strategy is improved based on the supplementary strategy set.
[0088] For example, when determining the scenarios that the target robot may encounter, technicians (testers) can rely on their experience to determine the scenarios that the target robot may encounter, which is convenient and quick, and the testing requirements of technicians (testers) can also be considered; alternatively, historical scenario data can be used to determine different scenarios in which the target robot performs business, ensuring that no different scenarios in which the target robot performs business are missed, thereby ensuring the improvement effect when the initial running strategy is improved based on the supplementary strategy set.
[0089] For example, historical scenario data of the robot in performing business is obtained, and different scenarios of the target robot in performing business are determined based on the historical scenario data. The number of times different scenarios occur when the historical robot performs a preset number of business operations is counted. Any scenario is taken as a specific scenario. Then, the probability of occurrence of the specific scenario is taken as the ratio obtained by comparing the number of occurrences of the specific scenario with the preset number of occurrences. The probability of occurrence of all scenarios is then obtained. Different scenarios are filtered based on the probability of occurrence. That is, scenarios with a probability of occurrence less than a threshold are removed. This avoids the situation where a specific supplementary strategy is formulated for a scenario that is not easy to occur, but the specific supplementary strategy is never applied, which brings storage pressure and causes waste of resources.
[0090] In one possible implementation, receiving message data from the target robot during its operation includes:
[0091] The target robot is controlled to collect its position information and point cloud data of its sensing components at a preset period, and the target robot is controlled to generate message data based on the position information and the point cloud data.
[0092] The preset node, set by the preset compilation environment, subscribes to the location information and point cloud data in the message data.
[0093] For example, by collecting data at a preset cycle, while ensuring the continuity of the collected data (location information and point cloud data), data interaction is minimized and computational pressure is reduced. Message data is generated based on the data (location information and point cloud data) collected by the target robot's own sensors, providing data support for the subsequent collision detection process using the robot's inherent stereo vision or lidar sensors, ensuring that no sensors need to be installed on obstacles, thus reducing costs.
[0094] For example, by subscribing to the location information and point cloud data in the message data through preset nodes, the smooth transmission of data is ensured. By setting preset nodes, the occupation of existing nodes is avoided, which would affect other data transmission services.
[0095] In one possible implementation, analyzing the target robot's status data during operation based on the message data includes:
[0096] The location information and the point cloud data are matched by time to obtain a data pair including the location information and the point cloud data;
[0097] The obstacle location information is determined by the point cloud data in the data pair;
[0098] The target robot's status data during operation is determined by calculating the distance between the location information and the obstacle location information corresponding to the location information.
[0099] For example, since the point cloud data is generated when a laser hits an obstacle, it contains the precise location information of the obstacle, enabling obstacle localization. The distance between the obstacle and the target robot is calculated based on the precise location information of the obstacle and the location information of the target robot. If the distance between the obstacle and the target robot is less than or equal to a threshold, it is considered that the obstacle and the target robot have scraped / collided, that is, the target robot is determined to be in a scraping / collision scenario. The threshold is set according to the model (or structural parameters) of the target robot and a preset safety distance. Since the target robot models (structural parameters) are different, the threshold is different.
[0100] For example, when determining whether an obstacle and a target robot have scraped or collided, the current reference coordinates (base_link) of the target robot can be obtained through the machine's stereo vision and other sensors. The reference coordinate system in which the reference coordinates are located is a coordinate system whose origin is fixed on the target robot body. The origin of the reference coordinate system can be set as the rotation center of the robot. The reference coordinates are converted into projected coordinates (base_footprint). The origin of the projected coordinate system in which the projected coordinates (base_footprint) are located is the projection of the origin of the reference coordinate system onto the ground. That is, the projection point of the target robot's current reference coordinates on the ground is determined, and the corresponding point of the obstacle on the ground is identified through stereo vision. If the distance from the corresponding point to the projection point is less than a threshold, it is considered that the obstacle has scraped or collided with the target robot.
[0101] For example, the scheduling data of the target robot is obtained. The scheduling data includes the path information of the target robot. If there is an overlapping path in the path information of at least two target robots, then when at least two target robots are on the overlapping path, the projection coordinates of the target robot are obtained. Based on the projection coordinates and the structure of the target robot, a polygon corresponding to the target robot is constructed to obtain at least two polygons. If the two polygons overlap, the two target robots corresponding to the two polygons will scrape or collide.
[0102] For example, based on the automated script, if the target robot does not move for a certain period of time, such as if the point cloud data of the target robot does not change during a certain period of time, the target robot's position information is obtained. If the position information is different from the position information of a preset point, which is a point where the target robot needs to stay, such as a preset charging point, food pickup point, or food delivery point, then the target robot is considered to be stuck, that is, the target robot is in a stuck scenario, and the time point when the target robot is stuck is recorded.
[0103] For example, logs are generated based on the status data of the target robot during operation, and the logs are saved and / or transmitted to a preset device to provide data support for subsequent development and analysis, and also to realize remote observation of the status data of the target robot during operation.
[0104] In one possible implementation, the step of controlling the operation of the target robot based on the target operation strategy further includes:
[0105] Obtain user request information from the target user regarding the target robot;
[0106] The target operation strategy is updated based on the user request information to obtain the updated target operation strategy, and the target robot is controlled to operate based on the updated target operation strategy.
[0107] For example, when a user makes requests to the target robot in addition to business process data and different scenarios, such as timed requests, the target operation strategy is updated based on the timed requests. In addition to testing the target robot for business process data and different scenarios, other functions of the target robot can also be tested.
[0108] For example, by updating the target operation strategy based on the timing requirements, the target robot can complete the test within a more optimal time period. For instance, the cafeteria has a large flow of people between 11:00 and 13:00, which is not conducive to testing the target robot. Therefore, the timing requirements can be set to test the target robot within the time period of 14:00 to 15:00. At the same time, after setting the timing requirements, it can prevent testers from forgetting to test the target robot, that is, intelligently control the target robot to execute the test process.
[0109] In one possible implementation, such as Figure 3 As shown, another embodiment of this application provides a robot testing method, including: starting robot testing, wherein the robot works in the following order: placing food at the origin, running food delivery, arriving at the delivery point, and returning to the origin; if at least two robots get stuck during the food delivery process, the robot is controlled to unblock and return to the origin, and a stuck information report is uploaded to the server; during the food delivery process, at least two robots are monitored for scratches / collisions, and the monitoring results are uploaded to the server as a report; upon arriving at the delivery point, the robot checks the point information and picks up the food, and the inspection results and food picking results are uploaded to the server as a report; during the return to the origin, the robot is checked for low battery; if the battery is normal, the robot returns to the food placement origin; if the battery is low, it is charged, and a charging report is uploaded to the server; when the robot is charged to normal battery level, it can choose to return to the food placement origin.
[0110] In one possible implementation, such as Figure 4 As shown, one embodiment of this application provides a robot testing apparatus, including:
[0111] The data acquisition module 201 is used to acquire business process data of the business performed by the target robot, and to construct the initial operation strategy of the target robot based on the business process data;
[0112] The strategy improvement module 202 is used to construct supplementary strategies based on different scenarios when the target robot performs business, and improve the initial operation strategy according to the supplementary strategies to obtain the target operation strategy of the target robot.
[0113] The control module 203 is used to control the operation of the target robot based on the target operation strategy, and to receive message data of the target robot during operation;
[0114] The analysis module 204 is used to analyze the status data of the target robot during operation based on the message data, and use the status data as the test result of the target robot.
[0115] By acquiring business process data of the tasks performed by the target robot, and constructing an initial operating strategy for the target robot based on the business process data; constructing supplementary strategies based on different scenarios when the target robot performs tasks, and improving the initial operating strategy according to the supplementary strategies, the target robot's target operating strategy is obtained; controlling the target robot's operation based on the target operating strategy, and receiving message data from the target robot during operation; analyzing the state data of the target robot during operation based on the message data, and using the state data as the test result of the target robot. By constructing the target robot's operating strategy through the business process data of the tasks performed by the target robot and the different scenarios when the target robot performs tasks, the robot can solve different problems in different scenarios on its own when performing tasks, so that no personnel are needed to track the robot on-site during testing, freeing up human resources; at the same time, by receiving message data from the target robot during operation and analyzing the state data of the target robot during operation based on the message data, since the message data is generated from data obtained by the target robot's own various sensors, the parameters of the target robot during operation can be recorded more accurately compared to the method of personnel observing the state of the intelligent robot.
[0116] In one possible implementation, such as Figure 5As shown, this application embodiment provides an electronic device 300, including: a memory 310, a processor 320, and a computer program 311 stored in the memory 310 and executable on the processor 320. When the processor 320 executes the computer program 311, it performs the following: acquiring business process data of the business performed by a target robot, and constructing an initial operating strategy for the target robot based on the business process data; constructing supplementary strategies based on different scenarios when the target robot performs the business, and improving the initial operating strategy according to the supplementary strategies to obtain a target operating strategy for the target robot; controlling the operation of the target robot based on the target operating strategy, and receiving message data of the target robot during operation; analyzing the state data of the target robot during operation based on the message data, and using the state data as the test result of the target robot.
[0117] By acquiring business process data of the tasks performed by the target robot, and constructing an initial operating strategy for the target robot based on the business process data; constructing supplementary strategies based on different scenarios when the target robot performs tasks, and improving the initial operating strategy according to the supplementary strategies, the target robot's target operating strategy is obtained; controlling the target robot's operation based on the target operating strategy, and receiving message data from the target robot during operation; analyzing the state data of the target robot during operation based on the message data, and using the state data as the test result of the target robot. By constructing the target robot's operating strategy through the business process data of the tasks performed by the target robot and the different scenarios when the target robot performs tasks, the robot can solve different problems in different scenarios on its own when performing tasks, so that no personnel are needed to track the robot on-site during testing, freeing up human resources; at the same time, by receiving message data from the target robot during operation and analyzing the state data of the target robot during operation based on the message data, since the message data is generated from data obtained by the target robot's own various sensors, the parameters of the target robot during operation can be recorded more accurately compared to the method of personnel observing the state of the intelligent robot.
[0118] In one possible implementation, such as Figure 6As shown, this application embodiment provides a computer-readable storage medium 400, on which a computer program 411 is stored. When executed by a processor, the computer program 411 performs the following: acquiring business process data of the business performed by a target robot, and constructing an initial operating strategy for the target robot based on the business process data; constructing supplementary strategies based on different scenarios when the target robot performs the business, and improving the initial operating strategy according to the supplementary strategies to obtain a target operating strategy for the target robot; controlling the operation of the target robot based on the target operating strategy, and receiving message data of the target robot during operation; analyzing the state data of the target robot during operation based on the message data, and using the state data as the test result of the target robot.
[0119] By acquiring business process data of the tasks performed by the target robot, and constructing an initial operating strategy for the target robot based on the business process data; constructing supplementary strategies based on different scenarios when the target robot performs tasks, and improving the initial operating strategy according to the supplementary strategies, the target robot's target operating strategy is obtained; controlling the target robot's operation based on the target operating strategy, and receiving message data from the target robot during operation; analyzing the state data of the target robot during operation based on the message data, and using the state data as the test result of the target robot. By constructing the target robot's operating strategy through the business process data of the tasks performed by the target robot and the different scenarios when the target robot performs tasks, the robot can solve different problems in different scenarios on its own when performing tasks, so that no personnel are needed to track the robot on-site during testing, freeing up human resources; at the same time, by receiving message data from the target robot during operation and analyzing the state data of the target robot during operation based on the message data, since the message data is generated from data obtained by the target robot's own various sensors, the parameters of the target robot during operation can be recorded more accurately compared to the method of personnel observing the state of the intelligent robot.
[0120] 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 embodiments of this application. For details on their specific functions and technical effects, please refer to the method embodiments section, and they will not be repeated here.
[0121] Those skilled in the art will clearly understand that, for the sake of convenience and brevity, the above-described division of functional units and modules is merely an example. In practical applications, the above functions can be assigned to different functional units and modules as needed, that is, the internal structure of the 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 embodiments can be integrated into one processing unit, or each unit can exist physically separately, or two or more units can be integrated into one unit. The integrated unit can be implemented in hardware or as a software functional unit. Furthermore, the specific names of the functional units and modules are only for easy differentiation and are not intended to limit the scope of protection of this application. The specific working process of the units and modules in the above system can be referred to the corresponding process in the foregoing method embodiments, and will not be repeated here.
[0122] This application also provides a computer-readable storage medium storing a computer program that, when executed by a processor, implements the steps described in the various method embodiments above.
[0123] This application provides a computer program product that, when run on a mobile terminal, enables the mobile terminal to implement the steps described in the various method embodiments above.
[0124] If the integrated unit is implemented as 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, all or part of the processes in the methods of the above embodiments of this application can be implemented by a computer program instructing related hardware. The computer program can be stored in a computer-readable storage medium, and when executed by a processor, it can implement the steps of the various method embodiments described above. The computer program includes computer program code, which can be in the form of source code, object code, executable files, or certain intermediate forms. The computer-readable medium can include at least: any entity or device capable of carrying computer program code to a photographing device / terminal device, a recording medium, a computer memory, a read-only memory (ROM), a random access memory (RAM), an electrical carrier signal, a telecommunication signal, and a software distribution medium. Examples include USB flash drives, portable hard drives, magnetic disks, or optical disks. In some jurisdictions, according to legislation and patent practice, computer-readable media cannot be electrical carrier signals or telecommunication signals.
[0125] In the above embodiments, the descriptions of each embodiment have different focuses. For parts that are not described in detail or recorded in a certain embodiment, please refer to the relevant descriptions of other embodiments.
[0126] Those skilled in the art will recognize that the units and algorithm steps of the various examples 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 implemented in hardware or software depends on the specific application and design constraints of the technical solution. Those skilled in the art can use different methods to implement the described functions for each specific application, but such implementation should not be considered beyond the scope of this application.
[0127] In the embodiments provided in this application, it should be understood that the disclosed apparatus / network device / terminal device and method can be implemented in other ways. For example, the apparatus / network device / terminal device embodiments described above are merely illustrative. For instance, the division of modules or units is only a logical functional division, and in actual implementation, there may be other division methods. For example, multiple units or components may be combined or integrated into another system, or some features may be ignored or not executed. Furthermore, the coupling or direct coupling or communication connection shown or discussed may be through some interfaces; the indirect coupling or communication connection between apparatuses or units may be electrical, mechanical, or other forms.
[0128] The units described as separate components may or may not be physically separate. The components shown as units may or may not be physical units; that is, they may be located in one place or distributed across multiple network units. Some or all of the units can be selected to achieve the purpose of this embodiment according to actual needs.
[0129] The above-described embodiments are only used to illustrate the technical solutions of this application, and are not intended to limit them. Although this application has been described in detail with reference to the foregoing embodiments, those skilled in the art should understand that modifications can still be made to the technical solutions described in the foregoing embodiments, or equivalent substitutions can be made to some of the technical features. Such modifications or substitutions do not cause the essence of the corresponding technical solutions to deviate from the spirit and scope of the technical solutions of the embodiments of this application, and should all be included within the protection scope of this application.
Claims
1. A robot testing method, characterized in that, include: Obtain the business process data of the business performed by the target robot, and construct the initial operation strategy of the target robot based on the business process data; Based on different scenarios in which the target robot performs business, supplementary strategies are constructed, and the initial operating strategy is improved according to the supplementary strategies to obtain the target operating strategy of the target robot; Controlling the target robot to run based on the target operation strategy and receiving message data from the target robot during operation includes: controlling the target robot to collect the target robot's position information and the point cloud data of the target robot's sensing components at a preset period, and controlling the target robot to generate message data based on the position information and the point cloud data; Analyzing the target robot's status data during operation based on the message data, and using the status data as the test result of the target robot, includes: The location information and the point cloud data are matched by time to obtain a data pair including the location information and the point cloud data; The obstacle location information is determined by the point cloud data in the data pair; The target robot's status data during operation is determined by calculating the distance between the location information and the obstacle location information corresponding to the location information.
2. The robot testing method as described in claim 1, characterized in that, The acquisition of business process data for the tasks performed by the target robot includes: Obtain the business type information of the business performed by the target robot; If the business type information meets the preset conditions, then the business process data of the business performed by the target robot is determined to include at least pickup, delivery, arrival and return. If the business type information does not meet the preset conditions, then the step of constructing the initial operation strategy of the target robot based on the business process data is stopped.
3. The robot testing method as described in claim 2, characterized in that, The initial operation strategy for constructing the target robot based on the business process data includes: By using a preset compilation environment and based on the business process data, the initial operating strategy of the target robot is constructed in the order of pickup, delivery, arrival and return.
4. The robot testing method as described in claim 1, characterized in that, The process of constructing supplementary strategies based on different scenarios in which the target robot performs its tasks, and improving the initial operating strategy according to the supplementary strategies, includes: Acquire historical scenario data of the robot when performing business, and determine different scenarios of the target robot when performing business based on the historical scenario data, including scratch / collision scenario, jamming scenario, insufficient battery scenario and excessively long delivery time scenario; Supplementary strategies are constructed for the scratch / collision scenario, the jamming scenario, the insufficient battery scenario, and the excessively long delivery time scenario, respectively, to obtain a supplementary strategy set; The initial running strategy is improved based on the supplementary strategy set.
5. The robot testing method as described in claim 3, characterized in that, The receiving of message data from the target robot during its operation also includes: The preset node, set by the preset compilation environment, subscribes to the location information and point cloud data in the message data.
6. The robot testing method as described in claim 1, characterized in that, The step of controlling the operation of the target robot based on the target operation strategy further includes: Obtain user request information from the target user regarding the target robot; The target operation strategy is updated based on the user request information to obtain the updated target operation strategy, and the target robot is controlled to operate based on the updated target operation strategy.
7. A robot testing device, characterized in that, include: The data acquisition module is used to acquire business process data of the business performed by the target robot, and to construct the initial operation strategy of the target robot based on the business process data; The strategy improvement module is used to construct supplementary strategies based on different scenarios when the target robot performs business, and improve the initial operation strategy according to the supplementary strategies to obtain the target operation strategy of the target robot. The control module is used to control the operation of the target robot based on the target operation strategy and to receive message data from the target robot during operation, including: controlling the target robot to collect the position information of the target robot and the point cloud data of the sensor components of the target robot at a preset period, and controlling the target robot to generate message data based on the position information and the point cloud data; The analysis module is used to analyze the status data of the target robot during operation based on the message data, and to use the status data as the test result of the target robot, including: The location information and the point cloud data are matched by time to obtain a data pair including the location information and the point cloud data; The obstacle location information is determined by the point cloud data in the data pair; The target robot's status data during operation is determined by calculating the distance between the location information and the obstacle location information corresponding to the location information.
8. A testing system, comprising a robot under test and a testing device, wherein the testing device is connected to the robot under test via a wired and / or wireless means, characterized in that, The testing device performs the robot testing method as described in any one of claims 1 to 6 to test the robot under test.
9. A computer-readable storage medium storing a computer program, characterized in that, When the computer program is executed by the processor, it implements the robot testing method as described in any one of claims 1 to 6.
Citation Information
Patent Citations
Robot testing method and equipment
CN114723309A