support arm_left_right_select

This commit is contained in:
2025-11-24 09:01:34 +08:00
parent 5dcb7f65a1
commit fa86790ab1

View File

@@ -519,6 +519,7 @@ def build_ui(node: CtrlGuiNode) -> None:
#move arm
with ui.column():
arm_mode_select = ui.select(['MoveJ', 'MoveP'], value='MoveJ').style('width: 100px')
arm_left_right_select = ui.select(['Left Arm', 'Right Arm', 'Both Arm'], value='Both Arm').style('width: 100px')
with ui.column():
arm_inputs_container = ui.column()
@@ -544,25 +545,34 @@ def build_ui(node: CtrlGuiNode) -> None:
# Update inputs when select value changes
arm_mode_select.on('update:model-value', lambda e: update_arm_inputs())
def move_arm_() -> None:
node.file_logger.info('Running move_arm_...')
action_name = "Arm"
if arm_mode_select.value == 'MoveJ':
data_type = 2
data_length = 12
elif arm_mode_select.value == 'MoveP':
data_type = 3
data_length = 14
with ui.column():
def move_arm_() -> None:
node.file_logger.info('Running move_arm_...')
action_name = "Arm"
text = f"body_id: 2\ndata_type: {data_type}\ndata_length: {data_length}\ncommand_id: 0\nframe_time_stamp: {node.get_clock().now().to_msg().sec}\ndata_array: [{arm_inputs['left'].value}, {arm_inputs['right'].value}]\n"
# send_action_package(action_name, text)
rebuild_now("Remote", action_name, text)
if arm_mode_select.value == 'MoveJ':
data_type = 2
data_length = 12
elif arm_mode_select.value == 'MoveP':
data_type = 3
data_length = 14
ui.button('Arm Control', on_click=lambda: show_confirm_dialog(
f'Confirm Move Arm operation?\nMove: {arm_mode_select.value}\nleft_arm_params: {arm_inputs["left"].value}\nright_arm_params: {arm_inputs["right"].value}\n',
move_arm_
)).classes('self-end')
if arm_left_right_select.value == 'Left Arm':
left_right_select = 0
elif arm_left_right_select.value == 'Right Arm':
left_right_select = 1
elif arm_left_right_select.value == 'Both Arm':
left_right_select = 2
text = f"body_id: {left_right_select}\ndata_type: {data_type}\ndata_length: {data_length}\ncommand_id: 0\nframe_time_stamp: {node.get_clock().now().to_msg().sec}\ndata_array: [{arm_inputs['left'].value}, {arm_inputs['right'].value}]\n"
# send_action_package(action_name, text)
rebuild_now("Remote", action_name, text)
ui.button('Arm Control', on_click=lambda: show_confirm_dialog(
f'Confirm Move {arm_left_right_select.value} operation?\nMove: {arm_mode_select.value}\nleft_arm_params: {arm_inputs["left"].value}\nright_arm_params: {arm_inputs["right"].value}\n',
move_arm_
)).classes('self-end')
# Add statistics display
# ui.separator()