ROS2 client library for Julialang

Hi

As a robotics engineer, I’m working with ROS2. From an (software) engineering and research perspective, I’m quite interested in Julia however with the lack of a ROS2 client library for Julia, it’s for me currently a bit difficult to start using Julia. Does anybody know, if someone plans or is working on a Julia client library for ROS2?

Sorry for cross-posting. The post withing Simulation can be deleted.

2 Likes

I just came across this repository. Seems not too out of date but not sure about it’s current state.

Have you tried speak with maintainer of RobotOS ?

Not yet. But I guess I can open an issue on GitHub and ask.

We used LCM (an older alternative to some of ROS’s message-passing tools) with Julia when I was in grad school. Since there weren’t any LCM Julia bindings, we started by just using the Python bindings via PyCall.jl. That worked really well, but eventually we wanted better performance so we created native Julia bindings to the C interface. The Python interface ended up being extremely simple to write: PyLCM.jl/PyLCM.jl at master · rdeits/PyLCM.jl · GitHub and it worked well enough to get us started, and then the C interface grew up into GitHub - JuliaRobotics/LCMCore.jl: Low-level Julia bindings for the LCM communications library.

I was pretty happy with that process, and you might find a similar process works well for you: start by wrapping the functions you need in Python via PyCall.jl, then decide if you need a fancier solution.

I’m in the same boat here. Could you perhaps give advice on how you got started with julia and with ros2? and anything to avoid or anything to take advantage get of? Robotics does not seem to be big in julia so far, so its hard to find right starting points.

The only information I’m able to provide is the link to the corresponding thread on the ros discourse but you are probably already aware of thsi.

I am new here. Could you please guide me the steps to use Julia for ROS2? I have gone through https://github.com/nstiurca/Rcl.jl but I am not sure what to do with it. Thank you for your help.

I am new here. Could you please guide me the steps to use Julia for ROS2? I have gone through https://github.com/nstiurca/Rcl.jl. However, I do not know how to use that github repository. I mean where to place it and how to run ROS2 nodes. I appreciate any kind help. Thank you.

I used ros.jl quite successfully a few years back. This was not ros2 though. I was using Julia in a “real-time” context but ZMQ.jl is so easy to use (and fast) that I was able to receive and send signals very quickly, which allowed me to drive RigidBodyDynamics.jl models dynamically. Wouldn’t it be nice if ROS3 was entirely in Julia? :face_holding_back_tears:

[Edit:] Forgot to mention Caeser.jl. Did someone mention that Julia isn’t big on robotics? :slight_smile: