Rover in GUIDE mode

If you get map, just use a global planner to feed ardurover with wp in local coordinate, or a local planner with cmd_vel. You don’t need laser to use ros nav stack, it is use if you want to avoid obstacles.

if I run
rostopic pub /mavros/cmd_vel_unstamped geometry_msgs/Twist -r 10 – ‘[0.5,0.0,0.0]’ ‘[0.0, 0.0, 0.0]’ with my boat in GUIDE mode, it will move forward at 0.5 m/sec, right?
So, I will need to tune Speed control (http://ardupilot.org/rover/docs/rover-tuning-throttle-and-speed.html) right?
The same for
rostopic pub /mavros/cmd_vel_unstamped geometry_msgs/Twist -r 10 – ‘[0.0,0.0,0.0]’ ‘[0.0, 0.0, 0.785]’ it will make my boat turn at 45°/sec and it will need that I previosly tune APM for steering (http://ardupilot.org/rover/docs/rover-tuning-steering-rate.html) right?
So, those 2 controller are enabled in GUIDE mode. Am I right?

Thank!

BTW the correct sintax for the topic published is:

rostopic pub -r 10 /mavros/setpoint_velocity/cmd_vel_unstamped geometry_msgs/Twist ‘{linear: {x: 0.1, y: 0.0, z: 0.0}, angular: {x: 0.0,y: 0.0,z: 0.0}}’

This works on my boat.

1 Like

I’ll have to leave the ROS question for @khancyr to answer but for the speed tuning question I think the answer is “yes”, you’ll need to tune it using the web link you’ve provided. Tuning the speed controller is relatively easy, the most important part is getting a good cruise-speed and cruise-throttle value and that can be done easily using a ch7 option as mentioned on the wiki.

Hey Leonardo ,

I’ll get back to you on this soon. I’ll speak to one of our software engineers who is currently working on this. I’m currently travelling

Auto mode is working ok now in my boat (Success tunning for Auto mode)
So I have now a long way working with my boat with ROS.

Auto mode gives me the chance to make several experiments, but the final goal of my reserch needs the ASV to be controlled with ROS. So I will be using this post to share experiences on Boats and ROS.

1 Like

Do I need to start mavros before power up pixhawk?
I found that launching MAVRos after pixhawk boots, then mavros don’t start. is it ok or it just happened to me?

Thank

It shouldn’t matter…
what error did you get ?

it does not show any error, but it seems to hang waiting for FC.
The last INFO I get is MAVROS started. MY ID 1.240, TARGET ID 1.1

I wait for a minute or so, if I reboot pixhawk, in that moment, then mavros continue starting.

As a side note, I wonder if someone could raise a PR with mavros to get the external position plugin removed from the blacklist (or added to the whitelist?)? The PR to add support to ardupilot should go into master tomorrow.

Ok, mavros is working ok now.

Does anyone knows a ROS package that takes google maps waypoint (lat lon) and current position and send commands (cmd_vel) to the rover to navigate? supposing that there is no obstacles between Rover and WP?

Thank!

the PR to add support for the external position mavlink messages has gone into master now. It will probably take a few hours for the autobuilder to complete building it and then the latest firmware can be loaded using the mission planner’s install firmware screen’s magic Ctrl-Q feature. You should see the version name under the vehicle icons change to xxx-dev.

If anybody could give this a test that would be really great. We’ve tested it in the simulator but not with ROS.

Modification on Mavros submitted !

1 Like

can you explain a little more this feature?
I think I could test it this week (I’m planning some experiments on the stearn this weekend).

Thanks @khancyr.

I forgot to mention that this change has only been made to the EKF2 for now. EKF3 will come in the near future.

@Leonardo,
This makes it easier for external systems (like ROS) to send in external position estimates and have the EKF consume them. Good for non-GPS environments.

Hi Leonardo,

I currently use this to send commands to ardurover via mavros

rostopic pub -r 10 /mavros/setpoint_velocity/cmd_vel geometry_msgs/TwistStamped ‘{stamp: now, frame_id: fcu}’ ‘[[0.5, 0, 0], [0, 0, 0.00001]]’

The above command tells the rover to move straight

excellent, that is working right on my side too.

Now I have to go to ROS site to get some answers there.
I will keep informed about my progress.

Thank!

1 Like

Hi @khancyr and @rmackay9,
I am trying out a boat for a competition. I am familiar with ArduSub a bit by using BlueROV. I have been trying to learn a bit on Mavros and ROS in general and has followed tutorials on the ardupilot website.

The boat I am trying to Configure has the following specs:

  1. Pixhawk Controller running ArduRover with X-Frame Configuration(or ArduSub)
  2. 4 Thrusters from BlueRobotics
  3. GPS
  4. Realsense Camera (D435) to detect obstacles

I had previously tried motors using RC_Channel_override commands on ArduSub and I feel it should work on ArduRover as well. But after learning ROS, I have a few questions that I hope you should be able to answer. My questions can be foolish as I am starting out.

  1. In Guided Mode Navigation, can the boat resist water current and wind and reach a certain point? Is Stabilisation or position hold working in that mode?

  2. In the competition, I want to go to location based on Buoys, which I feel can be tagged by going around the circuit and noting the point of interest. If I do this, can the MAVROS setup give me the ability to navigate through waypoints?

  3. If I am using RC_channel_override and writing my own Stabilisation and Position hold algorithm, can I still use ROS features of Navigation because I am not using the command to send velocity.?

Hope to hear from you guys soon.

@naval_architect I am quite late to reply to this message but I can answer at least to point 3:
RC_channel_override can be used without being in GUIDED mode. Yes you can you use all the ROS navigation stack of course, if you write you own controler and then override RC channels with your own computed values.

1 Like

Hey Leonardo, how’s your project “cooperative control between a UAV and an ASV”?