123 const char* apInpName,
const char* apOutName);
129 virtual void Activate(
bool abCheckVal =
true,
bool abSimulateVal =
false,
130 bool abSimulateOut =
false,
bool abSimulateAct =
false);
132 virtual void InActivate();
137 virtual uint32 Tune(
const char* apParam);
144 ICACHE
virtual uint32 Pull(real64 arValue, real64 arVelocity,
145 real64 arAcceleration, real64 arJerk);
148 virtual void GetCmdValue(real64& arValue);
150 virtual void GetCmdVelocity(real64& arVelocity);
152 virtual void GetCmdAcceleration(real64& arAcceleration);
154 virtual void GetCmdJerk(real64& arJerk);
156 ICACHE
virtual void SetActValue(real64 arValue,
bool abIgnorePosError=
false);
158 ICACHE
virtual void GetActValue(real64& arValue);
160 virtual void GetActVelocity(real64& arVelocity);
162 virtual void GetActAcceleration(real64& arAcceleration);
164 virtual void GetActJerk(real64& arJerk);
166 virtual void GetActValError(real64& arValError);
169 virtual uint32 GetParam(
const char* apName, real64& arResult);
171 virtual volatile real64* GetParamAdr(
const char* apName);
173 virtual uint32 SetParam(
const char* apName, real64 arValue);
176 void SetFlag(uint32 auFlag)
179 void ClrFlag(uint32 auFlag)
185 ICACHE
virtual uint32 GetState();
187 ICACHE
virtual uint32 GetState(uint32& auSubState);
189 virtual uint32 SetError(uint32 auError);
191 ICACHE
virtual uint32 GetError(
bool abResolveExternal =
false);
193 virtual uint32 GetWarning();
195 virtual void AcceptError(uint32 auError=0xffffffff);
197 virtual void AcceptWarning(uint32 auWarning=0xffffffff);
200 virtual void GetCycleTime(real64& arCycleTime);
202 virtual void SetCycleTime(real64 arCycleTime);
204 virtual uint16 GetCycleNumber();
206 virtual uint16 GetCycleId();
208 virtual uint8 GetBusId();
211 virtual const char* GetUnit()
214 virtual uint32 GetCharacteristics()
215 {
return m_uCharacteristics; };
217 virtual uint8 GetTypeChar() {
return m_uTypeChar;};
220 { m_pParent = apParent;};
222 virtual const char* GetType() {
return m_pType;};
225 virtual CINCOObject* GetRegister();
228 virtual bool OnEmergency()
229 {
return (m_uError & m_uErrorDis) != 0;};
236 friend class CINCOpidDelayToHalt;
238 friend class CINOSRemoteControlWorker;
242 virtual void Reset();
245 virtual void StopJump();
247 virtual void StopTune();
249 virtual void Jump(real64 arSrc, real64 arDst){};
251 virtual void PreControl(){};
253 virtual void Control();
255 virtual void SetOutput(real64 arOutput);
257 virtual void CalcError();
259 virtual bool IsSettled(
bool abAdjAllowed=
false)
270 virtual const char* GetStateText();
289 uint32 m_uWarningMask;
301 CINCOObject* m_pRegister;
303 CINCOObject* m_pError;
305 CINCOObject* m_pErrorMask;
307 CINCOObject* m_pErrorDis;
309 CINCOObject* m_pWarning;
311 CINCOObject* m_pWarningMask;
313 CINCOObject* m_pFlag;
323 CINCOObject* m_pProp;
344 real64 m_rCycleTime_1;
346 real64 m_rCycleTimeMs;
348 real64 m_rDelayToHalt;
350 real64 m_rActivateTimeout;
352 int32 m_iActivateStart;
356 real64 m_rSettleTime;
358 real64 m_rSettleTimeout;
360 int32 m_iSettleStart;
380 uint32 m_uVactLength;
386 real64 m_rVactRaw[DF_INOS_BASE_CONTROLLER_MAX_V_FILTER];
420 uint32 m_uCharacteristics;
422 uint32 m_uDelayToHalt;
424 int32 m_iDelayToHalt;