Exemple #1
0
ARM_LENGTH = 0.5

ARM_RADIUS = ARM_LENGTH / 10.0

sim = PYROSIM(playPaused = True , evalTime = 1000)

sim.Send_Cylinder(ID = 0 , x=0, y=0, z=ARM_LENGTH/2.0 + ARM_RADIUS, r1=0, r2=0, r3=1, length=ARM_LENGTH, radius=ARM_RADIUS)

sim.Send_Cylinder(ID = 1 , x=0, y=ARM_LENGTH/2.0, z=ARM_LENGTH + ARM_RADIUS, r1=0, r2=1, r3=0, length=ARM_LENGTH, radius=ARM_RADIUS)

sim.Send_Joint(ID = 0, firstObjectID=0, secondObjectID=1, x=0, y=0, z=ARM_LENGTH + ARM_RADIUS, n1=1, n2=0, n3=0, lo=-3.14159/4.0, hi=+3.14159/4.0)

sim.Send_Touch_Sensor(ID = 0 , objectIndex = 0)

sim.Send_Touch_Sensor(ID = 1 , objectIndex = 1)

sim.Send_Sensor_Neuron(ID=0, sensorID=0, layer=0 )

sim.Send_Sensor_Neuron(ID=1, sensorID=1, layer=0 )

sim.Send_Motor_Neuron(ID = 2 , jointID = 0 , layer = 1 )

sim.Send_Synapse(sourceNeuronIndex = 0 , targetNeuronIndex = 2 , weight = 1.0 )

sim.Send_Synapse(sourceNeuronIndex = 1 , targetNeuronIndex = 2 , weight = 1.0 )



sim.Start()
                  length=ARM_LENGTH,
                  radius=ARM_RADIUS)

sim.Send_Joint(ID=0,
               firstObjectID=0,
               secondObjectID=1,
               x=0,
               y=0,
               z=ARM_LENGTH + ARM_RADIUS,
               n1=1,
               n2=0,
               n3=0,
               lo=-3.14159 / 4.0,
               hi=+3.14159 / 4.0)

sim.Send_Touch_Sensor(ID=0, objectIndex=0)

sim.Send_Touch_Sensor(ID=1, objectIndex=1)

sim.Send_Sensor_Neuron(ID=0, sensorID=0)

sim.Send_Sensor_Neuron(ID=1, sensorID=1)

sim.Send_Motor_Neuron(ID=2, jointID=0)

sim.Send_Synapse(sourceNeuronIndex=0, targetNeuronIndex=2, weight=1.0)

sim.Send_Synapse(sourceNeuronIndex=1, targetNeuronIndex=2, weight=1.0)

sim.Start()
               secondObjectID=1,
               x=0,
               y=0,
               z=ARM_LENGTH + 2 * ARM_RADIUS,
               n1=1,
               n2=0,
               n3=0,
               lo=-3.14159 / 4.0,
               hi=+3.14159 / 4.0)

sim.Send_Joint(jointID=1,
               firstObjectID=0,
               secondObjectID=-1,
               x=0,
               y=0,
               z=ARM_LENGTH / 2.0 + 2 * ARM_RADIUS)

sim.Send_Function_Neuron(neuronID=0, function=math.sin)
sim.Send_Motor_Neuron(neuronID=1, jointID=0)

#sim.Send_Synapse(sourceNeuronID=0,targetNeuronID=1,weight=1.0)
sim.Send_Developing_Synapse(sourceNeuronID=0,
                            targetNeuronID=1,
                            startWeight=1.0,
                            endWeight=-1.0,
                            startTime=0,
                            endTime=1.0)
sim.Start()

sim.Wait_To_Finish()