From 4029b5d84ddac279dbe93fb91eede4f605b143ed Mon Sep 17 00:00:00 2001 From: Peter Johnson Date: Wed, 18 Jul 2018 20:16:43 -0700 Subject: [PATCH] Update gazebo plugins to Gazebo 9 (#1189) Note: This breaks Gazebo 7 support. --- simulation/frc_gazebo_plugins/src/clock/cpp/clock.cpp | 2 +- .../frc_gazebo_plugins/src/dc_motor/cpp/dc_motor.cpp | 2 +- .../src/drive_motor/cpp/drive_motor.cpp | 2 +- .../frc_gazebo_plugins/src/encoder/cpp/encoder.cpp | 6 +++--- simulation/frc_gazebo_plugins/src/gyro/cpp/gyro.cpp | 10 +++++----- .../src/limit_switch/cpp/internal_limit_switch.cpp | 5 ++--- .../src/limit_switch/cpp/limit_switch.cpp | 2 +- .../src/pneumatic_piston/cpp/pneumatic_piston.cpp | 2 +- .../src/potentiometer/cpp/potentiometer.cpp | 7 +++---- .../src/rangefinder/cpp/rangefinder.cpp | 2 +- simulation/frc_gazebo_plugins/src/servo/cpp/servo.cpp | 6 +++--- 11 files changed, 22 insertions(+), 24 deletions(-) diff --git a/simulation/frc_gazebo_plugins/src/clock/cpp/clock.cpp b/simulation/frc_gazebo_plugins/src/clock/cpp/clock.cpp index 43dfd1e686..c7440eb1b7 100644 --- a/simulation/frc_gazebo_plugins/src/clock/cpp/clock.cpp +++ b/simulation/frc_gazebo_plugins/src/clock/cpp/clock.cpp @@ -25,7 +25,7 @@ void Clock::Load(gazebo::physics::ModelPtr model, sdf::ElementPtr sdf) { // Connect to Gazebo transport for messaging std::string scoped_name = - model->GetWorld()->GetName() + "::" + model->GetScopedName(); + model->GetWorld()->Name() + "::" + model->GetScopedName(); boost::replace_all(scoped_name, "::", "/"); node = gazebo::transport::NodePtr(new gazebo::transport::Node()); node->Init(scoped_name); diff --git a/simulation/frc_gazebo_plugins/src/dc_motor/cpp/dc_motor.cpp b/simulation/frc_gazebo_plugins/src/dc_motor/cpp/dc_motor.cpp index 490d1a5ae0..8cc3039263 100644 --- a/simulation/frc_gazebo_plugins/src/dc_motor/cpp/dc_motor.cpp +++ b/simulation/frc_gazebo_plugins/src/dc_motor/cpp/dc_motor.cpp @@ -34,7 +34,7 @@ void DCMotor::Load(gazebo::physics::ModelPtr model, sdf::ElementPtr sdf) { // Connect to Gazebo transport for messaging std::string scoped_name = - model->GetWorld()->GetName() + "::" + model->GetScopedName(); + model->GetWorld()->Name() + "::" + model->GetScopedName(); boost::replace_all(scoped_name, "::", "/"); node = gazebo::transport::NodePtr(new gazebo::transport::Node()); node->Init(scoped_name); diff --git a/simulation/frc_gazebo_plugins/src/drive_motor/cpp/drive_motor.cpp b/simulation/frc_gazebo_plugins/src/drive_motor/cpp/drive_motor.cpp index b6a492e080..e6511bb86b 100644 --- a/simulation/frc_gazebo_plugins/src/drive_motor/cpp/drive_motor.cpp +++ b/simulation/frc_gazebo_plugins/src/drive_motor/cpp/drive_motor.cpp @@ -76,7 +76,7 @@ void DriveMotor::Load(gazebo::physics::ModelPtr model, sdf::ElementPtr sdf) { // Connect to Gazebo transport for messaging std::string scoped_name = - model->GetWorld()->GetName() + "::" + model->GetScopedName(); + model->GetWorld()->Name() + "::" + model->GetScopedName(); boost::replace_all(scoped_name, "::", "/"); node = gazebo::transport::NodePtr(new gazebo::transport::Node()); node->Init(scoped_name); diff --git a/simulation/frc_gazebo_plugins/src/encoder/cpp/encoder.cpp b/simulation/frc_gazebo_plugins/src/encoder/cpp/encoder.cpp index 1703d69c57..37551f27de 100644 --- a/simulation/frc_gazebo_plugins/src/encoder/cpp/encoder.cpp +++ b/simulation/frc_gazebo_plugins/src/encoder/cpp/encoder.cpp @@ -40,7 +40,7 @@ void Encoder::Load(gazebo::physics::ModelPtr model, sdf::ElementPtr sdf) { // Connect to Gazebo transport for messaging std::string scoped_name = - model->GetWorld()->GetName() + "::" + model->GetScopedName(); + model->GetWorld()->Name() + "::" + model->GetScopedName(); boost::replace_all(scoped_name, "::", "/"); node = gazebo::transport::NodePtr(new gazebo::transport::Node()); node->Init(scoped_name); @@ -87,9 +87,9 @@ void Encoder::Callback(const gazebo::msgs::ConstStringPtr& msg) { double Encoder::GetAngle() { if (radians) { - return joint->GetAngle(0).Radian(); + return joint->Position(0); } else { - return joint->GetAngle(0).Degree(); + return joint->Position(0) * (180.0 / M_PI); } } diff --git a/simulation/frc_gazebo_plugins/src/gyro/cpp/gyro.cpp b/simulation/frc_gazebo_plugins/src/gyro/cpp/gyro.cpp index 23b2487ad9..65d42b7bb1 100644 --- a/simulation/frc_gazebo_plugins/src/gyro/cpp/gyro.cpp +++ b/simulation/frc_gazebo_plugins/src/gyro/cpp/gyro.cpp @@ -39,7 +39,7 @@ void Gyro::Load(gazebo::physics::ModelPtr model, sdf::ElementPtr sdf) { // Connect to Gazebo transport for messaging std::string scoped_name = - model->GetWorld()->GetName() + "::" + model->GetScopedName(); + model->GetWorld()->Name() + "::" + model->GetScopedName(); boost::replace_all(scoped_name, "::", "/"); node = gazebo::transport::NodePtr(new gazebo::transport::Node()); node->Init(scoped_name); @@ -73,17 +73,17 @@ void Gyro::Callback(const gazebo::msgs::ConstStringPtr& msg) { double Gyro::GetAngle() { if (radians) { - return link->GetWorldCoGPose().rot.GetAsEuler()[axis]; + return link->WorldCoGPose().Rot().Euler()[axis]; } else { - return link->GetWorldCoGPose().rot.GetAsEuler()[axis] * (180.0 / M_PI); + return link->WorldCoGPose().Rot().Euler()[axis] * (180.0 / M_PI); } } double Gyro::GetVelocity() { if (radians) { - return link->GetRelativeAngularVel()[axis]; + return link->RelativeAngularVel()[axis]; } else { - return link->GetRelativeAngularVel()[axis] * (180.0 / M_PI); + return link->RelativeAngularVel()[axis] * (180.0 / M_PI); } } diff --git a/simulation/frc_gazebo_plugins/src/limit_switch/cpp/internal_limit_switch.cpp b/simulation/frc_gazebo_plugins/src/limit_switch/cpp/internal_limit_switch.cpp index 4c8f1b9976..adfd860371 100644 --- a/simulation/frc_gazebo_plugins/src/limit_switch/cpp/internal_limit_switch.cpp +++ b/simulation/frc_gazebo_plugins/src/limit_switch/cpp/internal_limit_switch.cpp @@ -28,11 +28,10 @@ InternalLimitSwitch::InternalLimitSwitch(gazebo::physics::ModelPtr model, bool InternalLimitSwitch::Get() { double value; - joint->GetAngle(0).Normalize(); if (radians) { - value = joint->GetAngle(0).Radian(); + value = joint->Position(0); } else { - value = joint->GetAngle(0).Degree(); + value = joint->Position(0) * (180.0 / M_PI); } return value >= min && value <= max; } diff --git a/simulation/frc_gazebo_plugins/src/limit_switch/cpp/limit_switch.cpp b/simulation/frc_gazebo_plugins/src/limit_switch/cpp/limit_switch.cpp index 23c1a38f07..34b7ae3d81 100644 --- a/simulation/frc_gazebo_plugins/src/limit_switch/cpp/limit_switch.cpp +++ b/simulation/frc_gazebo_plugins/src/limit_switch/cpp/limit_switch.cpp @@ -35,7 +35,7 @@ void LimitSwitch::Load(gazebo::physics::ModelPtr model, sdf::ElementPtr sdf) { // Connect to Gazebo transport for messaging std::string scoped_name = - model->GetWorld()->GetName() + "::" + model->GetScopedName(); + model->GetWorld()->Name() + "::" + model->GetScopedName(); boost::replace_all(scoped_name, "::", "/"); node = gazebo::transport::NodePtr(new gazebo::transport::Node()); node->Init(scoped_name); diff --git a/simulation/frc_gazebo_plugins/src/pneumatic_piston/cpp/pneumatic_piston.cpp b/simulation/frc_gazebo_plugins/src/pneumatic_piston/cpp/pneumatic_piston.cpp index 7a59a87f41..f0e4c7ea34 100644 --- a/simulation/frc_gazebo_plugins/src/pneumatic_piston/cpp/pneumatic_piston.cpp +++ b/simulation/frc_gazebo_plugins/src/pneumatic_piston/cpp/pneumatic_piston.cpp @@ -56,7 +56,7 @@ void PneumaticPiston::Load(gazebo::physics::ModelPtr model, // Connect to Gazebo transport for messaging std::string scoped_name = - model->GetWorld()->GetName() + "::" + model->GetScopedName(); + model->GetWorld()->Name() + "::" + model->GetScopedName(); boost::replace_all(scoped_name, "::", "/"); node = gazebo::transport::NodePtr(new gazebo::transport::Node()); node->Init(scoped_name); diff --git a/simulation/frc_gazebo_plugins/src/potentiometer/cpp/potentiometer.cpp b/simulation/frc_gazebo_plugins/src/potentiometer/cpp/potentiometer.cpp index 3f77e45773..140afd1d05 100644 --- a/simulation/frc_gazebo_plugins/src/potentiometer/cpp/potentiometer.cpp +++ b/simulation/frc_gazebo_plugins/src/potentiometer/cpp/potentiometer.cpp @@ -46,7 +46,7 @@ void Potentiometer::Load(gazebo::physics::ModelPtr model, sdf::ElementPtr sdf) { // Connect to Gazebo transport for messaging std::string scoped_name = - model->GetWorld()->GetName() + "::" + model->GetScopedName(); + model->GetWorld()->Name() + "::" + model->GetScopedName(); boost::replace_all(scoped_name, "::", "/"); node = gazebo::transport::NodePtr(new gazebo::transport::Node()); node->Init(scoped_name); @@ -59,12 +59,11 @@ void Potentiometer::Load(gazebo::physics::ModelPtr model, sdf::ElementPtr sdf) { } void Potentiometer::Update(const gazebo::common::UpdateInfo& info) { - joint->GetAngle(0).Normalize(); gazebo::msgs::Float64 msg; if (radians) { - msg.set_data(joint->GetAngle(0).Radian() * multiplier); + msg.set_data(joint->Position(0) * multiplier); } else { - msg.set_data(joint->GetAngle(0).Degree() * multiplier); + msg.set_data(joint->Position(0) * (180.0 / M_PI) * multiplier); } pub->Publish(msg); } diff --git a/simulation/frc_gazebo_plugins/src/rangefinder/cpp/rangefinder.cpp b/simulation/frc_gazebo_plugins/src/rangefinder/cpp/rangefinder.cpp index 3a1bf61e83..a01f10feb7 100644 --- a/simulation/frc_gazebo_plugins/src/rangefinder/cpp/rangefinder.cpp +++ b/simulation/frc_gazebo_plugins/src/rangefinder/cpp/rangefinder.cpp @@ -37,7 +37,7 @@ void Rangefinder::Load(gazebo::physics::ModelPtr model, sdf::ElementPtr sdf) { // Connect to Gazebo transport for messaging std::string scoped_name = - model->GetWorld()->GetName() + "::" + model->GetScopedName(); + model->GetWorld()->Name() + "::" + model->GetScopedName(); boost::replace_all(scoped_name, "::", "/"); node = gazebo::transport::NodePtr(new gazebo::transport::Node()); node->Init(scoped_name); diff --git a/simulation/frc_gazebo_plugins/src/servo/cpp/servo.cpp b/simulation/frc_gazebo_plugins/src/servo/cpp/servo.cpp index e0a7e1e62e..ca9d361509 100644 --- a/simulation/frc_gazebo_plugins/src/servo/cpp/servo.cpp +++ b/simulation/frc_gazebo_plugins/src/servo/cpp/servo.cpp @@ -42,7 +42,7 @@ void Servo::Load(gazebo::physics::ModelPtr model, sdf::ElementPtr sdf) { // Connect to Gazebo transport for messaging std::string scoped_name = - model->GetWorld()->GetName() + "::" + model->GetScopedName(); + model->GetWorld()->Name() + "::" + model->GetScopedName(); boost::replace_all(scoped_name, "::", "/"); node = gazebo::transport::NodePtr(new gazebo::transport::Node()); node->Init(scoped_name); @@ -57,9 +57,9 @@ void Servo::Load(gazebo::physics::ModelPtr model, sdf::ElementPtr sdf) { void Servo::Update(const gazebo::common::UpdateInfo& info) { // torque is in kg*cm // joint->SetAngle(0,signal*180); - if (joint->GetAngle(0) < signal) { + if (joint->Position(0) < signal) { joint->SetForce(0, torque); - } else if (joint->GetAngle(0) > signal) { + } else if (joint->Position(0) > signal) { joint->SetForce(0, torque); } joint->SetForce(0, 0);