Wiki | Community | Discussion Forum | Q&A

Betatesters for new drone ros pkgs required

Hello everyone,

We are releasing a new version of drone_wrapper and rqt_drone_teleop, both packages needed in the drone exercises. With this upgrade we are adding new functionalities and fixing some bugs. Hope you all enjoy it.

However, we are having some troubles catching a couple of bugs. It will be great if any of you try them and share your experience. This post is aimed at those who already have the infrastructure installed and operational and who want to help out with the tests.

Please send me a message or respond to this post if you are interested.

Thanks in advance.
Pedro.

Hi, how can I do a git pull only of this exercise? I would like to try my code with an autonomous cat.

Hi @dhervas,

Thanks for your answer. To try it you will need two main things.

First, you have to git pull the Academy (copy your solution before if you don’t want to lose it). The new version of the exercise comes with two launch files. The first one drone_cat_mouse.launch launch the exercise as it did before. However, now you will only see one teleoperation window, the cat one. To launch the autonomous mouse you have to run the second launch file, autonomous_mouse.launch, in a new terminal. The following example shows how it works:

 roslaunch autonomous_mouse.launch mouse:=0

Notice that you have four different mice to try (from o to 3) your solution. The difficulty increases with the number of mice. Also, you don’t have to shut down the whole exercise to change between mice, just shut down the mouse itself.

Secondly, to run the autonomous mouse, you will need to test the new version of the drone_wrapper package. This is not as simple as it looks. The official ROS package has not been released yet (it will be released soon), so for the moment you have to git clone the package, copy it to your catkin_ws\src and do a catkin rebuild. This execution sequence shows the process:

cd ~/catkin_ws/src
git clone https://github.com/JdeRobot/drones.git
cd ..
catkin clean
catkin build

After that, you will have installed the new drone_wrapper package and you will be ready to try it with the drone_cat exercise.

Write me if you have any problem during installation or if you have any question about it.
Pedro.

Hi @pariasp ,
I’ve been testing the new drone cat mouse version. It works fine for me, I haven’t experienced any problem. Here is a visual example of my code (I’ve tested every difficulty but this one is the number 3) https://www.youtube.com/watch?v=ag_OK0Iaw6o&feature=youtu.be, what do you think about it?

Daniel.

Hi @dhervas,

It looks nice! Congratulations :grin:

As you already know, we are trying to catch some bug. It will be great if you can help us with the following one: Disable takeoff till autopilot is ready.
The problem is that during the launching process if you try to takeoff before GPS fusion (at the very beginning) the drone never takes off and keeps arming and disarming cyclically (you can read more information about it at the Github issue). However, this bug is not showing up to all of our developers. Does it show up to you?

Feel free to ask any question if you have any and join the Github discussion.
Pedro.

Hi @pariasp,
After doing the catkin_build, is there anything that we should edit in our .bashrc? Because when I try to run the enviroment with the new version, it gets frozen and I can see the following in the terminal:

process[mouse/mouse_wrapper-2]: started with pid [7963]
^C[mouse/mouse_wrapper-2] killing on exit
Traceback (most recent call last):
  File "/home/klego/Academy/exercises/drone_cat_mouse/autonomous_mouse.py", line 21, in <module>
    drone = DroneWrapper()
  File "/home/klego/catkin_ws/src/drones/drone_wrapper/src/drone_wrapper/drone_wrapper_class.py", line 307, in __init__
    rospy.wait_for_service('mavros/cmd/arming')
  File "/opt/ros/melodic/lib/python2.7/dist-packages/rospy/impl/tcpros_service.py", line 166, in wait_for_service
    raise ROSInterruptException("rospy shutdown")

Thank you very much for your help,

Klego.

Hi @Klego,

Thank you for joining in! The environment variables are the same as the previous version. If you had the previous version running well, you shouldn’t need to add anything in your .bashrc.

Did you update your Academy (git pull)? Remember to launch the exercise environment (drone_cat_mouse.launch) before the autonomous mice (autonomous_mouse.launch).

Cheers,
Pedro.

Hi @pariasp,
As you said, the problem was I did not launch drone_cat_mouse.launch before autonomous_mouse.launch.
Now, I have another question if you wouldn’t mind. How I can see the errors in the execution of my code?
I’m asking this because a don’t see any error from the python interpreter in neither of the two terminals and when I click Play Code, the cat drone doesn’t move at all. :pensive:

Thank you for your help again,

Klego.

Update: I know now that the errors appears in drone_cat_mouse.launch terminal. :slight_smile:

Hi @Klego,

Don’t worry, ask me anything! As you already know, execution errors should appear on the drone_cat_mouse.launch terminal. Sometimes it doesn’t show up at the bottom and you have to scroll up a little bit looking for it.

As you already have the new version operational too, could you check my previous post where I was asking Daniel to try to catch some bugs?

Thanks,
Pedro

I was having the same problem, and I just have to wait until I see this in terminal to make sure the drone take off:
SelecciĂłn_037

So, if I understood correctly, you have pushed the TakeOff button immediately after the launching and the drone, after a few seconds (where the EKF GPS fusion takes place), takes off? That’s it right?

Pedro

I have pushed the TakeOff button after a I saw the WP: Mission received. If you push it before, your dron never takeoff.

Ok, bad news… :sweat_smile:

Thanks anyway. One last thing, could comment on this issue explaining this? It is the official site where we are discussing the bugs and errors. Just explain what happens when you push the TakeOff button and anything related to this bug. I could do it for you, but it will be great if you join the Github discussion.

Thanks,
Pedro.

Done it. I hope you can solve it, but at least we know a workaround of the problem. =)

1 Like