Example #1
0
from pynamics.variable_types import Differentiable, Constant, Variable
from pynamics.system import System
from pynamics.body import Body
from pynamics.dyadic import Dyadic
from pynamics.output import Output, PointsOutput
from pynamics.particle import Particle, PseudoParticle
import pynamics.integration
from pynamics.constraint import AccelerationConstraint

#import sympy
import numpy
import matplotlib.pyplot as plt
plt.ion()
from math import pi

system = System()
pynamics.set_system(__name__, system)

L = Constant(name='L', system=system)
V = Constant(name='V', system=system)
R = Constant(name='R', system=system)
Im = Constant(name='Im', system=system)
Il = Constant(name='Il', system=system)
Ib = Constant(name='Ib', system=system)
G = Constant(name='G', system=system)
b = Constant(name='b', system=system)
kv = Constant(name='kv', system=system)
kt = Constant(name='kt', system=system)
m_pendulum = Constant(name='m_pendulum', system=system)
m_motor = Constant(name='m_motor', system=system)
m_body = Constant(name='m_body', system=system)
from pynamics.output import Output, PointsOutput
from pynamics.particle import Particle
import pynamics.integration
import numpy
import matplotlib.pyplot as plt

plt.ion()
from math import pi
import scipy.interpolate
import sympy

# The next two lines create a new system object and set that system as the global system within the module so that other variables can use and find it.

# In[4]:

system = System()
pynamics.set_system(__name__, system)

# ## Parameterization
#
# ### Constants
#
# Declare constants and seed them with their default value.  This can be changed at integration time but is often a nice shortcut when you don't want the value to change but you want it to be represented symbolically in calculations

# In[5]:

lA = Constant(1, 'lA', system)
lB = Constant(1, 'lB', system)
lC = Constant(6 * 25.4 / 1000, 'lC', system)

mA = Constant(1, 'mA', system)
# pynamics.automatic_differentiate=False
from pynamics.frame import Frame
from pynamics.variable_types import Differentiable,Constant
from pynamics.system import System
from pynamics.body import Body
from pynamics.dyadic import Dyadic
from pynamics.output import Output,PointsOutput
from pynamics.particle import Particle
import pynamics.integration

import sympy
import numpy
import matplotlib.pyplot as plt
plt.ion()
import math
system = System()
pynamics.set_system(__name__,system)

g = Constant(9.81,'g',system)

tol = 1e-5
tinitial = 0
tfinal = 5
tstep = 1/30
t = numpy.r_[tinitial:tfinal:tstep]

qA,qA_d,qA_dd = Differentiable('qA')
qB,qB_d,qB_dd = Differentiable('qB')
qC,qC_d,qC_dd = Differentiable('qC')

Example #4
0
pynamics.integrator = 1
from pynamics.frame import Frame
from pynamics.variable_types import Differentiable, Constant, Variable
from pynamics.system import System
from pynamics.body import Body
from pynamics.dyadic import Dyadic
from pynamics.output import Output, PointsOutput
from pynamics.particle import Particle
import pynamics.integration

import sympy
import numpy
import matplotlib.pyplot as plt
plt.ion()
from math import pi
system = System()
pynamics.set_system(__name__, system)

lA = Constant(1, 'lA', system)

mA = Constant(1, 'mA', system)

g = Constant(9.81, 'g', system)
b = Constant(1e0, 'b', system)
k = Constant(1e1, 'k', system)

tinitial = 0
tfinal = 5
tstep = 1 / 30
t = numpy.r_[tinitial:tfinal:tstep]
#pynamics.script_mode = True
from pynamics import *
import numpy
import scipy
import scipy.integrate
#from tictoc import *
import matplotlib.pyplot as plt
from pynamics.system import System
from pynamics.variable_types import Differentiable,Constant,Variable
from pynamics.frame import Frame
from pynamics.body import Body
from pynamics.dyadic import Dyadic
from pynamics.output import Output

#===============================================================================
system=System()


lA = Constant(.04,'lA',system)
lB = Constant(.04,'lB',system)
g = Constant(9.81,'g',system)
mA = Constant(.0145,'mA',system)
mB = Constant(.0145,'mB',system)
zero = Constant(0,'zero',system)

Ixx_A = Constant(8.6e-007,'Ixx_A',system)
Iyy_A = Constant(2.2e-006,'Iyy_A',system)
Izz_A = Constant(2.2e-006,'Izz_A',system)
Ixx_B = Constant(8.6e-007,'Ixx_B',system)
Iyy_B = Constant(2.2e-006,'Iyy_B',system)
Izz_B = Constant(2.2e-006,'Izz_B',system)
Example #6
0
import pynamics
import pynamics.variable_types
from pynamics.frame import Frame
from pynamics.system import System

import pynamics
from pynamics.frame import Frame
from pynamics.variable_types import Differentiable,Constant
from pynamics.system import System
from pynamics.body import Body
from pynamics.dyadic import Dyadic
from pynamics.output import Output
from pynamics.particle import Particle

s = System()
pynamics.set_system(__name__,s)
x,x_d,x_dd=pynamics.variable_types.Differentiable('x',s)
q1,q1_d,q1_dd=pynamics.variable_types.Differentiable('q1',s)

eq = x**2+2*x
eq_d = s.derivative(eq)

N = Frame('N')
A = Frame('A')

s.set_newtonian(N)
A.rotate_fixed_axis_directed(N,[0,0,1],q1,s)


p1 = 3*A.x+2*N.y
#pynamics.script_mode = True
from pynamics.frame import Frame
from pynamics.variable_types import Differentiable, Constant
from pynamics.system import System
from pynamics.body import Body
from pynamics.dyadic import Dyadic
from pynamics.output import Output
from pynamics.particle import Particle

#import sympy
import numpy
import scipy.integrate
import matplotlib.pyplot as plt
plt.ion()
from sympy import pi
system = System()

lA = Constant('lA', 1, system)
lB = Constant('lB', 1, system)
lC = Constant('lC', 1, system)

mA = Constant('mA', 1, system)
mB = Constant('mB', 1, system)
mC = Constant('mC', 1, system)

g = Constant('g', 9.81, system)
b = Constant('b', 1e0, system)
k = Constant('k', 0e2, system)

tinitial = 0
tfinal = 5
import pynamics
from pynamics.frame import Frame
from pynamics.variable_types import Differentiable, Constant
from pynamics.system import System
from pynamics.body import Body
from pynamics.dyadic import Dyadic
from pynamics.output import Output, PointsOutput
from pynamics.particle import Particle
import pynamics.integration

#import sympy
import numpy
import matplotlib.pyplot as plt
plt.ion()
from math import pi
system = System()
pynamics.set_system(__name__, system)

tol = 1e-7

l = Constant(.5, 'l', system)
xO = Constant(0, 'xO', system)

M = Constant(10, 'M', system)
m = Constant(10, 'm', system)

I_xx = Constant(9, 'I_xx', system)
I_yy = Constant(9, 'I_yy', system)
I_zz = Constant(9, 'I_zz', system)

g = Constant(9.81, 'g', system)
Example #9
0
from pynamics.variable_types import Differentiable, Constant, Variable
from pynamics.system import System
from pynamics.body import Body
from pynamics.dyadic import Dyadic
from pynamics.output import Output, PointsOutput
from pynamics.particle import Particle
from pynamics.constraint import AccelerationConstraint
import pynamics.integration

import numpy
import matplotlib.pyplot as plt

plt.ion()
from math import pi

system = System()
pynamics.set_system(__name__, system)

lA = Constant(.1, 'lA', system)
mA = Constant(.1, 'mA', system)

# g = Constant(9.81,'g',system)
freq = Constant(.1, 'freq', system)
torque = Constant(10, 'torque', system)
Area = Constant(.1, 'Area', system)
# b = Constant(1e0,'b',system)
k = Constant(1e1, 'k', system)
rho = Constant(1000, 'rho')

Ixx_motor = Constant(.1, 'Ixx_motor')
Iyy_motor = Constant(.1, 'Iyy_motor')
Example #10
0
import pynamics
from pynamics.frame import Frame
from pynamics.variable_types import Differentiable,Constant
from pynamics.system import System
from pynamics.body import Body
from pynamics.dyadic import Dyadic
from pynamics.output import Output,PointsOutput
from pynamics.particle import Particle
import pynamics.integration

#import sympy
import numpy
import matplotlib.pyplot as plt
plt.ion()
from math import pi
system = System()
pynamics.set_system(__name__,system)

lA = Constant(1,'lA',system)
lB = Constant(1,'lB',system)
lC = Constant(1,'lC',system)

mA = Constant(1,'mA',system)
mB = Constant(1,'mB',system)
mC = Constant(1,'mC',system)

g = Constant(9.81,'g',system)
b = Constant(1e2,'b',system)
k = Constant(1e2,'k',system)

preload1 = Constant(0*pi/180,'preload1',system)
Example #11
0
from pynamics.frame import Frame
from pynamics.variable_types import Differentiable,Constant
from pynamics.system import System
from pynamics.body import Body
from pynamics.dyadic import Dyadic
from pynamics.output import Output,PointsOutput
from pynamics.particle import Particle
import pynamics.integration
from pynamics.constraint import KinematicConstraint

import sympy
import numpy
import matplotlib.pyplot as plt
plt.ion()
from math import pi
system = System()
pynamics.set_system(__name__,system)

lA = Constant(1,'lA',system)
lB = Constant(1,'lB',system)
lC = Constant(1,'lC',system)
lD = Constant(1,'lD',system)

m = Constant(1,'m',system)
# mB = Constant(1,'mB',system)
# mC = Constant(1,'mC',system)

# g = Constant(9.81,'g',system)
# b = Constant(1e0,'b',system)
# k = Constant(1e1,'k',system)
Example #12
0
from pynamics.frame import Frame
from pynamics.variable_types import Differentiable, Constant
from pynamics.system import System
from pynamics.body import Body
from pynamics.dyadic import Dyadic
from pynamics.output import Output, PointsOutput
from pynamics.particle import Particle
import pynamics.integration

import numpy
import matplotlib.pyplot as plt

plt.ion()
from math import pi

system = System()
pynamics.set_system(__name__, system)

lA = Constant(1, 'lA', system)

mA = Constant(1, 'mA', system)

g = Constant(9.81, 'g', system)
#b = Constant(1e0,'b',system)
k = Constant(3e2, 'k', system)

Ixx_A = Constant(1, 'Ixx_A', system)
Iyy_A = Constant(1, 'Iyy_A', system)
Izz_A = Constant(.3, 'Izz_A', system)

tinitial = 0
Example #13
0
from pynamics.variable_types import Differentiable,Constant,Variable
from pynamics.system import System
from pynamics.body import Body
from pynamics.dyadic import Dyadic
from pynamics.output import Output
from pynamics.particle import Particle
import pynamics.integration

import matplotlib.pyplot as plt
from mpl_toolkits.mplot3d import Axes3D

import sympy
import numpy
plt.ion()
from math import pi
system = System()
pynamics.set_system(__name__,system)

mp1 = Constant(1,'mp1')
g = Constant(9.81,'g')
l1 = Constant(1,'l1')
b = Constant(1,'b')
k = Constant(1e1,'k',system)

q1,q1_d,q1_dd = Differentiable('q1',ini = [0,1])
q2,q2_d,q2_dd = Differentiable('q2',ini = [0,0])
q3,q3_d,q3_dd = Differentiable('q3',ini = [0,0])

f1 = Frame(,system)
f2 = Frame(,system)
f3 = Frame(,system)
def init_system(v, drag_direction, time_step):
    import pynamics
    from pynamics.frame import Frame
    from pynamics.variable_types import Differentiable, Constant
    from pynamics.system import System
    from pynamics.body import Body
    from pynamics.dyadic import Dyadic
    from pynamics.output import Output, PointsOutput
    from pynamics.particle import Particle
    import pynamics.integration
    import logging
    import sympy
    import numpy
    import matplotlib.pyplot as plt
    from math import pi
    from scipy import optimize
    from sympy import sin
    import pynamics.tanh as tanh

    from fit_qs import exp_fit
    import fit_qs

    # time_step = tstep
    x = numpy.zeros((7, 1))
    friction_perp = x[0]
    friction_par = x[1]
    given_b = x[2]
    given_k = x[3]
    given_k1 = x[4]
    given_b1 = x[4]
    system = System()
    pynamics.set_system(__name__, system)
    global_q = True

    lO = Constant(7 / 1000, 'lO', system)
    lA = Constant(33 / 1000, 'lA', system)
    lB = Constant(33 / 1000, 'lB', system)
    lC = Constant(33 / 1000, 'lC', system)

    mO = Constant(10 / 1000, 'mA', system)
    mA = Constant(2.89 / 1000, 'mA', system)
    mB = Constant(2.89 / 1000, 'mB', system)
    mC = Constant(2.89 / 1000, 'mC', system)
    k = Constant(0.209, 'k', system)
    k1 = Constant(0.209, 'k1', system)

    friction_perp = Constant(1.2, 'f_perp', system)
    friction_par = Constant(-0.2, 'f_par', system)
    b_damping = Constant(given_b, 'b_damping', system)

    # time_step = 1/00

    if v == 0:
        [
            t, tinitial, tfinal, tstep, qAa1, qAb1, qAc1, qAa2, qAb2, qAc2,
            qAa3, qAb3, qAc3, qBa1, qBb1, qBc1, qBa2, qBb2, qBc2, qBa3, qBb3,
            qBc3, qCa1, qCb1, qCc1, qCa2, qCb2, qCc2, qCa3, qCb3, qCc3
        ] = fit_qs.fit_0_amount(time_step)
    elif v == 10:
        [
            t, tinitial, tfinal, tstep, qAa1, qAb1, qAc1, qAa2, qAb2, qAc2,
            qAa3, qAb3, qAc3, qBa1, qBb1, qBc1, qBa2, qBb2, qBc2, qBa3, qBb3,
            qBc3, qCa1, qCb1, qCc1, qCa2, qCb2, qCc2, qCa3, qCb3, qCc3
        ] = fit_qs.fit_10_amount(time_step)
    elif v == 20:
        [
            t, tinitial, tfinal, tstep, qAa1, qAb1, qAc1, qAa2, qAb2, qAc2,
            qAa3, qAb3, qAc3, qBa1, qBb1, qBc1, qBa2, qBb2, qBc2, qBa3, qBb3,
            qBc3, qCa1, qCb1, qCc1, qCa2, qCb2, qCc2, qCa3, qCb3, qCc3
        ] = fit_qs.fit_20_amount(time_step)
    elif v == 30:
        [
            t, tinitial, tfinal, tstep, qAa1, qAb1, qAc1, qAa2, qAb2, qAc2,
            qAa3, qAb3, qAc3, qBa1, qBb1, qBc1, qBa2, qBb2, qBc2, qBa3, qBb3,
            qBc3, qCa1, qCb1, qCc1, qCa2, qCb2, qCc2, qCa3, qCb3, qCc3
        ] = fit_qs.fit_30_amount(time_step)
    elif v == 40:
        [
            t, tinitial, tfinal, tstep, qAa1, qAb1, qAc1, qAa2, qAb2, qAc2,
            qAa3, qAb3, qAc3, qBa1, qBb1, qBc1, qBa2, qBb2, qBc2, qBa3, qBb3,
            qBc3, qCa1, qCb1, qCc1, qCa2, qCb2, qCc2, qCa3, qCb3, qCc3
        ] = fit_qs.fit_40_amount(time_step)
    elif v == 50:
        [
            t, tinitial, tfinal, tstep, qAa1, qAb1, qAc1, qAa2, qAb2, qAc2,
            qAa3, qAb3, qAc3, qBa1, qBb1, qBc1, qBa2, qBb2, qBc2, qBa3, qBb3,
            qBc3, qCa1, qCb1, qCc1, qCa2, qCb2, qCc2, qCa3, qCb3, qCc3
        ] = fit_qs.fit_50_amount(time_step)

    distance = 200 / 1000

    nums = int(tfinal / tstep)
    array_num = numpy.arange(0, nums)
    array_num1 = numpy.repeat(array_num, nums, axis=0)
    array_num1.shape = (nums, nums)
    error_k = array_num1 / 8000 + numpy.ones((nums, nums))

    fit_t = t
    fit_qA = exp_fit(fit_t, qAa1, qAb1, qAc1, qAa2, qAb2, qAc2, qAa3, qAb3,
                     qAc3)
    fit_qB = exp_fit(fit_t, qBa1, qBb1, qBc1, qBa2, qBb2, qBc2, qBa3, qBb3,
                     qBc3)
    fit_qC = exp_fit(fit_t, qCa1, qCb1, qCc1, qCa2, qCb2, qCc2, qCa3, qCb3,
                     qCc3)
    fit_qAd1 = numpy.diff(fit_qA) / numpy.diff(fit_t)
    fit_qAd = numpy.append(fit_qAd1[0], fit_qAd1)
    fit_qBd1 = numpy.diff(fit_qB) / numpy.diff(fit_t)
    fit_qBd = numpy.append(fit_qBd1[0], fit_qBd1)
    fit_qCd1 = numpy.diff(fit_qC) / numpy.diff(fit_t)
    fit_qCd = numpy.append(fit_qCd1[0], fit_qCd1)

    fit_states1 = numpy.stack(
        (fit_qA, fit_qB, fit_qC, fit_qAd, fit_qBd, fit_qCd), axis=1)
    fit_states1[:, 0:3] = fit_states1[:, 0:3] - fit_states1[0, 0:3]
    fit_states = -drag_direction * numpy.deg2rad(fit_states1)

    # plt.plot(t,fit_states)

    if drag_direction == -1:
        zero_shape = fit_states.shape
        fit_states = numpy.zeros(zero_shape)

    fit_vel = drag_direction * distance / (tfinal)

    if qAa1 == 0:
        fit_vel = 0
    fit_v = numpy.ones(t.shape) * fit_vel

    if qAa1 == 0:
        fit_d = numpy.ones(t.shape) * fit_vel
    else:
        fit_d = drag_direction * numpy.r_[tinitial:distance:tstep *
                                          abs(fit_vel)]

    preload0 = Constant(0 * pi / 180, 'preload0', system)
    preload1 = Constant(0 * pi / 180, 'preload1', system)
    preload2 = Constant(0 * pi / 180, 'preload2', system)
    preload3 = Constant(0 * pi / 180, 'preload3', system)

    Ixx_O = Constant(1, 'Ixx_O', system)
    Iyy_O = Constant(1, 'Iyy_O', system)
    Izz_O = Constant(1, 'Izz_O', system)
    Ixx_A = Constant(1, 'Ixx_A', system)
    Iyy_A = Constant(1, 'Iyy_A', system)
    Izz_A = Constant(1, 'Izz_A', system)
    Ixx_B = Constant(1, 'Ixx_B', system)
    Iyy_B = Constant(1, 'Iyy_B', system)
    Izz_B = Constant(1, 'Izz_B', system)
    Ixx_C = Constant(1, 'Ixx_C', system)
    Iyy_C = Constant(1, 'Iyy_C', system)
    Izz_C = Constant(1, 'Izz_C', system)

    y, y_d, y_dd = Differentiable('y', system)
    qO, qO_d, qO_dd = Differentiable('qO', system)
    qA, qA_d, qA_dd = Differentiable('qA', system)
    qB, qB_d, qB_dd = Differentiable('qB', system)
    qC, qC_d, qC_dd = Differentiable('qC', system)

    initialvalues = {}
    initialvalues[y] = 0 + 1e-14
    initialvalues[y_d] = fit_vel + 1e-14
    initialvalues[qO] = 0 + 1e-14
    initialvalues[qO_d] = 0 + 1e-14
    initialvalues[qA] = fit_states[0, 0] + 1e-14
    initialvalues[qA_d] = fit_states[0, 3] + 1e-14
    initialvalues[qB] = fit_states[0, 1] + 1e-14
    initialvalues[qB_d] = fit_states[0, 4] + 1e-14
    initialvalues[qC] = fit_states[0, 2] + 1e-14
    initialvalues[qC_d] = fit_states[0, 5] + 1e-14

    statevariables = system.get_state_variables()
    ini = [initialvalues[item] for item in statevariables]

    N = Frame('N')
    O = Frame('O')
    A = Frame('A')
    B = Frame('B')
    C = Frame('C')

    drag_direction = drag_direction
    velocity = 200 / tfinal / 1000
    vSoil = drag_direction * velocity * N.y
    nSoil = 1 / vSoil.length() * vSoil

    system.set_newtonian(N)
    if not global_q:
        O.rotate_fixed_axis_directed(N, [0, 0, 1], qO, system)
        A.rotate_fixed_axis_directed(O, [0, 0, 1], qA, system)
        B.rotate_fixed_axis_directed(A, [0, 0, 1], qB, system)
        C.rotate_fixed_axis_directed(B, [0, 0, 1], qC, system)
    else:
        O.rotate_fixed_axis_directed(N, [0, 0, 1], qO, system)
        A.rotate_fixed_axis_directed(N, [0, 0, 1], qA, system)
        B.rotate_fixed_axis_directed(N, [0, 0, 1], qB, system)
        C.rotate_fixed_axis_directed(N, [0, 0, 1], qC, system)

    pNO = 0 * N.x + y * N.y
    pOA = lO * N.x + y * N.y
    pAB = pOA + lA * A.x
    pBC = pAB + lB * B.x
    pCtip = pBC + lC * C.x

    pOcm = pNO + lO / 2 * N.x
    pAcm = pOA + lA / 2 * A.x
    pBcm = pAB + lB / 2 * B.x
    pCcm = pBC + lC / 2 * C.x

    wNO = N.getw_(O)
    wOA = N.getw_(A)
    wAB = A.getw_(B)
    wBC = B.getw_(C)

    IO = Dyadic.build(O, Ixx_O, Iyy_O, Izz_O)
    IA = Dyadic.build(A, Ixx_A, Iyy_A, Izz_A)
    IB = Dyadic.build(B, Ixx_B, Iyy_B, Izz_B)
    IC = Dyadic.build(C, Ixx_C, Iyy_C, Izz_C)

    BodyO = Body('BodyO', O, pOcm, mO, IO, system)
    BodyA = Body('BodyA', A, pAcm, mA, IA, system)
    BodyB = Body('BodyB', B, pBcm, mB, IB, system)
    BodyC = Body('BodyC', C, pCcm, mC, IC, system)
    # BodyC = Particle(pCcm,mC,'ParticleC',system)

    vOcm = pOcm.time_derivative()
    vAcm = pAcm.time_derivative()
    vBcm = pBcm.time_derivative()
    vCcm = pCcm.time_derivative()

    system.add_spring_force1(k1 + 10000 * (qA + abs(qA)),
                             (qA - qO - preload1) * N.z, wOA)
    system.add_spring_force1(k + 10000 * (qB + abs(qB)),
                             (qB - qA - preload2) * N.z, wAB)
    system.add_spring_force1(k + 10000 * (qC + abs(qC)),
                             (qC - qB - preload3) * N.z, wBC)

    #new Method use nJoint
    nvAcm = 1 / vAcm.length() * vAcm
    nvBcm = 1 / vBcm.length() * vBcm
    nvCcm = 1 / vCcm.length() * vCcm

    faperp = friction_perp * nvAcm.dot(A.y) * A.y
    fapar = friction_par * nvAcm.dot(A.x) * A.x
    system.addforce(-(faperp + fapar), vAcm)

    fbperp = friction_perp * nvBcm.dot(B.y) * B.y
    fbpar = friction_par * nvBcm.dot(B.x) * B.x
    system.addforce(-(fbperp + fbpar), vBcm)

    fcperp = friction_perp * nvCcm.dot(C.y) * C.y
    fcpar = friction_par * nvCcm.dot(C.x) * C.x
    system.addforce(-(fcperp + fcpar), vCcm)

    system.addforce(-b_damping * wOA, wOA)
    system.addforce(-b_damping * wAB, wAB)
    system.addforce(-b_damping * wBC, wBC)
    eq = []
    eq_d = [(system.derivative(item)) for item in eq]

    eq_d.append(y_d - fit_vel)
    eq_dd = [(system.derivative(item)) for item in eq_d]

    f, ma = system.getdynamics()
    func1 = system.state_space_post_invert(f, ma, eq_dd)
    points = [pNO, pOA, pAB, pBC, pCtip]
    constants = system.constant_values

    return system, f, ma, func1, points, t, ini, constants, b_damping, k, k1, tstep, fit_states
Example #15
0
from pynamics.variable_types import Differentiable, Constant, Variable
from pynamics.system import System
from pynamics.body import Body
from pynamics.dyadic import Dyadic
from pynamics.output import Output
from pynamics.particle import Particle, PseudoParticle
import pynamics.integration

#import sympy
import numpy
import matplotlib.pyplot as plt

plt.ion()
from math import pi

system = System()
pynamics.set_system(__name__, system)

L = Constant(name='L', system=system)
V = Constant(name='V', system=system)
R = Constant(name='R', system=system)
Im = Constant(name='Im', system=system)
Il = Constant(name='Il', system=system)
G = Constant(name='G', system=system)
b = Constant(name='b', system=system)
kv = Constant(name='kv', system=system)
kt = Constant(name='kt', system=system)
Tl = Constant(name='Tl', system=system)
m = Constant(name='m', system=system)
g = Constant(name='g', system=system)
Example #16
0
from pynamics.system import System
from pynamics.body import Body
from pynamics.dyadic import Dyadic
from pynamics.output import Output, PointsOutput
#from pynamics.particle import Particle
import pynamics.integration
import sympy
#import logging
#pynamics.logger.setLevel(logging.ERROR)
#pynamics.system.logger.setLevel(logging.ERROR)

import numpy
import matplotlib.pyplot as plt
plt.ion()
from math import pi, sin, cos
system = System()
pynamics.set_system(__name__, system)

tinitial = 0
tfinal = 5
tstep = 1 / 30
t = numpy.r_[tinitial:tfinal:tstep]

ang_ini = 0

v = 1

x, x_d, x_dd = Differentiable('x', ini=[0, v * cos(ang_ini * pi / 180)])
y, y_d, y_dd = Differentiable('y', ini=[1, v * sin(ang_ini * pi / 180)])
z, z_d, z_dd = Differentiable('z', ini=[0, 0])
import pynamics
from pynamics.frame import Frame
from pynamics.variable_types import Differentiable, Constant
from pynamics.system import System
from pynamics.body import Body
from pynamics.dyadic import Dyadic
from pynamics.output import Output, PointsOutput
from pynamics.particle import Particle
import pynamics.integration

import sympy
import numpy
import matplotlib.pyplot as plt
plt.ion()
from math import pi
system = System()
pynamics.set_system(__name__, system)
tol = 1e-3

lO = Constant(name='lO', system=system)
lA = Constant(name='lA', system=system)
lB = Constant(name='lB', system=system)
lC = Constant(name='lC', system=system)
lD = Constant(name='lD', system=system)

mO = Constant(name='mO', system=system)
mA = Constant(name='mA', system=system)
mB = Constant(name='mB', system=system)
mC = Constant(name='mC', system=system)
mD = Constant(name='mD', system=system)
#m_motor = Constant(name='m_motor',system=system)
Example #18
0
from pynamics.frame import Frame
from pynamics.variable_types import Differentiable,Constant,Variable
from pynamics.system import System
from pynamics.body import Body
from pynamics.dyadic import Dyadic
from pynamics.output import Output
from pynamics.output import PointsOutput
from pynamics.particle import Particle
import pynamics.integration

import sympy
import numpy
import matplotlib.pyplot as plt
plt.ion()
from math import pi
system = System()
pynamics.set_system(__name__,system)

error = 1e-4
error_tol = 1e-10

alpha = 1e6
beta = 1e5

#preload1 = Constant('preload1',0*pi/180,system)
l1 = Constant(1,'l1',system)
m1 = Constant(1e1,'m1',system)
m2 = Constant(1e0,'m2',system)
k = Constant(1e4,'k',system)
l0 = Constant(1,'l0',system)
b = Constant(5e0,'b',system)
from pynamics.frame import Frame
from pynamics.variable_types import Differentiable, Constant
from pynamics.system import System
from pynamics.body import Body
from pynamics.dyadic import Dyadic
from pynamics.output import Output

#import sympy
import numpy
import scipy.integrate
import matplotlib.pyplot as plt

plt.ion()
from math import pi

system = System()

lA = Constant('lA', 0.0570776, system)
lB = Constant('lB', 0.0399543, system)
lC = Constant('lC', 0.027968, system)
g = Constant('g', 9.81, system)
mA = Constant('mA', 0.0179314568844537, system)
mB = Constant('mB', 0.0125520135359323, system)
mC = Constant('mC', 0.00878640633355993, system)

Ixx_A = Constant('Ixx_A', 8.96572844222684e-07, system)
Iyy_A = Constant('Iyy_A', 5.31645644183654e-06, system)
Izz_A = Constant('Izz_A', 5.31645644183654e-06, system)
Ixx_B = Constant('Ixx_B', 6.27600676796613e-07, system)
Iyy_B = Constant('Iyy_B', 1.98358014762822e-06, system)
Izz_B = Constant('Izz_B', 1.98358014762822e-06, system)
Example #20
0
import pynamics
from pynamics.frame import Frame
from pynamics.variable_types import Differentiable, Constant, Variable
from pynamics.system import System
from pynamics.body import Body
from pynamics.dyadic import Dyadic
from pynamics.output import Output
from pynamics.particle import Particle

#import sympy
import numpy
import matplotlib.pyplot as plt
plt.ion()
from math import pi
system = System()
pynamics.set_system(__name__, system)

error = 1e-12

tinitial = 0
tfinal = 10
tstep = .001
t = numpy.r_[tinitial:tfinal:tstep]

m = Constant(1, 'm', system)
g = Constant(9.81, 'g', system)
I = Constant(1, 'I', system)
J = Constant(1, 'J', system)
r = Constant(1, 'L', system)
Example #21
0
import pynamics
from pynamics.frame import Frame
from pynamics.variable_types import Differentiable, Constant
from pynamics.system import System
from pynamics.body import Body
from pynamics.dyadic import Dyadic
from pynamics.output import Output, PointsOutput
from pynamics.particle import Particle
import pynamics.integration

import sympy
import numpy
import matplotlib.pyplot as plt
plt.ion()
from math import pi
system = System()
pynamics.set_system(__name__, system)
tol = 1e-7

lO = Constant(.5, 'lO', system)
lA = Constant(.75, 'lA', system)
lB = Constant(1, 'lB', system)
lC = Constant(.75, 'lC', system)
lD = Constant(1, 'lD', system)
lE = Constant(1, 'lE', system)

mO = Constant(2, 'mO', system)
mA = Constant(.1, 'mA', system)
mB = Constant(.1, 'mB', system)
mC = Constant(.1, 'mC', system)
mD = Constant(.1, 'mD', system)
Example #22
0
import pynamics
from pynamics.frame import Frame
from pynamics.variable_types import Differentiable, Constant
from pynamics.system import System
from pynamics.body import Body
from pynamics.dyadic import Dyadic
from pynamics.output import Output, PointsOutput
from pynamics.particle import Particle, PseudoParticle
import pynamics.integration

import sympy
import numpy
import matplotlib.pyplot as plt
plt.ion()
from math import pi
system = System()
pynamics.set_system(__name__, system)
tol = 1e-9

lO = Constant(name='lO', system=system)
lA = Constant(name='lA', system=system)
lB = Constant(name='lB', system=system)
lC = Constant(name='lC', system=system)
lD = Constant(name='lD', system=system)

mO = Constant(name='mO', system=system)
mA = Constant(name='mA', system=system)
mB = Constant(name='mB', system=system)
mC = Constant(name='mC', system=system)
mD = Constant(name='mD', system=system)
Example #23
0
import pynamics
from pynamics.frame import Frame
from pynamics.variable_types import Differentiable, Constant
from pynamics.system import System
from pynamics.body import Body
from pynamics.dyadic import Dyadic
from pynamics.output import Output, PointsOutput
from pynamics.particle import Particle
import pynamics.integration

import sympy
import numpy
import matplotlib.pyplot as plt
plt.ion()
from math import pi
system = System()
pynamics.set_system(__name__, system)

lA = Constant(2, 'lA', system)
lB = Constant(1.5, 'lB', system)
lC = Constant(1, 'lC', system)
lD = Constant(1, 'lD', system)

# mA = Constant(1,'mA',system)
# mB = Constant(1,'mB',system)
# mC = Constant(1,'mC',system)

# g = Constant(9.81,'g',system)
# b = Constant(1e0,'b',system)
# k = Constant(1e1,'k',system)
Example #24
0
from pynamics.frame import Frame
from pynamics.variable_types import Differentiable, Constant, Variable
from pynamics.system import System
from pynamics.body import Body
from pynamics.dyadic import Dyadic
from pynamics.output import Output, PointsOutput
from pynamics.particle import Particle
import pynamics.integration
import pynamics.tanh

import sympy
import numpy
import matplotlib.pyplot as plt
plt.ion()
from math import pi
system = System()
pynamics.set_system(__name__, system)

error = 1e-4
error_tol = 1e-10

from math import sin, cos

#alpha = 1e6
#beta = 1e5

#preload1 = Constant('preload1',0*pi/180,system)
#l1 = Constant(1,'l1',system)
m1 = Constant(1e-1, 'm1', system)
m2 = Constant(1e-3, 'm2', system)
k = Constant(1.5e2, 'k', system)
Example #25
0
#pynamics.script_mode = True
from pynamics.frame import Frame
from pynamics.variable_types import Differentiable, Constant, Variable
from pynamics.system import System
from pynamics.body import Body
from pynamics.dyadic import Dyadic
from pynamics.output import Output
from pynamics.particle import Particle

import sympy
import numpy
import scipy.integrate
import matplotlib.pyplot as plt
plt.ion()
from sympy import pi
system = System()

lA = Constant('lA', 2, system)
mA = Constant('mA', 1, system)
g = Constant('g', 9.81, system)
b = Constant('b', 1e0, system)
k = Constant('k', 1e1, system)

tinitial = 0
tfinal = 5
tstep = .001
t = numpy.r_[tinitial:tfinal:tstep]

preload1 = Constant('preload1', 0 * pi / 180, system)

x, x_d, x_dd = Differentiable(system, 'x')
Example #26
0
#pynamics.script_mode = True
from pynamics.frame import Frame
from pynamics.variable_types import Differentiable, Constant
from pynamics.system import System
from pynamics.body import Body
from pynamics.dyadic import Dyadic
from pynamics.output import Output
from pynamics.particle import Particle

#import sympy
import numpy
import scipy.integrate
import matplotlib.pyplot as plt
plt.ion()
from sympy import pi
system = System()

lA = Constant('lA', 1, system)

mA = Constant('mA', 1, system)

g = Constant('g', 9.81, system)
b = Constant('b', 1e0, system)
k = Constant('k', 1e1, system)

tinitial = 0
tfinal = 5
tstep = .001
t = numpy.r_[tinitial:tfinal:tstep]

preload1 = Constant('preload1', 0 * pi / 180, system)
from pynamics.frame import Frame
from pynamics.variable_types import Differentiable,Constant
from pynamics.system import System
from pynamics.body import Body
from pynamics.dyadic import Dyadic
from pynamics.output import Output,PointsOutput
from pynamics.particle import Particle
import pynamics.integration

#import sympy
import numpy
import matplotlib.pyplot as plt
plt.ion()
from math import pi
system = System()
pynamics.set_system(__name__,system)

mA = Constant(1,'mA',system)

g = Constant(9.81,'g',system)
b = Constant(1e0,'b',system)
k = Constant(1e6,'k',system)

tinitial = 0
tfinal = 5
tstep = 1/100
t = numpy.r_[tinitial:tfinal:tstep]

x,x_d,x_dd = Differentiable('x',system)
y,y_d,y_dd = Differentiable('y',system)
from pynamics.dyadic import Dyadic
from pynamics.output import Output, PointsOutput
from pynamics.particle import Particle
import pynamics.integration
import numpy
import matplotlib.pyplot as plt
plt.ion()
from math import pi
import logging
import pynamics.integration
import pynamics.system
import numpy.random
import scipy.interpolate
import cma

system = System()
pynamics.set_system(__name__, system)

lA = Constant(1, 'lA', system)
lB = Constant(1, 'lB', system)
lC = Constant(1, 'lC', system)

mA = Constant(1, 'mA', system)
mB = Constant(1, 'mB', system)
mC = Constant(1, 'mC', system)

g = Constant(9.81, 'g', system)
b = Constant(1e1, 'b', system)
k = Constant(1e1, 'k', system)

preload1 = Constant(0 * pi / 180, 'preload1', system)
from pynamics.frame import Frame
from pynamics.variable_types import Differentiable, Constant
from pynamics.system import System
from pynamics.body import Body
from pynamics.dyadic import Dyadic
from pynamics.output import Output, PointsOutput
from pynamics.particle import Particle
from pynamics.constraint import AccelerationConstraint
import pynamics.integration

import sympy
import numpy
import matplotlib.pyplot as plt
plt.ion()
from math import pi
system = System()
pynamics.set_system(__name__, system)

tol = 1e-7

l = Constant(.5, 'l', system)
q0 = Constant(0, 'q0', system)

M = Constant(10, 'M', system)
m = Constant(10, 'm', system)

I_xx = Constant(9, 'I_xx', system)
I_yy = Constant(9, 'I_yy', system)
I_zz = Constant(9, 'I_zz', system)

g = Constant(9.81, 'g', system)
Example #30
0
from pynamics.body import Body
from pynamics.dyadic import Dyadic
from pynamics.output import Output, PointsOutput3D
from pynamics.particle import Particle
import pynamics.integration
from pynamics.constraint import AccelerationConstraint, KinematicConstraint

import matplotlib.pyplot as plt
# plt.ion()

#import sympy
import numpy
#import matplotlib.pyplot as plt
#plt.ion()
from math import pi
system = System()
pynamics.set_system(__name__, system)
tol = 1e-10
from math import pi, sin, cos

#lA = Constant('lA',1,system)
#lB = Constant('lB',1,system)
#lC = Constant('lC',1,system)

################################################
#This is where we set the link angles

t1 = 50 * pi / 180
t2 = 70 * pi / 180
t3 = 70 * pi / 180
t4 = 60 * pi / 180