Обновление

This commit is contained in:
cfif 2025-12-19 18:05:00 +03:00
parent 1a651de2bb
commit a692086561
6 changed files with 197 additions and 171 deletions

View File

@ -16,10 +16,17 @@ void ModelTask_Init(
env->thread.id = 0;
}
static bool setActuatorBusy() {
static bool setActuatorBusy(tModelTask *env) {
for (uint8_t i = 0; i < 9; ++i) {
if (rtY.Out1.COM[i] != 0) {
env->triggerCommand = true;
for (uint8_t j = 0; j < 9; ++j) {
env->numCommand[j] = rtY.Out1.COM[j];
}
rtU.in_Busy_Ch0 = 1;
return true;
}
@ -32,7 +39,7 @@ static _Noreturn void ModelTask_Thread(tModelTask *env) {
for (;;) {
if (osMutexAcquire(env->access, 1000) == osOK) {
Model_actuator_step();
env->isActuatorOverrideBusy = setActuatorBusy();
setActuatorBusy(env);
osMutexRelease(env->access);
}
SystemDelayMs(100);

View File

@ -12,7 +12,8 @@ typedef struct {
osMutexId_t access;
bool isActuatorOverrideBusy;
bool triggerCommand;
uint8_t numCommand[9];
struct {
osThreadId_t id;

View File

@ -3,9 +3,9 @@
*
* Code generated for Simulink model 'Model_actuator'.
*
* Model version : 1.541
* Model version : 1.543
* Simulink Coder version : 24.1 (R2024a) 19-Nov-2023
* C/C++ source code generated on : Fri Dec 19 16:49:11 2025
* C/C++ source code generated on : Fri Dec 19 18:00:02 2025
*
* Target selection: ert.tlc
* Embedded hardware selection: ARM Compatible->ARM Cortex-M
@ -54,64 +54,17 @@ void IfActionSubsystem3(int8_t rtu_stepIn, int8_t *rty_step, uint8_t
{
int32_t i;
/* DataStoreWrite: '<S37>/Data Store Write3' */
/* DataStoreWrite: '<S38>/Data Store Write3' */
for (i = 0; i < 9; i++) {
rtd_com_loc[i] = 0U;
}
/* End of DataStoreWrite: '<S37>/Data Store Write3' */
/* End of DataStoreWrite: '<S38>/Data Store Write3' */
/* SignalConversion generated from: '<S37>/stepIn' */
/* SignalConversion generated from: '<S38>/stepIn' */
*rty_step = rtu_stepIn;
}
/*
* Output and update for action system:
* '<S9>/If Action Subsystem2'
* '<S8>/If Action Subsystem2'
*/
void IfActionSubsystem2(int8_t rtu_stepIn, int8_t *rty_step, uint8_t
rtd_autos_set_loc[9], uint8_t rtd_coils_stop_set_loc[9], uint8_t rtd_com_loc[9],
uint8_t rtd_lnoise_set_loc[9], uint8_t rtd_speed_set_loc[9], uint8_t
rtd_stall_set_loc[9])
{
int32_t i;
for (i = 0; i < 9; i++) {
/* DataStoreWrite: '<S30>/Data Store Write1' incorporates:
* Constant: '<S30>/Constant1'
*/
rtd_stall_set_loc[i] = 0U;
/* DataStoreWrite: '<S30>/Data Store Write3' incorporates:
* Constant: '<S30>/Constant2'
*/
rtd_lnoise_set_loc[i] = 0U;
/* DataStoreWrite: '<S30>/Data Store Write2' */
rtd_com_loc[i] = 3U;
/* DataStoreWrite: '<S30>/Data Store Write4' incorporates:
* Constant: '<S30>/Constant4'
*/
rtd_autos_set_loc[i] = 0U;
/* DataStoreWrite: '<S30>/Data Store Write5' incorporates:
* Constant: '<S30>/Constant5'
*/
rtd_speed_set_loc[i] = 0U;
/* DataStoreWrite: '<S30>/Data Store Write6' incorporates:
* Constant: '<S30>/Constant6'
*/
rtd_coils_stop_set_loc[i] = 0U;
}
/* Sum: '<S30>/step inc' incorporates:
* Constant: '<S30>/Constant'
*/
*rty_step = (int8_t)(rtu_stepIn + 1);
}
/* Model step function */
void Model_actuator_step(void)
{
@ -119,32 +72,6 @@ void Model_actuator_step(void)
uint16_t tmp;
int8_t rtb_Switch;
/* BusCreator: '<Root>/Bus Creator' incorporates:
* DataStoreRead: '<Root>/Data Store Read1'
* DataStoreRead: '<Root>/Data Store Read2'
* DataStoreRead: '<Root>/Data Store Read3'
* DataStoreRead: '<Root>/Data Store Read4'
* DataStoreRead: '<Root>/Data Store Read5'
* DataStoreRead: '<Root>/Data Store Read6'
* DataStoreRead: '<Root>/Data Store Read7'
* DataStoreRead: '<Root>/Data Store Read8'
* DataStoreRead: '<Root>/Data Store Read9'
* DataStoreWrite: '<Root>/Data Store Write'
*/
for (i = 0; i < 9; i++) {
controllerData.POS[i] = rtDW.pos_loc[i];
controllerData.BUS_ADR[i] = rtDW.busAdr_loc[i];
controllerData.MODE[i] = rtDW.mode_loc[i];
controllerData.COM[i] = rtDW.com_loc[i];
controllerData.Stall_SET[i] = rtDW.stall_set_loc[i];
controllerData.Lnoise_SET[i] = rtDW.lnoise_set_loc[i];
controllerData.Autos_SET[i] = rtDW.autos_set_loc[i];
controllerData.Speed_SET[i] = rtDW.speed_set_loc[i];
controllerData.Coils_Stop_SET[i] = rtDW.coils_stop_set_loc[i];
}
/* End of BusCreator: '<Root>/Bus Creator' */
/* Switch: '<Root>/Switch' incorporates:
* Constant: '<Root>/Constant1'
* DataStoreRead: '<Root>/Data Store Read'
@ -170,27 +97,27 @@ void Model_actuator_step(void)
*/
if ((rtU.in_Busy_Ch0 == 0) && (rtU.in_Error_Connect_Ch0 == 0)) {
/* Outputs for IfAction SubSystem: '<S12>/If Action Subsystem2' incorporates:
* ActionPort: '<S36>/Action Port'
* ActionPort: '<S37>/Action Port'
*/
for (i = 0; i < 9; i++) {
/* DataStoreWrite: '<S36>/Data Store Write2' */
/* DataStoreWrite: '<S37>/Data Store Write2' */
rtDW.mode_loc[i] = 2U;
/* DataStoreWrite: '<S36>/Data Store Write3' */
/* DataStoreWrite: '<S37>/Data Store Write3' */
rtDW.com_loc[i] = 1U;
}
/* Merge: '<Root>/Merge' incorporates:
* Constant: '<S36>/Constant'
* Constant: '<S37>/Constant'
* Merge: '<S12>/Merge'
* Sum: '<S36>/step inc'
* Sum: '<S37>/step inc'
*/
rtB.Merge = (int8_t)(rtb_Switch + 1);
/* End of Outputs for SubSystem: '<S12>/If Action Subsystem2' */
} else {
/* Outputs for IfAction SubSystem: '<S12>/If Action Subsystem3' incorporates:
* ActionPort: '<S37>/Action Port'
* ActionPort: '<S38>/Action Port'
*/
/* Merge: '<Root>/Merge' */
IfActionSubsystem3(rtb_Switch, &rtB.Merge, rtDW.com_loc);
@ -219,38 +146,38 @@ void Model_actuator_step(void)
*/
if ((rtU.in_Busy_Ch0 == 0) && (rtU.in_Error_Connect_Ch0 == 0)) {
/* Outputs for IfAction SubSystem: '<S7>/If Action Subsystem' incorporates:
* ActionPort: '<S24>/Action Port'
* ActionPort: '<S25>/Action Port'
*/
for (i = 0; i < 9; i++) {
/* DataStoreWrite: '<S24>/Data Store Write' */
/* DataStoreWrite: '<S25>/Data Store Write' */
rtDW.pos_loc[i] = 6000U;
/* DataStoreWrite: '<S24>/Data Store Write1' */
/* DataStoreWrite: '<S25>/Data Store Write1' */
rtDW.com_loc[i] = 2U;
}
/* Merge: '<Root>/Merge' incorporates:
* Constant: '<S24>/Constant'
* Constant: '<S25>/Constant'
* Merge: '<S7>/Merge'
* Sum: '<S24>/step inc'
* Sum: '<S25>/step inc'
*/
rtB.Merge = (int8_t)(rtb_Switch + 1);
/* End of Outputs for SubSystem: '<S7>/If Action Subsystem' */
} else {
/* Outputs for IfAction SubSystem: '<S7>/If Action Subsystem3' incorporates:
* ActionPort: '<S25>/Action Port'
* ActionPort: '<S26>/Action Port'
*/
/* DataStoreWrite: '<S25>/Data Store Write3' */
/* DataStoreWrite: '<S26>/Data Store Write3' */
for (i = 0; i < 9; i++) {
rtDW.com_loc[i] = 0U;
}
/* End of DataStoreWrite: '<S25>/Data Store Write3' */
/* End of DataStoreWrite: '<S26>/Data Store Write3' */
/* Merge: '<Root>/Merge' incorporates:
* Merge: '<S7>/Merge'
* SignalConversion generated from: '<S25>/stepIn1'
* SignalConversion generated from: '<S26>/stepIn1'
*/
rtB.Merge = rtb_Switch;
@ -278,27 +205,27 @@ void Model_actuator_step(void)
*/
if ((rtU.in_Busy_Ch0 == 0) && (rtU.in_Error_Connect_Ch0 == 0)) {
/* Outputs for IfAction SubSystem: '<S10>/If Action Subsystem2' incorporates:
* ActionPort: '<S33>/Action Port'
* ActionPort: '<S34>/Action Port'
*/
for (i = 0; i < 9; i++) {
/* DataStoreWrite: '<S33>/Data Store Write' */
/* DataStoreWrite: '<S34>/Data Store Write' */
rtDW.mode_loc[i] = 0U;
/* DataStoreWrite: '<S33>/Data Store Write2' */
/* DataStoreWrite: '<S34>/Data Store Write2' */
rtDW.com_loc[i] = 1U;
}
/* Merge: '<Root>/Merge' incorporates:
* Constant: '<S33>/Constant'
* Constant: '<S34>/Constant'
* Merge: '<S10>/Merge'
* Sum: '<S33>/step inc'
* Sum: '<S34>/step inc'
*/
rtB.Merge = (int8_t)(rtb_Switch + 1);
/* End of Outputs for SubSystem: '<S10>/If Action Subsystem2' */
} else {
/* Outputs for IfAction SubSystem: '<S10>/If Action Subsystem3' incorporates:
* ActionPort: '<S34>/Action Port'
* ActionPort: '<S35>/Action Port'
*/
/* Merge: '<Root>/Merge' */
IfActionSubsystem3(rtb_Switch, &rtB.Merge, rtDW.com_loc);
@ -327,18 +254,50 @@ void Model_actuator_step(void)
*/
if ((rtU.in_Busy_Ch0 == 0) && (rtU.in_Error_Connect_Ch0 == 0)) {
/* Outputs for IfAction SubSystem: '<S9>/If Action Subsystem2' incorporates:
* ActionPort: '<S30>/Action Port'
* ActionPort: '<S31>/Action Port'
*/
/* Merge: '<Root>/Merge' */
IfActionSubsystem2(rtb_Switch, &rtB.Merge, rtDW.autos_set_loc,
rtDW.coils_stop_set_loc, rtDW.com_loc,
rtDW.lnoise_set_loc, rtDW.speed_set_loc,
rtDW.stall_set_loc);
for (i = 0; i < 9; i++) {
/* DataStoreWrite: '<S31>/Data Store Write1' */
rtDW.stall_set_loc[i] = 1U;
/* DataStoreWrite: '<S31>/Data Store Write3' incorporates:
* Constant: '<S31>/Constant2'
*/
rtDW.lnoise_set_loc[i] = 0U;
/* DataStoreWrite: '<S31>/Data Store Write2' */
rtDW.com_loc[i] = 3U;
/* DataStoreWrite: '<S31>/Data Store Write4' incorporates:
* Constant: '<S31>/Constant4'
*/
rtDW.autos_set_loc[i] = 0U;
/* DataStoreWrite: '<S31>/Data Store Write5' incorporates:
* Constant: '<S31>/Constant5'
*/
rtDW.speed_set_loc[i] = 0U;
/* DataStoreWrite: '<S31>/Data Store Write6' incorporates:
* Constant: '<S31>/Constant6'
*/
rtDW.coils_stop_set_loc[i] = 0U;
/* DataStoreWrite: '<S31>/Data Store Write' */
rtDW.pos_loc[i] = 0U;
}
/* Merge: '<Root>/Merge' incorporates:
* Constant: '<S31>/Constant'
* Merge: '<S9>/Merge'
* Sum: '<S31>/step inc'
*/
rtB.Merge = (int8_t)(rtb_Switch + 1);
/* End of Outputs for SubSystem: '<S9>/If Action Subsystem2' */
} else {
/* Outputs for IfAction SubSystem: '<S9>/If Action Subsystem3' incorporates:
* ActionPort: '<S31>/Action Port'
* ActionPort: '<S32>/Action Port'
*/
/* Merge: '<Root>/Merge' */
IfActionSubsystem3(rtb_Switch, &rtB.Merge, rtDW.com_loc);
@ -367,9 +326,9 @@ void Model_actuator_step(void)
*/
if ((rtU.in_Busy_Ch0 == 0) && (rtU.in_Error_Connect_Ch0 == 0)) {
/* Outputs for IfAction SubSystem: '<S2>/If Action Subsystem2' incorporates:
* ActionPort: '<S17>/Action Port'
* ActionPort: '<S18>/Action Port'
*/
/* DataStoreWrite: '<S17>/Data Store Write1' incorporates:
/* DataStoreWrite: '<S18>/Data Store Write1' incorporates:
* DataStoreWrite: '<Root>/Data Store Write1'
* Inport: '<Root>/in_CPOS_ALL_Ch0'
*/
@ -377,19 +336,19 @@ void Model_actuator_step(void)
rtDW.Min_position_Ch0[i] = rtU.in_CPOS_ALL_Ch0[i];
}
/* End of DataStoreWrite: '<S17>/Data Store Write1' */
/* End of DataStoreWrite: '<S18>/Data Store Write1' */
/* Merge: '<Root>/Merge' incorporates:
* Constant: '<S17>/Constant'
* Constant: '<S18>/Constant'
* Merge: '<S2>/Merge'
* Sum: '<S17>/step inc'
* Sum: '<S18>/step inc'
*/
rtB.Merge = (int8_t)(rtb_Switch + 1);
/* End of Outputs for SubSystem: '<S2>/If Action Subsystem2' */
} else {
/* Outputs for IfAction SubSystem: '<S2>/If Action Subsystem3' incorporates:
* ActionPort: '<S18>/Action Port'
* ActionPort: '<S19>/Action Port'
*/
/* Merge: '<Root>/Merge' */
IfActionSubsystem3(rtb_Switch, &rtB.Merge, rtDW.com_loc);
@ -418,27 +377,27 @@ void Model_actuator_step(void)
*/
if ((rtU.in_Busy_Ch0 == 0) && (rtU.in_Error_Connect_Ch0 == 0)) {
/* Outputs for IfAction SubSystem: '<S6>/If Action Subsystem2' incorporates:
* ActionPort: '<S21>/Action Port'
* ActionPort: '<S22>/Action Port'
*/
for (i = 0; i < 9; i++) {
/* DataStoreWrite: '<S21>/Data Store Write' */
/* DataStoreWrite: '<S22>/Data Store Write' */
rtDW.pos_loc[i] = 0U;
/* DataStoreWrite: '<S21>/Data Store Write1' */
/* DataStoreWrite: '<S22>/Data Store Write1' */
rtDW.com_loc[i] = 2U;
}
/* Merge: '<Root>/Merge' incorporates:
* Constant: '<S21>/Constant'
* Constant: '<S22>/Constant'
* Merge: '<S6>/Merge'
* Sum: '<S21>/step inc'
* Sum: '<S22>/step inc'
*/
rtB.Merge = (int8_t)(rtb_Switch + 1);
/* End of Outputs for SubSystem: '<S6>/If Action Subsystem2' */
} else {
/* Outputs for IfAction SubSystem: '<S6>/If Action Subsystem3' incorporates:
* ActionPort: '<S22>/Action Port'
* ActionPort: '<S23>/Action Port'
*/
/* Merge: '<Root>/Merge' */
IfActionSubsystem3(rtb_Switch, &rtB.Merge, rtDW.com_loc);
@ -467,18 +426,50 @@ void Model_actuator_step(void)
*/
if ((rtU.in_Busy_Ch0 == 0) && (rtU.in_Error_Connect_Ch0 == 0)) {
/* Outputs for IfAction SubSystem: '<S8>/If Action Subsystem2' incorporates:
* ActionPort: '<S27>/Action Port'
* ActionPort: '<S28>/Action Port'
*/
/* Merge: '<Root>/Merge' */
IfActionSubsystem2(rtb_Switch, &rtB.Merge, rtDW.autos_set_loc,
rtDW.coils_stop_set_loc, rtDW.com_loc,
rtDW.lnoise_set_loc, rtDW.speed_set_loc,
rtDW.stall_set_loc);
for (i = 0; i < 9; i++) {
/* DataStoreWrite: '<S28>/Data Store Write1' */
rtDW.stall_set_loc[i] = 1U;
/* DataStoreWrite: '<S28>/Data Store Write3' incorporates:
* Constant: '<S28>/Constant2'
*/
rtDW.lnoise_set_loc[i] = 0U;
/* DataStoreWrite: '<S28>/Data Store Write2' */
rtDW.com_loc[i] = 3U;
/* DataStoreWrite: '<S28>/Data Store Write4' incorporates:
* Constant: '<S28>/Constant4'
*/
rtDW.autos_set_loc[i] = 0U;
/* DataStoreWrite: '<S28>/Data Store Write5' incorporates:
* Constant: '<S28>/Constant5'
*/
rtDW.speed_set_loc[i] = 0U;
/* DataStoreWrite: '<S28>/Data Store Write6' incorporates:
* Constant: '<S28>/Constant6'
*/
rtDW.coils_stop_set_loc[i] = 0U;
/* DataStoreWrite: '<S28>/Data Store Write' */
rtDW.pos_loc[i] = 6000U;
}
/* Merge: '<Root>/Merge' incorporates:
* Constant: '<S28>/Constant'
* Merge: '<S8>/Merge'
* Sum: '<S28>/step inc'
*/
rtB.Merge = (int8_t)(rtb_Switch + 1);
/* End of Outputs for SubSystem: '<S8>/If Action Subsystem2' */
} else {
/* Outputs for IfAction SubSystem: '<S8>/If Action Subsystem3' incorporates:
* ActionPort: '<S28>/Action Port'
* ActionPort: '<S29>/Action Port'
*/
/* Merge: '<Root>/Merge' */
IfActionSubsystem3(rtb_Switch, &rtB.Merge, rtDW.com_loc);
@ -507,9 +498,9 @@ void Model_actuator_step(void)
*/
if ((rtU.in_Busy_Ch0 == 0) && (rtU.in_Error_Connect_Ch0 == 0)) {
/* Outputs for IfAction SubSystem: '<S1>/If Action Subsystem2' incorporates:
* ActionPort: '<S14>/Action Port'
* ActionPort: '<S15>/Action Port'
*/
/* DataStoreWrite: '<S14>/Data Store Write1' incorporates:
/* DataStoreWrite: '<S15>/Data Store Write1' incorporates:
* DataStoreWrite: '<Root>/Data Store Write1'
* Inport: '<Root>/in_CPOS_ALL_Ch0'
*/
@ -517,19 +508,19 @@ void Model_actuator_step(void)
rtDW.Max_position_Ch0[i] = rtU.in_CPOS_ALL_Ch0[i];
}
/* End of DataStoreWrite: '<S14>/Data Store Write1' */
/* End of DataStoreWrite: '<S15>/Data Store Write1' */
/* Merge: '<Root>/Merge' incorporates:
* Constant: '<S14>/Constant'
* Constant: '<S15>/Constant'
* Merge: '<S1>/Merge'
* Sum: '<S14>/step inc'
* Sum: '<S15>/step inc'
*/
rtB.Merge = (int8_t)(rtb_Switch + 1);
/* End of Outputs for SubSystem: '<S1>/If Action Subsystem2' */
} else {
/* Outputs for IfAction SubSystem: '<S1>/If Action Subsystem3' incorporates:
* ActionPort: '<S15>/Action Port'
* ActionPort: '<S16>/Action Port'
*/
/* Merge: '<Root>/Merge' */
IfActionSubsystem3(rtb_Switch, &rtB.Merge, rtDW.com_loc);
@ -634,16 +625,42 @@ void Model_actuator_step(void)
/* End of SwitchCase: '<Root>/Switch Case' */
/* Outport: '<Root>/Out1' incorporates:
* DataStoreRead: '<Root>/Data Store Read10'
*/
rtY.Out1 = controllerData;
/* DataStoreWrite: '<Root>/Start write stepSig' incorporates:
* Constant: '<Root>/Constant1'
*/
rtDW.stepSig = 1;
/* BusCreator: '<S13>/Bus Creator' incorporates:
* DataStoreRead: '<S13>/Data Store Read1'
* DataStoreRead: '<S13>/Data Store Read2'
* DataStoreRead: '<S13>/Data Store Read3'
* DataStoreRead: '<S13>/Data Store Read4'
* DataStoreRead: '<S13>/Data Store Read5'
* DataStoreRead: '<S13>/Data Store Read6'
* DataStoreRead: '<S13>/Data Store Read7'
* DataStoreRead: '<S13>/Data Store Read8'
* DataStoreRead: '<S13>/Data Store Read9'
* DataStoreWrite: '<S13>/Data Store Write'
*/
for (i = 0; i < 9; i++) {
controllerData.POS[i] = rtDW.pos_loc[i];
controllerData.BUS_ADR[i] = rtDW.busAdr_loc[i];
controllerData.MODE[i] = rtDW.mode_loc[i];
controllerData.COM[i] = rtDW.com_loc[i];
controllerData.Stall_SET[i] = rtDW.stall_set_loc[i];
controllerData.Lnoise_SET[i] = rtDW.lnoise_set_loc[i];
controllerData.Autos_SET[i] = rtDW.autos_set_loc[i];
controllerData.Speed_SET[i] = rtDW.speed_set_loc[i];
controllerData.Coils_Stop_SET[i] = rtDW.coils_stop_set_loc[i];
}
/* End of BusCreator: '<S13>/Bus Creator' */
/* Outport: '<Root>/Out1' incorporates:
* DataStoreRead: '<Root>/Data Store Read10'
*/
rtY.Out1 = controllerData;
/* MATLAB Function: '<Root>/Finish case' incorporates:
* UnitDelay: '<Root>/Unit Delay'
*/

View File

@ -3,9 +3,9 @@
*
* Code generated for Simulink model 'Model_actuator'.
*
* Model version : 1.541
* Model version : 1.542
* Simulink Coder version : 24.1 (R2024a) 19-Nov-2023
* C/C++ source code generated on : Fri Dec 19 16:49:11 2025
* C/C++ source code generated on : Fri Dec 19 17:44:01 2025
*
* Target selection: ert.tlc
* Embedded hardware selection: ARM Compatible->ARM Cortex-M
@ -154,32 +154,33 @@ extern RT_MODEL *const rtM;
* '<S10>' : 'Model_actuator/Normal Mode'
* '<S11>' : 'Model_actuator/Start case'
* '<S12>' : 'Model_actuator/Stop Mode'
* '<S13>' : 'Model_actuator/Check Stall Max/Check Stall Max'
* '<S14>' : 'Model_actuator/Check Stall Max/If Action Subsystem2'
* '<S15>' : 'Model_actuator/Check Stall Max/If Action Subsystem3'
* '<S16>' : 'Model_actuator/Check Stall Min/Check Stall Min'
* '<S17>' : 'Model_actuator/Check Stall Min/If Action Subsystem2'
* '<S18>' : 'Model_actuator/Check Stall Min/If Action Subsystem3'
* '<S19>' : 'Model_actuator/Homing/MAX POSITION'
* '<S20>' : 'Model_actuator/Homing/MIN POSITION'
* '<S21>' : 'Model_actuator/Initial CPOS Max/If Action Subsystem2'
* '<S22>' : 'Model_actuator/Initial CPOS Max/If Action Subsystem3'
* '<S23>' : 'Model_actuator/Initial CPOS Max/Initial CPOS Max'
* '<S24>' : 'Model_actuator/Initial CPOS Min/If Action Subsystem'
* '<S25>' : 'Model_actuator/Initial CPOS Min/If Action Subsystem3'
* '<S26>' : 'Model_actuator/Initial CPOS Min/Initial CPOS Min'
* '<S27>' : 'Model_actuator/Move to position Max/If Action Subsystem2'
* '<S28>' : 'Model_actuator/Move to position Max/If Action Subsystem3'
* '<S29>' : 'Model_actuator/Move to position Max/Move to position Max'
* '<S30>' : 'Model_actuator/Move to position Min/If Action Subsystem2'
* '<S31>' : 'Model_actuator/Move to position Min/If Action Subsystem3'
* '<S32>' : 'Model_actuator/Move to position Min/Move to position Min'
* '<S33>' : 'Model_actuator/Normal Mode/If Action Subsystem2'
* '<S34>' : 'Model_actuator/Normal Mode/If Action Subsystem3'
* '<S35>' : 'Model_actuator/Normal Mode/Normal Mode'
* '<S36>' : 'Model_actuator/Stop Mode/If Action Subsystem2'
* '<S37>' : 'Model_actuator/Stop Mode/If Action Subsystem3'
* '<S38>' : 'Model_actuator/Stop Mode/stop mode'
* '<S13>' : 'Model_actuator/Subsystem'
* '<S14>' : 'Model_actuator/Check Stall Max/Check Stall Max'
* '<S15>' : 'Model_actuator/Check Stall Max/If Action Subsystem2'
* '<S16>' : 'Model_actuator/Check Stall Max/If Action Subsystem3'
* '<S17>' : 'Model_actuator/Check Stall Min/Check Stall Min'
* '<S18>' : 'Model_actuator/Check Stall Min/If Action Subsystem2'
* '<S19>' : 'Model_actuator/Check Stall Min/If Action Subsystem3'
* '<S20>' : 'Model_actuator/Homing/MAX POSITION'
* '<S21>' : 'Model_actuator/Homing/MIN POSITION'
* '<S22>' : 'Model_actuator/Initial CPOS Max/If Action Subsystem2'
* '<S23>' : 'Model_actuator/Initial CPOS Max/If Action Subsystem3'
* '<S24>' : 'Model_actuator/Initial CPOS Max/Initial CPOS Max'
* '<S25>' : 'Model_actuator/Initial CPOS Min/If Action Subsystem'
* '<S26>' : 'Model_actuator/Initial CPOS Min/If Action Subsystem3'
* '<S27>' : 'Model_actuator/Initial CPOS Min/Initial CPOS Min'
* '<S28>' : 'Model_actuator/Move to position Max/If Action Subsystem2'
* '<S29>' : 'Model_actuator/Move to position Max/If Action Subsystem3'
* '<S30>' : 'Model_actuator/Move to position Max/Move to position Max'
* '<S31>' : 'Model_actuator/Move to position Min/If Action Subsystem2'
* '<S32>' : 'Model_actuator/Move to position Min/If Action Subsystem3'
* '<S33>' : 'Model_actuator/Move to position Min/Move to position Min'
* '<S34>' : 'Model_actuator/Normal Mode/If Action Subsystem2'
* '<S35>' : 'Model_actuator/Normal Mode/If Action Subsystem3'
* '<S36>' : 'Model_actuator/Normal Mode/Normal Mode'
* '<S37>' : 'Model_actuator/Stop Mode/If Action Subsystem2'
* '<S38>' : 'Model_actuator/Stop Mode/If Action Subsystem3'
* '<S39>' : 'Model_actuator/Stop Mode/stop mode'
*/
#endif /* Model_actuator_h_ */

View File

@ -3,9 +3,9 @@
*
* Code generated for Simulink model 'Model_actuator'.
*
* Model version : 1.541
* Model version : 1.542
* Simulink Coder version : 24.1 (R2024a) 19-Nov-2023
* C/C++ source code generated on : Fri Dec 19 16:49:11 2025
* C/C++ source code generated on : Fri Dec 19 17:44:01 2025
*
* Target selection: ert.tlc
* Embedded hardware selection: ARM Compatible->ARM Cortex-M

View File

@ -3,9 +3,9 @@
*
* Code generated for Simulink model 'Model_actuator'.
*
* Model version : 1.541
* Model version : 1.542
* Simulink Coder version : 24.1 (R2024a) 19-Nov-2023
* C/C++ source code generated on : Fri Dec 19 16:49:11 2025
* C/C++ source code generated on : Fri Dec 19 17:44:01 2025
*
* Target selection: ert.tlc
* Embedded hardware selection: ARM Compatible->ARM Cortex-M