📄 serialsim_no_observer_acc.c
字号:
}
} else {
/* Determine if any values need to change */
if (serialsim_no_observer_DWork->Pulse_Generator_RWORK.nextTime <= time) {
if (serialsim_no_observer_DWork->Pulse_Generator_IWORK.currValue == 1) {
serialsim_no_observer_DWork->Pulse_Generator_IWORK.currValue = 0;
serialsim_no_observer_DWork->Pulse_Generator_RWORK.nextTime = delay +
(serialsim_no_observer_DWork->Pulse_Generator_IWORK.numCompleteCycles
+ 1) * serialsim_no_observer_P->Pulse_Generator_Period;
} else {
if ( serialsim_no_observer_DWork->Pulse_Generator_RWORK.nextTime !=
delay) {
serialsim_no_observer_DWork->Pulse_Generator_IWORK.numCompleteCycles
+= 1;
}
serialsim_no_observer_DWork->Pulse_Generator_IWORK.currValue = 1;
serialsim_no_observer_DWork->Pulse_Generator_RWORK.nextTime = delay +
serialsim_no_observer_DWork->Pulse_Generator_IWORK.numCompleteCycles
* serialsim_no_observer_P->Pulse_Generator_Period
+ 0.01 * serialsim_no_observer_P->Pulse_Generator_Duty *
serialsim_no_observer_P->Pulse_Generator_Period;
}
}
}
/* Set the next hit time */
{
real_T tNext = serialsim_no_observer_DWork->Pulse_Generator_RWORK.nextTime;
_ssSetVarNextHitTime(S, (int_T)0.0, tNext);
}
/* Output the values */
if (serialsim_no_observer_DWork->Pulse_Generator_IWORK.currValue == 1){
serialsim_no_observer_B->Pulse_Generator =
serialsim_no_observer_P->Pulse_Generator_Amp;
} else {
serialsim_no_observer_B->Pulse_Generator = 0;
}
}
if (ssIsSampleHit(S, 1, tid)) { /* Sample time: [0.0, 1.0] */
/* Constant: '<S5>/T2' */
serialsim_no_observer_B->T2_a = serialsim_no_observer_P->T2_a_Value;
/* Constant: '<S5>/T3' */
serialsim_no_observer_B->T3_a = serialsim_no_observer_P->T3_a_Value;
/* Constant: '<S5>/T4' */
serialsim_no_observer_B->T4_a = serialsim_no_observer_P->T4_a_Value;
/* Constant: '<S5>/T1' */
serialsim_no_observer_B->T1_a = serialsim_no_observer_P->T1_a_Value;
/* Constant: '<S5>/T7' */
serialsim_no_observer_B->T7 = serialsim_no_observer_P->T7_Value;
/* Constant: '<S9>/T1' */
serialsim_no_observer_B->T1_b = serialsim_no_observer_P->T1_b_Value;
/* Constant: '<S9>/T2' */
serialsim_no_observer_B->T2_b = serialsim_no_observer_P->T2_b_Value;
/* Constant: '<S9>/T3' */
serialsim_no_observer_B->T3_b = serialsim_no_observer_P->T3_b_Value;
/* Constant: '<S9>/T4' */
serialsim_no_observer_B->T4_b = serialsim_no_observer_P->T4_b_Value;
/* Constant: '<S9>/T5' */
serialsim_no_observer_B->T5_a = serialsim_no_observer_P->T5_a_Value;
/* Constant: '<S9>/T6' */
serialsim_no_observer_B->T6_a = serialsim_no_observer_P->T6_a_Value;
}
if (ssIsSampleHit(S, 3, tid)) { /* Sample time: [-2.0, 1.0] */
/* DiscretePulseGenerator: '<S5>/Pulse Generator1' */
real_T time = ssGetTaskTime(S,tid);
real_T delay = 0.0;
if ( (int_T)serialsim_no_observer_DWork->Pulse_Generator1_IWORK.justEnabled
) {
serialsim_no_observer_DWork->Pulse_Generator1_IWORK.justEnabled = 0;
if (time >= delay) {
real_T ratio = (time - delay)/
serialsim_no_observer_P->Pulse_Generator1_Period;
serialsim_no_observer_DWork->Pulse_Generator1_IWORK.numCompleteCycles =
(int)floor(ratio);
if (
fabs((serialsim_no_observer_DWork->Pulse_Generator1_IWORK.numCompleteCycles+1)-
ratio ) < DBL_EPSILON * ratio )
{
serialsim_no_observer_DWork->Pulse_Generator1_IWORK.numCompleteCycles
=
serialsim_no_observer_DWork->Pulse_Generator1_IWORK.numCompleteCycles+1;
}
serialsim_no_observer_DWork->Pulse_Generator1_IWORK.numCompleteCycles =
serialsim_no_observer_DWork->Pulse_Generator1_IWORK.numCompleteCycles;
if (time < delay +
serialsim_no_observer_DWork->Pulse_Generator1_IWORK.numCompleteCycles *
serialsim_no_observer_P->Pulse_Generator1_Period
+ serialsim_no_observer_P->Pulse_Generator1_Duty *
serialsim_no_observer_P->Pulse_Generator1_Period/100) {
serialsim_no_observer_DWork->Pulse_Generator1_IWORK.currValue = 1;
serialsim_no_observer_DWork->Pulse_Generator1_RWORK.nextTime = delay +
serialsim_no_observer_DWork->Pulse_Generator1_IWORK.numCompleteCycles
* serialsim_no_observer_P->Pulse_Generator1_Period
+ serialsim_no_observer_P->Pulse_Generator1_Duty *
serialsim_no_observer_P->Pulse_Generator1_Period/100;
} else {
serialsim_no_observer_DWork->Pulse_Generator1_IWORK.currValue = 0;
serialsim_no_observer_DWork->Pulse_Generator1_RWORK.nextTime = delay +
(serialsim_no_observer_DWork->Pulse_Generator1_IWORK.numCompleteCycles
+ 1) * serialsim_no_observer_P->Pulse_Generator1_Period;
}
} else {
serialsim_no_observer_DWork->Pulse_Generator1_IWORK.numCompleteCycles =
0;
serialsim_no_observer_DWork->Pulse_Generator1_IWORK.currValue = 0;
serialsim_no_observer_DWork->Pulse_Generator1_RWORK.nextTime = delay;
}
} else {
/* Determine if any values need to change */
if (serialsim_no_observer_DWork->Pulse_Generator1_RWORK.nextTime <= time) {
if (serialsim_no_observer_DWork->Pulse_Generator1_IWORK.currValue == 1) {
serialsim_no_observer_DWork->Pulse_Generator1_IWORK.currValue = 0;
serialsim_no_observer_DWork->Pulse_Generator1_RWORK.nextTime = delay +
(serialsim_no_observer_DWork->Pulse_Generator1_IWORK.numCompleteCycles
+ 1) * serialsim_no_observer_P->Pulse_Generator1_Period;
} else {
if ( serialsim_no_observer_DWork->Pulse_Generator1_RWORK.nextTime !=
delay) {
serialsim_no_observer_DWork->Pulse_Generator1_IWORK.numCompleteCycles
+= 1;
}
serialsim_no_observer_DWork->Pulse_Generator1_IWORK.currValue = 1;
serialsim_no_observer_DWork->Pulse_Generator1_RWORK.nextTime = delay +
serialsim_no_observer_DWork->Pulse_Generator1_IWORK.numCompleteCycles
* serialsim_no_observer_P->Pulse_Generator1_Period
+ 0.01 * serialsim_no_observer_P->Pulse_Generator1_Duty *
serialsim_no_observer_P->Pulse_Generator1_Period;
}
}
}
/* Set the next hit time */
{
real_T tNext =
serialsim_no_observer_DWork->Pulse_Generator1_RWORK.nextTime;
_ssSetVarNextHitTime(S, (int_T)1.0, tNext);
}
/* Output the values */
if (serialsim_no_observer_DWork->Pulse_Generator1_IWORK.currValue == 1){
serialsim_no_observer_B->Pulse_Generator1 =
serialsim_no_observer_P->Pulse_Generator1_Amp;
} else {
serialsim_no_observer_B->Pulse_Generator1 = 0;
}
}
if (ssIsSampleHit(S, 4, tid)) { /* Sample time: [-2.0, 2.0] */
/* DiscretePulseGenerator: '<S5>/Pulse Generator2' */
real_T time = ssGetTaskTime(S,tid);
real_T delay = 0.0015;
if ( (int_T)serialsim_no_observer_DWork->Pulse_Generator2_IWORK.justEnabled
) {
serialsim_no_observer_DWork->Pulse_Generator2_IWORK.justEnabled = 0;
if (time >= delay) {
real_T ratio = (time - delay)/
serialsim_no_observer_P->Pulse_Generator2_Period;
serialsim_no_observer_DWork->Pulse_Generator2_IWORK.numCompleteCycles =
(int)floor(ratio);
if (
fabs((serialsim_no_observer_DWork->Pulse_Generator2_IWORK.numCompleteCycles+1)-
ratio ) < DBL_EPSILON * ratio )
{
serialsim_no_observer_DWork->Pulse_Generator2_IWORK.numCompleteCycles
=
serialsim_no_observer_DWork->Pulse_Generator2_IWORK.numCompleteCycles+1;
}
serialsim_no_observer_DWork->Pulse_Generator2_IWORK.numCompleteCycles =
serialsim_no_observer_DWork->Pulse_Generator2_IWORK.numCompleteCycles;
if (time < delay +
serialsim_no_observer_DWork->Pulse_Generator2_IWORK.numCompleteCycles *
serialsim_no_observer_P->Pulse_Generator2_Period
+ serialsim_no_observer_P->Pulse_Generator2_Duty *
serialsim_no_observer_P->Pulse_Generator2_Period/100) {
serialsim_no_observer_DWork->Pulse_Generator2_IWORK.currValue = 1;
serialsim_no_observer_DWork->Pulse_Generator2_RWORK.nextTime = delay +
serialsim_no_observer_DWork->Pulse_Generator2_IWORK.numCompleteCycles
* serialsim_no_observer_P->Pulse_Generator2_Period
+ serialsim_no_observer_P->Pulse_Generator2_Duty *
serialsim_no_observer_P->Pulse_Generator2_Period/100;
} else {
serialsim_no_observer_DWork->Pulse_Generator2_IWORK.currValue = 0;
serialsim_no_observer_DWork->Pulse_Generator2_RWORK.nextTime = delay +
(serialsim_no_observer_DWork->Pulse_Generator2_IWORK.numCompleteCycles
+ 1) * serialsim_no_observer_P->Pulse_Generator2_Period;
}
} else {
serialsim_no_observer_DWork->Pulse_Generator2_IWORK.numCompleteCycles =
0;
serialsim_no_observer_DWork->Pulse_Generator2_IWORK.currValue = 0;
serialsim_no_observer_DWork->Pulse_Generator2_RWORK.nextTime = delay;
}
} else {
/* Determine if any values need to change */
if (serialsim_no_observer_DWork->Pulse_Generator2_RWORK.nextTime <= time) {
if (serialsim_no_observer_DWork->Pulse_Generator2_IWORK.currValue == 1) {
serialsim_no_observer_DWork->Pulse_Generator2_IWORK.currValue = 0;
serialsim_no_observer_DWork->Pulse_Generator2_RWORK.nextTime = delay +
(serialsim_no_observer_DWork->Pulse_Generator2_IWORK.numCompleteCycles
+ 1) * serialsim_no_observer_P->Pulse_Generator2_Period;
} else {
if ( serialsim_no_observer_DWork->Pulse_Generator2_RWORK.nextTime !=
delay) {
serialsim_no_observer_DWork->Pulse_Generator2_IWORK.numCompleteCycles
+= 1;
}
serialsim_no_observer_DWork->Pulse_Generator2_IWORK.currValue = 1;
serialsim_no_observer_DWork->Pulse_Generator2_RWORK.nextTime = delay +
serialsim_no_observer_DWork->Pulse_Generator2_IWORK.numCompleteCycles
* serialsim_no_observer_P->Pulse_Generator2_Period
+ 0.01 * serialsim_no_observer_P->Pulse_Generator2_Duty *
serialsim_no_observer_P->Pulse_Generator2_Period;
}
}
}
/* Set the next hit time */
{
real_T tNext =
serialsim_no_observer_DWork->Pulse_Generator2_RWORK.nextTime;
_ssSetVarNextHitTime(S, (int_T)2.0, tNext);
}
/* Output the values */
if (serialsim_no_observer_DWork->Pulse_Generator2_IWORK.currValue == 1){
serialsim_no_observer_B->Pulse_Generator2 =
serialsim_no_observer_P->Pulse_Generator2_Amp;
} else {
serialsim_no_observer_B->Pulse_Generator2 = 0;
}
}
if (ssIsSampleHit(S, 5, tid)) { /* Sample time: [-2.0, 3.0] */
/* DiscretePulseGenerator: '<S5>/Pulse Generator3' */
real_T time = ssGetTaskTime(S,tid);
real_T delay = 0.0015;
if ( (int_T)serialsim_no_observer_DWork->Pulse_Generator3_IWORK.justEnabled
) {
serialsim_no_observer_DWork->Pulse_Generator3_IWORK.justEnabled = 0;
if (time >= delay) {
real_T ratio = (time - delay)/
serialsim_no_observer_P->Pulse_Generator3_Period;
serialsim_no_observer_DWork->Pulse_Generator3_IWORK.numCompleteCycles =
(int)floor(ratio);
if (
fabs((serialsim_no_observer_DWork->Pulse_Generator3_IWORK.numCompleteCycles+1)-
ratio ) < DBL_EPSILON * ratio )
{
serialsim_no_observer_DWork->Pulse_Generator3_IWORK.numCompleteCycles
=
serialsim_no_observer_DWork->Pulse_Generator3_IWORK.numCompleteCycles+1;
}
serialsim_no_observer_DWork->Pulse_Generator3_IWORK.numCompleteCycles =
serialsim_no_observer_DWork->Pulse_Generator3_IWORK.numCompleteCycles;
if (time < delay +
serialsim_no_observer_DWork->Pulse_Generator3_IWORK.numCompleteCycles *
serialsim_no_observer_P->Pulse_Generator3_Period
+ serialsim_no_observer_P->Pulse_Generator3_Duty *
serialsim_no_observer_P->Pulse_Generator3_Period/100) {
serialsim_no_observer_DWork->Pulse_Generator3_IWORK.currValue = 1;
serialsim_no_observer_DWork->Pulse_Generator3_RWORK.nextTime = delay +
serialsim_no_observer_DWork->Pulse_Generator3_IWORK.numCompleteCycles
* serialsim_no_observer_P->Pulse_Generator3_Period
+ serialsim_no_observer_P->Pulse_Generator3_Duty *
serialsim_no_observer_P->Pulse_Generator3_Period/100;
} else {
serialsim_no_observer_DWork->Pulse_Generator3_IWORK.currValue = 0;
serialsim_no_observer_DWork->Pulse_Generator3_RWORK.nextTime = delay +
(serialsim_no_observer_DWork->Pulse_Generator3_IWORK.numCompleteCycles
+ 1) * serialsim_no_observer_P->Pulse_Generator3_Period;
}
} else {
serialsim_no_observer_DWork->Pulse_Generator3_IWORK.numCompleteCycles =
0;
serialsim_no_observer_DWork->Pulse_Generator3_IWORK.currValue = 0;
serialsim_no_observer_DWork->Pulse_Generator3_RWORK.nextTime = delay;
}
} else {
/* Determine if any values need to change */
if (serialsim_no_observer_DWork->Pulse_Generator3_RWORK.nextTime <= time) {
if (serialsim_no_observer_DWork->Pulse_Generator3_IWORK.currValue == 1) {
serialsim_no_observer_DWork->Pulse_Generator3_IWORK.currValue = 0;
serialsim_no_observer_DWork->Pulse_Generator3_RWORK.nextTime = delay +
(serialsim_no_observer_DWork->Pulse_Generator3_IWORK.numCompleteCycles
+ 1) * serialsim_no_observer_P->Pulse_Generator3_Period;
} else {
if ( serialsim_no_observer_DWork->Pulse_Generator3_RWORK.nextTime !=
delay) {
serialsim_no_observer_DWork->Pulse_Generator3_IWORK.numCompleteCycles
+= 1;
}
serialsim_no_observer_DWork->Pulse_Generator3_IWORK.currValue = 1;
serialsim_no_observer_DWork->Pulse_Generator3_RWORK.nextTime = delay +
serialsim_no_observer_DWork->Pulse_Generator3_IWORK.numCompleteCycles
* serialsim_no_observer_P->Pulse_Generator3_Period
+ 0.01 * serialsim_no_observer_P->Pulse_Generator3_Duty *
serialsim_no_observer_P->Pulse_Generator3_Period;
}
}
}
/* Set the next hit time */
{
real_T tNext =
serialsim_no_observer_DWork->Pulse_Generator3_RWORK.nextTime;
_ssSetVarNextHitTime(S, (int_T)3.0, tNext);
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -