INOS
CINOSBaseControl Class Reference
Inheritance diagram for CINOSBaseControl:

Public Member Functions

 CINOSBaseControl (SINOSBaseControl *apDesc)
 
virtual uint32 Connect ()
 Connect control to hardware.
 
virtual void Activate (bool abCheckPos=true, bool abSimulatePos=false, bool abSimulateOut=false, bool abSimulateAct=false)
 
virtual void InActivate ()
 
virtual ICACHE uint32 Pull (SINOSRampDataEx *apData)
 
virtual ICACHE uint32 Pull (real64 arPosition, real64 arVelocity, real64 arAcceleration, real64 arJerk)
 
virtual void GetCmdPosition (real64 &arPosition)
 
virtual void GetCmdVelocity (real64 &arVelocity)
 
virtual void GetCmdAcceleration (real64 &arAcceleration)
 
virtual void GetCmdJerk (real64 &arJerk)
 
virtual ICACHE void SetActPosition (real64 arPosition)
 
virtual ICACHE void AdjActPosition (real64 arPosition)
 
virtual ICACHE void GetActPosition (real64 &arPosition)
 
virtual ICACHE void GetActPositionEx (real64 &arPosition)
 
INOS_INLINE void GetActPositionFst (real64 &arPosition)
 
virtual void GetActVelocity (real64 &arVelocity, bool abFiltered=false)
 get actual position fast
 
virtual void GetActAcceleration (real64 &arAcceleration)
 
virtual void GetActJerk (real64 &arJerk)
 
virtual void GetActPosError (real64 &arPosError)
 
virtual void GetActVelocityError (real64 &arVelocityError, bool abFiltered=false)
 
virtual uint32 GetParam (const char *apName, real64 &arResult)
 
virtual volatile real64 * GetParamAdr (const char *apName)
 
virtual uint32 SetParam (const char *apName, real64 arValue)
 
virtual void SetIncsPerUnit (real64 arIncs)
 
virtual void SetUnitsPerInc (real64 arUnits)
 
virtual void OnGearRatioChanged ()
 
void SetFlag (uint32 auFlag)
 
void ClrFlag (uint32 auFlag)
 
uint32 GetFlag () const
 
const charGetType ()
 
virtual ICACHE uint32 GetState ()
 
virtual ICACHE uint32 GetState (uint32 &auSubState)
 
virtual uint32 SetError (uint32 auError)
 
virtual ICACHE uint32 GetError (bool abResolveExternal=false)
 
virtual ICACHE uint64 GetErrorEx (bool abResolveExternal=false)
 
virtual ICACHE real64 GetPosError ()
 
virtual bool IsErrorFatal ()
 
virtual uint32 GetWarning (bool abResolveExternal=false)
 
virtual uint64 GetWarningEx (bool abResolveExternal=false)
 
virtual void AcceptError (uint64 auError=0xffffffffffffffffLL)
 
virtual void AcceptWarning (uint64 auWarning=0xffffffffffffffffLL)
 
virtual bool Sync (real64 arPosition)
 
virtual ICACHE void AbortSync ()
 
virtual bool GetZeroImpuls ()
 
virtual void GetSyncPos (real64 &arSyncPos)
 
virtual void SetSyncPos (real64 arSyncPos)
 
virtual void GetSyncCnt (uint32 &auSyncCnt)
 
virtual void SetSyncCnt (uint32 auSyncCnt)
 
virtual void GetSyncCor (real64 &arSyncCor)
 
virtual void SetNormPos (real64 arNormPos)
 
void SetPathS (real64 arSpath)
 
void SetLifetimeDistance (real64 arDistance)
 set lifetime distance (only used at startup by either mcrobot or user code)
 
void GetLifetimeDistance (real64 &arDistance)
 get current lifetime distance
 
virtual ICACHE void SetAxisEnable (bool abEnable)
 
virtual ICACHE bool GetAxisEnable ()
 
virtual ICACHE bool GetAxisEnabled ()
 
virtual ICACHE bool GetAxisReady ()
 
virtual ICACHE void SetSyncEnable (bool abEnable)
 
virtual ICACHE bool GetSyncEnabled ()
 
virtual ICACHE void ResetSync ()
 
virtual ICACHE void ResetEnabled ()
 
virtual ICACHE void SetControlOut (real64 arControl)
 
virtual ICACHE void SetSerrorOut (real64 arError)
 
virtual bool GetAutoComRequested ()
 
virtual void OnActivated ()
 
virtual void OnInActivated ()
 
virtual void BorderRelaxStart ()
 
virtual void BorderRelaxStop ()
 
virtual ICACHE void SetCoupled (bool abCoupled)
 
virtual ICACHE bool GetCoupled ()
 
virtual bool SafeSyncEnable ()
 
virtual void SafeSyncDisable ()
 
virtual bool SafeSyncCheck ()
 
virtual bool SafeSyncAvailable ()
 
virtual void GetCycleTime (real64 &arCycleTime, bool abOversampled=false)
 
virtual void SetCycleTime (real64 arCycleTime)
 
virtual uint8 GetOversampling ()
 
virtual uint16 GetCycleNumber ()
 
virtual uint16 GetCycleId ()
 
virtual uint8 GetBusId ()
 
virtual void SetDeadTime (real64 arDeadTime)
 
virtual void GetDeadTime (real64 &arDeadTime)
 
virtual CINOSPosChannelGetPosChannel ()
 
virtual CINOSBitGetOutActivate ()
 
virtual CINOSBitGetPowerReady ()
 
virtual bool IsOnline () const
 
virtual CINCOObject * GetRegister ()
 
virtual uint32 GetMcRobotBaseCode ()
 
const charGetAxisName () const
 
void SetAxisEnableInput (const char *apInputName)
 set name of axis enable input
 
void GetAxisEnableInput (char *apResult, uint32 auSize) const
 get name of axis enable input
 
virtual const charGetStateText ()
 

Static Public Member Functions

static CINOSBaseControlGetControl (const char *apAxisName, const char *apControlType)
 

Protected Types

enum  { eExtErWrUnknown , eExtErWrNo , eExtErWrYes }
 

Protected Member Functions

virtual void Reset ()
 
virtual void Control ()
 
virtual void Activating ()
 
virtual void InActivating ()
 
void iCalcDeadTime ()
 
real64 GetSyncCor ()
 
int64 iCalcSinc (real64 arPosition)
 
ICACHE real64 iCalcSact (int64 aiPosition)
 
ICACHE real64 iCalcSactEx (int64 aiPositionEx)
 
ICACHE void iCalcSerr ()
 
bool HasExtendedErrorWarning ()
 
ICACHE uint32 iGetError ()
 
ICACHE uint32 iGetWarning ()
 
void iRegisterTrqCurrent ()
 
virtual void UpdateCycleId (uint16 auCycleId)
 
void SetMaxVelocity (real64 arVmax)
 
bool iSetAxisEnableInput ()
 set name of axis enable input
 
 DECLARE_DYNAMIC (CINOSBaseControl)
 

Protected Attributes

uint32 m_uState
 
uint32 m_uSubState
 
uint64 m_uError
 
uint64 m_uWarning
 
uint32 m_uFlag
 
uint32 m_uFlagCpy
 
bool m_bStartup
 
CINCOObject * m_pRegister
 
CINCOObject * m_pError
 
CINCOObject * m_pWarning
 
CINCOObject * m_pFlag
 
CINCOObject * m_pCmd
 
CINCOObject * m_pAct
 
CINCOObject * m_pLife
 
CINCOObject * m_pErr
 
CINCOObject * m_pMax
 
CINCOObject * m_pMisc
 
CINOSPosChannelm_pPosChannel
 
CINOSPosChannelm_pPosChannelEx
 
uint32 * m_pPosConfig
 
uint32 * m_pPosOffline
 
int32 * m_pPosPosition
 
int32 * m_pPosPositionEx
 
SINOSBaseControlm_pDesc
 
const charm_pType
 
CINOSBusm_pBus {}
 
uint8 m_uBusCategory {}
 
CINOSBitm_pOutActivate
 pointer to activate output
 
CINOSBitm_pOutSyncEnb
 pointer to sync enable output
 
CINOSBitm_pOutSyncEnbEx
 pointer to extended sync enable output
 
CINOSBitm_pOutCurLimit
 pointer to currentlimit bit
 
CINOSBitm_pOutCurAdd
 pointer to current add bit
 
CINOSBitm_pOutCurCmd
 pointer to current cmd bit
 
CINOSBitm_pOutPosRelax
 pointer to pos relax (used at border)
 
CINOSBitm_pOutCoupled
 pointer to coupled
 
CINOSBitm_pInpActivated
 pointer to activated input
 
CINOSBitm_pInpAutoCom
 pointer to autocom input
 
CINOSBitm_pInpWarning
 pointer to warning input
 
CINOSBitm_pInpError
 pointer to error input
 
CINOSBitm_pInpFatalError
 pointer to fatal error input
 
CINOSBitm_pInpSynced
 pointer to synced input
 
CINOSBitm_pInpSyncDeltaOk
 pointer to syncdeltaok input
 
CINOSBitm_pInpSync
 pointer to sync input
 
CINOSBitm_pInpUccOk
 pointer to ucc ok input
 
CINOSDacChannelm_pOutSpeed
 pointer to speed output
 
voidm_pOutSpeedRaw
 pointer to speed output
 
real64 m_rOutSpeedRawGain
 speed raw gain
 
CINOSDacChannelm_pOutSerror
 pointer to error output
 
voidm_pOutSerrorRaw
 pointer to error output
 
real64 m_rOutSerrorRawGain
 serror raw gain
 
CINOSDacChannelm_pOutTrqCurrent
 pointer to trqcurrent output
 
CINOSAdcChannelm_pInpTrqCurrent
 pointer to trqcurrent input
 
uint32 m_uMaskCfgError
 error mask
 
uint32 m_uMaskCfgWarning
 warning mask
 
uint32 m_uMaskCfgSynced
 synced mask
 
real64 m_rCycleTime
 
real64 m_rCycleTimeMs
 
real64 m_rDeadTime
 
real64 m_rDeadTimeMs
 
real64 m_rDelayToHalt
 
uint16 m_uCycleId
 
uint8 m_uOversampling
 
real64 m_rScmd
 
real64 m_rVcmd
 
real64 m_rAcmd
 
real64 m_rJcmd
 
real64 m_rSpath
 
real64 m_rSact
 
real64 m_rSactEx
 
real64 m_rSactExOffset
 
real64 m_rSactDiff
 
real64 m_rVact
 
real64 m_rVactFiltered
 
real64 m_rAact
 
real64 m_rJact
 
int64 m_iLifetimeDistance
 lifetime distance in inc
 
real64 m_rSerr
 
real64 m_rVerr
 
real64 m_rVerrFiltered
 
real64 m_rSmax
 
real64 m_rSmaxRun
 
real64 m_rSmaxAct
 
real64 m_rVmax_1
 
real64 m_rSerrMax
 
real64 m_rSerrMin
 
real64 m_rSerrMaxPos
 
real64 m_rSerrMinPos
 
real64 m_rSerrMaxNeg
 
real64 m_rSerrMinNeg
 
uint16 m_uCmdMsk {}
 
uint16 m_uCmdWrt {}
 
uint16 m_uCmdDdT {}
 
uint16 m_uCmdWait {}
 
real64 m_rCmdT {}
 
SINOSRampDatam_pCmdBuf {}
 
real64 m_rKnf_s
 
real64 m_rKnf_1s
 
real64 m_rKnf_1sEx
 
real64 m_rKnf_1v
 
real64 m_rKnf_1vf
 
real64 m_rKnf_1a
 
int64 m_iPosition
 
real64 m_rPositionFract
 
int64 m_iPositionEx
 
int32 m_iOldS
 
int32 m_iOldSEx
 
int32 m_iOlderS
 
int32 * m_pSarray
 
uint16 m_uSarraySize
 
uint16 m_uSarrayIndex
 
uint32 m_uCharacteristics
 
uint32 m_uDelayToHalt
 
int32 m_iDelayToHalt
 
real64 m_rSyncPos
 
real64 m_rSyncCor
 
uint32 m_uSyncCnt
 
int32 m_iSyncInc
 
real64 m_rNormPos
 
uint32 m_uNormInc
 
enum CINOSBaseControl:: { ... }  m_eExtErWr
 
bool m_bSyncEnb
 
CINOSOscillationDetectorm_pOsciChk
 
uint32 * m_pDiEnable = nullptr
 
uint32 m_uDiEnableMask = 0
 
inosName64 m_cDiEnable {}
 

Static Protected Attributes

static char m_cStateCombo [494]
 

Friends

class CINOSPhysicalAxis
 
class CINCODelayToHalt
 
class CINCODeadTimeMs
 
class CINCOactSEx
 
class CINCOlifeS
 
void _INI_0400_CINOSBaseControl ()
 

Member Function Documentation

◆ Connect()

virtual uint32 CINOSBaseControl::Connect ( )
virtual

Connect control to hardware.

Returns
Returns an according error code or 0 in case of success

The documentation for this class was generated from the following file: