Sending external position to crazyflie using ZMQ

Discussions related to positioning systems where the position is calculated outside the Crazyflie and sent to the device using radio, including MoCap systems
Post Reply
alberto
Beginner
Posts: 2
Joined: Wed Sep 05, 2018 9:08 am

Sending external position to crazyflie using ZMQ

Post by alberto » Wed Sep 05, 2018 9:21 am

Hello all,

We are trying to make a crazyflie perform autonomously. We are relaying in the flow deck and loco positioning. So far the loco positioning is giving us a hard time, therefore we are supplementing it in certain situations. Particularly, we setup a camera system based on openCV just for landing and taking off. We are able to send position updates to the crazyflie using cf.loc.send_extpos([x, y, z]) from the python library. However, we would like to use the desktop client for monitoring. I have been looking in the docs and in the forums for a way to do the same through ZMQ but I have not found it. I've seen how to access the log, set control points, etc, but not something equivalent to the previous python function. Honestly, I do not know much about ZMQ besides the first steps.
Is what I want to do possible in the current implementation of the client?

alberto
Beginner
Posts: 2
Joined: Wed Sep 05, 2018 9:08 am

Re: Sending external position to crazyflie using ZMQ

Post by alberto » Mon Sep 10, 2018 8:10 am

Just as a reference to anybody interested, what I ended up doing was adding a class ZMQExtPos in utils. This class listen in a new port. This class is also in charge of updating the position of the drone using cflib.
I believe doing it this way keeps the code compartmentalized. As I have not dive deep into the code, does this sound like a reasonable way of doing this without breaking something else?

Post Reply