DRIVE LOAD DETECTION NAVIGATION ROUTE PLANNING
The system optimizes navigation routes by considering vehicle characteristics and road conditions to enhance occupant comfort and reduce strain on the vehicle's drive system.
Patent Information
- Authority / Receiving Office
- DE · DE
- Patent Type
- Patents
- Current Assignee / Owner
- GM GLOBAL TECHNOLOGY OPERATIONS LLC
- Filing Date
- 2023-08-08
- Publication Date
- 2026-05-28
AI Technical Summary
Current navigation systems fail to account for factors that influence occupant experience, such as road configurations and vehicle characteristics, leading to potential discomfort and strain on the vehicle's drive and braking systems.
A system that utilizes a vehicle controller connected to a GNSS and communication system to determine a navigation route based on the vehicle's mass, height, and width, considering road characteristics like gradient and speed limits, to optimize comfort and reduce strain on the vehicle's drive system.
The system provides optimized navigation routes that enhance occupant comfort by accounting for vehicle-specific factors and road conditions, reducing discomfort and strain on the vehicle's drive system.
Smart Images

Figure 00000000_0000_ABST
Abstract
Description
INTRODUCTION
[0001] The present disclosure relates to systems and methods for navigation route planning for a vehicle.
[0002] To enhance the perception and comfort of vehicle occupants, vehicles can be equipped with navigation systems configured to provide directions to assist them in navigating to a destination. These systems can use satellite-based radio communication to determine the vehicle's location and employ local or cloud-based maps to calculate a route. When multiple routes are available, the navigation system can consider various factors, such as travel time, route length, traffic congestion, and fuel consumption, to select an optimal or preferred route. However, current navigation systems may fail to account for additional factors that could influence the occupants' experience. Furthermore, navigation systems can warn occupants of potential hazards along a route, such as railroad crossings or school zones.However, current navigation systems may fail to warn occupants of additional dangers.
[0003] While current navigation systems and procedures fulfill their intended purpose, there is consequently a need for a new and improved system and procedure for vehicle navigation route planning.
[0004] JP 2020 - 148 577 A discloses a route search system for finding a route for a delivery vehicle delivering a package. The route search system comprises a position acquisition unit, a prediction unit, a route search unit, and a route guidance unit. The prediction unit forecasts an individual arrival time, which is the arrival time at each parking point and each peripheral parking point. The route search unit extracts available parking candidate points where the delivery vehicle can stop, using parking point information regarding a delivery destination and the peripheral parking point, including an available parking time zone and the individual arrival time, and determines an actual parking point where the delivery vehicle stops, meeting the predefined conditions from the extracted available parking candidate points.The route guidance unit performs route guidance using the actual parking point as the destination.
[0005] EP 1 832 843 A1 discloses a method for determining a route and a method for warning a driver, as well as corresponding systems. Based on information about road section restrictions and vehicle restrictions stored in memory units and a working memory unit, a route is determined or a warning signal is issued, depending on both the vehicle restriction data and the road section restriction information. The vehicle restriction data can be easily adjusted using an input unit. Warning signals can be issued via an output unit or a warning unit.
[0006] US 2020 / 0191589 A1 discloses a system and method for determining a vehicle route based on user-specified travel restrictions. The method comprises the following steps: receiving user travel parameters for a vehicle trip from a vehicle user via a human-machine interface, wherein the vehicle trip includes a starting point and a destination, and wherein the user travel parameters include an option for reducing nausea; accessing geographic road map data for an area corresponding to the vehicle trip; determining a plurality of potential routes for the vehicle trip based on the user trip parameters and the geographic road map data; determining a cumulative nausea index value for each of the potential routes; and selecting one of the potential routes as the vehicle route for the vehicle trip based on the cumulative nausea index value. SUMMARY
[0007] A system for route planning a vehicle based on road characteristics is created according to several aspects. The system includes a global navigation satellite system (GNSS) for determining the vehicle's geographic location, a vehicle communication system for communicating with server systems, and a vehicle controller that is electrically connected to the GNSS and the vehicle communication system. The vehicle controller is programmed to determine the vehicle's mass, height, and width, and to receive a navigation request from a vehicle occupant. Upon receiving the navigation request, the vehicle controller is further programmed to determine a navigation route using at least the GNSS and the vehicle communication system. The navigation route is based at least partially on the vehicle's mass, height, and width.The vehicle controller is further programmed to determine the vehicle's geographic location using GNSS in order to determine the navigation route. To determine the navigation route, the vehicle controller is further programmed to transmit the vehicle's geographic location, the navigation request, the vehicle mass, the vehicle height, and the vehicle width to a server controller using the vehicle communication system. To determine the navigation route, the vehicle controller is further programmed to receive the navigation route from the server controller using the vehicle communication system. The server controller is programmed to determine several possible routes, at least partially, based on the vehicle's geographic location. Each of the several possible routes fulfills the navigation request.The server controller is programmed to determine a route-drive comfort score for each of the several possible routes. The server controller is programmed to select the navigation route from the several possible routes, at least partially, based on the route-drive comfort score for each of the several possible routes. The server controller is electrically connected to a database. The database contains several segment-drive comfort records, each corresponding to one of several road segments of multiple lanes. Each of the several segment-drive comfort records has a location attribute, a vehicle class attribute, and a drive comfort score attribute.The server controller is further programmed to determine the vehicle class, at least partially, based on the vehicle mass, height, and width, in order to calculate the route-drive comfort score for each of the several possible routes. To determine the route-drive comfort score for each of the several possible routes, the server controller is further programmed to retrieve a subset of the several segment-drive comfort records from the database. The location of each subset of the several segment-drive comfort records lies along one of the several possible routes. The vehicle class of each subset of the several segment-drive comfort records corresponds to the vehicle class of the vehicle.To determine the route drive comfort score for each of the multiple possible routes, the server controller is further programmed to determine the route drive comfort score for each of the multiple possible routes by summing the drive comfort score of each subset of the multiple segment drive comfort records along each of the multiple possible routes.
[0008] According to another aspect of the present disclosure, the vehicle controller is further programmed to retrieve a predetermined vehicle mass, height, and width from a non-transient memory of the vehicle controller in order to determine the vehicle mass, height, and width. To determine the vehicle mass, height, and width, the vehicle controller is further programmed to determine a towing status of the vehicle. The towing status includes a trailer operating status and a non-trailer operating status. To determine the vehicle mass, height, and width, the vehicle controller is further programmed, in response to the determination that the towing status is the non-trailer operating status, to prompt the vehicle occupants to provide a trailer weight, height, and width.To determine the vehicle mass, vehicle height, and vehicle width, the vehicle controller is further programmed, in response to the determination that the trailer operating status is the non-trailer operating status, to determine that the vehicle mass is the preset mass of the vehicle, the vehicle height is the preset height of the vehicle, and the vehicle width is the preset width of the vehicle. To determine the vehicle mass, vehicle height, and vehicle width, the vehicle controller is further programmed, in response to the determination that the trailer operating status is the trailer operating status, to determine that the vehicle mass is the sum of the preset mass of the vehicle and the trailer weight, the vehicle height is the greater of the preset height of the vehicle and the trailer height, and the vehicle width is the greater of the preset width of the vehicle and the trailer width.
[0009] According to another aspect of the present disclosure, the database is populated by generating the multiple segment drive comfort data records. To generate one of the multiple segment drive comfort data records, the server controller is further programmed to receive one of several performance data records for one of the multiple road segments from at least one vehicle. To generate one of the multiple segment drive comfort data records, the server controller is further programmed to determine a vehicle class of the at least one vehicle. To generate one of the multiple segment drive comfort data records, the server controller is further programmed to calculate one of several normalized performance data records by normalizing one of the multiple performance data records.To generate one of the several segment drive comfort datasets, the server controller is further programmed to calculate one of several weighted normalized performance datasets by multiplying one of the several normalized performance datasets by several predefined weights. The location of one of the several segment drive comfort datasets is the location of one of the several road segments. The vehicle class of one of the several segment drive comfort datasets is the vehicle class of at least one vehicle. The drive comfort score of one of the several segment drive comfort datasets is a sum of one of the several weighted normalized performance datasets.
[0010] According to another aspect of the present disclosure, the server controller is further programmed to determine a route incline comfort score for each of the several possible routes. The server controller is further programmed to select the navigation route from the several possible routes, at least partially, based on the route drive comfort score and the route incline comfort score for each of the several possible routes.
[0011] According to another aspect of the present disclosure, the server controller is further programmed to recover a road speed limit and a road gradient angle for each of the multiple road segments in order to determine the route gradient comfort score for each of the multiple possible routes. To determine the route gradient comfort score for each of the multiple possible routes, the server controller is further programmed to determine a segment gradient comfort score for each of the multiple road segments of each of the multiple possible routes, at least partially based on a vehicle power ratio for each of the multiple road segments of each of the multiple possible routes.In order to determine the route slope comfort score for each of the several possible routes, the server controller is further programmed to determine the route slope comfort score for each of the several possible routes at least partially based on the segment slope comfort score for each of the several road segments of each of the several possible routes.
[0012] According to another aspect of the present disclosure, the server controller is further programmed to determine a maximum power output of a vehicle's powertrain in order to calculate the vehicle power-to-weight ratio for one of the several road segments of the several possible routes. To calculate the vehicle power-to-weight ratio for one of the several road segments of the several possible routes, the server controller is further programmed to calculate an estimated power output to traverse one of the several road segments of the several possible routes, using a model of estimated power output. Plague=(Cd∗ρa∗v32)∗A+(Crr∗g∗v)∗M+(v∗g∗sin α)∗M where P est the estimated performance is C d a drag coefficient of the vehicle is ρ aa density in an environment surrounding the vehicle, v is the road speed limit of one of the several road segments, A is a frontal cross-sectional area of the vehicle, C rr Let be the vehicle's rolling resistance coefficient, g the gravitational constant, M the vehicle mass, and α the road inclination angle of one of the several road segments. To calculate the vehicle power-to-weight ratio for one of the several road segments of the several possible routes, the server controller is further programmed to calculate the vehicle power-to-weight ratio for that one of the several road segments of the several possible routes by dividing the estimated power required to traverse that one of the several road segments of the several possible routes by the maximum power of the vehicle's powertrain.
[0013] Further areas of application will become apparent from the description provided here. It should be noted that the description and specific examples are for illustrative purposes only and are not intended to limit the scope of protection afforded by this disclosure. BRIEF DESCRIPTION OF THE DRAWINGS
[0014] The drawings described here serve only for illustration and are not intended to limit the scope of protection of the present disclosure in any way; they show: Fig. 1 a schematic graphical representation of a system for route planning of a vehicle based on the road surface characteristics according to an exemplary embodiment; Fig. 2 a flowchart of a procedure for route planning of a vehicle based on the road surface characteristics according to an exemplary embodiment; Fig. 3 a flowchart of a procedure for populating a database according to an exemplary embodiment; Fig. 4 a flowchart of a procedure for determining vehicle characteristics according to an exemplary embodiment; Fig. 5A a flowchart of a procedure for selecting a navigation route according to an exemplary embodiment; Fig. 5B a flowchart of a procedure for determining a segment drive comfort score and a segment tilt comfort score of a road segment near the vehicle according to an exemplary embodiment; and Fig. 6. A flowchart of a procedure for receiving feedback according to an exemplary embodiment. DETAILED DESCRIPTION
[0015] The following description is merely exemplary and is not intended to limit the present disclosure, application, or uses.
[0016] When operating a vehicle, an occupant may encounter road configurations and / or situations (e.g., roads with a steep gradient, roads requiring merging into traffic at higher speeds) that place a strain on the vehicle's drive and / or braking system and consequently cause discomfort for the occupant. Using the system and method described in this disclosure, vehicle navigation systems can take into account the vehicle's characteristics and road configurations to provide the occupant with optimized routes and improve the occupant's experience and comfort.
[0017] In Fig. Figure 1 illustrates a system for route planning a vehicle based on road characteristics and is generally indicated by reference numeral 10. System 10 is shown with an exemplary vehicle 12. While a passenger vehicle is illustrated, it should be understood that vehicle 12 can be any type of vehicle without derogating from the scope of protection of this disclosure. System 10 generally includes a vehicle controller 14, a global navigation satellite system (GNSS) 16, several vehicle sensors 18, and a vehicle communication system 20.
[0018] The vehicle controller 14 is used to implement a method 100 for route planning a vehicle based on road characteristics, as described below. The vehicle controller 14 includes at least one processor 22 and a non-transient computer-readable memory device or non-transient computer-readable storage media 24. The processor 22 can be a custom or commercial processor, a central processing unit (CPU), a graphics processing unit (GPU), an auxiliary processor among several processors associated with the vehicle controller 14, a semiconductor-based microprocessor (in the form of a microchip or chipset), a macroprocessor, a combination thereof, or generally, an instruction-executing device. The computer-readable memory device or computer-readable storage media 24 can be volatile and non-volatile memory, e.g.,The computer-readable memory (ROM), read / write memory (RAM), and hold memory (KAM) are included. KAM is a permanent or non-volatile memory that can be used to store various operating variables while the processor 22 is powered off. The computer-readable memory device or media 24 can be implemented using a number of memory devices, such as PROMs (programmable read-only memory), EPROMs (electrical PROMs), EEPROMs (electrically erasable PROMs), flash memory, or other electrical, magnetic, optical, or combined memory devices capable of storing data, some of which represent executable instructions used by the vehicle controller 14 to control various systems of the vehicle 12. The vehicle controller 14 can also consist of multiple controllers electrically interconnected.The vehicle controller 14 can be interconnected with additional systems and / or controllers of the vehicle 12, which allows the vehicle controller 14 to access data such as the speed, acceleration, braking and steering angle of the vehicle 12.
[0019] The vehicle controller 14 is electrically connected to the global navigation satellite system (GNSS) 16, the multiple vehicle sensors 18, and the vehicle communication system 20. According to an exemplary embodiment, the electrical communication is established, for example, using a CAN bus, a Wi-Fi network, a cell data network, or the like. It should be noted that various additional wired and wireless techniques and communication protocols for communicating with the vehicle controller 14 are within the scope of protection of this disclosure.
[0020] The GNSS 16 is used to determine the geographic location of the vehicle 12. According to an exemplary embodiment, the GNSS 16 is a global positioning system (GPS). According to a non-limiting example, the GPS includes a GPS receiver antenna (not shown) and a GPS controller (not shown) that is electrically connected to the GPS receiver antenna. The GPS receiver antenna receives signals from multiple satellites, and the GPS controller calculates the geographic location of the vehicle 12 based on the signals received by the GPS receiver antenna. According to an exemplary embodiment, the GNSS 16 additionally includes a GNSS map. The GNSS map contains information about infrastructure, such as municipal boundaries, roads, railway lines, sidewalks, buildings, and the like. Therefore, the geographic location of the vehicle 12 is contextualized using the GNSS map information.According to one non-limiting example, the GNSS map is retrieved from a remote source using a wireless connection. According to another non-limiting example, the GNSS map is stored in a memory of the GNSS 16. It should be recognized that various additional types of satellite-based radio navigation systems, such as the Global Positioning System (GPS), Galileo, GLONASS, and the BeiDou Navigation Satellite System (BDS), are within the scope of protection of this disclosure.
[0021] The multiple vehicle sensors 18 are used to determine performance data about the vehicle 12. According to one exemplary embodiment, the multiple vehicle sensors 18 include at least one engine speed sensor, one engine torque sensor, one voltage and / or current sensor of the drive electric motor, one accelerator pedal position sensor, one coolant temperature sensor, one cooling fan speed sensor, and one transmission oil temperature sensor. According to another exemplary embodiment, the multiple vehicle sensors further include sensors to determine information about an environment surrounding the vehicle 12, e.g., an ambient air temperature sensor, an atmospheric pressure sensor, and / or a photo and / or video camera positioned to view the environment 26 in front of the vehicle 12.According to another exemplary embodiment, at least one of the multiple vehicle sensors 18 can measure distances in the environment 26 surrounding the vehicle 12. According to a non-limiting example, in which the multiple vehicle sensors 18 include a camera, the multiple vehicle sensors 18 measure distances using an image processing algorithm configured to process the images from the camera and determine the distances between the objects. According to another non-limiting example, the multiple vehicle sensors 18 include a stereo camera with distance-measuring capabilities. According to one example, at least one of the multiple vehicle sensors 18 is located inside the vehicle 12, e.g., in a headliner of the vehicle 12, with a view through a windshield of the vehicle 12. According to another example, at least one of the multiple vehicle sensors 18 is located outside the vehicle 12, e.g.,mounted on the roof of the vehicle 12, with a view of the environment 26 surrounding the vehicle 12. It should be recognized that various additional types of vehicle sensors, such as LiDAR sensors, ultrasonic distance sensors, radar sensors and / or time-of-flight sensors, are within the scope of protection of this disclosure.
[0022] The vehicle communication system 20 is used by the vehicle controller 14 to communicate with other systems outside the vehicle 12. The vehicle communication system 20 includes, for example, capabilities for communication with other vehicles (“V2V” communication), infrastructure (“V2I” communication), remote systems in a remote call center (e.g., GENERAL MOTORS ON-STAR), and / or personal devices. Generally, the term vehicle-to-everything communication (“V2X” communication) refers to communication between the vehicle 12 and any remote system (e.g., vehicles, infrastructure, and / or remote systems). According to certain embodiments, the vehicle communication system 20 is a wireless communication system configured to communicate over a wireless local area network (WLAN) using IEEE 802.11 standards or using cellular data communication.Additional or alternative communication methods, such as a dedicated short-range communication channel (DSRC channel) and / or mobile telecommunications protocols based on the standards of the 3rd Generation Partnership Project (3GPP), are also considered to be within the scope of protection of this disclosure. DSRC channels refer to short- to medium-range one-way or two-way wireless communication channels specifically designed for automotive use and to a corresponding set of protocols and standards. The 3GPP refers to a partnership between several standards organizations that develop protocols and standards for mobile telecommunications. The 3GPP standards are structured as "versions." Consequently, communication methods based on 3GPP versions 14, 15, 16, and / or future 3GPP versions are considered to be within the scope of protection of this disclosure.Accordingly, the vehicle communication system 20 can include one or more antennas and / or one or more communication transmitters / receivers for receiving and / or sending signals, such as cooperative sampled messages (CSMs). The vehicle communication system 20 is configured to wirelessly transmit information between the vehicle 12 and another vehicle. Furthermore, the vehicle communication system 20 is configured to wirelessly transmit information between the vehicle 12 and the infrastructure or other vehicles.
[0023] Furthermore, in Fig. 1. A server system is illustrated and generally specified by reference numeral 28. The server system 28 includes a server controller 30, which is electrically connected to a database 32 and a server communication system 34. According to a non-restrictive example, the server system 28 is located in a server farm, a data center, or the like, and is connected to the Internet. The server controller 30 includes at least one server processor 36 and a non-transient computer-readable storage device or non-transient computer-readable server media 38. The description of type and configuration given above for the vehicle controller 14 also applies to the server controller 30. The description given above for the vehicle communication system 20 also applies to the server communication system 34. The server communication system 34 is used for communication with external systems, such as...the vehicle controller 14, via the vehicle communication system 20.
[0024] In Fig. Figure 2 shows a flowchart of procedure 100 for route planning a vehicle based on road surface properties. Procedure 100 begins in block 102 and continues to block 104. In block 104, the server system 28 populates the database 32 with several segment drive comfort data records. According to the scope of protection of this disclosure, all roads are divided into several road segments, each road segment containing a segment of the road with a predetermined length (e.g., five hundred meters). Consequently, each road segment has a location, and the attributes of the road segment, such as a road slope angle, may be defined. According to the scope of protection of this disclosure, each of the several segment drive comfort data records corresponds to one of the several road segments. The several segment drive comfort data records are discussed in more detail below.An exemplary embodiment of block 104 is described below with regard to . Fig. 3 discussed in more detail. After block 104, procedure 100 continues to block 106.
[0025] In block 106, the vehicle controller 14 determines a vehicle mass, a vehicle height, and a vehicle width of the vehicle 12. Block 106 is discussed below with regard to Fig. 4 discussed in more detail. After block 106, procedure 100 continues to block 108.
[0026] In block 108, the vehicle controller 14 determines whether a navigation request has been received from an occupant of the vehicle 12. According to the scope of protection of this disclosure, the navigation request is a request made by the vehicle occupant to use the GNSS 16 to provide navigation instructions to a desired destination. According to a non-limiting example, the occupant of the vehicle 12 can use a (not shown) human-machine interface of the vehicle 12 to enter the desired destination in the form of a street address. If a navigation request has been received from the vehicle occupant, it is determined that the procedure 100 is in a guided navigation mode, and the procedure 100 proceeds to block 110.If no navigation request has been received from the vehicle occupant, it is determined that procedure 100 is in a free navigation mode, and procedure 100 proceeds to block 112, as discussed in more detail below.
[0027] In block 110, the vehicle controller 14 uses the GNSS 16 to determine the geographical location of the vehicle 12. After block 110, the procedure 100 continues to block 114.
[0028] In block 114, the vehicle controller 14 uses the vehicle communication system 20 to transmit the vehicle's geographical location determined in block 110, the vehicle mass, vehicle height, and vehicle width determined in block 106, and the navigation request received in block 108 via the server communication system 34 to the server system 28. After block 114, the procedure 100 continues to block 116.
[0029] In block 116, server system 28 selects a navigation route. Block 116 is discussed below with regard to... Fig. 5A is discussed in more detail. After block 116, procedure 100 continues to block 118.
[0030] In block 118, the vehicle controller 14 receives the navigation route selected by the server system in block 116 from the server system 28 using the vehicle communication system 20. After block 118, the process 100 continues to block 120.
[0031] In block 120, the vehicle controller 14 receives feedback using the multiple vehicle sensors 18 and transmits this feedback to the server system 28. The double-dashed line 122 indicates that the feedback is sent to the server system 28 and consequently affects the operation of block 104. Block 120 is discussed below with regard to Fig. 6 discussed in more detail. After block 120, procedure 100 continues in order to enter a standby state in block 124.
[0032] As discussed above, block 108 specifies that if no navigation request has been received from an occupant of the vehicle, the procedure 100 is in a free navigation mode, and the procedure 100 proceeds to block 112.
[0033] In block 112, the vehicle controller 14 uses the GNSS 16 to determine the geographical location of the vehicle 12. After block 110, the procedure 100 continues to block 126.
[0034] In block 126, the vehicle controller 14 uses the vehicle communication system 20 to transmit the geographical location of the vehicle 12, determined in block 112, and the vehicle mass, height, and width, determined in block 106, via the server communication system 34 to the server system 28. After block 126, the procedure 100 continues to block 128.
[0035] In block 128, the server system 28 determines a segment drive comfort score and a segment tilt comfort score for a road segment near the vehicle 12. The segment drive comfort score, the segment tilt comfort score, and block 128 are discussed below with regard to Fig. 5B is discussed in more detail. After block 128, procedure 100 continues to block 130.
[0036] In block 130, the vehicle controller 14 receives the segment drive comfort score and the segment tilt comfort score of the road segment near the vehicle 12, which were determined by the server system in block 128, from the server system 28 using the vehicle communication system 20. After block 130, the procedure 100 continues to block 132.
[0037] In block 132, the vehicle controller 14 compares the segment drive comfort score of the road segment near the vehicle 12, received in block 130, with a predefined segment drive comfort score threshold, and the segment tilt comfort score of the road segment near the vehicle 12, also received in block 130, with a predefined segment tilt comfort score threshold. If the segment drive comfort score of the road segment near the vehicle 12 is less than or equal to the predefined segment drive comfort score threshold, and / or the segment tilt comfort score of the road segment near the vehicle 12 is less than or equal to the predefined segment tilt comfort score threshold, the procedure 100 proceeds to block 134. Otherwise, procedure 100 bypasses block 134 and proceeds to block 120.
[0038] In Block 134, the vehicle controller 14 uses the (not shown) human-machine interface of the vehicle 12 to inform the occupant of the vehicle 12 that the segment drive comfort score of the road segment near the vehicle 12 is less than or equal to the predetermined segment drive comfort score threshold and / or the segment tilt comfort score of the road segment near the vehicle 12 is less than or equal to the predetermined segment tilt comfort score threshold. It should be recognized that various types of human-machine interfaces, including, for example, an instrument panel display, a center console display, a head-up display (HUD), and the like, are within the scope of protection of this disclosure. Following Block 134, Method 200 proceeds to Block 120.As described above, the process continues from block 120 to block 124, in order to enter a standby state.
[0039] In Fig. Figure 3 provides a flowchart of an exemplary embodiment of the block 104 discussed above. The exemplary embodiment of block 104 begins in block 104a. In block 104a, the server controller 30 receives a performance data set for one of several road segments from one of several vehicles. According to a non-limiting example, the performance data set contains a location of a road segment and at least one of several values: an engine speed, an engine torque, a voltage and / or current of the drive electric motor, an accelerator pedal position, a coolant temperature, a cooling fan speed, a transmission oil temperature, an ambient air temperature, an atmospheric pressure, a vehicle mass, a vehicle height, and a vehicle width.
[0040] According to an exemplary embodiment, the multiple vehicles include any vehicle equipped with sensors (e.g., the multiple vehicle sensors 18). As each of the multiple road segments passes through, each of the multiple vehicles records a performance data set using the sensors and transmits the performance data set to the server system 28, which is received in block 104a.
[0041] According to one exemplary embodiment, the performance data set contains multiple measurements of the multiple values recorded during the traversal of the segment. According to another exemplary embodiment, the performance data set contains an average of each of the multiple values while the segment is traversed. According to yet another exemplary embodiment, each of the multiple values further includes a low threshold and a high threshold. According to the scope of protection of the present disclosure, the values below the low threshold are those at which the occupant experiences no discomfort. The values between the low and high thresholds are those at which the occupant begins to experience discomfort and / or stress. The values above the high threshold are those at which the occupant experiences extreme discomfort and / or extreme stress. For example, ifIf the engine speed exceeds an exemplary high threshold of three thousand revolutions per minute, the occupant may experience discomfort due to the loud noise and the resulting perceived strain on the engine. According to an exemplary embodiment, the low and high thresholds for each of the several values are determined based on an empirical study, occupant feedback, and vehicle equipment (e.g., engine size). Following Block 104a, the exemplary embodiment of Block 104 proceeds to Block 104b.
[0042] In block 104b, the server controller 30 determines a vehicle class associated with the power data record received in block 104a (i.e., a vehicle class of a vehicle that transmitted the power data record received in block 104a). According to the scope of protection of the present disclosure, the vehicle class is a categorization of a vehicle based on a vehicle mass, vehicle height, and vehicle width. According to an exemplary embodiment, several vehicle classes are defined, e.g., light-duty, medium-duty, and heavy-duty. Vehicles with a relatively low mass (e.g., 1100 kilograms) and / or a relatively small frontal cross-sectional area (as estimated based on the vehicle height and vehicle width, e.g., 2.1 square meters) are categorized as vehicles of the light-duty class. Vehicles with an average mass (e.g.,Vehicles with a mass of 1900 kilograms and / or an average frontal cross-sectional area (e.g., 2.2 square meters) are categorized as medium-duty vehicles. Vehicles with a relatively large mass (e.g., 2500 kilograms) and / or a relatively large frontal cross-sectional area (e.g., 2.5 square meters) are categorized as heavy-duty vehicles. Following Block 104b, the exemplary embodiment of Block 104 continues to Block 104c.
[0043] In block 104c, the server controller 30 normalizes the performance data set received in block 104a. According to an exemplary embodiment, each of the multiple values of the performance data set is normalized using the low and high thresholds discussed above to produce a normalized performance data set. For example, if one of the multiple values is greater than or equal to the high threshold for that one of the multiple values, the result of the normalization is one. If one of the multiple values is between the low and high thresholds for that one of the multiple values, the result of the normalization is one and a half. If one of the multiple values is less than or equal to the low threshold for that one of the multiple values, the result of the normalization is zero. After block 104c, the exemplary embodiment of block 104 proceeds to block 104d.
[0044] In block 104d, each of the multiple values of the normalized performance data set is weighted to generate a weighted normalized performance data set. According to an exemplary embodiment, each of the multiple values of the normalized performance data set is multiplied by one of several predefined weights. According to a non-limiting example, the multiple predefined weights are stored in the server media 38, with each of the multiple predefined weights being determined at least partially based on an empirical study and / or occupant feedback. For example, the accelerator pedal position may influence occupant comfort more than the engine coolant temperature. Consequently, the accelerator pedal position is multiplied by a higher weight than the engine coolant temperature. Following block 104d, the exemplary embodiment of block 104 continues to block 104e.
[0045] In block 104e, server controller 30 generates one of the multiple segment drive comfort datasets. As discussed above, each of the multiple segment drive comfort datasets corresponds to one of the multiple road segments. Each of the multiple segment drive datasets contains a location attribute, a vehicle class attribute, and a drive comfort score attribute. The location attribute of one of the multiple segment drive datasets is the location of the road segment for which the performance dataset was received in block 104a. The vehicle class attribute of one of the multiple segment drive datasets is the vehicle class of the vehicle that transmitted the performance dataset, as determined in block 104b. The drive comfort score attribute is a drive comfort score for the road segment. The drive comfort score for the road segment is a sum of the multiple values of the weighted normalized performance dataset determined in block 104d.
[0046] According to the scope of protection of the present disclosure, the drive comfort score for a road segment (also referred to as the segment drive comfort score) is a quantification of an occupant's comfort level while traversing the road segment. In particular, the segment drive comfort score quantifies the degree to which an occupant experiences discomfort due to a drive system (i.e., a powertrain) of the vehicle 12 while traversing the road segment. Road segments that have a steep incline and / or require merging into higher-speed traffic, for example, may cause stress on the vehicle's drive system, consequently causing discomfort for the occupant and therefore a lower segment drive comfort score. According to Block 104e, the exemplary embodiment of Block 104 is completed, with Method 100 continuing as described above.
[0047] It should be recognized that the exemplary embodiment of block 104, with its multiple vehicles traversing the multiple road segments, is executed repeatedly. The multiple vehicles are equipped with sensors (e.g., the multiple vehicle sensors 18). As each of the multiple road segments is traversed, each of the multiple vehicles records a performance data set using its sensors and transmits the performance data set to the server system 28, which is received in block 104a. Therefore, database 32 is populated using swarm storage because many vehicles contribute to the multiple segment drive comfort data sets. According to an exemplary embodiment, for segment drive comfort data sets that share the same vehicle class attribute and location attribute, the drive comfort scores in database 32 are averaged.Consequently, each of the multiple segment drive comfort data records in database 32 represents an aggregation of all performance data records received from each of the multiple vehicles of the same vehicle class that traversed a given road segment and provided a performance data record.
[0048] In Fig. Figure 4 provides a flowchart of an exemplary embodiment of the block 106 discussed above. In block 106a, the vehicle controller 14 recovers a predetermined mass, height, and width of the vehicle 12 from the media 24 of the vehicle controller 14. According to the scope of protection of this disclosure, the predetermined mass, height, and width are the mass, height, and width of the vehicle 12 as originally manufactured, without any additional modifications and / or accessories (e.g., trailers, bicycle carriers, luggage racks, and / or the like). Following block 106a, the exemplary embodiment of block 106 proceeds to block 106b.
[0049] In block 106b, the vehicle controller 14 determines a towing status of the vehicle 12. According to the scope of protection of the present disclosure, the towing status of the vehicle 12 defines whether a trailer is currently connected to the vehicle 12. If a trailer is currently connected to the vehicle 12, the towing status is a trailer operating status. If no trailer is currently connected to the vehicle 12, the towing status is a non-trailer operating status. According to one exemplary embodiment, the vehicle controller 14 determines whether an electrical connection exists between the vehicle 12 and a trailer in order to determine the towing status of the vehicle 12. According to another exemplary embodiment, the vehicle controller 14 uses the (not shown) human-machine interface to ask the occupant about the towing status of the vehicle 12. If no trailer is currently connected to the vehicle 12 (i.e.,If a trailer is currently connected to the vehicle 12 (i.e., the trailer operating state), the exemplary embodiment of block 106 continues to block 106c. If a trailer is currently connected to the vehicle 12 (i.e., the trailer operating state), the exemplary embodiment of block 106 continues to block 106d.
[0050] In block 106c, it is determined that a vehicle mass is equal to the predetermined mass of the vehicle 12 recovered in block 106a. It is determined that a vehicle height is equal to the predetermined height of the vehicle 12 recovered in block 106a. It is determined that a vehicle width is equal to the predetermined width of the vehicle 12 recovered in block 106a. According to the scope of protection of this disclosure, the vehicle mass is a mass of the vehicle 12 and / or the mass of any accessory connected to the vehicle 12 (e.g., a trailer, a bicycle carrier, a luggage rack, and / or the like). The vehicle height is a height of the vehicle 12 and / or the height of any accessory connected to the vehicle 12 (e.g., a trailer, a bicycle carrier, a luggage rack, and / or the like). The vehicle width is a width of the vehicle 12 and / or the width of any accessory connected to the vehicle 12 (e.g., a trailer, a bicycle carrier, a luggage rack, and / or the like).B. a trailer, bicycle carrier, luggage carrier and / or the like). According to Block 106c, the exemplary embodiment of Block 106 is completed, with Method 100 continuing as described above.
[0051] In block 106d, the vehicle controller 14 requests the vehicle occupant's information regarding the mass, height, and width of the trailer currently connected to the vehicle 12. According to an exemplary embodiment, the vehicle controller 14 uses the (not shown) human-machine interface of the vehicle 12 to display a prompt to the vehicle occupant requesting the mass, height, and width of the trailer. The vehicle mass is determined as the sum of the predefined vehicle mass recovered in block 106a and the trailer mass. If the trailer height is greater than or equal to the predefined vehicle height recovered in block 106a, the vehicle height is determined to be equal to the trailer height.If the trailer height is less than the predetermined vehicle height recovered in Block 106a, it is determined that the vehicle height is equal to the predetermined vehicle height recovered in Block 106a. If the trailer width is greater than or equal to the predetermined vehicle width recovered in Block 106a, it is determined that the vehicle width is equal to the trailer width. If the trailer width is less than the predetermined vehicle width recovered in Block 106a, it is determined that the vehicle width is equal to the predetermined vehicle width recovered in Block 106a. After Block 106d, the exemplary embodiment of Block 106 is completed, and Method 100 continues as described above.
[0052] In Fig. Figure 5A provides a flowchart of an exemplary embodiment of the block 116 discussed above. The exemplary embodiment of block 116 begins in block 116a. In block 116a, the server controller 30 determines several possible routes based on the location and navigation request transmitted by the vehicle 12 in block 114. According to one exemplary embodiment, the several possible routes are determined based on a server map contained in the server media 38 or otherwise accessible to the server controller 30 (e.g., accessible using the server communication system 34). The server map contains information about the infrastructure, such as municipal boundaries, roads, railway lines, sidewalks, buildings, and the like.According to an exemplary embodiment, the server map also includes a road gradient angle and a road speed limit for each of the multiple road segments. According to a non-restrictive example, the server map, together with the vehicle's geographic location and the navigation request, is used to generate several possible routes to meet the navigation request. Following Block 116a, the exemplary embodiment of Block 116 continues to Blocks 116b and 116c.
[0053] In block 116b, the server controller 30 determines the vehicle class of vehicle 12, at least partially, based on the vehicle mass, vehicle height, and vehicle width transmitted by vehicle 12 in block 114. The determination of the vehicle class has been discussed in more detail above with regard to block 104b. After block 116b, the exemplary embodiment of block 116 continues to block 116d.
[0054] In block 116d, the server controller 30 retrieves a subset of the multiple segment drive comfort data records generated in block 104e. The location attribute of each subset of the multiple segment drive comfort data records is situated along one of the multiple possible routes determined in block 116a. The vehicle class attribute of each subset of the multiple segment drive comfort data records corresponds to the vehicle class of vehicle 12 determined in block 116b. After block 116d, the exemplary embodiment of block 116 continues to block 116e.
[0055] In block 116e, the server controller 30 determines a route-drive comfort score for each of the multiple possible routes. According to the scope of protection of the present disclosure, the route-drive comfort score is a quantification of an occupant's comfort level while traveling a given route. In particular, the route-drive comfort score quantifies the extent to which an occupant experiences discomfort due to a drive system (i.e., a powertrain) of the vehicle 12 while traveling the given route. To determine a route-drive comfort score for each of the multiple possible routes, according to an exemplary embodiment, the server controller 30 sums the drive comfort score attribute of each subset of the multiple segment drive comfort records along each of the multiple possible routes, resulting in a route-drive comfort score for each of the multiple possible routes.In other words, for a given route, the route drive comfort score for that route is the sum of the segment drive comfort scores of each road segment located along the given route. Following Block 116e, the exemplary embodiment of Block 116 continues to Block 116f, as discussed below.
[0056] As discussed above, the exemplary embodiment of block 116 continues from block 116a to blocks 116b and 116c. In block 116c, the server controller 30 determines a road speed limit and a road gradient angle for each subset of the multiple road segments. Each subset of the multiple road segments is located along one of the multiple possible routes. As discussed above, the road speed limit and the road gradient angle for each of the multiple road segments are contained in the server map, which is accessible through the server controller 30. After block 116c, the exemplary embodiment of block 116 continues to block 116g.
[0057] In block 116g, the server controller 30 determines an estimated power required by the vehicle 12 to traverse each subset of the multiple road segments. According to the scope of protection of the present disclosure, the estimated power is a sum of an aerodynamic power (i.e., power required to maintain the road speed limit against air resistance), a rolling power (i.e., power required to maintain the road speed limit against rolling resistance), and a gradient power (i.e., power required to maintain the road speed limit against the gravitational force due to the road's inclination angle). To calculate the estimated power for each subset of the multiple road segments, the server controller 30, according to an exemplary embodiment, uses a model of the estimated power: Plague=(Cd∗ρa∗v32)∗A+(Crr∗g∗v)∗M+(v∗g∗sin α)∗M where P est the estimated performance is C d a drag coefficient of the vehicle is ρ a an air density in an environment surrounding the vehicle, v is the road speed limit of one of the subset of several road segments, A is a frontal cross-sectional area of the vehicle (i.e., the vehicle height multiplied by the vehicle width), C rr where g is the rolling resistance coefficient of the vehicle, g is a gravitational constant, M is the vehicle mass, and α is the road inclination angle of one of the subset of several road segments.
[0058] According to an exemplary embodiment, calculating the estimated power for each subset of the multiple road segments is computationally intensive. Therefore, according to a non-restrictive example, the server controller 30 uses at least one pre-calculated lookup table to compute the estimated power model. A first lookup table contains, for example, the drag power per unit frontal cross-sectional area for several road speed limits. A second lookup table contains a sum of the rolling power and the climbing power per unit vehicle mass for several combinations of the road speed limit and road gradient. Therefore, using the vehicle's frontal cross-sectional area, the road speed limit, the vehicle mass, and the road gradient, a result from the first and second lookup tables is calculated.The sum of the results from the first and second lookup tables is the estimated power required to travel a given road segment. After block 116g, the exemplary embodiment of block 116 continues to block 116h.
[0059] In block 116h, a segment inclination comfort score is determined for each subset of the multiple road segments. According to the scope of protection of this disclosure, the segment inclination comfort score is a quantification of an occupant's comfort level while traversing the road segment. In particular, the segment inclination comfort score quantifies the degree to which an occupant experiences discomfort due to the road inclination angle along a given road segment. To determine the segment inclination comfort score, a vehicle power ratio is calculated for each subset of the multiple road segments. According to the scope of protection of this disclosure, the vehicle power ratio is a ratio between the estimated power required to traverse each subset of the multiple road segments and a maximum power of a vehicle powertrain 12.According to an exemplary embodiment, the maximum power of the vehicle 12's powertrain is stored in the server media 38. To calculate the vehicle power-to-weight ratio for each subset of the multiple road segments, the server controller 30 divides the estimated power for each subset of the multiple road segments, determined in block 116g, by the maximum power of the vehicle 12's powertrain. The segment tilt comfort score for each subset of the multiple road segments is based at least partially on the vehicle power-to-weight ratio for each subset of the multiple road segments. According to a non-restrictive example, the segment tilt comfort score for each subset of the multiple road segments is proportional to the vehicle power-to-weight ratio for each subset of the multiple road segments.According to another non-restrictive example, the segment tilt comfort score for each subset of the multiple road segments is determined using a lookup table that maps multiple values of the vehicle power-to-weight ratio to multiple values of the segment tilt comfort score. It should be recognized that the relationship between the vehicle power-to-weight ratio for each subset of the multiple road segments and the segment tilt comfort score for each subset of the multiple road segments can be described using various mathematical functions, including, for example, a linear relationship, an exponential relationship, a logarithmic relationship, a root relationship, and / or the like. Following Block 116h, the exemplary embodiment of Block 116 proceeds to Block 116i.
[0060] In block 116i, the server controller 30 determines a route incline comfort score for each of the multiple possible routes. According to the scope of protection of the present disclosure, the route incline comfort score is a quantification of an occupant's comfort level while traveling along a given route. In particular, the route incline comfort score quantifies the degree to which an occupant experiences discomfort due to the road incline angle along a given route. To determine a route incline comfort score for each of the multiple possible routes, the server controller 30, according to an exemplary embodiment, sums the segment incline comfort score for each subset of the multiple road segments along each of the multiple possible routes, resulting in a route incline comfort score for each of the multiple possible routes.In other words, for a given route, the route gradient comfort score is the sum of the segment gradient comfort scores of each road segment located along the given route. Following Block 116i, the exemplary embodiment of Block 116 continues to Block 116f.
[0061] In block 116f, the server controller 30 selects a navigation route from the several possible routes, at least partially based on the route-drive comfort score determined in block 116e for each of the several possible routes and the route-tilt comfort score determined in block 116i for each of the several possible routes. The server controller 30 transmits the navigation route to the vehicle controller 14 using the server communication system 34. According to the scope of protection of this disclosure, the navigation route is one of the several routes selected as an optimal route, which is presented to the occupant of the vehicle 12 to accommodate the navigation request received in block 108. It should be recognized that, in addition to the route-drive comfort score and the route-tilt comfort score, various factors, such as traffic conditions, the condition of the lane edge (i.e.,The condition of the lane markings or the shoulder of the road, the lane width, the obstacle heights (e.g., the height of the obstacles relative to a vehicle's height), and the curve complexity (e.g., a large turning angle, complex intersection geometry, and the like) along each of the several possible routes can be used to select the navigation route. According to an exemplary embodiment, each of the several routes is evaluated based on several of the factors mentioned above, the scores are normalized, the normalized scores are weighted, and the navigation route is selected based on the several normalized weighted scores for the several factors mentioned above. After Block 116f, the exemplary embodiment of Block 116 is completed, with Method 100 continuing as described above.
[0062] In Fig. Figure 5B provides a flowchart of an exemplary embodiment of the block 128 discussed above. The exemplary embodiment of block 128 begins in block 128a. In block 128a, the server controller 30 identifies one of the several road segments that is near the geographical location of the vehicle 12, which was transmitted by the vehicle 12 to the server system 28 in block 126 (i.e., a nearby road segment). After block 128a, the exemplary embodiment of block 128 proceeds to blocks 128b and 128c.
[0063] In block 128b, the server controller 30 determines the vehicle class of vehicle 12, at least partially, based on the vehicle mass, vehicle height, and vehicle width transmitted by vehicle 12 in block 126. Following block 128b, the exemplary embodiment of block 128 continues to block 128d.
[0064] In block 128d, the server controller 30 retrieves one of the several segment drive comfort data sets generated in block 104e. This one of the several segment drive comfort data sets corresponds to the nearby road segment identified in block 128a. After block 128d, the exemplary embodiment of block 128 continues to block 128e.
[0065] In block 128e, the server controller 30 determines the segment drive comfort score of the nearby road segment as the drive comfort score attribute of one of the several segment drive comfort data records recovered in block 128d.
[0066] As discussed above, the exemplary embodiment of block 128 continues from block 128a to blocks 128b and 128c. In block 128c, the server controller 30 determines a road speed limit and a road gradient angle for the nearby road segment. As discussed above, the road speed limit and road gradient angle for each of the multiple road segments are contained in the server map accessible by the server controller 30. After block 128c, the exemplary embodiment of block 128 continues to block 128f.
[0067] In block 128f, the server controller 30 determines an estimated power requirement for the vehicle 12 to traverse the nearby road segment, as discussed above with respect to block 116g. Following block 128f, the exemplary embodiment of block 128 continues to block 128g.
[0068] In block 128g, a segment gradient comfort score is determined for the nearby road segment, as discussed above with regard to block 116h. Following blocks 128e and 128g, the exemplary embodiment of block 128 is completed, with method 100 continuing as described above.
[0069] In Fig.Figure 6 provides a flowchart of an exemplary embodiment of the block 120 discussed above. The exemplary embodiment of block 120 begins in block 120a. In block 120a, the vehicle controller 14 uses the multiple vehicle sensors 18 to record performance data about the vehicle 12. The GNSS 16 is used to determine the location of the vehicle 12 (i.e., one of the multiple road segments on which the vehicle 12 is located). According to an exemplary embodiment, the performance data includes at least one of: an engine speed, an engine torque, a voltage and / or current of the drive electric motor, an accelerator pedal position, a coolant temperature, a cooling fan speed, a transmission oil temperature, an ambient air temperature, an atmospheric pressure, a vehicle mass, a vehicle height, and a vehicle width of the vehicle 12.After block 120a, the exemplary embodiment of block 120 continues to block 120b.
[0070] In Block 120b, the multiple predefined weights used in Block 104d are set based on the performance data recorded in Block 120a. According to an exemplary embodiment, the multiple predefined weights are set to modify the sensitivity of the drive comfort score if the performance data indicates that the occupant of vehicle 12 has been driving below the road speed limit due to discomfort and / or stress caused by the drive system. After Block 120b, the exemplary embodiment of Block 120 is complete, and Method 100 continues as described above.
[0071] System 10 and Method 100 of this disclosure offer several advantages. By generating and maintaining Database 32, as described above with respect to Block 104, Database 32 can be frequently populated and updated by multiple vehicles, resulting in increased coverage and accuracy. Additionally, calculating the route drive comfort score and route tilt comfort score for multiple routes allows occupant comfort to be enhanced by selecting a more comfortable route, for example, using Method 100. As a further advantage, Method 100 informs the occupant of roadway segments with segment drive comfort scores and / or segment tilt comfort scores, thereby increasing the occupant's awareness and reducing the likelihood of collisions.
[0072] The description of the present disclosure is merely exemplary, and variations that do not deviate from the main point of the present disclosure are deemed to fall within the scope of protection of the present disclosure. Such variations are not to be considered a deviation from the inventive concept and the scope of protection of the present disclosure.
Claims
[1] System (10) for route planning of a vehicle (12) based on the road characteristics, wherein the system (10) comprises: a global navigation satellite system (GNSS) (16) for determining a geographic location of the vehicle (12); a vehicle communication system (20) for communicating with server systems (28); and a vehicle controller (14) in electrical connection with the GNSS (16) and the vehicle communication system (20), wherein the vehicle controller (14) is programmed: to determine a vehicle mass, a vehicle height and a vehicle width; to receive a navigation request from an occupant of the vehicle (12); and to determine a navigation route using at least the GNSS (16) and the vehicle communication system (20) in response to receiving the navigation request, wherein the navigation route is based at least partially on the vehicle mass, vehicle height and vehicle width, wherein, in order to determine the navigation route, the vehicle controller (14) is further programmed as follows: to determine the geographical location of the vehicle (12) using the GNSS (16); to transmit the vehicle's geographical location (12), navigation request, vehicle mass, vehicle height and vehicle width to a server controller (30); and to receive the navigation route from the server controller (30) using the server controller (30), which is programmed as follows: to determine several possible routes at least partially based on the geographical location of the vehicle (12), each of which satisfies the navigation requirement; to determine a route-drive comfort score for each of the several possible routes; and to select the navigation route from the several possible routes at least partially based on the route drive comfort score for each of the several possible routes, wherein the server controller (30) is electrically connected to a database, wherein the database contains several segment drive comfort records, wherein each of the several segment drive comfort records corresponds to one of several road segments of several lanes, and wherein each of the several segment drive comfort records has a location attribute, a vehicle class attribute and a drive comfort score attribute, wherein, in order to determine the route drive comfort score for each of the several possible routes, the server controller (30) is further programmed as follows: to determine a vehicle class of the vehicle (12) at least partially based on the vehicle mass, vehicle height and vehicle width; to retrieve a subset of the multiple segment drive comfort records from the database, wherein the location of each subset of the multiple segment drive comfort records is along one of the multiple possible routes, and wherein the vehicle class of each subset of the multiple segment drive comfort records corresponds to the vehicle class of vehicle (12); and The route drive comfort score for each of the multiple possible routes is determined by summing the drive comfort score of each subset of the multiple segment drive comfort data records along each of the multiple possible routes. [2] System (10) according to claim 1, wherein, in order to determine the vehicle mass, vehicle height and vehicle width, the vehicle controller (14) is further programmed: to recover a given mass of the vehicle (12), a given height of the vehicle (12) and a given width of the vehicle (12) from a non-transient memory of the vehicle controller (14); to determine a towing status of the vehicle (12), wherein the towing status includes a trailer operating status and a non-trailer operating status; in response to the determination that the towing status is the trailer operating status, to request the occupants of the vehicle (12) to provide a trailer weight, trailer height and trailer width; In response to the determination that the trailer operating status is the non-trailer operating status, to determine the vehicle mass as the specified mass of the vehicle (12), the vehicle height as the specified height of the vehicle (12), and the vehicle width as the specified width of the vehicle (12); and In response to the determination that the trailer operating status is the trailer operating status, the vehicle mass is to be determined as a sum of the specified mass of the vehicle (12) and the trailer weight, the vehicle height as a greater of the specified height of the vehicle (12) and the trailer height, and the vehicle width as a greater of the specified width of the vehicle (12) and the trailer width. [3] System (10) according to claim 1, wherein the database is populated by generating the multiple segment drive comfort data sets, and wherein, in order to generate one of the multiple segment drive comfort data sets, the server controller (30) is further programmed as follows: to receive one of several performance data sets for one of the several road segments from at least one vehicle (12); to determine a vehicle class of at least one vehicle (12); to calculate one of several normalized performance data sets by normalizing one of the several performance data sets; to calculate one of several weighted normalized performance datasets by multiplying one of the several normalized performance datasets by several predefined weights; and to generate one of the several segment drive comfort data sets, wherein the location of one of the several segment drive comfort data sets is the location of one of the several road segments, wherein the vehicle class of one of the several segment drive comfort data sets is the vehicle class of the at least one vehicle (12), and wherein the drive comfort score of one of the several segment drive comfort data sets is a sum of one of the several weighted normalized performance data sets. [4] System (10) according to claim 1, wherein the server controller (30) is further programmed as follows: to determine a route gradient comfort score for each of the several possible routes; and to select the navigation route from the several possible routes, at least partially based on the route drive comfort score and the route incline comfort score for each of the several possible routes. [5] System (10) according to claim 4, wherein, in order to determine the route inclination comfort score for each of the multiple possible routes, the server controller (30) is further programmed as follows: to recover a road speed limit and a road gradient angle for each of the multiple road segments; to determine a segment-tilt comfort score for each of the several road segments of each of the several possible routes, at least partially based on a vehicle power-to-weight ratio for each of the several road segments of each of the several possible routes; and to determine the route gradient comfort score for each of the several possible routes, at least partially, based on the segment gradient comfort score for each of the several road segments of each of the several possible routes. [6] System (10) according to claim 5, wherein, in order to calculate the vehicle power-to-weight ratio for one of the several road segments of the several possible routes, the server controller (30) is further programmed as follows: to determine a maximum power of a vehicle powertrain (12); To calculate an estimated power output to traverse one of the several road segments of the several possible routes, using an estimated power output model: Plague=(Cd∗ρa∗v32)∗A+(Crr∗g∗v)∗M+(v∗g∗sin α)∗M where P est the estimated performance is C d a drag coefficient of the vehicle (12) is, ρ aan air density in an environment surrounding the vehicle, v is the road speed limit of one of the several road segments, A is a frontal cross-sectional area of the vehicle (12), C rr a rolling resistance coefficient of the vehicle (12), g is a gravitational constant, M is the vehicle mass, and α is the road inclination angle of one of the several road segments; and to calculate the vehicle power ratio for one of the several road segments of the several possible routes by dividing the estimated power required to travel one of the several road segments of the several possible routes by the maximum power of the vehicle's powertrain (12).