Ask Your Question
1

Is ROS able to support C# language?

asked Jun 25 '11

sam gravatar image sam
871 3 21 51

Hi, I want to use c# to build robot interface. I found c# is very convenient,because both windows and linux can run the same c# program. c# can use mono to run. So if c# can also be included in ROS, it will be very great~

delete close flag offensive retag edit

3 Answers

Sort by » oldest newest most voted
3

answered Jun 26 '11

Martin Günther gravatar image Martin Günther flag of Germany
2928 17 39 63
http://www.inf.uos.de/mgu...

C# is not supported yet; if you must use C#, your only option would be to re-implement the basic network protocols in C#, but that will be a lot of work.

If you are just looking for a way to build a platform-independent robot interface, you could have a look at rosjava.

link delete flag offensive edit

Comments

It's not really necessary to re-implement it. You could also use a foreign language interface and wrap it around roscpp as the old jni based rosjava did it. Of course, that wouldn't run on windows then :) Lorenz (Jun 26 '11)edit
Is anyone who want to implement c# interface? Because I found that many useful libraries like aforge which has a lot of high level of tech like machine learning,neural network,fuzzy,genetic algorithms...etc. sam (Aug 10 '11)edit
3

answered Jun 26 '11

dornhege gravatar image dornhege
7708 8 69 148
http://gki.informatik.uni...

updated Jun 26 '11

You can basically run ROS with any language supporting networking. So, yes, ROS is able to support C#. BUT there needs to be an implementation and as far as I know there is no C# one.

If you are only looking for platform independence python is supported very well in ROS. Full ROS usability in Windows is somewhat limited, though, as you will want all ROS features.

link delete flag offensive edit

Comments

What should I do when I want to init C# program to a ros node (not by rosjava)? sam (Aug 10 '11)edit
You will need to have a client library: "http://www.ros.org/wiki/Implementing Client Libraries" dornhege (Aug 10 '11)edit
2

answered Jun 27 '11

JeffRousseau gravatar image JeffRousseau
1141 15 21 34
http://jeffrousseau.info/

updated Jun 27 '11

You can attempt to convert the rosjava.jar into a CLR lib using IKVM--haven't tried it but it may work. It basically convert JVM byte code into CLR IL. Once you have the DLL you just load it like you normally would in Visual Studio/MonoDevelop.

link delete flag offensive edit

Comments

If I can make the DLL file of rosjava,is there any tutorials or documents of how to implement C# program as a ROS node? sam (Aug 10 '11)edit

Your answer

Please start posting your answer anonymously - your answer will be saved within the current session and published after you log in or create a new account. Please try to give a substantial answer, for discussions, please use comments and please do remember to vote (after you log in)!
[hide preview]

Question tools

Follow
1 follower

subscribe to rss feed

Stats

Asked: Jun 25 '11

Seen: 378 times

Last updated: Jun 27 '11