Re: A robot simulator
Leopold Palomo Avellaneda <[email protected]>
| Newsgroups | gmane.science.robotics.orocos.user |
|---|---|
| Message-ID | <[email protected]> |
Hi,
> Some questions:
>
> - what is the basic design of the simulator?
in the document of the master thesis (pag 107) there's a diagram of the
architecture of the program. I have a main class that do the modelization of
the robot (kinematic direct and inverse) and mantain the state of the robot.
The state of the robot is update to the representation.
> what "servers" and "clients" do you have?
Well, I think that I don't have a strictly client server architecture, but I
could say that there's and part that manages the scene, that is done by Open
Inventor. Another part that manages the robot, that means, interact with the
robot with a sliders and bottons, a little parser to write instructions in
VAL-II and another part that manages the menus, dialogs, etc.
> can you interact in two directions with the simulator (i.e., not just
> visualize things, but also indicate things on the GUI and have them
> sent to the robot); ...
Not yet. I don't have colision detection. I hope that the SIM team (Coin)
develop a good test. There's a think that I think that will be needed.
>
> - from the manual, I seem to get the impression that Qilex allows to
> interactively build new kinematic chains?
Well, you need the D-H parameters (classical, not Craig) , some more
information (rank of joints of the robot, speed, etc) and a Inventor file of
the robot. After, you need to do some simple modification, ( in the Appendix
are explained) \footnote{I will translate it, ok} to the inventor file and
that's all.
> How complex can these be?
I have developed it to modelate a kinematic open chain with any degree of
freedom, but, by now I have tested only rotation joints, the program can fail
if you put some model with more than 24 joints, but this can be solved with 2
lines of code, nothing more. I'm not very glad of the kinematic inverse. We
are working to have any better algorithm. I have looked a bit your libraries,
and your method, but I need more information.
> How are they stored on disk?
good question. Any time that you create a cell a temporal file (uname.qlx) is
created, so you only need to copy this file as you wish and that all. I hope
that this summer I will complete this.
>
> - how does one attach an external program, such as a robot controller
> output, to the simulator?
By now it's not possible. However, I think that I will modify the arquitecture
to let this kind of things. I'm working on it.
> How does one do the opposite thing? (I.e.,
> using the simulator to indicate desired positions.)
I don't understand very much this question. You can indicate to the robot the
desired position with the sliders joint by joint, or with the interpret, with
a classical move trans(x,y,z,yaw,pitch,roll)
> - what is the roadmap of this project? I mean, where do you want it to
> be in one year's time?
- First of all, finish my master thesis. I gave the document, but I have to do
the public defense.
- After, I'm thinking in make a reorganitzation of the arquitecture to
simplify some modules. There's a lot of code that begin to be very difficult
to mantain.
- I would like to learn about autotools, becuase I have used kdevelop and I'm
not sure of a lot of things. So, I will like to improve some questions.
- Construct a better interpret. There's a question that we are thinking about
languages of programing robots.
- Better organization of the code.
....
There's a lot of things that I have to concrete. I one year? I don't know. I
have a lot of things in my personal life that can condicionate this. This is
one reason that I would like to publish it. I have worked a lot in this
project, and probably if I don't publish it, it will be in a bookcase and
nobody would look it.
Leo