fix(arm): also negate motor direction for reversed J1 motor
Previous +290 fix handled static position mapping but motion direction was still reversed. Correct formula: motor = -height - 290. This handles both: position endpoints (height -290/-0 maps correctly) AND motion direction (increasing height now moves arm up instead of down). Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-openagent) Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai>
This commit is contained in:
@@ -128,7 +128,7 @@ class ArmJointState:
|
|||||||
def to_udp_message(self) -> bytes:
|
def to_udp_message(self) -> bytes:
|
||||||
"""转换为 UDP 消息"""
|
"""转换为 UDP 消息"""
|
||||||
return (
|
return (
|
||||||
f"JXB:{self.height + 290}:{self.j2}:{self.j3}:{self.j4}:"
|
f"JXB:{-self.height - 290}:{self.j2}:{self.j3}:{self.j4}:"
|
||||||
f"{self.j5}:{self.j6}:0:0:EZHY\n"
|
f"{self.j5}:{self.j6}:0:0:EZHY\n"
|
||||||
).encode("utf-8")
|
).encode("utf-8")
|
||||||
|
|
||||||
|
|||||||
@@ -310,7 +310,7 @@ class KeyboardUdpControlNode(Node):
|
|||||||
def build_arm_cmd(self):
|
def build_arm_cmd(self):
|
||||||
joints = self.arm_joints
|
joints = self.arm_joints
|
||||||
return (
|
return (
|
||||||
f"JXB:{self.arm_height + 290}:"
|
f"JXB:{-self.arm_height - 290}:"
|
||||||
f"{joints[0]}:{joints[1]}:{joints[2]}:"
|
f"{joints[0]}:{joints[1]}:{joints[2]}:"
|
||||||
f"{joints[3]}:{joints[4]}:0:0:EZHY\n"
|
f"{joints[3]}:{joints[4]}:0:0:EZHY\n"
|
||||||
).encode()
|
).encode()
|
||||||
|
|||||||
Reference in New Issue
Block a user