Steering control device and steering control method
Patent Information
- Application Number
- PCT/JP2025/012503
- Authority / Receiving Office
- WO · WO
- Patent Type
- Applications
- Current Assignee / Owner
- Filing Date
- 2025-03-27
- Publication Date
- 2026-10-01
Smart Images

Figure JP2025012503_01102026_PF_FP_ABST
Abstract
Description
Steering control device and steering control method
[0001] The present disclosure relates to a steering control device and a steering control method.
[0002] For example, the following Patent Document 1 describes a control device that operates torque of a motor that steers steered wheels. More specifically, this control device operates the torque of the motor in accordance with an operation amount for feedback-controlling a detected value of a pinion angle, which is a steering-equivalent angle indicating the steering angle of the steered wheels, to a target value thereof. This control device calculates the target value based on the received detected value after receiving the detected value of the steering angle.
[0003] Japanese Unexamined Patent Publication No. 2023-131351
[0004] The inventor has studied sampling a detected value of a pinion angle as a feedback control amount after setting a target value in the above control device. However, in this case, the inventor found that if the timing of the target value fluctuates due to a shift in reception timing or the like, the sampling cycle of the detected value of the pinion angle fluctuates.
[0005] According to one aspect of the present disclosure, there is provided a steering control device in which a steering device is a controlled object. The steering control device is configured to repeatedly execute a motor angle calculation process, a steering rotation angle calculation process, an operation amount calculation process, an operation process, and an acquisition process. The motor angle calculation process is a process of calculating a rotation angle of a motor that applies power to a rotation shaft of the steering device. The steering rotation angle calculation process is a process of calculating a steering rotation angle from the rotation angle of the motor. The steering rotation angle is an angle determined by the rotation angle of the rotation shaft. The operation amount calculation process is a process of calculating an operation amount for feedback control in which the steering rotation angle is a controlled variable based on the steering rotation angle as an input variable. The operation process is a process of operating a drive circuit of the motor based on the operation amount as an input variable. The acquisition process is a process of acquiring the rotation angle of the motor used for calculating the steering rotation angle from among the rotation angles of the motor calculated by the motor angle calculation process. An execution timing of the acquisition process is set such that a fluctuation in an execution cycle of the acquisition process is shorter than an execution cycle of the motor angle calculation process.
[0006] In another aspect of this disclosure, a steering control method is provided in which a steering device is the control target. The steering control method is a method that repeatedly executes a motor angle calculation process, a steering rotation angle calculation process, an operation variable calculation process, an operation process, and an acquisition process. The motor angle calculation process is a process that calculates the rotation angle of a motor that provides power to the rotation shaft of the steering device. The steering rotation angle calculation process is a process that calculates the steering rotation angle from the rotation angle of the motor. The steering rotation angle is an angle determined by the rotation angle of the rotation shaft. The operation variable calculation process is a process that calculates an operation variable for feedback control in which the steering rotation angle is the control variable, based on the steering rotation angle as an input variable. The operation process is a process that operates the drive circuit of the motor based on the operation variable as an input variable. The acquisition process is a process that acquires the rotation angle of the motor used to calculate the steering rotation angle from the rotation angle of the motor calculated by the motor angle calculation process. The execution timing of the acquisition process is set such that the variation in the execution period of the acquisition process is shorter than the execution period of the motor angle calculation process.
[0007] This is a block diagram showing the configuration of the steering system according to the first embodiment. This is a block diagram showing the processes performed by the reaction force ECU and steering ECU shown in Figure 1. This is a flowchart showing the procedure of the processes performed by the steering ECU shown in Figure 1. This is a flowchart showing the procedure of the processes performed by the steering ECU shown in Figure 1. This is a time chart showing the operation of the first embodiment. This is a flowchart showing the procedure of the processes performed by the steering ECU according to the second embodiment. This is a flowchart showing the procedure of the processes performed by the steering ECU according to the second embodiment. This is a time chart showing the operation of the second embodiment.
[0008] <First Embodiment> The first embodiment will be described below with reference to the drawings. "Prerequisite Configuration" As shown in Figure 1, the steering device 10 of the vehicle is a steer-by-wire type steering device. The steering device 10 includes a reaction force actuator Ar and a steering actuator At. The steering device 10 of this embodiment has a structure in which the power transmission path between the steering wheel 12 and the steering wheel 44 is mechanically and permanently blocked.
[0009] A steering shaft 14 is connected to the steering wheel 12. The reaction force actuator Ar is an actuator for applying steering reaction force to the steering wheel 12. Steering reaction force refers to the force acting in the opposite direction to the direction of steering wheel 12 operation by the driver. By applying steering reaction force to the steering wheel 12, it is possible to give the driver a suitable sense of feedback. The reaction force actuator Ar includes a reduction mechanism 16, a reaction force motor 20, and a reaction force inverter 22.
[0010] The reaction motor 20 is a three-phase brushless motor. The rotation shaft of the reaction motor 20 is connected to the steering shaft 14 via a reduction mechanism 16. On the other hand, the steering shaft 40 extends along the vehicle width direction, which is the left-right direction in Figure 1. The left and right steering wheels 44 are connected to both ends of the steering shaft 40 via tie rods 42. The steering angle of the steering wheels 44 is changed by the linear motion of the steering shaft 40.
[0011] The steering actuator At comprises a reduction mechanism 56, a steering motor 60, and a steering inverter 62. The steering motor 60 is a three-phase brushless motor. The rotating shaft of the steering motor 60 is connected to a pinion shaft 52 via the reduction mechanism 56. The pinion teeth of the pinion shaft 52 mesh with the rack teeth 54 of the steering shaft 40. The pinion shaft 52 and the steering shaft 40 on which the rack teeth 54 are formed constitute a rack and pinion mechanism 50. The torque of the steering motor 60 is applied to the steering shaft 40 as a steering force via the pinion shaft 52. In response to the rotation of the steering motor 60, the steering shaft 40 moves along the vehicle width direction, which is the left-right direction in Figure 1.
[0012] The steering system 10 includes a reaction force ECU 70 and a steering ECU 90. The reaction force ECU 70 includes a PU 72, a storage device 74, and peripheral circuits 76. The PU 72 is a software processing unit such as a CPU. Here, the peripheral circuits 76 include a circuit that generates a clock signal that defines the internal operation, a power supply circuit, and a reset circuit, etc. The reaction force ECU 70 controls the control amount by having the PU 72 execute a program stored in the storage device 74.
[0013] The object controlled by the reaction force ECU 70 is the steering wheel 12. The reaction force ECU 70 operates the reaction force actuator Ar to control the steering reaction force, which is the control amount of the object being controlled. Figure 1 shows the operation signal MSs to the reaction force inverter 22.
[0014] The reaction force ECU 70 refers to the steering torque Th, which is the input torque to the steering shaft 14 detected by the torque sensor 80, in order to control the control amount. The reaction force ECU 70 also refers to the detection signal from the rotation angle sensor 82. This detection signal indicates the rotation angle θa of the rotation axis of the reaction force motor 20. The reaction force ECU 70 also refers to the vehicle speed V detected by the vehicle speed sensor 84. The reaction force ECU 70 also refers to the currents iu1, iv1, and iw1 flowing through the reaction force motor 20. The currents iu1, iv1, and iw1 are quantified as the voltage drop across the shunt resistors provided on each leg of the reaction force inverter 22.
[0015] The steering ECU 90 includes a PU 92, a storage device 94, and peripheral circuits 96. The PU 92 is a software processing unit such as a CPU. The steering ECU 90 controls the control amount by having the PU 92 execute a program stored in the storage device 94.
[0016] The steering ECU 90 controls the steering wheel 44. The steering ECU 90 operates the steering actuator At to control the steering angle of the steering wheel 44, which is the control amount of the controlled object. Figure 1 shows the operation signal MSt to the steering inverter 62.
[0017] The steering ECU 90 refers to the detection signal from the rotation angle sensor 83 in order to control the control amount. This detection signal indicates the rotation angle θb of the rotation axis of the steering motor 60. The steering ECU 90 also refers to the currents iu2, iv2, and iw2 flowing through the steering motor 60. The currents iu2, iv2, and iw2 are quantified as the voltage drop across the shunt resistors provided on each leg of the steering inverter 62.
[0018] "Basic Control" Figure 2 shows the processes performed by the reaction force ECU 70 and the steering ECU 90. Some of the processes shown in Figure 2 are realized by the PU 72 repeatedly executing a program stored in the memory device 74, for example, at a predetermined period. The remaining processes shown in Figure 2 are realized by the PU 92 repeatedly executing a program stored in the memory device 94, for example, at a predetermined period.
[0019] The assist amount calculation process M10 calculates the assist amount Ta based on the steering torque Th and vehicle speed V as input variables. The addition process M12 outputs the value obtained by adding the steering torque Th to the assist amount Ta.
[0020] The axial force setting process M14 is a process that sets the axial force Fir, which is the force resisting the rotation of the steering wheel 12, based on the q-axis current iqt and the equivalent steering angle θp as input variables. Here, the q-axis current iqt is the current flowing through the steering motor 60. The q-axis current iqt is calculated by PU92 based on the input variables currents iu2, iv2, and iw2. The equivalent steering angle θp is a variable that indicates the steering angle of the steering wheel 44. The equivalent steering angle θp is, for example, the rotation angle of the pinion shaft 52. The equivalent steering angle θp is calculated by PU92 based on the rotation angle θb as an input variable. The q-axis current iqt and the equivalent steering angle θp are transmitted from the steering ECU90 to the reaction force ECU70 by communication.
[0021] The basic reaction force calculation process M16 is a process that subtracts the axial force Fir from the output value of the addition process M12 and substitutes the result into the total axial force Fs. The reference model M18 is a process that sets the target steering angle θh* based on the total axial force Fs as an input variable. Here, the model equation expressed by the following equation (c1), which relates the total axial force Fs and the target steering angle θh*, is used.
[0022] Fs = C・θh*' + J・θh*'' ... (c1) The model expressed by the above equation (c1) is a model that defines the relationship between the axial force of the steering shaft 40 and the steering angle θh in a system where the steering wheel 12 and the steering wheel 44 are mechanically connected. In the above equation (c1), the viscosity coefficient C models the friction of the steering device 10, and the inertia coefficient J models the inertia of the steering device 10.
[0023] The steering feedback process M20 calculates the final reaction force Ffi based on the manipulated variable of the feedback control, where the steering angle θh is the controlled variable and the target steering angle θh* is the target value of the controlled variable. Alternatively, the steering feedback process M20 may also calculate the final reaction force Ffi by taking into account the manipulated variable of the open-loop control, where the steering angle θh is the controlled variable. Furthermore, the steering angle θh is calculated by PU72 based on the rotation angle θa as an input variable.
[0024] The reaction force operation signal generation process M22 is a process that generates and outputs an operation signal MSs for operating the reaction force inverter 22 based on the final reaction force Ffi as an input variable. The reaction force operation signal generation process M22 includes a process for calculating the target torque of the reaction force motor 20 based on the final reaction force Ffi as an input variable. The reaction force operation signal generation process M22 includes a process for calculating the operation signal MSs of the reaction force inverter 22 so that the torque of the reaction force motor 20 approaches the target torque.
[0025] The target steering equivalent angle setting process M24 sets the target steering equivalent angle θp* based on the steering angle θh and vehicle speed V as input variables. The steering feedback process M30 calculates the target steering torque Tt* based on the target steering equivalent angle θp* and steering equivalent angle θp as input variables.
[0026] The steering control signal generation process M32 generates and outputs an operation signal MSt for the steering inverter 62 based on the target steering torque Tt* as an input variable. The steering control signal generation process M32 includes a process to calculate the target torque of the steering motor 60 based on the target steering torque Tt* as an input variable. The steering control signal generation process M32 includes a process to generate an operation signal for the steering inverter 62 based on the target torque as an input variable.
[0027] "Execution Timing of Each Process" The PU92 of the steering ECU90 assigns and executes the processes shown in Figure 2 as tasks with period T1, tasks with period T2, and tasks with period T3. Period T1 is shorter than period T2, and period T2 is shorter than period T3. Tasks with period T1 are executed with higher priority than tasks with period T2 and tasks with period T3. Tasks with period T2 are executed with higher priority than tasks with period T3. Note that periods T2 and T3 may be integer multiples of period T1. This can be achieved, for example, by setting periods T1, T2, and T3 to "100 μs", "500 μs", and "1000 μs", respectively.
[0028] Figure 3 shows a portion of the procedure for a task with period T1. The process shown in Figure 3 is realized by the PU 92 repeatedly executing a program stored in the memory device 94, for example, at a predetermined period. In the following, the step number of each process will be represented by a number preceded by "S".
[0029] In the series of processes shown in Figure 3, PU92 first determines whether flag F1 is "1" or not (S10). Flag F1 is set to "1" once every two execution timings of a task with period T1.
[0030] If PU92 determines that flag F1 is "1" (S10: YES), it calculates the rotation angle θb based on the detection signal from the rotation angle sensor 83 as an input variable and updates the rotation angle θb stored in a predetermined memory area of the memory device 94 (S12). Then PU92 obtains the target steering torque Tt* stored in a predetermined memory area of the memory device 94 (S14). PU92 calculates the operation signal MSt (S16). Then PU92 operates the steering inverter 62 (S18). The processes from S14 to S18 correspond to the steering operation signal generation process M32.
[0031] If PU92 completes the process in S18, it assigns "0" to flag F1 (S20). On the other hand, if PU92 determines that the process in S10 is negative, it assigns "1" to flag F1 (S22).
[0032] When PU92 completes the processes in S20 and S22, it terminates the series of processes shown in Figure 3. Figure 4 shows some of the steps for a task with period T2. The processes shown in Figure 4 are realized by PU92 repeatedly executing a program stored in the memory device 94, for example, at a predetermined period.
[0033] In the series of processes shown in Figure 4, PU92 first determines whether flag F2 is "1" or not (S30). Flag F2 is set to "1" once every two execution timings of the task with period T2.
[0034] If PU92 determines that flag F2 is "1" (S30: YES), it obtains the rotation angle θb stored by the process in S12 (S32). Next, PU92 calculates the steering equivalent angle θp based on the rotation angle θb as an input variable (S34). After that, PU92 receives the target steering equivalent angle θp* from the reaction force ECU70 (S36). Then PU92 assigns "0" to flag F2 (S38).
[0035] On the other hand, if PU92 determines that the result is negative in the process of S30 (S30: NO), it assigns "1" to flag F2 (S40). When PU92 completes the processes of S38 and S40, it terminates the series of processes shown in Figure 4.
[0036] Figure 5 shows a partial procedure for a task with period T3. The process shown in Figure 5 is realized by the PU 92 repeatedly executing a program stored in the memory device 94, for example, at a predetermined period.
[0037] In the series of processes shown in Figure 5, the PU 92 reads the target steering equivalent angle θp* and the steering equivalent angle θp by accessing a predetermined storage area of the storage device 94 (S50). Then, the PU 92 calculates the target steering torque Tt* based on the target steering equivalent angle θp* and the steering equivalent angle θp as input variables (S52). The processes in S50 and S52 correspond to the steering feedback process M30.
[0038] Furthermore, when PU92 completes the processing in S52, it terminates the series of processes shown in Figure 5. <Operation and Effects of this Embodiment> The upper part of Figure 6 shows an example of the processing progression of this embodiment. In Figure 6, the hatched portion of the task with period T1 indicates that the processes S12 to S18 in Figure 3 are being executed. That is, as shown in Figure 3, the processes S12 to S18 are repeatedly executed with a period of "T1・2". A period with a length of "T1・2" corresponds to a small period.
[0039] In Figure 6, the hatched portion of the period T2 task indicates that it is executing a part of the process shown in Figure 4. Note that the series of processes shown in Figure 6 are assigned to the period T2 task, but in reality, another period T2 task may be executed between, for example, the processes of S34 and S36. As shown in Figure 6, the processes of S32 and S34 are executed repeatedly with a period of "T2.2". Specifically, the processes of S32 and S34 are executed at the beginning of the period T2 task. Note that the period T1 task is set to be executed with priority over the period T2 task, so if the execution timing of the period T1 task occurs in the middle of the period T2 task, the period T2 task is interrupted and the period T1 task is executed. For example, the period T2 task started at time t1 is interrupted at time t2 because the execution of the period T1 task takes priority. Then, the period T2 task is resumed at time t3 when the period T1 task finishes. The period T2 task finishes at time t4. In Figure 6, dashed vertical lines indicate the interruption and resumption of a task, such as a task with period T2 at times t2 and t3. On the other hand, solid vertical lines indicate the start and end of a task, such as a task with period T2 at times t1 and t4. A period with a length of "T2.2" corresponds to an intermediate period.
[0040] In Figure 6, the hatched portion of the task with period T3 indicates that the processing shown in Figure 5 is being executed. Note that period T3 corresponds to a large period. The lower part of Figure 6 shows an example of the processing progression in a comparative example of this embodiment. In the comparative example, although the processing in S36 is set as a task with period T2, the processing in S32 and S34 is set as a task with period T3. Moreover, the processing in S32 and S34 is set to be executed after the execution of S36.
[0041] FIG. 6 shows an example in which the load fluctuation of the task with period T2 is large. In this case, in the comparative example, when the cycle of the completion timing of the reception processing of the target steering equivalent angle θp* fluctuates, the calculation processing of the steering equivalent angle θp is executed after the reception processing, so that the cycle of the calculation timing of the steering equivalent angle θp also fluctuates. The rotation angle θb used for calculating the steering equivalent angle θp is the rotation angle θb stored in a predetermined storage area of the storage device 94 at the calculation timing of the steering equivalent angle θp. Therefore, when the cycle of the completion timing of the reception processing fluctuates, the cycle of the acquisition timing of the rotation angle θb acquired for calculating the steering equivalent angle θp also fluctuates. This causes fluctuation in the cycle of the timing at which the rotation angle θb used for calculating the steering equivalent angle θp is sampled.
[0042] That is, when the fluctuation amount of the execution cycle of the process of S32 is larger than "2·T1", the cycle of the timing at which the rotation angle θb used for calculating the steering equivalent angle θp is sampled becomes different from the cycle T3, which leads to a decrease in controllability of the target steering torque Tt*. This fluctuation can be a factor causing abnormal noise and the like. FIG. 6 shows an example in which the sampling timings of the rotation angle θb used for calculating the target steering torque Tt* are time t0, time t5, and time t6.
[0043] Specifically, in the comparative example, after the process of S36 is executed between time t3 and time t4, the processes of S32 and S34 are executed after time t4. In this case, the sampling timing of the rotation angle θb acquired by the process of S32 is a timing between time t0 and time t1. Hereinafter, for convenience of explanation, when the rotation angle θb is sampled at a timing between time t0 and time t0+T1, it is regarded as being sampled at time t0.
[0044] Next, the timing at which the process of S36 is executed is later than time t5. Therefore, the processes of S32 and S34 are also executed at a timing later than time t5. In this case, the timing at which the rotation angle θb acquired by the process of S32 is sampled is time t5. The interval between time t0 and time t5 is "T3+2·T1".
[0045] Then, the amount by which the timing for executing the process of S36 is delayed with respect to time t6 is smaller than "2·T1". Accordingly, the amount by which the timing for executing the process of S32 is delayed with respect to time t6 is also smaller than "2·T1". Therefore, the sampling timing of the rotation angle θb acquired by the process of S32 is time t6. The time interval between time t5 and time t6 is "T3-2·T1".
[0046] In the example shown in Fig. 6, the execution timing of the second process of S36 is delayed due to load fluctuation of period T2. Therefore, although the rotation angle θb sampled at the timing delayed by the period T3 from time t0 should be used for calculating the steering-equivalent angle θp, the rotation angle θb sampled at time t5 ends up being used.
[0047] Therefore, although the period between timings at which the newly calculated target steering torque Tt* is reflected in actual control by the processes of S16 and S18 is constant at the period T1, the sampling period of the rotation angle θb used for calculating the target steering torque Tt* is not constant.
[0048] In order to avoid such a situation, it is desirable that the fluctuation of the execution timing of the process of S32 is made smaller than "2·T1". Therefore, in the present embodiment, the process of S32 is executed at the start of the task of period T2. This makes it possible to minimize the fluctuation of the sampling period of the rotation angle θb used for calculating the steering-equivalent angle θp. Therefore, the sampling period of the rotation angle θb used for calculating the target steering torque Tt* that is repeatedly updated at the period T3 can be fixed to the period T3.
[0049] According to the present embodiment described above, the following additional actions and effects can be obtained. (1-1) The reception processing for the target steering-equivalent angle θp* is set to the task of period T2. Since the task of period T2 has higher priority than the task of period T3, the reception processing for the target steering-equivalent angle θp* can be executed more reliably compared to when the reception processing for the target steering-equivalent angle θp* is set to the task of period T3.
[0050] On the other hand, with these settings, the load on the task with period T2 increases. This leads to load fluctuations on the task with period T2. Therefore, with settings like those in the comparative example, the sampling period of the rotation angle θb used to calculate the target steering torque Tt* is prone to fluctuation. For this reason, the settings of this embodiment are particularly valuable.
[0051] <Second Embodiment> The second embodiment will be described below, focusing on the differences from the first embodiment, with reference to the drawings.
[0052] Figure 7 shows a portion of the procedure for a task with period T1. The process shown in Figure 7 is realized by the PU 92 repeatedly executing a program stored in the memory device 94, for example, at a predetermined period. In Figure 7, for convenience, the same step numbers are assigned to the processes corresponding to the processes shown in Figure 3.
[0053] In the series of processes shown in Figure 7, when PU92 completes the process in S12, it determines whether the counter C is "10" (S60). If PU92 determines that the counter C is "10" (S60: YES), it latches the rotation angle θb (S62). That is, the rotation angle θb calculated in the process in S12 is stored in a memory area separate from the memory area that is updated with a period of "T1 × 2" by the process in S12. PU92 also initializes the counter C. Then, PU92 proceeds to the process in S14.
[0054] On the other hand, PU92 increments counter C (S64) when it determines that counter C is less than "10" (S60: NO) or when it completes the process in S22. Then PU92 terminates the series of processes shown in Figure 7.
[0055] Figure 8 shows a partial procedure for a task with period T2. The process shown in Figure 8 is realized by the PU 92 repeatedly executing a program stored in the memory device 94, for example, at a predetermined period. In Figure 8, for convenience, the same step numbers are assigned to the processes corresponding to the processes shown in Figure 4.
[0056] As shown in Figure 8, in this embodiment, the task with period T2 includes the processing of S36, but does not include the processing of S32 and S34. Figure 9 shows a part of the procedure for the task with period T2. The processing shown in Figure 9 is realized by the PU 92 repeatedly executing a program stored in the storage device 94, for example, at a predetermined period. In Figure 9, for convenience, the same step numbers are assigned to the processing corresponding to the processing shown in Figure 5.
[0057] In the series of processes shown in Figure 9, PU92 first calculates the equivalent steering angle θp based on the rotation angle θb as an input variable (S70). Here, the input variable is the value latched in the process of S62. Next, PU92 reads out the target equivalent steering angle θp* that was received and stored in the process of S36 (S72). Then PU92 proceeds to the process of S52.
[0058] <Operation and Effects of the Second Embodiment> Figure 10 shows an example of the processing progression of this embodiment. The meaning of the hatching in Figure 10 is the same as in Figure 6. However, the hatched portion of the task with period T2 in Figure 10 indicates that the processing of S36 in Figure 8 is being executed. The hatched portion of the task with period T3 in Figure 10 indicates that the processing of Figure 9 is being executed.
[0059] As shown in Figure 10, in this embodiment as well, the load fluctuation of the task with period T2 is large, so the execution period of the process shown in Figure 9 itself fluctuates from period T3. However, the rotation angle θb used to calculate the steering equivalent angle θp in the process in Figure 9 is a value obtained periodically with period T3.
[0060] <Other Embodiments> This embodiment can be implemented with the following modifications. This embodiment and the following modifications can be combined with each other to the extent that they do not contradict each other technically.
[0061] "Regarding the latching process of the rotation angle θb" In the second embodiment described above, the process of latching the rotation angle θb was set as a task with period T1, but this is not limited to this. For example, the process of latching the rotation angle θb may be set as a process that is executed at the beginning of a task with period T2.
[0062] "Regarding the motor angle calculation process" In the above embodiment, the PU92 performed the process of calculating the rotation angle θb once every two times in the task with period T1, but it is not limited to this. For example, the PU92 may perform the process of calculating the rotation angle θb every time in the task with period T1.
[0063] "Regarding the steering angle calculation process" In the first embodiment described above, PU92 calculated the steering equivalent angle θp at the beginning of the task with period T2, but this is not limited to this. For example, PU92 may calculate the steering equivalent angle θp in period T1.
[0064] "Regarding the reception process" In the above embodiment, the PU92 received the target steering equivalent angle θp* once every two execution timings of the task with period T2, but this is not limited to this. For example, the PU92 may receive the target steering equivalent angle θp* every time the task with period T2 is executed.
[0065] In the above embodiment, the steering ECU 90 receives the target steering equivalent angle θp*, but it is not limited to this. For example, the steering ECU 90 may receive the steering angle. In that case, the PU 92 should execute the target steering equivalent angle setting process M24.
[0066] "Regarding the Tasks" - In the above embodiment, an example was shown where the periods of the tasks executed by PU92 are of three types: period T1, period T2, and period T3. However, it is not limited to this. For example, tasks with four or more types of periods may be executed.
[0067] Regarding the steering angle: The steering equivalent angle, which is a variable indicating the steering angle of the steering wheel 44, is not limited to the rotation angle of the pinion shaft 52. The steering equivalent angle may be, for example, the steering angle of the tire itself.
[0068] - The steering rotation angle, as a variable indicating the rotation angle of the steering shaft, is not limited to the steering equivalent angle θp. The steering rotation angle may be, for example, the steering angle θh as a variable indicating the rotation angle of the steering shaft 14. In that case, for example, if the steering angle θh is calculated based on the rotation angle θa as an input variable after setting the target steering angle θh*, the sampling period of the rotation angle θa used to calculate the steering angle θh may fluctuate due to fluctuations in the timing of setting the target steering angle θh*. Therefore, it is effective to set the execution timing of the acquisition process of the rotation angle θa used to calculate the steering angle θh in accordance with the above embodiment.
[0069] Regarding the controller: The controller for controlling the reaction force is not limited to the controller exemplified in the above embodiment. The controller for controlling the reaction force does not necessarily have to include a feedback controller in which the steering angle θh is the controlled variable.
[0070] - The controller for controlling the steering angle of the steering wheel 44 is not limited to the controller exemplified in the above embodiment. "Regarding the steering control device" - The steering control device is not limited to one that performs various processes using a PU. For example, it may be equipped with a dedicated hardware circuit such as an ASIC that performs at least a part of the processes performed in the above embodiment. That is, the control device may be equipped with any of the following processing circuits (a) to (c): (a) A processing circuit comprising a processing device that performs all of the above processes according to a program and a program storage device such as a storage device that stores the program. (b) A processing circuit comprising a processing device and a program storage device that perform a part of the above processes according to a program and a dedicated hardware circuit that performs the remaining processes. (c) A processing circuit equipped with a dedicated hardware circuit that performs all of the above processes. Here, there may be multiple software execution devices equipped with processing devices and program storage devices, or multiple dedicated hardware circuits.
[0071] Regarding the entity that executes the processes: It is not required that the entity that executes each of the above processes be a single control device, nor is it required that all of the executing entities be installed in the vehicle.
Claims
1. A steering control device in which a steering device is the controlled object, wherein the steering control device is configured to repeatedly perform a motor angle calculation process (S12), a steering rotation angle calculation process (S34), an operation variable calculation process (S52), an operation process (S18), and an acquisition process (S32), wherein the motor angle calculation process is a process for calculating the rotation angle (θb) of a motor that provides power to the rotating shaft of the steering device, the steering rotation angle calculation process is a process for calculating the steering rotation angle (θp) from the rotation angle of the motor, the steering rotation angle is an angle determined by the rotation angle of the rotating shaft, the operation variable calculation process is a process for calculating an operation variable for feedback control in which the steering rotation angle is the controlled variable, based on the steering rotation angle as an input variable, the operation process is a process for operating the motor drive circuit based on the operation variable as an input variable, and the acquisition process is a process for acquiring the rotation angle of the motor used for calculating the steering rotation angle from the rotation angle of the motor calculated by the motor angle calculation process. The timing of the acquisition process is set such that the variation in the execution cycle of the acquisition process is shorter than the execution cycle of the motor angle calculation process.
2. A steering control device according to claim 1, configured to periodically execute short-period tasks, medium-period tasks, and long-period tasks, wherein the short-period task is a task executed in a short period, the medium-period task is a task executed in a medium period longer than the short period, the long-period task is a task executed in a long period longer than the medium period, the short-period task is executed preferentially over the medium-period task and the long-period task, the medium-period task is executed preferentially over the long-period task, the motor angle calculation process is set to the short-period task, the acquisition process is set to be executed at the beginning of the medium-period task, and the manipulated amount calculation process is set to the long-period task.
3. The steering control device according to claim 2, wherein the steering angle calculation process is set to be executed in succession with the acquisition process in the medium-period task.
4. A steering control device according to claim 1, configured to periodically execute short-period tasks and long-period tasks, wherein the short-period task is a task executed in a short period, the long-period task is a task executed in a longer period than the short period, the short-period task is executed preferentially over the long-period task, the manipulated variable calculation process is set to the long-period task, the motor angle calculation process is set to the short-period task, and the acquisition process is a process of storing the rotation angle of the motor in a memory area separate from the memory area that is sequentially updated by the motor angle calculation process, and is a process executed in the short-period task.
5. The steering control device according to claim 2, wherein the operation process is set as the short-period task.
6. The steering control device according to claim 2, wherein the operation process is performed with the transmission of power between the input unit, which receives the driver's intention to steer, and the steering wheel being interrupted, the motor is a motor that steers the steering wheel, the steering rotation angle is a steering equivalent angle that shows a one-to-one correspondence with the steering angle of the steering wheel, and is configured to perform a reception process (S36), the reception process is a process of receiving a target steering equivalent angle calculated in response to the operation of the input unit, and is set as the medium-cycle task.
7. The steering control device according to claim 2, wherein the operation process is set as the short-period task.
8. The steering control device according to claim 4, configured to perform a medium-period task in addition to the short-period task and the long-period task, wherein the medium-period task is performed in a medium period that is longer than the short-period task and shorter than the long-period task, the short-period task is performed preferentially over the long-period task and the medium-period task, the medium-period task is performed preferentially over the long-period task, the operation process is performed with the transmission of power between the input unit, which receives the driver's intention to steer, and the steering wheel being interrupted, the motor is a motor that steers the steering wheel, the steering rotation angle is a steering equivalent angle that shows a one-to-one correspondence with the steering angle of the steering wheel, and is configured to perform a receiving process, wherein the receiving process is a process of receiving a target steering equivalent angle calculated in response to the operation of the input unit, and is set as the medium-period task.
9. A steering control method in which a steering device is the object of control, wherein the steering control method is a method of repeatedly executing a motor angle calculation process, a steering rotation angle calculation process, an operation amount calculation process, an operation process, and an acquisition process, wherein the motor angle calculation process is a process of calculating the rotation angle of a motor that provides power to the rotating shaft of the steering device, the steering rotation angle calculation process is a process of calculating the steering rotation angle from the rotation angle of the motor, the steering rotation angle is an angle determined by the rotation angle of the rotating shaft, the operation amount calculation process is a process of calculating an operation amount for feedback control in which the steering rotation angle is the control amount, based on the steering rotation angle as an input variable, the operation process is a process of operating the drive circuit of the motor based on the operation amount as an input variable, the acquisition process is a process of acquiring the rotation angle of the motor used to calculate the steering rotation angle from the rotation angle of the motor calculated by the motor angle calculation process, and the execution timing of the acquisition process is set such that the variation in the execution period of the acquisition process is shorter than the execution period of the motor angle calculation process.