Skip to content

Lr-2002/DM_Control_Python

 
 

Repository files navigation

IC ARM Control

A unified motor control interface for IC ARM robotic system supporting multiple motor types including Damiao, High Torque, and Servo motors.

Overview

This project provides a complete workflow for robotic arm control, from basic motor operations to advanced trajectory execution and analysis.

Installation

# Install in development mode
pip install -e .

Complete Workflow

1. Basic ARM Control

The main control interface is provided by IC_ARM.py:

python -c "from ic_arm_control.control.IC_ARM import ICARM; arm = ICARM()"

2. Position Monitoring

Monitor real-time arm positions:

python -m ic_arm_control.tools.position_monitor

3. Set Zero Positions

Calibrate motor zero positions:

python -m ic_arm_control.tools.set_zero_position

4. URDF Generation and Export

Build and export URDF files to the urdfs/ folder:

# URDF files are generated and stored in ./urdfs/ directory

5. MuJoCo Simulation Synchronization

Sync URDF directions with MuJoCo simulation:

python -m ic_arm_control.tools.mujoco_simulation

6. URDF Limit Configuration

Set joint limits in the URDF:

python -m ic_arm_control.tools.urdf_limit_updater

7. Trajectory Generation

Generate test trajectories:

python -m ic_arm_control.tools.trajectory_generator

8. Trajectory Execution

Execute generated trajectories:

python -m ic_arm_control.tools.trajectory_executor

9. Minimum GC Analysis

Analyze minimum geometric constraints:

python -m ic_arm_control.control.utils.minimum_gc

10. GC Flag Support

The IC ARM now supports geometric constraint (GC) flag for advanced control modes.

Project Structure

ic_arm_control/
├── control/           # Core control modules
│   ├── IC_ARM.py     # Main ARM control interface
│   ├── unified_motor_control.py  # Unified motor interface
│   ├── damiao.py     # Damiao motor control
│   ├── ht_motor.py   # High Torque motor control
│   ├── servo_motor.py # Servo motor control
│   └── utils/        # Utility functions
└── tools/            # Tools and utilities
    ├── position_monitor.py
    ├── set_zero_position.py
    ├── mujoco_simulation.py
    ├── urdf_limit_updater.py
    ├── trajectory_generator.py
    ├── trajectory_executor.py
    └── trajectory_analysis.py

Features

  • Unified Motor Control: Support for multiple motor types through a single interface
  • Real-time Monitoring: Position, velocity, and torque monitoring
  • Trajectory Planning: Advanced trajectory generation and execution
  • MuJoCo Integration: Seamless simulation support
  • URDF Support: Complete robot description and configuration
  • Safety Features: Emergency stop and error handling mechanisms

About

Damiao Motor Control Library – A Python library for controlling Damiao motors via CAN. Supports Windows, Linux, and macOS. Flexible control modes and real-time motor status feedback. 达妙电机控制库 – 一个用于通过CAN控制达妙电机的Python库。支持 Windows、Linux 和 macOS。提供灵活的控制模式和实时电机状态反馈。

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages

  • Python 94.9%
  • C++ 5.1%