BeagleBone Blue Ardurover 4.1

Good day everybody

I have limited knowledge of Linux and robotics

I have a BeagleBone Blue with Ardupilot, Ardurover 4.1 compiled on it using the procedure as described here Configuring Beagle Bone Blue as Flight Controller Unit - Building drones around Beagle Bone Blue

I am building an Autonomous Rover with skid steer that will be navigated by a low cost precise navigation device to 8 precisely surveyed and post processed points. The rover is equipped with a Raspberry Pi 3 fitted with a camera. The camera is down looking and the lens centre is aligned with the center of the GPS antenna. The down looking camera will record the track of the Rover, this video will be synchronised to a video recording of the whole operation. The Rover will also pause at each point and record a couple of images. The purpose of this is to determine the accuracy of navigation by measuring the distance from the photo center to the pin center as captured.

Everything went smoothly and Ardupilot compiled successfully and everything worked being able to test the 6V DC motors and encoders using Robot Control Library command rc_test _motors –s 0.5 however Ardupilot does not seem to support these ports or dc motors with quadrature encoders. I then decided to use the PWM rail for the motors. It turns out that the inclusion of the overlay “sudo sed -i ‘s|#uboot_overlay_pru=/lib/firmware/AM335X-PRU-UIO-00A0.dtbo|uboot_overlay_pru=/lib/firmware/AM335X-PRU-UIO-00A0.dtbo|g’ /boot/uEnv.txt” to the /boot/uEnv.txt file prevents the PRU and RPROC drivers to be loaded preventing you from using the PWM rail

Disabling the overlay in the /boot/uEnv.txt file loads the drivers but bring problems of its own

The navigation device only has a USB port and worked perfectly connected to ttyACM0 before disabling the overlay

But after disabling the overlay the GPS is no longer seen by Mission Planner

I then purchased a LN298 Dual H-Bridge to drive 2 brushed 12V DC Motors to be controlled by the PWM rail.

The motors were setup as per Ardupilot instructions for skid steer.

https://ardupilot.org/rover/docs/rover-motor-and-servo-configuration.html?highlight=skid%20steer

When I run rc_test_servos –p 1 the motors both rotate in the same direction. I cannot test the motors in Mission Planner

Mission planner connected via USB to 192.168.7.2. All the calibrations were done sensor wise, accelerometers, compass etc.

I also have a Spektrum SR315 reciever installed on the UART for DSM. I also connected the RC receiver signal to connector E4 pin 4 of the BeagleBone Blue

In both cases rc_test_dsm and rc_calibrate_dsm failed

There is no frame type for a skid steer Rover. This does not allow you to configure a 2 motor skid steer system

I also purchased an APM Battery monitor, wired it as per instructions but could not configure such to work with mission planner

I will greatly appreciate any assistance in getting the problems I am experiencing resolved

Thanking you in advance

Hello and Welcome

Starting with a BeagleBone is a steep learning curve to get a robot moving… I know, I did the same :slight_smile:

The Blue has many interesting features but the motor control is not implemented and the wheel encoder is conflicting with ArduPilot usage of the internal PRU as we use one for RCin and the other for PWM out.

L298 H Bridges are not the preferred choice for Motor Control on ArduRover, many are using SaberTooth or other, please refer to WIKI or search within forum.

Good Luck

Thank you

It is an uphill struggle especially with the availability of components in South Africa.

Sincerely

Anton