0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

“软核”硬做-ODrive(FPGA版本)

OpenFPGA 来源:OpenFPGA 作者:OpenFPGA 2022-04-25 11:16 次阅读

“软核”硬做-ODrive(FPGA版本)

之前稚晖君做了一个《机器人的心脏--超迷你FOC矢量控制驱动器

核心CPU是XX32FXXX,在工业控制领域其实FPGA占比也很大,所以能不能用FPGA做一个ODrive呢?答案是肯定的。

介绍

该项目旨在以低廉的价格准确地驱动无刷电机。目的是使在高性能机器人项目中使用廉价的无刷电机成为可能。像这样:

主要规格

控制两个电机

提供 24V 和 48V 版本。

每个电机的峰值电流 120A。

持续电流取决于散热情况。

用于任意精确运动的编码器反馈。

支持两种制动模式:

制动电阻

再生制动。

可选使用电池,意味着只需适度的电源即可实现非常高的峰值功率输出。

开源:硬件、软件

控制模式

Goto(带轨迹规划的位置控制)

位置命令

速度指令

扭矩指令

接口

USB——自定义协议,开源

PC、树莓派

步进/方向——现有的运动控制器

UART—— Arduino(带库)、mBed等。

伺服 PWM/PPM——RC 接收器、Arduino 等。

CAN -- 基本自定义协议

一些通用数字和模拟引脚

硬件介绍

原理图和PCB使用AD绘制,开源链接:

https://github.com/madcowswe/ODriveHardware/tree/master/v2

原理图TOP:

b4f29b74-c445-11ec-bce3-dac502259ad0.png

核心器件:

FPGA:10M08SAE144

电源:AP1117E33G-13、LM3490IM5-12/NOPB 这是给FPGA供电的,不需要太大电流

MOS:NTMFS4937NT1G

PCB欣赏:

b50d0608-c445-11ec-bce3-dac502259ad0.png

版本勘误表:

编码器(M0、M1)的丝印标签是相反的。

在设计后置放大器滤波器时没有考虑电流放大器的输出阻抗。因此,响应比设计慢约 5 倍。因此,最大允许调制指数约为 50%。

固件

代码地址:

https://github.com/madcowswe/ODriveFPGA

b529182a-c445-11ec-bce3-dac502259ad0.png

EDA工具QUARTUS_VERSION 13.1 ,整体逻辑不是很复杂。

官方网址:

https://odriverobotics.com/

审核编辑 :李倩

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • FPGA
    +关注

    关注

    1602

    文章

    21320

    浏览量

    593158
  • 电机
    +关注

    关注

    139

    文章

    8312

    浏览量

    142070

原文标题:“软核”硬做-ODrive(FPGA版本)

文章出处:【微信号:Open_FPGA,微信公众号:OpenFPGA】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    FPGA硬核与处理器有什么区别和联系?

    FPGA硬核与处理器有什么区别和联系?
    发表于 05-30 20:36

    FPGA和Nios_的语音识别系统的研究

    FPGA和Nios_的语音识别系统的研究引言语音识别的过程是一个模式匹配的过程 在这个过程中,首先根据说话人的语音特点建立语音模型,对输入的语音信号进行分析,并提取所需的语音特征,在此基础上建立
    发表于 08-11 11:47

    FPGA,PCI

    求大神,FPGA内部的PCI的IP核实现PCI接口设计?
    发表于 05-02 16:12

    请教:基于fpga的c语言编程

    我已经搭建好了microblaze,但是用sdk编程却看不懂,请教大侠如何学习在sdk内编程?
    发表于 03-04 17:15

    带DSPFPGA

    有没有带DSPFPGA,要求DSP运行速度在50kHz以上。
    发表于 09-29 18:13

    fpga使用arm核问题

    使用fpga做一个arm的处理器,那么用户程序如何烧到rom里面,fpga又如何能使rom里的程序加载到ram运行呢?对于硬件如何启动软件运行不懂,希望有人能解答一下。
    发表于 03-31 15:31

    FPGA、硬核以及固的概念

    , 节约将近90% 的逻辑资源。 (Soft IP Core) : 在EDA 设计领域指的是综合之前的寄存器传输级(RTL) 模型;具体在F
    发表于 09-03 11:03

    请问FPGA的NIOSII只是一个吗?

    新手学习FPGA有点疑问: 1, 很多教程所谓的NIOSII只是一个吧, 跟我选哪款FPGA处理器没关系吧? 2, 这么说的话我买黑金199块钱的那款板子也完全够用?
    发表于 04-08 09:34

    vivado版本升级后,怎么简单移植

    将程序从低版本的vivado搬移到高版本的vivado的时,直接在高版本的vivado下升级中的各个IP后,在综合过程中报错。在低
    发表于 11-14 20:57

    FPGA结构中硬核和的特点是什么?

    如何根据成本、功耗和性能来选择微处理器?FPGA结构中硬核和的特点是什么?处理器IP有什么重要性?
    发表于 04-08 06:16

    请问FPGA是如何设计的?

    的分类和特点有哪些?在FPGA设计中的分为哪几种?FPGA是如何设计的?
    发表于 04-14 06:25

    怎么判断ODrive是否需要功率耗散电阻?

    怎么判断ODrive是否需要功率耗散电阻?应该选择多大功率的功率耗散电阻?怎么区分我的ODrive是24v版本还是56v版本
    发表于 07-13 07:28

    在Xilinx FPGA上怎样去使用Cortex M1

    在Xilinx FPGA上使用Cortex M1 ——Keil中使用J-Link调试Cortex-M1嵌入式工程本文的软件代码部分参考自ARM提供的例程。
    发表于 12-15 08:36

    fpga如何共用一块flash?

    fpga如何共用一块flash? 目前fpga开发板上只有一个flash,用nuclei 向
    发表于 08-12 06:05

    使用FPGA做一个ODrive

    核心CPU是XX32FXXX,在工业控制领域其实FPGA占比也很大,所以能不能用FPGA做一个ODrive呢?答案是肯定的。
    的头像 发表于 10-20 11:15 416次阅读
    使用<b class='flag-5'>FPGA</b>做一个<b class='flag-5'>ODrive</b>