Need help setting PID using pixhawk

I have a kontiki boat which is used to take a long line out to sea. I have fitted two thrusters for steering which I want to gps control with the pixhawk.
I have set up two motors and pixhawk on a board for testing and have managed to get it to manually skid steer.
One of the problems in setting up the PID is that the kontiki boat has a drive motor which pulls the boat foward at about 1000 metres in 15 minutes, approx. 60mtr. per min.
I am not sure how to go about this, I just want the boat to go in a straight line to a way point at about 2000mtrs out at sea. The boat has a timer fitted which can be set to switch all power to motors and control gear at a predetermined time.
e.g. 15 minutes. The boat has the long line still attached and is hauled back after a time.

Any help would be greatly appreciated.

Why don’t you just use a mission on mission planner? 1 M/S will work fine. And then have the boat RTL after a period of time.

http://ardupilot.org/rover/docs/common-mission-planning.html

Not sure I understand but it has a main drive motor and 2 thrusters for steering? I see what the Kontiki is now but just to confirm what the thrusters are for. Normally it just tows the cable straight out and you want to steer it? If so this sounds a bit like a multirotor with a boost motor. Rover has the same Servo Function (81 Boost throttle) but I’m not sure if it would do what you want. Interesting though…

But Rover doesn’t have the MOT_BOOST_SCALE parameter. Hmm.

You could set the main motor to Function 70 (throttle) I think it is. And the other thrusters to 73 and 74.

The main drive motor has one speed only, flat out.
I want to steer the boat streight to a way point, it needs to combat the tidal drift which can cause the boat to go off course by a long way.
I have the thrusters setup to 73 and 74, I don’t know about function 70.
David I don’t know what 1 M/S means would you explain please.

1 M/S means a cruise speed of 1 meter per second. Function 70 is the main motor being controlled by the throttle or throttle controller if running a mission. Can you put a ESC on the main motor? Maybe you are better of using rudders and Ackerman Steering?

I can’t put an ESC on the main motor.

I have been wondering if I could ignore the main motor and setup for the thrusters as being the drive motors with a cruise speed of 1mtr per sec.?

It would depend on how heavy the boat is and what amount of thrust they produce. Maybe worth a try but I don’t have enough information to really speculate.

My main worry is setting the PID for the boat to go stright without too much zigzaging. I need basic settings before I put the boat in the water… can you suggest some settings to try.

Post a .bin log in auto or at least a parameter list. I don’t have enough information to give any advice on. What are you worried about. you can bring the boat home easily whether it is ugly or not.

my experience up till now has been with a rover truck and I had a lot of trouble to get it to drive straight and its still not very good.
These settings seems so complicated when you are not confident you are doing the right thing or not.
See screen dump of current PID settings, is there anything you would change before you ran a test?

You are definitely going to want to tune those numbers

Would Randy Mackay be reading this? He has a video of a mapping boat with two thrusters which is about the same size as mine, see link


maybe I could use his settings to start with.
1 Like

http://ardupilot.org/rover/docs/rover-first-drive.html

I have set up two motors and pixhawk on a board for testing and one of the first problems I see is, when I switch to auto, the motors run at about full speed.
This is not what i want. I dont want the motors to run unless I go off course, then the left or right motor will run untill the boat is back on course. Is this possible?
Is there a way I can run the thrusters like a rudder?

If you have it configured for typical skid steer with Throttle Left and Right outputs it would do that. To do what you want they need steering signals only. What happens if you configure both servo outputs for Ground Steering? Maybe you will have to play around with the direction and trim, not sure. It may balk w/o a Throttle output configure so assign that to another output which won’t be used anyway.

That may work. I think you would need one output reversed or use counter rotating props. However if the main motor was controlled by a speed controller I can’t think of any reason why throttle plus differential would not work provided the cruise speed and other stuff was set properly

I have counter rotating props. I will look into throttle plus differential and ground steer and see what I can achieve.

What about this then.
What if I fit a servo connected to pin 1 that turns a potentiometer with the two outer lugs connected to the 2 esc’s and the centre lug connected to the positive. Or use dual pots.
Just a thought, maybe there’s a product that will do this.

If the main motor was controlled you could make it work like a Rover with 4 wheel steer (kind of). With that arrangement you drive 2 steering servos both controlled with Ground Steering outputs and of course the drive motor.

But as I understand it the main Motor is on or off right and not controllable right?

Not following the servo/pot idea. I don’t suppose adding a servo rudder is do-able? That would seem to solve the proble easily.

1 Like