axis refactor
This commit is contained in:
parent
2c00a21415
commit
695ae8ed1d
4
main.py
4
main.py
|
@ -113,11 +113,11 @@ class MyApp:
|
|||
|
||||
@check_robot_app
|
||||
def get_world_coordinates(self):
|
||||
return self.robot_app.get_world_coordinates()
|
||||
return self.robot_app.world_coordinates
|
||||
|
||||
@check_robot_app
|
||||
def get_axis_coordinates(self):
|
||||
return self.robot_app.get_axis_coordinates()
|
||||
return self.robot_app.axis_coordinates
|
||||
|
||||
@check_robot_app
|
||||
def get_command_count(self):
|
||||
|
|
|
@ -17,8 +17,10 @@ from robot.func import *
|
|||
from robot.prepare_data import PrepareRobotData
|
||||
from robot.urdf_manager import UrdfManager
|
||||
from robot.socket_manager import SocketManager
|
||||
|
||||
# os.environ["LIBGL_ALWAYS_SOFTWARE"] = "1"
|
||||
|
||||
|
||||
class SocketRobotArm:
|
||||
global_speed = 10
|
||||
physical_speed = 10
|
||||
|
@ -31,8 +33,8 @@ class SocketRobotArm:
|
|||
pass_size = 4
|
||||
connected_status = Literal["connected", "not_connected", "error"]
|
||||
|
||||
axis_coordinates = []
|
||||
world_coordinates = []
|
||||
_axis_coordinates = []
|
||||
_world_coordinates = []
|
||||
remote_command_count = []
|
||||
|
||||
command_type = "base"
|
||||
|
@ -90,10 +92,10 @@ class SocketRobotArm:
|
|||
def upd_model_func(self):
|
||||
# logger.info("UPDATE MODEL FUNC")\
|
||||
|
||||
self.get_axis()
|
||||
self.get_coordinates("axis")
|
||||
self.set_text(text=f"Координаты осей {self.axis_coordinates}")
|
||||
|
||||
self.get_world()
|
||||
self.get_coordinates("world")
|
||||
self.set_text(text=f"Мировые координаты {self.world_coordinates}")
|
||||
|
||||
num_joints = p.getNumJoints(self.urdf_manager.body_id)
|
||||
|
@ -174,29 +176,33 @@ class SocketRobotArm:
|
|||
def send_data(self, data):
|
||||
return self.socket_manager.send_data(data)
|
||||
|
||||
def get_axis(self):
|
||||
axis_coord_raw = self.send_data(
|
||||
make_query_data(
|
||||
["axis-0", "axis-1", "axis-2", "axis-3", "axis-4", "axis-5"]
|
||||
)
|
||||
)
|
||||
self.axis_coordinates = [float(i) for i in axis_coord_raw]
|
||||
print("start_axis_coordinates", self.axis_coordinates)
|
||||
def get_coordinates(self, coord_type: Literal["axis", "world"] = "axis"):
|
||||
request = make_query_data([f"{coord_type}-{i}" for i in range(6)])
|
||||
result = self.send_data(request)
|
||||
if not result:
|
||||
return
|
||||
data = [
|
||||
float(i)
|
||||
for i in result
|
||||
]
|
||||
if coord_type == "axis":
|
||||
self._axis_coordinates = data
|
||||
elif coord_type == "world":
|
||||
self._world_coordinates = data
|
||||
|
||||
def get_axis_coordinates(self):
|
||||
return self.axis_coordinates
|
||||
@property
|
||||
def axis_coordinates(self):
|
||||
if not self._axis_coordinates:
|
||||
return [0,0,0,0,0,0]
|
||||
# self.get_coordinates("axis")
|
||||
return self._axis_coordinates
|
||||
|
||||
def get_world(self):
|
||||
world_coord_raw = self.send_data(
|
||||
make_query_data(
|
||||
["world-0", "world-1", "world-2", "world-3", "world-4", "world-5"]
|
||||
)
|
||||
)
|
||||
self.world_coordinates = [float(i) for i in world_coord_raw]
|
||||
print("start_world_coordinates", self.world_coordinates)
|
||||
|
||||
def get_world_coordinates(self):
|
||||
return self.world_coordinates
|
||||
@property
|
||||
def world_coordinates(self):
|
||||
if not self._world_coordinates:
|
||||
return [0,0,0,0,0,0]
|
||||
# self.get_coordinates("world")
|
||||
return self._world_coordinates
|
||||
|
||||
def _get_command_count(self):
|
||||
res = self.send_data(make_query_data(["RemoteCmdLen"]))
|
||||
|
|
|
@ -98,10 +98,9 @@ def handle_client(conn, addr):
|
|||
req = json.loads(data)
|
||||
print(req)
|
||||
res = {"queryData": ["ok"]}
|
||||
if "queryAddr" in req and "axis-0" in req["queryAddr"]:
|
||||
global coordinates_index
|
||||
if "queryAddr" in req and "axis-0" in req["queryAddr"]:
|
||||
print(f"----{coordinates_index}----")
|
||||
c = c_angles[coordinates_index]
|
||||
limit = len(c_angles) - 1
|
||||
# limit = 2
|
||||
if coordinates_index < limit:
|
||||
|
@ -109,6 +108,8 @@ def handle_client(conn, addr):
|
|||
else:
|
||||
coordinates_index = 0
|
||||
|
||||
c = c_angles[coordinates_index]
|
||||
|
||||
if "queryAddr" in req and "axis-0" in req["queryAddr"]:
|
||||
res["queryData"] = c["axis"]
|
||||
|
||||
|
|
Loading…
Reference in New Issue