|
@@ -50,9 +50,8 @@ BoatModule::BoatModule(const char* className, const char* name, const char* modu
|
|
|
void BoatModule::initialize()
|
|
|
{
|
|
|
|
|
|
- boatElevator = (IoFurnaceMotor *)DEVICE->getDevice(MODULE_NAME, "BoatElevatorServo");
|
|
|
- boatRotation = (IoFurnaceMotor*)DEVICE->getDevice(MODULE_NAME, "BoatRotationServo");
|
|
|
- shutter = (IoShutter*)DEVICE->getDevice(MODULE_NAME, "Shutter");
|
|
|
+ boatElevator = IoFurnaceMotor::poBoatElevatorServo;
|
|
|
+ boatRotation = IoFurnaceMotor::poBoatRotationServo;
|
|
|
subscribe();
|
|
|
this->status = BoatStatusEnum::Idle;
|
|
|
}
|
|
@@ -81,6 +80,8 @@ void BoatModule::subscribe()
|
|
|
|
|
|
subOp->addExec([]()->OperatorStatusEnum {
|
|
|
OP->current->setTimes( 0, 0, 0, 0);
|
|
|
+ boatModule->boatElevator->initialize();//重新取一下参数
|
|
|
+ boatModule->boatRotation->initialize();//重新取一下参数
|
|
|
//检查一下状态
|
|
|
if (boatModule->status!=BoatStatusEnum::Idle && boatModule->status!=BoatStatusEnum::Rotating) {
|
|
|
char* err = EV->parseErrCode(ALARM_BOAT_STATUS, "status=%s;", describeBoatStatus(boatModule->status));
|
|
@@ -208,6 +209,8 @@ void BoatModule::subscribe()
|
|
|
|
|
|
subOp->addExec([]()->OperatorStatusEnum {
|
|
|
OP->current->setTimes( 0, 0, 0, 0);
|
|
|
+ boatModule->boatElevator->initialize();//重新取一下参数
|
|
|
+ boatModule->boatRotation->initialize();//重新取一下参数
|
|
|
//检查一下状态
|
|
|
if (boatModule->status != BoatStatusEnum::Idle && boatModule->status != BoatStatusEnum::Rotating) {
|
|
|
char* err = EV->parseErrCode(ALARM_BOAT_STATUS, "status=%s;", describeBoatStatus(boatModule->status));
|
|
@@ -361,6 +364,8 @@ void BoatModule::subscribe()
|
|
|
//SetBoatRAxisMove
|
|
|
subOp = opNode->addChild("SetBoatRAxisMove");
|
|
|
subOp->addExec([]()->OperatorStatusEnum {
|
|
|
+ boatModule->boatElevator->initialize();//重新取一下参数
|
|
|
+ boatModule->boatRotation->initialize();//重新取一下参数
|
|
|
OP->current->setTimes( 0, 0, 0, boatModule->boatRotation->scMotionTimeout);
|
|
|
boatModule->setBoatRAxisMove(BoatRotateDirection::CCW);
|
|
|
return OperatorStatusEnum::RUNNING;
|
|
@@ -405,6 +410,8 @@ void BoatModule::subscribe()
|
|
|
//SetBoatRAxisMove
|
|
|
subOp = opNode->addChild("SetBoatRAxisMoveStop");
|
|
|
subOp->addExec([]()->OperatorStatusEnum {
|
|
|
+ boatModule->boatElevator->initialize();//重新取一下参数
|
|
|
+ boatModule->boatRotation->initialize();//重新取一下参数
|
|
|
OP->current->setTimes( 0, 0, 0, boatModule->boatRotation->scMotionTimeout);
|
|
|
boatModule->stopRotating();
|
|
|
return OperatorStatusEnum::RUNNING;
|
|
@@ -441,6 +448,8 @@ void BoatModule::subscribe()
|
|
|
//SetBoatRAxisMoveStop
|
|
|
subOp = opNode->addChild("SetBoatRAxisMoveStop");
|
|
|
subOp->addExec([]()->OperatorStatusEnum {
|
|
|
+ boatModule->boatElevator->initialize();//重新取一下参数
|
|
|
+ boatModule->boatRotation->initialize();//重新取一下参数
|
|
|
OP->current->setTimes( 0, 0, 0, boatModule->boatRotation->scMotionTimeout);
|
|
|
boatModule->stopRotating();
|
|
|
return OperatorStatusEnum::RUNNING;
|