mirror of
				https://github.com/goldenfishs/MRobot.git
				synced 2025-11-04 05:23:10 +08:00 
			
		
		
		
	
		
			
				
	
	
		
			69 lines
		
	
	
		
			1.7 KiB
		
	
	
	
		
			C
		
	
	
	
	
	
			
		
		
	
	
			69 lines
		
	
	
		
			1.7 KiB
		
	
	
	
		
			C
		
	
	
	
	
	
#pragma once
 | 
						|
 | 
						|
#ifdef __cplusplus
 | 
						|
extern "C" {
 | 
						|
#endif
 | 
						|
 | 
						|
/* Includes ----------------------------------------------------------------- */
 | 
						|
#include "device/device.h"
 | 
						|
 | 
						|
/* USER INCLUDE BEGIN */
 | 
						|
 | 
						|
/* USER INCLUDE END */
 | 
						|
 | 
						|
/* USER DEFINE BEGIN */
 | 
						|
 | 
						|
/* USER DEFINE END */
 | 
						|
 | 
						|
/* Exported constants ------------------------------------------------------- */
 | 
						|
/* Exported macro ----------------------------------------------------------- */
 | 
						|
/* Exported types ----------------------------------------------------------- */
 | 
						|
typedef struct {
 | 
						|
    float rotor_abs_angle; /* 转子绝对角度 */
 | 
						|
    float rotor_speed; /* 实际转子转速 */
 | 
						|
    float torque_current; /* 转矩电流 */
 | 
						|
    float temp; /* 温度 */
 | 
						|
} MOTOR_Feedback_t;
 | 
						|
 | 
						|
/**
 | 
						|
 * @brief mit电机输出参数结构体
 | 
						|
 */
 | 
						|
typedef struct {
 | 
						|
    float torque;      /* 目标力矩 */
 | 
						|
    float velocity;    /* 目标速度 */
 | 
						|
    float angle;       /* 目标位置 */
 | 
						|
    float kp;         /* 位置环增益 */
 | 
						|
    float kd;         /* 速度环增益 */
 | 
						|
} MOTOR_MIT_Output_t;
 | 
						|
 | 
						|
/**
 | 
						|
 * @brief 转矩电流控制模式参数结构体
 | 
						|
 */
 | 
						|
typedef struct {
 | 
						|
    float current;    /* 目标电流 */
 | 
						|
} MOTOR_Current_Output_t;
 | 
						|
 | 
						|
typedef struct {
 | 
						|
    DEVICE_Header_t header;
 | 
						|
    bool reverse; /* 是否反装 true表示反装 */
 | 
						|
    MOTOR_Feedback_t feedback;
 | 
						|
} MOTOR_t;
 | 
						|
 | 
						|
/* USER STRUCT BEGIN */
 | 
						|
 | 
						|
/* USER STRUCT END */
 | 
						|
 | 
						|
/* Exported functions prototypes -------------------------------------------- */
 | 
						|
float MOTOR_GetRotorAbsAngle(const MOTOR_t *motor);
 | 
						|
float MOTOR_GetRotorSpeed(const MOTOR_t *motor);
 | 
						|
float MOTOR_GetTorqueCurrent(const MOTOR_t *motor);
 | 
						|
float MOTOR_GetTemp(const MOTOR_t *motor);
 | 
						|
 | 
						|
/* USER FUNCTION BEGIN */
 | 
						|
 | 
						|
/* USER FUNCTION END */
 | 
						|
 | 
						|
#ifdef __cplusplus
 | 
						|
}
 | 
						|
#endif
 |