Local navigation system for vehicle navigation

By receiving messages of map and location information, using the processor and memory system, detecting position marks and lane marks, determining vehicle locations and identifying navigation paths, the problem of vehicle navigation in an unreliable environment is solved and the accurate navigation of the vehicle is achieved.

CN109520518BActive Publication Date: 2025-03-11FORD GLOBAL TECH LLC
View PDF 1 Cites 0 Cited by

Patent Information

Application Number
CN201811073331.2
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Priority Date
2017-09-20
Filing Date
2018-09-14
Publication Date
2025-03-11
Estimated Expiration
2038-09-14

AI Technical Summary

Technical Problem

In some environments, sensors and/or other monitoring hardware may not be available when monitoring vehicle location and navigation and are problematic due to limitations of infrastructure such as walls.

Method used

By receiving a first message including a map, a vehicle location and a first location, the system utilizing a processor and memory navigates the vehicle to the first location and the second location based on signals received from a remote computer. The system determines the current position coordinates of the vehicle by detecting position marks and lane marks, and identifies the navigation path.

Benefits of technology

It realizes effective monitoring and navigation of vehicles in unreliable environments, ensuring that vehicles can accurately navigate to designated locations, and solves the problems of sensor unavailability and infrastructure restrictions.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN109520518B_ABST
    Figure CN109520518B_ABST
Patent Text Reader

Abstract

A system includes a processor and a memory. The memory stores instructions executable by the processor to, upon receiving a first message including a map, a vehicle location, and a first location, navigate the vehicle to the first location, and then, after stopping the vehicle at the first location, upon receiving a second message, navigate the vehicle to a second location.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present invention relates to a local navigation system for a vehicle. More particularly, the present invention relates to navigating a vehicle to a first location and a second location based on messages received from a local navigation system. Background Art

[0002] Vehicles may navigate in a variety of environments, such as roadways, parking lots, manufacturing plants, and the like. In certain environments, such as manufacturing plants, it may be desirable to monitor vehicle position and / or vehicle navigation. However, system problems arise when monitoring vehicle position and navigation in certain environments. For example, sensors and / or other monitoring hardware may not be available and / or may be problematic due to limitations imposed by infrastructure, such as walls. BRIEF DESCRIPTION OF THE DRAWINGS

[0003] Figure 1 is a block diagram of an exemplary vehicle local navigation system.

[0004] Figure 2A yes Figure 1 Block diagram of a vehicle in a facility with landmarks.

[0005] Figure 2B is in communication with the first and second local navigation systems Figure 1 Block diagram of the vehicle.

[0006] FIG. 3A to FIG. 3B is a flow chart of an exemplary process for navigating a vehicle to a first location and then to a second location.

[0007] Figure 4 is a flow chart of an exemplary process for controlling a vehicle computer for navigation. Summary of the invention

[0008] The invention disclosed herein relates to a system and method for navigating a vehicle in an area to a first location and a second location based on a signal received from a remote computer when a first message including a map, a vehicle location, and a first location is received, and then, after stopping the vehicle at the first location, navigating the vehicle to the second location when a second message is received.

[0009] The second message may include the second location.

[0010] Maps specify locations based on a two-dimensional Cartesian coordinate system.

[0011] The map may include coordinates of a location marker, the location marker including at least one of a cone, a pillar, a pattern, text, and a symbol.

[0012] Maps may include physical features that mark locations.

[0013] Determining the current position coordinates of the vehicle may include: detecting a position marker based on the received image data; determining the position of the vehicle relative to the position marker; and determining the current position coordinates of the vehicle based on the detected position marker and the determined position of the vehicle relative to the position marker.

[0014] The memory may store other instructions executable by the processor to: receive image data from a vehicle sensor; identify a path to the first location based on the received image data and the first message; and navigate the vehicle to the first location via the identified path.

[0015] The memory may store other instructions executable by the processor to identify a path based on at least one of lane markings and position markings detected in the received image data.

[0016] This article also discloses a method, which includes: upon receiving a first message including a map, a vehicle location, and a first location, navigating the vehicle to a first location; then, after stopping the vehicle at the first location, navigating the vehicle to a second location upon receiving a second message.

[0017] The second message may include the second location.

[0018] Maps specify locations based on a two-dimensional Cartesian coordinate system.

[0019] The map may include coordinates of a location marker, the location marker including at least one of a cone, a pillar, a pattern, text, and a symbol.

[0020] Maps may also include physical features that mark locations.

[0021] The method may also include determining the current position coordinates by: detecting a position marker based on the received image data; determining the position of the vehicle relative to the position marker; and determining the current position coordinates of the vehicle based on the detected position marker and the determined position of the vehicle relative to the position marker.

[0022] The method may also include receiving image data from a vehicle sensor; identifying a path to the first location based on the received image data and the first message; and navigating the vehicle to the first location via the identified path.

[0023] Identifying the path may be based on at least one of lane markings and position markings detected in the received image data.

[0024] A system including a processor and a memory is also disclosed. The memory stores instructions executable by the processor to: upon receiving a first message from a first local navigation system at a first location, navigate a vehicle to a first location; and then, after stopping the vehicle at the first location, upon receiving a second message from a second local navigation system at a second location, navigate the vehicle to a second location.

[0025] The memory may store other instructions executable by the processor to: receive image data from a vehicle sensor; identify a path to the first location based on the received image data and the first message; and navigate the vehicle to the first location via the identified path.

[0026] The memory may store other instructions executable by the processor to identify a path based on lane markings detected in the received image data.

[0027] The memory may store other instructions executable by the processor to deactivate the vehicle powertrain when the first position is reached.

[0028] A computing device programmed to perform any of the above method steps is also disclosed. An aerial drone including the computing device is also disclosed. A vehicle including the computing device is also disclosed.

[0029] Also disclosed is a computer program product comprising a computer readable medium storing instructions executable by a computer processor to perform any of the above method steps. DETAILED DESCRIPTION

[0030] introduction

[0031] A system including a processor and a memory is disclosed. The memory stores instructions that can be executed by the processor to: upon receiving a first message including a map, a vehicle location, and a first location, navigate a vehicle to a first location; and then, after stopping the vehicle at the first location, upon receiving a second message, navigate the vehicle to a second location.

[0032] The second message may include the second location.

[0033] Maps specify locations based on a two-dimensional Cartesian coordinate system.

[0034] The map may include coordinates of a location marker, the location marker including at least one of a cone, a pillar, a pattern, text, and a symbol.

[0035] Maps may include physical features that mark locations.

[0036] Determining the current position coordinates of the vehicle may include: detecting a position marker based on the received image data; determining the position of the vehicle relative to the position marker; and determining the current position coordinates of the vehicle based on the detected position marker and the determined position of the vehicle relative to the position marker.

[0037] The memory may store other instructions executable by the processor to: receive image data from a vehicle sensor; identify a path to the first location based on the received image data and the first message; and navigate the vehicle to the first location via the identified path.

[0038] The memory may store other instructions executable by the processor to identify a path based on at least one of lane markings and position markings detected in the received image data.

[0039] This article also discloses a method, which includes: upon receiving a first message including a map, a vehicle location, and a first location, navigating the vehicle to a first location; then, after stopping the vehicle at the first location, navigating the vehicle to a second location upon receiving a second message.

[0040] The second message may include the second location.

[0041] Maps specify locations based on a two-dimensional Cartesian coordinate system.

[0042] The map may include coordinates of a location marker, the location marker including at least one of a cone, a pillar, a pattern, text, and a symbol.

[0043] Maps may also include physical features that mark locations.

[0044] The method may also include determining the current position coordinates by: detecting a position marker based on the received image data; determining the position of the vehicle relative to the position marker; and determining the current position coordinates of the vehicle based on the detected position marker and the determined position of the vehicle relative to the position marker.

[0045] The method may also include receiving image data from a vehicle sensor; identifying a path to the first location based on the received image data and the first message; and navigating the vehicle to the first location via the identified path.

[0046] Identifying the path may be based on at least one of lane markings and position markings detected in the received image data.

[0047] A system including a processor and a memory is also disclosed. The memory stores instructions executable by the processor to: upon receiving a first message from a first local navigation system at a first location, navigate a vehicle to a first location; and then, after stopping the vehicle at the first location, upon receiving a second message from a second local navigation system at a second location, navigate the vehicle to a second location.

[0048] The memory may store other instructions executable by the processor to: receive image data from a vehicle sensor; identify a path to the first location based on the received image data and the first message; and navigate the vehicle to the first location via the identified path.

[0049] The memory may store other instructions executable by the processor to identify a path based on lane markings detected in the received image data.

[0050] The memory may store other instructions executable by the processor to deactivate the vehicle powertrain when the first position is reached.

[0051] A computing device programmed to perform any of the above method steps is also disclosed. An aerial drone including the computing device is also disclosed. A vehicle including the computing device is also disclosed.

[0052] Also disclosed is a computer program product comprising a computer readable medium storing instructions executable by a computer processor to perform any of the above method steps.

[0053] Exemplary System Elements

[0054] Figure 1 is a block diagram of a host vehicle 100. The host vehicle 100 may be powered in various known ways (e.g., with an electric motor and / or an internal combustion engine). The host vehicle 100 may include a computer 110, one or more actuators 120, one or more sensors 130, a human machine interface (HMI) 140, and a wireless signal transceiver 150, each of which will be discussed in more detail below.

[0055] The computer 110 includes a processor and a memory such as is known in the art. The memory includes one or more forms of computer-readable media and stores instructions executable by the computer 110 for performing various operations including those disclosed herein.

[0056] The computer 110 may operate the vehicle 100 in an autonomous or semi-autonomous mode. For purposes of this disclosure, the autonomous mode is defined as a mode in which each of the propulsion (e.g., via a powertrain including an electric motor and / or an internal combustion engine), braking, and steering of the vehicle 100 is controlled by the computer 110; in the semi-autonomous mode, the computer 110 controls one or two of the propulsion, braking, and steering of the vehicle 100.

[0057] The computer 110 may include programming to operate one or more of vehicle braking, propulsion (e.g., controlling vehicle acceleration by controlling one or more of an internal combustion engine, an electric motor, a hybrid engine, etc.), steering, climate control, interior and / or exterior lighting, etc., as well as determine whether and when the computer 110 will control such operations compared to the driver's situation.

[0058] The computer 110 is typically arranged to communicate over a vehicle communication network (e.g., including a communication bus such as a controller area network (CAN) etc.). The computer 110 may include more than one processor, or be communicatively coupled to more than one processor, such as via a vehicle communication bus as further described below, including, for example, controllers in the vehicle for monitoring and / or controlling various subsystems such as a powertrain, actuators, steering etc., etc.

[0059] Via the vehicle network, the computer 110 may transmit messages to various devices in the vehicle 100 and / or receive messages from various devices, such as controllers, actuators, sensors, etc., including the sensor 130. Alternatively or additionally, where the computer 110 actually includes multiple devices, the vehicle communication network may be used to communicate between the devices represented as the computer 110 in this disclosure. In addition, as mentioned below, various controllers and / or sensors 130 may provide data to the computer 110 via the vehicle communication network.

[0060] In addition, the computer 110 may be configured to communicate with the remote navigation computer 180 via a wireless communication interface. The wireless communication interface may communicate via a communication network 170. The communication network 170 may be one or more of a wireless communication mechanism, including any desired combination of wireless (e.g., cellular, wireless, satellite, microwave, and radio frequency) communication mechanisms and any desired network topology (or multiple topologies when multiple communication mechanisms are utilized). Exemplary V-to-V communication networks include cellular (such as Long Term Evolution (LTE)), Bluetooth, and other wireless communication networks that provide data communication services. TM , IEEE 802.11, Dedicated Short Range Communications (DSRC), and / or a Wide Area Network (WAN) including the Internet.

[0061] The wireless communication interface may include known electronic circuits such as a wireless (or radio frequency) signal transceiver 150 and amplifier circuits to enhance outgoing and incoming radio frequency signals. The vehicle 100 computer 110 may be programmed to receive wireless signals via the wireless signal transceiver 150. The computer 110 may be programmed to receive wireless messages (including one or more wireless signals) from, for example, a remote navigation computer 180, a wireless local navigation system 160, etc. via the wireless transceiver 150. The wireless signal transceiver 150 may be configured to be based on, for example, LTE, Bluetooth, or the like. TM , WAN and other wireless communication protocols to receive wireless signals.

[0062] Sensors 130 may include a variety of devices known for providing data via a vehicle communication bus. For example, sensors 130 may include one or more cameras, radars, and / or light detection and ranging (LIDAR) sensors disposed in vehicle 100 to provide data covering at least some conditions external to the vehicle. The data may be received by computer 110 via a suitable interface such as known.

[0063] Sensor 130 may also include a GPS (Global Positioning System) device. GPS sensor 130 may transmit, for example, via computer 110, the current geographic coordinates of vehicle 100, such as a known latitude and longitude.

[0064] The actuator 120 generally includes circuits, chips or other electronic components that can actuate various vehicle subsystems according to known appropriate control signals. For example, the actuator 120 may include one or more relays, servo motors, etc. Therefore, the actuator 120 can be used to control the braking, acceleration and steering of the host vehicle 100. The control signals for controlling the actuator 120 can be generated by the computer 110, a control unit located in the vehicle 100 (e.g., a brake controller, etc.).

[0065] The HMI 140 may be configured to receive user input, for example, during operation of the vehicle 100. As an example, the HMI 140 may include a touch screen, buttons, knobs, keypads, microphones, etc. for receiving information from a user. In addition, the HMI 140 may include a wirelessly connected device, such as a smartphone, etc., for receiving information from a user and / or outputting information to a user. The computer 110 may be programmed to receive configuration data via the HMI 140.

[0066] The wireless local navigation system 160 may include a processor, a memory, and a transceiver, wherein the memory stores instructions by which the processor is programmed to activate the transceiver to send a wireless message. The local navigation system 160 may include a housing and may be mounted to a building or other structure and / or may be portable so that a user can move the wireless local navigation system 160 from a first location to a second location. The wireless local navigation system 160 may include electronic circuits such as a wireless, for example, radio frequency signal transceiver and amplifier circuits to enhance outgoing and incoming radio frequency signals. The local navigation system 160 processor may be programmed to transmit and / or receive wireless signals via the local navigation system 160 transceiver. The local navigation system 160 transceiver may be programmed to transmit a wireless message (including one or more wireless signals) via the local navigation system 160 transceiver to, for example, the vehicle 100, the remote navigation computer 180, etc. The local navigation system 160 transceiver may be based on various wireless communication protocols (e.g., LTE, Bluetooth TM , WAN, etc.) to transmit and / or receive wireless signals. The local navigation system 160 processor can be programmed to transmit a wireless message when an actuation instruction is received. For example, as discussed below, the local navigation system 160 processor can be programmed to transmit a wireless message to the vehicle 100 when an instruction is received from the remote navigation computer 180.

[0067] The computer 110 may be programmed to determine the distance d1 from the local navigation system 160 to the vehicle 100 transceiver 150, for example, using a technique such as free space path loss (FSPL). The computer 110 may be programmed to determine the strength of the wireless signal of the local navigation system 160 based on the data received from the wireless signal receiver 150. Based on FSPL, the loss (weakening) of the electromagnetic signal on the straight path between the transmitter (e.g., the local navigation system 160) and the receiver (e.g., the wireless signal transceiver 150) may be proportional to the square of the distance between the transmitter and the receiver (or the distance d1), and also proportional to the square of the frequency of the radio signal.

[0068] For example, the computer 110 may be programmed to determine the distance d1 after determining the frequency of the signal transmitted by the local navigation system 160 and the loss of the signal received by the wireless signal transceiver 150. The computer 110 may be programmed to determine the frequency of the received signal based on the frequency associated with the communication protocol used and / or using known digital signal processing (DSP) techniques. The computer 110 may be programmed to determine the loss of the received signal based on determining the output power of the local navigation system 160 and determine the signal strength of the received signal based on data received from the wireless signal receiver 150.

[0069] refer to Figure 2A, the computer 110 may be programmed to navigate the vehicle 100 to a first location upon receiving a first message including a map and the current vehicle 100 location from a local navigation system 160A, 160B, a remote navigation computer 180, etc. In addition, after stopping the vehicle 100 at the first location, the computer 110 may be programmed to navigate the vehicle 100 to a second location upon receiving a second message. The computer 110 may be programmed to receive the first message and / or the second message from the remote navigation computer 180. The computer 110 may be programmed to determine whether to navigate the vehicle 100 based on the received messages from one or more local navigation systems 160A, 160B only when one or more received messages meet security requirements (e.g., including passwords, security keys, etc.).

[0070] The map may include data describing the area 200, and may have reference points within the area 200, such as a location 250 where the production line of the vehicle 100 ends and the vehicle 100 begins to navigate. In addition, the map data may describe the locations of walls, roads, entrances and exits, etc., i.e., features of the area 200 that are relevant to the navigation of the vehicle 100. The coordinates of a location in the map may include a horizontal coordinate and a vertical coordinate relative to a reference point of the map, such as the location 250. That is, the reference point may be used as an origin in a two-dimensional Cartesian coordinate system, which may also be referred to as a local coordinate system in the context of the present disclosure, whose points are locations in the area 200. Therefore, the vehicle 100 can navigate in the area 200 even when a global positioning system (GPS) is not available.

[0071] For example, a map may include the location coordinates of a location marker 260, such as a cone, a pillar, a pattern painted on a wall, text painted on a wall, a sign with text and / or an icon or image, a traffic sign, etc. The map may include the locations of location landmarks 270A, 270B and the physical features of the landmarks that the vehicle 100 sensors of the corresponding landmarks can identify. For example, such physical features may include the dimensions of an opening, a machine, a door, a ramp, etc. The markers 260 and landmarks 270 may be used together and / or interchangeably for vehicle 100 navigation; they are distinguished herein in that a marker 260 is an artifact placed in an area 200 to facilitate vehicle 100 navigation, while a landmark 270 is an artifact that exists in an area 200 and can be used for vehicle 100 navigation even if it is not placed there for the purpose of vehicle 100 navigation.

[0072] The vehicle 100 location included in the first message may refer to, for example, the location 250 , or any location where autonomous navigation of the vehicle 100 to the first location, the second location, etc. begins.

[0073] One or more of the first message and / or the second message may include an identifier such as a vehicle identification number (VIN) of vehicle 100. Computer 110 may be programmed to determine whether a received first message and / or second message is directed to vehicle 100 based on the identifier included in the corresponding message.

[0074] In one example, the first location is within a first vehicle station or storage area 210 in the area 200 of the vehicle 100, and the second location is within a vehicle station or storage area 220 of the area 200, for example, within a loading area of ​​a train 240. Thus, advantageously, the computer 110 can navigate the vehicle 100 to the first area 210 (which can be, for example, an area in a vehicle assembly plant where the vehicle 100 is inspected prior to shipment) and then to the second area 220 based on the respective first and second locations.

[0075] The computer 110 may be programmed to navigate the vehicle 100 to a first location, a second location, etc. by operating the vehicle 100 in an autonomous mode. The computer 110 may be programmed to actuate one or more vehicle 100 actuators 120 to accelerate, steer, and / or brake. The computer 110 may be programmed to navigate the vehicle 100 to a third location, a fourth location, etc. based on receiving third information, fourth information, etc.

[0076] In the present context, the map includes coordinates of one or more lane markings 230, area boundaries such as the first area 210 and the second area 220, position coordinates of position markers 260, position coordinates of landmarks 270A, 270B, and / or any other type of information associated with navigation of the vehicle 100 in the area 200. As explained above in the present context, the landmarks 270A, 270B refer to physical structures such as overhead gantry, and / or physical artifacts present in the area 200, such as text information and / or graphical patterns associated with corresponding locations in the area 200.

[0077] The computer 110 may be programmed to receive image data from one or more vehicle 100 sensors 130 and navigate the vehicle 100 based on the received map and image data. The image data may include data received from the vehicle 100 radar, camera, and / or LIDAR sensor 130. The computer 110 may be programmed to detect location markers 260 and / or landmarks 270A, 270B based on the received image data and identify the vehicle 100 location coordinates based on the location coordinates of the identified location markers 260, landmarks 270A, 270B, etc.

[0078] The computer 110 may be programmed to detect, for example, a conical shape of the position marker 260 and determine the position of the vehicle 100 relative to the position marker 260 based on the received image data. The computer 110 may be programmed to identify the position coordinates of the detected position marker 260 based on the map data and determine the position coordinates of the vehicle 100 based on the identified position coordinates of the position marker 260 and the determined position of the vehicle 100 relative to the position marker 260. Additionally or alternatively, the computer 110 may be programmed to detect the position marker 260 based on a graphic pattern printed on a floor, a wall, etc.

[0079] The computer 110 may be programmed to detect one or more lane markers 230 and determine the position coordinates of the vehicle 100 based on the one or more detected lane markers 230 and the map data. In other words, the map data may include the position coordinates of the lane marker 230, and the computer 110 may be programmed to determine the position coordinates based on the position coordinates of the detected lane marker 230. In another example, the computer 110 may be programmed to determine the position coordinates of the vehicle 100 based on at least two of the lane marker 230, the position marker 260, and the landmarks 270A, 270B. For example, when there are a plurality of cone-shaped position markers 260 in the area 200, the computer 110 may be programmed to determine the position coordinates of the vehicle 100 based on a combination of the position coordinates of the position marker 260 and the lane marker 230. Therefore, the lane marker 230 may be effectively used as the position marker 260.

[0080] The computer 110 may be programmed to identify the paths P1, P2 (as discussed above) by determining the shortest path from the current location of the vehicle 100 to the corresponding location (e.g., the first location). The computer 110 may be programmed to determine the shortest path based on a received map, the current vehicle 100 location, and using known route planning techniques.

[0081] In one example, computer 110 may be programmed to maintain a lateral distance d4 from vehicle 100 to lane marker 230 while navigating vehicle 100 to the first location or the second location. Computer 110 may be programmed to maintain distance d4 by actuating vehicle 100 steering actuator 120 using known lane keeping techniques.

[0082] In another example, the computer 110 may be programmed to navigate the vehicle 100 further based on communication with one or more local navigation systems 160A, 160B. Figure 2B, the computer 110 may be programmed to navigate the vehicle 100 to a first location upon receiving a first message from a first local navigation system 160A, and then, after stopping the vehicle 100 at the first location, upon receiving a second message from a second local navigation system 160B at a second location, navigate the vehicle 100 to a second location. In this context, navigating the vehicle 100 to a local navigation system 160 location means that the vehicle 100 is within a predetermined distance, e.g., 10 meters, 25 meters, etc., of the local navigation system 160. The local navigation systems 160A, 160B may have a relatively small size relative to the size of the vehicle 100, e.g., a length and / or width of 50 centimeters. Thus, in one example, each of the local navigation system 160 locations may be defined as an area defined by a 5 meter radius around the local navigation system 160.

[0083] The message may include navigating the vehicle 100 to the local navigation system 160 (eg, reference Figure 2B , one of the local navigation systems 160A, 160B). The message may include an instruction to stop the vehicle 100.

[0084] In one example, rather than using two local navigation systems 160A, 160B, the first local navigation system 160A may be moved from a first location to a second location, such as by a human user and / or a robot.

[0085] In one example, the remote navigation computer 180 may be programmed to receive an identifier of a vehicle 100 ready for transport to a first area 210 of the area 200, and to actuate the first local navigation system 160A to transmit a first message to the vehicle 100, for example, by including its identifier. The remote navigation computer 180 may be programmed to determine available space in the first area 210 and / or the second area 220 based on the received vehicle 100 identifier. Additionally or alternatively, the remote navigation computer 180 may be programmed to identify the first location and / or the second location based on the availability of space in the first area 210 and / or the second area 220, respectively. The remote navigation computer 180 may be programmed to select the first local navigation system 160A from a plurality of local navigation systems 160 based on the determined space availability. The remote navigation computer 180 may also be programmed to actuate a robot to move the first local navigation system 160A to the determined available space and / or instruct a human user to carry the first local navigation system 160A to the determined available space.

[0086] The computer 110 may be programmed to stop the vehicle 100 at the first location by disabling the vehicle 100 powertrain upon reaching the first location. The computer 110 may be programmed to deactivate the vehicle 100 powertrain upon determining that the distance distance d2 from the vehicle 100 to the local navigation system 160A is less than a distance threshold (e.g., 2 meters). Additionally or alternatively, the computer 110 may be programmed to stop the vehicle 100 at the first location upon receiving a message from the local navigation system 160A and / or the remote navigation computer 180 indicating that the vehicle 100 is stopped. For example, the remote navigation computer 180 may be programmed to determine that the vehicle 100 has arrived at the first location based on image data received from an object detection sensor such as a camera sensor installed in the area 200. The local navigation system 160A processor may be programmed to determine that the vehicle 100 has arrived at the first location based on the strength of a wireless signal received from the vehicle 100 wireless transceiver 150.

[0087] The computer 110 may be programmed to determine a direction to the first location based on the first message and navigate the vehicle to the first location based on the determined direction to the first location. The computer 110 may be programmed to determine the direction to the first location based on a change in the distance d2, d3 from the local navigation system 160A, 160B. The computer 110 may be programmed to actuate the vehicle 100 actuator 120 to move the vehicle 100 and determine that the moving direction is the direction to the local navigation system 160A when it is determined that the distance d2 is decreasing.

[0088] The computer 110 may be programmed to receive image data from the vehicle 100 sensor 130 , identify a path P1 leading to the first location based on the received image data and the first message, and navigate the vehicle 100 to the first location via the identified path P1 .

[0089] The computer 110 may be programmed to identify the paths P1, P2 based on lane markings 230 detected from image data received from one or more vehicle 100 camera sensors 130. The computer 110 may be programmed to navigate the vehicle 100 to the first location based on the determined distance d2. The area 200 may have predetermined lane markings 230 as a guide for the vehicle 100. Therefore, the vehicle 100 computer 110 may be programmed to detect lane markings 230 on the ground surface, for example, based on data received from the vehicle 100 camera sensors 130. The computer 110 may be programmed to navigate the vehicle 100 by identifying the path P1 from the current location of the vehicle 100 to the first location based on the detected lane markings 230 and the determined distance d2.

[0090] In one example, lane markers 230 and / or any other suitable type of guide are permanently mounted to and / or applied to the ground surface. Additionally or alternatively, area 200 may include electrically configurable lane markers 230. For example, remote navigation computer 180 may be programmed to actuate one or more lane markers to illuminate or deactivate.

[0091] The computer 110 may be programmed to identify the paths P1, P2 by determining the shortest path from the current location of the vehicle 100 to the corresponding location (e.g., the first location). In addition, the computer 110 may be programmed to receive a map of the lane markings 230 of the area 200 from, for example, the remote navigation computer 180 and determine the paths P1, P2 based on the detected lane markings 230, the received map, and the distances d2, d3 from the first location or the second location.

[0092] In one example, computer 110 may be programmed to maintain a lateral distance d4 from vehicle 100 to lane marker 230 while navigating vehicle 100 to the first location or the second location. Computer 110 may be programmed to maintain distance d4 by actuating vehicle 100 steering actuator 120 using known lane keeping techniques.

[0093] The computer 110 may be programmed to prevent collisions with objects (e.g., another vehicle 100, obstacles, etc.) by detecting objects on the identified paths P1, P2 based on data received from vehicle 100 sensors 130 (e.g., LIDAR, radar, one or more camera sensors 130).

[0094] When the vehicle 100 reaches the second location, the computer 110 may deactivate the local navigation system-based navigation of the vehicle 100. As used herein, "local navigation system-based navigation" means the actuation of movement of the vehicle 100 upon receipt of a message from the local navigation system 160 and / or the remote navigation computer 180. For example, the computer 110 may be programmed to store data in the computer 110 memory prohibiting any further movement of the vehicle 100 based on a message received from the local navigation system 160, such as upon receipt of an instruction to stop local navigation system-based navigation from the remote navigation computer 180, upon determining that the vehicle 100 has reached the second location, upon receipt of a message from the second local navigation system 160B including an instruction to stop local navigation system-based navigation of the vehicle 100, etc. This may be advantageous in preventing undesired local navigation system-based movement of the vehicle 100 after reaching the second location.

[0095] deal with

[0096] FIG. 3A to FIG. 3Bis a flow chart of an exemplary process 300 for navigating a vehicle to a first location and then to a second location. For example, the vehicle 100 computer 110 may be programmed to execute the blocks of the process 300 .

[0097] The process 300 begins in decision block 302, where the computer 110 determines whether the local navigation system based navigation of the vehicle 100 is activated. For example, the computer 110 may be programmed to determine that the local navigation system based navigation of the vehicle 100 is activated when, for example, an instruction including a local navigation activation command is received from a remote computer such as a production plant computer, a dealer service tester device, etc. In addition, the computer 110 may be programmed to determine that the local navigation system based navigation is activated only if the instruction is received from a transmitter that meets security requirements, such as the instruction including a password, a security key, etc. If the computer 110 determines that the local navigation system based navigation is activated, the process 300 proceeds to decision block 305; otherwise, the process 300 returns to decision block 302.

[0098] In decision block 305, the computer 110 determines whether a first message is received, for example, from the first local navigation system 160A. In one example, the received first message includes instructions for navigating the vehicle 100 to a first location of the first local navigation system 160A. Additionally, the first message may include an identifier such as a vehicle identification number (VIN) of the vehicle 100. The computer 110 may be programmed to determine whether the received first message is directed to the vehicle 100 based on the identifier included in the first message. The first message may include the vehicle 100 location and a map describing the area 200, and may have a reference point within the area 200, such as the location 250 where the vehicle 100 production line ends and the vehicle 100 begins navigating. If the computer 110 determines that the first message is received, the process 300 proceeds to block 310; otherwise, the process 300 returns to decision block 305.

[0099] In block 310, the computer 110 navigates the vehicle 100 to the first location, i.e., actuates the vehicle powertrain, steering, and brakes to move the vehicle 100 to the first location. The computer 110 may be programmed to identify a path P1 to the first location based on the received first message. The computer 110 may be programmed to receive image data from one or more vehicle 100 sensors 130 and navigate the vehicle 100 based on the received map and image data. The image data may include data received from a vehicle 100 radar, camera, and / or LIDAR sensor 130. In one example, as described above with reference to Figure 2AAs discussed, the computer 110 may be programmed to detect the position marker 260 and / or the landmark 270A, 270B based on the received image data, and identify the vehicle 100 position coordinates based on the position coordinates of the identified position marker 260, landmark 270A, 270B, etc. Additionally or alternatively, the computer 110 may be programmed to identify the path P1 based on the received first message and the lane marker 230 detected based on the image data received from one or more vehicle 100 camera sensors 130. In another example, as described above with reference to Figure 2B As discussed, the computer 110 can be programmed to navigate the vehicle 100 based at least in part on communication with one or more local navigation systems 160A, 160B. The computer 110 can be programmed to navigate the vehicle 100 based on the identified path P1 leading to the first location. The computer 110 can be programmed to periodically (e.g., every 100 milliseconds) receive messages from the first local navigation system 160A and navigate the vehicle 100 based at least in part on the received messages.

[0100] Next, in decision block 315, computer 110 determines whether vehicle 100 has reached the first location. Figure 2A In one example shown, computer 110 may be programmed to determine that vehicle 100 has arrived at a first location based on received image data including, for example, location landmark 270A and a map. Figure 2B In another example shown, the computer 110 may be programmed to determine that the vehicle 100 has arrived at the first location when it is determined that the distance d2 from the first local navigation system 160A is less than a distance threshold (e.g., 2 meters). Additionally or alternatively, the computer 110 may be programmed to determine that the vehicle 100 has arrived at the first location based on data received from the remote navigation computer 180 and / or the first local navigation system 160A. If the computer 110 determines that the vehicle 100 has arrived at the first location, the process 300 proceeds to block 320; otherwise, the process 300 returns to decision block 315.

[0101] In block 320, the computer 110 disables the vehicle 100 powertrain. For example, the computer 110 may be programmed to disable the ignition switch of the vehicle 100 and / or shut down the engine control ECU.

[0102] Reference now Figure 3B Continuing to describe the process 300, next, in decision block 325, the computer 110 determines whether a second message is received, for example, from the second local navigation system 160B. The second message may include instructions to navigate the vehicle 100 to a second location of the second local navigation system 160B. If the computer 110 determines that the second message is received, the process 300 proceeds to block 330; otherwise, the process 300 returns to decision block 325.

[0103] In box 330, which may be subsequent to box 225, the computer 110 navigates the vehicle 100 to a second location of the second local navigation system 160B. As described above, the computer 110 is programmed to navigate the vehicle 100 by actuating the vehicle 100 actuators 120 to accelerate, steer, and / or brake. The computer 110 may be programmed to identify a path P2 from the first location to the second location based on a received second message, a map, etc. In addition, the computer 110 may be programmed to identify the path P2 based on lane markings 230 detected based on image data received from one or more vehicle 100 camera sensors 130.

[0104] Next, in decision block 335, computer 110 determines whether vehicle 100 has reached the second location. Figure 2A In one example shown, computer 110 may be programmed to determine that vehicle 100 has arrived at a first location based on received image data including, for example, location landmark 270A and a map. Figure 2B In another example shown, the computer 110 may be programmed to determine that the vehicle 100 has arrived at the second location when it is determined that the distance d3 from the second local navigation system is less than a distance threshold (e.g., 2 meters). Additionally or alternatively, the computer 110 may be programmed to determine that the vehicle 100 has arrived at the second location based on data received from the remote navigation computer 180 and / or the first local navigation system 160A. If the computer 110 determines that the vehicle 100 has arrived at the second location, the process 300 proceeds to box 340; otherwise, the process 300 returns to decision box 335.

[0105] In block 340, the computer 110 deactivates local navigation system based navigation of the vehicle 100. For example, the computer 110 may be programmed to store information in the computer 110 memory indicating that local navigation system based movement of the vehicle 100 is deactivated (i.e., the vehicle 100 computer 110 will no longer monitor messages from the local navigation system 160 and / or the remote navigation computer 180, nor will the computer 110 cause the vehicle 100 to navigate to the local navigation system 160 location and / or location landmark 270). After block 340, the process 300 ends, or alternatively, returns to decision block 305 (see Figure 3A ), but this is not Figure 3B Shown in.

[0106] Figure 4 4 is a flow chart of an exemplary process 400 for controlling the vehicle 100 computer 110 to navigate to a first location and then a second location. For example, the remote navigation computer 180, one or more local navigation systems 160A, 160B, and / or a combination thereof may be programmed to perform the blocks of the process 400.

[0107] The process 400 begins in decision block 410, where the remote navigation computer 180 determines whether the vehicle 100 is ready (e.g., the vehicle 100 may be ready to proceed to an inspection area of ​​the manufacturing plant). For example, the remote navigation computer 180 may be programmed to determine that the vehicle 100 is ready upon receiving an identifier of the vehicle 100 ready to navigate to the first area 210 of the areas 200. In one example, the remote navigation computer 180 determines that the vehicle is ready based on information received from the vehicle 100 production computer, including the vehicle 100 identifier and location coordinates such as the end of the production line. If the remote navigation computer 180 determines that the vehicle 100 is ready, the process 400 proceeds to block 420; otherwise, the process 400 returns to decision block 410.

[0108] In block 420, the remote navigation computer 180 transmits a first message to the vehicle 100. In one example, the remote navigation computer 180 transmits the first message including a map of the area 200, the location of the vehicle 100, and the first location landmark 270A to the vehicle 100, for example, via a wireless communication interface. In another example, the remote navigation computer 180 actuates the first local navigation system 160A to transmit the first message to the vehicle 100. The remote navigation computer 180 may be programmed to actuate the first local navigation system 160A to transmit the first message including an identifier (e.g., VIN) of the vehicle 100 and instructions to navigate the vehicle 100 to the first location of the first local navigation system 160A. The remote navigation computer 180 may be programmed to identify the first location based on the availability of space for accommodating the vehicle 100 in the first area 210. In addition, the remote navigation computer 180 may be programmed to select the first local navigation system 160A from a plurality of local navigation systems 160 based on the determined space availability. The remote navigation computer 180 may also be programmed to actuate a robot to move the first local navigation system 160A to the determined available space and / or instruct a human user to carry the first local navigation system 160A to the determined available space.

[0109] Next, in decision block 430, the remote navigation computer 180 determines whether the vehicle 100 has arrived at the first location. The remote navigation computer 180 may be programmed to determine whether the vehicle 100 has arrived at the first location based on data received from the first local navigation system 160A, image data received from sensors installed in the area 200, etc. If the remote navigation computer 180 determines that the vehicle 100 has arrived at the first location, the process 400 proceeds to decision block 440; otherwise, the process 400 returns to decision block 430.

[0110] In decision block 440, the remote navigation computer 180 determines whether an event has occurred. An "event" in this context means identifying data that the computer 180 has stored as a criterion or criteria for moving the vehicle 100 to the second location. Examples of data that would indicate an event when identified by the computer 180 could be an indication that the vehicle 100 is ready for shipment, has passed inspection, is ready for repair, has completed repair, etc. If the remote navigation computer 180 determines that an event has occurred, the process 400 proceeds to decision block 444; otherwise, the process 400 returns to decision block 440, or alternatively, the process 400 ends, but this is not done in the future. Figure 4 Shown in.

[0111] In block 450, the remote navigation computer 180 transmits a second message to the vehicle 100. In one example, the remote navigation computer 180 may transmit the second message including the second location landmark 270B to the vehicle 100, for example, via the wireless communication interface. The remote navigation computer 180 may be programmed to identify the second location based on the availability of space for accommodating the vehicle 100 in the second area 220.

[0112] In another example, the remote navigation computer 180 may actuate the second local navigation system 160B to transmit a second message to the vehicle 100. The remote navigation computer 180 may be programmed to actuate the second local navigation system 160B to transmit a second message including an identifier (e.g., VIN) of the vehicle 100 and instructions to navigate the vehicle 100 to a second location of the second local navigation system 160B. Additionally, the remote navigation computer 180 may be programmed to select the second local navigation system 160B from the plurality of local navigation systems 160 based on the determined space availability at the location of the local navigation system 160B (i.e., the location has space and other locations do not, or has more space than other locations). In this example, the remote navigation computer 180 may be programmed to determine whether the second local navigation system 160B is available at the second location. For example, the remote navigation computer 180 may be programmed to determine whether the second local navigation system 160B is available at the second location based on data received from the area 200 camera sensor, messages received from the second local navigation system 160B, global positioning system data from the local navigation system 160B, and the like. If the remote navigation computer 180 determines that the second local navigation system 160B is not available at the second location, the remote navigation computer 180 may instruct the local navigation system 160 to move to the second location, for example, by moving the first local navigation system 160A from the first location to the second location. The local navigation system 160 may be moved to a location that is identified as having space for the vehicle 100 and / or is determined to be moved to (e.g., due to the availability of a service technician, etc.). The remote navigation computer 180 may be programmed to instruct the robot to move the first local navigation system 160A to the determined available space and / or to instruct the human user to carry the first local navigation system 160A to the determined available space. In other words, the second location of the vehicle 100 will then be the new location of the first local navigation system 160A. The first local navigation system 160A that has been moved to the second location (by the robot or the human user) will then be referred to as the second local navigation system 160B hereinafter.

[0113] Next, in decision block 460, the remote navigation computer 180 determines whether the vehicle 100 has arrived at the second location. The remote navigation computer 180 may be programmed to determine whether the vehicle 100 has arrived at the second location based on data received from the second local navigation system 160B, image data received from sensors installed in the area 200, etc. If the remote navigation computer 180 determines that the vehicle 100 has arrived at the second location, the process 400 ends, or alternatively, returns to decision block 410, but this is not done in the example of FIG. Figure 4 ; otherwise, process 400 returns to decision box 460.

[0114] The articles "a" and "an" modifying nouns are to be understood to mean one or more, unless stated otherwise or the context requires otherwise. The phrase "based on" encompasses partly or wholly based on.

[0115] The computing devices as discussed herein generally each include instructions that are executable by one or more computing devices, such as the computing devices identified above, and for performing the blocks or steps of the processes described above. The computer-executable instructions may be compiled or translated from a computer program created using a variety of programming languages ​​and / or technologies, including, but not limited to, and either alone or in combination, Java. TM , C, C++, Visual Basic, JavaScript, Perl, HTML, etc. In general, a processor (e.g., a microprocessor) receives instructions, for example, from a memory, a computer-readable medium, etc., and executes these instructions to perform one or more processes including one or more of the processes described herein. Various computer-readable media can be used to store and transmit such instructions and other data. Files in a computing device are generally a collection of data stored on a computer-readable medium such as a storage medium, a random access memory, etc.

[0116] Computer-readable media include any media that participate in providing data (e.g., instructions) that can be read by a computer. Such media can take many forms, including but not limited to non-volatile media, volatile media, etc. Non-volatile media include, for example, optical disks or disks and other permanent memories. Volatile media include dynamic random access memory (DRAM) that usually constitutes main memory. Common forms of computer-readable media include, for example, floppy disks, floppy disks, hard disks, tapes, any other magnetic media, CD-ROMs, DVDs, any other optical media, punch cards, paper tapes, any other physical media with hole patterns, RAM, PROMs, EPROMs, FLASH, EEPROMs, any other memory chips or cassettes, or any other media that a computer can read therefrom.

[0117] With respect to the media, processes, systems, methods, etc. described herein, it should be understood that although the steps of such processes, etc. have been described as occurring according to a particular order, such processes may be practiced by performing the steps in an order different from the order described herein. It should also be understood that certain steps may be performed simultaneously, other steps may be added, or certain steps described herein may be omitted. In other words, the descriptions of systems and / or processes herein are provided for the purpose of illustrating certain embodiments and should in no way be considered to limit the disclosed subject matter.

[0118] Therefore, it should be understood that the present disclosure including the above description and the accompanying drawings and the following claims is intended to be illustrative and not restrictive. Based on reading the above description, many embodiments and applications different from the examples provided will be apparent to those skilled in the art. The scope of the present invention should not be determined with reference to the above description, but with reference to the claims attached hereto and / or included in the non-provisional patent application based thereon together with the full scope of equivalents granted by the claims. It is expected and intended that future developments will occur in the fields discussed herein, and the disclosed systems and methods will be incorporated into such future embodiments. In short, it should be understood that the disclosed subject matter is capable of modification and variation.

[0119] According to the present invention, a system having a processor and a memory is provided, wherein the memory stores instructions that can be executed by the processor to: navigate a vehicle to a first location upon receiving a first message including a map, a vehicle location, and the first location; and then, after stopping the vehicle at the first location, navigate the vehicle to a second location upon receiving a second message.

[0120] According to one embodiment, the second message comprises the second location.

[0121] According to one embodiment, the map specifies locations according to a two-dimensional Cartesian coordinate system.

[0122] According to one embodiment, the map includes coordinates of a location marker, the location marker including at least one of a cone, a pillar, a pattern, text, and a symbol.

[0123] According to one embodiment, the map also includes physical features of the location markers.

[0124] According to one embodiment, the memory stores other instructions that can be executed by the processor to determine the current position coordinates of the vehicle by: detecting a position marker based on the received image data; determining the position of the vehicle relative to the position marker; and determining the current position coordinates of the vehicle based on the detected position marker and the determined position of the vehicle relative to the position marker.

[0125] According to one embodiment, the memory stores other instructions executable by the processor to: receive image data from a vehicle sensor; identify a path to a first location based on the received image data and a first message; and navigate the vehicle to the first location via the identified path.

[0126] According to one embodiment, the memory stores other instructions executable by the processor to identify a path based on at least one of lane markings and position markings detected in the received image data.

[0127] According to the present invention, a method includes navigating a vehicle to a first location upon receiving a first message including a map, a vehicle location, and a first location; and then, after stopping the vehicle at the first location, navigating the vehicle to a second location upon receiving a second message.

[0128] According to one embodiment, the second message comprises the second location.

[0129] According to one embodiment, the map specifies locations according to a two-dimensional Cartesian coordinate system.

[0130] According to one embodiment, the map includes coordinates of a location marker, the location marker including at least one of a cone, a pillar, a pattern, text, and a symbol.

[0131] According to one embodiment, the map also includes physical features of the location markers.

[0132] According to one embodiment, the above invention is also characterized in that the current position coordinates are determined in the following manner: detecting a position marker based on the received image data; determining the position of the vehicle relative to the position marker; and determining the current position coordinates of the vehicle based on the detected position marker and the determined position of the vehicle relative to the position marker.

[0133] According to one embodiment, the above invention is further characterized by: receiving image data from a vehicle sensor; identifying a path to the first location based on the received image data and the first message; and navigating the vehicle to the first location via the identified path.

[0134] According to one embodiment, the above invention is further characterized in that identifying the path is based on at least one of lane markings and position markings detected in the received image data.

[0135] According to the present invention, a system is provided, which has: a processor; and a memory, wherein the memory stores instructions, which can be executed by the processor to: navigate a vehicle to a first location when a first message is received from a first local navigation system at a first location; and then, after stopping the vehicle at the first location, navigate the vehicle to a second location when a second message is received from a second local navigation system at a second location.

[0136] According to one embodiment, the memory stores other instructions executable by the processor to: receive image data from a vehicle sensor; identify a path to a first location based on the received image data and a first message; and navigate the vehicle to the first location via the identified path.

[0137] According to one embodiment, the memory stores other instructions executable by the processor to identify a path based on lane markings detected in the received image data.

[0138] According to one embodiment, the memory stores further instructions executable by the processor to deactivate the vehicle powertrain when the first position is reached.

Claims

1. A local navigation method for vehicle navigation, comprising: receiving a first message including a map, a vehicle location, and a first location from a first local navigation system, and navigating the vehicle to the first location based on the first message, wherein the first local navigation system determines that the vehicle has arrived at the first location based on a strength of a wireless signal received from the vehicle; and Then, after the vehicle is parked at the first location, a second message is received from a second local navigation system, and the vehicle is navigated to a second location based on the second message, wherein the second local navigation system determines that the vehicle has arrived at the second location based on the strength of the wireless signal received from the vehicle. The method of claim 1 , wherein the second message includes the second location.

3. The method of claim 1, wherein the map specifies locations according to a two-dimensional Cartesian coordinate system.

4. The method of claim 1, wherein the map includes coordinates of location markers, the location markers including at least one of a cone, a pillar, a pattern, text, and a symbol.

5. The method of claim 4, wherein the map further comprises physical features of the location markers.

6. The method of claim 1, further comprising determining the current location coordinates by: detecting a position marker based on the received image data; determining a position of the vehicle relative to the position marker; as well as The current position coordinates of the vehicle are determined based on the detected position marker and the determined position of the vehicle relative to the position marker.

7. The method of claim 1, further comprising: receiving image data from a vehicle sensor; identifying a path to the first location based on the received image data and the first message; as well as The vehicle is navigated to the first location via the identified path. 8 . The method of claim 7 , wherein identifying the path is based on at least one of lane markings and position markings detected in the received image data.

9. A computing device programmed to execute the local navigation method for vehicle navigation according to any one of claims 1 to 8.

10. A computer program product comprising a computer readable medium storing instructions, wherein the instructions are executable by a computer processor to perform the local navigation method for vehicle navigation according to any one of claims 1 to 8.

Citation Information

Patent Citations

  • Method and apparatus for providing locally relevant routing information

    US20170069209A1