Master thesis subject to help ROS

Hey,

I will be starting my Master thesis next month, and having a lot of possible topics. I really would love to know what is it that the ROS needs the most, as an OS for robots. That I could work on as master thesis, knowing that my masters will be in AI and Robotics.
I would love any suggestions and all help is appreciated.

3 Likes

Iā€™m in a similar position iā€™m starting a Masters project to create an autonomous drone to map out buildings using slam. As Iā€™m just starting the technology review now iā€™m finding that this project has been done at loads of institutions before and I can run the simulations in Gazebo very easiliy. What aspect of ROS did you decide to work on for your masters project?? Are you working on something that has already been done before??

Cheers
Pilk

1 Like

I am also a masters student doing work on creating things for ROS. I am working on the UI side of things. Seems like that is an area that is really lacking, especially web based systems. Does anyone else agree with this observation?

Yes, I would love a web-based RViz, rqt and other such tools fi. Not sure how suitable something like that is for a MSc (or if I even understood you correctly), but it would be very welcome (possibly connect with web-based gazebo, rwt, roslibjs, etc, etc).

1 Like

I was thinking more about thing developed to be used for your masterā€™s work. That what most of my stuff is. I am creating an autonomous agriculture rover. Most of my work is configuration and testing of already built tools. This has lead me to create new tools to reduce the complexity of developing rovers.

I just started this system a few weeks ago. It needs a lot more work but it is a start.

We have integrated rviz, rqt and the other graphical tools on the web. A video demo here.

You can use them, together with simulations, to develop ROS code, test and else here: sw.theconstructsim.com

Is that a ā€˜terminal serviceā€™ / ICA like web client? Iā€™ve used those myself, what are your experiences with touch screen devices with that?

Itā€™s a nice start, but an actual (HTML5, canvas, webgl, etc) implementation would be even nicer :slight_smile:

Thanks for your responses.

When I initially thought about choosing to create a robot for my masters project I was quite enthusiastic about creating my own visualization software until I saw what was already out there and it sort of blew the winds from my sails. Thanks for pointing this out for me, im quite eager to learn about web sockets and webgl and creating a web-based interface for ROS sounds appealing to me.

However, Iā€™ve only got three months to work on a self contained project. What kind of features would you like to see in a web client? You mentioned touch screen compatibilityā€¦

@sonyccd Iā€™ve checked out your work, looks like a good start to something and its given me some ideas gl :smiley:

Feel free to fork it. I will be update the readme with more details on what all I want to do. Been busy with some ekf problems on my robot.

1 Like

Hi,

I have been working for quite some time on a REST interface for ROS systems (based on python) : https://github.com/asmodehn/rostful.
Very useful for introspection into running multiprocess systems and debugging. Better client code for visualisation would sure be a big help, but I am currently focusing on a more critical part : getting the web server interfacing with ROS rightā€¦

Since a big part lacking in ROS is documentation/support/tutorials for developing reactive systems, I have been thinking of investigating using http://elm-lang.org/ in a web cient to offer a graphical view of a running ROS systems. I didnt get around doing it yetā€¦ If it s something that interests you, it can be quite self contained I thinkā€¦ And I think it would be an interesting experience for the people interested in web system development for ROS. There also, the tricky part will probably be interfacing with ROS.

You could remake the usual ROS turtle simulation tutorial, but web based, just for fun :slight_smile: Or remake some QT tools, or of course just pick you own ideaā€¦ Feel free to ping me if you want more info about any of these.

1 Like

The most significant problems (aka opportunities) off the top of my mind are:

  1. The common GUI tools are decent but they could be better. For example, after loading files with the Moveit Setup Assistant, you canā€™t reload a new set of files. You have to close the program and begin again.

  2. Aligning components in a URDF is incredibly tedious. The ROS-I CAD-TO-ROS project started to address this issue, but it has pretty much stalled. It would be great to have some Solidworks-type ā€œmatingā€ functionality. Huge opportunity here.

  3. How to easily and accurately locate a camera in a tf frame? (Maybe thereā€™s a package to help with that. I will do some more searching.)

1 Like

Thanks again for the responses, since there is a group of us working on an autonomous building mapping robot I have decided to work on a custom web-based front-end for supervising it (from inspiration from you guys).

@asmodehn I will check out your work at some point iā€™m heavy into report writing at the moment, it would be interesting to develop a graphical view into the ROS system as it is running in browser and l see how far i get with that.

I think all of you who want to contribute some of your masters effort to ROS are great!

On the web dev side, certainly look at: https://github.com/RobotWebTools

And this too (https://github.com/pantor/ros-control-center):

1 Like

The problem I have with ros-control-center is a lack of UI UX purpose. How can this be used for robotics operation? How can the user see the status of important topics at one time? How can you manage users and multiple robots? What about data collections and logging? Is there security in the connection? How does this scale for deployment? etc. It does a great job demonstrating the possibilities of roslibjs. I used it to learn how the library works.

I agree, its a tool for inspecting but it looks like a tool for configuring your router, not exactly user friendly. Have you tried the RMS (Robot Management System) yet?? what do you think about that?

Yes. I am using their library (roslibjs) to communicate with ROS.

Glad to say that one of the chapters in my upcoming book is about ROS Web applications.

I think this book will be a guide for doing ROS based Robotics Projects

ROS Robotics Projects

Let me know if you want any contributing content to your book!