add setGimbalDownwardHome function

This commit is contained in:
Eason Yi 2024-07-12 11:37:49 +08:00
parent 335a3ad363
commit c66bdf2510
8 changed files with 31 additions and 0 deletions

View File

@ -46,6 +46,7 @@ public:
uint32_t setGimabalPos(const AMOV_GIMBAL_POS_T &pos); uint32_t setGimabalPos(const AMOV_GIMBAL_POS_T &pos);
uint32_t setGimabalSpeed(const AMOV_GIMBAL_POS_T &speed); uint32_t setGimabalSpeed(const AMOV_GIMBAL_POS_T &speed);
uint32_t setGimabalHome(void); uint32_t setGimabalHome(void);
uint32_t setGimbalDownwardHome(void);
uint32_t setGimbalZoom(AMOV_GIMBAL_ZOOM_T zoom, float targetRate = 0); uint32_t setGimbalZoom(AMOV_GIMBAL_ZOOM_T zoom, float targetRate = 0);
uint32_t setGimbalFocus(AMOV_GIMBAL_ZOOM_T zoom, float targetRate = 0); uint32_t setGimbalFocus(AMOV_GIMBAL_ZOOM_T zoom, float targetRate = 0);

View File

@ -65,6 +65,12 @@ uint32_t GX40GimbalDriver::setGimabalHome(void)
return pack(GX40::GIMBAL_CMD_HOME, nullptr, 0); return pack(GX40::GIMBAL_CMD_HOME, nullptr, 0);
} }
uint32_t GX40GimbalDriver::setGimbalDownwardHome(void)
{
pack(GX40::GIMBAL_CMD_MODE_OVERLOCK, nullptr, 0);
return pack(GX40::GIMBAL_CMD_HOME, nullptr, 0);
}
/** /**
* The function `takePic` in the `GX40GimbalDriver` class takes a picture using the GX40 gimbal and * The function `takePic` in the `GX40GimbalDriver` class takes a picture using the GX40 gimbal and
* returns the packed command. * returns the packed command.

View File

@ -75,6 +75,7 @@ namespace amovGimbal
uint32_t setGimabalFollowSpeed(const AMOV_GIMBAL_POS_T &followSpeed); uint32_t setGimabalFollowSpeed(const AMOV_GIMBAL_POS_T &followSpeed);
uint32_t setGimabalHome(void); uint32_t setGimabalHome(void);
uint32_t setGimbalDownwardHome(void);
uint32_t setGimbalZoom(AMOV_GIMBAL_ZOOM_T zoom, float targetRate = 0); uint32_t setGimbalZoom(AMOV_GIMBAL_ZOOM_T zoom, float targetRate = 0);
uint32_t setGimbalFocus(AMOV_GIMBAL_ZOOM_T zoom, float targetRate = 0); uint32_t setGimbalFocus(AMOV_GIMBAL_ZOOM_T zoom, float targetRate = 0);
uint32_t setGimbalROI(const AMOV_GIMBAL_ROI_T area); uint32_t setGimbalROI(const AMOV_GIMBAL_ROI_T area);

View File

@ -80,6 +80,16 @@ uint32_t amovGimbal::IamovGimbalBase::setGimabalHome(void)
return 0; return 0;
} }
uint32_t amovGimbal::gimbal::setGimbalDownwardHome(void)
{
return ((amovGimbalBase*)(this->devHandle))->setGimbalDownwardHome();
}
uint32_t amovGimbal::IamovGimbalBase::setGimbalDownwardHome()
{
return 0;
}
uint32_t amovGimbal::gimbal::setGimbalZoom(AMOV_GIMBAL_ZOOM_T zoom, float targetRate) uint32_t amovGimbal::gimbal::setGimbalZoom(AMOV_GIMBAL_ZOOM_T zoom, float targetRate)
{ {
return ((amovGimbalBase *)(this->devHandle))->setGimbalZoom(zoom, targetRate); return ((amovGimbalBase *)(this->devHandle))->setGimbalZoom(zoom, targetRate);

View File

@ -66,6 +66,11 @@ uint32_t amovGimbalSetGimabalHome(void *handle)
return ((amovGimbal::gimbal *)handle)->setGimabalHome(); return ((amovGimbal::gimbal *)handle)->setGimabalHome();
} }
uint32_t amovGimbalSetGimbalDownwardHome(void* handle)
{
return ((amovGimbal::gimbal*)handle)->setGimbalDownwardHome();
}
uint32_t amovGimbalSetGimbalZoom(AMOV_GIMBAL_ZOOM_T zoom, float targetRate, void *handle) uint32_t amovGimbalSetGimbalZoom(AMOV_GIMBAL_ZOOM_T zoom, float targetRate, void *handle)
{ {
return ((amovGimbal::gimbal *)handle)->setGimbalZoom(zoom, targetRate); return ((amovGimbal::gimbal *)handle)->setGimbalZoom(zoom, targetRate);

View File

@ -84,6 +84,7 @@ namespace amovGimbal
virtual uint32_t setGimabalFollowSpeed(const AMOV_GIMBAL_POS_T &followSpeed); virtual uint32_t setGimabalFollowSpeed(const AMOV_GIMBAL_POS_T &followSpeed);
virtual uint32_t setGimabalHome(void); virtual uint32_t setGimabalHome(void);
virtual uint32_t setGimbalDownwardHome(void);
virtual uint32_t setGimbalZoom(AMOV_GIMBAL_ZOOM_T zoom, float targetRate = 0); virtual uint32_t setGimbalZoom(AMOV_GIMBAL_ZOOM_T zoom, float targetRate = 0);
virtual uint32_t setGimbalFocus(AMOV_GIMBAL_ZOOM_T zoom, float targetRate = 0); virtual uint32_t setGimbalFocus(AMOV_GIMBAL_ZOOM_T zoom, float targetRate = 0);
virtual uint32_t setGimbalROI(const AMOV_GIMBAL_ROI_T area); virtual uint32_t setGimbalROI(const AMOV_GIMBAL_ROI_T area);

View File

@ -290,6 +290,12 @@ bool sv::Gimbal::setHome()
} }
} }
void sv::Gimbal::setGimbalDownwardHome(void)
{
amovGimbal::gimbal* pdevTemp = (amovGimbal::gimbal*)this->dev;
pdevTemp->setGimbalDownwardHome();
}
/** /**
* This function sets the zoom level of a gimbal device and returns a boolean indicating success or * This function sets the zoom level of a gimbal device and returns a boolean indicating success or
* failure. * failure.

View File

@ -181,6 +181,7 @@ namespace sv
// Funtions // Funtions
bool setHome(); bool setHome();
void setGimbalDownwardHome();
bool setZoom(double x); bool setZoom(double x);
bool setAutoZoom(int state); bool setAutoZoom(int state);
bool setAutoFocus(int state); bool setAutoFocus(int state);