BBBMINI and ArduSub

Hi All,
It has taken about a month to get the baseline ArduSub software working with the BBBMINI. Much of the time was spent debugging the various updates to the software and coping with several changes to the ROV Thruster configuration layout.

Since this ROV is a six Thruster Vectored configuration, Horizontal Thruster #1 is located in the front right corner of the chassis, Horizontal Thruster #2 is located in the front left corner of the chassis, Horizontal Thruster #3 is located in the rear right corner of the chassis, Horizontal Thruster #4 is located in the rear left corner of the chassis, Vertical Thruster #5 is located in the middle of the right chassis side, and Vertical Thruster #6 is located in the middle of the left chassis side. All the Thruster locations are viewed from the top of the ROV chassis.

I am attaching a Thruster layout diagram below.

If you decide to duplicate my BR T100 BlueESC Thruster layout, please note the orientation of the Thrusters in relation to the centerline of the chassis. The “U” shaped protrusion with the two small holes in the top is the front of the Thruster.

Once the Thrusters were mounted in the chassis I used a servo tester to determine the PWM input to the Thrusters that would provide forward thrust and noted it on the Thruster ROV Chassis layout diagram. This came in handy when verifying the servo output PWM values of the BBBMINI for forward/reverse, yaw right/left, and strafe right/left joystick inputs from the Xbox 360 joysticks.
Rusty at BR has provided instructions to get the software up and running on your ROV and to use QGC to communicate with your favorite Navigation Controller which in my case is the BBBMINI. I am presently using UDP over my LAN to allow QGC to communicate with the BBBMINI for bench testing purposes. However I have communicated with the BBBMINI using BR’s Topside USB Interface to ROV-side serial Interface using BR’s Tether.

There are several ROV control functions that should be assigned to the various buttons on the gamepad. I assigned the Arm function to the Start button, the Disarm function to the Back button, the Stable Flight Mode to the B button, the Altitude Hold Flight Mode to the Y button, the Input Gain Increase to the A button, the Input Gain Decrease to the X button, the Trim Roll Right to the right Bump button and the Trim Roll Left to the left Bump button.

The Input Gain buttons can be used to raise or lower the servo output PWM range of each Thruster in 25% increments. I found that I had to increase the Input Gain to 100% to get QGC to be able to calibrate the R/C Radio Channels.

The Trim Roll Right/Left buttons can be used to raise or lower the Trim PWM input to the two Vertical Thrusters when there is no input from the Y axis of the right joystick on gamepad. I found that the input to the two Vertical Thrusters would drift down to ~1300us from a neutral of ~1500us with no input from the Y axis of the right joystick of the gamepad which is used for vertical ascend/descend control. Using the Trim Roll Right/Left buttons I was able to trim the PWM input to the Vertical Thrusters to around ~1500us with no input from the Y axis of the right joystick of the gamepad.

Once the BBBMINI sensors, the gamepad joysticks and the R/C Radio Channels were calibrated per the BR instructions, I verified, using the QGC MavLink Inspector and the Info Viewer, that the BBBMINI PWM servo outputs to each Thruster were correct for forward/reverse, yaw right/left, and strafe right/left joystick inputs from the Xbox 360 joysticks and that the Input Gain, Trim Roll Right/Left, and Flight Mode buttons performed as expected.

The next step will be to test the ROV in my Association’s swimming pool using a short Tether.
More to come.
Regards,
Tom C AVD

rov-thruster-layout_20160416 (186 KB)