Makerbase X2212电流环(转矩)配置

该配置基于X2212电机,控制模式为电流环(转矩)模式

主板参数、电机参数、编码器参数配置和位置环控制一样,已配置可直接跳转到控制器配置,没有配置的按以下步骤配置

1. 恢复默认参数

odrv0.erase_configuration() 					

2. 主板参数配置

odrv0.config.brake_resistance = 2.0
odrv0.config.dc_bus_undervoltage_trip_level = 8.0
odrv0.config.dc_bus_overvoltage_trip_level = 56.0
odrv0.config.dc_max_positive_current = 20.0
odrv0.config.dc_max_negative_current = -3.0
odrv0.config.max_regen_current = 0
odrv0.save_configuration()

3. 电机参数配置

odrv0.axis0.motor.config.pole_pairs = 7
odrv0.axis0.motor.config.calibration_current = 5
odrv0.axis0.motor.config.resistance_calib_max_voltage = 2
odrv0.axis0.motor.config.motor_type = MOTOR_TYPE_HIGH_CURRENT
odrv0.axis0.motor.config.current_lim = 15
odrv0.axis0.motor.config.requested_current_range = 20
odrv0.save_configuration()

4. 编码器参数配置

odrv0.axis0.encoder.config.mode = ENCODER_MODE_INCREMENTAL
odrv0.axis0.encoder.config.cpr = 16384
odrv0.axis0.encoder.config.bandwidth = 3000
odrv0.axis0.config.calibration_lockin.current = 5
odrv0.axis0.config.calibration_lockin.ramp_time = 0.4
odrv0.axis0.config.calibration_lockin.ramp_distance = 3.1415927410125732
odrv0.axis0.config.calibration_lockin.accel = 20
odrv0.axis0.config.calibration_lockin.vel = 40
odrv0.save_configuration()

5. 控制器参数配置

配置控制模式为电流环(转矩)模式。

odrv0.axis0.controller.config.control_mode = CONTROL_MODE_TORQUE_CONTROL
odrv0.axis0.controller.config.vel_limit = 50
odrv0.axis0.controller.config.pos_gain = 30
odrv0.axis0.controller.config.vel_gain = 0.02  
odrv0.axis0.controller.config.vel_integrator_gain = 0.2
odrv0.axis0.controller.config.input_mode = INPUT_MODE_PASSTHROUGH 
odrv0.save_configuration()
odrv0.reboot()

6. 测试参数配置

odrv0.axis0.requested_state = AXIS_STATE_MOTOR_CALIBRATION 
odrv0.axis0.motor.config.pre_calibrated = True	
odrv0.axis0.requested_state = AXIS_STATE_ENCODER_OFFSET_CALIBRATION 
odrv0.axis0.config.startup_encoder_offset_calibration = True   
odrv0.axis0.requested_state = AXIS_STATE_CLOSED_LOOP_CONTROL	
odrv0.axis0.config.startup_closed_loop_control = True
odrv0.save_configuration()
odrv0.reboot()  

7. 检查错误

若有错误,请仔细检查输入指令是否有错

dump_errors(odrv0) 

8. 电机控制测试

改变转矩大小,可以用尝试阻挡电机转动,体会转矩的改变

odrv0.axis0.controller.input_torque = 0.1	
odrv0.axis0.controller.input_torque = -0.1
odrv0.axis0.controller.input_torque = 0.01	
odrv0.axis0.controller.input_torque = 1

至此, ODrive 电流环(转矩)控制模式配置完成。

欢迎加入 创客基地 电机控制Q群 讨论电机控制相关问题:732557609

欢迎光临 创客基地 B站 了解技术资料:https://space.bilibili.com/393688975

欢迎光临 创客基地 淘宝店 采购产品:
https://makerbase.taobao.com/

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值