UNPKG

dynamixel

Version:

Node.js library for controlling DYNAMIXEL servo motors via U2D2 interface with Protocol 2.0 support

77 lines (76 loc) 2.08 kB
/** * Motor Profile System for DYNAMIXEL devices * Provides predefined configurations for different motor models and use cases * Inspired by DynaNode's MotorProfile architecture */ export class MotorProfiles { profiles: Map<any, any>; customProfiles: Map<any, any>; initializeDefaultProfiles(): void; addRobotArmProfile(): void; addWheelRobotProfile(): void; addGripperProfile(): void; /** * Get profile for a motor model */ getProfile(modelName: any): any; /** * Get recommended settings for a motor model and use case */ getRecommendedSettings(modelName: any, useCase?: string): any; /** * Create a custom profile */ createCustomProfile(name: any, profileData: any): void; /** * Get all available profiles */ getAllProfiles(): Map<any, any>; /** * Get profiles by motor series */ getProfilesBySeries(series: any): any[]; /** * Get application profiles */ getApplicationProfiles(): any[]; /** * Validate profile compatibility */ validateProfile(motorModel: any, profileSettings: any): { valid: boolean; errors: string[]; warnings?: undefined; } | { valid: boolean; errors: string[]; warnings: never[]; }; /** * Convert RPM to velocity units for a specific motor */ rpmToVelocityUnits(rpm: any, profile: any): number; /** * Get optimal settings for multi-motor synchronization */ getSynchronizationSettings(motorModels: any): { recommendedVelocity: number; returnDelay: number; statusReturnLevel: number; recommendedUpdateRate: number; } | null; /** * Export profile as JSON */ exportProfile(profileName: any): string | null; /** * Import profile from JSON */ importProfile(name: any, jsonData: any): { success: boolean; error?: undefined; } | { success: boolean; error: any; }; }