Add 2 versions of test stand #72

Closed
movefasta wants to merge 1 commit from 37-backup into main
movefasta commented 2025-02-27 12:49:30 +03:00 (Migrated from gitlab.com)
  1. Убрал лишние скругления, поверхности и элементы построения из каждой
    детали.
  2. Избавился от дубликатов деталей.
  3. Изменил структуру файлов и папок
  4. Изменил описание папок.

Update README.md

Поправил readme.md

Update README.md

Test-stands progress.

2 versions for 1 and 2 motors.
Parts for GM6208.

Removed unnecessary fillets, surfaces, and construction elements from
each part; Eliminated duplicate parts; Restructured file and folder
organization.

Configure clang tools and update build settings

  • Added .clang-tidy with custom checks to enforce code style.
  • Created .clangd with specific compile flag additions and removals.
  • Updated .gitignore to include new cache, metadata, and configuration
    files.
  • Updated platformio.ini:
    • Bumped Simple FOC to version 2.3.4 and STM32_CAN to version
      1.1.2.
    • Added gen_compile_commands.py as an extra script.

Adjust serial monitor speed and refine motor control logic

  • Changed monitor_speed in platformio.ini from 115200 to 19200
    for compatibility.
  • Initialized MotorControlInputs struct members with default values.
  • Uncommented digital write operations in doMotor for proper
    execution.
  • Disabled debug output and monitoring configurations for cleaner
    operation.
  • Adjusted motor tuning parameters by commenting out specific settings.
  • Changed Serial.begin(115200) to Serial.begin(19200) in setup()
    to match the new monitor speed.
  • Commented out _delay(1000) and current_angle variable to remove
    unnecessary delays and unused code.

Enhance CAN bus scripts with argparse and error handling

  • Improved error handling in python_enable_motor.py by capturing and
    displaying exception details.
  • Ensured proper CAN bus shutdown in python_enable_motor.py with a
    finally block.
  • Refactored python_send_angle.py to accept a command-line argument
    for the target angle instead of looping indefinitely.
  • Refactored python_send_velocity.py to accept a command-line argument
    for target speed and removed infinite loops for better usability.
  • Added send_velocity_impulses.py, a new script to send alternating
    velocity impulses over the CAN bus.

Refactor ROS2 actuator with improved CAN handling and logging

  • Introduced rclcpp::Logger for consistent logging throughout
    RbsServoActuator.
  • Renamed joint state and command variables to hw_joint_angle,
    hw_joint_velocity, hw_joint_target_angle, and
    hw_joint_target_velocity for clarity.
  • Added parameters can_interface and can_node_id, allowing
    configurable CAN interface and node ID.
  • Enhanced CAN initialization and error handling in on_init to
    properly retrieve interface index and bind the socket.
  • Implemented structured CAN message handling:
    • Sends activation command when the actuator is enabled.
    • Reads and logs incoming CAN frames for joint state updates.
    • Ensures error handling for failed read/write operations.
  • Updated URDF (simple_robot.urdf) to include can_interface and
    can_node_id parameters for hardware configuration.

New PID coefficients; remove lega

Closes #37

1. Убрал лишние скругления, поверхности и элементы построения из каждой детали. 2. Избавился от дубликатов деталей. 3. Изменил структуру файлов и папок 4. Изменил описание папок. Update README.md Поправил readme.md Update README.md Test-stands progress. 2 versions for 1 and 2 motors. Parts for GM6208. Removed unnecessary fillets, surfaces, and construction elements from each part; Eliminated duplicate parts; Restructured file and folder organization. Configure clang tools and update build settings - Added `.clang-tidy` with custom checks to enforce code style. - Created `.clangd` with specific compile flag additions and removals. - Updated `.gitignore` to include new cache, metadata, and configuration files. - Updated `platformio.ini`: - Bumped `Simple FOC` to version 2.3.4 and `STM32_CAN` to version 1.1.2. - Added `gen_compile_commands.py` as an extra script. Adjust serial monitor speed and refine motor control logic - Changed `monitor_speed` in `platformio.ini` from `115200` to `19200` for compatibility. - Initialized `MotorControlInputs` struct members with default values. - Uncommented digital write operations in `doMotor` for proper execution. - Disabled debug output and monitoring configurations for cleaner operation. - Adjusted motor tuning parameters by commenting out specific settings. - Changed `Serial.begin(115200)` to `Serial.begin(19200)` in `setup()` to match the new monitor speed. - Commented out `_delay(1000)` and `current_angle` variable to remove unnecessary delays and unused code. Enhance CAN bus scripts with argparse and error handling - Improved error handling in `python_enable_motor.py` by capturing and displaying exception details. - Ensured proper CAN bus shutdown in `python_enable_motor.py` with a `finally` block. - Refactored `python_send_angle.py` to accept a command-line argument for the target angle instead of looping indefinitely. - Refactored `python_send_velocity.py` to accept a command-line argument for target speed and removed infinite loops for better usability. - Added `send_velocity_impulses.py`, a new script to send alternating velocity impulses over the CAN bus. Refactor ROS2 actuator with improved CAN handling and logging - Introduced `rclcpp::Logger` for consistent logging throughout `RbsServoActuator`. - Renamed joint state and command variables to `hw_joint_angle`, `hw_joint_velocity`, `hw_joint_target_angle`, and `hw_joint_target_velocity` for clarity. - Added parameters `can_interface` and `can_node_id`, allowing configurable CAN interface and node ID. - Enhanced CAN initialization and error handling in `on_init` to properly retrieve interface index and bind the socket. - Implemented structured CAN message handling: - Sends activation command when the actuator is enabled. - Reads and logs incoming CAN frames for joint state updates. - Ensures error handling for failed read/write operations. - Updated URDF (`simple_robot.urdf`) to include `can_interface` and `can_node_id` parameters for hardware configuration. New PID coefficients; remove lega Closes #37
movefasta commented 2025-02-27 12:49:30 +03:00 (Migrated from gitlab.com)

assigned to @movefasta

assigned to @movefasta
movefasta commented 2025-02-27 15:47:53 +03:00 (Migrated from gitlab.com)

added 1 commit

  • 0120f0f5 - Add 2 motor versions & test stand

Compare with previous version

added 1 commit <ul><li>0120f0f5 - Add 2 motor versions &amp; test stand</li></ul> [Compare with previous version](/robossembler/servo/-/merge_requests/25/diffs?diff_id=1278691482&start_sha=b4ecabc13bf518562e6b482cdf4be8b0a2b706ec)
movefasta (Migrated from gitlab.com) closed this pull request 2025-02-27 16:02:26 +03:00

Pull request closed

Sign in to join this conversation.
No reviewers
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference: robossembler/servo#72
No description provided.