In auto missions while flying straight line copter maintain speed perfect but when circling speed goes down even in large radius >50m. While in manual flights it turns perfectly fine. Is there something i am missing ? Any way of changing vertical speed between waypoints ?
There is turn rate (circle_rate parameter) in loiter turns that is based off degrees/sec. So based on what you set it to, your speed may change.
I think this is the wrong way to do this since the user has to manually change both the parameter if they increase the radius and they should have gone with a speed rather than deg/sec for loiter turns.
I disagree. I believe degrees per second is a good choice. It lets you determine how long the circle will take. 360 divided by CIRCLE_RATE tells you how many seconds it will take to complete one circle. I think this is generally a more important point that the actual ground speed.
That said, it can certainly get you into trouble is you’re not careful. If the circle radius is large, you can easily end up making it try to complete the circle faster than the aircraft is capable of performing. Altitude would decay. But this is part of mission planning. It’s not just clicking the mouse and hitting go. You need to consider these things and do some math no matter how it’s configured.
Thanks for input guys. Still there must be something else missing. When circling in ideal no wind conditions copter will pitch towards circle center and roll to right for ccw and left for cw. Those max angles are already set and respected in aided flights modes while in loiter turns are not. That way it can be made click and go without worring about different speeds for different radius and transition from straight line to circle could be smoother.