v1.15.0 #311
@ -67,16 +67,30 @@ void initmission::initTasks() {
|
||||
void (*missedDeadlineFunc)(void) = nullptr;
|
||||
#endif
|
||||
|
||||
PeriodicTaskIF* coreController = factory->createPeriodicTask(
|
||||
PeriodicTaskIF* sysCtrlTask = factory->createPeriodicTask(
|
||||
"CORE_CTRL", 60, PeriodicTaskIF::MINIMUM_STACK_SIZE, 0.4, missedDeadlineFunc);
|
||||
result = coreController->addComponent(objects::CORE_CONTROLLER);
|
||||
result = sysCtrlTask->addComponent(objects::CORE_CONTROLLER);
|
||||
if (result != returnvalue::OK) {
|
||||
initmission::printAddObjectError("CORE_CTRL", objects::CORE_CONTROLLER);
|
||||
}
|
||||
// Could add this to the core controller but the core controller does so many thing that I would
|
||||
// prefer to have the solar array deployment in a seprate task.
|
||||
PeriodicTaskIF* solarArrayDeplTask = factory->createPeriodicTask(
|
||||
"SOLAR_ARRAY_DEPL", 65, PeriodicTaskIF::MINIMUM_STACK_SIZE, 0.4, missedDeadlineFunc);
|
||||
result = solarArrayDeplTask->addComponent(objects::SOLAR_ARRAY_DEPL_HANDLER);
|
||||
if (result != returnvalue::OK) {
|
||||
initmission::printAddObjectError("SOLAR_ARRAY_DEPL", objects::SOLAR_ARRAY_DEPL_HANDLER);
|
||||
}
|
||||
|
||||
/* TMTC Distribution */
|
||||
PeriodicTaskIF* tmTcDistributor = factory->createPeriodicTask(
|
||||
"DIST", 40, PeriodicTaskIF::MINIMUM_STACK_SIZE, 0.2, missedDeadlineFunc);
|
||||
"DIST", 45, PeriodicTaskIF::MINIMUM_STACK_SIZE, 0.2, missedDeadlineFunc);
|
||||
#if OBSW_ADD_TCPIP_BRIDGE == 1
|
||||
result = tmTcDistributor->addComponent(objects::TMTC_BRIDGE);
|
||||
if (result != returnvalue::OK) {
|
||||
initmission::printAddObjectError("TMTC_BRIDGE", objects::TMTC_BRIDGE);
|
||||
}
|
||||
#endif
|
||||
result = tmTcDistributor->addComponent(objects::CCSDS_PACKET_DISTRIBUTOR);
|
||||
if (result != returnvalue::OK) {
|
||||
initmission::printAddObjectError("CCSDS_DISTRIB", objects::CCSDS_PACKET_DISTRIBUTOR);
|
||||
@ -95,13 +109,6 @@ void initmission::initTasks() {
|
||||
}
|
||||
|
||||
#if OBSW_ADD_TCPIP_BRIDGE == 1
|
||||
// TMTC bridge
|
||||
PeriodicTaskIF* tmtcBridgeTask = factory->createPeriodicTask(
|
||||
"TCPIP_TMTC_BRIDGE", 50, PeriodicTaskIF::MINIMUM_STACK_SIZE, 0.2, missedDeadlineFunc);
|
||||
result = tmtcBridgeTask->addComponent(objects::TMTC_BRIDGE);
|
||||
if (result != returnvalue::OK) {
|
||||
initmission::printAddObjectError("TMTC_BRIDGE", objects::TMTC_BRIDGE);
|
||||
}
|
||||
PeriodicTaskIF* tmtcPollingTask = factory->createPeriodicTask(
|
||||
"TMTC_POLLING", 80, PeriodicTaskIF::MINIMUM_STACK_SIZE, 2.0, missedDeadlineFunc);
|
||||
result = tmtcPollingTask->addComponent(objects::TMTC_POLLING_TASK);
|
||||
@ -138,39 +145,39 @@ void initmission::initTasks() {
|
||||
}
|
||||
#endif
|
||||
|
||||
PeriodicTaskIF* acsTask = factory->createPeriodicTask(
|
||||
PeriodicTaskIF* acsCtrlTask = factory->createPeriodicTask(
|
||||
"ACS_TASK", 50, PeriodicTaskIF::MINIMUM_STACK_SIZE * 2, 0.4, missedDeadlineFunc);
|
||||
#if OBSW_ADD_GPS_CTRL == 1
|
||||
result = acsTask->addComponent(objects::GPS_CONTROLLER);
|
||||
result = acsCtrlTask->addComponent(objects::GPS_CONTROLLER);
|
||||
if (result != returnvalue::OK) {
|
||||
initmission::printAddObjectError("GPS_CTRL", objects::GPS_CONTROLLER);
|
||||
}
|
||||
#endif /* OBSW_ADD_GPS_CTRL */
|
||||
|
||||
#if OBSW_ADD_ACS_CTRL == 1
|
||||
acsTask->addComponent(objects::ACS_CONTROLLER);
|
||||
acsCtrlTask->addComponent(objects::ACS_CONTROLLER);
|
||||
if (result != returnvalue::OK) {
|
||||
initmission::printAddObjectError("ACS_CTRL", objects::ACS_CONTROLLER);
|
||||
}
|
||||
#endif
|
||||
|
||||
PeriodicTaskIF* sysTask = factory->createPeriodicTask(
|
||||
PeriodicTaskIF* acsSysTask = factory->createPeriodicTask(
|
||||
"SYS_TASK", 40, PeriodicTaskIF::MINIMUM_STACK_SIZE * 2, 0.4, missedDeadlineFunc);
|
||||
static_cast<void>(sysTask);
|
||||
static_cast<void>(acsSysTask);
|
||||
#if OBSW_ADD_ACS_BOARD == 1
|
||||
result = sysTask->addComponent(objects::ACS_BOARD_ASS);
|
||||
result = acsSysTask->addComponent(objects::ACS_BOARD_ASS);
|
||||
if (result != returnvalue::OK) {
|
||||
initmission::printAddObjectError("ACS_BOARD_ASS", objects::ACS_BOARD_ASS);
|
||||
}
|
||||
#endif /* OBSW_ADD_ACS_HANDLERS */
|
||||
#if OBSW_ADD_RW == 1
|
||||
result = sysTask->addComponent(objects::RW_ASS);
|
||||
result = acsSysTask->addComponent(objects::RW_ASS);
|
||||
if (result != returnvalue::OK) {
|
||||
initmission::printAddObjectError("RW_ASS", objects::RW_ASS);
|
||||
}
|
||||
#endif
|
||||
#if OBSW_ADD_SUS_BOARD_ASS == 1
|
||||
result = sysTask->addComponent(objects::SUS_BOARD_ASS);
|
||||
result = acsSysTask->addComponent(objects::SUS_BOARD_ASS);
|
||||
if (result != returnvalue::OK) {
|
||||
initmission::printAddObjectError("SUS_BOARD_ASS", objects::SUS_BOARD_ASS);
|
||||
}
|
||||
@ -297,7 +304,6 @@ void initmission::initTasks() {
|
||||
tmTcDistributor->startTask();
|
||||
|
||||
#if OBSW_ADD_TCPIP_BRIDGE == 1
|
||||
tmtcBridgeTask->startTask();
|
||||
tmtcPollingTask->startTask();
|
||||
#endif
|
||||
|
||||
@ -306,7 +312,7 @@ void initmission::initTasks() {
|
||||
pdecHandlerTask->startTask();
|
||||
#endif /* OBSW_USE_CCSDS_IP_CORE == 1 */
|
||||
|
||||
coreController->startTask();
|
||||
sysCtrlTask->startTask();
|
||||
|
||||
taskStarter(pstTasks, "PST task vector");
|
||||
taskStarter(pusTasks, "PUS task vector");
|
||||
@ -327,8 +333,8 @@ void initmission::initTasks() {
|
||||
strHelperTask->startTask();
|
||||
#endif /* OBSW_ADD_STAR_TRACKER == 1 */
|
||||
|
||||
acsTask->startTask();
|
||||
sysTask->startTask();
|
||||
acsCtrlTask->startTask();
|
||||
acsSysTask->startTask();
|
||||
#if OBSW_ADD_RTD_DEVICES == 1
|
||||
tcsPollingTask->startTask();
|
||||
tcsTask->startTask();
|
||||
|
Loading…
Reference in New Issue
Block a user