Hello,
We have a Navigator flight controller in our ROV. We placed it slightly angled inside the tube but adjusted for that by changing the Ardupilot parameters (CUST_ROT). All motions correctly displayed on the leveling horizon, but roll was inversed. We were wondering if this was normal and wouldn’t effect auto leveling. If it isn’t normal, what can we do to fix it?
Hi @Felipe, welcome to the forum
Are you saying the displayed roll is inverted, or the roll actions of your thrusters are inverted?
Did you calibrate the accelerometer after setting up your custom rotations?
A properly calibrated and configured vehicle should show the roll as zero when it is placed on a level surface. If that’s not the case then you either haven’t run a relevant calibration, or have specified an incorrect orientation for your flight controller board.
If the motors are generating thrust in an incorrect direction for certain motion axes then they are either connected to incorrect ESCs, connected in a reversed orientation to an ESC (which can be corrected for in the autopilot parameters, by reversing the relevant output channel), or have incorrectly assigned thrust factors in the motion axis contribution matrix for your selected frame.
We have a similar issue. No thrusters attached at the moment. We have the platform on a bench with the Navigator installed in the default orientation (arrow facing the front of the vehicle with the pi “hat” facing up) per the Navigator info web page.
We are just trying to confirm correct sensor feedback at the moment.
The yaw and pitch report ok in the Cockpit display in Blue OS, but the roll goes the opposite way. The compass points in the correct orientation and the GPS places us in the correct location, but when we roll the platform to the left / counter-clockwise (navigator to the left/counter-clockwise looking down the center line of the vehicle from the rear forward) the level indicator in Cockpit rolls right (clockwise). When we do the opposite, the level rolls left. We have run the compass, gyro, and accelerometer calibrations and they appear to have passed. We are running 4.5.3 stable Ardupilot (Ardusub build).
Do you have any suggestions on how to diagnose?
The AHRS_ORIENTATION parameter in None and all the CUST_ROT1 / CUST_RO2 parameters are at 0 degrees.
Maybe this is my misunderstanding of the level indicator. I found on an Ardupilot.org forum post that the level (HUD) indicator is relative to the platform. Is this correct? So if I am understanding this correctly, rotate your head in the same way you roll the vehicle and watch the what happens on the horizon (compared with what is shown in the HUD) to confirm the roll reported is correct?
Hi @bfraz -
The default orientation of the system does not have the “pi “hat” facing up” - it should be facing to the right side of the vehicle (starboard) !! This should have been clear from the assembly guide- can you share what “Navigator info web page” you’re referring to led you to believe otherwise?
Your AHRS parameters also don’t seem correct - Roll90 is stock for the BlueROV2. Loading the default parameters on the vehicle setup page should get things setup correctly for you!
As for the HUD indicator - yes, if you roll your head towards your right shoulder, the right side of the horizon on the gauge would get higher, and the left would drop. Does that clear things up?
I didn’t say I had a Blue ROV. I have a custom platform and was following this information: https://bluerobotics.com/learn/navigator-hardware-setup/
Specifically the section titled mounting.
Hi @bfraz -
My mistake for assuming!
Those parameters are likely correct - if my explanation of how the horizon moves relative to vehicle motion makes sense and fits your results, then things seem to be working nominally!
Yes, I think I get the HUD convention now (counter intuitive to me at least)
To clarify/confirm, a Heads Up Display (HUD) is intended to indicate where the horizon is when viewed from inside the vehicle - like a pilot looking out through the windscreen of their plane. That makes it well-suited to being an overlay on a video stream that is aligned with the vehicle’s attitude (i.e. from a camera attached to the vehicle), especially for operators using a first-person view (FPV) headset:
That said, if you have a camera with roll control/stabilisation (or just no camera) then it would perhaps make more sense to have an attitude indicator like you’re viewing the vehicle as a separate entity from above/behind, imagining yourself as an external observer in the environment, instead of in the vehicle (like third-person control in video games). I raised an Issue to that effect a while ago, but we haven’t yet managed to prioritise it.
If you can think of another way we could implement an attitude indicator that would be more intuitive to you, please feel free to share it (and/or add to the discussion in the Issue I linked to, or contribute it directly via a Pull Request). Perhaps it would help to include an optional vehicle-rear indicator as part of an attitude indicator, like in this “Western horizon” gauge example
In the last link, I personally like the Russian version because I think it indicates better what the attitude of the vehicle is doing.
Ok, good to know, thanks
For an indicator gauge the different approaches are “where am I going?” (the horizon is maintained to the view outside) vs “what am I doing?” (the horizon is fixed and a vehicle moves on the gauge), which are simply a matter of familiarity/preference, so it makes a lot of sense to support both. I’ve raised an Issue to add that as an option.
NOTE: I’m unsure whether you were initially referring to Cockpit’s HUD instrument or the navball gauge (with the blue and brown circle). There is apparently a known problem with the navball rotation at the moment, although that is around the angle lines not tracking the pitch (and possibly yaw), rather than being a problem with the roll.
For a video overlay HUD instrument I don’t think it makes sense to rotate the roll lines with the vehicle, or it would very obviously depart from the visible horizon in the video feed, which is needlessly confusing. That said, as mentioned it could still be helpful to include an optional indicator of the rear of the vehicle, which rolls with the vehicle as the horizon indicator rotates inversely to maintain the display.