Very Rigid Hinge joint with custom joint API

A place to discuss everything related to Newton Dynamics.

Moderators: Sascha Willems, walaber

Re: Very Rigid Hinge joint with custom joint API

Postby Gianluca » Thu Mar 18, 2010 6:00 am

http://laral.istc.cnr.it/esm/icubsim_alone.rar

I fixed it, and I also added a simple interface for changing the position of the right arm joints.
The gui display the setted angle... and the actual angle of the joint. So, you can see the difference when gravity work against the movement.

The opengl window is rendered by libQGLViewer when it has the focus you can press "h" for getting the help on how to move with the mouse and keyboard... and if you press "m" a little pop-up menu appear on top-right where you can enable/disable some thinks for debugging.
When joint show is enable, for each joint is displayed it's local frame and on the cyan cylinder the axis of rotation with a red mark for showing limits and a little green mark on top of red mark for showing the current angle position.

Any question about the code... I'm here :-)
Gianluca
 
Posts: 53
Joined: Fri Nov 11, 2005 4:37 am
Location: Rome - Italy

Re: Very Rigid Hinge joint with custom joint API

Postby JernejL » Thu Mar 18, 2010 9:34 am

No test binary?
Help improving the Newton Game Dynamics WIKI
User avatar
JernejL
 
Posts: 1587
Joined: Mon Dec 06, 2004 2:00 pm
Location: Slovenia

Re: Very Rigid Hinge joint with custom joint API

Postby Gianluca » Thu Mar 18, 2010 11:05 am

I don't know how to generate a relocatable binary.
I'm not an expert of window. Any suggestions ??
Do you have trouble to compile it ??
Gianluca
 
Posts: 53
Joined: Fri Nov 11, 2005 4:37 am
Location: Rome - Italy

Re: Very Rigid Hinge joint with custom joint API

Postby JernejL » Thu Mar 18, 2010 11:30 am

I have no tools to compile C or c++ code whatsoever, so i was interested to see implementation in action and translate it to delphi..
Help improving the Newton Game Dynamics WIKI
User avatar
JernejL
 
Posts: 1587
Joined: Mon Dec 06, 2004 2:00 pm
Location: Slovenia

Re: Very Rigid Hinge joint with custom joint API

Postby Julio Jerez » Fri Mar 19, 2010 11:16 am

Ok I dwonload the file and whne I run CMake I get these errors

CMake Error at C:/Program Files (x86)/CMake 2.8/share/cmake-2.8/Modules/FindQt4.cmake:1726 (MESSAGE):
Qt qmake not found!
Call Stack (most recent call first):
CMakeLists.txt:34 (FIND_PACKAGE)


Configuring incomplete, errors occurred!


I Installed Qt for windows but I still get the same errors, how do I set the Path? or what do I have ot do to create a VS project file.
Julio Jerez
Moderator
Moderator
 
Posts: 12426
Joined: Sun Sep 14, 2003 2:18 pm
Location: Los Angeles

Re: Very Rigid Hinge joint with custom joint API

Postby Julio Jerez » Fri Mar 19, 2010 11:28 am

Qt was one of the GUI I considered when I was looking to change GLUI, I found it too conversome and complicated.
I could not even get demo to run, so I move on to WxWidget,

Maybe I can make your test use WxWidget if I cannot make QT work, I do not really want to spend too much time with Qt again.
Julio Jerez
Moderator
Moderator
 
Posts: 12426
Joined: Sun Sep 14, 2003 2:18 pm
Location: Los Angeles

Re: Very Rigid Hinge joint with custom joint API

Postby Gianluca » Fri Mar 19, 2010 11:33 am

The directory where qmake is should be in the Path variable.
You can test if the setup is correct opening the visual studio prompt and try running qmake.

Yes, QT is more complicated than wxWidget... and the learning curve is slower... but after that, the QT are more robust and well ported on more platforms that wxWidget. (but at the end for a demo wxWidget are better)
Anyway... let's me know if setting Path environment variable solve the problem with CMake.
Gianluca
 
Posts: 53
Joined: Fri Nov 11, 2005 4:37 am
Location: Rome - Italy

Re: Very Rigid Hinge joint with custom joint API

Postby Julio Jerez » Wed Mar 31, 2010 10:31 am

I do not see any QT visual studio project in the Qt folder. Nor I see any QT path variable in my Path
all I see is a MingW32 sub fordel in the Qt forder but I can no even open any of eth Doc files, they can no be open with any of the Text editor I have.

Is the Qt for window the mingW, or do I have the incorrect version,
what is the name of teh Path variable?
Julio Jerez
Moderator
Moderator
 
Posts: 12426
Joined: Sun Sep 14, 2003 2:18 pm
Location: Los Angeles

Re: Very Rigid Hinge joint with custom joint API

Postby Gianluca » Thu Apr 01, 2010 3:55 am

You probably have got the wrong version (minGW).
Remove the Qt Folder ... and download the binaries for visual studio 2008
http://qt.nokia.com/downloads/windows-cpp-vs2008
The installer will decompress the headers files and the .dll ready for use with visual studio.
After that, in order to use Qt with CMake you should add to the Path environment variable the bin directory of the QT folder.

The documentation in the binary version is provided by an application called "Assistant".
Suppose you installed QT in C:/Qt
and decompressed my icubsim_alone in C:/icubsim_alone
Then when you open the visual studio command prompt and you digit "echo %Path%"
in the string prompted check is there is "C:/Qt/bin"

Then close all visual studio instances, and then
when you run CMake-GUI, it ask to select the directory of source and binary, write where icubsim_alone is: "C:/icubsim_alone"
and then press the "Configure" button at the bottom.
Check if the Qt has been founded correctly (is should point to directory "C:/Qt/")
and then press the "Generate" button.
CMake will ask you for what system it should generate the makefiles. If you select visual studio 2008, cmake will generate a solution that you can open with visual studio, and then you can compile and debug as usually.

Sorry for the complexity of this system.
and again thanks for looking at my problem.
Gianluca M.
Gianluca
 
Posts: 53
Joined: Fri Nov 11, 2005 4:37 am
Location: Rome - Italy

Re: Very Rigid Hinge joint with custom joint API

Postby Gianluca » Sun Apr 11, 2010 5:20 am

Ok, I temporary solved the problem.
In the force callback, I don't add gravity force to the joints of the robot iCub, and I added a PID controller on top of the custom joints.
In this way, they now seems very rigid, and they react very quickly.

I will modify some demo of newton in order to replicate the behaviour of the joints of the robot... so, you can test and make the joint more stiff directly manipulating your demos.

Thanks again,
Gianluca.
Gianluca
 
Posts: 53
Joined: Fri Nov 11, 2005 4:37 am
Location: Rome - Italy

Re: Very Rigid Hinge joint with custom joint API

Postby Julio Jerez » Tue Apr 13, 2010 12:29 pm

Gianluca wrote:I will modify some demo of newton in order to replicate the behaviour of the joints of the robot... so, you can test and make the joint more stiff directly manipulating your demos.


Tha will be much quicker for me,
Last time I tryed QT I could not get it to work even with teh lates win download, although I must confess I did not put too much effort,
because I am expreding too thing here with WxWdiget, Collada, and a hwhole slew of other auxiliry libraries that are taking more 90% of the time I am dedicating to Newton.

make a demo for teh SDK will go a long way in all aspects, because I really want to get that problem addressed but I like to have a working demo as the reason for doing it.
Julio Jerez
Moderator
Moderator
 
Posts: 12426
Joined: Sun Sep 14, 2003 2:18 pm
Location: Los Angeles

Previous

Return to General Discussion

Who is online

Users browsing this forum: No registered users and 0 guests

cron