def test_interface_is_callable(self): print "### interface ###" robot = Robot() robot.get_joint_by_id(0) robot.get_joint_by_name("Root") #robot.debugprint() robot.update(PyPose()) robot.inverse_chain_t(3, (0,0,-300), 1, 100, 3) robot.inverse_chain(3, np.array((0,0,-300)), 1, 100, 3) robot.get_centre_of_gravity() robot.set_angles_to_pose(PyPose(), 0, -1)
def test_maspoint_simple_r(self): print "### Masspoint simple right ###" config = get_config() config["RobotTypeName"] = "Darwin" robot = Robot() task = KinematicTask(robot) r_chain = task.create_cog_chain(3) l_chain = task.create_cog_chain(4) robot.update(PyPose()) cog=robot.get_centre_of_gravity() lfi = robot.get_joint_by_id(35).get_chain_matrix(inverse=True) rfi = robot.get_joint_by_id(34).get_chain_matrix(inverse=True) rcog = np.dot(rfi, cog) lcog = np.dot(lfi, cog) task.update_chain(r_chain, 3) r_cmp = r_chain.get_joint(6).get_chain_masspoint() diff = r_cmp - rcog[0:3] print diff
steptime = 0.005 if __name__ == "__main__": args=sys.argv if len(args) > 1: play_animation(args[1]) sleep(2) robot.update(ipc.get_pose()) #Radius in mm factor = 45 #Kreismittelpunkt z_offset = 0 if config["RobotTypeName"] == "Hambot": z_offset = 300 #base_target = np.array((170, 90, -30)) r_y = robot.get_joint_by_id(r_end_joint).get_endpoint()[1] l_y = robot.get_joint_by_id(l_end_joint).get_endpoint()[1] r_base_target = np.array((10, r_y, -290 - z_offset)) l_base_target = np.array((10, l_y, -290 - z_offset)) r_chain = task.create_chain(root, r_end_joint, (0, 3), angle_task_joints, ignore_joints) l_chain = task.create_chain(root, l_end_joint, (0, 3), angle_task_joints, ignore_joints) for i in range(10000): #local calculating stuff begin = time.time() current = begin end = begin + iteration_time dt = 0 ## local stuff end while current < end: phase = current / float(iteration_time) * 2 * 3.14159625358 target_diff = np.array((1.5 * factor * (cos(phase)), 0, -factor * (sin(phase))))
from bitbots.robot.kinematics import Robot from bitbots.ipc.ipc import SharedMemoryIPC ipc = SharedMemoryIPC() robot = Robot() robot.update(ipc.get_pose()) if False: """ print 31 print numpy.dot(robot.get_joint_by_id(34).get_chain_matrix(inverse=True) , robot.get_joint_by_id(31).get_chain_matrix() ) print 36 print numpy.dot(robot.get_joint_by_id(34).get_chain_matrix(inverse=True) , robot.get_joint_by_id(36).get_chain_matrix() ) """ print 7 print robot.get_joint_by_id(7).get_chain_matrix() print 9 print robot.get_joint_by_id(9).get_chain_matrix() print 11 print robot.get_joint_by_id(11).get_chain_matrix() print 13 print robot.get_joint_by_id(13).get_chain_matrix() print 15 print robot.get_joint_by_id(15).get_chain_matrix() print 17 print robot.get_joint_by_id(17).get_chain_matrix() print 34 print robot.get_joint_by_id(34).get_chain_matrix() print 19 print robot.get_joint_by_id(19).get_chain_matrix()