Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

how to control the position of the propeller #21

Closed
octopusF opened this issue Jun 21, 2020 · 5 comments
Closed

how to control the position of the propeller #21

octopusF opened this issue Jun 21, 2020 · 5 comments
Assignees
Labels
type: question Further information is requested

Comments

@octopusF
Copy link

hi, I want to control the position of the Bebop's propeller, but I do not know how to do it. In the multirotor_base. urdf. xacro, I notice the plugin "librotors_gazebo_motor_model.so" , and I think it controls the velocity of the propeller , I want to know if the plugin "librotors_gazebo_motor_model.so" could control the position of the propeller? And how?
Thank you.

@welcome
Copy link

welcome bot commented Jun 21, 2020

Thanks for opening your first issue here! Make sure that no other issues on the same topic have already been opened!

@gsilano gsilano self-assigned this Jun 21, 2020
@gsilano
Copy link
Owner

gsilano commented Jun 21, 2020

What do you mean with "the position of the propeller"? If you want to change the geometry, i.e., the distance of the propellers in terms of x and y-coordinates, just change this line

<origin xyz="0.08440513 -0.09784210 ${rotor_offset_top}" rpy="0 0 0" />
<xacro:insert_block name="rotor_inertia" />

<origin xyz="0.08440513 0.09784210 ${rotor_offset_top}" rpy="0 0 0" />
<xacro:insert_block name="rotor_inertia" />

<origin xyz="-0.06853580 0.09784210 ${rotor_offset_top}" rpy="0 0 0" />
<xacro:insert_block name="rotor_inertia" />

<origin xyz="-0.06853580 -0.09784210 ${rotor_offset_top}" rpy="0 0 0" />
<xacro:insert_block name="rotor_inertia" />

@gsilano gsilano added the type: question Further information is requested label Jun 21, 2020
@octopusF
Copy link
Author

hi,@gsilano. I did not make myself clear. The velocity of the propeller can be controlled by sending commands in the terminal:
$ rostopic pub /gazebo/command/motor_speed mav_msgs/Actuators '{angular_velocities: [1000, 1000, 1000, 1000]}'
I sent the command
$ rostopic pub /gazebo/command/motor_speed mav_msgs/Actuators '{angles: [1, 1, 1, 1]}'
to control the angle of the propeller, but this does not work. So how to change the angle of the propeller.
Thank you.

@gsilano
Copy link
Owner

gsilano commented Jun 21, 2020

If you need to change it in real-time, during the simulation, as I understand, you would like to simulate a fully actuated platform as described in these papers.

Comparison of Control Methods for Trajectory Tracking in Fully Actuated Unmanned Aerial Vehicles
Full Pose Tracking for a Tilt-Arm Quadrotor UAV
Modeling and control of FAST-Hex: A fully-actuated by synchronized-tilting hexarotor

In this case, it is better to open an issue in RotorS, the repository used as the basis for BebopS.

Instead, if you need to change the rotors configuration before starting the simulation, simply change the rpy="0 0 0" of the part of the code mentioned before.

@octopusF
Copy link
Author

@gsilano thank you for your reply. I think I have got the answer.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
type: question Further information is requested
Projects
None yet
Development

No branches or pull requests

2 participants