File tree Expand file tree Collapse file tree 3 files changed +11
-1
lines changed Expand file tree Collapse file tree 3 files changed +11
-1
lines changed Original file line number Diff line number Diff line change @@ -8,3 +8,4 @@ glider_node:
88 declination : 11.82
99 origin_easting : 482933.2819920078
1010 origin_northing : 4421345.135559781
11+ gps_init_count : 10
Original file line number Diff line number Diff line change @@ -73,6 +73,8 @@ class GliderNode : public rclcpp::Node
7373 double declination_;
7474 double origin_easting_;
7575 double origin_northing_;
76+ int gps_counter_;
77+ int gps_init_count_;
7678
7779 // tracker
7880 Glider::State current_state_;
Original file line number Diff line number Diff line change @@ -19,6 +19,7 @@ GliderNode::GliderNode(const rclcpp::NodeOptions& options) : rclcpp::Node("glide
1919 declare_parameter (" origin_easting" , 0.0 );
2020 declare_parameter (" origin_northing" , 0.0 );
2121 declare_parameter (" viz" , false );
22+ declare_parameter (" gps_init_count" , 10 );
2223
2324 // Get parameters
2425 double freq = this ->get_parameter (" rate" ).as_double ();
@@ -45,6 +46,9 @@ GliderNode::GliderNode(const rclcpp::NodeOptions& options) : rclcpp::Node("glide
4546 origin_easting_ = this ->get_parameter (" origin_easting" ).as_double ();
4647 origin_northing_ = this ->get_parameter (" origin_northing" ).as_double ();
4748
49+ gps_init_count_ = this ->get_parameter (" gps_init_count" ).as_int ();
50+ gps_counter_ = 0 ;
51+
4852 glider_ = std::make_unique<Glider::Glider>(path);
4953
5054 imu_group_ = this ->create_callback_group (rclcpp::CallbackGroupType::MutuallyExclusive);
@@ -175,7 +179,10 @@ void GliderNode::gpsCallback(const sensor_msgs::msg::NavSatFix::ConstSharedPtr m
175179 glider_->addGPS (timestamp, gps);
176180
177181 current_state_ = glider_->optimize ();
178- if (!initialized_) initialized_ = true ;
182+ if (gps_counter_++ > gps_init_count_)
183+ {
184+ if (!initialized_) initialized_ = true ;
185+ }
179186}
180187
181188void GliderNode::odomCallback (const nav_msgs::msg::Odometry::ConstSharedPtr msg)
You can’t perform that action at this time.
0 commit comments