Speed control system and method based on navigation information
By receiving mission information and forward-looking data, and using model predictive control to generate speed curves, the vehicle speed is automatically adjusted, solving the problems of human error and non-optimal fuel consumption in traditional cruise control systems, thus achieving more punctual arrival and improved fuel economy.
Patent Information
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- CUMMINS LTD
- Filing Date
- 2024-11-08
- Publication Date
- 2026-05-08
AI Technical Summary
Traditional cruise control systems rely on manual speed adjustments, which are prone to human error and fail to effectively utilize forward-looking information, resulting in suboptimal fuel consumption.
By receiving mission information and forward-looking data, the system uses model predictive control and optimization solvers to generate speed curves and automatically adjusts vehicle speed to optimize fuel consumption.
It enabled more timely arrival at mission destinations, reduced fuel consumption and human error, and improved fuel economy.
Smart Images

Figure CN121989934A_ABST
Abstract
Description
Technical Field
[0001] This disclosure relates to systems, apparatus, and methods for determining speed, particularly vehicle-related speeds (e.g., vehicle speed in kilometers per hour), which are determined based on mission information and used to control the vehicle to travel at the determined speed. Background Technology
[0002] Cruise control is a function that maintains vehicle speed without continuous driver input. Traditional cruise control systems allow drivers to set a stable speed during long highway journeys, reducing fatigue and fuel consumption. More advanced versions, such as adaptive cruise control, use radar or cameras to adjust the vehicle speed according to traffic conditions, improving safety and efficiency. Summary of the Invention
[0003] One aspect of the present invention relates to a system for controlling the speed of a device (such as a vehicle). The system includes one or more processors and one or more storage devices storing instructions that, when executed by the one or more processors, cause the one or more processors to perform operations. These operations include: receiving, via a network, task information about the device, including task distance and expected task duration; receiving data about a first speed of the device; receiving data about a second speed of the device based on the task distance and expected task duration; and operating a powertrain associated with the device to switch from the first speed to the second speed.
[0004] Another aspect of the invention relates to a vehicle. The vehicle includes a controller comprising one or more processors coupled to one or more storage devices. The controller is configured to: receive vehicle task information, including task distance and expected task duration; receive information regarding at least one speed limit; receive a first vehicle speed from one or more vehicle-related sensors; determine a second vehicle speed based on the expected task duration, task distance, and speed limit information; and operate a vehicle-related powertrain to transition from the first vehicle speed to the second vehicle speed.
[0005] Another aspect of the invention relates to a method. The method includes: receiving, via a network, device task information, including task distance and expected task duration, by a controller; receiving, from one or more sensors, data regarding a first speed of the device; determining, by the controller, a second speed of the device based on the task distance and expected task duration; and operating, by the controller, a powertrain associated with the device to switch from the first speed to the second speed.
[0006] This disclosure provides numerous specific details to convey a full understanding of the subject matter. The features described in this application's subject matter can be combined in any suitable manner in one or more embodiments and / or implementations. In this regard, one or more features of one aspect of the invention can be combined with one or more features of different aspects of the invention. Furthermore, additional features may be present in some embodiments and / or implementations, which may not be present in all embodiments or implementations. Attached Figure Description
[0007] Figure 1 This is a block diagram of a system for controlling the speed of a vehicle or device according to an example embodiment.
[0008] Figure 2 According to an example embodiment Figure 1 The diagram shows a block diagram of the vehicles in the system.
[0009] Figure 3 It is a graph of vehicle speed during a mission, displayed as a speed curve according to an example embodiment.
[0010] Figure 4 It is a graph of vehicle speed during a mission, displayed as a speed curve according to an example embodiment.
[0011] Figure 5 This is a flowchart of a task-based operation device method according to an example embodiment. Detailed Implementation
[0012] The following is a more detailed description of various concepts and their implementations related to methods, apparatuses, computer-readable media, and systems for operating a device based on device task timing, receiving, and / or identification speed. Before turning to the accompanying drawings, which detail certain example embodiments, it should be understood that this disclosure is not limited to the details or methods described in the description or drawings. It should also be understood that the terminology used herein is for descriptive purposes only and should not be considered limiting.
[0013] As used in this article, the term "fuel consumption" refers to the fuel consumption rate of an engine system, typically expressed as a ratio of distance to fuel per unit distance, such as "miles per gallon" ("MPG"). In powertrains that include electric motors and batteries, such as hybrid powertrains and battery electric powertrains, battery consumption can be expressed as a ratio of power consumption to distance or time, such as kilowatt-hours or kilowatts per mile.
[0014] As used herein, the term "model" refers to a system description expressed using mathematical concepts and / or language. More specifically, a "model" can correlate a first set of values (e.g., inputs) with a second set of values (e.g., outputs). For example, a model can correlate sensor data (such as sensor data about vehicle operation) with a target vehicle speed. In some embodiments, the model can be or include a statistical model or other suitable model. For example, a statistical model can embody a set of statistical assumptions about the statistical relationship between one or more input values and one or more output values. For example, a statistical model can include a regression model (such as a linear regression model) that is a predictive relationship between inputs and outputs. In some embodiments, the model can be or include a machine learning model. A machine learning model is a computer-implemented program that can identify patterns or make decisions from previously unseen datasets. For example, a machine learning model can parse input values, such as sensor data or other data about vehicle operation, to identify patterns and determine the desired output value based on the inputs and a previously trained dataset.
[0015] As used herein, the term "operational data" and similar terms refer to data relating to the operation of a system, such as an engine system. In some embodiments, operational data may include system operating settings, values, or other information. For example, operational data for an engine system may include the ratio of the amount of air supplied to an internal combustion engine for combustion to the amount of fuel (referred to herein as the "air-fuel ratio"). In some embodiments, operational data may be obtained by measurement (e.g., via one or more physical sensors) or estimation (e.g., via one or more virtual sensors, computer equipment, or processing circuitry).
[0016] As described herein, conventional speed control systems (such as cruise control systems) can be improved by determining and managing speed based on expected travel time. From both a technical and benefit perspective, this disclosure can be used in conjunction with advanced driver assistance systems (ADAS) to achieve improved speed control systems. Furthermore, this disclosure provides various fleet management benefits, enabling one or more vehicles in a fleet to complete tasks more frequently within the expected task duration compared to conventional cruise control systems. As described herein, this disclosure provides various fuel efficiency benefits through speed curves, enabling the vehicle's powertrain to operate more efficiently than before. This disclosure can also provide various fuel efficiency benefits through acceleration curves. For example, model predictive control or other optimization solvers can minimize vehicle acceleration to minimize fuel consumption, as greater acceleration may correspond to greater fuel consumption. This disclosure can utilize improvements from ADAS and / or any other forward-looking data to generate speed curves. These improvements may include communicating and receiving data on the start and end routes, expected travel times for the start and end routes, traffic and / or other appropriate logistical or environmental data related to the vehicle's route.
[0017] In one example, the device (such as a vehicle) includes a controller. The controller includes a communication interface, at least one processor, and one or more storage devices. The communication interface is structured to communicate with a network and one or more components of the device (e.g., sensors, motors, batteries, etc.). The storage devices store instructions that, when executed by the one or more processors, cause the one or more processors to perform operations. These operations include: receiving device task information via the network through the communication interface. The task information may include the task distance and the expected task duration. This information may also include forward-looking information that may affect the task, such as speed limits, road conditions, weather conditions, traffic patterns, etc. These operations also include receiving data about a first speed of the device. This data may be collected and transmitted by sensors (e.g., speedometers). These operations also include receiving data about a second speed of the device based on the task distance and the expected task duration. For example, the second speed can be determined by comparing the task distance with the distance the device has traveled, and by comparing the time elapsed since the start of the task with the expected task duration. For example, the distance traveled may be determined by positioning sensors (e.g., GPS sensors, GNSS sensors, RTK sensors, etc.) and transmitted to the controller. For example, the time elapsed since the start of the task may be measured and transmitted by a timer. These operations also include operating the powertrain associated with the equipment to change the equipment from a first speed to a second speed. Advantageously, adjusting speed based on task arrival time allows operators to be more punctual than with traditional systems (e.g., arriving before the expected task arrival time). Traditional systems typically rely on manual speed adjustments by the operator, which is prone to human error and does not consider forward-looking information (e.g., upcoming traffic, weather, construction, etc.). Furthermore, considering the time factor can improve fuel economy by optimizing the speed curve during the task, avoiding multiple excessive accelerations to "catch up," thus saving fuel. These and other features and benefits will be described in more detail below.
[0018] Now for reference Figure 1 This illustrates a block diagram of a system for controlling the speed of a vehicle or other equipment according to an exemplary embodiment. Figure 1 As shown, system 100 includes a remote computing system (shown as cloud computing system 10), vehicle 20, and user equipment 30. The various components of system 100 communicate with each other. Specifically, the computing and / or control systems of vehicle 20 and user equipment 30 are communicatively coupled to cloud computing system 10 via a network, thereby allowing and enabling the direct or indirect exchange of data, values, instructions, messages, etc. (in...) Figure 1 (Indicated by a double-headed arrow). The network may include one or more of the following: cellular network, Internet, Wi-Fi, Wi-Max, proprietary provider network, proprietary service provider network, and / or any other type of wireless and / or wired network.
[0019] User equipment 30 can be a computing device associated with a user. This user can be a fleet operator (e.g., a fleet manager) or another user (e.g., an operator of vehicle 20). User equipment 30 can be a mobile device, such as a smartphone, tablet, laptop, desktop computer, or any other suitable computing system. In some examples, user equipment 30 is integrated into vehicle 20.
[0020] Remote computing system 10 is a back-end computing system, such as a back-end cloud computing system. Therefore, "remote computing system" and "cloud computing system" are used interchangeably herein, referring to a computing or data processing system with terminals located remotely from the central processing unit (e.g., processing circuitry 202), through which users and / or other computing systems communicate with the central processing unit. In some embodiments, remote computing system 10 is part of a larger computing system, such as a multi-purpose server or other multi-purpose computing system. In other embodiments, remote computing system 10 is implemented on third-party computing equipment operated by a third-party service provider (e.g., AWS, Azure, GCP, and / or other third-party computing services).
[0021] Remote computing system 10 is operated by a service provider (e.g., an enterprise). Therefore, in some embodiments, remote computing system 10 is a service and / or system / component provider computing system, and is thus controlled, managed, or otherwise associated with the service and / or system / component provider (e.g., an engine manufacturer, vehicle manufacturer, exhaust aftertreatment system manufacturer, etc.). In the illustrated example, remote computing system 10 is operated and managed by an engine manufacturer (which may also manufacture and commercialize other goods and services). Therefore, employees or other operators associated with the service and / or system / component provider can operate remote computing system 10.
[0022] In some embodiments, vehicle 20 is a vehicle having a power unit or prime mover (such as an engine, e.g., an internal combustion engine, an electric motor). Although one vehicle 20 is illustrated, it should be understood that system 100 may include multiple vehicles (e.g., a fleet or group of equipment). In the illustrated example, the equipment is a vehicle. The vehicle may also include a battery or other energy storage device. Vehicle 20 can be any type of on-road or off-road vehicle, including but not limited to wheel loaders, forklifts, long-haul trucks, medium-duty trucks (e.g., pickup trucks), cars, sports cars, tanks, and any other type of vehicle. Vehicle 20 is shown to include a controller 200 and a telematics device 250. The controller 200 and the telematics device 250 will... Figure 2 This will be discussed in more detail later.
[0023] As an example, controller 200 may receive navigation information (e.g., task destination / endpoint location, expected arrival time, expected route, etc.). For example, a user may provide this navigation information to user device 30, which in turn transmits the navigation information to controller 200. In some examples, a fleet manager may transmit navigation information to cloud computing system 10 and / or controller 200 via user device 30. Cloud computing system 10 and / or controller 200 may receive navigation information regarding the “task” of vehicle 20. As used herein, a vehicle “task” refers to the vehicle’s starting or current location, the vehicle’s destination, and the path between the starting / current location and the end point (i.e., the destination). In other words, a task is a path or route between two or more points. In some embodiments, a “task” includes time constraints affecting the distance a vehicle can travel in the task (e.g., the maximum allowed time for the vehicle to reach a desired location, such as the destination). Thus, for example, a “task” may include a task distance defined as the distance between a starting point and a destination. A “task” may also include the expected task duration, defined as the expected time for the vehicle to travel from the starting point to the destination. In some examples, the expected task duration is a time range defined as the anticipated time for the vehicle to travel from the origin to the destination, plus a predetermined acceptable extension (i.e., a "time margin"). Therefore, vehicle task information may include the origin, current location, destination, the path between the origin and / or the current location and the destination, and the time constraints / expectations for the task duration (in some embodiments).
[0024] The vehicle's "mission" may also be influenced by various vehicle 20-related information that may affect the mission, such as vehicle type and / or the type of cargo carried or transported by vehicle 20. Controller 200 may also receive operational data about vehicle 20, including operational data that remains constant or relatively constant during the mission, such as total vehicle weight (e.g., vehicle weight plus vehicle payload), and / or information that changes during the mission (dynamic information), such as vehicle speed, vehicle direction, engine speed, engine torque, transmission setting or gear, etc. In some arrangements, operational data may include sensor data received from one or more sensors. These sensors may be physical or virtual sensors. Cloud computing system 10 may transmit "look-ahead data," i.e., mission information that may affect vehicle 20 ahead on its route. For example, look-ahead data may include road conditions, weather conditions, traffic patterns, hazardous situations, legal speed limits, steering navigation, gas stations, charging stations, rest stops, and / or other information about the mission. The controller can use mission information, look-ahead data, and operational data to determine a "speed profile."
[0025] As used herein, a “speed curve” refers to a set of target speed values for vehicle 20 during a mission (e.g., speed values at various locations and / or points in time along the mission route). This set of target speed values may be expressed as a function of another variable, such as distance or time. For example, a speed curve may be expressed as a set of target vehicle speed values within a predetermined distance (e.g., 1 km, 2 km, etc.) ahead of vehicle 20 (e.g., along vehicle 20’s mission route). In some arrangements, the distance or time values may be measured relative to the current distance or time. In other arrangements, the distance or time values may be measured relative to the distance from the starting position or the time of day, respectively. Controllers or control systems may also use operational data about vehicle 20 and / or the powertrain to determine the target vehicle speed values and / or the determined vehicle speed curve. In some examples, this set of target speed values is updated during the mission. For example, if the operator of vehicle 20 stops for a rest, the target speed for the remainder of the mission may be increased relative to the original value to compensate for the rest time. The increase in target speed is intended to compensate for the time lost during the rest period. The generated speed curve may also take into account the expected total travel time of vehicle 20.
[0026] In various embodiments, the generated speed profile can determine the optimal speed that minimizes or brings the vehicle's fuel consumption characteristics and / or energy use as close as possible to the desired value. For example, controller 200 can apply model predictive control or other optimization solvers to minimize vehicle acceleration to minimize fuel consumption, as greater acceleration may correspond to greater fuel consumption. Alternatively, controller 200 can utilize forward-looking data (e.g., upcoming traffic conditions, road conditions, and environmental factors) to reduce acceleration or keep the vehicle at a relatively constant speed in areas with less traffic and consistent speed limits. In some examples, if vehicle 20 is ahead of its expected travel time, controller 200 can operate powertrain 252 to decelerate vehicle 20 to a predetermined speed relative to the speed limit. In some examples, controller 200 can receive from remote computing system 10 a speed or speed range corresponding to a predetermined fuel consumption characteristic, which is a favorable or predetermined acceptable fuel efficiency rate (e.g., minimum fuel consumption in miles per gallon, kilometers per liter, etc.) for a particular brand and model of vehicle 20 driven by the operator, for example based on historical data, test data, statistics, etc. Therefore, when traffic is light and time permits (e.g., when slowing down to a more efficient speed still allows for the expected mission duration / arrival before the expected mission arrival time), the controller 200 can operate the powertrain to cruise at a speed corresponding to the predetermined desired / acceptable fuel consumption characteristics or within the most efficient speed range transmitted by the telecomputing system 10.
[0027] In various embodiments, controller 200 may use look-ahead data and operational data to determine an "acceleration profile". The look-ahead data for the acceleration profile may include data or parameters relating to how and / or when the vehicle accelerates. For example, parameters affecting vehicle acceleration may include stop-and-go traffic conditions, traffic lights, traffic signs (stop signs, yield signs, speed limit signs, etc.), and / or other information such as speed limits, speed limit changes, indications affecting traffic flow (e.g., construction, stranded vehicles, etc.). An acceleration profile may refer to a set of target acceleration values for vehicle 20 during a mission. An acceleration profile may be similar to the speed profile described herein. An acceleration profile may be determined in a manner similar to a speed profile. In various embodiments, an acceleration profile may be determined if fuel saving and / or the vehicle's state of charge are required. An acceleration profile may be determined as a supplement to or alternative to a speed profile.
[0028] In an exemplary embodiment, controller 200 and / or telecomputing system 10 use speed curves and / or acceleration curves to control the operating parameters of vehicle 20. In one embodiment, vehicle 20 includes an automatic or semi-automatic transmission, which includes a shifting or gear selection scheme (i.e., an "automatic control mode") that automatically selects and switches specific transmission settings or gears without human intervention. In this example, the vehicle operator or fleet manager can choose to activate the automatic control mode at the start of a mission or at any point during the mission. In another embodiment, when the transmission is a manual transmission (i.e., the transmission shifts are controlled by the operator), controller 200 can prompt the operator to make transmission setting changes through visual, auditory, and / or tactile cues. For example, a user interface on the dashboard may receive a signal from controller 200 prompting the driver to perform a double downshift on a manual transmission. The user interface can be an operator input / output device, which may include, but is not limited to, an interactive display, a touchscreen device, one or more buttons and switches, a voice command receiver, etc. In some examples, the user interface is located on user device 30. In any of these cases, controlling the transmission can control the speed of vehicle 20.
[0029] The controller 200 can adjust the fuel supply to influence, and in particular control and / or regulate, engine speed and torque, thereby controlling the speed of the vehicle 20. For example, the controller 200 can increase fuel delivery (e.g., fuel injection rate and / or quantity) to increase the speed of the vehicle 20. When more fuel is injected into the engine, higher power output can be obtained, which may result in higher engine speed and greater torque, enabling the vehicle to accelerate and / or increase speed. Similarly, the controller 200 can reduce the intake air volume to limit the amount of air entering the engine, thereby slowing down or reducing fuel combustion within the engine. Reduced combustion leads to lower power output, lower engine speed and torque, and thus a decrease in vehicle speed.
[0030] The controller 200 can also adjust the intake air volume to control combustion within the engine, thereby controlling the speed of the vehicle 20. For example, the controller 200 can increase the intake air volume to allow more air into the engine's combustion chamber, which may result in a greater fuel injection quantity required to achieve stoichiometric combustion. More fuel combustion produces greater power and higher engine speeds, enabling the vehicle 20 to accelerate and / or increase its speed.
[0031] Furthermore, controller 200 can control the turbocharger level to control the speed of vehicle 20. For example, controller 200 can operate the turbocharger to compress the intake air, increasing its density before it enters the engine, thereby providing more oxygen for combustion and enabling the engine to burn more fuel. This, in turn, allows vehicle 20 to accelerate / increase its speed. Conversely, when deceleration is required (e.g., when the operator applies the brakes, etc.), controller 200 can reduce the amount of compressed air entering the engine. This reduction restricts the combustion process, resulting in reduced power output and lower engine speed, thereby effectively reducing the speed of vehicle 20. Although described separately, controller 200 can combine control of fuel supply, intake air, and turbocharger to affect engine speed, and thus the overall speed of vehicle 20.
[0032] Now for reference Figure 2 This diagram illustrates a block diagram of a vehicle 20 according to an exemplary embodiment. The vehicle 20 includes a powertrain 252, input / output (I / O) devices 254, one or more sensors 256, and optional telematics devices 250. Figure 1 and Figure 2 As shown, vehicle 20 includes controller 200. Controller 200 can communicate and / or be operationally connected to powertrain 252, I / O devices 254 and sensors 256, as well as other components of vehicle 20.
[0033] In some embodiments, powertrain 252 includes an engine. The engine may be an internal combustion engine (ICE). The ICE may consume fuel (e.g., diesel, gasoline, propane, natural gas, hydrogen, etc.) to generate power. In other embodiments, powertrain 102 may be or include a hybrid powertrain system having a combination of an internal combustion engine and at least one electric motor coupled to at least one battery (or, in some embodiments, a fully electrified powertrain). In some embodiments, the hybrid powertrain system may be configured as a mild hybrid powertrain, a parallel hybrid powertrain, a series hybrid powertrain, or a series-parallel hybrid powertrain. In other embodiments, powertrain 252 may be or include a battery electric powertrain having at least one electric motor coupled to at least one battery. Powertrain 252 may also include a transmission whose configuration can be adapted to any of the powertrain arrangements described above. In various embodiments, such as plug-in BEVx and BEV, charging decisions can be optimized and may be recommended to the autonomous driving system for motion planning and control.
[0034] The powertrain 252 includes a transmission. As described above, the transmission can be automatically controlled by the controller 200, manually controlled by the operator of the vehicle 20, or some combination of both (e.g., an automatic-manual transmission). In an exemplary embodiment, the vehicle operator can choose to enable automatic control of the transmission (i.e., activate the "automatic control mode") at the start of a task or at any point during the task. For example, the vehicle operator can choose to activate the automatic control mode when entering a highway and can choose to deactivate the automatic control mode when leaving a highway. In this way, the automatic control mode can serve as an alternative to conventional cruise control, in which the operator manually changes the set speed. In automatic control mode, the controller 200 automatically controls / operates the transmission based on speed and / or acceleration curves.
[0035] I / O device 254 refers to the input, output, and / or input / output devices of vehicle 20, which, among other operations, enable information exchange between controller 200 and the operator of vehicle 20. This information may relate to one or more components of vehicle 20 and / or one or more determinations of controller 200. I / O device 254 enables the operator of vehicle 20 to communicate with controller 200 and one or more components of vehicle 20. For example, input / output device 254 may include, but is not limited to, interactive displays, touchscreen devices, one or more buttons and switches, voice command receivers, etc. In this way, operator input / output device 254 can provide the operator with one or more instructions or notifications, such as fault indicator lights (MIL).
[0036] Sensor 256 is connected to controller 200, enabling controller 200 to monitor, receive, and / or acquire data indicative of the operation of vehicle 20 (this may be referred to as vehicle-related operating data, operating parameters, and similar terms). In this regard, sensor 256 may include one or more physical (actual) and / or virtual sensors.
[0037] In some embodiments, sensor 256 may include a temperature sensor. The temperature sensor acquires data to indicate, or, if virtual, determine, the approximate temperature of various components or systems at or approximately the location where sensor 256 is positioned.
[0038] In some embodiments, sensor 256 may include an emission sensor for acquiring data indicative of engine emissions, or, if a virtual sensor, determining information about engine emissions, such as the approximate amount or concentration of certain emissions in the exhaust gas stream at or approximately at its location (e.g., directly downstream of the engine, directly downstream of the aftertreatment system, etc.). Sensor 256 may also include a pressure sensor for sensing (or, in the case of a virtual sensor), pressure values on the upstream and downstream sides of one or more components of the aftertreatment system. The upstream and downstream pressure values can be used to determine pressure changes in the aftertreatment system components. Sensor 256 may include a flow sensor configured to acquire data or information indicative of the flow rate of a gas or liquid through vehicle 20 (e.g., exhaust gas flow rate through the aftertreatment system, fuel flow rate through the engine, exhaust gas recirculation flow rate at a specific location, charge flow rate at a specific location, oil flow rate at various locations, hydraulic flow rate at a specific location, etc.). The flow sensor may be coupled to the engine, the aftertreatment system of vehicle 20, and / or other locations of vehicle 20.
[0039] Sensor 256 may also include one or more speed sensors configured to provide speed signals to controller 200 indicating vehicle speed and / or engine speed. The sensor may also include a transmission setting sensor configured to provide signals to controller 200 indicating the current gear selection setting. These speed signals and gear selection signals can be used to determine speed profiles and / or acceleration profiles. In some embodiments, a sensor may provide the vehicle speed (e.g., miles per hour), while in other embodiments, the vehicle speed may be determined by other sensed or determined operating parameters of the vehicle (e.g., engine speed in revolutions per minute can be correlated with vehicle speed using one or more formulas, lookup tables, etc.).
[0040] Sensor 256 may include a fuel tank level sensor for determining the fuel level in the fuel tank of vehicle 20, thereby enabling fuel economy determination based on vehicle speed relative to engine fuel consumption (i.e., determining distance per unit of fuel consumption, such as miles per gallon or kilometers per liter). Other examples of sensors 256 that may be used individually or in combination include, but are not limited to, oxygen sensors, engine speed sensors, mass air flow (MAF) sensors, and intake manifold absolute pressure (MAP) sensors for determining the fuel economy of vehicle 20. Based on the foregoing, controller 200 may determine the fuel economy of vehicle 20 and provide it to the operator via I / O device 254. In electric and / or hybrid vehicles, sensor 256 may include a battery sensor for determining the state of charge of one or more batteries of vehicle 20, enabling controller 200 to determine distance consumed per unit of battery charge.
[0041] In some embodiments, sensor 256 may include positioning sensors (e.g., GPS sensors, GNSS sensors, RTK sensors, etc.), computer vision sensors (e.g., cameras, radar sensors, lidar sensors, etc.) and / or other sensors suitable for detecting the position of vehicle 20.
[0042] In some embodiments, sensor 256 may include a load sensor for acquiring data indicating the load carried by vehicle 20, or, if it is a virtual sensor, for determining the load carried by vehicle 20 (e.g., in kilograms, pounds, etc.). In these embodiments, any of the sensor data described above may also include an indication of the load carried by vehicle 20.
[0043] It should be understood that vehicle 20 may also include other different / additional sensors, such as an accelerator pedal position (APP) sensor, a pressure sensor, an engine torque sensor, a battery sensor, etc. Those skilled in the art will recognize the high configurability of the sensors and their associated locations within vehicle 20. Controller 200 is configured to provide operational data to a communication-coupled device (e.g., remote computing system 10) via communication interface 220 or, in some embodiments, via telematics device 250.
[0044] In some embodiments, controller 200 includes telematics device 250. In other embodiments, controller 200 may be coupled to telematics unit or device 250. Telematics device 250 may be configured as any type of telematics unit. Thus, telematics device 250 may include, but is not limited to: a location positioning system (e.g., Global Positioning System) for tracking the location of vehicle 20 (e.g., latitude and longitude data, elevation data, etc.), one or more storage devices for storing tracking data, one or more electronic processing units for processing tracking data, and a communication interface for facilitating data exchange between telematics device 250 and one or more remote devices (e.g., cloud computing system 10, user equipment 30, etc.). Telematics device 250 may communicate with remote servers, other vehicles, and other systems remote to the vehicle (i.e., V-2-X, where “X” can be another vehicle, a remote server, etc.). In this regard, the communication interface may be configured as any type of mobile communication interface or protocol, including but not limited to: Wi-Fi, WiMax, Internet, radio, Bluetooth, ZigBee, satellite, radio, cellular, GSM, GPRS, LTE, etc. The telematics device 250 may also include a communication interface for communicating with the controller 200 of the vehicle 20. The communication interface for communicating with the controller 200 may include any type and number of wired and wireless protocols (e.g., any standard under IEEE 802, etc.). For example, wired connections may include serial cables, fiber optic cables, SAE J1939 buses, CAT5 cables, or any other form of wired connection. In contrast, wireless connections may include the Internet, Wi-Fi, Bluetooth, ZigBee, cellular, radio, etc. In one embodiment, a controller local area network (CAN) bus including any number of wired and wireless connections provides signal, information, and / or data exchange between the controller 200 and the telematics device 250. In other embodiments, a local area network (LAN), a wide area network (WAN), or an external computer (e.g., using the Internet through an Internet service provider) may provide, facilitate, and support communication between the telematics device 250 and the controller 200. In another embodiment, communication between the telematics device 250 and the controller 200 is performed via the Unified Diagnostic Services (UDS) protocol. All these variations are intended to fall within the spirit and scope of this disclosure. The controller 200 is coupled to the sensor 256, particularly communicatively (e.g., via communication interface 220). Therefore, the controller 200 is configured to receive data from one or more sensors 256 and to provide instructions / information to one or more sensors 256. The controller 200 can use the received data to control one or more components of the vehicle 20.
[0045] The controller 200 is configured to at least partially control the operation of the vehicle 20 and its associated subsystems (such as the powertrain 252). Communication between the components can be achieved through any number of wired or wireless connections. For example, wired connections may include serial cables, fiber optic cables, CAT5 cables, or any other form of wired connection. In contrast, wireless connections may include the Internet, Wi-Fi, cellular networks, radio, etc. In one embodiment, a controller local area network (CAN) bus provides the exchange of signals, information, and / or data. The CAN bus includes any number of wired and wireless connections. Because the controller 200 and... Figure 2 The systems and components within can communicate with each other, and the controller 200 is configured to be able to... Figure 2 One or more components shown receive data.
[0046] The controller 200 includes at least one processing circuit 202 having at least one processor 204 and at least one memory or storage device 206. The controller also includes a speed control circuit 218 and a communication interface 220. The controller 200 is configured to generate a recommended speed profile for the powertrain 252 (e.g., via the speed control circuit 218) and operate the powertrain 252 according to the recommended speed profile.
[0047] At least one processor 204 may be one or more single-chip or multi-chip processors, digital signal processors (DSPs), application-specific integrated circuits (ASICs), field-programmable gate arrays (FPGAs) or other programmable logic devices, discrete gate or transistor logic, discrete hardware components, or any combination thereof, for performing the functions described herein. Thus, at least one processor 204 may be a microprocessor, a state machine, or other suitable processor. At least one processor 204 may also be implemented as a combination of computing devices, such as a combination of a DSP and a microprocessor, multiple microprocessors, one or more microprocessors cooperating with a DSP core, or any other such configuration. In some embodiments, one or more processors may be shared by multiple circuits (e.g., speed control circuitry 218 may include or otherwise share the same processor, which in some example embodiments may execute instructions stored or otherwise accessed through different regions of memory). Alternatively or additionally, one or more processors may be configured to perform certain operations independently of one or more coprocessors. In other example embodiments, two or more processors may be bus-coupled to enable independent, parallel, pipelined, or multithreaded instruction execution. All these variations are intended to fall within the scope of this disclosure.
[0048] At least one storage device 206 (e.g., memory, storage cell, storage device) may include one or more devices (e.g., RAM, ROM, flash memory, hard disk storage) for storing data and / or computer code to perform or facilitate the various processes, layers, and modules described herein. At least one storage device 206 may be communicatively coupled to at least one processor 204 to provide computer code or instructions to at least one processor 204 for performing at least a portion of the processes described herein. Furthermore, at least one storage device 206 may be or include tangible, non-transient volatile memory or non-volatile memory. Therefore, at least one storage device 206 may include database components, object code components, script components, or any other type of information structure for supporting the various activities and information structures described herein.
[0049] Storage device 206 can store data related to vehicle 20 and the mission. Vehicle data 214 includes information received from vehicle 20 and / or metadata containing information about one or more vehicles 20. For example, vehicle data 214 includes location information, such as current or past vehicle location and / or vehicle travel distance. Vehicle data 214 also includes vehicle operating data, such as powertrain information (e.g., engine fuel consumption rate, total fuel consumption over a predetermined time period or distance, battery state of charge, battery consumption rate, total battery charge consumption rate over a predetermined time or distance, health status of exhaust aftertreatment system, etc.). Vehicle data 214 also includes powertrain performance information, such as powertrain operating time, powertrain idling time, powertrain exhaust data (e.g., exhaust gas / particulate concentration) and / or other powertrain operating parameters. Metadata may also include powertrain serial number, vehicle identification number (VIN), calibration identification and / or verification number, vehicle brand, vehicle model, unit number of vehicle power unit, unique identifier of vehicle controller (e.g., unique identifier (UID)) and / or vehicle maintenance history (including vehicle exhaust aftertreatment health history). Any of the above data may include additional metadata, such as the data collection time and / or the timestamp of data transmission or receipt by controller 200. The predetermined time period may include travel time, work cycles (e.g., days, weeks, months, etc.), time intervals between vehicle maintenance, predetermined vehicle lifespan, etc. Therefore, any of the above information may include corresponding metadata.
[0050] Vehicle data 214 also includes operational data about vehicle 20. Operational data may include data that remains constant or relatively constant during the mission, such as total vehicle weight (e.g., vehicle weight plus vehicle payload) and / or information that changes during the mission (dynamic information), such as vehicle speed, vehicle direction, engine speed, engine torque, transmission setting or gear, etc.
[0051] The controller 200 may receive the task distance 210 and the expected task duration 212 directly from the user device 30 or via the cloud computing system 10. As described above, a task refers to a path or route between two or more points. The task distance is defined as the distance between the origin and destination locations. In some examples, the task distance is defined as the distance from tollbooth to tollbooth or the distance from highway entrance to exit. The task may also include the expected task duration 212, defined as the expected travel time of the vehicle from the origin to the destination. In some examples, the expected task duration is a time range defined as the expected time of the vehicle from the origin to the destination plus a predetermined acceptable extension time (i.e., a "time margin value"). The expected task duration may be input, for example, by a user or provider (e.g., on the user device 30, on the remote computing system 10, or through their input, etc.). Alternatively or additionally, the task duration may be calculated by comparing the task distance with expected conditions. For example, controller 200 can acquire the task distance (e.g., through user input, by measuring the GPS distance between the start and end points, etc.) and estimate the time required to travel that distance based on expected speed limits and potential factors (such as traffic patterns or weather conditions) to determine the task duration. For example, if the task distance is 100 miles and the expected average speed is 50 mph, the task duration would be calculated as 2 hours. Controller 200 can also adjust the estimated task duration by taking into account real-time or predicted traffic conditions (such as deceleration due to congestion or inclement weather), which may result in a longer estimated duration (e.g., based on historical data, based on data from remote computing systems and / or third-party traffic data providers, etc.). Speed control circuitry 218 is configured to use task distance data 210, task duration data 212, and vehicle data 214 to determine the operating speed of vehicle 20 during the task.
[0052] Storage device 206 may also store forward-looking data transmitted from cloud computing system 10. As described above, forward-looking data 216 is information that may affect the mission. Forward-looking data 216 may include data related to road conditions ahead of the vehicle. Forward-looking data 216 may include road conditions or driving conditions information within a predetermined distance ahead of vehicle 20. For example, forward-looking data 216 may include road gradient, road curvature, speed limits, or any other data (e.g., weather conditions) related to the road or route of vehicle 20. In some embodiments, forward-looking data 216 may include information related to events along the road. For example, forward-looking data 216 may include information related to road construction activities, highway toll booths, and vehicle weighing stations. Forward-looking data 216 may also include vehicle regulatory information. For example, forward-looking data 216 may include local and / or state emission regulations, zero-emission zones, no-braking zones, etc. In some examples, forward-looking data 216 is received and / or transmitted to controller 200 by sensor 256. In other embodiments, forward-looking data is collected by cloud computing system 10 and transmitted to controller 200.
[0053] At least one processing circuit 202 can transmit mission distance 210, mission duration 212 and any associated time margin values, vehicle data 214 and look-ahead data to speed control circuit 218. As will be discussed in detail below, vehicle speed control can use all or part of the mission distance 210, mission duration 212 and any associated time margin values, vehicle data 214 and look-ahead data to generate a speed profile for a specific mission.
[0054] In one configuration, the speed control circuit 218 is embodied as a machine- or computer-readable medium that stores instructions and is executable by a processor (such as processor 204). As described herein and among other uses, the machine-readable medium facilitates the performance of certain operations to achieve the reception and transmission of data. For example, the machine-readable medium can provide instructions (e.g., commands) to acquire data. In this respect, the machine-readable medium may include programmable logic defining the frequency of data acquisition or transmission. The computer-readable medium may include code that can be written in any programming language, including but not limited to Java or similar languages and any conventional procedural programming language, such as the "C" programming language or similar programming languages. The computer-readable program code can be executed on one processor or multiple remote processors. In the latter case, the remote processors can be interconnected via any type of network (e.g., a CAN bus). In another configuration, the speed control circuit 218 is embodied as a hardware unit, such as an electronic control unit. Therefore, the speed control circuit 218 may be embodied as one or more circuit components, including but not limited to processing circuitry, network interfaces, peripheral devices, input devices, output devices, sensors, etc. In some embodiments, the speed control circuit 218 may take the form of one or more analog circuits, electronic circuits (e.g., integrated circuits (ICs), discrete circuits, system-on-a-chip (SOC) circuits, microcontrollers, etc.), telecommunication circuits, hybrid circuits, and any other type of "circuit". In this respect, the speed control circuit 218 may include any type of components for performing or facilitating the implementation of the operations described herein. For example, the circuits described herein may include one or more transistors, logic gates (e.g., NAND, AND, NOR, OR, XOR, NOT, XNOR, etc.), resistors, multiplexers, registers, capacitors, inductors, diodes, wiring, etc. The speed control circuit 218 may also include programmable hardware devices, such as field-programmable gate arrays, programmable array logic, programmable logic devices, etc. The speed control circuit 218 may include one or more storage devices for storing instructions executable by a processor of the speed control circuit 218. One or more storage devices and processors may have the same definitions as storage device 206 and processor 204. In some hardware unit configurations, speed control circuitry 218 may be geographically distributed in different locations within the vehicle relative to other components of controller 200. Alternatively, as shown, speed control circuitry 218 may be embodied in a single unit / housing, i.e., shown as controller 200.
[0055] In an exemplary embodiment, the speed control circuit 218 receives task distance 210, task duration 212, vehicle data 214, and / or look-ahead data 216 from the processing circuit 202. The speed control circuit 218 uses the data received from the processing circuit 202 to generate a speed curve and / or an acceleration curve. As described above, the speed curve is a set of target speed values for the vehicle 20 within the task distance and the expected task duration. The acceleration curve may refer to a set of target acceleration values for the vehicle 20 during a predetermined task. The acceleration curve may be similar to the speed curve described in this application. The acceleration curve can be determined in a manner similar to the speed curve.
[0056] In various embodiments, the speed control circuit 218 may utilize a deterministic solver to optimize the speed of the vehicle 20 in real time based on received data (e.g., mission distance 210, mission duration 212, vehicle data 214, look-ahead data 216). In various embodiments, the speed control circuit 218 may generate a model (e.g., a regression model, an artificial intelligence model including neural networks, etc.) that includes one or more algorithms or formulas and / or determines speed and / or acceleration curves. In some embodiments, the speed control circuit 218 may generate a lookup table to match or replace the model. For example, the speed control circuit may use formula (1) to calculate the set of speeds in the speed curve:
[0057] The velocity in the velocity curve is determined by V target Value definitions. Variable (S) represents the task distance 210 (the distance from the starting point to the destination along the task route). Variable (t) represents the time since departure, while variable (T) represents the expected task duration 212. In this example, the task distance (S) is constant (e.g., it does not change over time), while the task duration (T) is a required variable.
[0058] The task has an acceptable expected duration of 212 extended time (T) droop In the example, the speed control circuit uses formula (2) to calculate the set of velocities in the speed curve:
[0059] As shown in formulas (1) and (2) above, the target velocity (V) target Values (T, T) and time values (T, T) droop The two values are inversely proportional. Therefore, when a task has a long task duration (T) or an acceptable extension time (T0), the two values are inversely proportional. droop When the target speed is lower than that of a task with a shorter duration or no acceptable extension, the target speed is lower.
[0060] Controller 200 may receive feedback data via, for example, communication interface 220. This feedback data indicates system operation and / or changes in conditions that vehicle 20 may encounter. For example, controller 200 may receive feedback data from cloud computing system 10 and / or user equipment 30, indicating that road speed limits have changed (e.g., increased relative to currently encountered speed limit signs). In various embodiments, sensor 256 acquires data and transmits the acquired data to controller 200. In some embodiments, feedback data may be transmitted to controller 200 at a predetermined frequency (e.g., every 1, 2, 3, 10, 15 minutes, or every 1 km, 2 km, 3 km, etc.). For example, if vehicle 20 has traveled a predetermined distance (e.g., every kilometer), controller 200 will receive updated feedback data at the predetermined distance (e.g., every 1 km). In some embodiments, receiving feedback data may not be at fixed intervals. Feedback data may provide updates from sensor 256, changes in vehicle parameters (e.g., vehicle speed, gear, etc.), destination changes, route changes, speed limits, traffic conditions, and / or weather conditions. The controller 200 can iteratively determine the speed profile. For example, the controller 200 can generate an initial set of speeds for the vehicle 20 and update a portion of the speed set as the vehicle 20 performs its task. In some embodiments, the speed profile may not be recalculated or updated at fixed intervals. Instead, the speed profile may be updated based on conditions. Conditions that may cause the controller 200 to recalculate or update the speed profile include, but are not limited to: refueling or rest stops, changes in destination, changes in route, changes in speed limits, changes in traffic conditions, weather conditions, etc.
[0061] In various embodiments, the generated speed profile can determine the optimal speed that keeps the vehicle's fuel consumption and / or energy use at a desired level (e.g., minimized). For example, under highway driving conditions, the speed profile can be adjusted to minimize fuel consumption by keeping the vehicle 20 at a stable speed, thereby reducing fuel use. Controller 200 also uses distance information about the next stop or traffic signal to adjust the target speed of the speed profile in urban environments. For example, the speed profile may include reducing speed before stopping points or slow / congested traffic to minimize unnecessary acceleration and deceleration, thereby achieving more stable fuel use. Therefore, the "optimal speed" may vary depending on operating conditions and depends on the needs of the user and / or remote computing system operator (e.g., some operators may want to minimize fuel consumption, while others allow for a certain amount of fuel consumption in exchange for lower emissions, etc.).
[0062] The generated speed profile may also consider the vehicle's expected total travel time (i.e., mission duration 212). The speed profile may be based on mission distance 210 and mission duration 212, vehicle data 214, forward-looking data 216 received by the controller 200 from the cloud computing system 10, feedback data received by the controller 200, and / or any combination thereof. In various embodiments, the controller 200 may use the speed profile to send notifications to I / O devices 254 and / or user equipment 30, suggesting operation at the speed determined by the speed profile. In other embodiments, the controller 200 may use the speed profile to operate one or more components of the vehicle 20, such as the powertrain 252, at suggested or determined speeds. In some examples, the recommended speed is the most fuel-efficient speed for the powertrain 252 under given conditions (e.g., speed limits, road conditions, weather, etc.). In other examples, the recommended speed is the fastest or near-fastest speed for the powertrain 252 under given conditions (e.g., speed limits, road conditions, weather, etc.).
[0063] In various embodiments, controller 200 may determine an acceleration profile. The acceleration profile may be similar to a velocity profile. For example, an acceleration profile may include a set of target acceleration values for a vehicle over a predetermined time and / or distance. In various embodiments, the acceleration profile may be determined using the same or similar system components as the velocity profile. The look-ahead data 216 used for the acceleration profile may be similar to the look-ahead data used to determine the velocity profile. The look-ahead data 216 used for the acceleration profile may also include, for example, road data that affects vehicle acceleration. For example, look-ahead data 216 may include stop-and-go traffic patterns, traffic lights, stop signs, and / or other traffic signs or conditions that require vehicle 20 to modify its acceleration. In various embodiments, the look-ahead data for the acceleration profile may be received by controller 200 from cloud computing system 10. In other examples, the acceleration profile may be received by controller 200 from a third-party computing system, such as a map service, traffic service, or other service that provides road data and traffic conditions to a user or system.
[0064] In various embodiments, the cloud computing system 10 may alternatively or additionally determine the speed profile and / or acceleration profile of the vehicle 20. In this way, the controller 200 can receive the speed profile and / or acceleration profile and operate the powertrain 252 based on a set of values contained in the speed profile and acceleration profile.
[0065] Now for reference Figure 3The diagram illustrates a vehicle speed graph during a mission, based on speed curves according to an exemplary embodiment. For comparison, a stepped graph 301 is shown, representing vehicle speed during a mission when conventional cruise control and automatic control modes are activated. As shown by the conventional cruise control mode line 301, the vehicle speed remains relatively consistent. In this mode, the operator can increase or decrease the speed in preset increments via manual cruise control (e.g., via I / O device 254). The operator can optionally activate the automatic control mode, as shown by the automatic control mode line 305. In automatic control mode, the controller 200 automatically operates the powertrain 252 of the vehicle 20 according to the determined / received speed curve. In some embodiments, the controller 200 may instruct the operator of the vehicle 20 to use the speed curve recommended by the speed curve, rather than automatically operating the powertrain 252.
[0066] like Figure 3 As shown, the horizontal axis corresponds to the time value of the task duration. The point where the horizontal and vertical axes intersect represents time = 0 or the start time. The vertical axis corresponds to the vehicle speed, and the point where the horizontal and vertical axes intersect represents speed / rate = 0. Each point on the line represents the vehicle's speed, and the slope of the line represents acceleration (i.e., speed / time).
[0067] Point 302 indicates the vehicle's start / departure time during the task. Point 312 indicates the expected task duration value (e.g., task duration 212). As shown, in automatic control mode (represented by the stepped automatic control mode line 305), the vehicle's speed is adjusted based on the expected task duration indicated by point 312. As described above, the controller 200 can generate or receive speed curves and / or acceleration curves. The speed curves include a first speed 304, a second speed 306, a third speed 310, a fourth speed 311, a fifth speed 313, and a sixth speed 315. During the task, the operator may stop or shut down the vehicle 20, for example, for rest or refueling. This stop is indicated by point 308.
[0068] In an exemplary embodiment, vehicle speed is limited to a maximum threshold. The maximum threshold may be a legally mandated speed limit. For example, points in the task with speeds below the average speed of 314 may represent sections of the task route with lower speed limits. Points in the task with speeds above the average speed of 314 may represent sections of the task route with higher speed limits.
[0069] like Figure 3As shown, when automatic control mode 305 is activated, the first speed 304 and the second speed 306 are calculated (e.g., generated, determined, etc.) by controller 200. In some examples, the first speed 304 is the speed of vehicle 20 when the operator selects to activate the automatic control mode. The second speed 306 may be calculated based on the first speed 304, look-ahead data, remaining task distance, and / or remaining task time. In other examples, controller 300 calculates the first speed 304 and the second speed 306 based on the remaining task duration, remaining task time, and / or look-ahead data. The first speed 304 is displayed as higher than the second speed 306. In this way, controller 300 operates vehicle 20 (e.g., powertrain 252, braking system, etc.) to reduce the vehicle from the first speed 304 to the second speed 306. In some examples, the first speed 304 and / or the second speed 306 may be below the legal speed limit and may be more fuel-efficient than the legal speed limit.
[0070] At some point after reaching the second speed 306 (e.g., immediately, for a predetermined amount of time, etc.), the operator of vehicle 20 chooses to switch back to conventional control (e.g., conventional cruise control, manual driving, etc.), as shown by conventional control mode line 303. Point 308 represents a period when vehicle 20 is stopped. As used herein, "stopped" means the vehicle is off, the vehicle is in park, vehicle 20 is not moving, and / or a combination thereof. Stopping events may affect the duration of the task. This could be a period when vehicle 20 is stopped in stationary or near-stationary traffic. In other examples, point 308 could be a period when the vehicle is off (e.g., during a rest stop, refueling, etc.).
[0071] In some examples, controller 200 receives feedback data indicating whether the vehicle has stopped or stopped as feedback data. Controller 200, more specifically, speed control circuit 218, may update the third speed 310 to be higher than the original third speed value. In this way, speed control circuit 218 can adapt to the stopping time at point 308. Similarly, speed control circuit 218 can generate and apply acceleration values (as shown by the positive slope between point 308 and third speed 310) to allow vehicle 20 to accelerate to third speed 310 within a predetermined time period. When the operator selects to reactivate automatic control mode 305, controller 200 can calculate (e.g., generate, determine, etc.) third speed 310 and / or fourth speed 311. Third speed 310 is displayed as lower than fourth speed 311. In this way, controller 300 operates vehicle 20 (e.g., powertrain 252, etc.) to accelerate the vehicle from third speed 310 to fourth speed 311.
[0072] The operator may again choose to switch back to conventional control mode (e.g., as shown by mode line 303 between fourth speed 311 and fifth speed 313). Upon reactivation of automatic control mode 305, controller 200 may calculate fifth speed 313 and / or sixth speed 315. Fifth speed 313 is displayed as higher than sixth speed 315. In this way, controller 300 operates vehicle 20 (e.g., powertrain 252, braking system, etc.) to reduce the vehicle from fifth speed 313 to sixth speed 315. In some examples, fifth speed 313 and / or sixth speed 315 may be below the legal speed limit and may be more fuel-efficient than the legal speed limit. For example, controller 200 may determine a slower sixth speed 315 based on upcoming low traffic density on the task route and / or based on vehicle 20 being ahead of schedule with remaining task time. After operating at sixth speed 315, the operator may choose to switch back to conventional control until the task ends (e.g., when the expected task duration 312 expires). In this way, users can choose to manually operate vehicle 20 at the end of the task, such as after they have exited the highway.
[0073] For example, controller 200 receives task information related to task 300, including task distance 210 and task duration 212. Task distance 210 includes the distance of the travel route between the task origin and destination. Task duration 212 includes the estimated time required for vehicle 20 to travel from the task origin to the destination. Controller 200 may also receive prospective data 216 that may affect the task (e.g., weather, traffic patterns, speed limits, etc.). Controller 200 determines a first speed 304 based on task distance 210, expected task duration 212, and prospective data 216, or receives the first speed 304 from cloud computing system 10. Controller 200 operates powertrain 252 according to the first speed 304. After a predetermined time interval or distance has elapsed, or in response to a change in prospective data 216 (e.g., a change in speed limits), controller 200 may determine a second speed 306, or receive the second speed 306 from cloud computing system 10. The controller 200 and / or cloud computing system 10 may determine the second speed 306 by determining the change in mission distance based on a comparison of the vehicle 20's current position with the mission starting point and the total elapsed time since departure. The controller 200 and / or cloud computing system 10 may then determine the remaining mission distance based on the difference between the mission distance 210 and the change in mission distance. The controller 200 and / or cloud computing system 10 may determine the remaining mission duration based on the difference between the expected mission duration 212 and the total elapsed time since the mission started. Based on the remaining mission distance and the remaining mission duration, the controller 200 and / or cloud computing system 10 may output the second speed 306. The controller 200 may then operate the powertrain to switch from the first speed 304 to the second speed 306.
[0074] To determine the third speed 310, the controller 200 and / or the cloud computing system 10 can employ a process similar to that used to determine the second speed 306. For example, when the operator stops vehicle 20 (e.g., turns off the vehicle, idles the vehicle, puts vehicle 20 in park, etc.), the controller 200 can determine or receive the third speed 310 from the cloud computing system 10. The controller 200 and / or the cloud computing system 10 can determine the change in task distance based on a comparison of the vehicle 20's current position with the task start point and the total elapsed time since departure (including stopping time), thereby determining the third speed 310. The controller 200 and / or the cloud computing system 10 can then determine the remaining task distance based on the difference between the task distance 210 and the change in task distance. The controller 200 and / or the cloud computing system 10 can determine the remaining task duration based on the difference between the expected task duration 212 and the total elapsed time since the task began. Based on the remaining task distance and the remaining task duration, the controller 200 and / or the cloud computing system 10 can output the third speed 310. The controller 200 can then operate the powertrain to increase from a stopping speed (e.g., the speed at point 308) to a third speed 310. In some examples, the third speed 410 is calculated before stopping or while the vehicle 20 is not stopped. In these examples, the controller 200 can operate the powertrain 252 to transition from a second speed 306 to a third speed 310. The controller 200 can perform the same or similar process to calculate or determine a fourth speed 311, a fifth speed 313, and a sixth speed 315.
[0075] refer to Figure 4 This illustrates a vehicle speed diagram during a mission based on a speed curve, according to an exemplary embodiment. Figure 4 As shown, the expected task duration includes a time margin value. Therefore, the task time displayed at 412 is from... Figure 3 The task time at point 312 is added with a time margin value.
[0076] Point 402 indicates the start / departure time of the vehicle on task 400. Point 402 may be the same as or substantially similar to point 302. As described above, controller 200 may generate or receive speed curves and / or acceleration curves. The speed curve display includes a first vehicle speed 404, a second vehicle speed 406, a third speed 410, a fourth speed 411, a fifth speed 413, and a sixth speed 415. During the task, the operator may stop or shut down vehicle 20, for example, for rest or refueling. This stop is indicated by point 408. In some examples, controller 200 receives feedback data indicating that the vehicle has stopped or shut down as feedback data. Controller 200, more specifically, speed control circuit 218 may update the third speed 410 to be higher than the original third speed value. In this way, speed control circuit 218 can adapt to the stop time at point 408. Similarly, the speed control circuit 218 can generate and apply acceleration values (as shown by the positive slope between point 408 and the third speed 410) to enable the vehicle 20 to accelerate to the third speed 410 within a predetermined time period.
[0077] like Figure 3 The operator can choose to switch between a conventional control mode and an automatic control mode. In automatic control mode, the controller 200 can calculate the transitions between the first speed 404 and the second speed 406, the transitions between the third speed 410 and the fourth speed 411, and the transitions between the fifth speed 413 and the sixth speed 415. The differences between the speeds can be determined based on look-ahead data, remaining task time, and / or remaining distance.
[0078] As shown in the figure, the speed of vehicle 20 is adjusted based on the expected mission duration indicated by point 412. In mission 400, vehicle 20 takes longer to reach its mission destination than in mission 300, thus allowing vehicle 20 to travel at a lower average speed than in mission 300. In examples of missions with time margin values, controller 200 may prioritize fuel efficiency over early arrival time.
[0079] Now for reference Figure 5 The diagram illustrates a flowchart of a method 500 based on a task-operated device (e.g., vehicle 20) according to an exemplary embodiment. According to some embodiments, the method 500 may be executed by a controller (e.g., controller 200).
[0080] In step 502, controller 200 receives task information from the device. The task information may include the device's starting or current location, the device's destination, and the path between the starting / current location and the destination. The starting point, destination, and path may define the route of the device (e.g., vehicle 20). The task information may include time constraints affecting how far the vehicle can travel in the task (e.g., the maximum allowed time for the vehicle to reach a desired location, such as the destination). The task distance may be defined, for example, as the distance between the starting point and the destination. The task information may include the expected task duration, defined as the expected travel time of the vehicle from the starting point to the destination. In some examples, the expected task duration is a time range defined as the expected time of the vehicle from the starting point to the destination plus a predetermined acceptable extension time (i.e., a "time margin" value). Therefore, vehicle task information may include the starting point, current location, destination, path between the starting point and / or current location and the destination, and time constraints / expectations for the task duration.
[0081] In step 504, controller 200 receives data regarding a first speed of the device. The controller may receive data representing the first speed of the device from a speed sensor. The speed sensor may be a physical sensor mounted on the vehicle, configured to detect the speed of the device (e.g., in kilometers per hour) and / or the speed of the engine (e.g., in revolutions per minute). In some examples, controller 200 may receive data regarding the first speed of the device from a remote computing system (e.g., remote computing system 10) or a user device (e.g., user device 30). For example, a user may input the first speed on the user device, and / or a provider may detect or input the first speed via a remote computing system.
[0082] In step 506, controller 200 determines or receives a second speed of the device based on task information. After a predetermined time interval or distance has elapsed, or in response to changes in look-ahead data (e.g., changes in speed limits), controller 200 may determine the second speed or receive it from a remote computing system. Controller 200 and / or the remote computing system may determine the second speed by comparing the device's current location with the task start point and the total elapsed time since departure, thereby determining the change in task distance. Controller 200 and / or the remote computing system may then determine the remaining task distance based on the difference between the task distance and the change in task distance. Controller 200 and / or the remote computing system may determine the remaining task duration based on the difference between the expected task duration and the total elapsed time since the task began. Based on the remaining task distance and the remaining task duration, controller 200 and / or the remote computing system may output the second speed. In the example where the remote computing system determines the second speed, controller 200 receives the second speed from the remote computing system.
[0083] In step 508, controller 200 operates the powertrain associated with the device (e.g., internal combustion engine, electric motor, hybrid system, or combination thereof) to change from a first speed to a second speed. For example, controller 200 can cause the internal combustion engine to change the device from the first speed to the second speed by adjusting intake airflow and / or fuel injection (e.g., by adjusting throttle position).
[0084] Based on the above, an operational example of method 500 can be described as follows. Method 500 outlines how a vehicle (e.g., vehicle 20) adjusts its speed based on a planned task. The method begins with the controller receiving task information, such as the vehicle's origin, destination, route, and any time constraints for completing the journey. The controller also collects the vehicle's current speed, which can be measured by sensors or manually input. As the vehicle travels, the controller calculates whether a speed adjustment is needed based on the remaining distance and remaining task time. If necessary, the controller updates the vehicle speed by controlling elements such as the engine throttle or intake airflow, keeping the vehicle within the planned schedule. This method enables the vehicle operator to meet time constraints, helping to avoid delays. Furthermore, considering the time factor, fuel economy and fuel savings can be improved by gradually adjusting the speed, and adjustments are made only when necessary to avoid multiple excessive accelerations to "rush to meet time."
[0085] The terms “about,” “approximately,” “substantially,” and similar terms as used herein are intended to have a broad meaning consistent with that commonly used and accepted by one of ordinary skill in the art to which this disclosure pertains. Reviewers of this disclosure will understand that these terms are intended to allow for the description of certain features described and claimed, without limiting those features to the precise numerical ranges provided. Therefore, these terms should be interpreted as indicating that non-substantial or minor modifications or alterations to the described and claimed subject matter are within the scope of the disclosure claimed in the appended claims.
[0086] It should be noted that the term "exemplary" and its variations used herein to describe various embodiments are intended to indicate that these embodiments are possible examples, representations, or illustrations (these terms are not intended to indicate that these embodiments are necessarily extraordinary or superior examples).
[0087] As used herein, the term "coupling" and its variations refer to the direct or indirect connection of two components together. This connection can be fixed (e.g., permanent or fixed) or movable (e.g., detachable or releasable). Such a connection can be achieved by directly coupling two components together, by coupling two components together using one or more separate intermediate components, or by coupling two components together using an intermediate component integrally formed with one of the two components as a single unit. If "coupling" or its variations are modified by an additional term (e.g., direct coupling), the general definition of "coupling" described above is modified by the literal meaning of the additional term (e.g., "direct coupling" means connecting two components together without any separate intermediate components), resulting in a narrower definition than the general definition of "coupling" described above. This coupling can be mechanical, electrical, or fluid. For example, "communication coupling" between circuit A and circuit B can mean that circuit A communicates directly with circuit B (i.e., without an intermediary) or indirectly with circuit B (e.g., through one or more intermediaries).
[0088] Although Figure 1 and Figure 2 Various circuits with specific functions are shown in the illustration, but it should be understood that the cloud computing system 10 and / or controller 200 may include any number of circuits for performing the functions described herein. For example, the activities performed by the speed control circuit 218 may be distributed among multiple circuits or combined into a single circuit. Additional circuits with additional functions may also be included. Furthermore, the controller 200 may also control other activities beyond the scope of this disclosure.
[0089] As described above, in one configuration, the "circuit" can be implemented in a machine-readable medium that stores information for various types of processors (e.g., ...). Figure 2 The instructions (e.g., embodied in executable code) executed by the processor 204. For example, executable code may include one or more physical or logical blocks of computer instructions, which may be organized, for example, into objects, procedures, or functions. However, executable files do not need to be physically located together, but may include different instructions stored in different locations that, when logically combined, form a circuit and achieve the intended purpose of the circuit. In fact, the circuit of computer-readable program code can be a single instruction or multiple instructions, and may even be distributed across several different code segments, different programs, and multiple storage devices. Similarly, runtime data can be identified and described in the circuit and can be embodied in any suitable form and organized in any suitable type of data structure. Runtime data can be collected as a single dataset or distributed across different locations, including across different storage devices, and may exist at least in part as electronic signals on a system or network.
[0090] Although the term "processor" has been briefly defined above, "processor" and "processing circuitry" should be understood broadly. In this regard, as stated above, a "processor" can be implemented as one or more processors, application-specific integrated circuits (ASICs), field-programmable gate arrays (FPGAs), digital signal processors (DSPs), or other suitable electronic data processing components configured to execute instructions provided by memory. One or more processors can take the form of a single-core processor, a multi-core processor (e.g., a dual-core processor, a triple-core processor, a quad-core processor, etc.), a microprocessor, etc. In some embodiments, one or more processors can be located external to the device; for example, one or more processors can be remote processors (e.g., cloud-based processors). Alternatively, one or more processors can be internal and / or local processors of the device. In this regard, a given circuitry or its components can be located locally (e.g., as part of a local server, a local computing system, etc.) or remotely (e.g., as part of a remote server such as a cloud-based server). Therefore, the term "circuitryry" as used herein can include components distributed across one or more locations.
[0091] The scope of this disclosure includes program products comprising a computer- or machine-readable medium that carries or stores computer- or machine-executable instructions or data structures. Such a machine-readable medium can be any available medium accessible to a computer. A computer-readable medium can be a tangible computer-readable storage medium that stores computer-readable program code. A computer-readable storage medium can be (but is not limited to) an electronic, magnetic, optical, electromagnetic, infrared, holographic, micromechanical, or semiconductor system, apparatus, or device, or any suitable combination thereof. More specific examples of a computer-readable medium may include (but are not limited to) portable computer disks, hard disks, random access memory (RAM), read-only memory (ROM), erasable programmable read-only memory (EPROM or flash memory), portable optical disc read-only memory (CD-ROM), digital versatile optical disc (DVD), optical storage devices, magnetic storage devices, holographic storage media, micromechanical storage devices, or any suitable combination thereof. In this document, a computer-readable storage medium can be any tangible medium capable of containing and / or storing computer-readable program code that is available for use by and / or connected to an instruction execution system, apparatus, or device. Machine-executable instructions include, for example, instructions and data that cause a computer or processing machine to perform a particular function or group of functions.
[0092] Computer-readable media can also be computer-readable signal media. Computer-readable signal media can include propagated data signals having computer-readable program code embodied therein, for example, as part of a baseband signal or carrier wave. Such propagated signals can take many forms, including (but not limited to) electrical, electromagnetic, magnetic, optical, or any suitable combination thereof. Computer-readable signal media can be any computer-readable medium other than a non-computer-readable storage medium capable of communicating, propagating, or transmitting computer-readable program code for use by or connection to an instruction execution system, apparatus, or device. Computer-readable program code embodied on a computer-readable signal medium can be transmitted using any suitable medium, including (but not limited to) wireless, wired, fiber optic cable, radio frequency (RF), or similar media, or any suitable combination thereof.
[0093] In one embodiment, a computer-readable medium may include a combination of one or more computer-readable storage media and one or more computer-readable signal media. For example, computer-readable program code may be both transmitted as an electromagnetic signal via fiber optic cable for processor execution and stored in RAM for processor execution.
[0094] Computer-readable program code used to perform the operations of various aspects of this disclosure may be written in any combination of one or more other programming languages, including object-oriented programming languages (such as Java, Smalltalk, C++, etc.) and traditional procedural programming languages (such as the "C" programming language or similar programming languages). The computer-readable program code may execute entirely on the user's computer, partially on the user's computer, as a standalone computer-readable package, partially on the user's computer and partially on a remote computer, or entirely on a remote computer or server. In the latter case, the remote computer may be connected to the user's computer via any type of network (including a local area network (LAN) or a wide area network (WAN)) or via an external computer (e.g., via the Internet using an Internet service provider).
[0095] Program code may also be stored in a computer-readable medium that can instruct a computer, other programmable data processing apparatus or other device to operate in a particular manner, such that the instructions stored in the computer-readable medium produce an article of manufacture comprising instructions that implement the functions / actions specified by one or more blocks in a flowchart and / or block diagram.
[0096] While the illustrations and descriptions may show a specific order of method steps, the order of these steps may differ from that depicted and described, unless otherwise specified above. Furthermore, two or more steps may be performed simultaneously or partially simultaneously, unless otherwise specified above. This variation may depend on, for example, the chosen software and hardware system and the designer's choices. All such variations are within the scope of this disclosure. Similarly, the software implementation of the method can be achieved using standard programming techniques, including rule-based logic and other logic, to perform various connection steps, processing steps, comparison steps, and decision steps.
[0097] It should be noted that the structures and arrangements of the apparatuses and systems shown in the various exemplary embodiments are illustrative only. Furthermore, any element disclosed in one embodiment may be incorporated into or used in any other embodiment disclosed herein.
Claims
1. A system for controlling the speed of equipment, characterized in that, include: One or more processors; as well as One or more storage devices storing instructions that, when executed by the one or more processors, cause the one or more processors to perform operations including: Receive task information about the device via the network, the task information including task distance and expected task duration; Receive data regarding the first speed of the device; Receive data about the second speed of the device based on the task distance and the expected task duration; as well as Operate the powertrain associated with the device to adjust from the first speed to the second speed.
2. The system according to claim 1, characterized in that, When the instruction is executed by the one or more processors, it also causes the one or more processors to perform operations including the following: Receive a speed limit associated with at least a portion of the task; The second speed is determined based on the task distance, the expected task duration, and the speed limit; and Operate the powertrain associated with the device to adjust from the first speed to the second speed.
3. The system according to claim 1, characterized in that, When the instruction is executed by the one or more processors, it also causes the one or more processors to perform operations including the following: The second velocity is determined in the following manner: Receive the device's location indication and the current time; The first mission distance change is determined based on the location of the device and at least in part based on the current time; The first remaining task distance is determined based on the change in the task distance relative to the first task distance; The first remaining task duration is determined based on the expected task duration relative to the total elapsed time since the task began. as well as The second speed is output based on the first remaining task distance and the first remaining task duration; and In response to determining the second speed, the powertrain associated with the device is operated at the second speed.
4. The system according to claim 1, characterized in that, When the instruction is executed by the one or more processors, it also causes the one or more processors to perform operations including the following: The third velocity is determined in the following way: Receive the device's location indication and the current time; The change in distance to the second task is determined based on the location of the device and at least in part based on the current time. The second remaining task distance is determined based on the location of the device and at least in part based on the current time; The second remaining task time is determined based on the expected task duration relative to the total elapsed time since the start of the task. as well as The third speed is output based on the second remaining task distance and the second remaining task time; and Operate the device to adjust from the second speed to the third speed.
5. The system according to claim 1, characterized in that, When the instruction is executed by the one or more processors, it also causes the one or more processors to perform operations including the following: Receive a time margin value for the expected task duration, wherein the time margin value indicates an acceptable extension of the expected task duration; The expected task duration range is determined based on the expected task duration and the time margin value; The second speed is determined based on the task distance and the expected task duration range; and Operate the powertrain associated with the device to adjust from the first speed to the second speed.
6. The system according to claim 5, characterized in that, When the instruction is executed by the one or more processors, it also causes the one or more processors to perform operations including the following: The second velocity is determined in the following manner: Receive the device's location indication and the current time; The first mission distance change is determined based on the location of the device and at least in part based on the current time; The first remaining task distance is determined based on the change in the task distance relative to the first task distance; The first remaining task time is determined based on the expected task duration having the time margin value and the total elapsed time since the start of the task. as well as The second speed is determined based on the first remaining task distance and the first remaining task time; as well as In response to determining the second speed, the powertrain associated with the device is operated at the second speed.
7. The system according to claim 1, characterized in that, When the instruction is executed by the one or more processors, it also causes the one or more processors to perform operations including the following: The network is used to receive data about at least one stop event, wherein the at least one stop event includes the duration of the device stop. The second speed is determined based on the task distance, the expected task duration, and the at least one stopping event; and Operate the powertrain associated with the device to adjust from the first speed to the second speed.
8. A vehicle, characterized in that, include: A controller, comprising one or more processors coupled to one or more storage devices, the controller being configured to receive mission information of the vehicle, the mission information including mission distance and expected mission duration; Receive information regarding at least one speed limit; Receive a first vehicle speed from one or more sensors associated with the vehicle; The speed of the second vehicle is determined based on the expected mission duration, mission distance, and information regarding speed limits; and Operate the powertrain associated with the vehicle to adjust from the first vehicle speed to the second vehicle speed.
9. The vehicle according to claim 8, characterized in that, Information regarding the at least one speed limit includes one or more of the following: Road conditions associated with the route of the task. Traffic conditions at a specific time associated with the mission route, or Legal speed limits at specific locations along the mission route.
10. The vehicle according to claim 8, characterized in that, The controller is also configured to: The speed of the second vehicle is determined in the following manner: Receive the vehicle's location indication and the current time; The first mission distance change is determined based on the vehicle's position relative to the mission endpoint and at least in part based on the current time; The first remaining task distance is determined based on the change in the task distance relative to the first task distance; The first remaining task time is determined based on the expected task duration relative to the total elapsed time since the task began. as well as The second vehicle speed is output based on the first remaining task distance and the first remaining task time; And in response to determining the second vehicle speed, to operate the powertrain associated with the vehicle at the second vehicle speed.
11. The vehicle according to claim 8, characterized in that, The controller is also configured to: The speed of the third vehicle is determined in the following way: Receive the vehicle's location indication and the current time; The change in the second mission distance is determined based on the vehicle's position relative to the mission endpoint and at least in part based on the current time; The second remaining mission distance is determined based on the vehicle's location and at least in part based on the current time; The second remaining task time is determined based on the expected task duration relative to the total elapsed time since the start of the task. as well as The third vehicle speed is output based on the second remaining task distance and the second remaining task time; and the vehicle is operated to adjust from the second vehicle speed to the third vehicle speed.
12. The vehicle according to claim 8, characterized in that, The controller is also configured to: Receive a time margin value for the expected task duration, wherein the time margin value indicates an acceptable extension of the expected task duration; The expected task duration range is determined based on the expected task duration and the time margin value; The speed of the second vehicle is determined based on the mission distance and the expected mission duration range; and Operate the powertrain associated with the vehicle to adjust from the first vehicle speed to the second vehicle speed.
13. The vehicle according to claim 12, characterized in that, The controller is also configured to: The speed of the second vehicle is determined in the following manner: Receive the vehicle's location indication and the current time; The first mission distance change is determined based on the vehicle's position relative to the mission endpoint and at least in part based on the current time; The first remaining task distance is determined based on the change in the task distance relative to the first task distance; The first remaining task time is determined based on the expected task duration having the time margin value and the total elapsed time since the start of the task. as well as The speed of the second vehicle is determined based on the first remaining mission distance and the first remaining mission time. And in response to determining the second vehicle speed, to operate the powertrain associated with the vehicle at the second vehicle speed.
14. The vehicle according to claim 8, characterized in that, The controller is also configured to: Receive data about at least one stopping event, wherein the at least one stopping event includes the duration of the vehicle's stop; The speed of the second vehicle is determined based on the mission distance, the expected mission duration, and the at least one stopping event; and Operate the powertrain associated with the vehicle to adjust from the first vehicle speed to the second vehicle speed.
15. The vehicle according to claim 8, characterized in that, The controller is also configured to: Determine the speed range corresponding to predefined fuel consumption characteristics; Transmit the speed range to the user equipment; and The user equipment displays the speed range and the corresponding fuel consumption characteristics.
16. A method, characterized in that, include: The controller receives task information about the device via a network, including task distance and expected task duration. The controller receives data about the first speed of the device from one or more sensors. The controller determines the second speed of the device based on the task distance and the expected task duration; and The controller operates the powertrain associated with the device to adjust from the first speed to the second speed.
17. The method according to claim 16, characterized in that, Also includes: The speed limit for receiving tasks from the device via the network through the controller; The controller determines the second speed based on the task distance, the expected task duration, and the speed limit; and The controller operates the powertrain associated with the device to adjust from the first speed to the second speed.
18. The method according to claim 16, characterized in that, Also includes: The second velocity is determined in the following manner: Receive the device's location indication and the current time; The first mission distance change is determined based on the position of the device relative to the mission endpoint and at least in part based on the current time; The first remaining task distance is determined based on the change in the task distance relative to the first task distance; The first remaining task time is determined based on the expected task duration relative to the total elapsed time since the task began. as well as The second speed is output based on the first remaining task distance and the first remaining task time; And in response to determining the second speed, to operate the powertrain associated with the device at the second speed.
19. The method according to claim 16, characterized in that, Also includes: The third velocity is determined in the following way: Receive the device's location indication and the current time; The change in the second mission distance is determined based on the position of the device relative to the mission endpoint and at least in part based on the current time. The second remaining task distance is determined based on the location of the device and at least in part based on the current time; The second remaining task time is determined based on the expected task duration relative to the total elapsed time since the start of the task. as well as The third speed is output based on the second remaining task distance and the second remaining task time; and the device is operated to adjust from the second speed to the third speed.
20. The method according to claim 16, characterized in that, Also includes: The controller receives a time margin value for the expected task duration, wherein the time margin value indicates an acceptable extension of the expected task duration. The controller determines the expected task duration range based on the expected task duration and the time margin value; The controller determines the second speed based on the task distance and the expected task duration range; and The controller operates the powertrain associated with the device to adjust from the first speed to the second speed.