Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

info about the simiam #10

Open
andre-rangel opened this issue Mar 13, 2014 · 13 comments
Open

info about the simiam #10

andre-rangel opened this issue Mar 13, 2014 · 13 comments
Assignees
Labels

Comments

@andre-rangel
Copy link

Hello there, I would like to more about the project and it's current status. Are there some plan to follow? Can we contribute? Why so many branches?

Thanks!

@jdelacroix
Copy link
Owner

Hello! You can read more about the project here: http://gritslab.gatech.edu/home/2013/10/sim-i-am. This mobile robot simulator is currently used for the programming assignments in the Coursera course, Control of Mobile Robots (https://www.coursera.org/course/conrob). Most of the branches are related to the course and the new robot, the QuickBot (http://o-botics.org/robots/quickbot/mooc/v1/). The course is ending soon, so I am preparing to merge the changes from the coursera-* branches into the master branch soon. Afterwards, I will think about what features to add to the simulator next (higher fidelity physics and an upgrade to 3D are probably on top of my list).

This project is most definitely open for you and anybody else to contribute! Thank you for your questions and interest in the project!

@andre-rangel
Copy link
Author

Great! I found this repository because I did the course and specially liked the simulator. Please, don't forget to post the new plans for the software. Upgrade to 3d would be awsome, make a platform to draw different obstacles, a record button to save the run in video and show in the course or send to friends. Anyway, would be great! Count me in.

@jdelacroix
Copy link
Owner

Those are great ideas! I think it would be useful to have a level editor for adding robots and obstacles to the environment graphically (rather than through the XML). Also, sharing recordings would have been an amazing features to have during the course.

Thanks!

@andre-rangel
Copy link
Author

To improve the software, we may integrate the different parts of the simiam instead of typing in the matlab prompt to call other interfaces, as the level editor. This is an idea. Maybe we can make a especial version of the application for the course, with a submit button.
simiam_flowchart

@jdelacroix
Copy link
Owner

I agree that the simulator (application) should be launched with a single command, and all of its functionality can be accessed from the start (rather than relying on launch, submit, edit, or other scripts). What do you think about integrating the level editor and simulator, so that a user can edit the world dynamically even if the simulation is already running?

Another idea (if simulator and level editor are integrated): a user has a real robot and is using it to map the world. The sensor data is plotted in the simulator, and the user can then add a virtual version of the obstacle based on the sensor data.

@andre-rangel
Copy link
Author

I like it! I think more iteraction should be attractive to people. The user will choose the environment or make a new one, add obstacles, mark the goal if necessary and add robots. A good customized environment for simulation. A lot of work to do!

@andre-rangel
Copy link
Author

I made drawings with pencil with some suggestions for the main window of the simulator integrated with the level editor.
simiamtela1bw

(1) menu : Open, new, close, save, choose, Robots, exit;
Help: Manual, FQA;
About: web Site, about this version.
(2) Tabs .
(3) tools.
(4) hide tools.
(5) squares.
(6) circles.
(7) triangles.
(8) line.
(9) curve.
(10) change cursor (hand cursor<-> arrow cursor).
(11) Robots.
(12) play.
(13) record.
(14) time.
(15) screen.
(16) space for mensages.

@andre-rangel
Copy link
Author

tabs can help to edit several levels with one open window.

@jdelacroix
Copy link
Owner

Nice design! I like that it is clean, and the toolbox/toolsidebar is a great idea, especially if it can be hidden away easily.

I had always envisioned the simulator UI to be a crossover between a maps and a music app. For example, https://raw.githubusercontent.com/gnome-design-team/gnome-mockups/master/music/music-album-playback.png and https://wiki.gnome.org/Design/Apps/Maps?action=AttachFile&do=get&target=main-view.png.

The map interface is natural, because it is a robot driving through an environment (which like a map, has obstacles and spaces to drive), while the simulation controls are similar to music controls (stop, pause, record, rewind, forward, etc.) A combination of the two with the above toolbar would be fantastic, I think. (Perhaps, I'll sit down this week and make a mockup too!)

On a more technical note, the simulator is using this package for the UI: http://www.mathworks.com/matlabcentral/fileexchange/29472-gridlayout, which is a little inflexible and hasn't been update in a while. I'm considering this package instead: http://www.mathworks.com/matlabcentral/fileexchange/27758-gui-layout-toolbox, which should make it straightforward to implement your mockup, for example.

@andre-rangel
Copy link
Author

Thanks, I still don't know how much one can modify matlab ui, because my background is c++/Qt framework which gives you free control over every part of the ui or even make new widgets for interfaces. This last package seems to be really what we are looking for regarding layouts.

I liked the examples that you showed me. Before everything, I think we need a complete historyboard for the new simulator and every feature to have that clear in mind.

We can modify the environment when the user clicks in the record button, showing how much time it is been recording, for example, and a different environment for play the recording. We may need more packages for these features too.

@jdelacroix
Copy link
Owner

That sounds like the most logical way forward. Re: UIs in MATLAB, they're not as feature rich and flexible as Qt, and often require poking at the Java objects underneath. For example, all images in the current UI are embedded via HTML in a MATLAB button. These buttons by default have borders, which you can only remove/turn off by accessing the internal Java object corresponding to that button.

Here's a list of widgets that are available: http://www.mathworks.com/help/matlab/component-selection.html

@jdelacroix jdelacroix self-assigned this Mar 26, 2014
@andre-rangel
Copy link
Author

simiamtela1
simiamtela2
simiamtela3
simiamtela4
simiamtela5
simiamtela6
simiamtela7
simiamtela8
simiamtela9
simiamtela10
simiamtela11
simiamtela12

@Dadwi
Copy link

Dadwi commented May 9, 2016

Good morning , Is it now possible to add and to modify the environment architecture ? If yes how should I proceed .Furthermore can I add robots and change their behaviour .In which file should I do that ? Thank you

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests

3 participants