Method and apparatus for avoiding output saturation in preview-based vehicle system control - Patents.com
Patent Information
- Application Number
- JP2024541642
- Authority / Receiving Office
- JP · JP
- Patent Type
- Applications
- Current Assignee / Owner
- Priority Date
- 2022-01-10
- Filing Date
- 2023-01-09
- Publication Date
- 2026-01-20
AI Technical Summary
Existing vehicle control systems face challenges in efficiently managing output saturation when operating based on preview information about the road ahead, leading to inefficient performance and potential disturbances.
A method involving frequency-based filtering of road surface data to generate separate command signals for tracking and isolation frequencies, using lower and upper frequency bandpass filters to optimize active suspension actuator control, minimizing saturation and ensuring effective vehicle motion.
The solution effectively manages output saturation by reducing demands on active suspension actuators, enhancing ride quality and reducing disturbances, while maintaining system efficiency across varying road conditions.
Smart Images

Figure 00000000_0000_ABST
Abstract
Description
[Technical field]
[0001] CROSS-REFERENCE TO RELATED APPLICATIONS This application claims the benefit under 35 U.S.C. §119 of U.S. Provisional Patent Application No. 63 / 297,873, filed January 10, 2022, the entire disclosure of which is incorporated herein by reference.
[0002] Field The disclosed embodiments relate to vehicle control based at least in part on information regarding a road segment ahead of the vehicle while the vehicle is traveling along the road. [Background technology]
[0003] background Systems onboard a vehicle may be operated based on preview or a priori information that defines a portion of the road ahead of the vehicle. Systems that may be so operated may include Advanced Driver-Assistance Systems (ADAS), active or semi-active suspension systems, braking systems, steering systems, propulsion systems, etc. Summary of the Invention [Means for solving the problem]
[0004] overview According to some aspects of the present disclosure, a method is provided for operating a system onboard a vehicle while the vehicle is traveling along a road surface. The method may include receiving road surface profile data at a microprocessor within the vehicle relating to a road surface ahead of the vehicle; filtering the road surface profile data with a lower frequency bandpass filter to generate a first filtered output, the lower frequency bandpass filter having a first lower frequency limit equal to a first frequency and a first upper frequency limit equal to a second frequency; providing the first filtered output to a lower frequency transfer function to generate a lower frequency command signal; filtering the road surface profile data with an upper frequency bandpass filter to generate a second filtered output, the upper frequency bandpass filter having a second lower frequency limit equal to the second frequency and a second upper frequency limit equal to a third frequency, the upper frequency bandpass filter operating in parallel with the lower frequency bandpass filter; providing the second filtered output to the upper frequency transfer function to generate an upper frequency command signal; determining a total command signal based on the lower frequency command signal and the upper frequency command signal; and operating the system based at least in part on the total command signal.
[0005] In some embodiments, the first frequency may be between 0.3 Hz and 0.8 Hz. In some embodiments, the third frequency is in the range of 8 Hz and 0.8-12 Hz. In some embodiments, the first frequency and the third frequency are pre-determined. In some embodiments, the data may be received by a microprocessor in the vehicle from a remote database, a database in the cloud, or a local database located in the vehicle. In some embodiments, the first lower frequency limit may be determined at a lower -3 dB point of a lower frequency band pass filter, and the first upper frequency limit may be determined at an upper -3 dB point of a lower frequency band pass filter. In some embodiments, the second lower frequency limit may be determined at a lower -3 dB point of an upper frequency band pass filter, and the second upper frequency limit may be determined at an upper -3 dB point of an upper frequency band pass filter. In some embodiments, the system may be an active suspension actuator that may be controlled by an active suspension controller. In some embodiments, the lower frequency command signal may cause a portion of the vehicle to follow at least a first vertical movement of the road. In some embodiments, the upper frequency command signal may isolate a portion of the vehicle from at least vertical motion of the road. In some embodiments, the total command signal may be determined by summing the lower frequency command signal and the upper frequency command signal. In some embodiments, the lower frequency command signal may be a first series of force commands. In some embodiments, the upper frequency command signal may be a second series of force commands. In some embodiments, the method may include determining a second frequency while the vehicle is traveling along the road surface. In some embodiments, the method may include operating the vertical motion planner to optimize a cost function associated with the active suspension actuators. In some embodiments, optimizing the cost function may include minimizing the extent to which the total command signal includes commands beyond the ability of the active suspension actuators to generate or implement. In some embodiments, the vertical motion planner may operate at a first cycle time and the controller operates at a second, faster cycle time.In some embodiments, the first cycle time is in the range of cycle times from 0.1 seconds to 1 second, inclusive. In some embodiments, the second cycle time is in the range of cycle times from 0.0005 seconds to 0.02 seconds, inclusive.
[0006] According to some aspects of the present disclosure, a method of operating a vehicle while traveling along a road surface is provided, which may include: operating a vehicle system according to a first motion plan after initiation of a first time period of a given duration by a controller including a microprocessor operating at a first cycle time, the motion plan being prepared prior to initiation of the first time period, and the motion planner microprocessor operating at a second cycle time; collecting data related to the motion of the vehicle during the first time period by at least one sensor mounted on the vehicle; and operating the vehicle system by the controller according to a second motion plan prior to termination of the first time period; a value of at least one vehicle system parameter during a transition from the first plan to the second plan is determined based at least in part on the data collected during the time period.
[0007] In some embodiments, the first cycle time may be in the range of 50 Hz to 2000 Hz. In some embodiments, the second cycle time may be in the range of 2 Hz to 20 Hz. In some embodiments, the vehicle system may be an active suspension system. In some embodiments, the motion plan may be a vertical motion plan based at least on a road profile of a segment of road that may be ahead of the vehicle prior to the start of the first time period. In some embodiments, the first vertical motion plan may include a first plan of vehicle motion within a first range of frequencies above the first frequency and a second plan of vehicle motion within a second range of frequencies below the first frequency. In some embodiments, the first frequency may be determined by the motion planner based at least in part on a road profile of a segment of road that is ahead of the vehicle prior to the start of the first time period. In some embodiments, information regarding the road profile of the segment of road is received at the vehicle from a database in the cloud.
[0008] According to some aspects of the present disclosure, a method is provided for operating a vehicle while traveling along a road surface, the vehicle including a vertical motion planner and a vertical motion controller. The method may include: receiving road surface profile data for a road segment ahead of the vehicle at a vertical motion planner; using the vertical motion planner to develop a first vertical force profile for at least one actuator of the active suspension system based on the road surface profile and for a range of frequencies above a first frequency, the first vertical force profile configured to isolate at least a portion of the vehicle from road disturbances while the vehicle travels along the road segment; using the vertical motion planner to develop a second vertical force profile for at least one actuator of the active suspension system based on the road surface profile and for a range of frequencies below the first frequency, the second vertical force profile configured to cause motion of at least a portion of the vehicle to follow the road surface profile while the vehicle travels along the road segment; providing a total force profile to the controller, the total force profile being a combination of the first force profile and the second force profile; and operating the at least one actuator to apply forces to at least a portion of the vehicle in accordance with the total force profile while the vehicle travels along the road segment.
[0009] In some embodiments, the first force profile and / or the second force profile are based at least in part on a state parameter of the vehicle. In some embodiments, the method may include minimizing a cost function associated with the actuator by modifying the first frequency. In some embodiments, the cost function may be based on an amount or degree of force saturation, an amount or degree range of travel saturation, and / or a value of the first frequency.
[0010] According to some aspects of the disclosure, a controller system for an actuator of an active suspension system is provided, which may include: a microprocessor-based vertical motion planner configured to develop a first optimal motion plan for the vehicle for frequencies within a range below a first frequency and a second optimal motion plan different from the first optimal motion plan for frequencies above the first frequency, the first and second optimal motion plans being based at least in part on a road motion profile of a segment of a road ahead of the vehicle; and a microprocessor-based controller configured to control the vertical motion of the vehicle with the active suspension controller based on or in accordance with the first optimal motion plan and the second optimal motion plan.
[0011] According to some aspects of the present disclosure, a method is provided for operating a system mounted on a vehicle while the vehicle is traveling along a road surface. The method may include: receiving a preview of a road profile of a segment of a road ahead of the vehicle; separating the road surface profile into a first component including a range of frequencies below a first frequency and a second component including a range of frequencies above the first frequency; applying a first transfer function to the first component and a second transfer function to the second component, the second transfer function being different from the first transfer function; and controlling the system with a microprocessor-based controller based on a sum of the first component and the second component.
[0012] In some embodiments, the system may be an active suspension system actuator interposed between a portion of the sprung mass and a portion of the unsprung mass of the vehicle. In some embodiments, the output of the first transfer function may be a set of instructions that cause the active suspension actuator to apply a compliant force to a portion of the sprung mass in a range of frequencies below the first frequency. In some embodiments, the output of the second transfer function may be a set of instructions that cause the active suspension actuator to apply an isolation force to a portion of the sprung mass in a range of frequencies above the first frequency. In some embodiments, the method may include determining a value of the first frequency by minimizing force saturation of the active suspension actuator.
[0013] It should be appreciated that the disclosure is not limited in this respect, and that the foregoing concepts and additional concepts discussed below may be arranged in any suitable combination. Moreover, other advantages and novel features of the present disclosure will become apparent from the detailed description of various non-limiting embodiments when considered in conjunction with the accompanying drawings. [Brief description of the drawings]
[0014] BRIEF DESCRIPTION OF THE DRAWINGS [Figure 1] A vehicle is shown traveling along a road surface where the portion of the road ahead of the vehicle is a segment of length L. [Diagram 2] 1 illustrates an example embodiment of a vehicle control system onboard a vehicle that may include a controller and a planner. [Diagram 3] 1 illustrates an example command force profile saturation as a function of time that may be provided to a vehicle-mounted system. [Figure 4] FIG. 4 shows a command force profile in which the portion exceeding the output limit of the system is clipped. [Diagram 5] 13 illustrates an alternative exemplary strategy in which the command force profile over a period of time may be scaled down such that saturation is eliminated. [Figure 6]13 illustrates an alternative exemplary strategy in which only the lower frequencies of the command force profile over a period of time are scaled down so that saturation is eliminated. [Figure 7] 1 shows a block diagram of an exemplary embodiment of a system for receiving information about the road surface ahead of a vehicle, including road profile data that separates the road profile data into low and high frequency components. [Figure 8] 1 illustrates an example active suspension system interposed between a sprung mass and an unsprung mass. [Figure 9] 1 illustrates a block diagram of an exemplary embodiment of a planner that may operate in conjunction with a controller of an on-board vehicle system. [Figure 10] A comparison of the actual desired force command and the saturated or clipped force applied by the actuator over a period of time is shown. [Figure 11] 1 illustrates an example vehicle experiencing a constant pitch angular velocity. [Figure 12] 12 illustrates the example vehicle of FIG. 11 with the forward actuator experiencing force saturation. DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS
[0015] Detailed Description In some embodiments, as the vehicle travels along a road, one or more controllers (e.g., microprocessor-based controllers) on board the vehicle may receive road-specific preview information or a priori information about the road or a portion of the road ahead of the vehicle. This information may be received from an on-board or remote database (e.g., a remote database in the cloud). Such information may be used by the one or more microprocessor-based controllers to operate one or more systems (e.g., actuators, active suspension actuators) on board the vehicle to appropriately react to one or more road conditions or interactions with some aspect of the road. The road-specific preview information may include, for example, information about the road surface profile and / or road surface characteristics. As used herein, the term "road surface profile" refers to vertical deviations from a nominal road surface associated with features of the road surface. Such features may be naturally occurring anomalies or manufactured anomalies. Such features may be discrete (i.e., longitudinally on the same scale of the vehicle or longitudinally on a smaller scale) and may include, but are not limited to, potholes, bumps, cracks, culverts, expansion joints, frost heaves, etc., and / or may be distributed (where such features may extend for distances greater than the length of the vehicle (e.g., broken pavement or surface undulations). Interaction of a road or portion of a road with aspects of the road surface profile may induce accelerations or other disturbances (e.g., vertical accelerations or accelerations having a vertical component). The induced accelerations may be due to the vehicle's ability to move along the road surface. It may be an acceleration of the vehicle or a portion of the vehicle (e.g., a vehicle body, a vehicle chassis, a vehicle wheel, a sprung mass of the vehicle, or an unsprung mass of the vehicle, etc.) that may be induced while traveling along a surface or portion of a road. As used herein, the term "road surface characteristics" refers to characteristics of a road surface (e.g., surface roughness, surface composition, etc.: e.g., asphalt, concrete, gravel, dirt) or surface covering (e.g., ice, water, and / or snow) that may affect the traction of a vehicle tire. However, other types of road-specific preview information are contemplated as the disclosure is not so limited.
[0016] FIG. 1 shows a vehicle 10 traveling along a road surface 12. A portion of the road (segment 14) is of length L. In some embodiments, road-specific preview information about the road segment 14 may be received from a database, such as a database in the cloud 16 and / or a database onboard the vehicle (not shown in FIG. 1). The road segment 14 may include various aspects such as anomalies including, but not limited to, surface cracks 12a, manhole covers 12b, potholes 12c, and / or frost heave 12d. The vehicle 10 and / or one or more systems onboard the vehicle 10 may be operated based on the information about the road segment 14 and / or the information about the condition of the vehicle 10.
[0017] 2 illustrates an exemplary embodiment of a controller system 20 onboard a vehicle 10 that may include a controller 22a and a planner 22b. The controller 22a and planner 22b may include algorithms that, in some embodiments, may run on a single microprocessor or multiple processors at the same cycle time. Alternatively, as described further below, in some embodiments, the algorithms of the controller 22a and planner 22b may run on different processors at different cycle times. In some embodiments, the planner may run at a slower cycle time than the controller.
[0018] In some embodiments, the controller 22a may control one or more on-board systems 24 based on information received from the planner 22b and / or sensors 45 (e.g., accelerometers, IMUs, displacement sensors, brake pressure sensors, steering angle sensors, etc.) that may be operably attached to various portions of the vehicle (e.g., the sprung mass, or one or more unsprung masses associated with the vehicle). Input data received by the planner 22b may be received, for example, from road-specific data sources 28 (e.g., a remote cloud database 34 and / or an on-board vehicle database 36), environmental data sources 30 (e.g., a weather data center 46), and / or vehicle-specific data sources 32 that provide (e.g., vehicle load information 38, occupant related data, occupant activity data 42, vehicle status information 44 (e.g., vehicle speed) 40). In some embodiments, the planner 22b may generate a plan to be provided to the controller 22a that the controller may implement or execute. In some embodiments, the planner may create a motion plan (which may be a vertical motion plan) that may be provided by the active suspension actuators to a controller to control aspects of the vertical motion of the vehicle sprung mass (e.g., the vehicle body). In some embodiments, the planner may provide the plan to the controller at a time selected by the planner. Alternatively, the controller may request a plan when needed (e.g., when a previous plan or a certain portion of a previous plan has been implemented).
[0019] The inventors have recognized that in some embodiments, under some operating conditions, a controller configured to provide commands to a system (e.g., an active suspension actuator system on a vehicle) based on information about the road ahead of the vehicle may command the system to generate an output that exceeds the capacity of the system. For example, the controller may request or command the active suspension actuator system to generate a force output as a function of time as represented by example graph 50 of FIG. 3. In this example, lines 52a and 52b represent force limits in compression and expansion, respectively. The cross-hatched areas represent desired or commanded forces that a given actuator may not be able to generate. It should be noted that although limits 52a and 52b are shown in FIG. 3 as representing force limits of equal magnitude, unequal force limits are also contemplated as the disclosure is not so limited. The larger the cross-hatched areas 54a-54e, the greater the saturation of the commanded force 50. Force saturation occurs when the commanded force is greater than or outside the range of forces that the system (e.g., actuator) can generate. As used herein, the term "saturation" refers to the percentage of the integral of the "force command versus time" curve over a given period of time that is outside the system capacity or capability limits.
[0020] 3 is shown to represent a desired or commanded force output as a function of time, a similar curve may be generated to represent any other suitable system output (e.g., torque or power), and thus saturation of other system outputs is also contemplated as the disclosure is not so limited.
[0021] In an embodiment in which a controller requests or commands a system (e.g., an active suspension actuator (constrained by force limits 52a and 52b) to generate a force output 50 as a function of time, for example, the actual force generated by the actuator may be periodically clipped whenever the requested force exceeds the capacity of the system. Such a clipped force output is shown in graph 60 of FIG. 4. The inventors have recognized that poor performance or other undesirable effects may result when a system commanded by a controller to generate an output greater than its capabilities reaches its maximum output threshold. For example, if an actuator system is commanded to generate a force represented by graph 50 but generates a clipped output as shown in FIG. 4, or alternatively, if commanded to generate a clipped output, the actuator may induce undesirable perceptible noise and / or vibrations of the sprung mass (e.g., a vehicle body). In addition, the system may be inefficient or difficult to control during periods when it is requested to generate an output greater than its maximum capacity.
[0022] 5 shows an alternative strategy in which the force command 70 over a period of time may be scaled down so that at no point is the system (e.g., an active suspension system) commanded to generate an output that exceeds its capacity. However, this approach would reduce the output of the system during periods when the desired force may not exceed the limits of the system. Thus, scaling the command output may unnecessarily derate the system output when there is spare capacity available.
[0023] The inventors have recognized that in some embodiments, under some conditions, output may be commanded over a range of frequencies. The inventors have further recognized that in some embodiments, under some operating conditions, output in some frequency ranges (e.g., lower frequencies) may place greater demands on the system than output in other frequency ranges (e.g., upper frequencies).
[0024] Figure 6 illustrates an alternative strategy whereby over a period of time the lower frequencies of the force commands 50 of Figure 3 may be scaled back such that a vehicle system (e.g., an active suspension system) produces an output force represented by curve 80. In this exemplary embodiment, the system being controlled does not command, and is not commanded at any time during the period shown in Figure 6, a force that exceeds limits 52a and 52b. However, in the force command graph shown in Figure 6, unlike the force commands of Figure 5, the force commands are not scaled back at the upper frequencies. This strategy allows the system to be fully effective at the upper frequencies while the total required output does not exceed the threshold limits of the system as output at the lower frequencies is limited.
[0025] The inventors have recognized that separating road profiles based on frequency and responding in different ways to different frequency ranges may avoid, for example, requiring or commanding a system (e.g., active suspension actuators) to generate outputs (e.g., forces, torques, power) that exceed a threshold and at the same time generate an acceptable level of isolation from road disturbances.
[0026] For example, in some embodiments, the information about the road ahead of the vehicle may include a surface road profile (e.g., vertical road displacement or vertical velocity relative to a nominal value) of a portion of the road. The inventors have recognized that the motion of a vehicle traveling over a surface having a given road profile may be controlled such that the vertical motion of the vehicle body follows the road profile at frequencies below a threshold frequency, while the vehicle is isolated from the motion at frequencies above the threshold. In some embodiments, by selecting an appropriate transition frequency between following and isolation, the demands on the active suspension actuators as well as the demands on saturation may be reduced. In some embodiments, this may be achieved by controlling the vertical motion of the vehicle or a portion of the vehicle such that the suspension system causes the vehicle body to follow the road profile below the transition frequency, while the vehicle body is isolated from disturbance frequencies above the transition frequency.
[0027] In some embodiments, the tracking-to-isolation transition frequency may be selected by tuning the vehicle to avoid commanding the suspension system actuators to generate outputs (e.g., forces, torques, power) greater than their capacity while achieving acceptable ride comfort. As used herein, the term "tracking-to-isolation transition frequency (TITF)" refers to the frequency above which a controller may operate one or more suspension system actuators to isolate from road disturbances, but below which the controller may operate the suspension system to cause the vehicle body to track the road surface.
[0028] FIG. 7 shows a block diagram of an exemplary embodiment of a system 90 that receives information about the road surface ahead of the vehicle from a remote (e.g., cloud-based database) or local (e.g., database onboard the vehicle) road profile data source 91. The system 90 separates the road profile data into low and high frequency components by using a low frequency band pass (LFBP) filter 92 (e.g., Butterworth filter) with an upper frequency limit f2 and a high frequency band pass (HFBP) filter 94 (e.g., Butterworth filter) with a lower frequency limit of f2. In the embodiment shown in FIG. 7, the frequency f2 may be the TITF of the system. For a particular active suspension actuator, the output of the LFBP filter is processed in block 96 to generate a follow command (e.g., force command), while the output of the HFBP filter is processed in block 98 to generate an isolation command (e.g., force command). FIG. 8 shows an embodiment of an active suspension system 100 interposed between a sprung mass 102 and an unsprung mass 104. The suspension system may include a spring element 106, a damping element 108, and an active suspension actuator 110. It should be noted that the spring element 106 and / or the damping element 108 may be partially or fully integrated with the actuator 110. The controller of the actuator 110 may be provided with an optimized command force profile by the system 90 shown in Figure 7. In some embodiments, the follow-up portion of the force command generated in block 96 may be determined based on a body criterion equal to the vertical road velocity by using the following formula: Force command (follow) = mass * vertical road acceleration Here, the mass is equal to the sprung mass 102 assisted or accelerated by the actuator 110. In some embodiments, the vertical road acceleration may be approximated by using the vertical acceleration of the mass 104.
[0029] In some embodiments, the isolation portion of the actuator 110 force command generated in block 98 may be determined based on a body equal to zero velocity criterion by using the following formula: Force command(isolation) = -K*vertical road displacement -B*vertical road velocity where K is the spring constant of the spring element 106 parallel to the actuator, and B is the magnitude of the damping coefficient of the damping element 108. In some embodiments, the vertical road velocity may be approximated by using the vertical velocity of the mass 104. In some embodiments, the vertical road velocity may be approximated by using the vertical velocity of the mass 104, the actuator force 110, and the suspension travel 106, and may be further expanded to include other signals to improve accuracy.
[0030] The outputs from blocks 96 and 98 may then be summed in block 99 to generate an adjusted total force command. It should be noted that any other suitable bandpass filters or equivalents (e.g., Besself filters, Chebyshev filters, elliptic filters, fourth order IIR filters, and finite impulse response (FIR) filters) may also be used in blocks 92 and / or 94.
[0031] Parameters that may be used to define the bandpass filter combination in FIG. 7 may include a lower frequency limit (LML) of the filter in block 92 and an upper frequency limit (UFL) of the filter in block 94 .
[0032] The inventors have recognized that in some embodiments, the values of these parameters may be determined during calibration of the system and maintained during subsequent use. The inventors have further recognized that the value of the TITF of system 90 may also be selected during an initial tuning process and maintained during subsequent use.
[0033] However, the inventors have also recognized that, alternatively, the value of the TITF may be initially selected during measurement or tuning, but subsequently adapted during use by using a planner 22b as shown in FIG. 2. For example, in some embodiments of FIG. 2, the planner may be used to select the TITF based on information from various sources (such as, for example, road-specific data source 28, environmental data source 30, and / or vehicle-specific data source). Once the optimal value of the TITF is selected, the planner may generate a trajectory plan for the vehicle (e.g., a vertical trajectory plan) and provide the plan to the controller 22a for execution at each time step over a period of time. As used herein, the term "vertical trajectory plan" refers to a sequence of instructions provided to one or more controllers of a vehicle suspension system (e.g., an active suspension system) to generate a desired motion of the vehicle body or a portion of the vehicle body in a vertical plane. In some embodiments, the planner 22b may determine the optimal value of the TITF based on information (e.g., information about the road ahead of the vehicle, the vehicle's environment, and / or the vehicle itself). For example, based on information about the road segment ahead of the vehicle, the mass and speed of the vehicle, and the maximum force output of one or more actuators, the planner may determine an optimal TITF for maximum isolation of the vehicle body in undulation, pitch, and / or roll while traveling a given road segment. In some embodiments, the planner 22b may optimize the TITF to minimize the area of the command force time profile that exceeds the capacity (e.g., force saturation) of one or more actuators. The planner 22b may then generate a set of force commands and / or criteria for one or more suspension actuators and provide those commands to the controller. The controller may then request additional commands once a given portion of the vertical trajectory plan has been implemented. Alternatively or additionally, the planner may deliver a new trajectory plan when ready.
[0034] FIG. 9 illustrates a block diagram of an example embodiment of planner 120 that may work in conjunction with a controller (not shown in FIG. 9). Information received by planner 120 may include, but is not limited to, road profile data for the road segment ahead of the vehicle in block 122, a TITF estimate in block 124, and force limits of at least one actuator in block 126. In block 128, an initial force command profile may be estimated for the road segment ahead of the vehicle. Based on this first estimate, an optimized force command may be determined in block 130. In some embodiments, the optimization may include modifying the TITF estimate by increasing or decreasing the value of the TITF until the integral of the force command over the actuator force limits is minimized. In block 132, the optimized force command may be constrained to fall within the actuator force limits (e.g., by clipping or scaling the optimized force command). In some embodiments, if it is determined that the optimization process has not converged in time or otherwise failed in block 132, the planner may revert to the initial force command estimate determined in block 128. Thus, in block 132, the initial force command may be constrained (eg, by clipping or scaling the initial force command) to be within the force limits of the actuator.
[0035] In some embodiments, under some operating conditions, the planner may be used to provide a plan (e.g., a sequence of force commands to be applied by one or more actuators while the vehicle travels along a road segment) to a controller of a particular vehicle system (e.g., active suspension actuators). In some embodiments, the planner may provide the plan to the controller when the plan is ready. In some embodiments, the controller may request a new plan when needed. The command profile may be used to command appropriate outputs as a function of time (e.g., by active suspension actuators). The sequence of force commands may be configured to generate a desired vertical movement when the vehicle encounters the road profile provided to the planner. In some embodiments, the planner may operate over a cycle time that is much slower (e.g., 10-100 times slower) than the controller. The controller may provide a force plan that may be implemented over many cycles of the controller.
[0036] FIG. 10 shows a comparison of the actual desired force command 140 compared to a saturated or clipped force 142 that may be applied over a 30 second period by an active suspension actuator having a maximum force capacity of 1500N.
[0037] FIG. 11 illustrates an example vehicle 150 experiencing a constant pitch angular velocity 152 and a pitch angular acceleration 154 that is close to zero. Also illustrated in FIG. 11 is the linear velocity 152a of the front of the vehicle and the linear velocity 152b of the rear of the vehicle. FIG. 12 illustrates the example vehicle 150 of FIG. 11 again experiencing a constant angular pitch velocity 162 and a pitch acceleration 164 that is close to zero before time T1. Also illustrated in FIG. 12 is the linear velocity 162a of the front of the vehicle and the linear velocity 162b of the rear of the vehicle. In the operating condition illustrated in FIG. 12, the front actuator suddenly reaches its maximum output of compression at time T1. When this occurs, the linear velocity of the front of the vehicle may drop to zero quickly (e.g., in less than one second). As illustrated in FIG. 12, at time T1, the pitch acceleration may experience a discontinuity that may produce unpleasant or undesirable vibrations or noises that may be perceived by the vehicle occupants. Thus, since the motion of the vehicle in the vertical plane may be controlled by multiple active suspension actuators, in some embodiments multiple vertical trajectory planners may be used in the vehicle. In some embodiments, at least one planner may be associated with each controller that may be associated with an active suspension actuator. However, in some embodiments, a single vertical trajectory planner may be associated with multiple controllers and actuators.
[0038] The above embodiments of the technology described herein may be implemented in any of a myriad of ways. For example, some embodiments may be implemented using hardware, software, or a combination thereof. When implemented in software, the software code may be executed on any suitable processor or collection of processors, whether provided in a single computer or distributed among multiple computers. Such a processor may be implemented as an integrated circuit with one or more processors in an integrated circuit component (including commercially available integrated circuit components known in the art by names such as CPU chips, GPU chips, microprocessors, microcontrollers, or coprocessors). Alternatively, the processor may be implemented in custom circuitry such as an ASIC, or in semi-custom circuitry resulting from configuring a programmable logic device. As a further alternative, the processor may be part of a larger circuit or semiconductor device, whether commercially available, semi-custom, or custom. As a specific example, some commercial microprocessors have multiple cores such that one or a subset of those cores may constitute a processor. However, the processor may be implemented using circuitry in any suitable format.
[0039] Further, it should be understood that a computer may be embodied in any of many forms, such as a rack-mounted computer, a desktop computer, a laptop computer, or a tablet computer, etc. In addition, a computer may be embedded within a device not generally considered to be a computer, but having suitable processing capabilities, including a personal digital assistant (PDA), a smart phone, or any other suitable portable or fixed electronic device.
[0040] A computer may also have one or more input / output devices. These devices may be used specifically to present a user interface. Examples of output devices that may be used to provide a user interface include a printer or display screen for visual presentation of output, and a speaker or other sound generating device for audible presentation of output. Examples of input devices that may be used for a user interface include keyboards and pointing devices (such as mice, touch pads, and digitizing tablets). As another example, a computer may receive input information via speech recognition or in other audible formats.
[0041] Such computers may be interconnected by one or more networks of any suitable type, including a local area network or a wide area network (such as an enterprise network or the Internet). Such networks may be based on any suitable technology and operate according to any suitable protocol, and may include wireless networks, wired networks, or fiber optic networks.
[0042] Also, the various methods or processes outlined herein may be coded as software executable on one or more processors employing any one of a wide variety of operating systems or platforms. In addition, such software may be written using any of a number of suitable programming languages and / or programming or scripting tools, and may also be compiled as executable machine code or intermediate code that runs on a framework or virtual machine.
[0043] In this regard, the embodiments described herein may be embodied as a computer-readable storage medium (or multiple computer-readable media) (e.g., a computer memory, one or more floppy disks, compact disks (CDs), optical disks, digital video disks (DVDs), magnetic tapes, flash memories, circuitry in field programmable gate arrays or other semiconductor devices, or other tangible computer storage media) encoded with one or more programs that, when executed on one or more computers or other processors, perform methods to implement the various embodiments discussed above. As is evident from the foregoing examples, a computer-readable storage medium may retain information for a sufficient time to provide computer-executable instructions in a non-transitory form. Such computer-readable storage medium or media may be portable such that a program or programs stored thereon may be loaded onto one or more different computers or other processors to implement various aspects of the present disclosure as discussed above. As used herein, the term "computer-readable storage medium" encompasses only non-transitory computer-readable media that may be considered to be an article of manufacture (i.e., an article of manufacture) or a machine. Alternatively or additionally, the present disclosure may be embodied as a computer-readable medium other than a computer-readable storage medium, such as a propagating signal.
[0044] The terms "program" or "software" are used herein in a generic sense to refer to any type of computer code or any set of computer-executable instructions that may be employed to program a computer or other processor to implement various aspects of the present disclosure as discussed above. In addition, according to one aspect of this embodiment, it should be understood that one or more computer programs that, when executed, perform the methods of the present disclosure need not reside on a single computer or processor, but may be distributed in a modular manner among many different computers or processors to implement various aspects of the present disclosure.
[0045] Computer-executable instructions may be in many forms, such as program modules, executed by one or more computers or other devices. Generally, program modules include routines, programs, objects, components, data structures, etc. that perform particular tasks or implement particular abstract data types. Typically the functionality of the program modules may be combined or distributed as desired in various embodiments.
[0046] Also, the data structures may be stored within the computer-readable medium in any suitable format. For simplicity of illustration, the data structures may be shown as having fields that are related through locations within the data structure. Such relationships may also be realized by allocating storage of the fields with locations within the computer-readable medium that convey the relationships between the fields. However, any suitable mechanism may be used to establish relationships between information within the fields of the data structure, including through the use of pointers, tags, or other mechanisms that establish relationships between data elements.
[0047] Various aspects of the disclosure may be used alone, in combination, or in a wide variety of configurations not specifically discussed in the embodiments described above, and therefore are not limited in their application to the details and arrangements of parts set forth in the foregoing specification or illustrated in the accompanying drawings. For example, aspects described in one embodiment may be combined in any manner with aspects described in other embodiments.
[0048] Also, the embodiments described herein may be embodied as methods, examples of which are provided. The acts performed as part of a method may be ordered in any suitable manner. Thus, even if shown as sequential acts in an exemplary embodiment, embodiments may be constructed in which the acts are performed in a different order than shown, and which may include performing some acts simultaneously.
[0049] Additionally, certain actions are described that are taken by a "user." It should be recognized that a "user" need not be a single individual and that in some embodiments actions attributed to a "user" may be performed by an individual and / or a team of individuals working in conjunction with computer-assisted tools or other mechanisms.
[0050] While the present teachings have been described in conjunction with various embodiments and examples, it is not intended that the present teachings be limited to such embodiments or examples. On the contrary, the present teachings encompass various alternatives, modifications, and equivalents, as will be recognized by those skilled in the art. Accordingly, the foregoing description and drawings are for illustrative purposes only.
Claims
1. 1. A method of operating a system on a vehicle while the vehicle is traveling along a road surface, comprising: receiving, at a microprocessor within the vehicle, road surface profile data relating to a road surface ahead of the vehicle; filtering the road surface profile data with a lower frequency band pass filter to generate a first filtered output, the lower frequency band pass filter having a first lower frequency limit equal to a first frequency and a first upper frequency limit equal to a second frequency; providing the first filtered output to a lower frequency transfer function to generate a lower frequency command signal; filtering the road surface profile data with an upper frequency band pass filter to generate a second filtered output, the upper frequency band pass filter having a second lower frequency limit equal to the second frequency and a second upper frequency limit equal to a third frequency, the upper frequency band pass filter operating in parallel with the lower frequency band pass filter; providing the second filtered output to an upper frequency transfer function to generate an upper frequency command signal; determining a total command signal based on the lower frequency command signal and the upper frequency command signal; and operating said system based at least in part on said command signals; A method comprising:
2. The method of claim 1 , wherein the first frequency can be in the range of frequencies from 0.3 Hz to 0.8 Hz, inclusive.
3. The method of claim 1 , wherein the third frequency is in the range of frequencies from 8 Hz to 0.812 Hz, inclusive.
4. The method of claim 1 , wherein the first frequency and the third frequency are predetermined.
5. 10. The method of claim 1, wherein the data is received at a microprocessor in the vehicle from a source selected from the group consisting of a remote database, a database in the cloud, and a local database located in the vehicle.
6. 2. The method of claim 1, wherein the first lower frequency limit is determined at a lower −3 dB point of the lower frequency bandpass filter and the first upper frequency limit is determined at an upper −3 dB point of the lower frequency bandpass filter.
7. 2. The method of claim 1, wherein the second lower frequency limit is determined at a lower −3 dB point of the upper frequency bandpass filter and the second upper frequency limit is determined at an upper −3 dB point of the upper frequency bandpass filter.
8. The method of any one of claims 1 to 7, wherein the system is an active suspension actuator.
9. The method of claim 8 further comprising controlling the active suspension with an active suspension controller.
10. 2. The method of claim 1, wherein the lower frequency command signal causes a portion of the vehicle to follow at least a first vertical movement of the roadway.
11. 2. The method of claim 1, wherein the upper frequency command signal isolates a portion of the vehicle from at least vertical movement of the roadway.
12. 2. The method of claim 1, wherein the total command signal is determined by summing the lower frequency command signal and the upper frequency command signal.
13. 11. The method of claim 10, wherein the lower frequency command signal is a first series force command.
14. 12. The method of claim 11, wherein the upper frequency command signal is a second series force command.
15. The method of claim 9 further comprising determining the second frequency while the vehicle is traveling along a road surface.
16. The method of claim 15 further comprising operating a vertical motion planner to optimize a cost function associated with the active suspension actuators.
17. The method of claim 16 , wherein optimizing the cost function comprises minimizing the extent to which the total command signal includes commands beyond the capabilities of the active suspension actuators to implement.
18. 17. The method of claim 16, wherein the vertical motion planner operates at a first cycle time and the controller operates at a second, faster cycle time.
19. 20. The method of claim 18, wherein the first cycle time is in the range of a cycle time of 0.1 seconds or more to 1 second or less.
20. 19. The method of claim 18, wherein the second cycle time is within a cycle time range of 0.0005 seconds to 0.02 seconds.
21. 1. A method of operating a vehicle while traveling along a road surface, the method comprising: (a) operating a vehicle system according to a first motion plan by a controller including a microprocessor operating at a first cycle time after initiation of a first period of a given duration, the motion plan being prepared prior to the initiation of the first period by a motion planner microprocessor operating at a second cycle time; (b) during step (a), collecting data related to the movement of the vehicle with at least one sensor mounted on the vehicle; and (c) prior to the end of the first period, operating a vehicle system with the controller in accordance with a second motion plan prepared by the motion planner; Including, The method of claim 1, wherein a value of at least one vehicle system parameter during the transition from the first plan to the second plan is determined based at least in part on the data collected during step (b).
22. 22. The method of claim 21, wherein the first cycle time is in the range of 50 Hz to 2000 Hz.
23. 22. The method of claim 21, wherein the second cycle time is in the range of 2 Hz to 20 Hz.
24. The method of claim 21 , wherein the vehicle system is an active suspension system.
25. 25. The method of any one of claims 21 to 24, wherein the motion plan is a vertical motion plan based at least on a road profile of the segment of road ahead of the vehicle prior to the start of the first time period.
26. 26. The method of claim 25, wherein the first vertical motion plan includes a first plan for vehicle motion within a first range of frequencies above a first frequency and a second plan for vehicle motion within a second range of frequencies below the first frequency.
27. 27. The method of claim 26, wherein the first frequency is determined by the motion planner based at least in part on a road profile of the segment of the road ahead of the vehicle prior to the start of the first time period.
28. 26. The method of claim 25, wherein information regarding the road profile of the segment of the road is received at the vehicle from a database in the cloud.
29. 1. A method of operating a vehicle while traveling along a road surface, the vehicle including a vertical motion planner and a vertical motion controller, the method comprising: receiving road surface profile data for a road segment ahead of the vehicle at the vertical motion planner; using the vertical motion planner to develop a first vertical force profile for at least one actuator of an active suspension system based on the road surface profile and for a range of frequencies beyond a first frequency, the first vertical force profile configured to isolate at least a portion of the vehicle from road surface disturbances while the vehicle travels along the road segment; using the vertical motion planner to develop a second vertical force profile for the at least one actuator of the active suspension system based on the road surface profile and for a range of frequencies less than the first frequency, the second vertical force profile configured to cause motion of the at least portion of the vehicle to follow the road surface profile while the vehicle travels along the road segment; providing an overall force profile to the controller, the overall force profile being a combination of the first force profile and the second force profile; and operating at least one actuator to apply a force to the at least one portion of the vehicle according to the overall force profile while the vehicle travels along the road segment. A method comprising:
30. 30. The method of claim 29, wherein the first force profile and / or the second force profile are based at least in part on state parameters of the vehicle.
31. 30. The method of claim 29, further comprising minimizing a cost function associated with the actuator by modifying the first frequency.
32. 32. The method of any one of claims 29 to 31, wherein the cost function is based on parameters selected from the group consisting of an amount of force saturation, an amount of extent of travel saturation, and the value of the first frequency.
33. 1. A controller system for an actuator of an active suspension system, comprising: a microprocessor-based vertical motion planner configured to develop a first optimal motion plan for a vehicle for frequencies within a range below a first frequency and a second optimal motion plan for frequencies above the first frequency that differs from the first optimal motion plan, the first and second optimal motion plans being based at least in part on a road motion profile of the segment of the road ahead of the vehicle; and a microprocessor-based controller configured to control vertical motion of the vehicle with an active suspension controller based on the first optimal motion plan and the second optimal motion plan; A controller system including:
34. 1. A method of operating a system on a vehicle while the vehicle is traveling along a road surface, the method comprising: receiving a preview of a road surface profile of the road segment ahead of the vehicle; separating the road surface profile into a first component comprising a range of frequencies below a first frequency and a second component comprising a range of frequencies above the first frequency; applying a first transfer function to the first component and a second transfer function to the second component, the second transfer function being different from the first transfer function; and controlling the system with a microprocessor-based controller based on the sum of the first component and the second component. A method comprising:
35. 35. The method of claim 34, wherein the system is an active suspension system actuator interposed between a portion of the sprung mass and a portion of the unsprung mass of the vehicle.
36. 36. The method of claim 35, wherein the output of the first transfer function is a set of instructions that causes the active suspension actuator to apply a compliant force to the portion of the sprung mass in a range of frequencies less than the first frequency.
37. 37. The method of claim 36, wherein the output of the second transfer function is a set of instructions that causes the active suspension actuator to apply an isolation force to a portion of the sprung mass in a range of frequencies beyond the first frequency.
38. 37. The method of claim 36, further comprising determining the value of the first frequency by minimizing force saturation of the active suspension actuator.