Method and system for raising and lowering a payload
Through the solid-state design payload coupling device, the slot and cam structure solve the reliability and complexity problems during payload separation in unmanned aerial vehicles, and realizes a simplified delivery and recycling process, improving the reliability of the system and reducing the failure rate.
Patent Information
- Application Number
- CN202211273441.X
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Priority Date
- 2016-12-22
- Filing Date
- 2017-08-28
- Publication Date
- 2025-07-25
- Estimated Expiration
- 2037-08-28
AI Technical Summary
In the delivery and recovery of payloads, existing unmanned aerial vehicles have problems of high complexity and low reliability, especially when the payload is separated from the aircraft, the problem of reengaging or stuck power lines or branches is prone to occur.
A payload coupling device with a solid state design includes a slot and a cam structure, the slot is adapted to receive the payload, supports the payload during delivery or retrieval, and prevents reengagement through the lower lip below the slot, which engages the directional payload with the mating cam within the aircraft fuselage, avoids moving parts to reduce complexity and risk of failure.
Reliable delivery and recovery of payloads is achieved, operation is simplified, system reliability is improved and failure rate is reduced, and payloads are prevented from reengaging with the handle or jamming power lines or branches when separated.
Smart Images

Figure CN115583346B_ABST
Abstract
Description
[0001] This application is a divisional application of the invention patent application (application number: 201780065910.X, invention title: Methods and Systems for Raising and Lowering Payloads) that enters the Chinese national phase from the PCT international application PCT / US2017 / 048908 filed on August 28, 2017. Technical Field
[0002] The present disclosure relates to an unmanned aerial vehicle, and more particularly to methods and systems for raising and lowering payloads. Background Art
[0003] An unmanned aerial vehicle (also referred to as an autonomous vehicle) is an aircraft that is capable of traveling without a physically present human operator. Unmanned aerial vehicles can operate in a remote control mode, an autonomous mode, or a partially autonomous mode.
[0004] When an unmanned aerial vehicle operates in a remote control mode, a pilot or driver located at a remote location can control the unmanned aerial vehicle by commands sent via a wireless link to the unmanned aerial vehicle. When an unmanned aerial vehicle operates in an autonomous mode, the unmanned aerial vehicle generally moves based on pre-programmed navigation waypoints, dynamic automation systems, or a combination of these. Additionally, some unmanned aerial vehicles can operate in both a remote control mode and an autonomous mode, and in some cases can do so simultaneously. For example, as an example, a remote pilot or driver may wish to leave navigation to the autonomous system while manually performing another task, such as operating a mechanical system for picking up an object.
[0005] There are various types of unmanned aerial vehicles for various different environments. For example, there are unmanned aerial vehicles for operating in the air, on the ground, underwater, and in space. Examples include quadrotor helicopters and vertical takeoff and landing UAVs, etc. There are also unmanned aerial vehicles for hybrid operations that can operate in multiple environments. Examples of hybrid unmanned aerial vehicles include amphibious vehicles capable of operating on land as well as on water or seaplanes capable of landing on water as well as on land. Other examples are possible. Summary of the Invention
[0006] This embodiment advantageously includes a unique payload coupling device. In one embodiment, the payload coupling device includes a slot that extends downwardly from the outer surface of the payload coupling device towards the center of the payload coupling device. The slot is adapted to receive the handle of the payload and support the payload during delivery or retrieval of the payload. Once the payload reaches the ground, the payload coupling device continues to move downward until the handle of the payload automatically disengages from the slot of the payload coupling device. The outer surface of the lower lip below the slot is undercut such that it extends less than the outer surface of the upper end of the payload coupling device above the slot to prevent the payload coupling device from re-engaging the handle of the payload during retrieval of the payload coupling device to the UAV, or from catching power lines or tree branches. The payload coupling device is advantageously a solid-state design with no moving parts, providing a less complex and more reliable way to deliver the payload to the ground.
[0007] In one aspect, there is provided a payload coupling device including a housing, wherein the housing is adapted to be attached to a first end of a tether, a slot that extends downwardly from the outer surface of the housing towards the center of the housing, thereby forming a lower lip on the housing below the slot; and wherein the slot is adapted to receive the handle of the payload.
[0008] In another aspect, there is provided a payload coupling device including a housing, a tether attachment point on the bottom of the housing, a slot that extends vertically between a first inner surface of the housing and a pair of vertically extending fingers on the housing, wherein the slot is adapted to receive the handle of the payload, an opening formed between the pair of vertical fingers, and a tether slot located on the first inner surface of the housing.
[0009] In yet another aspect, there is provided a method of delivering a payload from an unmanned aerial vehicle (UAV) including the steps of: (i) providing a tether having a first end fixed to a winch system located in the UAV and a second end fixed to a payload coupling device; (ii) positioning the handle of the payload within the slot of the payload coupling device; (iii) operating the winch system to lower the payload coupling device and the payload until the payload engages the ground; and (iv) further operating the winch system to lower the payload coupling device until the handle of the payload disengages from the slot of the payload coupling device.
[0010] These and other aspects, advantages, and alternatives will become apparent to those of ordinary skill in the art by appropriately referring to the accompanying drawings and reading the following detailed description. Further, it should be understood that the descriptions provided in this summary section and elsewhere in this document are intended to illustrate the claimed subject matter by way of example and not by way of limitation. BRIEF DESCRIPTION OF THE DRAWINGS
[0011] Figure 1AIs a simplified illustration of an unmanned aerial vehicle according to an exemplary embodiment.
[0012] Figure 1B Is a simplified illustration of an unmanned aerial vehicle according to an exemplary embodiment.
[0013] Figure 1C Is a simplified illustration of an unmanned aerial vehicle according to an exemplary embodiment.
[0014] Figure 1D Is a simplified illustration of an unmanned aerial vehicle according to an exemplary embodiment.
[0015] Figure 1E Is a simplified illustration of an unmanned aerial vehicle according to an exemplary embodiment.
[0016] Figure 2 Is a simplified block diagram showing components of an unmanned aerial vehicle according to an exemplary embodiment.
[0017] Figure 3 Is a simplified block diagram showing a UAV system according to an exemplary embodiment.
[0018] Figure 4A 、 4B And 4C show a payload delivery device according to an exemplary embodiment.
[0019] Figure 5A Shows a perspective view of a payload delivery device 500 including a payload 510 according to an exemplary embodiment.
[0020] Figure 5B Is Figure 5A A cross-sectional side view of the payload delivery device 500 and the payload 510 shown in
[0021] Figure 5C Is Figure 5A And 5B A side view of the payload delivery device 500 and the payload 510 shown in
[0022] Figure 6A Is a perspective view of a payload coupling device 800 according to an exemplary embodiment.
[0023] Figure 6B Is Figure 6A A side view of the payload coupling device 800 shown in
[0024] Figure 6C Is Figure 6A And 6B A front view of the payload coupling device 800 shown in
[0025] Figure 7 Is Figures 6A-6CPerspective view of the payload coupling device 800 as shown before insertion into the payload coupling device socket located in the UAV fuselage.
[0026] Figure 8 Is Figures 6A-6C Another perspective view of the payload coupling device 800 as shown before insertion into the payload coupling device socket located in the UAV fuselage.
[0027] Figure 9 Perspective view showing the recessed restraint groove and the payload coupling device socket located in the UAV fuselage.
[0028] Figure 10A Side view showing the payload delivery device 500 as the payload 510 moves downward before touchdown delivery, with the handle 511 of the payload 510 fixed within the payload coupling device 800.
[0029] Figure 10B Side view of the payload delivery device 500 after the payload 510 has landed on the ground, showing the separation of the payload coupling device 800 from the handle 511 of the payload 510.
[0030] Figure 10C Side view of the payload delivery device 500 where the payload coupling device 800 moves away from the handle 511 of the payload 510.
[0031] Figure 11 Side view of the handle 511 of the payload 510.
[0032] Figure 12 Shows a pair of locking pins 570, 572 that extend through holes 514 and 516 in the handle 511 of the payload 510 to secure the handle 511 and the top of the payload 510 within the UAV fuselage.
[0033] Figure 13A Perspective view of the payload coupling device 900 before placing the handle of the payload within the slot 920 of the payload coupling device 900.
[0034] Figure 13B Perspective view of the payload coupling device 900 after delivering the payload and separating from the handle of the payload.
[0035] Figure 14A Is according to an example embodiment Figure 13A And 13B Front perspective view of the payload coupling device 900 as shown.
[0036] Figure 14B Is Figure 14ARear perspective view of the payload coupling device 900 shown in
[0037] Figure 14C is Figure 14A and 14B Side view of the payload coupling device 900 shown in
[0038] Figure 14D is Figures 14A-14C Front view of the payload coupling device 900 shown in
[0039] Figure 14E is Figure 14A Top view of the payload coupling device 900 shown in -D
[0040] Figure 15A Perspective view of the payload coupling device 1000 according to an exemplary embodiment
[0041] Figure 15B is Figure 15A Another perspective view of the payload coupling device 1000 shown in
[0042] Figure 15C is Figure 15A and 15B Side view of the payload coupling device 1000 shown in
[0043] Figure 15D is Figure 15A Top view of the payload coupling device 1000 shown in -C
[0044] Figure 15E is Figure 15A Cross-sectional side view of the payload coupling device 1000 shown in -D
[0045] Figure 16A Side view of the payload coupling device 800' according to an exemplary embodiment, where the slot 808 is located above the lip 806'
[0046] Figure 16B Side view of the payload coupling device 800' after the slot 808 has closed after the separation of the payload coupling device 800' from the handle of the payload
[0047] Figure 16C is Figure 16A Cross-sectional side view of the payload coupling device 800' shown in
[0048] Figure 16D is Figure 16B Cross-sectional side view of the payload coupling device 800' shown in
[0049] Figure 17 It is a flowchart of a method for performing a tethered pick-up of a payload for subsequent delivery to a target location according to an exemplary embodiment.
[0050] Figure 18 It is a flowchart of a method for performing a tethered delivery of a payload according to an exemplary embodiment.
[0051] Figure 19 It is an exemplary flowchart for facilitating control of a tether for user interaction and / or providing feedback to a user according to an exemplary embodiment.
[0052] Figure 20 It shows the variation of the motor current level over time according to an exemplary embodiment.
[0053] Figure 21 It shows a detected current spike indicating a specific user interaction with the tether according to an exemplary embodiment.
[0054] Figure 22 It shows a motor response based on a specific user interaction according to an exemplary embodiment.
[0055] Figure 23 It shows a motor response process for adjusting the tension of the tether according to an exemplary embodiment.
[0056] Figure 24 It shows a motor response process for providing a braking feeling according to an exemplary embodiment.
[0057] Figure 25 It shows a motor response process followed by a UAV response process according to an exemplary embodiment.
[0058] Figure 26 It is a flowchart of a method for determining whether a payload has detached from the tether of a UAV according to an exemplary embodiment.
[0059] Figure 27 It is an exemplary flowchart for initiating a damping routine to suppress oscillations of a payload coupling device according to an exemplary embodiment.
[0060] Figures 28A to 28D Collectively show the initiation of a damping routine during a tether retraction process according to an exemplary embodiment.
[0061] Figure 29 It is an exemplary flowchart for initiating forward flight to suppress oscillations of a payload according to an exemplary embodiment.
[0062] Figures 30A to 30D Collectively show the use of forward flight to suppress oscillations of a payload according to an exemplary embodiment.
[0063] Figure 31 is an example flowchart according to an example embodiment for reducing the flight stability level to suppress oscillations of a payload.
[0064] Figures 32A to 32H Collectively show using a reduced flight stability level to suppress oscillations of a payload according to an example embodiment.
[0065] Figure 33 is an example flowchart according to an example embodiment for selecting one or more damping routines to help suppress oscillations of a payload.
[0066] Figure 34 is a flowchart of a method for detaching a tether from a UAV according to an example embodiment.
[0067] Figure 35 is a flowchart of a method for detecting and resolving a downward force on a tether when lowering a payload to the ground according to an example embodiment.
[0068] Figure 36 is a flowchart of a method for detecting and resolving a downward force on a tether when winching a payload towards a UAV according to an example embodiment.
[0069] Figure 37 is a flowchart of a method for detecting whether a UAV has successfully picked up a payload according to an example embodiment.
[0070] Figure 38A shows a part of a state diagram of a UAV performing a payload pick-up and delivery process according to an example embodiment.
[0071] Figure 38B shows another part of a state diagram of a UAV performing a payload pick-up and delivery process according to an example embodiment.
[0072] Figure 38C shows another part of a state diagram of a UAV performing a payload pick-up and delivery process according to an example embodiment. Detailed Description
[0073] Exemplary methods and systems are described herein. It should be understood that the term "exemplary" is used herein to mean "serving as an example, instance, or illustration". Any embodiment or feature described herein as "exemplary" or "illustrative" is not necessarily to be construed as preferred or superior to other embodiments or features. In the figures, unless the context otherwise indicates, like reference numerals generally refer to like components. The example embodiments described herein are not meant to be limiting. It will be readily understood that the aspects of the present disclosure as generally described herein and illustrated in the figures can be arranged, substituted, combined, separated, and designed in a wide variety of different configurations, all of which are contemplated herein.
[0074] I. Overview
[0075] This embodiment relates to the use of an unmanned aerial vehicle (UAV) or unmanned aerial system (UAS) (collectively referred to herein as UAV) for carrying a payload to be delivered or retrieved. As an example, the UAV can be used to deliver or retrieve a payload from an individual or enterprise. In operation, the payload to be delivered is secured to the UAV, and then the UAV flies to the desired delivery site. Once the UAV reaches the delivery site, the UAV can land to deliver the payload or operate in a hover mode and use a tether and a winch mechanism positioned with the UAV to lower the payload from the UAV towards the delivery site. When the payload touches the ground, the payload coupling device (sometimes referred to as a capsule) automatically separates from the payload. Additionally, the payload can be retrieved while the UAV is operating in a hover mode by positioning the handle of the payload into a slot in the payload coupling device.
[0076] For delivering the payload, the UAV can include various mechanisms to secure the payload during transportation and release the payload upon delivery. The example embodiments can take the form of or relate to a device for passively coupling the payload to the UAV for transportation and release upon delivery.
[0077] Such a payload coupling device can include a housing coupled to the UAV by a tether that can be wound and unwound to raise and lower the housing relative to the UAV. The housing can include one or more swing arms adapted to extend at an acute angle from the housing to form hooks on which the payload can be attached. When the housing and the attached payload are lowered from the UAV (e.g., by unwinding the tether) to a transportation position (e.g., the ground) below the UAV, the payload can be detached from the hook.
[0078] For example, once the payload reaches the ground, the UAV can over-run the tether by continuing to unwind it. When the payload remains stationary on the ground, the payload coupling device can continue to lower, and the gravitational and / or inertial forces on the housing can cause the swing arm hook to disengage from the payload. When disengaging from the payload, the swing arm can be adapted to retract into the housing, and the payload coupling device can rise towards the UAV (e.g., by retracting the tether), leaving the payload on the ground. When the payload coupling device approaches the UAV, a device adapted to receive the housing can engage a cam of the swing arm such that the swing arm extends from the housing at an acute angle, thereby forming a hook for securing another payload for delivery by the UAV.
[0079] More specifically, this embodiment advantageously includes a unique payload coupling device. In one embodiment, the payload coupling device includes a slot extending downwardly from an outer surface of the payload coupling device towards the center of the payload coupling device. The slot is adapted to receive a handle of the payload and support the payload during delivery or retrieval of the payload. Once the payload reaches the ground, the payload coupling device continues to move downward until the handle of the payload disengages from the slot of the payload coupling device. The outer surface of the lower lip below the slot is undercut such that it extends less above the slot than the outer surface of the upper end of the payload coupling device to prevent the payload coupling device from re-engaging the handle of the payload during retraction of the payload coupling device into the UAV, or from catching a power line or tree branch.
[0080] The payload coupling device can include cams located on opposite sides of its outer surface. When the payload coupling device is winched back into the UAV, the cams of the payload coupling device are adapted to engage corresponding cams within the fuselage of the UAV such that when the cams engage, the payload coupling device can rotate to orient the payload coupling device in a desired position within the UAV fuselage.
[0081] In this regard, the payload can have a longitudinally extending top such that when a cam on the outer surface of the payload coupling device engages a mating cam within the UAV fuselage, the longitudinally extending top rotates into a desired position within a corresponding longitudinally extending recessed restraint slot in the bottom of the UAV fuselage. In other embodiments, the payload can simply be pulled in to be closely positioned against the bottom of the UAV fuselage. In such a case, when the cam of the payload coupling device engages the mating cam within the fuselage, the top of the payload does not need to have a longitudinally extending top that becomes positioned within a cavity of the fuselage. However, in the case of using cams, the cams of the payload coupling device and the mating cams within the payload coupling socket in the fuselage can appropriately rotate the payload coupling device to orient the payload in a desired position relative to the fuselage.
[0082] A significant advantage of the payload coupling device is that the payload coupling device does not include moving parts, thereby reducing its complexity and reducing the likelihood of component failure that exists when the payload coupling device includes moving parts.
[0083] The payload can advantageously include a handle that is well-suited for positioning within a slot of the payload coupling device. The handle can be constructed of a thin, flexible plastic material that is highly flexible, allowing for easy insertion into the slot of the payload coupling mechanism and also facilitating separation from the slot of the payload coupling mechanism when the payload lands. When the handle is bent to match the angle of the slot in the payload coupling device, it is desirable for the handle flexibility to allow the payload and payload coupling device to hang vertically upright. A more rigid handle makes it easier for the payload coupling device to separate from the handle when the package lands, although if the handle is too soft, the payload coupling device can flip without releasing. Additionally, it is desirable that upon separation, the handle should spring back to a vertical orientation, which further reduces re-hooking of the handle with the slot of the payload coupling device and tightens the package into restraint when engaged within the fuselage of the UAV. It should also be noted that the handle can also be paper or other natural fibers, with or without a plastic laminate or plastic / glass / natural fiber to provide additional strength. For example, fiber-reinforced paper can also be used.
[0084] The handle can also advantageously include a pair of holes that are adapted to receive locking pins positioned within the UAV. The locking pins can have a conical shape to facilitate insertion into the holes in the handle and to pull the package into a tight engagement within a recessed restraint slot in the UAV fuselage. Once the cam of the payload coupling device engages a mating cam within the fuselage, the handle is positioned in the desired orientation. A servo motor or other mechanism such as a conventional motor with a lead screw or a rack and pinion with limit switches to control the stroke (or other mechanisms such as a linear actuator) can be used to move the tapered locking pins through the holes in the handle to hold the handle and payload tightly in place, allowing the UAV to fly at high speeds when the payload is secured beneath the UAV. Alternatively, one or more locking pins can be moved to a position within a recess or opening in the payload coupling device itself rather than into the holes in the package handle to secure the payload coupling device and package to the UAV.
[0085] The payload can take the form of an aerodynamic carry bag, although the payload can have any number of different configurations and geometries. However, in the case where the linear recessed restraint slot is positioned with respect to the fuselage, it is desirable for the top of the payload to have a generally linear shape to fit within the linear recessed restraint slot in the fuselage.
[0086] The payload coupling mechanism can also have different configurations. For example, the tether can be attached to the bottom of the payload coupling device and positioned within a vertically extending tether slot in the payload coupling device. The vertical tether slot extends through the payload coupling device, which is adapted to receive the handle of the payload. In this position, the handle of the payload is positioned within the slot during delivery and retrieval. The payload coupling device also includes a pair of upwardly extending fingers that are located around the slot and have an opening therebetween.
[0087] When the payload contacts the ground, the payload coupling device continues to move downward and automatically disengages from the handle of the payload. The payload coupling device can include a weighted upper half such that when disengaging from the handle of the payload, the payload coupling device tips over and rotates 180 degrees such that the pair of upwardly extending fingers rotate 180° and extend downward. During this rotation, the tether becomes disengaged from the vertical tether slot and moves through the opening between the pair of fingers. As a result, re-engagement of the payload coupling with the handle of the payload is prevented because the slot extends downward. Additionally, the slot that extends downward after the handle is released also helps prevent the payload coupling device from engaging with a power line or tree branch when winched back to the UAV because the opening in the slot extends downward. Alternatively, the payload coupling device can be bottom weighted.
[0088] This embodiment of the payload coupling device can also include a cam on its outer surface that is adapted to engage a mating cam within a payload coupling device socket within the airframe to orient the payload coupling device in a desired position within the UAV airframe.
[0089] In another embodiment, a vertical slot can be positioned within the payload coupling device that is adapted to receive the handle of the payload and support the handle and payload during delivery and retrieval. In this embodiment, the tether slot is positioned outside of the payload coupling device and the top of the payload coupling device is weighted such that when the payload reaches the ground, the payload coupling device continues to move downward until the handle disengages from the slot of the payload coupling device. Once disengaged, the weighted payload coupling mechanism rotates 90 degrees such that during retrieval or when snagging a power line or tree branch, the slot cannot re-engage with the handle of the payload. This embodiment of the payload coupling mechanism can include a cam on its outer surface that is adapted to engage a mating cam within the UAV airframe to orient the payload coupling mechanism as well as the handle and payload in a desired position.
[0090] In addition, the payload delivery system automatically aligns the package during winch-up so that it is oriented with minimum drag along the longitudinal axis of the aircraft. This alignment enables high-speed forward flight after pick-up. The alignment is achieved through the shape of the payload hook and socket. The hook (also called a capsule due to its shape) has cam features around its perimeter that, when engaged into the cam features within the socket of the UAV fuselage, always orient it in a defined direction. The cam-shaped tips on both sides of the capsule are asymmetric to prevent jamming in the 90-degree direction. In this regard, the helical cam surfaces can meet at the apex on one side of the payload coupling mechanism and the helical cam surfaces can meet at the rounded apex on the other side of the payload coupling mechanism. The hook is specifically designed so that the package hangs on the centerline of the hook, allowing alignment in two directions of 90 degrees.
[0091] In addition to the alignment function, when the package contacts the ground during delivery, the payload hook also passively and automatically releases the package. This is achieved through the shape and angle of the hook slot and the corresponding handle on the package. When the payload touches the ground due to the mass of the capsule and the inertia that wants to continue moving the capsule downward through the package, the hook easily slides off the handle. The end of the hook is designed to be slightly recessed from the body of the capsule, which prevents the hook from accidentally reattaching to the handle. After successful release, the hook is winched back onto the aircraft. All these functions (package alignment during pick-up and passive release during delivery) can be advantageously achieved without any moving parts in this hook embodiment (referred to as a solid-state design). This greatly improves reliability and reduces costs. The simple design also makes user interaction very clear and self-explanatory. Additionally, the payload coupling device can be bottom-weighted so that it remains in the desired vertical direction and does not tilt.
[0092] The package for winch-up / pick-up operations can be an aerodynamic-shaped tote bag with a reinforced snap-on handle (e.g., made of plastic or other materials such as fibers), but other shaped payloads can also be used. The handle of the payload attaches the payload to the hook of the payload coupling device, and its slot or opening is shaped to allow reliable passive release. The handle may also include two smaller openings for locking pins. The reinforcement of the handle facilitates the transfer of torque from the capsule to the package during alignment rotation. The package itself can be made of cardstock material and have an internal tear strip. A thin fiber tape tear strip can extend along the perimeter of one side of the package and enables the customer to easily open the package after delivery.
[0093] When the payload is winched up and alignment is complete, the extra vertical travel of the capsule in its socket is used to pull the payload into a recessed restraint slot in the UAV fuselage. The recessed restraint slot matches the shape of the upper portion of the payload and stabilizes it during cruise flight, preventing any excessive lateral or back-and-forth swaying motion. The recessed restraint slot is also fully embedded in the fuselage and has no protrusions, thus allowing for good aerodynamic performance during return flight (after package delivery).
[0094] This embodiment provides a highly integrated winch-based pick-up and delivery system for a UAV. Many significant advantages can be provided. For example, the ability to pick up and deliver packages without the need to land is provided. The system is capable of winching up a package while the aircraft is hovering. In some applications, there may also be no need for infrastructure for merchants or customers. Its advantages include high mission flexibility, the possibility of limited or no infrastructure installation costs, and higher flexibility in payload geometry.
[0095] II. Illustrative Unmanned Aerial Vehicle
[0096] Here, the terms "unmanned aerial vehicle" and "UAV" refer to any autonomous or semi-autonomous aircraft capable of performing some functions without the actual presence of a human pilot.
[0097] UAVs can take various forms. For example, UAVs can take the form of fixed-wing aircraft, gliders, vertical takeoff and landing aircraft, jets, ducted fan aircraft, lighter-than-air airships such as blimps or steerable balloons, rotorcraft such as helicopters or multi-rotor aircraft, and / or flapping-wing aircraft, etc. In addition, the terms "unmanned drone", "unmanned aerial vehicle system" (UAVS) or "unmanned aviation system" (UAS) can also be used to refer to UAVs.
[0098] Figure 1A is a simplified illustration providing various views of a UAV according to an example embodiment. In particular, Figure 1A an example of a fixed-wing UAV 1100a is shown, which may also be referred to as an airplane, aircraft, biplane, glider, or plane, etc. As the name implies, the fixed-wing UAV 1100a has a fixed wing 1102 that generates lift based on the wing shape and the forward airspeed of the aircraft. For example, the two wings 1102 can have a cross-section with an airfoil shape to generate aerodynamic forces on the UAV 1100a.
[0099] As shown, the fixed-wing UAV 1100a can include a wing body or fuselage 1104. The wing body 1104 can contain, for example, control electronics such as an inertial measurement unit (IMU) and / or an electronic speed controller, a battery, other sensors, and / or a payload, etc. The illustrative UAV 1100a can also include landing gear (not shown) to assist in controlled takeoff and landing. In other embodiments, other types of UAVs without landing gear are also possible.
[0100] The UAV 1100a also includes propulsion units 1106 positioned on the wings 1106 (or fuselage), which can each include an electric motor, a shaft, and a propeller for propelling the UAV 1100a. Stabilizers 1108 (or fins) can also be attached to the UAV 1110a to stabilize the yaw (left or right turn) of the UAV during flight. In some embodiments, the UAV 1100a can also be configured to act as a glider. To this end, the UAV 1100a can turn off its electric motor, propulsion unit, etc., and glide for a period of time. In the UAV 1100a, a pair of rotor supports 1110 extend below the wings 1106, and a plurality of rotors 1112 are attached to the rotor supports 1110. The rotors 1112 can be used during the hover mode, where the UAV 1110a is descending to a delivery position or ascending after delivery. In the exemplary UAV 1100a, the stabilizer 1108 is shown attached to the rotor support 1110.
[0101] During flight, the UAV 1100a can control the direction and / or speed of its movement by controlling its pitch, roll, yaw, and / or altitude. For example, the stabilizer 1108 can include one or more rudders 1108a for controlling the yaw of the UAV, and the wings 1102 can include one or more elevators for controlling the pitch of the UAV and / or one or more ailerons 1102a for controlling the roll of the UAV. As another example, simultaneously increasing or decreasing the speed of all propellers can cause the UAV 1100a to increase or decrease its altitude, respectively.
[0102] Similarly, Figure 1B Another example of a fixed-wing UAV 120 is shown. The fixed-wing UAV 120 includes a fuselage 122, two wings 124 having an airfoil cross-section to provide lift for the UAV 120, a vertical stabilizer (or fin) to stabilize the yaw (left or right turn) of the aircraft, a horizontal stabilizer 128 (also referred to as an elevator or horizontal tail) to stabilize the pitch (tilting up or down), landing gear 130, and a propulsion unit 132, which can include an electric motor, a shaft, and a propeller.
[0103] Figure 1CShows an example of a UAV 140 with a propeller in a pusher configuration. Contrary to the propulsion unit being mounted at the front of the UAV, the term "pusher" means that the propulsion unit 142 is mounted at the rear of the UAV and "pushes" the aircraft forward. Similar to Figure 1A and 1B the description provided, Figure 1C depicts a common structure used in pusher aircraft, including a fuselage 144, two wings 146, a vertical stabilizer 148, and a propulsion unit 142, which may include an electric motor, a shaft, and a propeller.
[0104] Figure 1D Shows an example of a vertical takeoff and landing UAV 160. In the example shown, the vertical takeoff and landing UAV 160 has fixed wings 162 to provide lift and allow the UAV 160 to taxi horizontally (e.g., along the x-axis, in a position approximately perpendicular to Figure 1D the position shown). However, the fixed wings 162 also allow the vertical takeoff and landing UAV 160 to take off and land vertically on its own.
[0105] For example, at a launch site, the vertical takeoff and landing UAV 160 can be positioned vertically (as shown), with its fins 164 and / or wings 162 resting on the ground and stabilizing the UAV 160 in a vertical position. Then the vertical takeoff and landing UAV 160 can take off by operating its propellers 166 to generate upward thrust (e.g., thrust generally along the y-axis). Once at a suitable altitude, the vertical takeoff and landing UAV 160 can use its flaps 168 to reorient itself to a horizontal position such that its fuselage 170 is more aligned with the x-axis than the y-axis. By being horizontally positioned, the propellers 166 can provide forward thrust, enabling the vertical takeoff and landing UAV 160 to fly in a manner similar to a conventional aircraft.
[0106] Many variations are possible on the illustrated fixed-wing UAV. For example, the fixed-wing UAV can include more or fewer propellers and / or can utilize one or more ducted fans for propulsion. Additionally, UAVs with more wings (e.g., an "x-wing" configuration with four wings), fewer wings, or even no wings are also possible.
[0107] As described above, in addition to or alternatively to fixed-wing UAVs, some embodiments may also relate to other types of UAVs. For example, Figure 1EAn example of a rotary-wing aircraft commonly referred to as a multi-rotor aircraft 180 is shown. The multi-rotor aircraft 180 may also be referred to as a quadcopter since it includes four rotors 182. It should be understood that example embodiments may relate to rotary-wing aircraft having more or fewer rotors than the multi-rotor aircraft 180. For example, a helicopter typically has two rotors. Other examples with three or more rotors are also possible. Here, the term "multi-rotor aircraft" refers to any rotary-wing aircraft having more than two rotors, and the term "helicopter" refers to a rotary-wing aircraft having two rotors.
[0108] Referring in more detail to the multi-rotor aircraft 180, the four rotors 182 provide propulsion and maneuverability for the multi-rotor aircraft 180. More specifically, each rotor 182 includes blades attached to an electric motor 184. Constructed in this way, the rotors 182 can allow the multi-rotor aircraft 180 to take off and land vertically, maneuver in any direction, and / or hover. Additionally, the pitch of the blades can be adjusted as a group and / or differentially, and can allow the multi-rotor aircraft 180 to control its pitch, roll, yaw, and / or altitude.
[0109] It should be understood that references herein to "unmanned" aircraft or UAVs may equally apply to autonomous and semi-autonomous aircraft. In an autonomous implementation, all functions of the aircraft are automatic; for example, pre-programmed or controlled via real-time computer functions that respond to inputs from various sensors and / or predetermined information. In a semi-autonomous implementation, some functions of the aircraft can be controlled by an operator, while other functions are performed autonomously. Additionally, in some embodiments, the UAV can be configured to allow a remote operator to take over functions that would otherwise be autonomously controlled by the UAV. Further still, a given type of function can be remotely controlled at one level of abstraction and performed autonomously at another level of abstraction. For example, a remote operator can control high-level navigation decisions of the UAV, such as by specifying that the UAV should travel from one location to another (e.g., from a suburban warehouse to a delivery address in a nearby city), while the UAV's navigation system autonomously controls more refined navigation decisions, such as the specific route between the two locations, the specific flight controls to achieve the route, and avoiding obstacles while navigating along the route.
[0110] More generally, it should be understood that the example UAVs described herein are not intended to be limiting. Example embodiments may relate to any type of unmanned aircraft, be implemented therein, or take such a form.
[0111] III. Illustrative UAV Components
[0112] Figure 2 is a simplified block diagram showing the components of a UAV 200 according to an example embodiment. The UAV 200 may take the form of referenceFigures 1A-1E is in the form of or is similar in form to one of the described UAVs 100, 120, 140, 160, and 180. However, the UAV 200 can also take other forms.
[0113] The UAV 200 can include various types of sensors and can include a computing system configured to provide the functions described herein. In the illustrated embodiment, the sensors of the UAV 200 include an inertial measurement unit (IMU) 202, an ultrasonic sensor 204, and a GPS 206, as well as other possible sensors and sensing systems.
[0114] In the illustrated embodiment, the UAV 200 also includes one or more processors 208. The processor 208 can be a general-purpose processor or a special-purpose processor (e.g., a digital signal processor, an application-specific integrated circuit, etc.). The one or more processors 208 can be configured to execute computer-readable program instructions 212 that are stored in the data memory 210 and are executable to provide the functions of the UAV described herein.
[0115] The data storage device 210 can include or take the form of one or more computer-readable storage media that can be read or accessed by at least one processor 208. The one or more computer-readable storage media can include volatile and / or non-volatile storage components, such as optical, magnetic, organic, or other memory or disk storage, which can be integrated, in whole or in part, with at least one of the one or more processors 208. In some embodiments, the data memory 210 can be implemented by using a single physical device (e.g., one optical, magnetic, organic, or other memory or disk storage unit), while in other embodiments, the data memory 210 can be implemented by using two or more physical devices.
[0116] As described above, the data memory 210 can include computer-readable program instructions 212 and possibly additional data, such as diagnostic data of the UAV 200. Thus, the data memory 210 can include program instructions 212 to perform or facilitate some or all of the UAV functions described herein. For example, in the illustrated embodiment, the program instructions 212 include a navigation module 214 and a tether control module 216.
[0117] A. Sensors
[0118] In an illustrative embodiment, the IMU 202 can include an accelerometer and a gyroscope, which can be used together to determine the orientation of the UAV 200. In particular, the accelerometer can measure the orientation of the vehicle relative to the Earth, while the gyroscope measures the rate of rotation about an axis. IMUs are commercially available in low-cost, low-power packages. For example, the IMU 202 can take the form of or include a micro-electromechanical system (MEMS) or a nano-electromechanical system (NEMS). Other types of IMUs can also be used.
[0119] In addition to the accelerometer and gyroscope, the IMU 202 can also include other sensors, which can help to better determine the position and / or contribute to increasing the autonomy of the UAV 200. Two examples of such sensors are a magnetometer and a pressure sensor. In some embodiments, the UAV can include a low-power digital 3-axis magnetometer, which can be used to implement an orientation-independent electronic compass for accurate heading information. However, other types of magnetometers can also be used. Other examples are also possible. Additionally, note that the UAV can include some or all of the above inertial sensors as components separate from the IMU.
[0120] The UAV 200 can also include a pressure sensor or barometer, which can be used to determine the altitude of the UAV 200. Alternatively, other sensors such as a pitch meter or a radar altimeter can also be used to provide an indication of altitude, which may help to improve the accuracy of the IMU and / or prevent its drift.
[0121] On the other hand, the UAV 200 can include one or more sensors that allow the UAV to sense objects in the environment. For example, in the illustrated embodiment, the UAV 200 includes an ultrasonic sensor 204. The ultrasonic sensor 204 can determine the distance to an object by generating sound waves and determining the time interval between the transmission of the wave and the corresponding echo received by the object. Typical applications of ultrasonic sensors for unmanned aerial vehicles or IMUs are low-level altitude control and obstacle avoidance. Ultrasonic sensors can also be used for aircraft that need to hover at a certain altitude or need to be able to detect obstacles. Other systems can be used to determine and sense the presence of nearby objects (such as light detection and ranging (LIDAR) systems, laser detection and ranging (LADAR) systems, and / or infrared or forward-looking infrared (FLIR) systems, etc.) and / or determine the distance to nearby objects.
[0122] In some embodiments, the UAV 200 may further include one or more imaging systems. For example, the UAV 200 may use one or more still photography and / or cameras to capture image data from the UAV environment. As a specific example, a charge-coupled device (CCD) camera or a complementary metal-oxide-semiconductor (CMOS) camera may be used for the unmanned aerial vehicle. Such imaging sensors have many possible applications, such as obstacle avoidance, positioning techniques, ground tracking for more precise navigation (e.g., by applying optical flow techniques to images), video feedback, and / or image recognition and processing, etc.
[0123] The UAV 200 may further include a GPS receiver 206. The GPS receiver 206 may be configured to provide data of a typical well-known GPS system, such as the GPS coordinates of the UAV 200. The UAV 200 may utilize such GPS data for various functions. Thus, the UAV may use its GPS receiver 206 to assist in navigating to the location of the caller, as indicated by the GPS coordinates provided at least in part by its mobile device. Other examples are possible.
[0124] B. Navigation and Position Determination
[0125] The navigation module 214 may provide functions that allow the UAV 200 to move around its environment and reach a desired location, for example. To this end, the navigation module 214 may control the altitude and / or direction of flight by controlling the mechanical characteristics of the UAV that affect flight (e.g., its rudder, elevator, ailerons, and / or the speed of its propellers).
[0126] To navigate the UAV 200 to a target location, the navigation module 214 may implement various navigation techniques, such as map-based navigation and location-based navigation. With map-based navigation, the UAV 200 may be provided with a map of its environment and may then use the map to navigate to a specific location on the map. With location-based navigation, the UAV 200 is capable of navigating in an unknown environment by using positioning. Location-based navigation may involve the UAV 200 building its own map of the environment and calculating its position within the map and / or the position of objects in the environment. For example, as the UAV 200 moves throughout its environment, the UAV 200 may continuously use positioning to update its map of the environment. This continuous mapping process may be referred to as simultaneous localization and mapping (SLAM). Other navigation techniques may also be used.
[0127] In some embodiments, the navigation module 214 can use waypoint-dependent techniques for navigation. In particular, a waypoint is a set of coordinates that identify a point in physical space. For example, an aerial navigation waypoint can be defined by a certain latitude, longitude, and altitude. Thus, the navigation module 214 can move the UAV 200 between waypoints in order to ultimately travel to a final destination (e.g., the final waypoint in a sequence of waypoints).
[0128] On the other hand, the navigation module 214 of the UAV 200 and / or other components and systems can be configured for scenarios where the UAV “positions” to more precisely navigate to a target location. More specifically, in certain cases, it may be necessary for the UAV to be within a threshold distance of the target location where the UAV delivers the payload 228 (e.g., within a few feet of the target destination). To this end, the UAV can use a dual approach, where a more general position determination technique is used to navigate to a general area associated with the target location, and then a more precise position determination technique is used to identify and / or navigate to the target location within the general area.
[0129] For example, the UAV 200 can navigate to the general area of the target destination where the payload 228 is being delivered by using waypoints and / or map-based navigation. Then, the UAV can switch to a mode where it uses a positioning process to position and proceed to a more specific location. For example, if the UAV 200 delivers the payload to a user's home, the UAV 200 may need to be substantially close to the target location in order to avoid delivering the payload to an undesired area (e.g., onto a roof, into a pool, onto a neighbor's property, etc.). However, thus far, the GPS signal may only be received by the UAV 200 (e.g., within the block of the user's home). Then, a more precise position determination technique can be used to find the specific target location.
[0130] Once the UAV 200 has navigated to the general area of the target delivery location, various types of position determination techniques can be used to achieve the positioning of the target delivery location. For example, the UAV 200 can be equipped with one or more sensing systems, such as ultrasonic sensors 204, infrared sensors (not shown), and / or other sensors, which can provide inputs that the navigation module 214 utilizes to autonomously or semi-autonomously navigate to a specific target location.
[0131] As another example, once the UAV 200 reaches the general area of the target delivery location (or a moving object such as a person or their mobile device), the UAV 200 can switch to a “fly-by-wire” mode, where it is at least partially controlled by a remote operator, who can navigate the UAV 200 to a specific target location. To this end, the sensing data from the UAV 200 can be sent to the remote operator to assist them in navigating the UAV 200 to a specific location.
[0132] As another example, the UAV 200 may include a module capable of signaling to passers-by to assist in reaching a specific target delivery location; for example, the UAV 200 may display a visual message requesting such assistance on a graphical display, play an audio message or tone through a speaker to indicate that such assistance is needed, etc. Such visual or audio messages may indicate that assistance is needed when delivering the UAV 200 to a specific person or specific location, and may provide information to assist the passer-by in delivering the UAV 200 to the person or location (such as a description or picture of the person or location, and / or the name of the person or location), etc. Such a feature may be useful in cases where the UAV is unable to use sensing functions or other location determination techniques to reach a specific target location. However, the feature is not limited to such cases.
[0133] In some embodiments, once the UAV 200 reaches the general area of the target delivery location, the UAV 200 may utilize a beacon from a remote device of the user (such as the user's mobile phone) to locate the person. Such beacons can take various forms. As an example, consider that a remote device (such as the mobile phone of the person requesting UAV delivery) is capable of sending a directional signal (such as via an RF signal, an optical signal, and / or an audio signal). In such a case, the UAV 200 may be configured to navigate by "acquiring" such a directional signal - in other words, by determining where the signal is strongest and navigating accordingly. As another example, the mobile device may emit a frequency within or outside the human range, and the UAV 200 may listen for that frequency and navigate accordingly. As a related example, if the UAV 200 is listening for verbal commands, the UAV 200 may use a verbal statement such as "I'm here!" to seek the specific location of the person requesting delivery of the payload.
[0134] In an alternative arrangement, the navigation module may be implemented in a remote computing device that wirelessly communicates with the UAV 200. The remote computing device may receive data indicating the operating state of the UAV 200, sensor data from the UAV 200 (allowing it to evaluate the environmental conditions the UAV 200 is experiencing), and / or location information of the UAV 200. Provided with such information, the remote computing device may determine the altitude and / or direction adjustments that the UAV 200 should make and / or may determine how the UAV 200 should adjust its mechanical features (such as its rudder, elevator, ailerons, and / or the speed of its propellers) to achieve such movement. The remote computing system may then transmit such adjustments to the UAV 200, enabling it to move in a determined manner.
[0135] C. Communication System
[0136] On the other hand, UAV 200 includes one or more communication systems 218. The communication system 218 can include one or more wireless interfaces and / or one or more wired interfaces, which allow the UAV 200 to communicate via one or more networks. Such wireless interfaces can provide communication under one or more wireless communication protocols, such as Bluetooth, WiFi (e.g., IEEE 802.11 protocol), Long Term Evolution (LTE), WiMAX (e.g., IEEE 802.16 standard), Radio Frequency ID (RFID) protocol, Near Field Communication (NFC), and / or other wireless communication protocols. Such wired interfaces can include Ethernet interfaces, Universal Serial Bus (USB) interfaces, or similar interfaces to communicate via wires, twisted pairs, coaxial cables, optical links, fiber optic links, or other physical connections to a wired network.
[0137] In some embodiments, the UAV 200 can include a communication system 218 that allows for short-range communication and long-range communication. For example, the UAV 200 can be configured for short-range communication using Bluetooth and long-range communication under the CDMA protocol. In such embodiments, the UAV 200 can be configured to act as a "hotspot", or in other words, as a gateway or proxy between a remote support device and one or more data networks (such as cellular networks and / or the Internet). So configured, the UAV 200 can facilitate data communications that a remote support device would otherwise not be able to perform on its own.
[0138] For example, the UAV 200 can provide a WiFi connection to a remote device and act as a proxy or gateway to a data network of a cellular service provider that the UAV may be connected to, for example, under the LTE or 3G protocol. The UAV 200 can also act as a proxy or gateway to a high-altitude balloon network, a satellite network, or a combination of these networks that a remote device may not be able to access otherwise.
[0139] D. Power System
[0140] On the other hand, the UAV 200 can include a power system 220. The power system 220 can include one or more batteries for providing power to the UAV 200. In one example, one or more batteries can be rechargeable, and each battery can be recharged via a wired connection between the battery and a power source and / or via a wireless charging system (such as an inductive charging system that applies an external time-varying magnetic field to an internal battery).
[0141] E. Payload Delivery
[0142] The UAV 200 can employ various systems and configurations for transporting and delivering the payload 228. In some embodiments, the payload 228 of a given UAV 200 can include or take the form of a "package" designed to transport various goods to a target delivery location. For example, the UAV 200 can include a compartment in which one or more items can be transported. Such a package can be one or more food items, purchased items, medical items, or any other object having dimensions and weights suitable for transportation by the UAV between two locations. In other embodiments, the payload 228 can simply be one or more items being delivered (e.g., without any package containing the items).
[0143] In some embodiments, the payload 228 can be attached to the UAV and be located substantially outside the UAV during some or all of the UAV's flight. For example, the package can be tethered or otherwise releasably attached beneath the UAV during flight to the target location. In embodiments where the package transports items beneath the UAV, the package can include various features for protecting its contents from the environment, reducing aerodynamic drag on the system, and preventing the contents of the package from shifting during UAV flight.
[0144] For example, when the payload 228 takes the form of a package for transporting items, the package can include a housing constructed of waterproof cardboard, plastic, or any other lightweight and waterproof material. Additionally, to reduce drag, the package can have a smooth surface with a sharp front, thereby reducing the frontal cross-sectional area. Further, the sides of the package can taper from a wide bottom to a narrow top, which allows the package to be used as a narrow suspension, thereby reducing the interference effects on the UAV's wings. This may move some of the front regions and volume of the package away from the UAV's wings, thus preventing a reduction in lift on the wings caused by the package. Additionally, in some embodiments, the housing of the package can be constructed from a single-piece material to reduce air gaps or excess material, both of which can increase drag on the system. Additionally or alternatively, the package can include stabilizers for dampening package jitter. Such a reduction in jitter may allow for a less rigid connection of the package to the UAV and may result in less shifting of the package's contents during flight.
[0145] To deliver the payload, the UAV can include a winch system 221 controlled by a tether control module 216 to lower the payload 228 to the ground while the UAV hovers above. As Figure 2As shown, the winch system 221 can include a tether 224 that can be coupled to a payload 228 via a payload coupling device 226. The tether 224 can be wound around a spool coupled to a motor 222 of the UAV. The motor 222 can be in the form of a DC motor (such as a servo motor) that can be actively controlled by a speed controller. The tether control module 216 can control the speed controller to cause the motor 222 to rotate the spool, thereby deploying or retracting the tether 224 and lowering or raising the payload coupling device 226. In practice, the speed controller can output a desired operating rate (such as a desired RPM) for the spool, which can correspond to the speed at which the tether 224 and the payload 228 should be lowered towards the ground. The motor 222 can then rotate the spool to maintain the desired operating rate.
[0146] To control the motor 222 via the speed controller, the tether control module 216 can receive data from a speed sensor (such as an encoder) configured to convert a mechanical position into a representative analog or digital signal. In particular, the speed sensor can include a rotary encoder that can provide information related to the rotational position (and / or rotational motion) of the shaft of the motor or a spool coupled to the motor, etc. In addition, the speed sensor can be in the form of an absolute encoder and / or an incremental encoder, etc. Thus, in an example implementation, as the motor 222 rotates the spool, a rotary encoder can be used to measure the rotation. During this process, the rotary encoder can be used to convert the rotational position into an analog or digital electronic signal used by the tether control module 216 to determine the amount of rotation of the spool from a fixed reference angle and / or to a new rotational position represented by the analog-digital electronic signal, etc. Other examples are possible.
[0147] Based on the data from the speed sensor, the tether control module 216 can determine the rotational speed of the motor 222 and / or the spool and responsively control the motor 222 (such as by increasing or decreasing the current supplied to the motor 222) to cause the rotational speed of the motor 222 to match the desired speed. When adjusting the motor current, the magnitude of the current adjustment can be based on a proportional-integral-derivative (PID) calculation using the determined and desired speeds of the motor 222. For example, the magnitude of the current adjustment can be based on the current difference, the past difference (based on the cumulative error over time), and the future difference (based on the current rate of change) between the determined and desired speeds of the spool.
[0148] In some embodiments, the tether control module 216 can vary the rate at which the tether 224 and payload 228 descend to the ground. For example, a speed controller can vary a desired operating rate according to a variable deployment rate curve and / or in response to other factors to vary the rate at which the payload 228 descends to the ground. To this end, the tether control module 216 can adjust the amount of braking or friction applied to the tether 224. For example, to vary the tether deployment rate, the UAV 200 can include a friction pad that can apply a variable amount of pressure to the tether 224. As another example, the UAV 200 can include a motorized braking system that varies the rate at which the spool pays out the tether 224. Such a braking system can take the form of an electromechanical system in which the motor 222 operates to slow the rate at which the spool pays out the tether 224. Additionally, the motor 222 can vary the amount by which it adjusts the speed (e.g., RPM) of the spool and can thus vary the deployment rate of the tether 224. Other examples are possible.
[0149] In some embodiments, the tether control module 216 can be configured to limit the motor current supplied to the motor 222 to a maximum value. Due to such a limit on the motor current, there may be situations where the motor 222 cannot operate at the desired operation specified by the speed controller. For example, as discussed in more detail below, there may be a situation where the speed controller specifies a desired operating rate at which the motor 222 should retract the tether 224 towards the UAV 200, but the motor current can be limited such that a large enough downward force on the tether 224 will counteract the retracting force of the motor 222 and instead cause the tether 224 to unwind. As further discussed below, depending on the operating state of the UAV 200, the limit on the motor current can be applied and / or varied.
[0150] In some embodiments, the tether control module 216 can be configured to determine the state of the tether 224 and / or the payload 228 based on the amount of electrical current supplied to the motor 222. For example, if a downward force is applied to the tether 224 (e.g., if the payload 228 is attached to the tether 224, or if the tether 224 is snagged on an object as it is being retracted towards the UAV 200), the tether control module 216 may need to increase the motor current in order to match the determined rotational speed of the motor 222 and / or the spool to a desired speed. Similarly, when the downward force is removed from the tether 224 (e.g., during payload 228 delivery or when removing a tether snag), the tether control module 216 may need to decrease the motor current in order to match the determined rotational speed of the motor 222 and / or the spool to a desired speed. Thus, the tether control module 216 can be configured to monitor the current supplied to the motor 222. For example, the tether control module 216 can determine the motor current based on sensor data received from a current sensor of the motor or a current sensor of the power system 220. In any case, based on the current supplied to the motor 222, it is determined whether the payload 228 is attached to the tether 224, whether someone or something is pulling on the tether 224, and / or whether the payload coupling device 226 is pressing against the UAV 200 after retracting the tether 224. Other examples are possible.
[0151] During delivery of the payload 228, the payload coupling device 226 can be configured to secure the payload 228 while it is descending from the UAV by the tether 224, and can be further configured to release the payload 228 when it reaches the ground plane. The payload coupling device 226 can then be retracted to the UAV by using the motor 222 to wind the tether 224.
[0152] In some embodiments, once the payload 228 is lowered to the ground, it can be passively released. For example, the passive release mechanism can include one or more swing arms adapted to retract into and extend from a housing. The extended swing arms can form hooks on which the payload 228 can be attached. When the release mechanism and the payload 228 are lowered to the ground by the tether, the gravity on the release mechanism and the downward inertial force may cause the payload 228 to disengage from the hook, thereby allowing the release mechanism to rise upward towards the UAV. The release mechanism can further include a spring mechanism that biases the swing arms to retract into the housing when there is no other external force on the swing arms. For example, the spring can apply a force on the swing arms to push or pull the swing arms towards the housing such that the swing arms retract into the housing once the weight of the payload 228 no longer forces the swing arms to extend from the housing. When delivering the payload 228, retracting the swing arms into the housing can reduce the likelihood of the release mechanism snagging the payload 228 or other nearby objects when lifting the release mechanism towards the UAV.
[0153] An active payload release mechanism is also possible. For example, sensors such as a barometer and / or accelerometer based on air pressure can help detect the position of the release mechanism (and payload) relative to the ground. Data from the sensors can be transmitted back to the UAV and / or control system via a wireless link and used to help determine when the release mechanism reaches the ground plane (e.g., by using measurements from the accelerometer to detect ground impact signatures). In other examples, the UAV can determine that the payload has reached the ground based on a weight sensor that detects a threshold low downward force on the tether and / or a threshold low measurement of the power drawn by the winch when lowering the payload.
[0154] In addition to or as an alternative to the tethered delivery system, other systems and techniques for delivering payloads are also possible. For example, the UAV 200 can include an airbag landing system or a parachute landing system. Alternatively, the UAV 200 carrying the payload can simply land on the ground at the delivery location. Other examples are also possible.
[0155] IV. Illustrative UAV Deployment System
[0156] The UAV system can be implemented to provide various UAV-related services. In particular, UAVs can be provided at a plurality of different launch sites that may communicate with a regional and / or central control system. Such a distributed UAV system can allow for the rapid deployment of UAVs to provide services across a large geographic area (e.g., much larger than the flight range of any single UAV). For example, UAVs capable of carrying payloads can be distributed at a plurality of launch sites across a large geographic area (possibly even throughout a country or even the world) in order to provide on-demand transportation of various items to locations across the geographic area. Figure 3 is a simplified block diagram showing a distributed UAV system 300 according to an example embodiment.
[0157] In the illustrative UAV system 300, an access system 302 can allow for network interaction, control, and / or use of the UAV 304. In some embodiments, the access system 302 can be a computing system that allows for the scheduling of the manual control of the UAV 304. Thus, the control system can include or otherwise provide a user interface through which a user can access and / or control the UAV 304.
[0158] In some embodiments, the scheduling of the UAV 304 can be accomplished additionally or alternatively via one or more automated processes. For example, the access system 302 can schedule one of the UAVs 304 to transport a payload to a target location, and the UAV can autonomously navigate to the target location by utilizing various on-board sensors such as a GPS receiver and / or other various navigation sensors.
[0159] In addition, the access system 302 may provide for remote operation of the UAV. For example, the access system 302 may allow an operator to control the flight of the UAV via its user interface. As a specific example, the operator may use the access system 302 to dispatch the UAV 304 to a target location. The UAV 304 may then autonomously navigate to the general area of the target location. At this time, the operator may use the access system 302 to control the UAV 304 and navigate the UAV to the target location (e.g., navigate to a specific person to whom the payload is being transported). Other examples of remote operation of the UAV are possible.
[0160] In an illustrative embodiment, the UAV 304 may take various forms. For example, each UAV 304 may be one of those UAVs such as Figures 1A-1E shown. However, without departing from the scope of the present invention, the UAV system 300 may also use other types of UAVs. In some embodiments, all UAVs 304 may have the same or similar configurations. However, in other embodiments, the UAVs 304 may include multiple different types of UAVs. For example, the UAVs 304 may include multiple types of UAVs, each type of UAV configured for one or more different types of payload delivery capabilities.
[0161] The UAV system 300 may also include a remote device 306 that may take various forms. Generally, the remote device 306 may be any device through which a direct or indirect request to dispatch a UAV may be issued. (Note that an indirect request may involve any communication that may result in a response by dispatching a UAV, such as a request for package delivery). In an example embodiment, the remote device 306 may be a mobile phone, a tablet computer, a laptop computer, a personal computer, or any networked computing device. Additionally, in some cases, the remote device 306 may not be a computing device. As an example, a standard telephone that allows communication via plain old telephone service (POTS) may be used as the remote device 306. Other types of remote devices are possible.
[0162] In addition, the remote device 306 may be configured to communicate with the access system 302 via one or more types of communication networks 308. For example, the remote device 306 may communicate with the access system 302 (or an operator of the access system 302) by communicating over a POTS network, a cellular network, and / or a data network such as the Internet. Other types of networks may also be used.
[0163] In some embodiments, the remote device 306 can be configured to allow a user to request delivery of one or more items to a desired location. For example, a user can request via their mobile phone, tablet, or laptop for a UAV to deliver a package to their home. As another example, a user can request dynamic delivery to wherever they are located at the time of delivery. To provide such dynamic delivery, the UAV system 300 can receive location information (such as GPS coordinates, etc.) from the user's mobile phone or any other device of the user's person, such that the UAV can navigate to the user's location (as indicated by their mobile phone).
[0164] In an illustrative arrangement, the central dispatch system 310 can be a server or a group of servers, which is configured to receive dispatch message requests and / or dispatch instructions from the access system 302. Such a dispatch message can request or instruct the central dispatch system 310 to coordinate the deployment of UAVs to various target locations. The central dispatch system 310 can be further configured to route such requests or instructions to one or more local dispatch systems 312. To provide such functionality, the central dispatch system 310 can communicate with the access system 302 via a data network (such as the Internet or a dedicated network established for communication between the access system and the automated dispatch system).
[0165] In the illustrated configuration, the central dispatch system 310 can be configured to coordinate the dispatch of UAVs 304 from multiple different local dispatch systems 312. Thus, the central dispatch system 310 can track which UAV 304 is located at which local dispatch system 312, which UAV 304 is currently available for deployment and / or which service or operation each UAV 304 is configured for (in the case where the UAV fleet includes multiple types of UAVs configured for different services and / or operations). Additionally or alternatively, each local dispatch system 312 can be configured to track which of its associated UAVs 304 is currently available for deployment and / or is currently in the process of transporting an item.
[0166] In some cases, when the central dispatch system 310 receives a request for a service related to a UAV (such as the transportation of an item) from the access system 302, the central dispatch system 310 can select a specific UAV 304 for dispatch. The central dispatch system 310 can accordingly instruct the local dispatch system 312 associated with the selected UAV to dispatch the selected UAV. The local dispatch system 312 can then operate its associated deployment system 314 to launch the selected UAV. In other cases, the central dispatch system 310 can forward the request for a service related to a UAV to a local dispatch system 312 near the location supported by the request, and leave the selection of a specific UAV 304 to the local dispatch system 312.
[0167] In an example configuration, the local scheduling system 312 can be implemented as a computing system at the same location as the deployment system 314 it controls. For example, the local scheduling system 312 can be implemented by a computing system installed in a building such as a warehouse, where the deployment system 314 and the UAV 304 associated with a particular local scheduling system 312 are also located. In other embodiments, the local scheduling system 312 can be implemented at a location remote from its associated deployment system 314 and UAV 304.
[0168] A variety of variations and alternatives to the illustrated configuration of the UAV system 300 are possible. For example, in some embodiments, a user of the remote device 306 can request delivery of a package directly from the central scheduling system 310. To this end, an application can be implemented on the remote device 306 that allows the user to provide information about the requested delivery and generate and send a data message to request that the UAV system 300 provide the delivery. In such an embodiment, the central scheduling system 310 can include automated functionality to process requests generated by such an application, evaluate such requests, and, if appropriate, coordinate with an appropriate local scheduling system 312 to deploy a UAV.
[0169] In addition, some or all of the functionality attributed herein to the central scheduling system 310, local scheduling system 312, access system 302, and / or deployment system 314 can be combined in a single system, implemented in a more complex system, and / or redistributed in various ways among the central scheduling system 310, local scheduling system 312, access system 302, and / or deployment system 314.
[0170] In addition, while each local scheduling system 312 is shown as having two associated deployment systems 314, a given local scheduling system 312 can optionally have more or fewer associated deployment systems 314. Similarly, although the central scheduling system 310 is shown as communicating with two local scheduling systems 312, the central scheduling system 310 can optionally communicate with more or fewer local scheduling systems 312.
[0171] On the other hand, the deployment system 314 can take various forms. Generally, the deployment system 314 can take the form of or include a system for physically launching one or more UAVs 304. Such a launch system can include features that provide for automated UAV launches and / or features that allow for human-assisted UAV launches. In addition, each deployment system 314 can be configured to launch a particular UAV 304 or multiple UAVs 304.
[0172] The deployment system 314 can also be configured to provide additional functionality, such as functionality related to diagnostics, such as verifying the system functionality of the UAV, verifying the functionality of devices (such as payload delivery devices) housed within the UAV, and / or maintaining devices or other items housed within the UAV (such as by monitoring the status of the payload, such as its temperature, weight, etc.).
[0173] In some embodiments, the deployment system 314 and its corresponding UAV 304 (and possibly the associated local dispatch system 312) can be strategically distributed in an area such as a city. For example, the deployment system 314 can be strategically distributed such that each deployment system 314 is near one or more payload pickup locations (such as near a restaurant, store, or warehouse). However, depending on the specific implementation, the deployment system 314 (and possibly the local dispatch system 312) can be distributed in other ways. As another example, kiosks that allow users to transport packages via UAV can be installed at various locations. Such kiosks can include a UAV launch system and can allow users to provide their packages to be loaded onto the UAV and pay for UAV delivery services, etc. Other examples are possible.
[0174] On the other hand, the UAV system 300 can include or can access a user account database 316. The user account database 316 can include data for multiple user accounts, and each of them is associated with one or more individuals. For a given user account, the user account database 316 can include data that is relevant or useful for providing UAV-related services. Generally, the user data associated with each user account is optionally provided by the relevant user and / or collected with the permission of the relevant user.
[0175] Furthermore, in some embodiments, if people wish to have UAV-related services provided by the UAV 304 of the UAV system 300, it may be necessary for people to register for a user account of the UAV system 300. In this way, the user account database 316 can include authorization information for a given user account (such as a username and password) and / or other information that can be used to authorize access to the user account.
[0176] In some embodiments, people can associate one or more of their devices with their user account such that they can access the services of the UAV system 300. For example, when a person uses a related mobile phone, such as placing a call to an operator of the call access system 302 or sending a message to the dispatch system requesting UAV-related services, the phone can be identified by a unique device identification number, and the call or message can then be attributed to the relevant user account. Other examples are possible.
[0177] V. Example Systems and Devices for Payload Delivery
[0178] Figure 4A , 4B Figures 4B, 4C show a UAV 400 including a payload delivery system 410 (which may also be referred to as a payload delivery device) according to an example embodiment. As shown, the payload delivery system 410 for the UAV 400 includes a tether 402 coupled to a spool 404, a payload latch 406, and a payload 408 coupled to the tether 402 via a payload coupling device 412. The payload latch 406 can be used to alternately secure the payload 408 and release the payload 408 during delivery. For example, as shown, the payload latch 406 can take the form of one or more pins that can engage the payload coupling device 412 (e.g., by sliding into one or more receiving slots in the payload coupling device 412). Inserting the pins of the payload latch 406 into the payload coupling device 412 can secure the payload coupling device 412 within a socket 414 on the underside of the UAV 400, thereby preventing the payload 408 from dropping from the UAV 400. In some embodiments, the payload latch 406 can be arranged to engage the spool 404 or the payload 408 instead of the payload coupling device 412 to prevent the payload 408 from dropping. In other embodiments, the UAV 400 may not include the payload latch 406, and the payload delivery device can be directly coupled to the UAV 400.
[0179] In some embodiments, the spool 404 can be used to unwind the tether 402 so that the payload 408 can be lowered from the UAV 400 to the ground via the tether 402 and the payload coupling device 412. The payload 408 itself can be an item for delivery and can be housed in (or otherwise incorporated into) a package, container, or other structure configured to connect to the payload latch 406. In fact, the payload delivery system 410 of the UAV 400 can be used to autonomously lower the payload 408 to the ground in a controlled manner when the UAV 400 is hovering overhead, in order to facilitate delivery of the payload 408 to the ground.
[0180] As Figure 4A shown, during flight from the launch site to the target location 420, the payload latch 406 can be in the closed position (e.g., the pins engaged with the payload coupling device 412) to hold the payload 408 at or near the bottom of the UAV 400, or even partially or fully within the UAV 400. The target location 420 can be a point in space directly above the desired delivery location. Then, when the UAV 400 reaches the target location 420, the control system of the UAV (e.g., Figure 2The tether control module 216) can switch the payload latch 406 to the open position (e.g., disengaging the pin from the payload coupling device 412), thereby allowing the payload 408 to be lowered from the UAV 400. The control system can further operate the spool 404 (e.g., by controlling Figure 2 the motor 222 thereof), such that the payload 408 fixed to the tether 402 via the payload coupling device 412 is lowered to the ground, as Figure 4B shown.
[0181] Once the payload 408 reaches the ground, the control system can continue to operate the spool 404 to lower the tether 402, thereby causing over-extension of the tether 402. During the over-extension of the tether 402, the payload coupling device 412 can continue to lower while the payload 408 remains stationary on the ground. The downward momentum and / or gravity on the payload coupling device 412 can cause the payload 408 to separate from the payload coupling device 412 (e.g., by sliding off the hook of the payload coupling device 412). After releasing the payload 408, the control system can operate the spool 404 to retract the tether 402 and the payload coupling device 412 towards the UAV 400. Once the payload coupling device reaches or approaches the UAV 400, the control system can operate the spool 404 to pull the payload coupling device 412 into the socket 414, and the control system can switch the payload latch 406 to the closed position, as Figure 4C shown.
[0182] In some embodiments, when lowering the payload 408 from the UAV 400, the control system can detect when the payload 408 and / or the payload coupling device 412 have been lowered to the ground or near it based on the length of the tether 402 unwound from the spool 404. Similar techniques can be used to determine when the payload coupling device 412 is at or near the UAV 400 when retracting the tether 402. As described above, the UAV 400 can include an encoder for providing data indicative of the rotation of the spool 404. Based on the data from the encoder, the control system can determine how many rotations the spool 404 has undergone, and based on the number of rotations, determine the length of the tether 402 unwound from the spool 404. For example, the control system can determine the unwound length of the tether 402 by multiplying the number of rotations of the spool 404 by the circumference of the tether 402 wound on the spool 404. In some embodiments, such as when the spool 404 is narrow or when the tether 402 has a large diameter, the circumference of the tether 402 on the spool 404 can vary as the tether 402 is wound or unwound from the spool, and thus the control system can be configured to account for these variations when determining the unwound tether length.
[0183] In other embodiments, the control system can use various types of data and various techniques to determine when the payload 408 and / or the payload coupling device 412 are lowered to or near the ground. Additionally, data for determining when the payload 408 is at or near the ground can be provided by sensors on the UAV 400, sensors on the payload coupling device 412, and / or other data sources that provide data to the control system.
[0184] In some embodiments, the control system itself can be located on the payload coupling device 432 and / or the UAV 400. For example, the payload coupling device 412 can include logic modules implemented by hardware, software, and / or firmware that cause the UAV 400 to function as described herein, and the UAV 400 can include logic modules that communicate with the payload coupling device 432 to cause the UAV 400 to perform the functions described herein.
[0185] Figure 5A A perspective view of a payload delivery device 500 including a payload 510 according to an example embodiment is shown. The payload delivery device 500 is located within the fuselage of a UAV (not shown) and includes a winch 514 powered by an electric motor 512 and a tether 502 wound around the winch 514. The tether 502 is attached to a payload connection device 800 located within a payload coupling device socket 516 positioned within the fuselage of the UAV (not shown). The payload 510 is secured to the payload coupling device 800. In this embodiment, the top 513 of the payload 510 is secured within the fuselage of the UAV. A locking pin 570 is shown extending through a handle 511 attached to the payload 510 to effectively secure the payload beneath the UAV during high-speed flight.
[0186] Figure 5B is Figure 5A A cross-sectional side view of the payload delivery device 500 and the payload 510 shown in. In this view, the payload coupling device is shown positioned closely to the payload coupling device socket 536. The tether 502 extends from the winch 514 and is attached to the top of the payload coupling device 800. The top 513 of the payload 510 is shown positioned within the fuselage of the UAV (not shown) together with the handle 511.
[0187] Figure 5C is Figure 5A and 5B A side view of the payload delivery device 500 and the payload 510 shown in. The top 513 of the payload 510 is shown located within the fuselage of the UAV. The winch 514 has been used to wind the tether 502 to position the payload coupling device within the payload coupling device socket 516. Figure 5A-C discloses a payload 10 that presents the shape of an aerodynamic hexagonal tote bag, where the base and sidewalls are six-sided hexagons and the tote bag includes a generally pointed front surface and a rear surface that are formed at the intersection of the sidewalls and base of the tote bag that provides the aerodynamic shape.
[0188] VI. Example Capsules, Sockets, and Wraps / Tote Bags
[0189] Figure 6A is a perspective view of a payload coupling device 800 according to an example embodiment. The payload coupling device 800 includes a tether attachment point 802 and a slot 808 for positioning the handle of the payload therein. A lower lip or hook 806 is located below the slot 808. An outer projection 804 is also included having helical cam surfaces 804a and 804b that are adapted to mate with corresponding cam mating surfaces within a payload coupling device socket positioned on the UAV fuselage.
[0190] Figure 6B is Figure 6A a side view of the payload coupling device 800 shown in. The slot 808 is shown as being located above the lower lip or hook 806. As shown, the lower lip or hook 806 has an undercut outer surface 806a such that it does not extend outwardly above the outer surface of the slot 805, such that the lower lip or hook 806 will not re-engage with its handle after the payload has separated, or engage with power lines or tree branches during retraction into the UAV.
[0191] Figure 6C is Figure 6A and 6B a front view of the payload coupling device 800 shown in and. The lower lip or hook 806 is shown as being positioned below the slot 808 adapted to secure the payload handle.
[0192] Figure 7 is of Figures 6A-6CPerspective view of the payload coupling device 800 shown in [figure number]. As previously described, the payload coupling device 800 includes a slot 808 located above the lower lip or hook 806, which is adapted to receive the handle of the payload. The fuselage 550 of the payload delivery system 500 includes a payload coupling device socket 516 positioned within the fuselage 550 of the UAV. The payload coupling device 800 includes outer protrusions 810 having helical cam surfaces 810a and 810b that meet at a rounded apex. The helical cam surfaces 810a and 810b are adapted to mate with surfaces 530a and 530b of inward protrusions 530 located within the payload coupling device socket 516 positioned within the fuselage 550 of the UAV. Also included is a longitudinal recessed restraint slot 540 located within the fuselage 550 of the UAV, which is adapted to receive and restrict the top of the payload (not shown). When the payload coupling device 800 is pulled into the payload coupling device socket 516, the cam surfaces 810a and 810b of the outer protrusion 810 engage the cam surfaces 530a and 530b within the payload coupling device socket 516, and the payload coupling device 800 rotates to a desired alignment within the fuselage 550 of the UAV.
[0193] Figure 8 before insertion into the payload coupling device socket 516 located within the fuselage 550 of the UAV Figures 6A-6C Another perspective view of the opposite side of the payload coupling device 800 shown in [figure number]. As shown, the payload coupling device 800 includes a lower lip or hook 806. The outer protrusion 804 is shown extending outward from the payload coupling device having helical cam surfaces 810a and 810b adapted to engage and mate with the cam surfaces 530a and 530b of inward protrusions 530 located within the payload coupling device socket 516 positioned within the fuselage 550 of the UAV. It should be noted that the cam surfaces 804a and 804b meet at a pointed apex that is [description of the relationship with something else]. Figure 7The rounded or blunt vertices of the cam surfaces 810a and 810b shown in [Fig. 0] are asymmetric. In this way, the rounded or blunt vertices of the cam surfaces 810a and 810b prevent possible jamming of the payload coupling device 800 because the cam surfaces engage cam surfaces 530a and 530b located within a payload coupling device socket 516 positioned within the fuselage 550 of the UAV. In particular, the cam surfaces 804a and 804b are positioned slightly higher than the rounded or blunt vertices of the cam surfaces 810a and 810b. As a result, the sharper tips of the cam surfaces 804a and 804b engage cam surfaces 530a and 530b located within the payload coupling device socket 516 within the fuselage 550 of the payload delivery system 500, thereby slightly initiating rotation of the payload coupling device 800 before the rounded or blunt vertices of the cam surfaces 810a and 810b engage the corresponding cam surfaces within the payload coupling device socket 516. In this way, the situation where the two vertices (or tips) of the cam surfaces on the payload coupling device terminate on the same side of the receiving cam within the payload coupling device socket is prevented. This situation results in preventing the payload coupling device from jamming within the socket.
[0194] Figure 9 A perspective view of a recessed restraint slot and a payload coupling device socket positioned within the fuselage of the UAV is shown. In particular, the payload delivery system 500 includes a fuselage 550 having a payload coupling device socket 516 therein, which includes an inward protrusion 530 having cam surfaces 530a and 530b adapted to mate with corresponding cam surfaces on a payload coupling device (not shown). Also included is a longitudinally extending recessed restraint slot 540 within which the top of the payload is adapted to be positioned and secured within the fuselage 550.
[0195] Figure 10A A side view of the payload delivery device 500 is shown where the handle 511 of the payload 510 is secured within the payload coupling device 800 as the payload 510 moves downward prior to touchdown delivery. Prior to touchdown of the payload, the handle 511 of the payload 510 includes a hole 513 through which a lower lip or hook of the payload coupling device 800 extends. The handle is located within a slot of the payload coupling device 800 which is suspended from a tether 502 of the payload delivery system 500 as the payload 510 descends to the landing point.
[0196] Figure 10BA side view of the payload delivery device 500 after the payload 510 has landed on the ground is shown, showing the payload coupling device 800 separated from the handle 511 of the payload 510. Once the payload 510 contacts the ground, the payload coupling device 800 continues to move downward by inertia or gravity (as the winch further unfolds) and separates the lower lip or hook 808 of the payload coupling device 800 from the handle 511 of the payload 510. The payload coupling device 800 remains suspended on the tether 502 and can be winched back to the payload coupling socket of the UAV.
[0197] Figure 10C A side view of the payload delivery device 500 is shown, where the payload coupling device 800 moves away from the handle 511 of the payload 510. Here, the payload coupling device 800 is completely separated from the hole 513 in the handle 511 of the payload 510. The tether 502 can be used to winch the payload coupling device back to the payload coupling device socket located in the UAV fuselage.
[0198] Figure 11 Is a side view of the handle 511 of the payload 510. The handle 511 includes a hole 513 through which the lower lip or hook of the payload coupling device extends to suspend the payload during delivery. The handle 511 includes a lower portion 515 that is fixed to the top of the payload. Also included are holes 514 and 516 through which a locking pin located within the fuselage of the UAV can extend to hold the handle and payload in a fixed position during high-speed forward flight to the delivery position. The handle can be made of a thin flexible plastic material that is flexible and provides sufficient strength to suspend the payload beneath the UAV during forward flight to the delivery point and during the conveyance and / or retrieval of the payload. In practice, the handle can be bent to position the handle within the slot of the payload coupling device. The handle 511 also has sufficient strength to withstand torque during rotation of the payload coupling device into the desired orientation within the payload coupling device socket and rotation of the top of the payload into engagement with the recessed restraint slot.
[0199] Figure 12A pair of locking pins 570, 572 are shown extending through holes 514 and 516 in the handle 511 of the payload 510 to secure the handle 511 and the top of the payload 510 within the fuselage of the UAV. In this way, the handle 511 and the payload 510 can be secured within the fuselage of the UAV. In this embodiment, the locking pins 570 and 572 have a tapered shape such that they pull slightly upward on the wrap or at least remove any downward slack present. In some embodiments, the locking pins 570 and 572 can fully plug the holes 514 and 516 of the handle 511 of the payload 510 to provide a very secure attachment of the handle and the top of the payload within the fuselage of the UAV. Although preferably the locking pins are tapered, in other applications they can have other geometries, such as a cylindrical geometry.
[0200] Figure 13A is a perspective view of the payload coupling device 900 before positioning the handle of the payload within the slot 920 of the payload coupling device 900. The payload coupling device 900 has a tether slot 906 on the inner surface 904 of the portion 914 into which the tether 902 is inserted. It also includes a pair of upwardly extending fingers 908 and 910 with a slot 912 therebetween. The handle of the payload can be inserted into the slot 920 of the payload coupling device 900, which is located between the upwardly extending fingers 908 and 910 and the inner surface 904.
[0201] Figure 13B is a perspective view of the payload coupling device 900 after delivering the payload and separating the payload coupling device 900 from the handle of the payload. In this embodiment, the upper portion of the portion 914 is weighted such that when the payload coupling device 900 is separated from the handle of the payload, the payload coupling device 900 rotates 180 degrees such that the fingers 908 and 910 extend downwardly, thereby preventing the slot 920 from re-engaging with the handle of the payload or engaging with branches or wires during retraction into the fuselage of the UAV. During the rotation after separation, the tether 902 is pulled from the tether slot 906 ( Figure 13A as shown) and through the slot 912 between the fingers 908 and 910 such that the payload coupling device 900 hangs on the tether 902.
[0202] Figure 14A -E provides Figure 13A and 13B the various views of the payload coupling device 900 shown in Figure 14AAs shown in -E, the payload coupling device 900 includes a slot 920 located between upwardly extending fingers 908 and 910 and an inner surface 904. A tether slot 906 is located in the inner surface 904. A slot 912 also extends between the upwardly extending fingers 908 and 910. A tether attachment point 922 is positioned at the bottom of the payload coupling device 900. The tether slot 906 extends from the tether attachment point 922 to the top of the inner surface 904. The upper portion 914 of the payload coupling device 914 is weighted such that upon payload landing, the payload coupling device automatically separates from the handle of the payload, and the weighted upper portion 914 causes the payload coupling device 900 to rotate 180 degrees downward. During this rotation, the tether is pulled out of the tether slot 906, and the payload coupling device is suspended from the UAV by the tether attached to the tether attachment point 922, with the fingers 908 and 910 pointing downward. As a result, when retracted into the UAV, the fingers 908 and 910 are prevented from re-engaging the handle of the payload, and also from engaging tree branches or power lines during retraction into the UAV. Although not shown in Figure 14A -E, the payload coupling device 900 may also include a cam surface as shown in the payload coupling device 800 that engages a mating cam within a payload coupling receptacle in the UAV fuselage to orient the payload coupling device in a desired direction within the payload coupling receptacle.
[0203] The payload coupling device 900 is advantageously a solid-state design that does not include moving parts, thereby reducing the complexity and cost of the payload coupling device and eliminating moving parts that could fail. A more reliable payload coupling device is thus provided.
[0204] Figure 15A -E provides various views of the payload coupling device 1000. In this embodiment, the payload coupling device 1000 has a generally spherical shape. A slot 1020 is located between an outer lip or hook 1010 and a circular portion 1014. The slot 1020 is adapted to receive the handle of the payload. A tether attachment point 1022 is positioned on the circular portion 1014. A tether slot 1006 extends from the tether attachment point 1022 to the slot 1020 and is adapted to receive and hold the tether. The circular portion 1014 or portion 1010 may be weighted such that when the payload contacts the ground, the handle of the payload separates from the slot of the payload coupling device 1000. During separation from the handle of the payload, the weighted circular portion 1010 flips forward and rotates 90 degrees such that the payload coupling device 1000 is suspended from the end of the tether attached to the tether attachment point 1022. In this way, the slot 1020 no longer faces upward and prevents the payload coupling device 1000 from re-engaging the handle of the payload during retraction into the UAV, and also from engaging tree branches or power lines.
[0205] Similar to the above-described payload coupling devices 800 and 900, the payload coupling device 1000 is also advantageously a solid-state design that does not include moving parts, thereby reducing the complexity and cost of the payload coupling device and eliminating moving parts that may fail. This provides a more reliable payload coupling device.
[0206] Figure 16A -D shows various views of the payload coupling device 800', which is a variant of the above-described payload coupling device 800. The payload coupling device 800' includes the same external features as the payload coupling device 800. However, in the payload coupling device 800', the lower lip or hook 806' includes a shank 806a' that extends upwardly and extends within a shank cavity 817 in the housing 812 of the payload coupling device 800'. The end of the tether extends through the housing 812 and is attached to the end of the shank 806a'. The housing 812 can be moved upward to Figure 16A and 16C the position shown, thereby opening a slot 808 between the lower lip or hook 806' and the housing 812 and allowing the handle of the payload to be placed within the slot 808.
[0207] Once the handle of the payload is positioned within the slot 808, the housing 812 moves downward by gravity to close the slot 808 and secure the handle of the payload between the lower lip or hook 806' and the housing 812, as Figure 16B and 16D shown. Once the payload touches the ground, the payload coupling device 800' moves downward such that the handle of the payload is removed from the slot 808 and separated from the payload coupling device 800'.
[0208] In addition, once the handle of the payload is separated from the payload coupling device 800', gravity forces the housing 817 to engage with the lower lip or hook 806a' such that the slot 808 is in its normally closed position. In this way, re-engagement with the handle of the payload during retrieval is prevented, and because the slot 808 is in its normally closed position, engagement with tree branches or power lines is also prevented.
[0209] In each of the payload coupling devices 800, 800', 900, and 1000, the upper and lower ends are rounded or hemispherical to prevent the payload coupling device from hooking during descent from or retraction to the fuselage of the UAV.
[0210] This embodiment provides a highly integrated winch-based pick-up and delivery system for a UAV. Many significant advantages are provided. For example, the ability to pick up and deliver packages without the need to land is provided, as the system is capable of winching the package while the aircraft is hovering. While in some locations, infrastructure such as platforms or elevated structures for landing or loading the UAV may be provided, in other locations, infrastructure at the merchant or customer location may not be required. The advantages include high mission flexibility and potentially little or no infrastructure installation cost and increased flexibility in payload geometry.
[0211] In addition, the payload delivery system can automatically align the top of the payload during winching so that it is oriented along the minimum drag of the aircraft longitudinal axis. This alignment enables high-speed forward flight after pick-up. The alignment is achieved through the shape of the payload hook and socket. In the payload coupling device 800, the lower lip or hook 806 has cam features around its perimeter that, when engaged into the cam features within the socket of the UAV fuselage, always orient it in a defined direction. The cam-shaped tips on both sides of the capsule are asymmetric to prevent jamming in a 90-degree orientation. In this regard, the spiral cam surfaces can meet at the apex on one side of the payload coupling mechanism and the spiral cam surfaces can meet at the rounded apex on the other side of the payload coupling mechanism. The hook is specifically designed such that the package hangs on the centerline of the hook, enabling alignment in two directions of 90 degrees.
[0212] The payload coupling devices 800, 800', 900, and 1000 include hooks formed around slots such that when the payload contacts the ground during delivery, the hook also passively and automatically releases the payload. This is achieved through the shape and angle of the hook slot and the corresponding handle on the payload. When the payload contacts due to the mass of the capsule and the inertia of wanting to continue moving the capsule downward through the payload, the hook easily slides off the handle. The end of the hook is designed to be slightly recessed from the body of the capsule, which prevents the hook from accidentally reattaching to the handle. After successful release, the hook is winched back into the aircraft. All of these functions (package alignment during pick-up and passive release during delivery) are achieved without any moving parts (referred to as a solid-state design) in this payload coupling device 800, 900, and 1000. This greatly improves reliability and reduces cost. The simple design also makes user interaction very clear and self-explanatory.
[0213] VII. Tether Control During Payload Pick-Up
[0214] A UAV can pick up and deliver a payload without landing. In some examples, the UAV can raise and lower a payload coupled to a tether by winding and unwinding the tether while hovering. Thus, the UAV can pick up and deliver a payload without the need for infrastructure to be established by a merchant or customer, thereby increasing the flexibility of the delivery location and / or payload geometry and reducing or eliminating the costs associated with the manufacture or installation of the infrastructure. In other examples, the UAV can be configured to land on various elevated structures, such as pylons or brackets, and from its elevated landing position, pick up or deliver a payload by winding or unwinding a tether.
[0215] Figure 17 A method 1700 for tethered pick-up of a payload (e.g., a package) for subsequent delivery to a target location is shown. Method 1700 can be performed by a UAV such as those described elsewhere herein. For example, method 1700 can be performed by a control system of a UAV having a winch system. Additionally, the winch system can include a tether disposed on a spool, a motor operable in a first mode and a second mode to respectively resist and assist the unwinding of the tether due to gravity (e.g., by driving the spool forward or backward), a payload coupling device that mechanically couples the tether to the payload, and a payload latch that can switch between a closed position that prevents the payload from lowering from the UAV and an open position that allows the payload to lower from the UAV.
[0216] As shown in block 1702 of method 1700, when the UAV reaches a pick-up location (also referred to as a source location), the control system of the UAV can open the payload latch such that the tether and the payload coupling device can be lowered towards the ground at the pick-up location.
[0217] At block 1704, the control system operates the motor to unwind a predetermined length of the tether. This unwound length can correspond to the expected payload attachment height of the payload coupling device, which is attached to the lower end of the tether. The payload attachment height can be a height at which a person or possibly a robotic device can grasp the payload coupling device to attach the coupling device to the payload. For example, the payload attachment height can be a height less than two meters above the ground plane. Other examples are possible.
[0218] After unwinding the predetermined length of the tether, the control system can wait for a predetermined payload attachment period, as shown in block 1706. This attachment period allows a person or robotic device time to attach the payload (e.g., a package for delivery) to the payload coupling device. The predetermined payload attachment period can be a fixed value or can vary based on the operating state of the UAV.
[0219] When the payload attachment period ends, the control system can operate the winch motor in a second mode for a predetermined attachment verification period, as shown in block 1708. Specifically, the motor can be operated to pull the tether upward during the attachment verification period to hold the tether in place or to retract the tether at a certain rate. Due to the increased weight of the payload, when the payload is attached, the motor current required to hold the tether in place or to retract the tether at a certain rate will be greater. Thus, the control system can determine whether the payload coupling device is mechanically coupled to the payload at least in part based on the motor current during the predetermined attachment verification period, as shown in block 1710.
[0220] In fact, for example, if the motor current is less than the attachment threshold current, the control system can determine that the payload has not been attached to the payload coupling device and can repeat the process of lowering the payload (this time by a predetermined additional length), wait for a predetermined payload attachment period, and then pull the tether upward to test the payload attachment, as shown in blocks 1704 to 1710. On the other hand, if the motor current is greater than or equal to the attachment threshold current and block 1710 results in a determination that the payload coupling device is mechanically coupled to the payload, the control system can operate the winch motor to retract the tether and lift the attached payload to the UAV, as shown in block 1712.
[0221] The control system can continue to retract the tether until it senses that the payload coupling device is at or near the UAV, at which point it initiates actions to secure the payload for flight to the target location. For example, method 1700 includes functions that can be used to secure the package and the coupling device in a socket of the UAV, such as Figures 5A-5C the configuration shown.
[0222] More specifically, at block 1714, the control system can determine both: (a) the deployed length of the tether is less than a threshold length, and (b) the motor current is greater than a threshold current. When both of these conditions are met, this can be used as an indication that the payload coupling device and / or the payload has reached the UAV socket. In particular, when the calculated deployed length of the tether is at or near zero, this can indicate that the payload coupling device and / or the payload has been lifted all the way to the UAV. Additionally, when the payload coupling device and / or the payload contacts the socket area of the UAV, the motor current may increase as the motor speed controller attempts to continue pulling the payload upward. And, by considering both of these indications, the control system can avoid false alarms.
[0223] Accordingly, upon detecting the two aforementioned indications, the control system can responsively operate the motor in a first mode to pull the payload into and orient the payload within a receptacle on the lower surface of the UAV, as shown in block 1716. In particular, the control system can operate the motor to increase the torque applied to the tether, such as by increasing the current provided to the motor to a predetermined value, to help ensure that the payload coupling device (and possibly the payload) is firmly against the corresponding surface of the UAV receptacle such that the payload latch (e.g., Figure 12 pins 570 and 572) can close to secure the payload for flight to the target location. Accordingly, after applying torque to the tether in an upward direction for a predetermined period of time, the control system can close the payload latch, as shown in block 1718. With the payload secured for flight, the UAV can navigate to the target location for delivery.
[0224] VIII. Tether Control During Payload Delivery
[0225] Once the UAV reaches the target location for delivery, the control system of the UAV can responsively operate in a delivery mode. Figure 18 is a flowchart illustrating a method 1800 for operating a UAV in a delivery mode according to an example embodiment.
[0226] More specifically, once the UAV reaches and hovers over the target location for tethered delivery, the control system of the UAV can operate the motor to pay out the tether according to a predetermined descent curve, as shown in block 1802. The predetermined descent curve can control the descent rate of the payload by specifying the desired rotational speed of the motor. For example, the descent curve can specify a constant descent rate or a variable descent rate for the duration of the payload descent.
[0227] In some examples, the desired rotational motor speed specified by the predetermined descent curve can be based on machine learning data that can be inferred from data of previous flights. For example, for delivery to a particular location, the control system can use the descent curve that was previously used during a previous delivery to the particular location. Alternatively, if using the descent curve during a previous delivery to the particular location or some other location resulted in one or more detected errors (e.g., failure to separate the payload from the tether, damage to the payload, etc.), the control system can change the descent curve (e.g., by increasing or decreasing the desired motor speed during various stages of the payload descent) or choose to use a default descent curve instead.
[0228] In an exemplary method, the control system may not exert significant control over the descent of the payload until it is closer to the ground. For example, at a certain point during tether deployment, the control system may determine that the deployed length of the tether is greater than a threshold length and, in response, operate in a pre-touchdown mode, as shown in block 1804. The threshold length may correspond to a predetermined near-ground height of the payload; for example, a height at which more control is required for the safety of bystanders and / or ground structures, and / or to protect the payload and its contents from damage.
[0229] As described above, in the pre-touchdown mode, the control system may closely monitor the payload to increase the chances of successfully releasing the payload onto the ground. In particular, when operating in the pre-touchdown mode, the control system operates the motor such that the tether continues to deploy according to a predetermined descent curve, as shown in block 1804a, while monitoring the motor current and motor speed, as shown in block 1804b. The motor current may be compared with a predetermined payload-uncoupled current to detect when the motor current is less than the predetermined payload-uncoupled current. Additionally, the motor speed may be compared with a predetermined payload-uncoupled speed to detect when the motor speed is less than the predetermined payload-uncoupled speed, as shown in block 1804c. When the motor current is less than the predetermined payload-uncoupled current and the motor speed is less than the predetermined payload-uncoupled speed, the control system, in response, switches to operation in a possible-touchdown mode.
[0230] The possible-touchdown mode may be implemented to endeavor to verify that the package has actually reached the ground (or, in other words, to help prevent false detection of contact with the ground). For example, when operating in the possible-touchdown mode, the control system may analyze the motor current to verify that the motor current remains below a predetermined payload-uncoupled current during a touchdown verification period (e.g., a small amount of fluctuation may be allowed during this period), as shown in block 1806. In practice, a Schmitt trigger may be applied to verify that the detected decrease in the motor current below the payload-uncoupled threshold is not the result of noise or some temporary blockage and is actually due to the payload resting on the ground. Other techniques for verifying touchdown of the payload are also possible.
[0231] Once touchdown of the payload is verified, the control system operates the motor such that overextension of the tether and the payload coupling device occurs, as shown in block 1808. Overextension occurs when the payload stops while the tether continues to unwind. In practice, for example, the control system can switch the winch motor from a first mode to a second mode by, for example, reversing the direction of the motor and thus the direction of the torque applied by the motor to the tether. Thus, the motor can switch from slowing the descent of the tether to forcing the tether to unwind, causing overextension of the tether. Overextension of the tether can in turn lower the payload coupling device below the height at which payload coupling occurs (and potentially all the way to the ground). In other embodiments, block 1808 can include the control system simply shutting off the motor and allowing gravity to pull the payload coupling device down and overextend the tether.
[0232] In addition, as Figures 6A-6C shown in FIGS. 10A - 10C and 11, the payload and / or the payload coupling device can have interface surfaces such that the interaction between the payload and the payload coupling device during overextension deflects the payload coupling device to one side of the payload. In this way, the coupling features (e.g., hooks) of the payload coupling device will no longer be aligned with the corresponding coupling features (e.g., handles on a tote bag) of the payload. So positioned, the winch system can retract the tether and the payload coupling device back to the UAV without the payload coupling device re - coupling to the payload, leaving the package on the ground.
[0233] In some examples of method 1800, the control system can be configured to operate the motor to apply an upward force on the tether before opening the payload latch. This can allow the payload latch to be more easily opened because the payload can be arranged to rest some or all of its weight on the payload latch when the latch is in the closed position. When attempting to switch the latch to the open position, the weight of the payload can increase the friction with the payload latch, so lifting the payload a predetermined amount can reduce the occurrence of the payload latch getting stuck in the closed position. Additionally, after opening the payload latch and before unwinding the tether, the control system can be configured to operate the motor to hold the tether in a substantially constant position. This can allow the weight of the payload to pull the payload down and against the payload coupling device such that the payload becomes firmly seated in the coupling mechanism (e.g., hook) of the payload coupling device.
[0234] IX. User Interaction and Feedback via Tether Control
[0235] In fact, a user may interact with the disclosed winch system in various ways for various reasons. For example, a user may interact with the winch system to manually couple or decouple a payload to or from a tether via a payload coupling device, such as for payload delivery purposes or for payload pick-up purposes. In doing so, the user may apply a force directly to the tether and / or may apply a force to the tether via the payload coupling device, etc. Additionally, such interaction with the winch system can effectively also be equivalent to interaction with the UAV itself, since the UAV can adjust its operation based on these forces (e.g., the UAV can participate in flight stability taking those forces into account).
[0236] When a user interacts with the disclosed winch system, the user may encounter various challenges. For example, the user may not know how the interaction with the winch system may ultimately affect the operation of the winch system and / or the operation of the UAV. As a result, the user may inadvertently damage the UAV and / or the winch system. In another example, the user may not know any future operations that the UAV and / or the winch system is planned to perform. As a result, the user may inadvertently cause the UAV and / or the winch system to stop performing the planned operations. In yet another example, the user may want the UAV and / or the winch system to perform a specific operation, but may not have a means to control the operation of the UAV or the winch system. Other examples are possible.
[0237] To help address these challenges, the disclosed winch system can be configured to control the tether to interact with the user and provide feedback to the user. Specifically, the control system of the UAV can be equipped with the ability to interpret direct or indirect user interaction with the tether and may perform certain operations in response to the interpreted interaction. Also, the control system of the UAV can be equipped with the ability to provide information to the user by manipulating the tether, possibly doing so in response to user interaction with the tether.
[0238] Figure 19 A method 1900 for facilitating control of a tether to interact with a user and / or provide feedback to the user is shown. As shown in block 1902 of method 1900, the control system of the UAV can determine one or more operating parameters for a motor of a winch disposed in the aircraft, the winch including a tether and a spool. Then, the control system can detect an operating mode of the motor among the one or more operating parameters, the operating mode indicating an intentional user interaction with the tether, as shown in block 1904 of method 1900. Based on the detected operating mode indicating an intentional user interaction with the tether, the control system can determine a motor response process, as shown in block 1906 of method 1900. And as shown in block 1908 of method 1900, the control system can then operate the motor according to the determined motor response process.
[0239] i. Determine the operating parameters of the motor
[0240] As described above, the control system of the UAV can determine one or more operating parameters of the electric motor. In fact, the operating parameters of the electric motor can be any measurement of the motor activity. Although certain operating parameters are described herein, other operating parameters are possible without departing from the scope of the present disclosure.
[0241] As an example, the operating parameter of the electric motor can be the current characteristic of the electric motor, such as the current level supplied to and / or generated by the electric motor over time or at a specific moment. In another example, the operating parameter of the electric motor can be the speed characteristic of the electric motor, such as the rotational speed of the drive assembly of the electric motor over time or at a specific moment. In yet another example, the operating parameter of the electric motor can be the rotational characteristic of the electric motor, such as the degree of rotation of the drive assembly of the electric motor over time. Other examples are possible.
[0242] Generally, the control system can determine one or more operating parameters of the electric motor in various ways. For example, the control system can receive sensor data indicating the operating parameters from one or more sensors coupled to the electric motor. Once the control system receives the sensor data, the control system can use the sensor data to determine and / or evaluate the operating parameters of the electric motor.
[0243] As an example, a current sensor can be coupled to the electric motor and configured to generate current data indicating the current level supplied to and / or generated by the electric motor. With this arrangement, the control system can receive the current data from the current sensor and can use the received current data as a basis to determine the current characteristic of the electric motor. For example, the control system can use the received current data as a basis to determine the specific current level of the electric motor during a specific time period.
[0244] In another example, a speed sensor can be coupled to the electric motor and configured to generate speed data indicating the rotational speed of the drive assembly of the electric motor. With this arrangement, the control system can receive the speed data from the speed sensor and can use the received current data as a basis to determine the speed characteristic of the electric motor. For example, the control system can use the received speed data as a basis to determine the specific speed of the electric motor at a specific point in time.
[0245] In yet another example, an encoder can be coupled to the drive assembly of the electric motor and configured to generate position data representing the position of the drive assembly over time. With this arrangement, the control system can receive the position data from the encoder and can use the received position data as a basis to determine the rotational characteristic of the electric motor. For example, the control system can use the received position data as a basis to determine the degree and / or direction of rotation of the drive assembly from a first point in time to a second point in time. Other examples and instances are possible.
[0246] Figure 20 Next, a graph illustrating an example current characteristic 2000 of an electric motor is shown. As shown, the current characteristic 2000 represents the current level of the electric motor over time. In practice, the current level may vary over time based on various factors. For example, the current level may vary based on the torque / force that the electric motor seeks to provide (e.g., to a tether) and / or based on an external torque / force provided to the electric motor (e.g., via a tether), etc. Other examples are possible.
[0247] ii. Detecting an operating mode of the electric motor indicative of user interaction
[0248] As described above, the control system can detect an operating mode of the electric motor indicative of an intentional user interaction with the tether in one or more operating parameters. In practice, the operating mode can be any sequence of continuous and / or discontinuous values of one or more operating parameters over time. Additionally, the control system can use any currently known and / or future developed signal processing techniques, etc., to detect the operating mode. Nevertheless, the operating mode can take various forms.
[0249] In one case, the operating mode can be a pattern found in a single operating parameter. For example, the operating mode can be a specific pattern of the current characteristic, such as a specific sequence of current levels represented by current data over time. However, in another case, the operating mode can include patterns found in two or more operating parameters, respectively, over the same period of time and / or different corresponding periods of time. For example, the operating mode can be a specific pattern of the current characteristic over a first period of time and a specific pattern of the speed characteristic over a second period of time (e.g., the same or different from the first period of time). Other cases are possible.
[0250] Given the above arrangement, the control system for detecting the operating mode can involve the control system detecting various patterns in one or more determined parameters. By way of example (and without limitation), the control system for detecting the operating mode can involve a control system detecting any combination of the following: a specific relative change in the electric motor current, a specific rate of change of the electric motor current, a specific electric motor current value, a specific sequence of electric motor current values, a specific relative change in the electric motor speed, a specific rate of change of the electric motor speed, a specific electric motor speed value, a specific sequence of electric motor speed values, a specific relative change in the electric motor rotation, a specific rate of change of the electric motor rotation, a specific electric motor rotation value, and / or a specific sequence of electric motor rotation values, etc.
[0251] According to the present disclosure, as mentioned, the detection operation mode can specifically involve detecting the operation mode of the motor indicating an intentional user interaction with the tether. More specifically, when the user interacts with the tether in a specific manner, the motor can present a specific operation mode. In this way, the established operation modes that can be detected by the control system (e.g., established through manual engineering input) can each correspond to a corresponding user interaction with the tether. In this manner, when the control system detects a specific operation mode, the control system can effectively detect a specific user interaction with the tether. In practice, the control system can do this simply by detecting the operation mode and there need not be a logical indication of user interaction.
[0252] However, in some cases, the control system can maintain or can otherwise refer to mapping data that maps each of the multiple operation modes of the motor with corresponding user interactions. For example, the mapping data can map a specific current level mode with an indication of the user providing a specific downward force on the tether. In practice, the specific downward force can be a force applied in a direction substantially perpendicular to the ground and / or can be a force applied in a direction at another angle relative to the ground (e.g., 45 degrees) (e.g., when the user grabs a swinging tether and then pulls it at an angle). In another example, the mapping data can map a specific speed level mode with an indication of the user moving the tether laterally at a specific rate. In practice, these indications can each take any feasible form, such as forms like letters, numbers, and / or logical boolean values, etc. Thus, when the control system detects a specific operation mode, the control system can refer to the mapping data to determine the user interaction respectively mapped to that specific operation mode.
[0253] In addition, different operation modes can sometimes indicate the same user interaction. For this reason, the control system can be arranged to detect a first operation mode and thus effectively detect a specific user interaction with the tether, and can also be arranged to detect a second operation mode and thus effectively detect the same specific user interaction with the tether, such as for the purpose of determining a motor response process as further described below. Alternatively, two or more operation modes in the mapping data can each be mapped to the same user interaction, such that the control system detects the same user interaction when referring to any one of those operation modes in the mapping data. Other cases are also possible.
[0254] In addition, when establishing various detectable operating modes, at least some of these established modes can consider various external forces applicable to the tether, such as external forces other than the external forces applied by the user during the interaction with the tether. In particular, the operating modes can consider gravity, external forces based on the weight of the payload coupling device, and / or external forces based on the weight of the coupled payload (e.g., the weight of a package to be transported), etc. In this way, the control system can detect the operating mode of the motor presented when such external forces are applied in combination with the external forces based on user interaction. Other external forces are also possible.
[0255] In yet another aspect, in addition to or instead of the above mapping data, the control system can use one or more other methods to determine user interaction based on the operating mode of the motor.
[0256] In one case, the control system can perform signal processing and / or analysis techniques to determine the values and / or trends of signals (e.g., signals representing motor speed values) and determine user interaction based on those values and / or trends of the signals. For example, the control system can evaluate a set of conditions of a signal to determine whether all conditions within the set are determined to be true. If the control system determines that all conditions of the set are true, the control system can determine that the signal corresponds to a specific user interaction. Otherwise, the control system can evaluate another set of conditions to determine whether all conditions within that other set are determined to be true, and so on. In an example of this method, the control system can determine whether the slope of the signal is within a specific slope range and can determine whether the value of the signal exceeds a specific threshold within a specific threshold time range. And if the control system determines that both of these conditions are true, the control system can determine that the signal corresponds to a specific user interaction. Other examples are also possible.
[0257] In another case, the control system can perform probability analysis techniques to determine user interaction. For example, the control system can determine that the detected operating mode does not precisely match one of the operating modes of the mapping data, so probability analysis can be applied to determine the operating mode of the mapping data to which the detected operating mode most likely matches. For example, when determining a match, the control system can give a higher weight to a specific part of the detected signal / mode compared to the weights given to other parts of the detected signal / mode, thereby applying additional factors to determine the matching operating mode and ultimately determining user interaction based on the mapping data. Other cases and examples are also possible.
[0258] Figure 21Next, an exemplary operating mode of the motor indicating a specific user interaction with the tether is shown. As shown, the control system may detect a specific current spike 2002 in the above-described current characteristic 2000. To this end, the control system may detect a specific increase in the current level over time, followed by a specific decrease in the current level over time. Additionally or alternatively, the control system may do so by detecting a specific rate of increase in the current level over time, followed by a specific rate of decrease in the current level over time. In either case, the specific current spike 2002 is shown as indicating a specific user interaction 2110, which involves applying a specific downward force to the tether 2102.
[0259] More specifically, Figure 21 a UAV 2100 including a winch system 2106 is shown, where the motor is configured to control the movement of the tether 2102. As shown, a user 2108 physically interacts with a payload coupling device 2104 coupled to the tether 2102. In doing so, the user 2108 applies a downward force having a magnitude of "F1" to the tether 2102 via the payload coupling device 2104. In this way, the specific current spike 2002 indicates that the user applies a downward force having a magnitude of "F1" to the tether. Other examples are possible.
[0260] iii. Determine the motor response process
[0261] As described above, the control system may determine and do so based on the detected operating mode of the motor indicating an intentional user interaction with the tether. In practice, a specific motor response process may involve one or more specific operations of the motor, such as applying one or more specific torques to the tether. Additionally, the motor response process may be arranged so that the winch system interacts with the user via the tether and / or provides feedback to the user through the tether, etc.
[0262] According to the present disclosure, the control system may determine the motor response process in various ways. In one case, the control system may store mapping data on it that maps each of the multiple operating modes with the corresponding motor response process or may otherwise be configured to reference the mapping data. For example, the mapping data may map a specific sequence of speed levels with a motor response process involving the motor applying one or more specific torques to wind the tether. In this way, the control system may determine the motor response process by referencing the mapping data to determine the corresponding motor response process mapped to the detected motor operating mode.
[0263] In another case, the control system can actually determine a specific user interaction with the tether indicated by the detected motor operation mode, for example, by referring to the above mapping data that maps various operation modes to various corresponding user interactions. Then, the control system can use the determined specific user interaction as a basis for determining the motor response process.
[0264] More specifically, the control system can store thereon mapping data that maps each of multiple user interactions with corresponding motor response processes or can be otherwise configured to refer to the mapping data. For example, the mapping data can map a specific lateral movement of the tether by the user with a response process involving applying a specific torque to deploy the tether for a specific duration. In this way, the control system can determine the motor response process by referring to the mapping data to determine the corresponding motor response process mapped to a specific user interaction, which was initially determined based on the above mapping data that maps various operation modes to various corresponding user interactions. Other cases are possible.
[0265] On the other hand, in addition to or instead of the mapping data, the control system can use one or more other methods to determine the motor response process.
[0266] In one case, the control system can perform signal processing and / or analysis techniques to determine the value and / or trend of a signal (such as a signal representing a motor speed value) and determine the motor response process based on those values and / or trends of the signal. For example, the control system can evaluate a set of conditions of the signal to determine whether all conditions within the set are determined to be true. If the control system determines that all conditions of the set are true, then the control system can determine that the signal corresponds to a specific motor response process. Otherwise, the control system can evaluate another set of conditions to determine whether all conditions within that other set are determined to be true, and so on. In an example of this method, the control system can determine whether the signal includes an inflection point and can determine whether the value of a local maximum of the signal exceeds a specific threshold. And if the control system determines that both of these conditions are true, then the control system can determine that the signal corresponds to a specific motor response process. Other examples are possible.
[0267] In another case, the control system may perform probabilistic analysis techniques to determine the motor response process. For example, the control system may determine that the detected operating mode does not precisely match one of the operating modes of the mapped data, and thus probabilistic analysis may be applied to determine the operating mode of the mapped data to which the detected operating mode most likely matches. For example, when a match is determined, the control system may determine the environment and / or the state of the UAV during which the operating mode was detected, and may use the environment and / or the state of the UAV as additional weighting factors for determining the matching operating mode. In this way, once the control system determines the matching operating mode using probabilistic analysis, the control system may determine the motor response process based on the mapped data. Other cases and examples are possible.
[0268] In a system arranged as described above, the motor response process may involve various motor response operations, some of which are described below. In fact, the control system may determine the motor response process to include a single such motor response operation or any feasible combination of these motor response operations. Assuming that two or more motor response operations are to be performed, determining the motor response process may also involve determining the order in which the motor response operations are to be performed (e.g., some motor response operations may be repeated at various points throughout the order) and / or applying the corresponding duration of each motor response operation, etc. Generally, such an order and / or duration may be determined based on various factors, such as based on the detected operating mode of the motor. Alternatively, such an order and / or duration may be predetermined according to the established mapped data.
[0269] In either case, various possible motor response operations are described below. Although certain motor response operations are described, other motor response operations are possible without departing from the scope of the present disclosure.
[0270] In one example, a motor response operation may involve a specific resistance operation that resists the deployment of the tether due to at least one external force applied to the tether. As part of such an operation, the control system may operate the motor to apply one or more specific reaction torques, each of which resists the deployment of the tether, and each reaction torque may be applied for a corresponding duration. Specifically, each such reaction torque may be of substantially the same magnitude as the applied external force and may be in a direction effectively opposite to the direction of the applied external force. In this way, this response operation may resist the deployment of the tether due to the applied external force without necessarily causing the tether to retract into the UAV. In practice, a user applying an external force to the tether may substantially feel that the tether cannot be lowered further. Moreover, as the magnitude of such a reaction torque increases, the tension in the tether also increases.
[0271] In another example, the motor response operation can involve a specific assist operation that facilitates the deployment of the tether due to at least one external force applied to the tether. As part of such an operation, the control system can operate the motor to apply one or more specific assist torques, each of which facilitates the deployment of the tether and may apply each assist torque for a corresponding duration. Specifically, each such assist torque can be in a direction effectively the same as the direction of the applied external force and can have any feasible magnitude. In this way, the assist torque can be used in combination with the applied external force to further assist in the deployment of the tether. In practice, a user applying an external force to the tether can substantially feel that the manual deployment of the tether is made easier due to the lesser resistance to deployment.
[0272] In yet another example, the motor response operation can involve a specific retraction operation that retracts the tether against at least one external force applied to the tether. As part of such an operation, the control system can operate the motor to apply one or more specific retraction torques, each of which retracts the tether against the external force and may apply each retraction torque for a corresponding duration. Specifically, each such retraction torque can be of a magnitude greater than the applied external force and can be in a direction effectively opposite to the direction of the applied external force. In this way, the response operation can resist the deployment of the tether due to the applied external force and can effectively cause the tether to retract back to the UAV regardless of the external force. In practice, a user applying an external force to the tether can substantially feel that the tether is pulled towards the user to the extent of the tether retraction, even when the user applies an external force.
[0273] In yet another example, the motor response operation can occur after the user applies an external force rather than during the user's application of the external force. For example, the motor response operation can involve a tether movement operation that moves the tether according to a specific tether movement curve after the external force is applied to the tether. In practice, such a motor response operation can allow for user feedback / interaction to be performed even when the user is no longer physically interacting with the tether.
[0274] In this regard, the control system can detect an operation mode indicating a specific user interaction and then determine a motor response process to be executed after the specific user interaction is completed. Specifically, the control system can determine the completion of the specific user interaction by detecting another operation mode indicating such a motor and / or can do so in other ways. In either case, once the control system determines that the specific user interaction is completed, the control system can execute the determined motor response process, which involves the movement of the tether according to a specific tether movement curve.
[0275] Typically, a particular tether motion profile can take various forms and can be based on an operating mode indicative of user interaction. For example, the tether motion profile can simply involve retracting the tether into the UAV at a particular rate. In such a case, the motion of the tether according to the tether motion profile can occur based on detecting an operating mode indicative of the user pulling the tether several times in succession. Other instances and examples are possible.
[0276] Figure 22 An exemplary motion response process is shown next. As shown, the control system determines that the above-described particular user interaction 2110 corresponds to a motor response process 2200. Specifically, the motor response process 2200 involves a resistance operation including applying a reverse torque. The reverse torque can have a magnitude of "T1", which is substantially the same as the magnitude of the downward force "F1" applied by the user 2108. Additionally, the reverse torque can be in a direction effectively opposite to the direction of the downward force applied by the user 2108. Thus, when the user 2108 applies a downward force to the tether, the control system can ultimately operate the motor of the winch system 2106 to apply the reverse torque. Other examples are possible.
[0277] iv. Operate the motor according to the determined motor response process
[0278] As described above, once the motor response process is determined, the control system can then operate the motor according to the determined motor response process, specifically by sending one or more commands to the motor to do so, the command indicating that the motor perform certain operations according to the response process. And as further pointed out above, the control system can do so during and / or after the user interaction, depending on the motor response process that has been determined. Additionally, the executed motor response process can result in various outcomes in addition to the planned interaction / feedback with the user.
[0279] For example, the motor response process can correspond to one or more target tensions encountered by the tether. Specifically, each target tension can be the tension that the tether is expected to experience when the motor applies a particular torque according to the motor response process. Thus, the control system operating the motor according to the determined response process can cause the tether to encounter one or more such target tensions.
[0280] In another example, the motor response process can correspond to one or more target tether motions encountered by the tether. Specifically, each target tether motion can be the motion that the tether is expected to experience when the motor applies a particular torque according to the motor response process. Thus, the control system operating the motor according to the determined response process can cause the tether to encounter one or more such target tether motions (e.g., a wave pulse traveling through the tether). Other examples are possible.
[0281] Figure 23 An exemplary motor response process is shown next, where when user 2108 grasps tether 2302, the control system operates the motor to control the tension of tether 2102, such as during the process of manually coupling a payload. Assuming that UAV 2100 substantially maintains its physical position in space while hovering, the control system can proportionally (e.g., linearly) increase the torque of the motor in the winding direction as the downward force provided by user 2108 increases, and vice versa. In this way, the tension of tether 2102 can increase as user 2108 further pulls tether 2102 downward, and vice versa. Additionally, the control system can be configured to proportionally increase the torque of the motor to a maximum torque, thereby saturating the tension of the tether and ideally preventing user 2108 from pulling UAV 2100 downward toward the ground.
[0282] More specifically, at state 2302 of the motor response process, the control system operates the motor to apply a torque of magnitude "T1" to counteract a force of magnitude "F" provided by user 2108, thereby resulting in a first tension encountered by tether 2102. Then, at state 2304 of the motor response process, the control system operates the motor to apply a torque of magnitude "T2" greater than "T1" and does so to counteract a force magnitude "F2" greater than "F1", thereby resulting in a second tension greater than the first tension encountered by tether 2102. Finally, at state 2306 of the motor response process, the control system operates the motor to apply a torque of magnitude "T3" still greater than "T2" and does so to counteract a force magnitude "F3" still greater than "F2", thereby resulting in a third tension still greater than the second tension encountered by tether 2302.
[0283] Figure 24 An exemplary motor response process is shown next, where the control system can operate the motor to change the amount and possibly the direction of the torque applied to tether 2102 over time, specifically doing so to enhance the user experience or for other reasons. For example, the control system can operate the motor to replicate the feeling of braking or a clicking sound when user 2108 pulls tether 2102 downward, and / or provide vibration feedback (e.g., wave pulses) through tether 2102, etc.
[0284] More specifically, at state 2402 of the motor response process, the control system operates the motor to apply an assist torque having a magnitude "T1" and in the same direction as the force provided by user 2108, thereby assisting user 2108 in deploying tether 2102. Then, during the deployment of tether 2102 at state 2404 of the motor response process, the control system operates the motor to apply a reaction torque having a magnitude "T2" to counteract the magnitude "F2" of the force provided by user 2108, thereby causing user 2108 to experience a "braking" sensation. Finally, at state 2406 of the motor response process, the control system operates the motor again to apply an assist torque in order to continue assisting user 2108 in deploying tether 2102. Specifically, this additional assist force is shown as having a magnitude "T3" and being in the same direction as the force (having a magnitude F3") provided by user 2108.
[0285] Figure 25 Next, an exemplary motor response process is shown, where the control system interprets the interaction of user 2108 with tether 2102 to determine that user 2108's intention is to cause the motor of UAV 2100 and / or winch system 2106 to perform certain operations. Specifically, at state 2502 of the motor response process, the control system detects an operation mode that indicates user 2108 has pulled down tether 2102 with a force having a magnitude "F1" at least three times in succession. Upon detecting such a gesture by user 2108, the control system may interpret the gesture as a signal that the payload has been correctly detached from payload coupling device 2104, and thus UAV 2100 can continue to fly further to a target destination. Generally, to facilitate such gestures, a manual or the like listing the various gestures interpretable by the disclosed system may be provided to the user.
[0286] More specifically, as shown at state 2504 of the motor response process, the control system responds to the gesture by performing a motor response process that involves operating the motor to apply a torque having a magnitude "T2" for the purpose of retracting tether 2102 into UAV 2100. Additionally, the control system does so once user 2108 has completed interacting with tether 2102 and thus is no longer applying an external force to tether 2102. Finally, once tether 2102 has been retracted, UAV 2100 can continue to fly forward to the target destination, as shown at state 2506. Other examples are possible.
[0287] v. Additional Features of User Interaction and Feedback
[0288] On the other hand, the control system can consider other factors as the basis for determining the motion response process. In practice, in addition to or instead of considering the detected operating mode of the motor as described above, the control system can also consider these factors. Additionally, the control system can consider any feasible combination of these factors, and may make some factors more important than others.
[0289] In one case, the control system can regard the environmental state as the basis for determining the motor response process. Specifically, the control system can receive sensor data representing the environmental state of the UAV, such as obstacles near the UAV, from one or more sensors of the UAV (e.g., an image capture device). Then, the control system can determine the motor response process at least based on this sensor data. For example, if the control system detects an obstacle within a threshold distance of the tether, the control system can respond by selecting a motor response process in which the tether encounters a smaller target tether movement rather than a larger one, thus attempting to avoid a collision with the obstacle.
[0290] In another case, the control system can regard the flight state of the UAV as the basis for determining the motor response process. Specifically, the control system can receive flight data representing the flight state of the UAV, which can be the flight progress of the UAV along a planned flight path, from a flight management system (e.g., on the UAV and / or outside the UAV). Then, the control system can determine the motor response process at least based on this flight data. For example, if the control system determines that the flight progress of the UAV is significantly behind the planned schedule along the flight path, the control system can respond by selecting a motor response process in which the motor starts to retract the tether to a certain extent, thus indicating to the user that the flight progress of the UAV is significantly behind the planned schedule. Other cases and examples are also possible.
[0291] In yet another aspect, the control system can execute the disclosed method 1900, which is based on the payload (e.g., the payload coupling device and / or the coupled payload) being at a payload height at which user interaction is expected. More specifically, the control system can determine the payload height of the payload and can determine that the payload height is the height at which user interaction is expected. Once the control system makes this determination, the control system can then respond by executing method 1900, such as when user interaction is actually detected.
[0292] Typically, a control system can use various techniques to determine the payload height. In one example, a height sensor can be coupled to the payload (e.g., a payload coupling device), and the control sensor can receive height data from the height sensor indicating the payload height. In another example, the control system can determine the deployed length of the tether, such as by using the techniques described herein. Moreover, the control system can determine the flight height, etc., based on the height data received from the height sensor of the UAV. Then, the control system can use the determined deployed tether length of the tether and the determined flight height as a basis for determining the payload height. For example, the control system can subtract the determined deployed tether length of the tether (e.g., 5 feet) from the determined flight height (e.g., 11 feet above the ground) to determine the payload height (e.g., 6 feet above the ground).
[0293] In addition, the control system can employ various methods to determine that the payload height is the height of an expected user interaction. For example, the control system can determine that the payload height is less than a threshold height (e.g., established by manual engineering input). In practice, the threshold height can be a height above the ground at which the user can feasibly reach the payload and thus interact with the tether. Other situations are possible.
[0294] In yet another aspect, the control system can operate the UAV itself according to a UAV response process, which can at least involve a specific movement of the UAV. In practice, the specific movement can take any feasible form. For example, the specific movement can involve a lateral movement of the UAV along an axis in physical space. In another example, the specific movement can involve initiating forward flight along a flight path, such as as Figure 25 shown in state 2506. Other examples are possible
[0295] Typically, in addition to or instead of operating the motor according to a determined motor response process, the control system can operate the UAV according to a UAV response process. And if the control system does so in addition to operating the motor according to the motor response process, the control system can operate the motor and the UAV separately to perform these processes simultaneously and / or at different times. Moreover, the control system can operate the UAV according to the UAV response process after and / or during a user interaction.
[0296] In addition, the control system can determine the UAV response process based on various factors. In doing so, the control system can consider any feasible combination of these factors, and may give more weight to certain factors compared to other factors. Nevertheless, various factors are possible.
[0297] In one example, the control system can determine a UAV response process based on a detected operation mode of the motor. For example, the control system can store mapping data thereon that maps each of a plurality of operation modes to a corresponding UAV response process, or can otherwise be configured to reference the mapping data. For example, the mapping data can map a particular sequence of current levels to a UAV response process that involves operating the UAV to tilt to a certain extent and in a certain direction. In this way, the control system can determine the UAV response process by referencing the mapping data to determine the corresponding UAV response process mapped to the detected operation mode of the motor.
[0298] In another example, the control system can determine a UAV response process based on the environmental state of the UAV and / or based on the flight state of the UAV. For example, if the control system determines that the flight state of the UAV involves the UAV hovering at a first position on the ground and the environmental state of the UAV includes a user physically pointing to a second position on the ground, then the UAV response process can involve the UAV flying in a hover flight so as to eventually hover at the second position, for example for the purpose of delivering a payload at the second position. Other examples and aspects are possible.
[0299] Note that the above features related to user interaction / feedback are not limited to the case where the UAV is hovering, and can be performed in various situations without departing from the scope of the present disclosure. For example, various features can be performed in a case where the UAV has landed on a ledge and a tether has been at least partially deployed such that the tether is suspended by the UAV at the edge of the ledge. Other examples are possible.
[0300] X. Tether Control After Delivery
[0301] A. Release Verification
[0302] As described above, when the UAV lowers a payload to the ground by controlling a motor to deploy a tether coupled to the payload, the control system of the UAV can monitor the current of the motor and / or the rotation of the spool to verify that the payload has reached the ground. The control system can then operate the motor to cause over-extension of the tether by continuing to deploy the tether from the spool. Once the touchdown of the payload is verified and the tether over-extension is performed, the control system can operate in a release verification mode to verify the separation of the payload from the payload coupling device before beginning the process of lifting the payload coupling device back to the UAV.
[0303] Figure 26 is a flowchart showing a release verification method 2600 according to an example embodiment. The method 2600 can be initiated when the method 1800 is completed (e.g., at the end of the tether over-extension period), as part of the operations in the release verification mode.
[0304] As shown, method 2600 involves the control system operating the motor in a first mode during a release verification period (where torque is applied to resist the gravitational pull on the tether), as shown in block 2602. In practice, the control system can apply a speed curve designed for release verification. The speed curve can be designed to lift a specific weight of the payload coupling device a short distance during the release verification period. Thus, if the payload has not been released, the motor will draw more current to follow the speed curve than it would if the payload had been correctly released from the payload coupling device. Thus, based at least in part on the motor current during the release verification period, the control system can determine that the payload has separated from the payload coupling device, as shown in block 2604. For example, the control system can determine that the payload has separated from the payload coupling device by determining that the motor current during the release verification period is below a threshold current for at least a threshold time amount. And, in response to that determination, the control system can operate the motor to retract the tether, as shown in block 2606.
[0305] On the other hand, if the motor current during the release verification period is large enough, the control system can determine that the payload has not separated from the payload coupling device, and can repeat the process of operating the motor to cause over-extension of the tether (perhaps some predetermined additional length at this time), and then pull up on the tether to test for payload separation, as shown in blocks 1808 and 2602 - 2606.
[0306] B. Tether Retraction Process
[0307] Once the release of the payload has been verified (e.g., by performing method 2600), the control system can switch to a retraction mode in order to retract the tether to lift the payload coupling device back to the UAV.
[0308] In the retraction mode, the ascent of the payload coupling device can be divided into two stages: an initial ascent stage and a final ascent stage.
[0309] During the initial ascent, the control system can implement a predetermined ascent rate curve, which can be designed taking into account the safety of bystanders and / or surrounding structures. After the initial ascent is complete (e.g., once a certain length of the tether has been wound), the control system can pause the retraction process, e.g., by operating the motor to maintain a substantially constant length of the deployed tether.
[0310] Due to the reduced weight suspended from the tether (e.g., only the weight of the payload coupling device), once the payload is released, the payload coupling device may be more likely to swing back and forth. Thus, during a pause in the retraction process, the control system can evaluate whether the payload coupling device is oscillating (e.g., like a pendulum) and / or determine the magnitude of the oscillation, and can evaluate whether measures should be taken to damp the oscillation. After or during such a damping process, the control system can initiate a final ascent of the payload coupling device, where the tether is fully retracted to pull the payload coupling device to the UAV and position the payload coupling device in a socket of the UAV for flying back to the return position.
[0311] Refer to the following Figures 38A-38C for more details on retracting the tether and payload coupling device after delivery.
[0312] XI. Damping Payload Oscillations
[0313] In practice, a UAV may sometimes encounter a situation where the tether is at least partially deployed and a suspended payload attached to the tether is prone to oscillation. In one example of such a situation, the UAV can deploy the tether to deliver a coupled payload, thereby making the coupled payload prone to oscillation. In another example of such a situation, the UAV can deploy the tether to pick up a payload, thereby making the payload coupling device (e.g., considered to be the payload in this case) prone to oscillation. In yet another example of such a situation, the UAV can retract the tether after coupling of the payload to pick up, thereby making the coupled payload prone to oscillation. In yet another example of such a situation, the UAV can retract the tether after releasing the payload after delivery, thereby making the payload coupling device (e.g., considered to be the payload again in this case) prone to oscillation. Other examples are possible.
[0314] In such a situation, various factors may cause oscillation of the suspended payload. In one example, wind conditions strong enough may cause the payload to oscillate. In another example, movement of the UAV while maintaining its position in a hover mode can make the payload oscillate. And in yet another example, oscillation of the payload can be the result of an external force applied by a user to the tether and / or the payload itself. Other examples are possible.
[0315] Generally, oscillation of the payload can cause the payload to move back and forth in a pendulum-like motion, also known as a swinging motion. In fact, the swinging motion of the oscillating payload may have various consequences. For example, the swinging motion of the oscillating payload may have an undesirable effect on the stability of the UAV, it may be difficult to position the payload at a desired location on the ground, it may cause undesirable movement of the payload near the ground, or it may cause difficulty in positioning the payload coupling device in a socket of the UAV, etc.
[0316] To address these issues, the control system of the UAV can perform one or more damping techniques, such as those described below. As described above, during a pause in the tether retraction process, this damping technique can be performed after delivering the payload. However, it should be understood that the damping techniques described below can also be applied to other situations. In addition, the damping techniques described here can be applied to situations where the payload is still attached to the payload coupling device (some adjustments may be required to account for the additional weight suspended from the tether compared to when only the payload coupling device is attached). More generally, the damping techniques disclosed herein can be applied to any situation where a tether suspends a heavy object from an aircraft.
[0317] A. Detection and Evaluation of Payload Oscillation
[0318] In an example embodiment, the UAV can include one or more sensors arranged to generate sensor data indicative of the oscillation of a payload coupling device (and / or the coupled payload) suspended below the UAV. In fact, these sensors can include a current sensor coupled to the winch motor, a tension sensor on the tether, an inertial measurement unit (IMU) on the UAV and / or on the payload coupling device, an image capture device on the UAV, and / or an encoder on the winch motor, etc. Thus, the control system of the UAV can use sensor data from any combination of these sensors to detect the oscillation of the payload and the properties of the oscillation, such as amplitude, frequency, and / or oscillation speed, etc.
[0319] In one case, the current sensor can generate data representing current and motor characteristics. The control system can receive such current data and can use the current data as a basis for detecting the oscillation of the payload and for determining the properties of those detected oscillations. To this end, the control system can refer to mapping data that maps each of various current characteristics to an indication of payload oscillation and / or to the corresponding properties of the payload oscillation. For example, a specific set of current characteristics (e.g., a specific relative change in the current value) can be mapped to an indication of payload oscillation. Moreover, another specific set of current characteristics (e.g., a specific rate of change of the current value) can be mapped to an indication that the payload is oscillating at a specific oscillation amplitude.
[0320] In another case, a tension sensor can generate tension data representative of the tether tension. A control system can receive such tension data and can use the tension data as a basis for detecting oscillations of the payload and for determining attributes of those detected oscillations. To this end, the control system can refer to mapping data that maps each of various tether tension characteristics to an indication of the payload oscillation and / or a corresponding attribute of the payload oscillation. For example, a particular set of tether tension characteristics (e.g., a particular relative change in tension) can be mapped to an indication of the payload oscillation. Also, another particular set of tether tension characteristics (e.g., a particular rate of change of tension) can be mapped to an indication of the payload oscillating at a particular speed.
[0321] In yet another case, an IMU can generate motion data indicative of the movement of the payload relative to the vehicle. A control system can receive such motion data and can use the motion data as a basis for detecting oscillations of the payload and for determining attributes of those detected oscillations. To this end, the control system can refer to mapping data that maps each of various motion data characteristics to an indication of the payload oscillation and / or a corresponding attribute of the payload oscillation. For example, a particular set of motion data characteristics can be mapped to an indication of the payload oscillation. Also, another particular set of motion data characteristics (e.g., motion data indicative of a particular force) can be mapped to an indication of the payload oscillating at a particular oscillation amplitude.
[0322] In yet another case, an image capture device can be arranged to face the payload, thereby providing image data representative of the position of the payload relative to the UAV. With such an arrangement, the control system can receive the image data and can use any currently known and / or future developed image processing techniques to evaluate the image data. In doing so, the control system can use the image data to determine the position of the payload over time. More specifically, the control system can detect oscillations of the payload by determining the difference in the position of the payload over time. Additionally, the control system can use the image data as a basis for determining attributes of the detected oscillations. For example, the control system can determine the difference between certain payload positions over time and then determine the oscillation amplitude based on the determined differences. In another example, the control system can use the image data to determine the rate of change of the position of the payload and then determine the oscillation speed based on the determined rate of change. Other cases and examples are possible.
[0323] In addition, various properties of the payload oscillation can depend on the extent of tether deployment. For example, compared to the frequency of payload sway when the deployed tether length is longer, a shorter deployed tether length can cause the payload to sway at a higher frequency. For this reason, when determining the properties of the payload oscillation, the control system can consider the deployed tether length as an additional factor. For example, after determining that the tether is deployed at a specific length, the control system can determine the position of the payload over time. Then, the control system can refer to mapping data that maps the combination of the determined deployed length of the tether and the determined position to a specific oscillation amplitude and a specific oscillation frequency. Alternatively, the control system can determine such properties based on a predetermined formula that takes as input variables such as the deployed tether length and the determined position and outputs data indicating one or more of the above properties. Other examples are possible.
[0324] In practice, the control system can determine the deployed tether length by receiving position data from an encoder that represents the deployed length of the tether. More specifically, the encoder can be coupled to the motor such that when the motor performs rotation to deploy and / or wind the tether, the encoder generates data representing the angular position and / or movement of the motor (e.g., the drive assembly of the motor). In this way, the control system can receive the data and can use the data as a basis for tracking the deployed length of the tether. For example, the control system can detect two rotations of the motor in a specific direction based on data from the encoder and can determine that these two rotations correspond to the tether being deployed two meters. Other examples are possible.
[0325] On the other hand, the control system can also use sensor data as a basis for determining that a detected oscillation exceeds a threshold (e.g., established by manual engineering input). For example, the control system can determine that the sensor data indicates a specific amplitude of the payload oscillation and can determine that the specific amplitude is higher than a threshold amplitude. In another example, the control system sensor data indicates a specific speed of the payload oscillation, such as the speed at which the payload sways back and forth when the tether is partially deployed. In this example, the control system can then determine that the specific speed is higher than a threshold speed. In yet another example, the control system sensor data indicates a specific frequency of the payload oscillation, such as the frequency at which the payload sways back and forth when the tether is partially deployed. In this example, the control system can then determine that the specific frequency is higher than a threshold frequency. Other examples are possible.
[0326] B. Damping during Tether Retraction
[0327] Figure 27It is a flowchart showing a method 2700 for initiating a damping routine (which may also be referred to herein as a damping technique) according to an exemplary embodiment. The method 2700 may be implemented by a control system of a UAV during a tether retraction process. In practice, the tether retraction process may occur after delivery and / or at other times during pickup and / or delivery. Additionally, although the method 2700 is described as being performed in the context of a payload coupling device, the method 2700 may also be performed in the context of a payload coupled to the payload coupling device.
[0328] Turning to the method 2700, the UAV may initially operate in a hover flight mode, as shown in block 2702. For example, the UAV may hover over a target or delivery location, or at a source location. Once the payload is released on the ground, the control system of the UAV may switch to a tether retraction mode, as shown in block 2702. When operating in the tether retraction mode, the control system may execute a damping routine to suppress oscillations of the payload coupling device, as shown in block 2704. Optionally, the control system may do so specifically in response to determining that the detected oscillations exceed a threshold.
[0329] Generally, the damping routine executed by the control system may be any combination of the damping routines described herein. However, in some cases, the control system may execute one or more damping routines other than those described herein and do so without departing from the scope of the method 2700.
[0330] As described above, a damping routine such as that performed at block 2704 may be executed during a pause in the ascent process (and possibly while also lowering the payload coupling device during the pause). In some embodiments, the control system may wait until the oscillations are sufficiently suppressed and then resume the process of retracting (or lowering) the tether. For example, the control system may pause until it determines that the amplitude of the oscillations is less than a threshold amplitude, or perhaps even until the payload coupling device is in an equilibrium position. In either case, the control system may respond by resuming the retraction of the tether to lift the payload coupling device to the UAV. However, in other embodiments, the control system may not wait until the oscillations are sufficiently suppressed and then resume the process of retracting (or lowering) the tether. For example, the control system may pause the tether retraction process for a fixed period of time before resuming. Specifically, when starting to execute the damping routine, the control system may start a timer that is arranged to expire after a specific duration (e.g., established by manual engineering input) and may respond to detecting the expiration of the timer by resuming the process of retracting (or lowering) the tether. Other examples are possible.
[0331] Figures 28A to 28D Next, the initiation of the damping routine during the tether retraction process is shown together.
[0332] As Figure 28A shown, the UAV 2800 includes a tether 2802 and a payload coupling device 2804 coupled to the tether 2802. Additionally, the payload 2806 is shown to be delivered by the UAV 2800 at a delivery location on the ground. Additionally, Figure 28A the UAV 2800 is shown hovering over the delivery location while the control system of the UAV operates in a tether retraction mode to raise the payload coupling device 2804 back to the UAV after delivering the payload 2806.
[0333] As Figure 28B shown, when operating in the tether retraction mode, the control system of the UAV pauses the raising of the payload coupling device 2804. During the pause, the control system executes a damping routine, as Figure 28B shown. As described above, the damping routine can be any damping routine described herein, etc. Optionally, as noted, the control system executes the damping routine in response to detecting that the oscillation of the payload coupling device 2804 is at an oscillation amplitude 2808 greater than a threshold amplitude.
[0334] As Figure 28C shown, although the control system of the UAV still pauses the raising of the payload coupling device 2804, the oscillation is shown to have been suppressed due to the damping routine. In one case, during the pause and after executing the damping routine for a period of time, the control system detects that the oscillation of the payload coupling device 2804 is at an oscillation amplitude 2810 below the threshold amplitude. In this way, the control system determines that the oscillation has been sufficiently suppressed and, in response, determines that the tether retraction process can resume. In another case, the control system detects the expiration of a timer started when the execution of the damping routine stops and determines that the tether retraction process can resume in response to detecting the expiration of the timer. Thus, in either case, the control system can resume operation in the tether retraction mode to raise the payload coupling device 2804 back to the UAV 2800 after delivering the payload, as Figure 28D shown. Other explanations are possible.
[0335] C. Example Damping Techniques
[0336] Although several damping techniques are described below, it should be understood that other damping techniques and modifications to the described techniques are possible without departing from the scope of the present disclosure.
[0337] i. Forward Flight to Suppress Oscillation
[0338] Figure 29It is a flowchart showing method 2900 for initiating forward flight to suppress oscillations. As described above, the UAV can be configured to fly according to a hover flight mode and according to a forward flight mode. In the hover flight mode, the flight dynamics may be similar to that of a helicopter. More specifically, lift and thrust can be provided by the rotors, which allow the UAV to take off and land vertically and fly in all directions. However, in the forward flight mode, the flight dynamics may be similar to that of an airplane. More specifically, a fixed-wing UAV can be propelled forward by thrust from a jet engine or a propeller, where the fixed wing of the UAV provides lift and allows the UAV to glide substantially horizontally relative to the ground.
[0339] With this arrangement, the UAV can operate according to the hover flight mode, as shown in block 2902. As noted, the UAV can do so during the process of deploying the tether for payload pickup and / or payload delivery, or can do so during the process of retracting the tether for payload pickup and / or payload delivery. In any case, when the UAV is in the hover flight mode, the control system of the UAV can cause the UAV to switch from the hover flight mode to the forward flight mode, as shown in block 2904.
[0340] Optionally, the control system can do so in response to determining that the detected oscillations exceed a threshold. Also, the payload under discussion can be considered a payload (such as a package) coupled to a payload coupling device, or can be considered the payload coupling device itself, etc.
[0341] More specifically, by switching to the forward flight mode, the movement of the UAV may cause drag on the payload. Generally, drag is considered to be aerodynamic or frictional forces that resist or impede the movement of an object through the air due to the interaction between the object and air molecules. Thus, in a forward flight scenario, the airflow may cause a drag force directed along a direction opposite to the forward flight direction. Therefore, the resulting drag can suppress the detected oscillations of the payload because the airflow can help stabilize the payload.
[0342] In addition, in some embodiments, when the control system causes the UAV to switch to the forward flight mode, the control system can also instruct the UAV to operate in the forward flight mode with certain flight characteristics. In practice, these flight characteristics can include flight speed, flight direction, and / or flight timing, etc. In this way, the control system can determine appropriate flight characteristics based on various factors. And according to the present disclosure, the control system can determine appropriate flight characteristics based at least on the detected oscillations of the payload and / or based on other factors.
[0343] As an example, the control system can determine an initial flight speed for the forward flight mode based at least on the detected oscillations. In practice, the initial flight speed can be the flight speed to which the UAV initially immediately accelerates after switching to the forward flight mode and the flight speed that the UAV ultimately maintains for at least a period of time during the forward flight mode. Thus, according to the present disclosure, the control system can determine a generally higher initial flight speed when the amplitude of the detected oscillations is greater. For example, the control system can select a first initial flight speed when the control system detects a first oscillation amplitude of the payload and can select a second initial flight speed when the control system detects a second oscillation amplitude of the payload, where the first amplitude is higher than the second amplitude and the first initial flight speed is higher than the second initial flight speed. Note that the initial flight speed can additionally or alternatively depend on the mass and / or drag of the payload, or can simply be predefined, such as by manual engineering input, etc.
[0344] In another example, the control system can determine the flight timing for the forward flight mode based at least on the detected oscillations. In particular, determining the flight timing can include determining the time to initiate the forward flight mode, the duration of the execution of the suppression as part of the forward flight mode, and / or the time to end the forward flight mode, etc. In either case, the control system can consider various factors related to the detected oscillations as a basis for determining the flight timing. For example, the control system can determine the state of the payload swing, such as whether the payload is at the top or bottom of the swing, and use the determined payload swing state as a basis for determining the flight timing. In another instance, the control system can determine the range (e.g., amplitude) of the payload oscillations and can determine the flight timing based on the determined range. Note that alternatively, the flight timing can be predefined, such as by manual engineering input, etc. Other instances and examples are also possible.
[0345] On the other hand, the control system can help facilitate the forward flight damping routine in various situations. In one example situation, the control system can initiate forward flight during the process of retracting the tether for payload pickup and / or payload delivery to suppress oscillations. In this example situation, the control system can technically initiate forward flight at any point during the retraction process, such as without pausing during the retraction process. However, ideally, the control system can operate the motor to pause the retraction of the tether when the detected oscillations exceed a threshold, which can allow the control system to initiate the forward flight mode during the pause in the retraction process. Then, once the control system detects that the oscillations of the payload have been sufficiently suppressed by the drag (e.g., the detected oscillations no longer exceed the threshold) and / or after a fixed time delay (e.g., in response to detecting the expiration of a timer), the control system can operate the motor to resume the retraction of the tether.
[0346] In another example scenario, the control system can initiate forward flight during the process of deploying the tether for payload pickup and / or payload delivery to dampen oscillations. In this example scenario, the control system can technically initiate forward flight at any point during the deployment process, such as without pausing during the deployment process. However, ideally, the control system can operate the motor to pause the deployment of the tether when the detected oscillations exceed a threshold, which can allow the control system to initiate the forward flight mode during the pause in the deployment process. Then, once the control system detects that the oscillations of the payload have been sufficiently damped by the drag and / or after a fixed time delay (e.g., in response to detecting the expiration of a timer), the control system can then operate the motor to resume the deployment of the tether. Various other example scenarios are also possible.
[0347] In addition, when the control system operates the motor to resume the deployment or retraction of the tether, the control system can ideally do so when the UAV is operating in the forward flight mode, but can also do so when the UAV is operating in the hover flight mode.
[0348] For example, once the control system detects that the oscillations of the payload have been sufficiently damped by the drag and / or after a fixed time delay, as the control system also keeps the UAV operating in the forward flight mode, the control system can respond by operating the motor to deploy or retract the tether. Also, for example, in the case of retraction, the control system can instruct the UAV to maintain a specific forward flight speed (e.g., a determined initial flight speed) while the tether is being retracted. In this way, the control system can ensure a safe and stable retraction of the tether. Then, once the control system determines that the retraction of the tether is complete, the control system can then respond by changing (e.g., increasing) the forward flight speed, if applicable.
[0349] Additionally or alternatively, once the tether is fully retracted, the control system can then cause the UAV to switch from the forward flight mode back to the hover flight mode. In this regard, after the UAV switches back to the hover flight mode, the control system can then operate the motor to deploy the tether. In this way, forward flight can dampen the oscillations of the payload, and subsequent hover flight can allow for the deployment of the tether at a specific location, such as for payload pickup or delivery purposes. Other examples are also possible.
[0350] In another aspect, the control system may execute method 2900 provided that the payload is at a safe distance from the UAV. Generally, the control system may do so to ensure that the payload does not collide with the UAV when starting to fly forward and / or may do so for other reasons. Nevertheless, the control system may do so in various ways. For example, the control system may determine the deployed length of the tether and then may determine that the deployed length of the tether is above a threshold length, thereby indicating to the control system that the payload is at a relatively safe distance from the UAV. In this way, if the control system attempts to execute method 2900, the control system may do so only when the control system determines that the deployed length of the tether is above the threshold length. Other examples are possible.
[0351] Figures 30A to 30D Collectively illustrate techniques related to forward flight to dampen oscillations, particularly during the tether retraction process.
[0352] As Figure 30A shown, the UAV 3000 includes a tether 3002 and a payload coupling device 3004 coupled to the tether 3002. Additionally, the payload 3006 is shown as having been delivered by the UAV 3000 at a delivery location on the ground. Additionally, Figure 30A shown is the UAV 3000 hovering over the delivery location while the control system of the UAV operates in a tether retraction mode to raise the payload coupling device 3004 back to the UAV after delivering the payload 3006.
[0353] As Figure 30B shown, when the UAV 3000 is in a hovering flight mode, the control system of the UAV pauses the raising of the payload coupling device 3004. During the pause, the control system may optionally detect that the deployed length 3010 of the tether 3002 is greater than a threshold length. Also, the control system may optionally detect that the oscillation of the payload coupling device 3004 is at an oscillation amplitude 3008 greater than a threshold amplitude. In this regard, the control system may then respond by executing a forward flight damping routine, as Figure 30C shown. In particular, while the control system of the UAV still pauses the raising of the payload coupling device 3004, the UAV 3000 responds by switching from operating in a hovering flight mode to operating in a forward flight mode. However, in other cases, the control system may not detect the oscillation and may simply execute the forward flight damping routine for a fixed period of time (e.g., until expiration of a timer is detected).
[0354] As Figure 30CAs shown, by switching to the forward flight mode, the movement of the UAV 3000 causes drag on the payload attachment device 3004, which dampens the oscillation of the payload attachment device 3004. Accordingly, during the pause and after the UAV has flown forward for a period of time, the control system detects that the oscillation of the payload attachment device 3004 is at an oscillation amplitude 3012 that is below a threshold amplitude. In this way, the control system determines that the oscillation has been sufficiently dampened and, in response, determines that the tether retraction process can resume.
[0355] As Figure 30D shown, in response to determining that the oscillation has been sufficiently dampened and / or in response to detecting the expiration of a timer, the control system then resumes operation in the tether retraction mode to raise the payload attachment device 3004 back to the UAV 3000 after delivering the payload. Additionally, the control system is shown resuming operation in the tether retraction mode because the control system continues to instruct the UAV 3000 to operate in the forward flight mode. Other explanations are possible.
[0356] ii. Reducing the degree of flight stability to dampen oscillations
[0357] According to an example embodiment, the UAV may operate in a position-holding mode, in which the UAV substantially maintains its physical position in physical space during hover flight. Generally, the UAV may do so by participating in one or more flight stabilization techniques (such as vision-based stabilization and / or IMU-based stabilization) during hover flight, such as currently known stabilization techniques and / or future-developed stabilization techniques.
[0358] Specifically, the UAV may participate in flight stabilization along three dimensions in physical space in order to resist movement of the UAV along any of the three dimensions, thereby helping to maintain the physical position of the UAV. In practice, the three dimensions discussed may be the yaw axis of the UAV, the pitch axis of the UAV, and the roll axis of the UAV. Additionally or alternatively, the three dimensions may include any viable translation axes for the UAV (such as any axis along which the translational movement of the UAV may occur). However, without departing from the scope of the present disclosure, the three dimensions may also take various other forms.
[0359] Figure 31It is a flowchart showing method 3100 for reducing the level of flight stability (e.g., gain) to suppress oscillations ("limp" damping technique). As shown in block 3102 of method 3100, the UAV can operate in a position-holding mode. Similarly, the UAV can do so during the process of deploying the tether for payload pickup and / or payload delivery, or can do so during the process of retracting the tether for payload pickup and / or payload delivery. In any case, when the UAV is in the position-holding mode, the control system of the UAV can reduce the level of flight stability along at least one dimension, as shown in block 3104. Optionally, the control system can do so in response to determining that the detected oscillations exceed the above threshold. Also, as noted, the payload under discussion can be considered a payload (e.g., a package) coupled to a payload coupling device, or can be considered the payload coupling device itself, etc.
[0360] More specifically, the "limp" damping technique can involve the control system causing the UAV to reduce the level of flight stability along at least one of the above three dimensions. By doing so, the UAV can then move along that dimension (e.g., translational motion along an axis) based on an external force applied to the UAV. In fact, these external forces may be the result of payload oscillations. And when these payload oscillations cause the UAV to move along at least one of the dimensions under discussion, energy may be dissipated over time, resulting in the suppression of the detected oscillations due to this energy dissipation.
[0361] According to the present disclosure, the action of reducing the level of flight stability along at least one dimension can take various forms.
[0362] In one case, reducing the level of flight stability along at least one dimension can take the form of completely eliminating any form of stability along that dimension, thus allowing the UAV to move along that dimension strictly based on an external force applied to the UAV. For example, a swinging payload can apply an external force to the UAV along a particular axis, and since the UAV reduces its stability along the particular axis, the UAV may eventually move a certain amount along the particular axis, which amount is based on the magnitude of the external force. In this way, the swinging payload can essentially drag the UAV itself along a particular axis. Other examples are possible.
[0363] However, in another case, reducing the flight stability along at least one dimension can take the form of reducing the stability degree by a certain amount along at least one dimension. Specifically, the control system can allow the UAV to move along at least one dimension based on an external force applied to the UAV, but only to a certain extent. For example, after detecting that the UAV has moved a certain amount along at least one dimension relative to the above physical position, the UAV can participate in flight stabilization. In this way, the control system can effectively allow the UAV to move a certain range along at least one dimension relative to the physical position (for example, the UAV achieves a translational movement of two meters along a specific axis in each direction) rather than the UAV attempting to maintain the physical position of the UAV by preventing any movement of the UAV away from the physical position.
[0364] In addition, when determining the degree of reducing stability along at least one dimension, the control system can consider various factors. In an example implementation, the control system can use the detected oscillation as the basis for determining the target stability degree. In doing so, when the amplitude of the detected oscillation is large, the control system can determine a smaller target stability degree, thereby allowing the UAV to move more along at least one dimension to help dissipate energy. And due to this greater movement of the UAV, higher amplitude oscillations may eventually be suppressed. Other cases and examples are also possible.
[0365] After reducing the flight stability along at least one dimension, the control system can detect that the oscillation of the payload has been sufficiently suppressed and / or can detect the expiration of a timer (for example, start a "damping routine" at the beginning of "limp", and can respond by increasing the flight stability degree of the aircraft along at least one dimension. According to the present disclosure, this increase in flight stability can take various forms.
[0366] In one example, assuming that the control system causes the UAV to completely eliminate any form of stability along this dimension, the control system can cause the UAV to fully activate stability along this dimension in an attempt to fully maintain the physical position of the UAV. In another example, again assuming that the control system causes the UAV to completely eliminate any form of stability along this dimension, the control system can increase the stability degree of the UAV along this dimension by effectively allowing the UAV to have some movement range along at least one dimension relative to the physical position. In yet another example, assuming that the control system causes the UAV to partially reduce the stability degree along at least one dimension, the control system can cause the UAV to increase the stability degree along this dimension. In this example, the control system can cause the UAV to increase the stability degree (for example, to the same degree as before the reduction) in order to effectively reduce the movement range allowed by the UAV along at least one dimension relative to the physical position. Alternatively, the control system can cause the UAV to increase the stability degree in order to fully activate stability along this dimension in an attempt to fully maintain the physical position of the UAV. Various other examples are also possible
[0367] In another aspect, the control system can help facilitate "limp" damping techniques in various situations. In one example situation, the control system can initiate "limp" damping techniques during the retraction of the tether for payload pick-up and / or payload delivery. In this example situation, the control system can technically initiate "limp" damping techniques at any point during the retraction process, such as without pausing during the retraction process. However, ideally, the control system can operate the motor to pause the retraction of the tether when the detected oscillation exceeds a threshold, which can allow the control system to initiate "limp" damping techniques during the pause in the retraction process. Then, once the control system detects that the oscillation of the payload has been sufficiently suppressed after a reduction in the flight stability along at least one dimension (e.g., the detected oscillation no longer exceeds the threshold) and / or after a fixed time delay (e.g., upon detecting the expiration of a timer), the control system can then operate the motor to resume the retraction of the tether.
[0368] In another example situation, the control system can initiate "limp" damping techniques during the deployment of the tether for payload pick-up and / or payload delivery. In this example situation, the control system can technically initiate "limp" damping techniques at any point during the deployment process, such as without pausing during the deployment process. However, ideally, the control system can operate the motor to pause the deployment of the tether when the detected oscillation exceeds a threshold, which can allow the control system to initiate "limp" damping techniques during the pause in the deployment process. Then, once the control system detects that the oscillation of the payload has been sufficiently suppressed after a reduction in the flight stability along at least one dimension and / or after a fixed time delay (e.g., upon detecting the expiration of a timer), the control system can then operate the motor to resume the deployment of the tether. Various other example situations are also possible.
[0369] Furthermore, when the control system operates the motor to resume the deployment or retraction of the tether, the control system can do so while the flight stability along at least one dimension is still decreasing and / or after an increase in the flight stability along at least one dimension. For example, once the control system detects that the oscillation of the payload has been sufficiently suppressed and / or detects the expiration of a timer, the control system can respond by operating the motor to deploy or retract the tether because the control system also causes the UAV to maintain a reduced level of flight stability along at least one dimension. In another example, once the control system detects that the oscillation of the payload has been sufficiently suppressed and / or detects the expiration of a timer, the control system can respond by causing the UAV to increase the level of flight stability along at least one dimension. In this example, after the UAV increases the level of flight stability along at least one dimension, the control system can then operate the motor to deploy or retract the tether. Other examples are also possible.
[0370] Figures 32A to 32H Next, a "limp" damping technique is shown in common, specifically performed during the tether retraction process.
[0371] As Figure 32A shown, the UAV 3200 includes a tether 3202 and a payload coupling device 3204 coupled to the tether 3202. Additionally, the payload 3206 is shown to have been delivered by the UAV 3200 at a delivery location on the ground. Additionally, Figure 32A shown is the UAV 3200 hovering over the delivery location while the control system of the UAV operates in a tether retraction mode to raise the payload coupling device 3204 back to the UAV after the payload 3206 is delivered. In this regard, the UAV 3200 is shown to be in a position-holding mode, where the UAV 3200 substantially maintains its physical position "X,Y" in physical space during hovering flight.
[0372] As Figure 32B shown, when operating in the tether retraction mode, the control system of the UAV pauses the raising of the payload coupling device 3204. During the pause, the control system optionally detects that the oscillation of the payload coupling device 3204 is at an oscillation amplitude 3208 greater than a threshold amplitude. In response to detecting the oscillation in this way and / or in response to starting a timer, the control system then performs the above-described "limp" damping routine. Specifically, the control system causes the UAV to reduce the degree of flight stability along at least one dimension. By doing so, the UAV then moves along that dimension based on an external force applied to the UAV, which can damp the oscillation caused by energy dissipation. Figures 32C to 32F This movement and energy dissipation are shown.
[0373] More specifically, due to the reduced degree of flight stability along the dimension, the swinging payload coupling device 3204 drags the UAV 3200 along the dimension to a position at a distance D1 from the position "X,Y" in the first direction, as Figure 32C shown. Subsequently, due to the continued reduction in the degree of flight stability along the dimension and due to energy dissipation, the swinging payload coupling device 3204 drags the UAV 3200 along the dimension to a position at a smaller distance D2 (e.g., less than D1) from the physical position "X,Y" in the second direction (e.g., opposite to the first direction), as Figure 32D shown. Subsequently, again due to the continued reduction in the degree of flight stability along the dimension and due to further energy dissipation, the swinging payload coupling device 3204 drags the UAV 3200 along the dimension to a position at an even smaller distance D3 (e.g., less than D2) from the physical position "X,Y" in the first direction, as Figure 32EAs shown. Finally, again due to the continuous decrease in the flight stability along the dimension and due to further energy dissipation, the oscillating payload coupling device 3204 drags the UAV 3200 along the dimension in the second direction to a position at an even smaller distance D4 (e.g., less than D3) from the physical location "X,Y", as Figure 32F shown. In this way, as the energy continues to dissipate, the UAV 3200 can continue to move back and forth along the dimension.
[0374] As Figure 32G shown, the oscillation is shown to be suppressed due to the "limp" damping routine. Optionally, during the pause and after the "limp" damping routine has been executed for a period of time, the control system detects that the oscillation of the payload coupling device 3204 is at an oscillation amplitude 3210 that is below the threshold amplitude. In practice, the control system can perform such detection while the flight stability is still decreasing along the dimension and / or after the control system increases the flight stability along the dimension. Nevertheless, the control system determines that the oscillation has been sufficiently suppressed and / or detects the expiration of the timer, and correspondingly determines that the tether retraction process can be resumed. In this way, the control system can correspondingly resume operation in the tether retraction mode to raise the payload coupling device 3204 back to the UAV 3200 after payload delivery, as Figure 32H shown. Other explanations are also possible.
[0375] iii. Unfolding / Winding the Tether to Suppress Oscillation
[0376] According to an exemplary embodiment, the control system of the UAV can suppress the oscillation of the payload by operating the motor to unfold and / or wind the tether, thereby changing the tension on the tether. In doing so, the control system can increase and / or decrease the length of the unfolded tether and do so at various rates, which can help dissipate energy and thus ultimately suppress the oscillation of the payload. In this way, the control system is provided with an additional control input that does not necessarily interfere with other control objectives of the system (e.g., does not prevent the aircraft from maintaining its position while also suppressing the payload oscillation).
[0377] More specifically, the control system can operate the motor to vary the retraction rate of the tether and / or the deployment rate of the tether. In practice, the retraction rate can define the timing, extent, and / or speed at which the tether retracts, and the deployment rate can define the timing, extent, and / or speed at which the tether deploys. Thus, the control system can operate the motor in a first mode to retract the tether at at least one target retraction rate (e.g., determined based on detected oscillations and / or established via manual engineering input). Additionally or alternatively, the control system can operate the motor in a second mode to deploy the tether at at least one target deployment rate (e.g., determined based on detected oscillations and / or established via manual engineering input). With this arrangement, the control system can thus use various specific methods to dampen oscillations by controlling the tether at various rates.
[0378] For example, the control system can control the winding and / or deployment of the tether, or the rate of the winding and / or deployment of the tether, to "pump" the payload like a pendulum, where the tether is let out as the payload moves towards the bottom of the pendulum, and the tether is held fast (or even wound) as the payload moves towards the top of the pendulum. Additionally, the "pumping" frequency, period, and / or phase of the tether can match the oscillation frequency, period, and / or phase of the payload, respectively. By doing so, the energy of the oscillating payload can be removed even while the UAV remains substantially stationary.
[0379] Furthermore, the degree of "pumping" of the winch can depend on the distance between the payload and the UAV, which corresponds to the deployed length of the tether. Specifically, when there is a large distance between the payload and the UAV, the pendulum motion of the payload can be very slow, e.g., about 1 / 4 Hertz. At this time, the amount of tether deployed or wound on the winch during winch "pumping" can be several meters. However, when the payload is closer to the UAV, the pendulum motion can accelerate to an order of magnitude of 1 Hertz or higher. In this case, the amount of tether deployed or wound on the winch during "pumping" can be on the order of centimeters.
[0380] In addition, when the distance from the payload to the UAV changes, the rate at which the tether winds or unwinds can vary from one oscillation period to the next, and can even vary within a single oscillation period. For example, the rate of winding or unwinding can be proportional to the velocity of the payload or the square of the velocity of the payload. Other examples are possible.
[0381] With this arrangement, the control system can "pump" the winch when operating in the tether retraction mode to participate in the payload's ascent or when operating in the tether deployment mode to participate in the payload's descent. Specifically, during payload descent, the oscillation of the payload can be suppressed by pulling out the tether when the payload approaches the bottom of the swing. However, when the payload moves towards the top of the swing, the amount of tether deployed from the winch can be reduced or stopped, or the tether can even be wound when the payload moves to the top of the swing. This "pumping" of the tether can counteract the swinging motion of the payload to control and damp the oscillation of the payload. Conversely, during payload ascent, the oscillation of the payload can be suppressed by winding the tether when the payload moves to the top of the swing. However, when the payload moves towards the bottom of the swing, the tether can be deployed or stopped, or wound at a reduced rate. Other methods are possible.
[0382] iv. UAV movement to suppress oscillation
[0383] According to an example embodiment, the control system of the UAV can suppress the oscillation of the payload by instructing the UAV itself to move in various ways in physical space. Using this method, the control system can instruct the UAV to make reactive movements in a way that cancels, prevents, or reduces the movement of the payload during payload ascent and / or descent. Although various such movements are described below, other movements can also be made without departing from the scope of the present disclosure.
[0384] More specifically, the control system can be used to determine a target path for the payload. The target path can be a target path for the payload to ascend during tether winding or can be a target path for the payload to descend during tether deployment. For example, the target path can be substantially perpendicular to the ground and can extend from the ground to the UAV. In this way, when the payload is lowered or raised, the control system can effectively plan to keep the payload substantially below the UAV. However, when the payload is lowered or raised, the oscillation of the payload may cause the payload to move away from the target path.
[0385] To help solve this problem, as described above, the control system can move the UAV in various ways. Specifically, at a given point in time, the control system can use the detected oscillation of the payload as a basis for determining the position of the payload relative to the target path. Then, based on the determined position of the payload relative to the target path, the control system can determine the movement to be performed by the UAV to move the payload closer to the target path, and the control system can cause the UAV to perform the determined movement. In this way, the control system can repeatedly determine such movements because the position of the payload relative to the target path changes over time due to the oscillation, and can repeatedly cause the UAV to perform the movements to help damp the oscillation.
[0386] As an example, the swinging motion of the payload can be controlled by horizontally moving or translating the UAV in response to the movement of the payload, such as by attempting to keep the payload below the UAV. By translating the UAV (e.g., moving back and forth) to minimize the oscillation, the oscillation of the payload (e.g., pendulum-like swinging) can be damped. For example, the control system can determine that the current position of the payload is a particular distance from the target path and that the payload is currently moving in a particular direction relative to the target path. Accordingly, the control system can immediately move the UAV horizontally in a particular direction and by an amount based on the particular distance, thereby attempting to keep the payload below the UAV. In this way, the control system can reactively determine the horizontal movement that counteracts the horizontal force on the payload and prevent or damp the oscillation of the payload. Other examples are possible.
[0387] D. Selection of Damping Techniques
[0388] Figure 33 is a flowchart showing a method 3300 for selecting one or more damping routines / techniques to help damp the oscillation of the payload. In practice, the control system of the UAV can execute method 3300 when operating in the tether retraction mode or when operating in the tether deployment mode. According to block 3302 of method 3300, when the tether is at least partially deployed, the control system can select one or more damping routines from a plurality of available damping routines to damp the oscillation of the payload. Then, the control system can execute those selected damping routines, as shown in block 3304.
[0389] According to the present disclosure, the control system can select any of the above-described damping routines. Specifically, the control system can select any combination of the following routines: forward flight to damp the oscillation, "limping" technique to damp the oscillation, winding / unwinding of the tether to damp the oscillation, and / or UAV movement to damp the oscillation. However, in practice, the control system can also select other damping routines not described herein and then execute such damping routines either individually or in combination with any of the above-described damping routines.
[0390] In addition, the control system can select damping routines based on various factors, some of which are described below. In practice, the control system can use any combination of these factors as a basis for selection, perhaps giving certain factors more importance compared to other factors. Although example factors are described below, other factors are possible without departing from the scope of the present disclosure.
[0391] In one case, the control system can select one or more damping routines based on the characteristics of the detected oscillation, such as based on the amplitude, velocity, and / or frequency of the oscillation, etc. For example, the control system can select one or more damping routines based on the amplitude of the detected oscillation of the payload. Specifically, the control system can store mapping data thereon that maps each of the respective amplitudes using a damping routine or a combination of two or more damping routines, etc., or can be configured to reference the mapping data. By way of example, the mapping data can map a certain amplitude range using a "forward flight" damping technique and another lower amplitude range using a "tether winding / unwinding" damping technique. In practice, the mapping data can be arranged in this way because "forward flight" can be substantially more effective in arresting more severe swaying of the payload. Thus, the control system can use sensor data to determine the amplitude of the detected oscillation and then can reference the mapping data to determine one or more damping routines corresponding to the detected amplitude.
[0392] In another case, the control system can select one or more damping routines based on the operating mode of the motor. Specifically, the control system can determine whether the motor is operating in a first mode, in which the motor applies torque to the tether in the winding direction, or whether the motor is operating in a second mode, in which the motor applies torque to the tether in the unwinding direction. At least partially based on the determined operating mode of the motor, the control system can then select one or more damping routines. For example, if the motor is operating in the second mode, the control system can select any damping technique other than the forward flight damping technique to avoid further increasing the length of the deployed tether during preparation and / or forward flight.
[0393] In yet another scenario, the control system can select one or more damping routines based on the operating mode of the UAV. Specifically, the control system can determine whether the UAV is operating in a payload pick-up mode in which the UAV attempts to pick up a payload or whether the UAV is operating in a payload delivery mode in which the UAV attempts to deliver a payload, and may determine a payload delivery state or a payload pick-up state respectively. At least in part based on the determined operating mode of the UAV, the control system can then select one or more damping routines. For example, if the UAV is involved in post-delivery tether retraction as part of the payload delivery mode, the control system can select a forward flight damping technique. In practice, the control system can do so because once the payload has been delivered, the UAV can start flying forward to the next destination. However, if the UAV is involved in post-pick-up tether retraction as part of the payload pick-up mode, the control system can select a UAV movement damping technique, and does so because UAV movement can help ensure that the picked-up payload is often directly positioned below the UAV as the payload ascends towards the UAV.
[0394] In yet another scenario, the control system can select one or more damping routines based on the value of the payload. In fact, the value of the payload can be the price of the payload and / or can be the priority of the payload being delivered, etc. Nevertheless, the control system can determine the value of the payload based on input provided by the user and / or by using object recognition techniques to determine the value of the payload based on image data, etc. With this arrangement, the control system can refer to mapping data that maps each of the various values using a damping routine or a combination of two or more damping routines. For example, the mapping data can map higher values using a "limp" damping technique because the "limp" technique can provide the least risk of damaging a higher-value payload. In this way, the control system can refer to the mapping data to determine one or more damping routines corresponding to the determined payload value.
[0395] In yet another scenario, the control system can select one or more damping routines based on the state of the environment in which the UAV is located. Specifically, the control system can use sensor data, etc. to determine information about the environment in which the UAV is located, such as information about objects in the environment. With this arrangement, the control system can then use the information about the environment to select one or more damping routines. For example, if the control system determines that an object is within a threshold distance from the UAV, the control system can select an "unfurl / wind tether" damping technique to avoid any movement of the UAV resulting from engaging in any other damping technique and thus avoid colliding with the object. Other scenarios are possible.
[0396] In another aspect, when the control system selects one or more damping routines, the control system may also determine the duration of each selected routine to be performed (e.g., set the duration of the timer described above), if feasible. In practice, the control system may determine each such duration based on one or more of the factors described above and / or may determine each such duration in other ways. For example, when the detected oscillation has a large amplitude, the control system may determine that the selected damping routine should be applied for a longer duration, allowing sufficient time to sufficiently damp the oscillation. Alternatively, the control system may simply perform the selected damping routine until the control system detects that the oscillation has been sufficiently damped. Other examples are possible.
[0397] In yet another aspect, when the control system selects two or more damping routines, the control system may also determine a method of using these selected damping routines in combination. In practice, the control system may determine the method based on one or more of the factors described above and / or may determine the method in other ways. Additionally, although example methods are described below, other example methods are possible without departing from the scope of the present disclosure.
[0398] In one exemplary method, the control system may determine an order in which to use the selected damping routines, e.g., by determining that a first damping routine should be followed by a second damping routine. For example, the control system may determine that a "limp" damping technique should be performed and then a "deploy / wrap tether" damping technique. In this regard, the control system may determine that the second damping routine should begin immediately after the first damping routine ends. Alternatively, the control system may determine that the control system should wait a specific period of time after performing the first damping routine and then perform the second damping routine when the specific period of time has elapsed. In some cases, the control system may use the specific period of time to evaluate the detected oscillation and may decide to continue with the second damping routine only if the oscillation has not been sufficiently damped.
[0399] In another example method, the control system may determine that the control system should perform two or more selected damping routines simultaneously. For example, the control system may determine that the control system should perform a UAV motion damping technique and a deploy / wrap tether damping technique simultaneously. In this regard, the control system may determine that the control system should begin performing the selected damping routines at the same point in time. Alternatively, the control system may determine that the control system should begin performing the first damping routine and, during the performance of the first damping routine, begin performing the second damping routine. Combinations of other example methods and the methods described are also possible.
[0400] E. Other damping aspects
[0401] Although the various damping techniques are described herein as being performed after or in response to detecting an oscillation of the payload, the various damping techniques may also be performed in other situations. For example, the control system may be configured to perform one or more damping techniques during certain flight phases and / or during certain phases of payload pick-up and / or delivery, etc. In such cases, the control system may perform those damping techniques without having to detect an oscillation of the payload. In this regard, as described above, the control system may perform a damping routine for a period of time, e.g., by starting a timer when starting the damping routine and then ending the damping routine (and / or performing other operations, such as resuming tether retraction) in response to detecting the expiration of the timer. In this way, the control system may essentially take preventive measures to minimize any oscillations that may be present.
[0402] XII. Fault Detection and Correction Methods
[0403] A. Faults in Releasing the Payload
[0404] As described above with respect to methods 1800 and 2600, the UAV may operate in a delivery mode to deliver a payload to a target location and then operate in a release verification mode to verify that the payload has been separated from the payload coupling device. However, there may be cases where the payload does not separate from the payload coupling device during delivery. For example, the payload coupling device may be hooked on the payload such that when the UAV motor is operated to cause over-extension of the tether, the payload coupling device remains coupled to the payload rather than lowering and separating the payload. Thus, the control system may detect such a situation and respond by separating the tether from the UAV rather than separating the payload from the payload coupling device to take remedial measures.
[0405] Figure 34 is a flowchart showing method 3400 for separating a tether from a UAV. Method 3400 may be performed by a UAV such as those described elsewhere herein. For example, method 3400 may be performed by a control system of a UAV having a winch system. Additionally, the winch system may include a tether disposed on a spool, a motor that can operate in a first mode and a second mode to respectively resist and assist in deploying the tether due to gravity (e.g., by driving the spool forward or in reverse), a payload coupling device that mechanically couples the tether to the payload, and a payload latch that can switch between a closed position that prevents the payload from being lowered from the UAV and an open position that allows the payload to be lowered from the UAV.
[0406] As shown in block 3402, method 3400 involves a control system of a UAV that operates a motor to deploy a tether and lower a payload towards the ground (e.g., by performing method 1800). The control system can be configured to detect when the payload contacts the ground and responsively initiate a tether over-extension process to attempt to release the payload from the payload attachment device, as shown in block 3404. Tether over-extension occurs when the motor continues to deploy the tether after the payload has stopped descending. During tether over-extension, the payload attachment device continues to lower as the tether is deployed while the payload remains stationary. For example, when the payload is resting on a protruding arm or other hooked mechanism of the payload attachment device, this can cause the payload attachment device to separate from the payload. As described above with respect to method 1800, the control system can detect when the payload contacts the ground by monitoring the speed and / or current of the motor and determining that the motor speed and / or motor current is threshold low. As further described above with respect to method 1800, initiating the tether over-extension process can include operating the motor in a second mode to drive the spool forward in a direction that causes the tether to continue to deploy even after the payload has reached the ground.
[0407] Typically, performing the tether over-extension process will result in the payload attachment device separating from the payload. However, in the case where the payload does not release from the payload attachment device, the tether over-extension process can be repeated up to a predetermined number of times, as further shown in block 3404.
[0408] In fact, once the payload has reached the ground and the control system has performed a first tether over-extension process to attempt to separate the payload attachment device from the payload, the control system can determine whether the payload attachment device has actually separated from the payload based on the current of the motor (e.g., by performing blocks 2602 and 2604 of method 2600). For example, after operating the motor to over-extend the tether, the control system can operate the motor to begin retracting the tether, and if the payload is still attached to the payload attachment device, the additional weight of the payload can cause the motor to draw more current. Thus, the control system can determine that the payload is still attached to the payload attachment device by detecting that the motor current is threshold high.
[0409] In response to making such a determination, the control system can repeat the process of lowering the payload to the ground, operate the motor to cause over-extension of the tether (this time perhaps a certain predetermined additional length), and then pull up on the tether to test for payload separation, as shown in blocks 3402 and 3404. These processes can be repeated multiple times until the control system determines that the payload has separated from the payload attachment device or until a threshold number of repetitions has occurred, as shown in block 3404.
[0410] The control system can keep track of the number of times the processes that have caused tether over-extension and test payload separation have been executed, and can determine that these processes have been repeated a threshold number of times without successfully releasing the payload from the payload coupling device, as shown in block 3406. In response to making this determination, the control system can decide to abandon further attempts to separate the payload from the payload coupling device and can instead decide to separate the tether from the UAV by operating the motor to allow the tether to unwind during the ascent of the UAV, as shown in block 3408.
[0411] In practice, the control system can operate the motor to unwind the tether by controlling the maximum current supplied to the motor. By limiting the maximum current supplied to the motor, the control system limits the amount of force the motor can exert on the tether. More specifically, the control system can limit the maximum current to a small enough value such that the magnitude of the maximum upward force exerted by the motor on the tether is less than the downward force on the tether due to the gravity on the payload. As a result, the UAV can fly upward and the tether will continue to unwind since the downward force on the tether exceeds the upward force from the motor. In other examples, the control system can simply turn off the motor and allow it to spin freely to obtain a similar result.
[0412] In addition, as described above, the tether can be disposed on a spool. More specifically, the first end of the tether can be non-fixedly wound around the spool. In this way, when the tether is fully unwound from the spool, the tether may separate from the spool and disengage from the spool. Therefore, when the control system operates the motor to allow the tether to unwind, the control system can further cause the UAV to start flying to a different location (e.g., a return location) such that the flight of the UAV unwinds the tether and separates the tether from the spool, thereby releasing the tether from the UAV, as shown in block 3410. In this way, when the payload coupling device cannot separate from the payload, both the payload and the tether can remain at the delivery location, allowing the UAV to leave safely.
[0413] B. Hook Detection
[0414] A UAV that performs tethered pick-up and delivery of a payload according to the processes disclosed herein can find itself operating in a variety of different types of environments, with a variety of different problems to solve. One problem may involve unwanted or unexpected forces applied to the tether. For example, a person may yank on the tether too hard, or the tether may get hooked on a moving or stationary object, creating a downward force on the tether. Other examples are possible. In these cases, if the downward force is large enough, the UAV can be pulled out of its flight state, potentially damaging the UAV, the payload, or nearby people or property. Therefore, the control system can detect when certain forces are applied to the tether during the conveyance of the payload and can respond by allowing the tether to unwind from its spool to take remedial action.
[0415] Figure 35 It is a flowchart of method 3500 for detecting and resolving undesired downward forces on a tether when lowering a payload to the ground. Method 3500 can be performed by a UAV such as those described elsewhere herein. For example, method 3500 can be performed by a control system of a UAV having a winch system. Additionally, the winch system can include a tether disposed on a spool, a motor that can operate in a first mode and a second mode to respectively resist and assist in the deployment of the tether due to gravity (e.g., by driving the spool forward or in reverse), a payload coupling device that mechanically couples the tether to the payload, and a payload latch that can switch between a closed position that prevents the payload from being lowered from the UAV and an open position that allows the payload to be lowered from the UAV.
[0416] As shown in block 3502, method 3500 involves a control system of a UAV operating a motor to perform a tethered delivery of a payload (e.g., by performing method 1800). During the delivery of the payload to a target location, the control system can detect an undesired downward force on the tether. As described above, the presence of additional weight on the tether (or in this case, a sufficient downward force) can cause an increase in the current supplied to the motor in order to maintain a desired rotational speed of the motor. Thus, the control system can detect an undesired downward force on the tether based on the motor current. Additionally, to avoid false alarms, the control system can also consider how long the increase in motor current lasts.
[0417] Additionally, when an undesired downward force is detected, the control system can consider the deployed length of the tether. For example, to limit the detection of downward forces to a source at or near the ground plane (e.g., detecting a person yanking on the tether), the control system can also determine how far the tether has been deployed from the spool in order to determine whether any part of the tether is at or near the ground plane. Other examples are possible.
[0418] Thus, in practice, during the process of delivering the payload to the target location and while the UAV is in flight, the control system can determine the deployed length of the tether based on encoder data representing the rotation of the tether spool, and the control system can determine the motor current based on the current sensor of the motor or the power system of the UAV. Additionally, the control system can determine that (a) the deployed length of the tether is greater than a threshold length and (b) the motor current of the motor is greater than a threshold current, for at least a predetermined timeout period, as shown in block 3504. In response to making such a determination, the control system can operate the motor to allow the tether to deploy as the UAV ascends (e.g., as described above with respect to block 3408 of method 3400), as shown in block 3506. And further in response to making the determination, the control system can cause the UAV to initiate flight to a different location (e.g., a return location) such that the flight of the UAV deploys the tether and separates the tether from the spool, thereby releasing the tether from the UAV, as shown in block 3508. In this way, when an undesired downward force is applied to the tether, the tether can deploy and separate from the UAV, allowing the UAV to safely depart.
[0419] In other examples, instead of detecting a snag and operating the motor responsively to deploy and release the tether, the snag can be addressed by applying a current limit to the motor when picking up the payload. Limiting the motor current to a maximum value limits the amount of force that the motor can apply to the tether, which can prevent the UAV from colliding when the tether is snagged. For example, if the current limit is low enough such that the maximum upward force applied by the motor to the tether is less than the downward force on the tether, the current limit on the motor can allow the tether to fully deploy and disengage from its spool, and if the tether is snagged, the UAV will fly away.
[0420] In addition to experiencing undesired forces during the delivery of the payload, the tether may also experience undesired forces during the pickup of the payload. For example, when winching the payload from the ground to the UAV, the payload and / or the tether may snag on various objects, such as trees, buildings, or various other nearby objects. As another example, an unexpected heavy load may be attached to the tether, resulting in an excessive downward force on the tether that prevents the UAV from lifting the payload. Thus, the control system can detect when certain forces are applied to the tether during the pickup of the payload and take remedial action accordingly.
[0421] Figure 36FIG. 3600 is a flowchart of a method for detecting and resolving an undesired downward force on a tether when winching a payload toward a UAV. Method 3600 may be performed by a UAV such as those described elsewhere herein. For example, method 3600 may be performed by a control system of a UAV having a winch system. Additionally, the winch system may include a tether disposed on a spool, a motor that may operate in a first mode and a second mode to respectively resist and assist in deploying the tether due to gravity (e.g., by driving the spool forward or in reverse), a payload coupling device that mechanically couples the tether to the payload, and a payload latch that may switch between a closed position that prevents the payload from being lowered from the UAV and an open position that allows the payload to be lowered from the UAV.
[0422] As shown in block 3602, method 3600 involves a control system of a UAV operating a motor to perform a tethered delivery of a payload (e.g., by performing method 1700). During the process of picking up the payload to be delivered, and when the UAV is above or near the pick-up location, the control system may determine that the payload coupling device is mechanically coupled to the payload (e.g., based on motor current as described above with respect to method 1700), and may responsively operate the motor to retract the tether and lift the payload toward the UAV, as shown in block 3604.
[0423] When retracting the tether, the control system may detect an error condition when the tether and / or payload becomes snagged. To detect a snag, the control system may monitor the motor current. As described above, adding a downward force to the tether may cause an increase in the motor current to counteract the downward force and maintain the motor speed set by the speed controller. Thus, when the tether and / or payload becomes snagged, the motor current may increase as the motor attempts to maintain the rotational speed set by the speed controller. However, as described above with respect to method 1700, an increase in the motor current may indicate a payload has reached the UAV after winching is complete. Thus, the control system may also monitor and consider the deployed length of the tether when detecting a snag. For example, if the deployed length of the tether indicates the payload has not reached the UAV, the control system may detect a snag. On the other hand, if the deployed length of the tether indicates the payload has reached the UAV, the control system may not detect a snag. Thus, when retracting the tether to which the payload is coupled, the control system may detect an error condition when (a) the deployed length of the tether is greater than a threshold length and (b) the motor current of the motor is greater than a threshold current, as shown in block 3606.
[0424] In any case, after detecting an error condition, the control system can attempt to correct the error condition by operating the motor to deploy the tether (e.g., a predetermined length), and then can resume retracting the tether, as shown in block 3608. Deploying the tether can increase the slack in the tether, potentially allowing the weight of the payload to loosen the detected snag. In some examples, the control system can reposition the UAV before resuming retracting the tether in order to increase the chance of loosening the snag and / or reduce the chance of encountering the same snag.
[0425] If, after resuming tether retraction, the control system detects that the error condition still exists (e.g., as shown in block 3606), the control system can repeat the attempt to correct the error condition by repeating block 3608, and the control system can monitor the number of repeated correction attempts. Once the control system determines that a predetermined number of attempts to correct the error condition have been made without successfully correcting the error condition, the control system can responsively end the process of picking up the payload and initiate a payload delivery process to return the payload to the ground or near it at the pick-up location, as shown in block 3610. More specifically, the control system can operate the motor to lower the payload to the ground as if it were performing a payload delivery according to method 1800.
[0426] C. Failure to Pick Up Payload
[0427] Sometimes, when the UAV attempts to pick up a payload for tethered delivery (e.g., by performing method 1700), the UAV may retract the tether before the payload has been attached to the tether. For example, when performing method 1700, the control system of the UAV may erroneously determine that the payload is attached to the tether at blocks 1708 and 1710 (e.g., due to someone or something pulling on the tether during a predetermined attachment verification period) and responsively operate the motor to retract the tether. Accordingly, the control system can be configured to determine during tether retraction that the payload is not actually attached to the tether.
[0428] Figure 37 is a flowchart of method 3700 for detecting a failure of a UAV to pick up a payload. Method 3700 can be performed by a UAV such as those described elsewhere herein. For example, method 3700 can be performed by the control system of a UAV having a winch system. Additionally, the winch system can include a tether disposed on a spool, a motor that can operate in a first mode and a second mode to respectively resist and assist the deployment of the tether due to gravity (e.g., by driving the spool forward or in reverse), a payload coupling device that mechanically couples the tether to the payload, and a payload latch that can switch between a closed position that prevents the payload from being lowered from the UAV and an open position that allows the payload to be lowered from the UAV.
[0429] As shown in block 3702, method 3700 involves operating a control system of a UAV with an electric motor to perform a tethered delivery of a payload (e.g., by performing method 1700). During the process of picking up the payload to be delivered, and when the UAV is above or near the pick-up location, the control system can operate the electric motor to deploy the tether and lower the payload coupling device to a desired payload attachment height, as shown in block 3704. As described above, the payload attachment height can be a height at which a human or possibly a robotic device can grasp the payload coupling device to attach the coupling device to the payload. For example, the payload attachment height can be a height less than two meters above the ground plane.
[0430] After lowering the tether, the control system can wait for a predetermined payload attachment period, as shown in block 3706. This attachment period allows a human or possibly a robotic device time to attach the payload to the payload coupling device.
[0431] When the payload attachment period ends, the control system can perform an attachment verification process, as further shown in block 3706. In particular, the attachment verification process can involve the control system operating the electric motor to resist the deployment of the tether for a predetermined attachment verification period (e.g., by pulling the tether upward to hold the tether in place or retracting the tether at a certain rate), as shown in block 3706a. Due to the increased weight of the payload, when the payload is attached, the motor current required to hold the tether in place or retract the tether at a certain rate will be greater. Thus, the attachment verification process can also involve the control system determining whether the payload coupling device is mechanically coupled to the payload at least in part based on the motor current during the predetermined attachment verification period, as shown in block 3706b. For example, as described above, the control system can determine the motor current based on data from a current sensor of the electric motor or the power system of the UAV. If, during the attachment verification process, the motor current exceeds a threshold current value, the control system can determine that the payload is coupled to the payload coupling device. On the other hand, if the motor current is below the threshold current value, the control system can determine that the payload coupling device is not coupled to the payload.
[0432] In addition, when the control system determines that the payload attachment device is not mechanically attached to the payload, the control system may cause the UAV to repeat the process of lowering and attaching verification of the payload attachment device in order to retry picking up the payload, and in some embodiments, these processes may be repeated only up to a predetermined number of times, as shown in block 3706. At this time, instead of attempting to pick up the payload again, the control system may cause the UAV to abandon the pick-up and leave. In fact, for example, the control system may determine that the attachment verification process has been repeated a predetermined number of times without successfully attaching the payload attachment device to the payload, and in response, initiate a process to cancel the pick-up of the payload and initiate the flight of the UAV to the next different location, as shown in block 3708. The different location may be another pick-up location, or it may be some other location, such as a UAV base for docking and / or storing the UAV. Other examples are also possible.
[0433] As described above, there may be a situation where the control system erroneously determines that the payload is attached during the payload verification period, and the control system may respond by causing the motor to enter a winching state to retract the tether towards the UAV. Therefore, in order to reduce such erroneous determination, the duration of the above-mentioned predetermined attachment verification period may be increased. Additionally or alternatively, the control system may also be configured to perform the attachment verification process and the tether lowering process when operating in the winching state, as shown in block 3706.
[0434] D. Payload Latch Failure
[0435] As described above with respect to method 1800, when the UAV successfully picks up the payload and pulls the payload or the payload attachment device into the socket of the UAV, the control system may close the payload latch to fix the payload to the UAV. However, there may be a situation where the control system fails to close the latch (e.g., due to an obstruction or some other problem) or the control system closes the latch but the closed latch fails to fix the payload to the UAV. Therefore, the control system may be configured to determine whether the payload latch has successfully fixed the payload to the UAV.
[0436] In some embodiments, the control system may operate the motor to pull upward on the tether before attempting to close the payload latch. If the payload and / or payload coupling device has reached the UAV socket, the payload coupling device presses against the UAV such that the motor can no longer retract the tether further. At this time, closing the payload latch may successfully secure the payload and / or payload coupling device to the UAV. On the other hand, if the payload and / or payload coupling device has not reached the UAV socket, the motor may still retract the tether, and closing the payload latch at this time will not successfully secure the payload. Thus, when closing the payload latch and / or for a period of time after closing the payload latch, the control system may be configured to monitor the motor speed to determine whether the payload latch has been successfully closed and the payload secured to the UAV. For example, in response to detecting that the motor speed is higher than a threshold speed, the control system may determine that the payload latch has failed to close successfully and / or secure the payload to the UAV.
[0437] In other embodiments, after attempting to close the payload latch, the control system may detect a payload latch failure by operating the motor to unwind the tether a predetermined length. If the payload latch has been successfully closed to engage the payload or payload coupling device, then the payload or payload coupling device may be disposed within the UAV socket such that all or a portion of the weight of the payload lies on the payload latch rather than the tether, and the motor current may be below a threshold current (e.g., approximately zero). On the other hand, if the payload latch has failed to close, the weight of the payload may be supported by the tether, and the motor current required to support the weight of the payload may be higher than the threshold current. Thus, the control system may determine whether the payload latch has been successfully closed based on the motor current of the UAV.
[0438] In any case, in response to detecting that the payload latch has failed to close, the control system may operate the motor to winch the payload back to the UAV and re-attempt to close the latch. This process may be repeated up to a predetermined number of times or until the payload latch is successfully closed. After unsuccessfully repeating the process the predetermined number of times, the control system may responsively operate the motor to lower the payload back to the ground and separate the payload from the tether (e.g., by performing method 1800).
[0439] The following table provides a brief representation of the various methods for detecting and resolving errors as described above:
[0440]
[0441]
[0442] XIII. Example State Diagram of the UAV
[0443] Figures 38A-38C FIG. 3800 shows an example state diagram of a UAV that performs one or more of the various processes described herein. As shown, the UAV may occasionally operate in an IDLE state 3802. In the IDLE state, the payload latch may be in the closed position, thereby preventing the tether from deploying. Additionally, to keep the motor stationary, the speed controller may set the desired operating speed of the motor corresponding to a tether descent rate of 0 m / s, and the control system may ignore the change in the accumulated error over time when adjusting the motor current to match the desired operating speed. The motor current may be limited to a very high value or may not be limited at all because motor rotation is not desired during this state. In some examples, the UAV may enter the IDLE state 3802 when transporting the payload from a source location to a target location or when navigating to the source location for pickup. Additionally, in response to receiving a stop command, the UAV may enter the IDLE state 3802 from any state. Other examples are possible.
[0444] Once the UAV reaches the source location for picking up the payload, the control system may receive a command to pick up the payload and may accordingly enter the payload pickup mode (e.g., by executing method 1700). As shown in state diagram 3800, the payload pickup mode may include a LOWERING HOOK state 3804, during which the control system operates the motor to deploy the tether from the spool and lower the payload coupling device to the ground. Although state 3804 refers to the payload coupling device as a hook, the payload coupling device may take various forms, as described above. The payload coupling device may be lowered to a predetermined payload attachment height based on the height of the UAV. Once the payload coupling device reaches the payload attachment height (e.g., when the control system determines that the length of the deployed tether is at least a threshold length), the control system may cause the UAV to enter a WAITING FOR PAYLOAD state 3806 for a time delay, during which the control system operates the motor to keep the payload coupling device at a substantially constant height, thereby allowing the payload to attach to the payload coupling device. Additionally, if the control system fails to determine that the payload coupling device has been lowered to the predetermined payload attachment height within a set period of time (e.g., a timeout period), the control system may accordingly proceed to the WAITING FOR PAYLOAD state 3806.
[0445] From the Waiting for Payload state 3806, once a time delay has elapsed, the control system enters the Verify Payload state 3808. During this state, the control system determines whether the payload is attached to the payload attachment device based on the motor current supplied when the motor attempts to hold the payload attachment device at a constant height or begins to retract the tether towards the UAV. If the motor current is below a threshold current during the Verify Payload state 3808, the control system returns to the Lowering Hook state 3804 to attempt to attach the payload again. As described above with respect to method 3700, this repetition can be repeated multiple times until a limit is reached. Once the limit is reached, the control system can cause the UAV to retract the tether, ascend, and possibly return to the Idle state 3802 from which the UAV can navigate to some other location.
[0446] On the other hand, if during the Verify Payload state 3808, the control system determines that the payload has been attached to the payload attachment device (e.g., by determining that the motor current is at least the threshold current after the time delay), the control system can enter the Winching Payload state 3810. In this state, the control system can operate the motor to retract the tether and pull the payload towards the UAV. As described above with respect to method 3700, the control system can also monitor the motor current in this state to determine whether a false positive was obtained during the Verify Payload state 3808 (e.g., by detecting that the motor current is threshold low). Additionally, as described above with respect to method 3600, the control system can monitor the motor current during the Winching Payload state 3810 in order to detect when the tether is snagged (e.g., by detecting that the motor current is threshold high). In response to detecting a snag, the control system can operate the motor to lower the payload a predetermined length and attempt to winch the payload again. After attempting to remove the snag a threshold number of times, the control system can operate the motor to lower the payload to the ground and abandon the payload pickup. This may involve advancing to the Descending state 3822, which will be discussed in more detail below.
[0447] When operating in the WINCHING PAYLOAD state 3810, if no hook is detected, or if all detected hooks are resolved, the control system can detect that the payload is within a threshold distance of the UAV (e.g., by measuring the number of revolutions of the tether spool) and responsively enter the ENGAGING PAYLOAD state 3812. During this state, the control system can increase the current supplied to the motor for a predetermined period of time in order to attempt to pull the payload into the socket of the UAV and orient the payload within it. If during this state, the control system detects that the motor current is below a threshold current and / or the tether is deployed at least a threshold length, the control system can responsively determine that the payload is too far from the UAV and can re-enter the WINCHING PAYLOAD state 3830 until the control system again detects that the payload is close enough to the UAV to proceed to the ENGAGING PAYLOAD state 3812.
[0448] On the other hand, if during the ENGAGING PAYLOAD state 3812, the motor current remains threshold high and the deployed length of the tether indicates that the payload has reached the UAV, the control system enters the LATCHING PAYLOAD state 3814. During this state, the control system switches the payload latch to the closed position, thereby preventing the tether and / or the payload from descending from the UAV. As described above, the control system can determine whether the payload latch has been successfully closed by monitoring the motor speed and / or by operating the motor to attempt to lower the payload and monitoring the motor current. If the control system determines that the payload latch has not been successfully closed, the control system can return to the WINCHING PAYLOAD state 3810 and re-attempt to lift and engage the payload. However, if the control system determines that the payload latch has been successfully closed, the control system can enter the WAITING TO DELIVER state 3816.
[0449] The WAITING TO DELIVER state 3816 can be similar to the IDLE state 3802, where the payload is secured to the UAV and the control system operates the motor to keep the payload stationary. If after a time delay, the control system detects that the motor speed is greater than a threshold speed, this can indicate that the payload is not sufficiently secured to the UAV and the control system can responsively return to the WINCHING PAYLOAD state 3810. Otherwise, entering the WAITING TO DELIVER state 3816 indicates the end of the pick-up mode.
[0450] When in the WAITING TO DELIVER state 3816, the control system can receive a command to deliver a payload and can enter a delivery mode in response (e.g., by executing method 1800). The delivery mode can include a PRE-DROP TENSION state 3818. In this state, when the payload latch is closed, the control system can operate the motor to lift the payload (e.g., by setting the desired tether speed to 1 m / s or some other speed in the upward direction, or by setting the motor current to a predetermined value), thereby removing the weight of the payload from the payload latch and making it easier to open the payload latch. When in the PRE-DROP TENSION state 3818, the control system can open the payload latch and advance to a POST-DROP TENSION state 3820 after a time delay. In this state, the control system can operate the motor to hold the tether in a constant position for a predetermined amount of time to allow the weight of the payload to firmly pull the payload onto the payload coupling device, thereby reducing any chance that the payload might come loose and disengage from the payload coupling device. After a predetermined amount of time has elapsed, the control system can enter the DESCENDING state 3822.
[0451] In the PRE-DROP TENSION state 3818 and the POST-DROP TENSION state 3820, if the control system detects that the payload has traveled at least a threshold distance (e.g., by measuring the rotation of the spool), then this can be an indication that an error has occurred (e.g., the payload has prematurely disengaged from the payload coupling device or the tether has snagged), because the spool should remain substantially stationary during these states. As a result of detecting such an error, the control system can return to the IDLE state 3802 and navigate the UAV to a location where it can be serviced.
[0452] In the DESCENDING state 3822, the control system may operate the motor to deploy the tether according to a predetermined descent curve that specifies a constant or varying operating speed of the motor. When it is detected that the tether has been deployed at least a predetermined amount (e.g., the payload is within a threshold distance from the ground based on the altitude of the UAV), the control system may enter the WAITING FOR TOUCHDOWN state 3824. In some examples, the control system may also be configured to advance from the DESCENDING state 3822 to the WAITING FOR TOUCHDOWN state 3824 if a threshold amount of time has elapsed in the DESCENDING state 3822, without advancing to the WAITING FOR TOUCHDOWN state 3824.
[0453] In the WAITING FOR TOUCHDOWN state 3824, the control system may monitor the motor current and its operating speed to detect whether the payload has reached the ground. Specifically, upon determining that both the motor current and the motor speed are threshold low, the control system may enter the POSSIBLE TOUCHDOWN state 3826 to verify that the payload has actually reached the ground. The control system may be configured to remain in the POSSIBLE TOUCHDOWN state 3826 for a predetermined amount of time. If during this period, the motor current or the motor speed becomes threshold high, this may indicate that the payload has not reached the ground, and the control system may return to the WAITING FOR TOUCHDOWN state 3824. However, if during the duration of the POSSIBLE TOUCHDOWN state 3826, the motor current and the motor speed remain threshold low, this may indicate that the payload has actually reached the ground, and the control system may accordingly advance to the TOUCHED DOWN state 3828. In some examples, the control system may also be configured to advance from the WAITING FOR TOUCHDOWN state 3824 to the TOUCHED DOWN state 3828 if a threshold amount of time has elapsed in the WAITING FOR TOUCHDOWN state 3824, without advancing to the POSSIBLE TOUCHDOWN state 3826.
[0454] Once in the TOUCHED DOWN state 3828, the control system can operate the motor to cause over-extension of the tether such that the payload attachment device continues to lower while the payload remains stationary on the ground. Continuing to lower the payload attachment device can cause the payload attachment device to separate from the payload. After over-extending the tether for a predetermined amount of time, the control system can enter the VERIFY RELEASE state 3830 in order to determine whether the payload attachment device has indeed separated from the payload.
[0455] In the VERIFY RELEASE state 3830, the control system can operate the motor to pull upward on the tether. Based on the motor current when pulling upward on the tether, the control system can determine whether the payload has been released from the payload attachment device. If the motor current is threshold high, this can indicate that the payload is still attached and the control system can return to the TOUCHED DOWN state 3828. This process can be repeated a predetermined number of times, at which point the control system can enter the FREE SPIN state 3832.
[0456] In the FREE SPIN state 3832, the control system can operate the motor to allow the tether to fully unwind such that the tether disconnects and detaches from the UAV. This can be achieved by limiting the motor current to a low enough value such that the motor cannot counteract the downward force on the tether caused by gravity on the payload. Alternatively, the motor can be turned off completely (e.g., limit the motor current at 0A).
[0457] Returning to the VERIFY RELEASE state 3830, if the motor current remains threshold low over the entire predetermined duration, this can indicate that the payload has indeed separated from the payload attachment device and the control system can respond by advancing to the ASCENDING state 3834.
[0458] In the ASCENDING state 3834, the control system can operate the motor to retract the tether and the payload attachment device upward to the UAV according to a predetermined ascent curve that specifies a constant or varying operating speed of the motor. Once the control system determines that the deployed length of the tether is below a threshold length such that the payload attachment device is close enough to the UAV (e.g., based on the measured number of rotations of the spool), the control system can enter the ASCENDING PAUSE state 3836.
[0459] In the ASCENDING PAUSE state 3836, the control system can operate the motor to stop the retraction of the tether. Once the retraction of the tether stops, the control system can control the movement of the UAV to damp any oscillations of the tether that may have occurred during the ASCENDING state 3834. After damping the tether oscillations, the control system can enter the FINAL ASCENT state 3836.
[0460] In the FINAL ASCENT state 3836, the control system can operate the motor to resume retracting the tether. However, in this state, the tether can be retracted at a slower rate than in the ASCENDING state 3834. This slower rate may introduce weaker oscillations in the tether. Also during the FINAL ASCENT state 3836, the control system can monitor the motor current to determine when the payload attachment device reaches the UAV. In fact, when the payload attachment device reaches the UAV, the device presses against the UAV, the motor speed drops to zero, and the motor current increases in an attempt to increase the motor speed. Thus, the control system can determine that the payload attachment device has reached the UAV based on the motor current exceeding a threshold current. Accordingly, the control system can enter the ENGAGING state 3840.
[0461] In the ENGAGING state 3840, the control system can increase the maximum motor current to allow the motor to pull the payload attachment device into the socket of the UAV and orient itself within it. Once the payload attachment device is secured within the socket, the control system can return to the IDLE state 3802. If during the ENGAGING state 3840, the motor current is below the threshold current, this can indicate that the payload attachment device is not actually near the UAV, and the detected increase in current may be caused by something else (e.g., a temporary snag of the tether). In this case, the control system can revert to the FINAL ASCENT state 3838.
[0462] As shown in the state diagram 3800, once the control system enters the ASCENDING state 3834, the control system can repeatedly advance to the next state when it determines that a threshold amount of time has elapsed without advancing states.
[0463] In some examples, as shown in states 3818 to 3828, a lower maximum current limit can be applied to the UAV motor when retracting the tether, as shown in states 3834 to 3838. This is because the tether is more likely to encounter snagging when retracting. Applying a lower current limit reduces the amount of force the motor can apply to the tether. This can prevent the motor from crashing the UAV by continuing to winch the UAV towards the snag. And as described above, if the current limit is low enough such that the maximum force of the motor is weaker than the downward force on the tether, the current limit on the motor can allow the tether to fully unwind and disengage from its spool, if the UAV might fly away when the tether is snagged. A similar approach can be taken when initially picking up the payload during states 3806 to 3814.
[0464] XIV. Other Aspects
[0465] In some embodiments, the control system of the UAV can be configured to calibrate the motor's rotary encoder and speed controller upon system startup. In fact, when the UAV system is initially powered on, the motor should be stationary. Therefore, the encoder data should also indicate that the motor is stationary. If the encoder data indicates otherwise, an offset can be applied to the encoder data to resolve any inconsistencies.
[0466] The control system can also test the friction of the motor upon UAV system startup. Based on the measured motor friction, an offset can be applied to various motor current settings to account for the measured motor friction. Over time, the friction of a DC motor can change. Therefore, measuring the friction at each startup and adjusting the motor current settings accordingly can achieve consistent operation throughout the life of the motor.
[0467] XV. Conclusion
[0468] The specific arrangements shown in the figures should not be considered limiting. It should be understood that other embodiments may include more or fewer of each element shown in a given figure. Additionally, some of the shown elements may be combined or omitted. Furthermore, exemplary embodiments may include elements not shown in the figures.
[0469] In addition, while various aspects and embodiments have been disclosed herein, other aspects and embodiments will be apparent to those skilled in the art. The various aspects and embodiments disclosed herein are for illustrative purposes and not restrictive, and the true scope and spirit are indicated by the appended claims. Other embodiments may be utilized and other changes may be made without departing from the spirit or scope of the subject matter given herein. It is readily understood that the aspects of the present disclosure, as generally described herein and shown in the figures, can be arranged, substituted, combined, separated, and designed in various different configurations, all of which are contemplated herein.
Claims
1. An aircraft system, comprising: A tether; A motor disposed in the aircraft, the motor being configured to operate in a first mode and a second mode to respectively resist and assist the deployment of the tether; A payload coupling device configured to mechanically couple the tether to the payload; And A control system configured to: (a) Operate the motor such that the tether is deployed to position the payload coupling device of the aircraft at or near a first height corresponding to an expected payload attachment height; (b) When the payload coupling device is at or near the first height, determine that the payload coupling device is mechanically coupled to the payload based at least in part on the motor current during a predetermined attachment verification period; (c) In response to determining that the payload coupling device is mechanically connected to the payload, operate the motor to retract the tether; and (d) While retracting the tether, determine both of the following: (i) the deployed length of the tether is less than a threshold length and (ii) the motor current is greater than a threshold current, and responsively operate the motor to pull the payload all the way to a fixed position at or near the aircraft.
2. The system according to claim 1, further comprising a spool around which the tether can be wound or from which the tether can be deployed.
3. The system according to claim 2, wherein Operating the motor in the first mode drives the spool in a first direction, while operating the motor in the second mode drives the spool in a second direction opposite to the first direction.
4. The system according to claim 1, wherein The control system is further configured to determine that the aircraft is in a pick-up position and, in response, begin executing (a) through (d).
5. The system according to claim 1, wherein The control system is further configured to, after the motor operates to pull the payload to a fixed position at or near the aircraft, operate a payload latch to fix the payload to the aircraft.
6. The system according to claim 1, further comprising an encoder configured to output encoder data that provides a measurement of the rotation of the motor.
7. The system according to claim 6, wherein Operating the motor in the first mode, the second mode, or both includes: Determining the rotational speed of the motor based on the encoder data; and Controlling the motor current based on (i) the determined rotational speed of the motor and (ii) a desired rotational speed.
8. The system according to claim 6, further comprising a spool, wherein, Determining that the deployed length of the tether is less than a threshold length includes: Determining the number of revolutions of the spool based on the encoder data; and Based on the determined number of revolutions of the spool, determining that the deployed length of the tether is less than a threshold length.
9. The system according to claim 1, wherein, The first height is less than two meters above the ground.
10. The system according to claim 1, wherein, Waiting for a predetermined attachment verification period includes operating the motor such that the payload coupling device remains at a substantially constant height during the predetermined attachment verification period.
11. The system according to claim 1, wherein, Determining that the payload coupling device is mechanically connected to the payload includes determining that the motor current is greater than a threshold motor current.
12. The system according to claim 1, wherein, Operating the motor to pull the payload to a fixed position at or near the aircraft includes increasing the motor current for a predetermined period of time to pull the payload into a socket on the lower surface of the aircraft and orient the payload within the socket.
13. The system according to claim 1, wherein, The payload coupling device is further configured to mechanically release the payload while the payload is in contact-fixed between the payload and another surface, allowing the payload coupling device to continue to descend until the payload coupling device separates from the payload.
14. A method, comprising: Deploying a tether a predetermined length by a motor of an aircraft, wherein when the tether is deployed the predetermined length, a payload coupling device connected to the tether is at or near a first height; After the tether is deployed the predetermined length, during a predetermined attachment verification period, determining that the payload has been connected to the payload coupling device based at least in part on motor current; In response to determining that the payload has been connected to the payload coupling device, retracting the tether by the motor; and While retracting the tether, determining (i) that the deployed length of the tether is less than a threshold length; and (ii) that the motor current is greater than a threshold current while retracting the tether.
15. The method of claim 14, further comprising: Based on determining (i) that the deployed length of the tether is less than the threshold length and (ii) that the motor current is greater than the threshold current while retracting the tether, pulling the payload all the way to a receptacle on the lower surface of the aircraft.
16. The method of claim 15, further comprising: After pulling the payload all the way to the receptacle, closing a payload latch to secure the payload in the receptacle.
17. The method according to claim 14, wherein, The predetermined length of the tether corresponds to a desired payload attachment height.
18. The method of claim 14, further comprising: Determining that the aircraft has reached a pick-up position and in response starting to deploy the tether the predetermined length.
19. The method according to claim 14, wherein An encoder is connected to the motor of the aircraft, and the method further comprises: Determining a rotational speed of the motor by the encoder; and Controlling the motor current based on (i) the determined rotational speed of the motor and (ii) a predetermined rotational speed.
20. The method of claim 14, further comprising: During the predetermined attachment verification period, maintaining the payload connection device at or near the first height.
21. The method of claim 14, further comprising: Increasing the motor current for a predetermined period of time to pull the payload into a receptacle on the lower surface of the aircraft and orient the payload within the receptacle.
22. An aircraft system, comprising: A tether connected to the aircraft; A motor disposed on the aircraft, wherein the motor is configured to control deployment and retraction of the tether; A payload coupling device coupled to the tether; and A control system configured to: Deploy the tether to a predetermined length of the tether, wherein the predetermined length of the tether corresponds to a first height such that when the tether is deployed the predetermined length, the payload coupling device is at or near the first height; After the tether is deployed the predetermined length, during a predetermined attachment verification period, determining that the payload has been connected to the payload coupling device based at least in part on motor current; and In response to determining that the payload has been connected to the payload coupling device, retracting the tether by the motor; and While retracting the tether, it is determined that (i) the deployed length of the tether is less than a threshold length; and (ii) the motor current is greater than a threshold current.
23. The aircraft system according to claim 22, wherein, The control system is further configured to pull the payload all the way to a fixed position at or near the aircraft.
24. The aircraft system according to claim 23, further comprising: A payload latch that is configured to be in a closed position when the payload is in the fixed position.
25. The aircraft system according to claim 22, wherein, The control system is further configured to: During a predetermined attachment verification period, hold the payload coupling device at or near a first height.
Citation Information
Patent Citations
Synchronized Motorized Lifting Devices for Lifting Shared Loads
US20150284225A1
Bystander Interaction During Delivery from Aerial Vehicle
US20160236778A1