tutrcos
読み取り中…
検索中…
一致する文字列を見つけられません
cybergear.hpp ファイル
#include <array>
#include <cstddef>
#include <cstdint>
#include <cstring>
#include "tutrcos/peripheral/can_base.hpp"
#include "tutrcos/utility.hpp"
#include "encoder_base.hpp"
cybergear.hpp の依存先関係図:

[ソースコード]

クラス

class  tutrcos::module::Cybergear
 
struct  tutrcos::module::Cybergear::MotorStatus
 
struct  tutrcos::module::Cybergear::MotorFault
 
struct  tutrcos::module::Cybergear::MotorParameter
 

名前空間

namespace  tutrcos
 
namespace  tutrcos::module
 

マクロ定義

#define CMD_POSITION   1
 
#define CMD_RESPONSE   2
 
#define CMD_ENABLE   3
 
#define CMD_RESET   4
 
#define CMD_SET_MECH_POSITION_TO_ZERO   6
 
#define CMD_CHANGE_CAN_ID   7
 
#define CMD_RAM_READ   17
 
#define CMD_RAM_WRITE   18
 
#define CMD_GET_MOTOR_FAIL   21
 
#define ADDR_RUN_MODE   0x7005
 
#define ADDR_IQ_REF   0x7006
 
#define ADDR_SPEED_REF   0x700A
 
#define ADDR_LIMIT_TORQUE   0x700B
 
#define ADDR_CURRENT_KP   0x7010
 
#define ADDR_CURRENT_KI   0x7011
 
#define ADDR_CURRENT_FILTER_GAIN   0x7014
 
#define ADDR_LOC_REF   0x7016
 
#define ADDR_LIMIT_SPEED   0x7017
 
#define ADDR_LIMIT_CURRENT   0x7018
 
#define ADDR_MECH_POS   0x7019
 
#define ADDR_IQF   0x701A
 
#define ADDR_MECH_VEL   0x701B
 
#define ADDR_VBUS   0x701C
 
#define ADDR_ROTATION   0x701D
 
#define ADDR_LOC_KP   0x701E
 
#define ADDR_SPD_KP   0x701F
 
#define ADDR_SPD_KI   0x7020
 
#define POS_MIN   -12.5f
 
#define POS_MAX   12.5f
 
#define VEL_MIN   -30.0f
 
#define VEL_MAX   30.0f
 
#define CUR_MIN   -27.0f
 
#define CUR_MAX   27.0f
 
#define TOR_MIN   -12.0f
 
#define TOR_MAX   12.0f
 
#define CURRENT_FILTER_GAIN_MIN   0.0f
 
#define CURRENT_FILTER_GAIN_MAX   1.0f
 
#define CUR_KP_MAX   200.0f
 
#define CUR_KP_MIN   0.0f
 
#define CUR_KI_MAX   200.0f
 
#define CUR_KI_MIN   0.0f
 
#define P_MIN   -12.5f
 
#define P_MAX   12.5f
 
#define V_MIN   -30.0f
 
#define V_MAX   30.0f
 
#define KP_MIN   0.0f
 
#define KP_MAX   500.0f
 
#define KD_MIN   0.0f
 
#define KD_MAX   5.0f
 
#define T_MIN   -12.0f
 
#define T_MAX   12.0f
 
#define IQ_MIN   -27.0f
 
#define IQ_MAX   27.0f
 
#define CURRENT_FILTER_GAIN_MIN   0.0f
 
#define CURRENT_FILTER_GAIN_MAX   1.0f
 
#define DEFAULT_CURRENT_KP   0.125f
 
#define DEFAULT_CURRENT_KI   0.0158f
 
#define DEFAULT_CURRENT_FINTER_GAIN   0.1f
 
#define DEFAULT_POSITION_KP   30.0f
 
#define DEFAULT_VELOCITY_KP   2.0f
 
#define DEFAULT_VELOCITY_KI   0.002f
 
#define DEFAULT_VELOCITY_LIMIT   2.0f
 
#define DEFAULT_CURRENT_LIMIT   27.0f
 
#define DEFAULT_TORQUE_LIMIT   12.0f
 
#define RET_CYBERGEAR_OK   0x00
 
#define RET_CYBERGEAR_MSG_NOT_AVAIL   0x01
 
#define RET_CYBERGEAR_INVALID_CAN_ID   0x02
 
#define RET_CYBERGEAR_INVALID_PACKET   0x03
 
#define CW   1
 
#define CCW   -1
 

マクロ定義詳解

◆ ADDR_CURRENT_FILTER_GAIN

#define ADDR_CURRENT_FILTER_GAIN   0x7014

◆ ADDR_CURRENT_KI

#define ADDR_CURRENT_KI   0x7011

◆ ADDR_CURRENT_KP

#define ADDR_CURRENT_KP   0x7010

◆ ADDR_IQ_REF

#define ADDR_IQ_REF   0x7006

◆ ADDR_IQF

#define ADDR_IQF   0x701A

◆ ADDR_LIMIT_CURRENT

#define ADDR_LIMIT_CURRENT   0x7018

◆ ADDR_LIMIT_SPEED

#define ADDR_LIMIT_SPEED   0x7017

◆ ADDR_LIMIT_TORQUE

#define ADDR_LIMIT_TORQUE   0x700B

◆ ADDR_LOC_KP

#define ADDR_LOC_KP   0x701E

◆ ADDR_LOC_REF

#define ADDR_LOC_REF   0x7016

◆ ADDR_MECH_POS

#define ADDR_MECH_POS   0x7019

◆ ADDR_MECH_VEL

#define ADDR_MECH_VEL   0x701B

◆ ADDR_ROTATION

#define ADDR_ROTATION   0x701D

◆ ADDR_RUN_MODE

#define ADDR_RUN_MODE   0x7005

◆ ADDR_SPD_KI

#define ADDR_SPD_KI   0x7020

◆ ADDR_SPD_KP

#define ADDR_SPD_KP   0x701F

◆ ADDR_SPEED_REF

#define ADDR_SPEED_REF   0x700A

◆ ADDR_VBUS

#define ADDR_VBUS   0x701C

◆ CCW

#define CCW   -1

◆ CMD_CHANGE_CAN_ID

#define CMD_CHANGE_CAN_ID   7

◆ CMD_ENABLE

#define CMD_ENABLE   3

◆ CMD_GET_MOTOR_FAIL

#define CMD_GET_MOTOR_FAIL   21

◆ CMD_POSITION

#define CMD_POSITION   1

◆ CMD_RAM_READ

#define CMD_RAM_READ   17

◆ CMD_RAM_WRITE

#define CMD_RAM_WRITE   18

◆ CMD_RESET

#define CMD_RESET   4

◆ CMD_RESPONSE

#define CMD_RESPONSE   2

◆ CMD_SET_MECH_POSITION_TO_ZERO

#define CMD_SET_MECH_POSITION_TO_ZERO   6

◆ CUR_KI_MAX

#define CUR_KI_MAX   200.0f

◆ CUR_KI_MIN

#define CUR_KI_MIN   0.0f

◆ CUR_KP_MAX

#define CUR_KP_MAX   200.0f

◆ CUR_KP_MIN

#define CUR_KP_MIN   0.0f

◆ CUR_MAX

#define CUR_MAX   27.0f

◆ CUR_MIN

#define CUR_MIN   -27.0f

◆ CURRENT_FILTER_GAIN_MAX [1/2]

#define CURRENT_FILTER_GAIN_MAX   1.0f

◆ CURRENT_FILTER_GAIN_MAX [2/2]

#define CURRENT_FILTER_GAIN_MAX   1.0f

◆ CURRENT_FILTER_GAIN_MIN [1/2]

#define CURRENT_FILTER_GAIN_MIN   0.0f

◆ CURRENT_FILTER_GAIN_MIN [2/2]

#define CURRENT_FILTER_GAIN_MIN   0.0f

◆ CW

#define CW   1

◆ DEFAULT_CURRENT_FINTER_GAIN

#define DEFAULT_CURRENT_FINTER_GAIN   0.1f

◆ DEFAULT_CURRENT_KI

#define DEFAULT_CURRENT_KI   0.0158f

◆ DEFAULT_CURRENT_KP

#define DEFAULT_CURRENT_KP   0.125f

◆ DEFAULT_CURRENT_LIMIT

#define DEFAULT_CURRENT_LIMIT   27.0f

◆ DEFAULT_POSITION_KP

#define DEFAULT_POSITION_KP   30.0f

◆ DEFAULT_TORQUE_LIMIT

#define DEFAULT_TORQUE_LIMIT   12.0f

◆ DEFAULT_VELOCITY_KI

#define DEFAULT_VELOCITY_KI   0.002f

◆ DEFAULT_VELOCITY_KP

#define DEFAULT_VELOCITY_KP   2.0f

◆ DEFAULT_VELOCITY_LIMIT

#define DEFAULT_VELOCITY_LIMIT   2.0f

◆ IQ_MAX

#define IQ_MAX   27.0f

◆ IQ_MIN

#define IQ_MIN   -27.0f

◆ KD_MAX

#define KD_MAX   5.0f

◆ KD_MIN

#define KD_MIN   0.0f

◆ KP_MAX

#define KP_MAX   500.0f

◆ KP_MIN

#define KP_MIN   0.0f

◆ P_MAX

#define P_MAX   12.5f

◆ P_MIN

#define P_MIN   -12.5f

◆ POS_MAX

#define POS_MAX   12.5f

◆ POS_MIN

#define POS_MIN   -12.5f

◆ RET_CYBERGEAR_INVALID_CAN_ID

#define RET_CYBERGEAR_INVALID_CAN_ID   0x02

◆ RET_CYBERGEAR_INVALID_PACKET

#define RET_CYBERGEAR_INVALID_PACKET   0x03

◆ RET_CYBERGEAR_MSG_NOT_AVAIL

#define RET_CYBERGEAR_MSG_NOT_AVAIL   0x01

◆ RET_CYBERGEAR_OK

#define RET_CYBERGEAR_OK   0x00

◆ T_MAX

#define T_MAX   12.0f

◆ T_MIN

#define T_MIN   -12.0f

◆ TOR_MAX

#define TOR_MAX   12.0f

◆ TOR_MIN

#define TOR_MIN   -12.0f

◆ V_MAX

#define V_MAX   30.0f

◆ V_MIN

#define V_MIN   -30.0f

◆ VEL_MAX

#define VEL_MAX   30.0f

◆ VEL_MIN

#define VEL_MIN   -30.0f