update huayan_arm and grpc_service
This commit is contained in:
parent
2fa161f1cc
commit
89b1e1f8f6
@ -117,6 +117,7 @@ bool HuayanRobot::init()
|
|||||||
CMVR_LOG(ERROR) << "[HuayanRobot] init failed: " << result.message;
|
CMVR_LOG(ERROR) << "[HuayanRobot] init failed: " << result.message;
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
setSpeedScaling(1);
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@ -50,6 +50,9 @@ public:
|
|||||||
grpc::Status computeForwardKinematics(grpc::ServerContext* context,
|
grpc::Status computeForwardKinematics(grpc::ServerContext* context,
|
||||||
const api::ComputeForwardKinematics_Request* request,
|
const api::ComputeForwardKinematics_Request* request,
|
||||||
api::ComputeForwardKinematics_Response* response) override;
|
api::ComputeForwardKinematics_Response* response) override;
|
||||||
|
grpc::Status clearFault(grpc::ServerContext *context,
|
||||||
|
const cmvr::api::CommandHeader_Request *request,
|
||||||
|
cmvr::api::CommandHeader_Feedback *response) override;
|
||||||
|
|
||||||
private:
|
private:
|
||||||
device::DeviceManager& dmgr_;
|
device::DeviceManager& dmgr_;
|
||||||
|
|||||||
@ -350,4 +350,23 @@ grpc::Status gRPCArmServiceImpl::computeForwardKinematics(grpc::ServerContext*,
|
|||||||
return grpc::Status(grpc::StatusCode::UNIMPLEMENTED, "computeForwardKinematics is not implemented");
|
return grpc::Status(grpc::StatusCode::UNIMPLEMENTED, "computeForwardKinematics is not implemented");
|
||||||
}
|
}
|
||||||
|
|
||||||
|
grpc::Status gRPCArmServiceImpl::clearFault(grpc::ServerContext *context,
|
||||||
|
const cmvr::api::CommandHeader_Request *request,
|
||||||
|
cmvr::api::CommandHeader_Feedback *response)
|
||||||
|
{
|
||||||
|
try {
|
||||||
|
const std::string device_id = request->device_id();
|
||||||
|
auto arm = dmgr_.getDevice<device::RobotArm>(device_id);
|
||||||
|
if (!arm) {
|
||||||
|
return setDeviceNotFound(response, device_id);
|
||||||
|
}
|
||||||
|
const auto result = arm->clearFault();
|
||||||
|
fillFeedback(response, result.ok(), result.ok() ? "" : result.message);
|
||||||
|
return resultToStatus(result);
|
||||||
|
} catch (const std::exception& e) {
|
||||||
|
fillFeedback(response, false, e.what());
|
||||||
|
return grpc::Status(grpc::StatusCode::INTERNAL, e.what());
|
||||||
|
}
|
||||||
|
}
|
||||||
} // namespace cmvr::service
|
} // namespace cmvr::service
|
||||||
|
|
||||||
|
|||||||
@ -8,6 +8,7 @@ import "cmvr/api/arm_command.proto";
|
|||||||
service ArmService {
|
service ArmService {
|
||||||
rpc torqueOff(CommandHeader.Request) returns (CommandHeader.Feedback);
|
rpc torqueOff(CommandHeader.Request) returns (CommandHeader.Feedback);
|
||||||
rpc torqueOn(CommandHeader.Request) returns (CommandHeader.Feedback);
|
rpc torqueOn(CommandHeader.Request) returns (CommandHeader.Feedback);
|
||||||
|
rpc clearFault(CommandHeader.Request) returns (CommandHeader.Feedback);
|
||||||
rpc moveJ(MoveJ.Request) returns (MoveJ.Response);
|
rpc moveJ(MoveJ.Request) returns (MoveJ.Response);
|
||||||
rpc moveL(MoveL.Request) returns (MoveL.Response);
|
rpc moveL(MoveL.Request) returns (MoveL.Response);
|
||||||
rpc speedJ(SpeedJ.Request) returns (SpeedJ.Response);
|
rpc speedJ(SpeedJ.Request) returns (SpeedJ.Response);
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user