Files
joy-it-robot/databaseCreatorv2.py
T
lade043 d80bf49905 Terminal control with robot lib (#5)
* imports and model described

* changed large parts of terminal Control to them using robotlib
therefore also added functions to robotlib

* bug fix

* debug

* debug

* bug fix

* bug fix

* bug fix

* sequence.csv for testing of -csv

* bug fix

* debug

* bug fix

* bug fix

* extreme positions weren't possible

* edited sequence.csv

* added function 'output'

* debug

* debug

* debug

* bug fix

* cleaned up

* added loop

* bug fix

* serialize and deserialize added

* bug fix

* bug fix

* bug fix

* Update .gitignore

terminalControl creates file to save last position, which will now not be uploaded

* Comment

* csv output added
2019-05-19 10:14:18 +02:00

45 lines
1.9 KiB
Python

import numpy as npy
from RobotLib import *
class Looper:
def __init__(self, Robot):
self.stepsize = 1
self.robot = Robot
def run(self):
for ang_servo1 in npy.arange(self.robot.servo1.min, self.robot.servo1.max, self.stepsize):
self.robot.servo1.set_angle(ang_servo1)
for ang_servo2 in npy.arange(self.robot.servo2.min, self.robot.servo2.max, self.stepsize):
self.robot.servo2.set_angle(ang_servo2)
for ang_servo3 in npy.arange(self.robot.servo3.min, self.robot.servo3.max, self.stepsize):
self.robot.servo3.set_angle(ang_servo3)
self.robot.calculate()
self.robot.data.add_entry(self.robot.Database.Entry(self.robot.x, self.robot.y,
self.robot.efficency,
self.robot.servo1, self.robot.servo2,
self.robot.servo3))
print("A database with {} entries has been created.".format(len(self.robot.data.database)))
def export(self):
file = open("database.data", 'w')
file.write(self.robot.data.serialize())
file.flush()
file.close()
print("Exported")
test = Robot(Robot.Servo(1, Robot.Servo.Geometry(0.55, 2.3, 1.4)),
Robot.Servo(2, Robot.Servo.Geometry(2.5, 0.55, 1.55)),
Robot.Servo(3, Robot.Servo.Geometry(0.7, 2.25, 2.25)),
Robot.CoordinateSystem([-100, 100], [-100, 100]))
test.init_depending(Robot.Arm(test.servo1, 10.26, 0.84), Robot.Arm(test.servo2, 9.85), Robot.Arm(test.servo3, 12, -3),
None, [test.servo1], [test.servo1, test.servo2])
looper = Looper(test)
looper.run()
looper.export()
print("finished")
print("test")