mirror of
https://gitlab.com/fabinfra/fabhardware/absaugungsklappensteuerung.git
synced 2025-03-12 14:51:44 +01:00
setOpen() wird zwischengespeichert.
This commit is contained in:
parent
ba1d3a122d
commit
34cb487948
@ -7,41 +7,31 @@ KlappenAblauf::~KlappenAblauf()
|
||||
}
|
||||
|
||||
|
||||
statusKlappen KlappenAblauf::setOpen(bool open)
|
||||
void KlappenAblauf::setOpen(bool open)
|
||||
{
|
||||
openSpeicher = open;
|
||||
|
||||
if(open){
|
||||
if(aktuellerState == WARTE_GESCHLOSSEN){
|
||||
aktuellerState = START_AUF;
|
||||
return OK;
|
||||
}
|
||||
}else{
|
||||
if(aktuellerState == WARTE_OFFEN){
|
||||
aktuellerState = START_ZU;
|
||||
return OK;
|
||||
}
|
||||
}
|
||||
return ERROR_BUSY;
|
||||
|
||||
}
|
||||
|
||||
statusKlappen KlappenAblauf::setOpen(bool open , int id)
|
||||
void KlappenAblauf::setOpen(bool open , int id)
|
||||
{
|
||||
KlappenAblauf *zeiger;
|
||||
zeiger = (KlappenAblauf *) searchIdElement(id);
|
||||
if(zeiger)
|
||||
return zeiger->setOpen(open);
|
||||
return ERROR_ID;
|
||||
}
|
||||
|
||||
void KlappenAblauf::memberSetup(){
|
||||
|
||||
AnalogDigital::memberSetup();
|
||||
openSpeicher = false;
|
||||
fsmInit();
|
||||
}
|
||||
|
||||
void KlappenAblauf::memberLoop(){
|
||||
AnalogDigital::memberLoop();
|
||||
openSpeicherAbfrage();
|
||||
fsmStep();
|
||||
}
|
||||
|
||||
@ -52,6 +42,20 @@ void KlappenAblauf::fsmInit(){
|
||||
|
||||
}
|
||||
|
||||
void KlappenAblauf::openSpeicherAbfrage(){
|
||||
if(openSpeicher){
|
||||
if(aktuellerState == WARTE_GESCHLOSSEN){
|
||||
aktuellerState = START_AUF;
|
||||
}
|
||||
}else{
|
||||
if(aktuellerState == WARTE_OFFEN){
|
||||
aktuellerState = START_ZU;
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
void KlappenAblauf::fsmStep(){
|
||||
|
||||
|
@ -36,8 +36,8 @@ public:
|
||||
/**
|
||||
* @param open
|
||||
*/
|
||||
statusKlappen setOpen(bool open);
|
||||
static statusKlappen setOpen(bool open , int id);
|
||||
void setOpen(bool open);
|
||||
static void setOpen(bool open , int id);
|
||||
|
||||
protected:
|
||||
|
||||
@ -53,6 +53,9 @@ protected:
|
||||
private:
|
||||
|
||||
int16_t timer;
|
||||
|
||||
bool openSpeicher;
|
||||
void openSpeicherAbfrage();
|
||||
typedef enum fsmStatesEnum{
|
||||
INIT,
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user