我的驱动器无法工作odrv0.axis0.error 64

我的驱动器无法正常工作,在电机校准时没有相应动作,也没有听到"哔"的一声,我用示波器测量了一下电机链接线的波形有些异常且只有一个脉冲


我用的驱动芯片是DRV8303,电源12V,没有耗散电阻,GVDD 11V,DVDD和AVDD都是3.3v,我在测量反馈电路时发现SO1和SO2在校准时会有一个较低的脉冲,有些异常

我都是按照说明手册配置的,不知道是哪里的错误,求解答
axis0:
error = 0x0040 (int)
step_dir_active = False (bool)
last_drv_fault = 0 (int)
steps = 0 (int)
current_state = 1 (int)
requested_state = 0 (int)
is_homed = False (bool)
config: …
motor: …
controller: …
encoder: …
acim_estimator: …
sensorless_estimator: …
trap_traj: …
min_endstop: …
max_endstop: …
mechanical_brake: …
task_times: …
watchdog_feed()

Hi! It seems you are using a custom ODrive, since the ODrive v3.6 uses DRV8301 and you are using DRV8303. There’s not much help we can give, if you designed this board yourself then it sounds like there may be an issue with your design.

However, please feel free to send pictures, schematic, and PCB design files, and I can take a quick look :slight_smile:

With error 0x40, you need to also post axis0.motor.error. Can you run dump_errors(odrv0) or dump_errors(dev0) and show the results?


嗨!看来您使用的是自定义 ODrive,因为 ODrive v3.6 使用 DRV8301,而您使用的是 DRV8303。我们无法提供太多帮助,如果您自己设计了此板,则听起来您的设计可能存在问题。

但是,请随时发送图片、原理图和 PCB 设计文件,我可以快速查看 :slight_smile:

对于错误 0x40,您还需要发布 axis0.motor.error。您可以运行 dump_errors(odrv0) 或 dump_errors(dev0) 并显示结果吗?

非常感谢您的回复
这个设计是参考官方版本做的更改,出于成本考虑将DRV8301替换成DRV8303,我不知道这个错误是不是刷错固件版本引起的,或者得对固件代码做出更改才能适应新的器件,尝试运行 dump_errors(odrv0) 或 dump_errors(dev0) 出现如下错误


这是本次实验的项目链接
DRV8303测试版
我在设计板子时没有将电机测量的SN SP作为差分走线,不知是不是这个原因引起的故障
期待您的回复 谢谢