-
Notifications
You must be signed in to change notification settings - Fork 205
Using Optitrack instead of Vicon #17
Comments
Hi, I am personally not familiar with the mocap_optitrack package. I think most other people used VRPN (http://wiki.ros.org/vrpn_client_ros). However, in that case you need to flip the axis: The crazyflie driver assumes ROS standards, which is different from what Optitrack sends out. Please read issue #15 for some more details on that. Best, |
HI Wolfgang, Thank you for the rapid response.
In my case I have 2 topics the publish different data which one is the correct one if any? /crazyflie/pose /tf
Don't know ack: Port: 15 Channel: 3 Len: 1 thanks |
|
Thank you Wolfgang that helped and solved the problem I was having. However, now I noticed that the controller is not doing anything. The rostopic /crazyflie/cmd_vel is always 0 and the crazyflie does not anything. Do you have any possible insight to why this could be? Sorry that I have no more info to describe the problem besides its not working |
Are you giving it the take-off command using a joystick (or calling the service manually on the command line)? Once it gets the command the motors should at least ramp up - only afterwards the controller is actually becoming active. |
Yeah my joystick was not configured properly. Thanks for the help |
Hi whoenig I'm trying to hover the crazyflie. I've modified hover_vicon.launch like what rshum19 did, since I'm using optitrack as well.
|
|
@rshum19 Could you please elaborate on how you configured the joystick ? |
You can test your joystick by looking at the "/joy" topic. You'll always need to do additional operations on another terminal - the roslaunch terminal won't allow additional user-input unless you shut down ROS. |
Hi @whoenig I am using optitrack and I think I have configured everything, which could be shown both in the output of position and visualization in Rviz. But the issue is that when I execute the take off command in another terminal, the CF just flying around and have no idea where the position I gave. By the way, I found that the cmd_val topic, there is linear velocity in x,y which drove the CF to fly away from the target. I am quite confused at this consequence. What might be wrong here? Thanks in advance. |
It sounds to me like your coordinate system does not match ROS standards. If there would be no transformation at all, the CF would not even take off. Please verify your coordinate system, as OptiTrack uses a different one. It is also important that the rotation is correct. |
Right now the problem is that the in the Rviz and the rostopic, the outputs all seem right to me. So how can I test if the coordinate is right? According to Motive and the Moreover, if I can confirm that the rostopic optitrack have published the right position and orientation, how can I broadcast the transformations? This question has always confused me since I am really a beginner in ROS. |
Hi, @whoenig ,
|
This doesn't seem to be related to crazyflie_ros. It looks like your "mocap_node" is getting a segfault. You should reach out for help from the maintainer of mocap_node. |
But I can set up one rigid body ,using the same mocap system, without questions.Only when I set up the second one ,is there something wrong.So I think it seems not the question of the mocap_node.Do you have another ideas?Thanks in advance. |
I have seen people talk about the OptiTrack protocol changing, and nodes crashing when more than one rigid body is used. Hopefully that's enough for you to google on? |
really? Thank you .but I use the old version,I can find the answers on the google,thank you! |
Hi, @whoenig |
The default gains for the controller should work. Monitor your position estimate as visualized in RVIZ. If there are communication issues there should be warnings. In general, if you are able to fly using joystick teleoperation, the communication should be "good enough" for the autonomous mode as well. |
hello, |
Please ask basic questions about ROS on answers.ros.org |
Hi, |
Hi, |
Hi ,@whoenig |
@miaoyanan
|
Hello, @whoenig |
Make sure your OptiTrack tracking matches the ROS coordinate system. You can find more details in our book chapter "Flying Multiple UAVs Using ROS", preprint available at http://usc-actlab.github.io/publications.html. |
Hello, @whoenig @rshum19 @byronxubin |
There is some more documentation here for setup and usage: http://crazyswarm.readthedocs.io/en/latest/. Research using the Crazyflie platform is listed here: https://www.bitcraze.io/research/ |
@whoenig |
Frame should match the object name in OptiTrack Motive. Otherwise I suggest trying vrpn_client_ros independently of crazyflie_ros and if it doesn't work seek out help for that package or from OptiTrack. |
Hi,@whoenig |
the first number in the uri is the radio number. So just plug in two radios, and use |
@whoenig
|
@whoenig |
I am using your ros package to control the Crazyflie 2.0.I have a question: |
1.) I am not sure what you mean by "shock". There are certainly aerodynamic effects between CFs. |
@whoenig |
You might need to adjust the PID gains (https://github.com/whoenig/crazyflie_ros/blob/master/crazyflie_controller/config/crazyflie2.yaml). |
Hi,@whoenig |
@miaoyanan Please open a new issue. This issue has been closed. In the new issue, add some more details about your setup, i.e. which launch file are you using? What does "I can get the data" mean (which data etc.)? How do you know that you "can't communicate" in that case? |
Hi
first of all great work, thank you for sharing!
I'm trying to get hovering working with an Optitrack Mocap system instead of a Vicon system. However, I'm new to ROS so I'm having some trouble.
I'm trying to run the hovering example you have.
I modified hover_vicon.launch file as follow
include file="$(find vicon_bridge)/launch/vicon.launch"
for
include file="$(find mocap_optitrack)/launch/mocap.launch"
to launch the optitrack system instead of the vicon system. I'm using the "Mocap_Optitrack" package to retrieve the CF position. (http://wiki.ros.org/mocap_optitrack). This seems to work fine.
I think the issue is providing the correct node to hover_vicon.launch. The optitrack package can publish poses of configured rigid bodies as tf transforms, poses, and/or 2D poses.
However, I don't know if this are compatible with your controller code or that needs to be modified too. Can you give me some pointers?
In the RViz window under display I'm getting a status: Error under RobotModel:
no transform from [crazyflie/base_link] to [world]
Thnak you
The text was updated successfully, but these errors were encountered: