[Video] Alternative Kinect Control (using depth images)
-
- Beginner
- Posts: 3
- Joined: Thu May 15, 2014 10:03 am
Re: [Video] Alternative Kinect Control (using depth images)
Hi everyone,
I followed Patrik's tips for setting up the crazyflie using ROS and kinect. However I wasn't able to execute rosmake. It gives the following error:
rosmake crazyflieROS
[ rosmake ] rosmake starting...
[ rosmake ] Packages requested are: ['crazyflieROS']
[ rosmake ] Logging to directory /home/prannoy/.ros/rosmake/rosmake_output-20140521-141104
[ rosmake ] Expanded args ['crazyflieROS'] to:
[]
[ rosmake ] WARNING: The following args could not be parsed as stacks or packages: ['crazyflieROS']
[ rosmake ] ERROR: No arguments could be parsed into valid package or stack names.
I'm new to ROS. Could you please help?
Also I think I'm not doing the rosmake part correctly. Could you post specific instructions as to how to do that part, as in which folder to be , etc.?
Prannoy
I followed Patrik's tips for setting up the crazyflie using ROS and kinect. However I wasn't able to execute rosmake. It gives the following error:
rosmake crazyflieROS
[ rosmake ] rosmake starting...
[ rosmake ] Packages requested are: ['crazyflieROS']
[ rosmake ] Logging to directory /home/prannoy/.ros/rosmake/rosmake_output-20140521-141104
[ rosmake ] Expanded args ['crazyflieROS'] to:
[]
[ rosmake ] WARNING: The following args could not be parsed as stacks or packages: ['crazyflieROS']
[ rosmake ] ERROR: No arguments could be parsed into valid package or stack names.
I'm new to ROS. Could you please help?
Also I think I'm not doing the rosmake part correctly. Could you post specific instructions as to how to do that part, as in which folder to be , etc.?
Prannoy
-
- Member
- Posts: 45
- Joined: Mon Jan 13, 2014 4:12 am
Re: [Video] Alternative Kinect Control (using depth images)
Hi!crazyflie007 wrote:Hi everyone,
I followed Patrik's tips for setting up the crazyflie using ROS and kinect. However I wasn't able to execute rosmake. It gives the following error:
rosmake crazyflieROS
[ rosmake ] rosmake starting...
[ rosmake ] Packages requested are: ['crazyflieROS']
[ rosmake ] Logging to directory /home/prannoy/.ros/rosmake/rosmake_output-20140521-141104
[ rosmake ] Expanded args ['crazyflieROS'] to:
[]
[ rosmake ] WARNING: The following args could not be parsed as stacks or packages: ['crazyflieROS']
[ rosmake ] ERROR: No arguments could be parsed into valid package or stack names.
I'm new to ROS. Could you please help?
Also I think I'm not doing the rosmake part correctly. Could you post specific instructions as to how to do that part, as in which folder to be , etc.?
Prannoy
Well, I'm not that used to using rosmake (mostly I've been working more in catkin,) but it seems like the folder crazyflieROS is not in you ROS_PATH_PACKAGE or something like that. If you haven't set up the workspace for ROS, take a look at the tutorial in ROS website. Else, try
Code: Select all
echo $ROS_PACKAGE_PATH
-
- Expert
- Posts: 162
- Joined: Thu Jun 06, 2013 9:56 pm
- Location: Munich
Re: [Video] Alternative Kinect Control (using depth images)
Yup, I agree with Veerachart!
I should probably catkinize everything - rosbuild was left over from the good old days
)
I should probably catkinize everything - rosbuild was left over from the good old days

-
- Expert
- Posts: 162
- Joined: Thu Jun 06, 2013 9:56 pm
- Location: Munich
Re: [Video] Alternative Kinect Control (using depth images)
Hi all,
finally got my kinect out again.
The ps3joy drivers some of you might be using could be wonky, mine were. Was only getting updates around 10 hz. Fix
I updated the README (screenshots too) and the code to reflect the changes. Note that some of the axes changed, so if you dont follow the update above you might need to play around with Buttons and Axes. Easiest way to debug: Uncomment this block, press the buttons/move the axes on your joystick, see which number they were mapped to and replace the Button and Axes mapping here.
I just ran everything and it worked perfectly the first time
Even with a flie that needs +15° trim for pitch 
Let me know if there are any problems.
finally got my kinect out again.
The ps3joy drivers some of you might be using could be wonky, mine were. Was only getting updates around 10 hz. Fix
I updated the README (screenshots too) and the code to reflect the changes. Note that some of the axes changed, so if you dont follow the update above you might need to play around with Buttons and Axes. Easiest way to debug: Uncomment this block, press the buttons/move the axes on your joystick, see which number they were mapped to and replace the Button and Axes mapping here.
I just ran everything and it worked perfectly the first time


Let me know if there are any problems.
Re: [Video] Alternative Kinect Control (using depth images)
Wow, thanks for the thorough update of the read me
We'll try it out after our exams. We will also post our report on our project 


Re: [Video] Alternative Kinect Control (using depth images)
Hi!
Tried it out today, worked way better and things get published on cfjoy
But the control doesn't work yet. We've noticed that your tracking works a lot faster in your video and your goal and cf_xyz had the same orientation. Ours is rotated 180 degrees in the xy-plane in respect to each other. Also we've updated the code but don't get the utilization option under log.
Patrik
Tried it out today, worked way better and things get published on cfjoy

Patrik
-
- Expert
- Posts: 162
- Joined: Thu Jun 06, 2013 9:56 pm
- Location: Munich
Re: [Video] Alternative Kinect Control (using depth images)
Glad things are working out 
/goal and /cf_xyz are independent. It doesnt matter how they are. Goal is where we want the flie to be, so we can rotate it to achieve yaw (assuming tracking & PID work
)
To get utilization you need to update the crazyflie firmware (see the top of the readme) and log it (from the log tab, eg @ 10hz).
What do you mean the control doesnt work? Cant help unless I know more
Make sure the yaw is aligned correctly (see the readme picture).
Good luck

/goal and /cf_xyz are independent. It doesnt matter how they are. Goal is where we want the flie to be, so we can rotate it to achieve yaw (assuming tracking & PID work

To get utilization you need to update the crazyflie firmware (see the top of the readme) and log it (from the log tab, eg @ 10hz).
What do you mean the control doesnt work? Cant help unless I know more

Good luck

-
- Member
- Posts: 45
- Joined: Mon Jan 13, 2014 4:12 am
Re: [Video] Alternative Kinect Control (using depth images)
I think I've found the cause that made the flie went away at full thrust.
(I haven't updated the code to the current version, but that should not be the problem
From this line (not sure if it is the same or not, as I got from the joyManager branch), the PID controller is reset each time the automatic mode button is pressed (previously not in hover, but now entering hover mode.) However, my fake joy publisher just publish like the automatic mode button is always pressed, and therefore the PID controller is never reset. The time also keeps counting and therefore causes the integral part grows large.
I'll try changing my publisher.
(I haven't updated the code to the current version, but that should not be the problem
From this line (not sure if it is the same or not, as I got from the joyManager branch), the PID controller is reset each time the automatic mode button is pressed (previously not in hover, but now entering hover mode.) However, my fake joy publisher just publish like the automatic mode button is always pressed, and therefore the PID controller is never reset. The time also keeps counting and therefore causes the integral part grows large.
I'll try changing my publisher.
Re: [Video] Alternative Kinect Control (using depth images)
I followed the link in the readme Oliver, it directs me to the 2014.01.0 version of the firmware, which we already have installed. Should we install one of the other branches instead?
The problem with the automatic control is that the control program doesn't guide the flie towards the goal but rather some arbitrary direction. And the tracking is severely lagging behind compared to the tracking in your video.
Patrik
The problem with the automatic control is that the control program doesn't guide the flie towards the goal but rather some arbitrary direction. And the tracking is severely lagging behind compared to the tracking in your video.
Patrik
-
- Expert
- Posts: 162
- Joined: Thu Jun 06, 2013 9:56 pm
- Location: Munich
Re: [Video] Alternative Kinect Control (using depth images)
Makes senseVeerachart wrote:I think I've found the cause that made the flie went away at full thrust.
(I haven't updated the code to the current version, but that should not be the problem
From this line (not sure if it is the same or not, as I got from the joyManager branch), the PID controller is reset each time the automatic mode button is pressed (previously not in hover, but now entering hover mode.) However, my fake joy publisher just publish like the automatic mode button is always pressed, and therefore the PID controller is never reset. The time also keeps counting and therefore causes the integral part grows large.
I'll try changing my publisher.

So right now I updated/merged all branches, from now on just use master.Patrik wrote:I followed the link in the readme Oliver, it directs me to the 2014.01.0 version of the firmware, which we already have installed. Should we install one of the other branches instead?
The problem with the automatic control is that the control program doesn't guide the flie towards the goal but rather some arbitrary direction. And the tracking is severely lagging behind compared to the tracking in your video.
Patrik
Youre absolutely right, I had the wrong firmware link the readme. This shouldnt cause any problems, some features might be lost though.
Please use my fork. Ive updated the readme, sorry about that. Too much coding at 5am...

To be honest, I never tested the performance of the tracking code. I guess writing in C++ might give speeds up. I didnt really write it with performance in mind; it is not doing anything that complicated. I just use the depth images and not the point cloud, so either the code needs optimising, porting to c, or something fishy is going on

Arbitrary direction..doesnt sound good. Are you sure you correctly aligned the flie yaw and the kinect? Not sure what else could be going on - it works perfectly here :/