Filtering analog input signals / automatic marine trim tabs steering

Hello techguys,

I am now planing and searching for a couple of weeks for a good solution how to automatic control the two marine trimtabs (left and right in back) to correct the angel in the water of my running boat.

To do so I have to filter out some inpot from the BNO055 gyro I planned to use for this project. The tabs are driven by an small electrical hydraulic pump with two cross valves. One for each tab up/down.

The thing is that wrong inputs like from waves and if the boat shel make a turn shell not have any affect to the trim tabs. For the pump I thought to use the monster motor shield from Adafruit. Abut position feedback I am not sure yet what to use. There exist a position feedback sensor but this is just for the electrical cylinder version.

I am new beginner to Arduino programming so this is the first "bigger project" for me.

The following thoughts I have about this:

  • use a potentiometer to be able to correct how sensitive the steering shell react. (waves for example or some ballast in the boat) y axis

  • when the boat is planning over the water and the main correction is done through the tabs by the arduino there should be some finetuning to find the highest speed in the water. As input may some gps speed information (nmea200).

  • when the boat is cranking due to higher speed and single prop it shell adjust the angel of the tabs as well ( x axis)

  • to avoid reaction while driving a turn I thought about to use a delay and a maximum angel before the arduino shell react. For example if the boat is cranking more than 5 degrees within 2 seconds than do nothing. Here could another potentiometer as well make sance to finetune the moment when the program shell take action.

I found a code example which calculates the average of an analog input signal. This I thought to use to "remove the waves"

I could not find any automated version for trimtabs done with arduino.

Is there anybody who have done this already?

I am thanksfull for every help and ideas how to begin.

autopilotNOR:
I found a code example which calculates the average of an analog input signal. This I thought to use to "remove the waves"

I could not find any automated version for trimtabs done with arduino.

Is there anybody who have done this already?

Are you looking for a complete solution? How likely would it be that someone has exactly the same hardware as yourself? Have you googled for it?

If you want someone to program it for you, there is a gigs and collaborations forum where you can ask for that. If you want to make this yourself, you will have to apply yourself to the learning curve. I think that finding ready made code to solve your problem is a significant head start. If you're asking how to integrate it with your code, you should make an attempt and post it here. Then you can get help in troubleshooting or improving it. Otherwise the problem is too vague and non-specific to get programming suggestions.

You mentioned a lot of angels. You are quite blessed to have so many assisting you. I wish I had some helping me with my current project... however I don't recommend correcting an angel, they are usually right about stuff.

I could not find any automated version for trimtabs done with arduino.

I am not surprised. This is quite a niche product.

Using an Arduino for something that affects the operation of an expensive and dangerous piece of equipment makes me very nervous. Before you start considering anything else, consider safety feasability: What's the worst that could happen?

What would happen if the trims are pulled all the way up or down while the boat is running? What if one is brought all the way up and the other all the way down? What happens if the motor is held running when the hydraulic ram reaches the endstop? What would happen if they just stop working?

You need to consider every possible situation and failure mode and determine what the risk is of damaging the trims, the boat, or yourself. Then if you think it's safe, prepare to do a lot of planning. You can't just slap this together, control algorithms are not simple to design.

aarg:
Are you looking for a complete solution? How likely would it be that someone has exactly the same hardware as yourself? Have you googled for it?

If you want someone to program it for you, there is a gigs and collaborations forum where you can ask for that. If you want to make this yourself, you will have to apply yourself to the learning curve. I think that finding ready made code to solve your problem is a significant head start. If you're asking how to integrate it with your code, you should make an attempt and post it here. Then you can get help in troubleshooting or improving it. Otherwise the problem is too vague and non-specific to get programming suggestions.

You mentioned a lot of angels. You are quite blessed to have so many assisting you. I wish I had some helping me with my current project... however I don't recommend correcting an angel, they are usually right about stuff.

I wrote the following: "I am thanksfull for every help and ideas how to begin."

Therte exist already automated solution from Bennet and other companies doing the same. This devices cost about 1000 €. Thats why I want to do it my self. My boat is not so expensive or even why it is expensive and I am not rich I want to diy.

What about all the autopilots existing out there? I have seen some really cool stuff which I currently as well rebuild. With that one the boat is going a course completly by its own. I think thats more dangerous than the tabs special here in Norway where the water is dangerous to drive.

I have seen here a lot of people just saying all the time " Oh that is real to dangerous ". Help to make it secure and professional. Isn't that open source about?

autopilotNOR:
I wrote the following: "I am thanksfull for every help and ideas how to begin."

You haven't answered any of the three important questions I asked you. It's a very complicated project so any generic answers would be a gloss that would not be very useful to you. Generally, you have to divide the projects into bite sized parts, like "controlling servos that drive the fin x" and "collecting and interpreting GPS and gyro information" and "PID control". Then you stitch them together.

aarg:
You haven't answered any of the three important questions I asked you. It's a very complicated project so any generic answers would be a gloss that would not be very useful to you. Generally, you have to divide the projects into bite sized parts, like "controlling servos that drive the fin x" and "collecting and interpreting GPS and gyro information" and "PID control". Then you stitch them together.

Hi Aarg,

to answer your questions.

As I was working with PLC industrial steerings a couple of years I think can do this myself and of course I googled it for a couple of weeks now. There are several attemps but they gave up due to filtering the signals. Most of them just didn´t where serious thinking it would be easy.

Since there is a difference programming a PLC and a microcontroller plus I am new in programming the Arduino I need some start help. Thats the point.
And yes, I followed a course to start with. As example from toptechguy.com. Very interesting project they have done and also working with NMEA200 protocol for GPS comminucation.

I know there are a lot of poeple interessted in this as well and would engage if somebody would start and I thought this could I be.

The hardware doesn´t matter really. In my case it is a hydraulic system, in other cases is used two linear motors pushing the tabs down.