Force impulse for measuring load stability

An automated load analysis system for robotic vehicles applies force pulses to determine load stability, ensuring safe transport by adjusting vehicle operations, thus preventing accidents and enhancing operational efficiency.

JP2026500441APending Publication Date: 2026-01-06OCADO INNOVATION LTD
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
JP2025538450
Authority / Receiving Office
JP · JP
Patent Type
Applications
Current Assignee / Owner
Priority Date
2022-12-28
Filing Date
2023-12-14
Publication Date
2026-01-06

AI Technical Summary

Technical Problem

Robotic vehicles face challenges in safely transporting loads, as improperly stacked or unstable loads can lead to accidents, injuries, and operational disruptions, with human verification being time-consuming and unreliable.

Method used

An automated load analysis system integrated into or separate from the robotic vehicle applies force pulses to the load, using sensors to determine parameters like center of gravity, resonant frequency, and movement characteristics, and adjusts vehicle operations accordingly to ensure safe transport.

Benefits of technology

The system enables safe and efficient movement of loads by imposing movement limits or adapting vehicle characteristics based on automated analysis, reducing accidents and operational disruptions.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 2026500441000001_ABST
    Figure 2026500441000001_ABST
Patent Text Reader

Abstract

Systems and methods are disclosed for automated analysis of a load on a robotic vehicle. In one example, a method (e.g., a computer-implemented method) includes lifting a load via a lifting mechanism of the robotic vehicle and applying a first force pulse to the load. The method further includes acquiring first sensor data from one or more sensors related to movement of the load in response to the first force pulse applied to the load, and determining one or more parameters related to the load based on the first sensor data. The method further includes taking one or more actions based on the one or more parameters related to the load. In this manner, the load can be analyzed in an automated manner, and appropriate action(s) can be taken (e.g., not moving the load because the load is unstable, limiting acceleration / deceleration of the robotic vehicle while moving the load, etc.).
Need to check novelty before this filing date? Find Prior Art

Description

[Technical Field]

[0001] The present disclosure relates to robotic vehicles, and more particularly, to an automated process for determining whether a load to be moved by a robotic vehicle is stable. [Background technology]

[0002] Safety in the workplace is of utmost importance. Robots are increasingly being used in workplaces such as factories and warehouses. While robots offer great benefits, they also pose safety challenges, especially when robots are operating alongside humans. Summary of the Invention

[0003] According to a first aspect, there is provided a method of operating a robotic vehicle, the method comprising: lifting a load via a lifting mechanism of the robotic vehicle; applying a first force pulse to the load; obtaining first sensor data from one or more sensors related to movement of the load in response to the first force pulse applied to the load; determining one or more parameters associated with the load based on the first sensor data; and performing one or more actions based on the one or more parameters associated with the load.

[0004] The first force pulse applied to the load can be either a lateral force pulse, a rotational force pulse, or a combined lateral and rotational force pulse. The first force pulse can be applied to the load by the robotic vehicle.

[0005] In one example, the one or more parameters associated with the load include a center of gravity of the load, a two-dimensional center of gravity of the load in a transverse plane (XZ or YZ plane) of the load, an amplitude of the load's response as represented by first sensor data obtained from one or more sensors in response to a first force pulse, a resonant frequency or natural frequency of the load, a damping coefficient of the load, one or more parameters indicative of the amount of load movement or frequency of movement, a polar moment of inertia of the load, at least one parameter based on first sensor data from a first sensor of the one or more sensors relative to first sensor data from a second sensor of the one or more sensors, or a combination of any two or more thereof.

[0006] In one example, the first force pulse applied to the load is one of a lateral force pulse and a rotational force pulse, and the method further includes applying a second force pulse to the load, wherein the second force pulse is the other of the lateral force pulse and the rotational force pulse, and acquiring second sensor data from one or more sensors in response to the second force pulse applied to the load, wherein determining one or more parameters associated with the load includes determining one or more parameters associated with the load based on both the first sensor data and the second sensor data.

[0007] Taking the one or more actions may include determining one or more limits or limitations on movement of the robotic vehicle based on one or more parameters associated with the load, and operating in accordance with the one or more limits or limitations on movement of the robotic vehicle.

[0008] Alternatively, performing the one or more actions may include determining whether it is safe for the robotic vehicle to move the load based on one or more parameters related to the load, and operating according to the result of determining whether it is safe for the robotic vehicle to move the load.

[0009] In a further alternative, performing the one or more actions comprises moving a load via the robotic vehicle, and the method further comprises acquiring third sensor data from the one or more sensors while moving the load via the robotic vehicle; determining one or more second parameters based on the third sensor data; and adapting either operation of the robotic vehicle or one or more characteristics of the robotic vehicle based on the one or more second parameters.

[0010] Adapting either the motion of the robotic vehicle or one or more characteristics of the robotic vehicle based on the one or more second parameters may comprise adapting a suspension of the robotic vehicle based on the one or more second parameters.

[0011] According to a second aspect, there is provided a robotic vehicle comprising a lifting mechanism comprising a lifting body and one or more sensors, and a controller associated with the lifting mechanism, the controller being configured, in use, to cause the lifting mechanism to lift a load, cause the robotic vehicle to apply a first force pulse to the load, obtain first sensor data from the one or more sensors related to movement of the load in response to the first force pulse applied to the load, determine one or more parameters associated with the load based on the first sensor data, and take one or more actions based on the one or more parameters associated with the load.

[0012] The one or more sensors may be located on the lifting mechanism. The one or more sensors may comprise one or more pressure sensors. In one alternative, the one or more pressure sensors may be mounted within or affixed to the lifting mechanism. The one or more pressure sensors are between the body of the lifting mechanism and a platform on which a load is positioned.

[0013] An example robotic vehicle is also disclosed. In one example, the robotic vehicle includes a lifting mechanism including a lifting body and one or more sensors, and a controller associated with the lifting mechanism. The controller is configured to cause the lifting mechanism to lift a load, cause the robotic vehicle to apply a first force pulse to the load, obtain first sensor data from the one or more sensors related to movement of the load in response to the first force pulse applied to the load, determine one or more parameters associated with the load based on the first sensor data, and perform one or more actions based on the one or more parameters associated with the load.

[0014] Examples will now be described, by way of example only, with reference to the accompanying drawings in which: [Brief explanation of the drawings]

[0015] [Figure 1] FIG. 1 illustrates an example of a robotic vehicle including an automated load analysis system according to an example of this disclosure. [Figure 2] FIG. 2 illustrates another example of a robotic vehicle including an automated load analysis system according to an example of this disclosure. [Figure 3] FIG. 3 is a flowchart illustrating an automated cargo analysis procedure according to an example of the present disclosure. [Figure 4A] FIG. 4A illustrates an example of sensor data from three sensors, where the sensors are pressure sensors, according to an example of the present disclosure. [Figure 4B] FIG. 4B illustrates another example of sensor data from four sensors according to another example of the present disclosure. [Figure 4C] FIG. 4C is an XY plot of the center of gravity of a load moving during an impulse in the Y direction determined according to an example of the present disclosure. [Figure 5] FIG. 5 shows a schematic diagram of a robotic vehicle according to an example of the present disclosure. DETAILED DESCRIPTION OF THE INVENTION

[0016] Like reference numbers are used in the drawings to denote like elements and features.

[0017] Robotic vehicles are increasingly being used in warehouses to move around the warehouse, lifting and transporting pallets. One problem is that the load on the pallet may or may not be securely packed. This can lead to accidents in which the load falls while the robotic vehicle is moving around the warehouse, moving pallets. Such accidents can result in injuries to people working in the warehouse. Additionally or alternatively, such accidents can result in loss of productivity as these accidents require human intervention to correct (e.g., re-stacking the load onto the pallet), and in some extreme cases, can result in the complete shutdown of all robotic vehicles in the warehouse (e.g., in cases where an accident blocks a major route through the warehouse).

[0018] One simple solution to this problem is to have a human verify that the load is properly stacked before it is moved by the robotic vehicle. However, such a solution would require a significant amount of personnel and time, especially in large warehouses of the type in which such robotic vehicles are typically used. In addition, humans are not always trustworthy, and in many situations, it can be difficult for a human to tell whether the load is safely stacked on a pallet. For example, from a human's perspective, the load may appear safely packed, but the load may actually be unstable due to factors imperceptible to the human (e.g., differences in weight or density of items stacked on the pallet, or the load may be top-heavy). Thus, even if the load is verified by a human before it is moved, accidents can still occur.

[0019] Disclosed herein are systems and methods for performing an automated analysis of a load carried by a robotic vehicle (e.g., on a platform such as a pallet or table) before the load is moved by the robotic vehicle. In one example, the analysis is performed by a corresponding automated load analysis system integrated into or on the robotic vehicle. In another example, the analysis is performed by an external system separate from the robotic vehicle (e.g., stacked loads (e.g., on a pallet) are tested by a separate automated load analysis system) before being loaded onto or picked up by the robotic vehicle. As a result of the automated analysis, one or more actions are performed by the robotic vehicle or automated load analysis system, such as, for example, determining to impose one or more limits on the movement of the robotic vehicle (e.g., one or more limits on linear and / or angular velocity and / or acceleration) while moving the load, adapting one or more characteristics of the robotic vehicle (e.g., adapting the suspension), or the like.

[0020] 1 illustrates an example of a robotic vehicle 160 including an automated load analysis system 162, according to an example of the present disclosure. In this example, the automated load analysis system 162 is included within or as part of the robotic vehicle 160; however, it should be noted that the automated load analysis system 162 may alternatively be a separate system attached or affixed to the robotic vehicle 160. The robotic vehicle 160 includes a vehicle body 164 including various electrical and mechanical components (e.g., motor(s), drivetrain, axles, suspension, etc.), wheels 166, a lifting mechanism 168, which in this particular example is a forklift mechanism including a fork 170 including tines 172A and 172B, and a control system 174 that controls the overall operation of the robotic vehicle 160. In some examples, the fork 170 may have more or less than two tines. Additionally or alternatively, fork 170 (or one or more of its prongs) may be retractable (e.g., in the forklift mechanism or vehicle body 164) or otherwise reconfigurable (e.g., removable) or rearrangeable relative to vehicle body 164 (e.g., to provide different arrangements of pallets 178 relative to vehicle body 164). In some examples, the components and wheels of vehicle body 164 may be arranged and / or configured such that robotic vehicle 160 is a differential wheeled robot. For example, robotic vehicle 160 may have two drive wheels on either side of vehicle body 164. The drive wheels may be driven by a differential drive controller, and robotic vehicle 160 may have caster wheels for support.

[0021] Automated load analysis system 162 includes load analysis functionality 162A and sensors 162B for sensing and analyzing the movement of load 176 stacked on pallet 178 carried by robotic vehicle 160 via claws 172A and 172B of forks 170 of lifting mechanism 168. While automated load analysis system 162, and thus sensors 162B, are part of robotic vehicle 160 in this example, sensors 162B may alternatively be separate from robotic vehicle 160 (e.g., attached to or integrated into pallet 178, where sensors 162B are communicatively coupled to robotic vehicle 160 via any suitable wireless or electrical connection). Note that load 176 preferably includes multiple items stacked on pallet 178. The cargo analysis function 162A is preferably implemented in software executed by processing circuitry (e.g., one or more central processing units (CPUs), microcontrollers, digital signal processors (DSPs), application specific integrated circuits (ASICs), field programmable gate arrays (FPGAs), and / or the like) to perform the operations of the cargo analysis function 162A described herein. In this illustrated example, the cargo analysis function 162A is implemented within the control system 174, but is not limited thereto.

[0022] Further, in this example, sensor 162B is positioned on a surface of claws 172A and 172B between claws 172A and 172B and pallet 178 so that pallet 178, and therefore load 176, can be sensed via sensor 162B. However, sensor 162B may be otherwise positioned on robotic vehicle 160 so long as sensor 162B is capable of sensing movement of load 176 in response to force pulses applied to load 176, as described herein. For example, sensor 162B may be or include a sensor on or otherwise associated with wheel 166 of robotic vehicle 160. Sensor 162B may be, for example, a pressure sensor that outputs data indicative of the pressure sensed by sensor 162B, a strain gauge on claws 172A and 172B of fork 170 of lifting mechanism 168, or the like. Sensor 162B may also include one or more sensors for sensing whether load 176 is wrapped (e.g., in plastic wrap or film). Sensor 162B is coupled to load analysis function 162A such that output data from sensor 162B is received by load analysis function 162A, and this data is used to perform an automated analysis of load 176, as described in more detail below.

[0023] 2 illustrates another example of a robotic vehicle 200 including an automated load analysis system 202, according to one example of the present disclosure. While the automated load analysis system 202 is included within or as part of the robotic vehicle 200 in this example, it should be noted that the automated load analysis system 202 could alternatively be a separate system attached or affixed to the robotic vehicle 200. The robotic vehicle 200 includes a vehicle body 204 including various electrical and mechanical components (e.g., motor(s), drivetrain, axles, suspension, etc.), wheels 206, a lifting mechanism 208, and a control system 210 that controls the overall operation of the robotic vehicle 200. In this example, the robotic vehicle 200 transports the load 212 by traveling under a table 214 on which a load 212 or a pallet 216 carrying the load 212 is placed, and then lifting the table 214, and thus the load 212, via the lifting mechanism 208. Lifting mechanism 208 may be any suitable lifting mechanism, such as, for example, a hydraulic lift. Note that load 212 preferably includes multiple items stacked on top of table 214 or on pallet 216. Automated load analysis system 202 includes load analysis functionality 202A and sensors 202B for sensing and analyzing the movement of load 212 carried by robotic vehicle 200, for example, via lifting mechanism 208. In some examples, load 212 may be carried by vehicle body 204 or may be otherwise directly supported.

[0024] Additionally or alternatively, lifting mechanism 208 may be configured to simply carry or otherwise directly support load 212 for purposes of removing or placing load 212 from vehicle body 204. Additionally or alternatively, automated load analysis system 202, and thus sensor 202B, are part of robotic vehicle 200 in this example, although sensor 202B may alternatively be separate from robotic vehicle 200 (e.g., mounted to or integrated into table 214 or pallet 216, with sensor 202B communicatively coupled to robotic vehicle 200 via any suitable wireless or electrical connection). Load analysis function 202A is preferably implemented in software executed by processing circuitry (e.g., one or more CPUs, ASICs, FPGAs, and / or the like) to perform the operations of load analysis function 202A described herein. In this illustrated example, load analysis function 202A is implemented within control system 210, but is not limited to such.

[0025] Further, in this example, sensor 202B is positioned on the surface of lifting mechanism 208, between the surface of lifting mechanism 208 and the bottom of table 214, so that load 212 can be sensed via sensor 202B. However, sensor 202B may be positioned otherwise on robotic vehicle 200, so long as sensor 202B is capable of sensing movement of load 212 in response to force pulses applied to load 212, as described herein. For example, sensor 202B may be or include a sensor on or otherwise associated with wheel 206 of robotic vehicle 200. Sensor 202B may be, for example, a pressure sensor that outputs data indicative of pressure sensed by sensor 202B. Sensor 202B is coupled to load analysis function 202A such that output data from sensor 202B is received by load analysis function 202A, and this data is used to perform automated analysis of load 212, as described in more detail below. Sensor 202B may be selected to provide sensor data needed to observe and / or control one or more modes of motion (e.g., sloshing side to side, bouncing up and down, twisting back and forth, etc.) of robotic vehicle 160 and / or load 212.

[0026] It should be noted that robotic vehicles 160 and 200 of Figures 1 and 2, respectively, are merely examples. Other types of robotic vehicles may be used in combination with an automated load analysis system, such as automated load analysis system 162 or 202, to analyze a load carried by the robotic vehicle and take one or more actions based on the result(s) of the analysis.

[0027] 1 and 2, automated load analysis systems 162 and 202 are included as part of robotic vehicles 160 and 200, which, as described below, apply force pulse(s) to loads 176 and 212 for automated load analysis, although it should be noted that the disclosure is not limited thereto. In an alternative example, automated load analysis system 162 or 202 is part of a separate system, which includes mechanisms for applying force pulse(s) to loads 176 or 212 for automated load analysis prior to placing load 176 or 212 (or pallet 178 or 216 with load 176 or 212 stacked thereon) onto robotic vehicle 160 or 200.

[0028] FIG. 3 is a flowchart illustrating an automated load analysis procedure according to one example of the present disclosure. For clarity and ease of discussion, the following description refers to the robotic vehicles 160 and 200 and automated load analysis systems 162 and 202 of FIGS. 1 and 2, respectively. However, it should be noted that this procedure is not limited to being performed by the example systems of FIGS. 1 and 2. As illustrated in FIG. 3, the load 176 or 212 is first lifted by the lifting mechanism 168 or 208 of the robotic vehicle 160 or 200 (step 300). The robotic vehicle 160 or 200 applies a first force pulse to the load 176 or 212 (step 302). Preferably, the first force pulse approximates (e.g., can be treated as) an impulse (e.g., as can be characterized using a Dirac delta function). The first force pulse can be a lateral force pulse, a rotational force pulse, or a combination thereof. For example, a first pulse of force may be applied to load 176 or 212 by robotic vehicle 160 or 200 accelerating or decelerating. This acceleration or deceleration may be a known (e.g., predefined or configured) amount of acceleration or deceleration. The acceleration or deceleration may be at a known (e.g., predefined or configured) starting speed and / or for a known (e.g., predefined or configured) amount of time. As another example, a first pulse of force may be applied to load 176 or 212 by robotic vehicle 160 or 200 rotating (e.g., while otherwise stationary, while moving at a constant velocity, or while accelerating or decelerating at a known rate). The acceleration or deceleration may be sudden (e.g., to better approximate an impulse).

[0029] First sensor data is acquired by the load analysis function 162A or 202A from the sensor 162B or 202B, for example, in response to a first force pulse applied to the load 176 or 212 (step 304). In other words, the first sensor data is data acquired from the sensor 162B or 202B during a time window during which the load 176 or 212 moves in response to the application of the first force pulse. This time period may begin, for example, before, during, or immediately after the application of the first force pulse and continue for some duration during which the load 176 or 212 moves as a result of the first force pulse. FIG. 4A is a time-based graph illustrating an example of sensor data from three sensors, where the sensors are pressure sensors. As seen in FIG. 4A, the sensor data from each sensor provides a series of sensor readings over time that form a waveform indicative of the movement of the load 176 or 212 relative to the sensor in response to the first force pulse. Figure 4B illustrates another example of sensor data from four sensors, namely, a right front sensor, a left front sensor, a right rear sensor, and a left rear sensor, where the sensors are pressure sensors. As can be seen in Figure 4B, the sensor data from each sensor provides a series of sensor readings over time that form a waveform indicative of the movement of the load 176 or 212 relative to the sensor in response to a first force pulse. Figure 4C illustrates an xy plot of the center of gravity of the load 176 or 212 moving during the impulse in the Y direction, which is derived from the sensor data.

[0030] Optionally, the robotic vehicle 160 or 200 applies a second force pulse to the load 176 or 212 (step 306). Preferably, the second force pulse approximates an impulse. The second force pulse may be a lateral force pulse, a rotational force pulse, or a combination thereof. The second force pulse is preferably different in type from the first force pulse. For example, if the first force pulse is a lateral force pulse, the second force pulse may be a rotational force pulse, or vice versa. Second sensor data is obtained by the load analysis function 162A or 202A from the sensor 162B or 202B, for example, in response to the second force pulse applied to the load 176 or 212 (step 308). In other words, the second sensor data is data obtained from the sensor 162B or 202B during a time window during which the load 176 or 212 moves in response to the application of the second force pulse. This time period may begin, for example, before, during, or immediately after the application of the second force pulse and continue for some duration during which the load 176 or 212 moves as a result of the second force pulse.

[0031] The load analysis function 162A or 202A determines (step 310) one or more parameters associated with the load 176 or 212 based on the first sensor data and optionally (i.e., if steps 306 and 308 are performed) the second sensor data. When determining the one or more parameters associated with the load 176 or 212, the load analysis function 162A or 202A may further consider the known first force pulse and, if steps 306 and 308 are performed, the second force pulse. The one or more parameters may be any parameters associated with the load 176 or 212 indicative of one or more characteristics of the load 176 or 212 that may be derived from the first sensor data and optionally the known first force pulse, and further, if steps 306 and 308 are performed, the second sensor data and optionally the known second force pulse. The one or more parameters may also be any such parameter(s) that may be used to determine whether payload 176 or 212 is stable, or at least stable enough, for robotic vehicle 160 or 200 to move payload 176 or 212 or to move payload 176 or 212 in a limited manner (e.g., with one or more limits, such as limits on acceleration and / or deceleration rate, limits on speed, limits on rotational velocity, limits on rotational acceleration, or the like). Some examples of the one or more parameters related to payload 176 or 212 that are determined in step 310 include, but are not limited to, the following: the center of gravity of the load 176 or 212 (e.g., the two-dimensional center of gravity in the transverse plane (XZ or YZ plane) of the load 176 or 212); The two-dimensional center of gravity of the load 176 or 212 in the XZ plane may be determined based on the sensor data by using the center of gravity data to determine the point in the XZ plane about which the load 176 or 212 moves. Note that the two-dimensional center of gravity in the XZ plane may also be determined from obtaining data from the sensor 162B or 202B while the load 176 or 212 is being lifted. the amplitude of the response of the load 176 or 212 as represented by sensor data obtained from one or more sensors 162B or 202B in response to the first force pulse and / or optionally the second force pulse; o This may include the amplitude or maximum amplitude of the sensor data from any one sensor, a combination (eg, average) of the amplitude or maximum amplitude of the sensor data from all sensors, or the like. · Resonant or natural frequency of the load 176 or 212; The resonant frequency of the load 176 or 212 may be calculated from the sensor data by observing the frequency content of the sensor data. For example, the frequency and amplitude of the waveform provided by the sensor data of the sensor may be used to determine the damped resonant frequency of the load 176 or 212, from which the resonant frequency of the load 176 or 212 may be determined. Damping coefficient or ratio of load 176 or 212, o The damping factor or ratio can be calculated from the amplitude of the sensor data from any one or combination of sensors 162B or 202B over time. the amount of movement of the load 176 or 212 in response to the first force pulse and / or the second force pulse (e.g., the amount of side-to-side movement of the load 176 or 212 in response to the first / second force pulse, the amount of up-and-down movement of the load 176 or 212 in response to the first / second force pulse, the amount of forward-and-back movement of the load 176 or 212 in response to the first / second force pulse, or the like), where “amount of movement” may be determined based on the amplitude of the sensor data received from the sensor 162B or 202B and, in some cases, may be normalized based on the amplitude of the first / second force pulse. the frequency of movement of the load 176 or 212 (e.g., the frequency at which the load 176 or 212 moves side to side in response to the first / second force pulses, the frequency at which the load 176 or 212 moves up and down in response to the first / second force pulses, the frequency at which the load 176 or 212 moves forward and backward in response to the first / second force pulses, or the like); the polar moment of inertia of the load 176 or 212, or, in some cases, more than one polar moment of inertia (e.g., both horizontal and vertical polar moments of inertia); one or more parameters based on a comparison of sensor data from the sensor 162B or 202B to each other or from different sensors 162B or 202B (e.g., the amount of time between a peak in amplitude of one sensor and a peak in amplitude of another sensor, a phase difference between the sensor data from one sensor and the sensor data from another sensor, an amplitude difference between the sensor data from one sensor and the sensor data from another sensor, etc.); Note that the relative amplitude and / or phase of the sensor data from different sensors can be used to calculate various parameters. For example, if we consider a load on a pallet with four sensor grids - two for each of the two prongs on the forks on a forklift - the amplitude and phase of the sensor data from the four sensors can be used to determine the axis in the lateral plane (i.e., the XZ plane) about which the load 176 or 212 will rock back and forth, as well as the magnitude of the rocking in either direction. parameter(s) associated with (e.g., measured) one or more desired modes of movement of the load 176 or 212 (e.g., sloshing side to side, bouncing up and down, twisting back and forth, etc.); A parameter indicating whether the load 176 or 212 is wrapped (e.g., with plastic wrap or film).

[0032] It should be noted that the type of force pulse(s) applied and / or the number of sensors 162B or 202B and / or the placement or positioning of sensors 162B or 202B may vary depending on the particular parameter(s) to be determined, as different parameters may require different types of force pulses and / or different numbers of sensors and / or different placements of sensors.

[0033] One or more actions are then taken (step 312) based on the one or more parameters associated with the load 176 or 212 determined in step 310. In one example, the one or more actions include determining one or more restrictions or limitations on the movement of the robotic vehicle 160 or 200 based on the one or more parameters associated with the load 176 or 212 and operating the robotic vehicle 160 or 200 in accordance with the one or more restrictions (step 312A). The one or more restrictions may include any one or more of the following: Limitations or restrictions on the linear velocity of movement of the robotic vehicle 160 or 200; Limitations or restrictions on the linear acceleration of the robotic vehicle 160 or 200; Limitations or restrictions on the linear deceleration of the robotic vehicle 160 or 200; Limitations or restrictions on the rotational speed of movement of the robotic vehicle 160 or 200; Limitations or restrictions on the rotational acceleration of the robotic vehicle 160 or 200; Limitations or restrictions on the rotational deceleration of the robotic vehicle 160 or 200; or · A combination of any two or more of the above limitations.

[0034] In another example, the one or more actions include determining whether it is safe for the robotic vehicle 160 or 200 to move the load 176 or 212 based on one or more parameters related to the load 176 or 212, and operating the robotic vehicle 160 or 200 according to the result of determining whether it is safe for the robotic vehicle 160 or 200 to move the load 176 or 212 (step 312B).

[0035] In another example, the one or more actions performed in step 312 include acquiring third sensor data from sensor 162B or 202B while moving load 176 or 212 via robotic vehicle 160 or 200 (step 312C-1), determining one or more second parameters associated with load 176 or 212 based on the third sensor data (step 312C-2), and adapting either the operation of robotic vehicle 160 or 200 or one or more characteristics of robotic vehicle 160 or 200 based on the one or more second parameters (step 312C-3). The one or more second parameters may include an amount of movement of load 176 or 212 (e.g., an amount of movement in the vertical direction based on the amplitude of the sensor data), a dominant frequency or frequencies of movement of load 176 or 212 (e.g., a dominant frequency or frequencies of vibration in the sensor data), or any other of the parameters described above with respect to the one or more first parameters. In one example, the adaptation includes adapting the operation of the robotic vehicle 160 or 200 based on one or more second parameters, where the adaptation includes any one or more of the following: Adapting restrictions or limitations to the linear speed of movement of the robotic vehicle 160 or 200; Adapting limits or limitations on the linear acceleration of the robotic vehicle 160 or 200; Adapting limits or limitations on the linear deceleration of the robotic vehicle 160 or 200; Adapting limits or limitations on the rotational speed of the movement of the robotic vehicle 160 or 200; Adapting restrictions or limitations to the rotational acceleration of the robotic vehicle 160 or 200; Adapting restrictions or limitations to the rotational deceleration of the robotic vehicle 160 or 200; Adapting any such limits or restrictions on the movement of the robotic vehicle 160 or 200 to prevent or mitigate the cause of the vehicle being driven at or near its determined resonant or natural frequency (e.g., preventing certain speeds on a floor with regularly spaced speed bumps); Adapting restrictions or limitations on the movement of the robotic vehicle 160 or 200 so that the vehicle must, in such cases, have a speed that exceeds a determined minimum speed (e.g., to cope with floors with regularly spaced speed bumps); Adapting restrictions or limitations on the movement of the robotic vehicle 160 or 200 so that the restrictions or limitations only apply to specific locations (e.g., specific aisles in a warehouse); or · A combination of any two or more of the above fits.

[0036] In another example, adapting the operation of robotic vehicle 160 or 200 may include stopping robotic vehicle 160 or 200. In yet another example, adapting the operation of robotic vehicle 160 or 200 may include controlling robotic vehicle 160 or 200 so that robotic vehicle 160 or 200 moves to a safe location (e.g., one of a set of predefined or preset safe stopping locations) and stops at the safe location. In another example, adapting includes adapting one or more characteristics of robotic vehicle 160 or 200 based on one or more second parameters, where the adapted characteristics may include, for example, one or more characteristics of a suspension system of robotic vehicle 160 or 200, where the suspension system is adapted to thereby stabilize load 176 or 212 if load 176 or 212 is determined to be unstable based on the second parameter(s).

[0037] Examples of the present disclosure may be utilized in any environment in which a robotic vehicle moves loads. For example, such robotic vehicles may be used when transporting pallets of goods that are guided through an automated storage and retrieval system, such as that disclosed in WO 2015 / 019055. In a further example, such robotic vehicles may be used alongside other autonomous vehicles, such as those disclosed in US 2018 / 006580.

[0038] FIG. 5 shows a schematic diagram of a robotic vehicle 160 according to one example of the present disclosure, as described above with reference to FIG. 1. It should be understood that the following description is equally applicable to the robotic vehicle 200 described above with reference to FIG. 2. As described above, the robotic vehicle includes a vehicle body 164, wheels 166, and forks 170. The robotic vehicle further includes a processor unit 163, which is communicatively coupled to a random access memory (RAM) 165 and a non-volatile data storage unit 167. The processor unit is capable of executing computer code stored in the non-volatile data storage unit 167 to control the operation of the robotic vehicle, including, for example, activation of the forklift, drive wheels, control system 174 (not shown in FIG. 5), etc. The robotic vehicle further includes a wireless communication interface 169 so that the robotic vehicle can receive data from and transmit data to a computing system 500. The wireless communication interface 169 may include a WiFi interface or other similar wireless interface, such as, for example, LTE or 5G.

[0039] The computing system 500 includes a processing unit 510, which is communicatively coupled to a random access memory (RAM) 520 and a non-volatile data storage device 530. The non-volatile data storage device stores an operating system, one or more application programs, and data accessed during operation of the computing system. The computing system further includes a wireless interface so that the computing system can transmit data to and receive data from one or more active robotic vehicles active in the environment, e.g., a warehouse. In one example, the computing system stores data regarding product items stored at respective locations in a warehouse. The computing system may, for example, send instructions to one of the robotic vehicles to move to a first location, retrieve a pallet from that location, move to a second location, and then place the pallet at the second location. It should be understood that the computing system may include additional elements not shown in FIG. 5 , such as a display screen and user interface elements that allow an operator to interact with the computing system, view data maintained by the computing system, etc. The computing system may additionally include a wide area network (WAN) interface to enable the computing system to connect to the Internet for communication with other computer systems, e.g., computing systems in further warehouses, centralized systems, supplier computer systems, etc. It should be understood that the computer system may be instantiated as a server located in the warehouse, as a server located elsewhere, or as several processes running on a cloud computing platform.

[0040] It will be appreciated that the present disclosure may be implemented in computer code for execution by a processor unit, and such computer code may be provided on a physical medium, such as a DVD, CD-ROM, USB memory stick, etc., or may be made available for download and installation.

[0041] The methods and systems described herein may transform physical and / or intangible items from one state to another. The methods and systems described herein may also transform data representing physical and / or intangible items from one state to another, such as from usage data to a normalized usage data set.

[0042] According to one aspect, a system and method are provided for automated analysis of a load on a robotic vehicle. In one example, a method (e.g., a computer-implemented method) includes lifting a load via a lifting mechanism of the robotic vehicle and applying a first force pulse to the load. The method further includes acquiring first sensor data from one or more sensors related to movement of the load in response to the first force pulse applied to the load, and determining one or more parameters related to the load based on the first sensor data. The method further includes taking one or more actions based on the one or more parameters related to the load. In this manner, the load can be analyzed in an automated manner, and appropriate action(s) can be taken (e.g., not moving the load because the load is unstable, limiting acceleration / deceleration of the robotic vehicle while moving the load, etc.).

Claims

1. 1. A method of operating a robotic vehicle, the method comprising: lifting the load via a lifting mechanism of the robotic vehicle; applying a first pulse of force to the load; acquiring first sensor data from one or more sensors related to movement of the load in response to the first force pulse applied to the load; determining one or more parameters associated with the load based on the first sensor data; and performing one or more actions based on the one or more parameters associated with the shipment.

2. 10. The method of claim 1, wherein the first force pulse applied to the load is either a lateral force pulse, a rotational force pulse, or a combined lateral and rotational force pulse.

3. The method of claim 1 or 2, wherein the first pulse of force is applied to the load by the robotic vehicle.

4. The first force pulse applied to the load is one of a lateral force pulse and a rotational force pulse, and the method further comprises: applying a second force pulse to the load, wherein the second force pulse is the other of a lateral force pulse and a rotational force pulse; acquiring second sensor data from the one or more sensors in response to the second force pulse applied to the load; 4. The method of claim 1, wherein determining the one or more parameters associated with the cargo comprises determining the one or more parameters associated with the cargo based on both the first sensor data and the second sensor data.

5. Taking the one or more actions includes determining one or more limits or limitations on movement of the robotic vehicle based on the one or more parameters associated with the load; operating in accordance with the one or more restrictions or limitations on movement of the robotic vehicle; The method of any one of claims 1 to 4, comprising:

6. performing the one or more actions determining whether it is safe for the robotic vehicle to move the load based on the one or more parameters associated with the load; causing the robotic vehicle to act according to a determination of whether it is safe to move the load; and The method of any one of claims 1 to 4, comprising:

7. performing one or more actions comprises moving the load via the robotic vehicle, the method comprising: During the movement of the load via the robotic vehicle, acquiring third sensor data from the one or more sensors; determining one or more second parameters based on the third sensor data; and adapting either the motion of the robotic vehicle or one or more characteristics of the robotic vehicle based on the one or more second parameters. The method of any one of claims 1 to 4, further comprising:

8. 8. The method of claim 7 , wherein adapting either the motion of the robotic vehicle or the one or more characteristics of the robotic vehicle based on the one or more second parameters comprises adapting a suspension of the robotic vehicle based on the one or more second parameters.

9. A robotic vehicle, a lifting mechanism comprising a lifting body and one or more sensors; a controller associated with the lifting mechanism, the controller, in use, causing the lifting mechanism to lift the load; causing the robotic vehicle to apply a first force pulse to the load; obtaining first sensor data from the one or more sensors related to movement of the load in response to the first force pulse applied to the load; determining one or more parameters associated with the load based on the first sensor data; The robotic vehicle is configured to take one or more actions based on the one or more parameters associated with the load.

10. The robotic vehicle of claim 9 , wherein the one or more sensors are located on the lifting mechanism.

11. The robotic vehicle of claim 10 , wherein the one or more sensors comprise one or more pressure sensors mounted within or affixed to the lifting mechanism.

12. The robotic vehicle of claim 11 , wherein the one or more pressure sensors are between a body of the lifting mechanism and a platform on which the load is positioned.