123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899 |
- #pragma once
- #define ACTION_TIMEOUT_MECH (20000)
- using namespace DIOS::Dev;
- namespace DIOS::Dev::Detail::MachineryECOM
- {
- class LogicDeviceMechTomo : public MotionControlUnit
- {
- public:
- LogicDeviceMechTomo(MachineryECOMDriver* pMachineryDriver);
- ~LogicDeviceMechTomo();
- public:
- virtual nDev::RET_STATUS FramePrep();
- virtual nDev::RET_STATUS FrameReady();
- virtual nDev::RET_STATUS FrameStart();
- virtual nDev::RET_STATUS FrameAcq();
- virtual nDev::RET_STATUS FrameIn();
- virtual nDev::RET_STATUS FrameEnd();
- virtual nDev::RET_STATUS FramePost();
- virtual nDev::RET_STATUS FrameError();
- virtual nDev::RET_STATUS SeqError();
- virtual nDev::RET_STATUS SeqEnd();
- //virtual nDev::RET_STATUS SelectExamMode(const char* pExamKey);
- //virtual nDev::RET_STATUS SetExamInfo(ResDataObject &ParamIn);
- virtual nDev::RET_STATUS SetExpMode(const char* pExpMode);
- virtual nDev::RET_STATUS SetWorkStation(const char* pWorkStation);
- virtual nDev::RET_STATUS StartMove();
- virtual nDev::RET_STATUS StopMove();
- virtual nDev::RET_STATUS SetFrameRate(FLOAT frameRate);
- virtual nDev::RET_STATUS SetTechParamsInfo(ResDataObject &ParamIn);
- virtual nDev::RET_STATUS CenterAdjust(ResDataObject &ParamIn);
- virtual nDev::RET_STATUS QueryAlignStatus(ResDataObject &ParamIn);
- virtual bool GetMachineryReadyState();
- virtual int GetMachineryTomoMotionLimitationState();
- virtual nDev::RET_STATUS NotifyMachineryReadyState(bool bMachineryReady);
- virtual nDev::RET_STATUS NotifyMachineryAlignStatus(bool bSystemAlign);
- virtual nDev::RET_STATUS NotifyMachineryTechParams(float tid, float sid, int project, float angle, int direction, std::string geometry);
- virtual nDev::RET_STATUS EnterCalibration();
- virtual nDev::RET_STATUS CalMotionTubeLineV(ResDataObject &ParamIn);
- virtual nDev::RET_STATUS CalMotionTubeAngleRotate(ResDataObject &ParamIn);
- virtual nDev::RET_STATUS CalMotionTubeAngleFindeAxisZ(ResDataObject &ParamIn);
- virtual nDev::RET_STATUS CalGetADofTubeLineV(ResDataObject &ParamOut);
- virtual nDev::RET_STATUS CalGetADofDetector(ResDataObject &ParamOut);
- virtual nDev::RET_STATUS CalGetADofTubeAngle(ResDataObject &ParamOut);
- virtual nDev::RET_STATUS CalSaveParamsofTubeLiveV(ResDataObject &ParamIn, ResDataObject &ParamOut);
- virtual nDev::RET_STATUS CalSaveParamsofTubeAngle(ResDataObject &ParamIn, ResDataObject &ParamOut);
- virtual nDev::RET_STATUS CalSaveParamsofDetector(ResDataObject &ParamIn, ResDataObject &ParamOut);
- virtual nDev::RET_STATUS CalGetEncoderofTubeLineV(ResDataObject &ParamOut);
- virtual nDev::RET_STATUS CalGetEncoderofTubeAngle(ResDataObject &ParamOut);
- virtual nDev::RET_STATUS CalSaveEncoderCorrectonofTubeLiveV(ResDataObject &ParamIn, ResDataObject &ParamOut);
- virtual nDev::RET_STATUS CalSetADLimitationofEncoder(ResDataObject &ParamIn);
- virtual nDev::RET_STATUS SetSvoStatus(ResDataObject &ParamIn);
- virtual nDev::RET_STATUS AutoADCalibration(ResDataObject &ParamIn);
- virtual nDev::RET_STATUS ExitCalibration();
- virtual nDev::RET_STATUS EnterMechnicalSelfTest();
- virtual nDev::RET_STATUS ExitMechnicalSelfTest();
- virtual nDev::RET_STATUS StartSelfTest(ResDataObject &ParamIn);
- virtual nDev::RET_STATUS ParkingTo(ResDataObject &ParamIn);
- virtual nDev::RET_STATUS ActiveTubeAngleZAxisClear();
- virtual nDev::RET_STATUS CancelTubeAngleZAxisClear();
- virtual nDev::RET_STATUS ActiveTubeHeightZAxisClear();
- virtual nDev::RET_STATUS CancelTubeHeightZAxisClear();
- virtual nDev::RET_STATUS TubeAngleRotateToZAxis();
- virtual nDev::RET_STATUS TubeHeightMoveToZAxis();
- virtual nDev::RET_STATUS ForceStopAllMotion();
- virtual nDev::RET_STATUS MotionTest_StartTubeLineVMotion2Target(ResDataObject &ParamIn);
- virtual nDev::RET_STATUS MotionTest_StopLineVMotion(ResDataObject &ParamIn);
- virtual nDev::RET_STATUS MotionTest_TubeAngleRotate2Target(ResDataObject &ParamIn);
- virtual nDev::RET_STATUS MotionTest_StopRotation(ResDataObject &ParamIn);
- virtual nDev::RET_STATUS MotionTest_BindRotationEncoder(ResDataObject &ParamIn);
- virtual nDev::RET_STATUS MotionTest_UnbindRotationEncoder(ResDataObject &ParamIn);
- virtual nDev::RET_STATUS MotionTest_SystemInitial(ResDataObject &ParamIn);
- virtual nDev::RET_STATUS MotionTest_TubeCenterAlign(ResDataObject &ParamIn);
- virtual nDev::RET_STATUS MotionTest_Move2ParkingPosition(ResDataObject &ParamIn);
- virtual nDev::RET_STATUS GetTomoResult(ResDataObject& resultAngle, ResDataObject& resultHeight);
- virtual nDev::RET_STATUS RecalculateTomoMotionParam();
- virtual nDev::RET_STATUS CalMotionTubeLineH(ResDataObject& ParamIn);
- virtual nDev::RET_STATUS CalGetADofTubeLineH(ResDataObject& ParamOut);
- virtual nDev::RET_STATUS CalGetEncoderofTubeLineH(ResDataObject& ParamOut);
- virtual nDev::RET_STATUS CalGetADofHorizontalDetector(ResDataObject& ParamOut);
- virtual nDev::RET_STATUS CalSaveParamsofTubeLiveH(ResDataObject& ParamIn, ResDataObject& ParamOut);
- virtual nDev::RET_STATUS CalSaveParamsofDetectorHorizontal(ResDataObject& ParamIn, ResDataObject& ParamOut);
- virtual nDev::RET_STATUS CalSaveResetLowPosition(ResDataObject& ParamIn, ResDataObject& ParamOut);
- virtual nDev::RET_STATUS CalSaveResetEcoderZeroPosition(ResDataObject& ParamIn, ResDataObject& ParamOut);
- virtual nDev::RET_STATUS CalGetResetPosParam(ResDataObject& ParamIn, ResDataObject& ParamOut);
- private:
- EXAM_MODE m_Mode;
- private:
- };
- }
|