The present disclosure generally relates to autonomous parking and, more specifically, autonomous parking of vehicles in perpendicular parking spots.
Oftentimes, vehicles include autonomous or semi-autonomous driving systems that enable the vehicles to be driven with reduced driver input. Typically, a vehicle with an autonomous or semi-autonomous driving system includes sensors that collect information of a surrounding environment of the vehicle. In such instances, the autonomous or semi-autonomous driving system performs motive functions (e.g., steering, accelerating, braking, etc.) based on the collected information. Some driving systems utilize information collected from sensors to autonomously or semi-autonomously park (e.g., parallel park) a vehicle in an available parking spot.
The appended claims define this application. The present disclosure summarizes aspects of the embodiments and should not be used to limit the claims. Other implementations are contemplated in accordance with the techniques described herein, as will be apparent to one having ordinary skill in the art upon examination of the following drawings and detailed description, and these implementations are intended to be within the scope of this application.
Example embodiments are shown for autonomous parking of vehicles in perpendicular parking spots. An example disclosed vehicle includes a front corner, a camera, and an autonomous vehicle parker. The autonomous vehicle parker is to detect, via the camera, a perpendicular parking spot and an outer boundary of the perpendicular parking spot, determine a linear parking path located within the perpendicular parking spot and based on the outer boundary, and autonomously turn into the perpendicular parking spot such that the front corner travels along the linear parking path.
An example disclosed method for autonomously parking a vehicle into a perpendicular parking spot includes detecting, via a sensor, a perpendicular parking spot and an outer boundary of the perpendicular parking spot and determining, via a processor, a linear parking path located within the perpendicular parking spot and based on the outer boundary. The example disclosed method also includes autonomously turning into the perpendicular parking spot such that a front corner of a vehicle travels along the linear parking path.
An example disclosed tangible computer readable medium including instructions which, when executed, cause a vehicle to detect, via a camera, a perpendicular parking spot and an outer boundary of the perpendicular parking spot and determine, via a processor, a linear parking path located within the perpendicular parking spot and based on the outer boundary. The instructions which, when executed, also cause the vehicle to autonomously turn into the perpendicular parking spot such that a front corner travels along the linear parking path.
For a better understanding of the invention, reference may be made to embodiments shown in the following drawings. The components in the drawings are not necessarily to scale and related elements may be omitted, or in some instances proportions may have been exaggerated, so as to emphasize and clearly illustrate the novel features described herein. In addition, system components can be variously arranged, as known in the art. Further, in the drawings, like reference numerals designate corresponding parts throughout the several views.
While the invention may be embodied in various forms, there are shown in the drawings, and will hereinafter be described, some exemplary and non-limiting embodiments, with the understanding that the present disclosure is to be considered an exemplification of the invention and is not intended to limit the invention to the specific embodiments illustrated.
Oftentimes, vehicles include autonomous or semi-autonomous driving systems that enable the vehicles to be driven with reduced driver input. Generally, a vehicle with such a driving system includes sensors that collect information of a surrounding environment of the vehicle. In such instances, the driving system performs motive functions (e.g., steering, accelerating, braking, etc.) based on the collected information. For example, the vehicle may include a sensor to detect nearby objects to enable the driving system to avoid such objects.
Some driving systems also utilize the collected information to autonomously or semi-autonomously park a vehicle in an available parking spot. For example, such driving systems are utilized to park a vehicle in a parallel parking spot, a diagonal parking spot, a perpendicular parking spot, etc. In some instances in which an autonomous or semi-autonomous driving system is utilized to park in a perpendicular parking spot, the driving system potentially requires a readjustment maneuver (e.g., readjusting the position of the vehicle by reversing the vehicle and subsequently returning to a forward motion) to be performed and/or an increased passing distance between the vehicle and the perpendicular parking spot to enable the vehicle to be parked in the perpendicular parking spot.
Example methods, apparatus, and computer readable media autonomously turn a vehicle into a perpendicular parking spot such that a front corner of the vehicle travels along a linear parking path within perpendicular parking spot to reduce a passing distance between the vehicle and the perpendicular parking path and/or to reduces a width of the perpendicular parking spot in which the vehicle is able to be parked in a single forward motion.
Example vehicles disclosed herein include an autonomous vehicle parker and a camera and/or a sensor. The autonomous vehicle parker autonomous parks the vehicle in a parking spot. As used herein, “autonomous parking” refers to a form of autonomous driving in which motive actions of a vehicle (e.g., steering, turning, accelerating, decelerating, etc.) are controlled by the vehicle without direct driver input to park the vehicle in a parking spot. As used herein, “autonomous driving” refers to a vehicle-maneuvering system in which motive actions of a vehicle (e.g., steering, accelerating, decelerating, etc.) are controlled by the vehicle without direct driver input. As used herein, “semi-autonomous driving” refers to a vehicle-maneuvering system in which some routine motive actions of a vehicle are controlled by the vehicle without direct driver input. As used herein, “autonomous turning” refers to a sequence of autonomous parking, autonomous driving, and/or semi-autonomous driving in which turning of a vehicle is controlled by the vehicle without direct driver input.
The autonomous vehicle parker of the examples disclosed herein detect, via the camera and/or the sensor, a perpendicular parking spot and an outer boundary of the perpendicular parking spot. As used herein, a “perpendicular parking spot” refers to a parking spot for a vehicle of which an outer boundary is perpendicular to an adjacent designated direction of travel of the vehicle.
Further, the autonomous vehicle parker determines, based on the outer boundary, a linear parking path located within the perpendicular parking spot and autonomously turns the vehicle into the perpendicular parking spot such that a front corner of the vehicle travels along the linear parking path. In some examples, the autonomous vehicle parker determines the linear parking path to be offset and parallel to the outer boundary of the perpendicular parking spot. As used herein, a “linear parking path” refers to a linear path along which a portion of a vehicle (e.g., a front corner) travels as the vehicle enters a parking spot. As used herein, a “front corner” of a vehicle refers to a portion of the vehicle at which a front surface and a side surface of the vehicle converge. For example, a vehicle includes a left, front corner and a right, front corner. In some examples, a front corner of a vehicle includes a curved surface that connects the front surface and the side surface of the vehicle. By autonomously turning the vehicle so that the front corner travels along the linear parking path in a single forward motion, the autonomous vehicle parker reduces a passing distance between the vehicle and the perpendicular parking path and/or reduces a width of the perpendicular parking spot in which the autonomous vehicle parker is able to park the vehicle. As used herein, a “passing distance” refers to a distance between a vehicle and a row of perpendicular parking spots before the vehicle turns into an available one of the perpendicular parking spots.
In some examples, the autonomous vehicle parker identifies a target parking position located within the perpendicular parking spot. In such examples, the autonomous vehicle parker determines the linear parking path based on the outer boundary of the perpendicular parking spot and the target parking position. As used herein, a “target parking position” refers to a position located at which an autonomous vehicle parker intends to park within a parking spot.
Further, when determining the linear parking path, the autonomous vehicle parker identifies a first end and a second end opposite the first end of the linear parking path. In some examples, the autonomous vehicle parker determines the first end of the linear parking path based on the target parking position and a minimum turning radius of the vehicle. For example, the autonomous vehicle parker autonomously turns the vehicle at the minimum turning radius between the first end of the linear parking path and the target parking position. As used herein, a “minimum turning radius” refers to a smallest turning radius that a vehicle is physically capable of making.
Additionally or alternatively, the autonomous vehicle parker determines the second end of the linear parking path based on the outer boundary of the perpendicular parking spot. For example, the autonomous vehicle parker determines an orientation at which the vehicle is to be positioned at the second end of the linear parking path based on the target parking position, the minimum turning radius, and a length of the linear parking path. Further, in some such examples, the autonomous vehicle parker determines whether to park in the perpendicular parking spot based on the vehicle orientation at the second end of the linear parking path, the minimum turning radius of the vehicle, and the passing distance between the vehicle and the perpendicular parking spot.
The autonomous vehicle parker of the examples disclosed herein also determines turning radii of the vehicle that cause the front corner of the vehicle to travel along the linear parking path. For example, the autonomous vehicle parker determines the turning radii based on physical characteristics of the vehicle (e.g., a distance between a front axle and a rear axle, a vehicle width, and/or a distance between the front axle and the front corner). For example, the turning radii vary to enable the front corner to travel along the linear parking path as the autonomous vehicle parker autonomously turns the vehicle into the perpendicular parking spot.
Turning to the figures,
The vehicle 100 may be a standard gasoline powered vehicle, a hybrid vehicle, an electric vehicle, a fuel cell vehicle, and/or any other mobility implement type of vehicle. The vehicle 100 includes parts related to mobility, such as a powertrain with an engine, a transmission, a suspension, a driveshaft, and/or wheels, etc. The vehicle 100 may be semi-autonomous (e.g., some routine motive functions controlled by the vehicle 100) or autonomous (e.g., motive functions are controlled by the vehicle 100 without direct driver input).
In the illustrated example, the vehicle 100 is spaced apart from the perpendicular parking spots 102, 104 by a passing distance 108. Further, as illustrated in
As illustrated in
The vehicle 100 also includes an autonomous vehicle parker 130 that autonomously parks the vehicle in unoccupied parking spots such as the perpendicular parking spot 102. For example, the autonomous vehicle parker 130 can be implemented in a full-active park-assist system in which braking, accelerating, and steering are autonomously operated and/or in a semi-active park-assist system in which steering is autonomously operated and accelerating and braking are user operated. The autonomous vehicle parker 130 autonomously parks the vehicle 100 in the perpendicular parking spot 102 in a single forward motion that reduces a passing distance (e.g., the passing distance 108) from which the vehicle 100 is able to park in the perpendicular parking spot 102 and/or reduces a width of a perpendicular parking spot in which the vehicle 100 is able to park.
Prior to turning along the linear parking path 202, the autonomous vehicle parker 130 detects the perpendicular parking spot 102 and determines that the perpendicular parking spot 102 is unoccupied based on the information collected via the camera 122 and/or the sensor 124 of the vehicle 100. Additionally, the autonomous vehicle parker 130 detects an outer boundary 206 of the perpendicular parking spot 102 and identifies the target parking position 204 within the perpendicular parking spot 102 based on the information collected via the camera 122 and/or the sensor 124. For example, the vehicle 100 is positioned completely within the perpendicular parking spot 102 when the vehicle 100 is at the target parking position 204.
Further, based on the target parking position 204 and the outer boundary 206 of the perpendicular parking spot 102, the autonomous vehicle parker 130 determines the linear parking path 202 along which the front corner 208 of the vehicle 100 is to travel. In the illustrated example, the autonomous vehicle parker 130 determines the linear parking path 202 to be offset from and parallel to the outer boundary 206 such that the linear parking path 202 is located within the perpendicular parking spot 102. For example, the linear parking path 202 is spaced apart from the outer boundary 206 by a buffer distance 210 to deter the vehicle 100 from encroaching the other perpendicular parking spot 104 that is adjacent to the outer boundary 206.
When determining the linear parking path 202, the autonomous vehicle parker 130 determines a length 212, a first end 214, and a second end 216 opposite the first end 214 of the linear parking path 202. In some examples, the autonomous vehicle parker 130 is to autonomously turn the vehicle 100 at its minimum turning radius as the vehicle 100 travels from the first end 214 of the linear parking path 202 to the target parking position 204. In such examples, the autonomous vehicle parker 130 determines a location of the first end 214 of the linear parking path 202 based on the target parking position 204 and the minimum turning radius of the vehicle 100.
Additionally, the autonomous vehicle parker 130 determines a location of the second end 216 of the linear parking path 202 that enables the front corner 208 of the vehicle 100 to travel along the linear parking path 202 as the vehicle 100 approaches the target parking position 204. In such examples, the autonomous vehicle parker 130 determines the location of the second end 216 based on the outer boundary 206 (e.g., a length of the outer boundary 206) of the perpendicular parking spot 102, the target parking position 204, and/or the minimum turning radius of the vehicle 100. Based on the location of the first end 214 and the location of the second end, the autonomous vehicle parker 130 determines the length 212 of the linear parking path 202.
Further, the autonomous vehicle parker 130 determine orientations at which the vehicle 100 is to be positioned at respective locations along the linear parking path 202 that enable the front corner 208 of the vehicle 100 to travel along the linear parking path 202 as the vehicle 100 approaches the target parking position 204. For example, the autonomous vehicle parker 130 determines a first orientation for a first intermediate position 218 of the vehicle 100 when the front corner 208 is at the first end 214, a second orientation for a second intermediate position 220 of the vehicle 100 when the front corner 208 is at the second end 216, and orientations for other intermediate positions of the vehicle 100 between the first intermediate position 218 and the second intermediate position 220.
In some examples, the autonomous vehicle parker 130 determines the orientations at which the vehicle 100 is to be positioned along the linear parking path 202 based on the target parking position 204, the minimum turning radius of the vehicle 100, and/or the length 212 of the linear parking path 202. For example, the autonomous vehicle parker 130 determines the first orientation at the first intermediate position 218 based on the target parking position 204 and the minimum turning radius at which the vehicle 100 turns between the target parking position 204 and the first intermediate position 218. Subsequently, the autonomous vehicle parker 130 determines an orientation of an adjacent intermediate position along the linear parking path 202 based on the first orientation at the first intermediate position 218, the minimum turning radius, and a distance between the first intermediate position 218 and the adjacent intermediate position. In a similar manner, the autonomous vehicle parker 130 determines an orientation for each position along the linear parking path 202 to the second intermediate position 220. In other examples, the autonomous vehicle parker 130 queries a lookup table for the orientations at which the vehicle 100 is to be positioned along the linear parking path 202. In such examples, the autonomous vehicle parker 130 queries the lookup table based on the target parking position 204, the minimum turning radius of the vehicle 100, and/or the length 212 of the linear parking path 202 determined by the autonomous vehicle parker 130.
Based on the orientations at which the vehicle 100 is to be positioned along the linear parking path 202, the autonomous vehicle parker 130 determines turning radii of the vehicle 100 that enable the front corner 208 of the vehicle 100 to travel along the linear parking path 202. For example, the autonomous vehicle parker 130 determines the turning radii of the vehicle 100 that enable the vehicle 100 to transition from one orientation at one position along the linear parking path 202 to another orientation at another position along the linear parking path 202. The autonomous vehicle parker 130 may determine the turning radius associated with a particular position along the linear parking path 202 based on physical characteristics of the vehicle 100 such as the distance 114 between the front axle 110 and the rear axle 112, the width 120 of the vehicle 100, and/or the distance 118 between the front axle 110 and the front side 116 (e.g., the front corner 208). For example, the turning radius of the vehicle 100 varies to enable the front corner 208 to travel along the linear parking path 202 as the autonomous vehicle parker 130 autonomously turns the vehicle 100 into the perpendicular parking spot 102.
Further, the autonomous vehicle parker 130 also determines whether the autonomous vehicle parker 130 is able to park the vehicle 100 at the target parking position 204 within the perpendicular parking spot 102 in a single forward motion. For example, the autonomous vehicle parker 130 determines whether the passing distance 108 of the vehicle 100 enables the vehicle 100 to reach the linear parking path 202 at an orientation relative to the linear parking path 202 that enables the front corner 208 to travel along the linear parking path 202 to the target parking position 204. In such examples, the autonomous vehicle parker 130 determines whether the vehicle 100 is able to park in the perpendicular parking spot 102 based on the passing distance 108 the minimum turning radius of the vehicle 100, and/or the orientation at which the vehicle 100 is to be positioned at the second end 216 of the linear parking path 202. In response to determining that the autonomous vehicle parker 130 is able to park the vehicle 100 in a single forward motion, the autonomous vehicle parker 130 autonomously turns the vehicle 100 into the perpendicular parking spot 102 and toward the target parking position so that a front corner 208 (e.g., a front, left corner in
Further, the autonomous vehicle parker 130 utilizes Equation 1 provided below to determine the turning radius of the vehicle 100 at the third intermediate position 302 and the turning radii of the vehicle 100 at other positions (e.g., the first intermediate position 218, the second intermediate position 220) that enables the front corner 208 of the vehicle 100 to travel along the linear parking path 202 as the vehicle enters the perpendicular parking spot 102.
In Equation 1 provided above, x represents a position along the linear parking path 202 (e.g., the first intermediate position 218, the second intermediate position 220, the third intermediate position 302), R represents the turning radius at which the vehicle 100 is to turn at x, WB represents the distance 114 between the front axle 110 and the rear axle 112, Lf represents the distance 118 between the front axle 110 and the front side 116, VW represents the width 120 of the vehicle 100, and ω represents an orientation of the vehicle relative to the linear parking path 202 at x (e.g., the angle 304 at the third intermediate position 302). For example, the autonomous vehicle parker 130 utilizes Equation 1 to determine the turning radius of the vehicle 100 at each position along the linear parking path 202 that enables the vehicle 100 to park within the perpendicular parking spot 102 in single forward motion. In other examples, Equation 1 is utilized to generate data in a lookup table that the autonomous vehicle parker 130 queries to determine the turning radius of the vehicle 100 at each position along the linear parking path 202.
To park in the perpendicular parking spot 402, the vehicle 100 initially is positioned at a passing distance 408. Subsequently, the autonomous vehicle parker 130 autonomously turns the vehicle 100 to travel along a first parking path portion 410. In the illustrated example, the autonomous vehicle parker 130 autonomously turns the vehicle 100 at the minimum turning radius of the vehicle 100 to reduce the passing distance 408 from which the vehicle 100 is able to park in the perpendicular parking spot 402 in a single forward motion. The autonomous vehicle parker 130 then autonomously turns the vehicle 100 to travel along a second parking path portion 412. During the second parking path portion 412, the vehicle 100 the turning radius at which the vehicle 100 turns may vary over time and/or be greater than the minimum turning radius of the vehicle. As the vehicle 100 reaches the perpendicular parking spot 402, the autonomous vehicle parker 130 autonomously turns the vehicle 100 so that the front corner 208 of the vehicle 100 travels along the linear parking path 400. By traveling along the linear parking path 400, the autonomous vehicle parker 130 reduces the passing distance 408 from which the vehicle 100 is able to park in the perpendicular parking spot 402 in a single forward motion. Further, after the vehicle 100 travels along the linear parking path 400, the autonomous vehicle parker 130 autonomously turns the vehicle 100 to travel along a fourth parking path portion 416 to arrive at a target parking position 418. For example, the autonomous vehicle parker 130 autonomously turns the vehicle 100 at the minimum turning radius of the vehicle along the fourth parking path portion 416.
The on-board computing platform 502 includes a microcontroller unit, controller or processor 510, memory 512, and a database 514. In some examples, the processor 510 of the on-board computing platform 502 is structured to include the autonomous vehicle parker 130. Alternatively, in some examples, the autonomous vehicle parker 130 is incorporated into another electronic control unit (ECU) with its own processor 510 and memory 512. The processor 510 may be any suitable processing device or set of processing devices such as, but not limited to, a microprocessor, a microcontroller-based platform, an integrated circuit, one or more field programmable gate arrays (FPGAs), and/or one or more application-specific integrated circuits (ASICs). The memory 512 may be volatile memory (e.g., RAM including non-volatile RAM, magnetic RAM, ferroelectric RAM, etc.), non-volatile memory (e.g., disk memory, FLASH memory, EPROMs, EEPROMs, memristor-based non-volatile solid-state memory, etc.), unalterable memory (e.g., EPROMs), read-only memory, and/or high-capacity storage devices (e.g., hard drives, solid state drives, etc). In some examples, the memory 512 includes multiple kinds of memory, particularly volatile memory and non-volatile memory.
The memory 512 is computer readable media on which one or more sets of instructions, such as the software for operating the methods of the present disclosure, can be embedded. The instructions may embody one or more of the methods or logic as described herein. For example, the instructions reside completely, or at least partially, within any one or more of the memory 512, the computer readable medium, and/or within the processor 510 during execution of the instructions.
The terms “non-transitory computer-readable medium” and “computer-readable medium” include a single medium or multiple media, such as a centralized or distributed database, and/or associated caches and servers that store one or more sets of instructions. Further, the terms “non-transitory computer-readable medium” and “computer-readable medium” include any tangible medium that is capable of storing, encoding or carrying a set of instructions for execution by a processor or that cause a system to perform any one or more of the methods or operations disclosed herein. As used herein, the term “computer readable medium” is expressly defined to include any type of computer readable storage device and/or storage disk and to exclude propagating signals.
In some examples, the autonomous vehicle parker 130 and/or the processor 510 calculates orientations at which the vehicle 100 is to be positioned at respective locations as the vehicle 100 approaches the target parking position 204 (e.g., as the front corner 208 of the vehicle 100 travels along the linear parking path 202). Additionally or alternatively, the autonomous vehicle parker 130 and/or the processor 510 queries a lookup table of the database 514 to identify orientations at which the vehicle 100 is to be positioned at respective locations as the vehicle 100 approaches the target parking position 204. For example, the lookup table of the database 514 may enable the autonomous vehicle parker 130 and/or the processor 510 to identify an orientation of the vehicle 100 at a particular location along the linear parking path 202 based on the length 212 of the linear parking path 202, the target parking position 204 within the perpendicular parking spot 102, and the minimum turning radius of the vehicle 100.
The sensors 504 are arranged in and around the vehicle 100 to monitor properties of the vehicle 100 and/or an environment in which the vehicle 100 is located. One or more of the sensors 504 may be mounted to measure properties around an exterior of the vehicle 100. Additionally or alternatively, one or more of the sensors 504 may be mounted inside a cabin of the vehicle 100 or in a body of the vehicle 100 (e.g., an engine compartment, wheel wells, etc.) to measure properties in an interior of the vehicle 100. For example, the sensors 504 include accelerometers, odometers, tachometers, pitch and yaw sensors, wheel speed sensors, microphones, tire pressure sensors, biometric sensors and/or sensors of any other suitable type.
In the illustrated example, the sensors 504 include a lidar sensor 516, a radar sensor 518, an ultrasonic sensor 520, and the magnetometer 126. For example, the sensor 124 of the vehicle 100 that may be utilized to detect the perpendicular parking spot 102, the outer boundary 206 of the perpendicular parking spot 102, and/or the target parking position 204 within the perpendicular parking spot 102 includes the lidar sensor 516, the radar sensor 518, and/or the ultrasonic sensor 520. The lidar sensor 516 detects and locates an object (e.g., the perpendicular parking spot 102) via lasers, the radar sensor 518 detects and locates the object via radio waves, and the ultrasonic sensor 520 detects and locates the object via ultrasound waves. Further, the magnetometer 126 measures the magnetic orientation of the vehicle 100 as the turns into the perpendicular parking spot 102.
The ECUs 506 monitor and control the subsystems of the vehicle 100. For example, the ECUs 506 are discrete sets of electronics that include their own circuit(s) (e.g., integrated circuits, microprocessors, memory, storage, etc.) and firmware, sensors, actuators, and/or mounting hardware. The ECUs 506 communicate and exchange information via a vehicle data bus (e.g., the vehicle data bus 508). Additionally, the ECUs 506 may communicate properties (e.g., status of the ECUs 506, sensor readings, control state, error and diagnostic codes, etc.) to and/or receive requests from each other. For example, the vehicle 100 may have seventy or more of the ECUs 506 that are positioned in various locations around the vehicle 100 and are communicatively coupled by the vehicle data bus 508. In the illustrated example, the ECUs 506 include a brake control module 522, a speed control unit 524, and a telematic control unit 526. For example, the brake control module 522 autonomously operate brakes of the vehicle 100, and the speed control unit 524 autonomously controls a speed at which the vehicle 100 travels. In some examples, the brake control module 522 and the speed control unit 524 receive signals from the processor 510 of the on-board computing platform 502 to control the brakes and the speed, respectively, of the vehicle 100. Further, the telematic control unit 526 controls tracking of the vehicle 100, for example, utilizing data received by the GPS receiver 128 of the vehicle 100.
The vehicle data bus 508 communicatively couples the camera 122, the GPS receiver 128, the on-board computing platform 502, the sensors 504, and the ECUs 506. In some examples, the vehicle data bus 508 includes one or more data buses. The vehicle data bus 508 may be implemented in accordance with a controller area network (CAN) bus protocol as defined by International Standards Organization (ISO) 11898-1, a Media Oriented Systems Transport (MOST) bus protocol, a CAN flexible data (CAN-FD) bus protocol (ISO 11898-7) and/a K-line bus protocol (ISO 9141 and ISO 14230-1), and/or an Ethernet™bus protocol IEEE 802.3 (2002 onwards), etc.
Initially, at block 602, the autonomous vehicle parker 130 determines a characteristic of the vehicle 100. For example, the autonomous vehicle parker 130 determines the distance 114 between the front axle 110 and the rear axle 112. At block 604, the autonomous vehicle parker 130 identifies whether there is another characteristic of the vehicle 100 to determine. In response to determining that there is another characteristic to determine, the autonomous vehicle parker 130 repeats blocks 602, 604 until no other characteristics are identified. For example, the autonomous vehicle parker 130 repeats blocks 602, 604 to determine the distance 118 between the front axle 110 and the front side 116 (e.g., the front corner 208), the width 120 of the vehicle 100 and/or the minimum turning radius.
At block 606, the autonomous vehicle parker 130 determines, via the camera 122 and/or the sensor 124, whether an available or open perpendicular parking spot is detected. In response to the autonomous vehicle parker 130 not detecting an available perpendicular parking spot, block 606 is repeated. In response to the autonomous vehicle parker 130 detecting an available perpendicular parking spot (e.g., the perpendicular parking spot 102), the method 600 proceeds to block 608 at which the autonomous vehicle parker 130 determines the outer boundary 206 of the perpendicular parking spot 102 via the camera 122 and/or the sensor 124. At block 610, the autonomous vehicle parker 130 identifies, via the camera 122 and/or the sensor 124, the passing distance 108 of the vehicle 100 to the perpendicular parking spot 102. Further, at block 612, the autonomous vehicle parker 130 determines the target parking position 204 within the perpendicular parking spot 102 at which the vehicle 100 is to be parked.
At block 614, the autonomous vehicle parker 130 determines the linear parking path 202 along which the front corner 208 of the vehicle 100 is to travel as the vehicle 100 approaches the target parking position 204 in a single forward motion. For example, the autonomous vehicle parker 130 determines the linear parking path 202 based on the outer boundary 206 of the perpendicular parking position 102 and the target parking position 204 locate within the perpendicular parking position 102. At block 616, the autonomous vehicle parker 130 determines orientations at which the vehicle 100 is to be positioned along the linear parking path 202. For example, autonomous vehicle parker 130 determines an orientation of the vehicle 100 at a corresponding position based on the target parking position 204, the minimum turning radius of the vehicle 100, and/or the length 212 of the linear parking path 202.
At block 618, the autonomous vehicle parker 130 determines turning radii that enable the front corner 208 of the vehicle 100 to travel along the linear parking path 202. That is, the turning radii determined by the autonomous vehicle parker 130 enable the vehicle 100 to transition from one orientation at one position along the linear parking path 202 to another orientation at another position along the linear parking path 202 as the front corner 208 travels along the linear parking path 202. For example the autonomous vehicle parker 130 determines the turning radii based on the target parking position 204, the outer boundary 206 of the perpendicular parking spot 102, and/or characteristics of the vehicle 100. Additionally or alternatively, the autonomous vehicle parker 130 determines the turning radii by querying the lookup table of the database 514 based on the target parking position 204, the outer boundary 206 of the perpendicular parking spot 102, and/or characteristics of the vehicle 100.
At block 620, the autonomous vehicle parker 130 determines whether the vehicle 100 is able to be parked in the perpendicular parking spot 102. For example, the autonomous vehicle parker 130 determines whether the vehicle 100 is able to approach the linear parking path 202 in such a manner that enables the front corner 208 of the vehicle 100 to travel along linear parking path 202. In response to the autonomous vehicle parker 130 determining that the vehicle 100 is unable to be parked in the perpendicular parking spot 102, the method 600 returns to block 606. In response to determining that the vehicle 100 is able to be parked in the perpendicular parking spot 102, the autonomous vehicle parker 130 autonomously turns the vehicle 100 into the perpendicular parking spot 102 such that the front corner 208 travels along the linear parking path 202 and the vehicle 100 reaches the target parking position 204.
In this application, the use of the disjunctive is intended to include the conjunctive. The use of definite or indefinite articles is not intended to indicate cardinality. In particular, a reference to “the” object or “a” and “an” object is intended to denote also one of a possible plurality of such objects. Further, the conjunction “or” may be used to convey features that are simultaneously present instead of mutually exclusive alternatives. In other words, the conjunction “or” should be understood to include “and/or”. The terms “includes,” “including,” and “include” are inclusive and have the same scope as “comprises,” “comprising,” and “comprise” respectively.
The above-described embodiments, and particularly any “preferred” embodiments, are possible examples of implementations and merely set forth for a clear understanding of the principles of the invention. Many variations and modifications may be made to the above-described embodiment(s) without substantially departing from the spirit and principles of the techniques described herein. All modifications are intended to be included herein within the scope of this disclosure and protected by the following claims.
Number | Name | Date | Kind |
---|---|---|---|
6356828 | Shimizu | Mar 2002 | B1 |
6476730 | Kakinami | Nov 2002 | B2 |
6657555 | Shimizu | Dec 2003 | B2 |
6683539 | Trajkovic | Jan 2004 | B2 |
6724322 | Tang | Apr 2004 | B2 |
6744364 | Wathen | Jun 2004 | B2 |
6768420 | McCarthy | Jul 2004 | B2 |
6801855 | Walters | Oct 2004 | B1 |
6850148 | Masudaya | Feb 2005 | B2 |
6927685 | Wathen | Aug 2005 | B2 |
6850844 | Walters | Oct 2005 | B1 |
7042332 | Takamura | May 2006 | B2 |
7123167 | Staniszewski | Oct 2006 | B2 |
7663508 | Teshima | Feb 2010 | B2 |
7737866 | Wu | Jun 2010 | B2 |
7813844 | Gensler | Oct 2010 | B2 |
7825828 | Watanabe | Nov 2010 | B2 |
7834778 | Browne | Nov 2010 | B2 |
7847709 | McCall | Dec 2010 | B2 |
7850078 | Christenson | Dec 2010 | B2 |
8035503 | Partin | Oct 2011 | B2 |
8054169 | Bettecken | Nov 2011 | B2 |
8126450 | Howarter | Feb 2012 | B2 |
8164628 | Stein | Apr 2012 | B2 |
8180524 | Eguchi | May 2012 | B2 |
8180547 | Prasad | May 2012 | B2 |
8224313 | Howarter | Jul 2012 | B2 |
8229645 | Lee | Jul 2012 | B2 |
8242884 | Holcomb | Aug 2012 | B2 |
8335598 | Dickerhoof | Dec 2012 | B2 |
8401235 | Lee | Mar 2013 | B2 |
8493236 | Boehme | Jul 2013 | B2 |
8538408 | Howarter | Sep 2013 | B2 |
8542130 | Lavoie | Sep 2013 | B2 |
8587681 | Guidash | Nov 2013 | B2 |
8594616 | Gusikhin | Nov 2013 | B2 |
8599043 | Kadowaki | Dec 2013 | B2 |
8645015 | Oetiker | Feb 2014 | B2 |
8655551 | Danz | Feb 2014 | B2 |
8692773 | You | Apr 2014 | B2 |
8706350 | Talty | Apr 2014 | B2 |
8725315 | Talty | May 2014 | B2 |
8742947 | Nakazono | Jun 2014 | B2 |
8744684 | Hong | Jun 2014 | B2 |
8780257 | Gidon | Jul 2014 | B2 |
8825262 | Lee | Sep 2014 | B2 |
8933778 | Birkel | Jan 2015 | B2 |
8957786 | Stempnik | Feb 2015 | B2 |
8994548 | Gaboury | Mar 2015 | B2 |
8995914 | Nishidai | Mar 2015 | B2 |
9008860 | Waldock | Apr 2015 | B2 |
9014920 | Torres | Apr 2015 | B1 |
9078200 | Wuergler | Jul 2015 | B2 |
9086879 | Gautama | Jul 2015 | B2 |
9141503 | Chen | Sep 2015 | B1 |
9147065 | Lauer | Sep 2015 | B2 |
9154920 | O'Brien | Oct 2015 | B2 |
9168955 | Noh | Oct 2015 | B2 |
9193387 | Auer | Nov 2015 | B2 |
9225531 | Hachey | Dec 2015 | B2 |
9233710 | Lavoie | Jan 2016 | B2 |
9273966 | Bartels | Mar 2016 | B2 |
9283960 | Lavoie | Mar 2016 | B1 |
9286803 | Tippelhofer | Mar 2016 | B2 |
9302675 | Schilling | Apr 2016 | B2 |
9318022 | Barth | Apr 2016 | B2 |
9379567 | Kracker | Jun 2016 | B2 |
9381859 | Nagata | Jul 2016 | B2 |
9429657 | Sidhu | Aug 2016 | B2 |
9429947 | Wengreen | Aug 2016 | B1 |
9469247 | Juneja | Oct 2016 | B2 |
9493187 | Pilutti | Nov 2016 | B2 |
9506774 | Shutko | Nov 2016 | B2 |
9522675 | You | Dec 2016 | B1 |
9529519 | Blumenberg | Dec 2016 | B2 |
9557741 | Elie | Jan 2017 | B1 |
9563990 | Khan | Feb 2017 | B2 |
9595145 | Avery | Mar 2017 | B2 |
9598051 | Okada | Mar 2017 | B2 |
9606241 | Varoglu | Mar 2017 | B2 |
9616923 | Lavoie | Apr 2017 | B2 |
9637117 | Gusikhin | May 2017 | B1 |
9651655 | Feldman | May 2017 | B2 |
9656690 | Shen | May 2017 | B2 |
9666040 | Flaherty | May 2017 | B2 |
9688306 | McClain | Jun 2017 | B2 |
9701280 | Schussmann | Jul 2017 | B2 |
9712977 | Tu | Jul 2017 | B2 |
9715816 | Adler | Jul 2017 | B1 |
9725069 | Krishnan | Aug 2017 | B2 |
9731714 | Kiriya | Aug 2017 | B2 |
9731764 | Baek | Aug 2017 | B2 |
9754173 | Kim | Sep 2017 | B2 |
9809218 | Elie | Nov 2017 | B2 |
9842444 | Van Wiemeersch | Dec 2017 | B2 |
9845070 | Petel | Dec 2017 | B2 |
9846431 | Petel | Dec 2017 | B2 |
9914333 | Shank | Mar 2018 | B2 |
9921743 | Bryant | Mar 2018 | B2 |
9946255 | Matters | Apr 2018 | B2 |
9959763 | Miller | May 2018 | B2 |
9975504 | Dalke | May 2018 | B2 |
10131347 | Kim | Nov 2018 | B2 |
20030060972 | Kakinami | Mar 2003 | A1 |
20030098792 | Edwards | May 2003 | A1 |
20050030156 | Alfonso | Feb 2005 | A1 |
20050099275 | Kamdar | May 2005 | A1 |
20060227010 | Berstis | Oct 2006 | A1 |
20060235590 | Bolourchi | Oct 2006 | A1 |
20070230944 | Georgiev | Oct 2007 | A1 |
20080027591 | Lenser | Jan 2008 | A1 |
20080154464 | Sasajima | Jun 2008 | A1 |
20080154613 | Haulick | Jun 2008 | A1 |
20080238643 | Malen | Oct 2008 | A1 |
20080306683 | Ando | Dec 2008 | A1 |
20090096753 | Lim | Apr 2009 | A1 |
20090098907 | Huntzicker | Apr 2009 | A1 |
20090115639 | Proefke | May 2009 | A1 |
20090125181 | Luke | May 2009 | A1 |
20090125311 | Haulick | May 2009 | A1 |
20090128315 | Griesser | May 2009 | A1 |
20090146813 | Nuno | Jun 2009 | A1 |
20090289813 | Kwiecinski | Nov 2009 | A1 |
20090313095 | Hurpin | Dec 2009 | A1 |
20100025942 | Von Rehyer | Feb 2010 | A1 |
20100114471 | Sugiyama | May 2010 | A1 |
20100114488 | Khamharn | May 2010 | A1 |
20100152972 | Attard | Jun 2010 | A1 |
20100156672 | Yoo | Jun 2010 | A1 |
20100259420 | Von Reyher | Oct 2010 | A1 |
20110071725 | Kleve | Mar 2011 | A1 |
20110082613 | Oetiker | Apr 2011 | A1 |
20120007741 | Laffey | Jan 2012 | A1 |
20120072067 | Jecker | Mar 2012 | A1 |
20120083960 | Zhu | Apr 2012 | A1 |
20120173080 | Cluff | Jul 2012 | A1 |
20120303258 | Pampus | Nov 2012 | A1 |
20120323643 | Volz | Dec 2012 | A1 |
20120323700 | Aleksandrovich | Dec 2012 | A1 |
20130021171 | Hsu | Jan 2013 | A1 |
20130024202 | Harris | Jan 2013 | A1 |
20130073119 | Huger | Mar 2013 | A1 |
20130110342 | Wuttke | May 2013 | A1 |
20130113936 | Cohen | May 2013 | A1 |
20130124061 | Khanafer | May 2013 | A1 |
20130145441 | Mujumdar | Jun 2013 | A1 |
20130231824 | Wilson | Sep 2013 | A1 |
20130289825 | Noh | Oct 2013 | A1 |
20130314502 | Urbach | Nov 2013 | A1 |
20130317944 | Huang | Nov 2013 | A1 |
20140096051 | Boblett | Apr 2014 | A1 |
20140121930 | Allexi | May 2014 | A1 |
20140147032 | Yous | May 2014 | A1 |
20140188339 | Moon | Jul 2014 | A1 |
20140222252 | Matters | Aug 2014 | A1 |
20140240502 | Strauss | Aug 2014 | A1 |
20140300504 | Shaffer | Oct 2014 | A1 |
20140303839 | Filev | Oct 2014 | A1 |
20140320318 | Victor | Oct 2014 | A1 |
20140327736 | DeJohn | Nov 2014 | A1 |
20140350804 | Park | Nov 2014 | A1 |
20140350855 | Vishnuvajhala | Nov 2014 | A1 |
20140365108 | You | Dec 2014 | A1 |
20140365126 | Vulcano | Dec 2014 | A1 |
20150022468 | Cha | Jan 2015 | A1 |
20150039173 | Beaurepaire | Feb 2015 | A1 |
20150039224 | Tuukkanen | Feb 2015 | A1 |
20150066545 | Kotecha | Mar 2015 | A1 |
20150077522 | Suzuki | Mar 2015 | A1 |
20150088360 | Bonnet | Mar 2015 | A1 |
20150091741 | Stefik | Apr 2015 | A1 |
20150123818 | Sellschopp | May 2015 | A1 |
20150127208 | Jecker | May 2015 | A1 |
20150149265 | Huntzicker | May 2015 | A1 |
20150151789 | Lee et al. | Jun 2015 | A1 |
20150153178 | Koo | Jun 2015 | A1 |
20150161890 | Huntzicker | Jun 2015 | A1 |
20150163649 | Chen | Jun 2015 | A1 |
20150203111 | Bonnet | Jul 2015 | A1 |
20150219464 | Beaurepaire | Aug 2015 | A1 |
20150220791 | Wu | Aug 2015 | A1 |
20150226146 | Elwart | Aug 2015 | A1 |
20150274016 | Kinoshita | Oct 2015 | A1 |
20150286340 | Send | Oct 2015 | A1 |
20150329110 | Stefan | Nov 2015 | A1 |
20150344028 | Gieseke | Dec 2015 | A1 |
20150346727 | Ramanujam | Dec 2015 | A1 |
20150360720 | Li | Dec 2015 | A1 |
20150371541 | Korman | Dec 2015 | A1 |
20150375741 | Kiriya | Dec 2015 | A1 |
20150375742 | Gebert et al. | Dec 2015 | A1 |
20160012726 | Wang | Jan 2016 | A1 |
20160055749 | Nicoll | Feb 2016 | A1 |
20160062354 | Li | Mar 2016 | A1 |
20160068187 | Hata | Mar 2016 | A1 |
20160075369 | Lavoie | Mar 2016 | A1 |
20160090055 | Breed | Mar 2016 | A1 |
20160107689 | Lee | Apr 2016 | A1 |
20160112846 | Siswick | Apr 2016 | A1 |
20160114726 | Nagata | Apr 2016 | A1 |
20160117926 | Akavaram | Apr 2016 | A1 |
20160127664 | Bruder | May 2016 | A1 |
20160139244 | Holtman | May 2016 | A1 |
20160144857 | Ohshima | May 2016 | A1 |
20160153778 | Singh | Jun 2016 | A1 |
20160170494 | Bonnet | Jun 2016 | A1 |
20160185389 | Ishijima | Jun 2016 | A1 |
20160189435 | Beaurepaire | Jun 2016 | A1 |
20160207528 | Stefan | Jul 2016 | A1 |
20160236680 | Lavoie | Aug 2016 | A1 |
20160257304 | Lavoie | Sep 2016 | A1 |
20160272244 | Imai | Sep 2016 | A1 |
20160282442 | O'Mahony | Sep 2016 | A1 |
20160284217 | Lee | Sep 2016 | A1 |
20160288657 | Tokura | Oct 2016 | A1 |
20160304087 | Noh | Oct 2016 | A1 |
20160304088 | Barth | Oct 2016 | A1 |
20160349362 | Rohr | Oct 2016 | A1 |
20160321445 | Turgeman | Nov 2016 | A1 |
20160321926 | Mayer | Nov 2016 | A1 |
20160334797 | Ross | Nov 2016 | A1 |
20160355125 | Herbert | Dec 2016 | A1 |
20160358474 | Uppal | Dec 2016 | A1 |
20160368489 | Aich | Dec 2016 | A1 |
20160371607 | Rosen | Dec 2016 | A1 |
20160371691 | Kang | Dec 2016 | A1 |
20170001650 | Park | Jan 2017 | A1 |
20170008563 | Popken | Jan 2017 | A1 |
20170026198 | Ochiai | Jan 2017 | A1 |
20170028985 | Kiyokawa | Feb 2017 | A1 |
20170030722 | Kojo | Feb 2017 | A1 |
20170032593 | Patel | Feb 2017 | A1 |
20170072947 | Lavoie | Mar 2017 | A1 |
20170073004 | Shepard | Mar 2017 | A1 |
20170076603 | Bostick | Mar 2017 | A1 |
20170116790 | Kusens | Apr 2017 | A1 |
20170123423 | Sako | May 2017 | A1 |
20170129537 | Kim | May 2017 | A1 |
20170129538 | Stefan | May 2017 | A1 |
20170132482 | Kim | May 2017 | A1 |
20170144654 | Sham | May 2017 | A1 |
20170144656 | Kim | May 2017 | A1 |
20170147995 | Kalimi | May 2017 | A1 |
20170168479 | Dang | Jun 2017 | A1 |
20170192428 | Vogt | Jul 2017 | A1 |
20170200369 | Miller | Jul 2017 | A1 |
20170208438 | Dickow | Jul 2017 | A1 |
20170297385 | Kim | Oct 2017 | A1 |
20170301241 | Urhahne | Oct 2017 | A1 |
20170308075 | Whitaker | Oct 2017 | A1 |
20180024559 | Seo | Jan 2018 | A1 |
20180029591 | Lavoie | Feb 2018 | A1 |
20180039264 | Messner | Feb 2018 | A1 |
20180043884 | Johnson | Feb 2018 | A1 |
20180056939 | van Roermund | Mar 2018 | A1 |
20180194344 | Wang | Jul 2018 | A1 |
20180236957 | Min | Aug 2018 | A1 |
Number | Date | Country |
---|---|---|
106945662 | Jul 1917 | CN |
101929921 | Dec 2010 | CN |
103818204 | May 2014 | CN |
104485013 | Apr 2015 | CN |
104691544 | Jun 2015 | CN |
103049159 | Jul 2015 | CN |
105513412 | Apr 2016 | CN |
105588563 | May 2016 | CN |
105599703 | May 2016 | CN |
105774691 | Jul 2016 | CN |
106027749 | Oct 2016 | CN |
205719000 | Nov 2016 | CN |
106598630 | Apr 2017 | CN |
104290751 | Jan 2018 | CN |
3844340 | Jul 1990 | DE |
19817142 | Oct 1999 | DE |
19821163 | Nov 1999 | DE |
102005006966 | Sep 2005 | DE |
102006058213 | Jul 2008 | DE |
102009051055 | Jul 2010 | DE |
102012008858 | Nov 2012 | DE |
102011122421 | Jun 2013 | DE |
102012200725 | Jul 2013 | DE |
102013004214 | Sep 2013 | DE |
102010034129 | Oct 2013 | DE |
102012215218 | Jun 2014 | DE |
102012222972 | Jun 2014 | DE |
102013213064 | Jan 2015 | DE |
102014009077 | Feb 2015 | DE |
102013016342 | Apr 2015 | DE |
102013019771 | May 2015 | DE |
102013019904 | May 2015 | DE |
102014007915 | Dec 2015 | DE |
102014011802 | Feb 2016 | DE |
102014111570 | Feb 2016 | DE |
102014015655 | Apr 2016 | DE |
102015209976 | Dec 2016 | DE |
102015221224 | May 2017 | DE |
102016011916 | Jun 2017 | DE |
102016125282 | Jul 2017 | DE |
102016211021 | Dec 2017 | DE |
2289768 | Mar 2011 | EP |
2295281 | Mar 2011 | EP |
2653367 | Oct 2013 | EP |
2768718 | Mar 2016 | EP |
2620351 | Jun 2016 | EP |
2135788 | Jun 2017 | EP |
2344481 | Jun 2000 | GB |
2481324 | Jun 2011 | GB |
2491720 | Dec 2012 | GB |
2497836 | Dec 2012 | GB |
2517835 | Mar 2015 | GB |
2000293797 | Oct 2000 | JP |
2004142543 | May 2004 | JP |
2004287884 | Oct 2004 | JP |
2005193742 | Jul 2005 | JP |
2009090850 | Apr 2009 | JP |
2014125196 | Jul 2014 | JP |
2014134082 | Jul 2014 | JP |
5586450 | Sep 2014 | JP |
5918683 | May 2016 | JP |
2016119032 | Jun 2016 | JP |
20090040024 | Apr 2009 | KR |
20100006714 | Jan 2010 | KR |
20130106005 | Sep 2013 | KR |
20160039460 | Apr 2016 | KR |
20160051993 | May 2016 | KR |
WO 2006064544 | Jun 2006 | WO |
WO 2008055567 | May 2008 | WO |
WO 2010006981 | Jan 2010 | WO |
WO 2011141096 | Nov 2011 | WO |
WO 2013056959 | Apr 2013 | WO |
WO 2013123813 | Aug 2013 | WO |
WO 2014103492 | Jul 2014 | WO |
WO 2015068032 | May 2015 | WO |
WO 2015193058 | Dec 2015 | WO |
WO 2016046269 | Mar 2016 | WO |
WO 2016128200 | Aug 2016 | WO |
WO 2016134822 | Sep 2016 | WO |
WO 2017062448 | Apr 2017 | WO |
WO 2017073159 | May 2017 | WO |
WO 2017096307 | Jun 2017 | WO |
WO 2017096728 | Jun 2017 | WO |
WO 2017097942 | Jun 2017 | WO |
WO 2017118510 | Jul 2017 | WO |
WO 2017125514 | Jul 2017 | WO |
Entry |
---|
US 9,772,406 B2, 09/2017, Liu (withdrawn) |
Perpendicular Parking—https://prezi.com/toqmfyxriksl/perpendicular-parking/. |
Automatically Into the Parking Space—https://www.mercedes-benz.com/en/mercedes-benz/next/automation/automatically-into-the-parking-space/; Oct. 27, 2014. |
Search Report dated May 21, 2018 for Great Britain Patent Application No. GB 1800277.4 (5 Pages). |
Tesla Model S Owner's Manual v2018.44. Oct. 29, 2018. |
Search Report dated Oct. 10, 2018 for GB Patent Application No. 1806499.8 (4 pages). |
Alberto Broggi and Elena Cardarelli, Vehicle Detection for Autonomous Parking Using a Soft-Cascade ADA Boost Classifier, Jun. 8, 2014. |
Al-Sherbaz, Ali et al., Hybridisation of GNSS with other wireless/sensors technologies on board smartphones to offer seamless outdoors-indoors positioning for LBS applications, Apr. 2016, 3 pages. |
Bill Howard, Bosch's View of the Future Car: Truly Keyless Entry, Haptic Feedback, Smart Parking, Cybersecurity, Jan. 9, 2017, 8 Pages. |
Core System Requirements Specification (SyRS), Jun. 30, 2011, Research and Innovative Technology Administration. |
Daimler AG, Remote Parking Pilot, Mar. 2016 (3 Pages). |
Jingbin Liu, (Parking: An Intelligent Indoor Location-Based Smartphone Parking Service, Oct. 31, 2012, 15 pages. |
Land Rover develops a smartphone remote control for its SUVs, James Vincent, Jun. 18, 2015. |
Search Report dated Jan. 19, 2018 for GB Patent Application No. 1711988.4 (3 pages). |
Search Report dated Jul. 11, 2017 for GB Patent Application No. Enter 15/583,524, Pages (3). |
Search Report dated Nov. 28, 2017, for GB Patent Application No. GB 1710916.6 (4 Pages). |
Vehicle'S Orientation Measurement Method by Single-Camera Image Using Known-Shaped Planar Object, Nozomu Araki, Takao Sato, Yasuo Konishi and Hiroyuki Ishigaki, 2010. |
Number | Date | Country | |
---|---|---|---|
20180201256 A1 | Jul 2018 | US |