Monday, 15 September 2014

pyode - Can friction be added to a joint in a PyBrain ODE simulation? -


This is my first time asking the question, so I will try my best to include all the necessary information.

I am currently working on a project learning machine using PyBrain. My goal is for an induced pendulum, to know when force should be applied to maximize the dimension of confession.

To do this, I used the xodetools.py script in the ODE (Open Dynamics Engine) system that is included with PEBRAN. While the model works and is simulated, I can not find to add friction to the pendulum hinge joint.

The PyBrain (for example, johnnie_pgpe ) redefines a parameter named FricMu in their working class I have included it in my code , But it does not matter which value I set the value to FricMu is unchanged (Note: if I make it string then simulation still runs It seems that this parameter is actually not doing anything).

A quick look at the ODE documentation () notifies me that I need to use contact joint. This type of joint is not supported by the script, so I think that I write the XML file directly. Will happen.

Can anyone give advice with the understanding of PyBrain or ODE thanks to the damping of my system.


Below is the XML code for the pendulum that is imported by the PEBRN

  & lt ;? Xml version = "1.0" encoding = "UTF-8" & gt; & Lt; Xode version = "1.0523" name = "pend" xmlns: xsi = "http://www.w3.org/2001/XMLSchema-instance" xsi: a namespace location = "http://tanksoftware.com/xode/ 1.0 R23 / xode.xsd "& gt; & Lt; World & gt; & Lt; Space & gt; & Lt; Body name = "arm" & gt; & Lt; Change & gt; & Lt; Position Y = "0" x = "0" z = "0" /> & Lt; / Change & gt; & Lt; Mass & gt; & Lt; Mass_shape density = "125.0" & gt; & Lt; Box size x = "0.2" size = "0.2" sizey = "0.2" /> & lt; / Mass_shape & gt; & Lt; / Jan & gt; & Lt; Geom & gt; & Lt; Box size x = "0.2" size = "0.2" sizey = "0.2" /> & lt; / Geom & gt; & Lt; / Body & gt; & Lt; Body name = "swing" & gt; & Lt; Change & gt; & Lt; Position Y = "0" x = "0" z = "2.2" /> & Lt; Rotation & gt; & Lt; Euler y = "0" x = "0", "degree" z = "0" /> & Lt; / Rotation & gt; & Lt; / Change & gt; & Lt; Mass & gt; & Lt; Mass_shape density = "6.36619772588" & gt; & Lt; Cylinder length = "5" radius = "0.05" /> & Lt; / Mass_shape & gt; & Lt; / Jan & gt; & Lt; Geom & gt; & Lt; Cylinder length = "5" radius = "0.05" /> & Lt; / Geom & gt; & Lt; / Body & gt; & Lt; Joint name = "arm_swing" & gt; & Lt; Link1 body = "arm" /> & Lt; Link2 body = "swing" /> & Lt; Hinge & gt; & Lt; Axis y = "0" x = "1" z = "0" /> & Lt; Anchor y = "0" x = "0" z = "0" full = "true" /> & Lt; / काज & gt; & Lt; / United & gt; & Lt; Joint name = "fixed point" & gt; & Lt; Link1 body = "arm" /> & Lt; Link2 body = "swing" /> & Lt; Fixed & gt; & Lt; / Fixed & gt; & Lt; / United & gt; & Lt; Geom name = "floor" & gt; & Lt; Plane a = "0" c = "0" b = "1" d = "-44.0" /> & Lt; / Geom & gt; & Lt; / Space & gt; & Lt; / World & gt; & Lt; / Xode & gt; & Lt ;! - odeenvironment parameter & lt; Passpairs & gt; ('Arm', 'swing') & lt; AffixToEnvironment & gt; Fixed point & lt; End & gt; - & gt;  


No comments:

Post a Comment