How to set nano-seconds as stamp parameter in go_to services? #300
Replies: 6 comments
-
the CRTP radio protocol uses a floating-point duration value: as do all the further onboard processing steps, so there are no more conversions. 0.5 seconds is a pretty fast duration. Unless you are moving a very short distance, it might require faster acceleration than the Crazyflie is capable of producing. |
Beta Was this translation helpful? Give feedback.
-
Hi James, Thanks for your quick response. I've checked duration value during the calls. It looks fine, converted into correct float value. And it may also depend on the payload. In my case, cf carries more payload, markers for mocap. With lighter payload, it can flies with duration:0.5 as expected. So now. If I wanna control cf in higher frequency, I shouldn't use go_to, which tries hover-move-hover in short period. I should use cmd_vel directly, or upload/start trajectory...? Anyway, thanks again for your great input. :) |
Beta Was this translation helpful? Give feedback.
-
Like you said, Both of the alternatives you mentioned could work. What is the high-level goal? Can you describe how you want the crazyflies to move over a longer time period? |
Beta Was this translation helpful? Give feedback.
-
We're working on kind of swarm controller. We control each vehicle based on others' states, pose, velocity, acceleration, etc. By the way, I'm trying cmd_position, which may be easier than cmd_vel. :) |
Beta Was this translation helpful? Give feedback.
-
Yes, I would try You might also switch your controller from |
Beta Was this translation helpful? Give feedback.
-
Thanks for your advice. |
Beta Was this translation helpful? Give feedback.
Uh oh!
There was an error while loading. Please reload this page.
-
Hi,
I'm using crazyswarm with optitrack system. And I control crazyfiles via ros services like takeoff, go_to, land.
When I call go_to service with only 'nsecs' in 'duration', cf flips down.
ex) duration: secs: 0 nsecs: 500000000
It works fine when I call them with 'secs'.
ex) duration: secs: 1 nsecs: 0
How should I set float seconds, like 0.5 sec, as duration?
Beta Was this translation helpful? Give feedback.
All reactions