Close loop control of motors


Hi, Our team decides to make the movement of the OpenROV closed loop. That’s when the ROV gets a given coordinate, it will move to the point by itself. I assume that PWM is needed to both motors to make it turn a certain angles which is relavant to the differences of the rotation rates of 2 propellers. However, I am now having troubles in knowing:
1 the matchup of the duty cycle and the rotation rates.
2 the matchup of the differences of the rotation rates and the angles that the Rov will turn.
BTW, in order to get the coordinate of the ROV itself, what kind of sensor and data will it need ? I assume
MPU,GPS, or other stuff ?
In the original code, I found something like that:

What’s the -1,0,1represent for ?
Thanks a lot.


Is there anyone who have looked into this field can give me some advice on it?


The controls use a float from -1.0 (full port yaw) to 1.0 (full starboard yaw).

The IMU in the store can give you the feedback for rotational closed loop control. The depth sensor gives you the feedback for vertical translation. Forward and Side translation is harder. You need something to give you x,y coordinates.

Good luck.


This will not be easy and I don’t know if you can just buy the hardware. It would make an interesting project.
You would need to do something like drop several (probably a minimum of 3) buoys with a sonar ping listener preferably outside the survey area. With a GPS on each buoy to tell it where it is you could triangulate pings from the ROV and since you know they were all sent at the same time you can tell where it is by when the ping arrives at each buoy. I would setup a differential GPS to ensure the buoys are locked to a single known (or a least assumed known) point.


Sorry I just realized this does not work for closed control, you would need to reverse the system and have the ROV listen to a modulated ping from each buoy and triangulate it’s position or have the master buoy send a ping with the location and time encoded in it.

Either way it would be a good project.



Have a look at what @Jim_Trezzo has been doing


Very nice thanks. I was forgetting about the tether as well. I am thinking about a fully autonomous ROV and how I might do Geo-location so this topic is great. The link has lots of good ideas on how one might do a ultrasonic modem