当前位置: 首页 > article >正文

ODrive电机驱动算法VScode环境配置笔记教程

1、ODrive基本介绍

        ODrive 是一个开源的优秀电机控制器项目,旨在为各种应用提供高性能、高可靠性的电机控制解决方案。这个项目是专门用于驱动无刷直流电机(BLDC)永磁同步电机(PMSM)的高性能开源伺服控制系统。ODrive电机驱动器主要面向的是那些需要精密控制电机的应用领域,例如机器人技术、3D打印、数控机床(CNC)等。

        Orive提供了磁场定向控制(FOC)空间矢量脉宽调制(SVPWM)算法。基于上述的算法,ODrive实现了精确的速度和位置控制,确保电机运行的平稳性和准确性。并且ODrive也集成了多种通信协议,如 UART、SPI、I2C 和 USB,方便与上位机或其他控制器进行数据交换。开发者可以根据自己的需要,对ODrive进行适配。

2、ODrive配置工具安装

①、python3

        进入python官网,下载python3

Welcome to Python.orgicon-default.png?t=O83Ahttps://www.python.org/

        下载完成后,和普通的应用程序一样,点击运行安装python3即可。

        安装完成后,需要安装ODrive源码编译时,所需要的插件:

        pip install PyYAML Jinja2 jsonschema

        注意:这几个python的插件一定要安装,否则在编译ODrive源码时,会有各种错误提示。

②、Git

        在对ODrive编译时,需要用到Git的bash终端,因此需要下载安装Git。

        进入Git官网,下载Git for Windows

Git - Downloads (git-scm.com)icon-default.png?t=O83Ahttps://git-scm.com/downloads

        然后点击下载的exe文件,根据需求配置,或者直接系统默认安装即可。

        git bash终端如下图所示。

③、VScode

        进入VScode官网,下载VScode:

Visual Studio Code - Code Editing. Redefinedicon-default.png?t=O83Ahttps://code.visualstudio.com/

        下载完毕后,点击exe文件,直接安装即可。

④、MingGW64

        MinGW64的安装,在前面写的一篇博客文章中,已经作出了非常详细的讲解,如有需要,可以浏览如下博客内容:

MinGW编译器任意版本使用配置经验教程-CSDN博客icon-default.png?t=O83Ahttps://blog.csdn.net/weixin_49337111/article/details/140274770?spm=1001.2014.3001.5502

        提醒:MinGW64需要被添加到环境变量中

⑤、OpenOCD

        OpenOCD(Open On-Chip Debugger)是一个开源的片上调试器,旨在提供针对嵌入式设备的调试、系统编程和边界扫描功能。它通过调试仿真器辅助完成这些功能,调试仿真器是一个提供调试目标电信号的小型硬件单元。

Open On-Chip Debugger (openocd.org)icon-default.png?t=O83Ahttps://openocd.org/

Release latest · openocd-org/openocd · GitHubicon-default.png?t=O83Ahttps://github.com/openocd-org/openocd/releases/tag/latest

        跳转到OpenOCD的仓库地址后,选择需要的windows的版本下载。

        提醒:OpenOCD需要被添加到环境变量中

        将解压出来OpenOCD中的bin文件路径复制,并添加到环境变量中,然后确定保持即可。

        在终端中,输入openocd --version即可查看是否安装成功及安装的版本信息。

⑥、TUP

        Tup是一个基于文件的构建系统,适用于Linux、OSX和Windows。它输入一个文件更改列表和一个有向无环图(DAG),然后处理DAG以执行更新依赖文件所需的适当命令。

在ODrive的源码中,依赖了Tup构建了工程,因此需要下载配置TUP。

tup | Home (gittup.org)icon-default.png?t=O83Ahttps://gittup.org/tup/

        提醒:TUP需要被添加到环境变量中

        将解压出来的TUP文件路径复制,并添加到环境变量中,操作方式同上。

        在终端中,输入tup --version即可查看是否安装成功及安装的版本信息。

⑦、GNU MCU Eclipse

        GNU MCU Eclipse是一个基于Eclipse平台的插件,专为微控制器(MCU)和微处理器(MPU)的嵌入式系统开发设计。它通过集成GNU编译器、调试器和其他工具,为开发者提供了一个强大的开发环境,支持多种MCU系列,如ARM Cortex-M系列等。

        GNU MCU Eclipse Build Tools是一组用于构建和打包嵌入式软件项目的工具集,它是GNU MCU Eclipse插件的一部分,旨在简化和标准化嵌入式软件开发流程。

GNU MCU Eclipse Windows Build Tools v2.12 20190422 released (gnu-mcu-eclipse.github.io)icon-default.png?t=O83Ahttps://gnu-mcu-eclipse.github.io/blog/2019/04/22/windows-build-tools-v2-12-20190422-released/

        提醒:GNU MCU Eclipse需要被添加到环境变量中

        将解压出来的GNU MCU Eclipse文件的bin路径复制,并添加到环境变量中,操作方式同上。

⑧、GUN ARM Embedded Toolchain

        GUN ARM Embedded Toolchain是一套用于ARM架构嵌入式系统的综合性工具链。主要用于交叉编译ODrive设备的STM32代码。

        提醒:GUN ARM Embedded Toolchain需要被添加到环境变量中

        将解压出来的GUN ARM Embedded Toolchain文件的bin路径复制,并添加到环境变量中,操作方式同上。

        在终端中,输入arm-none-eabi-gcc --version、arm-none-eabi-gdb --version即可查看是否安装成功及安装的版本信息。

⑨、ST-Link

        ST-Link驱动是在使用ST-Link连接设备下载程序到STM32设备中时需要使用的。可访问ST官网下载,或使用开发板厂商提供的资料安装,资料较多,本文不过多描述。

在上述的所有工具软件安装完成后,环境变量中,应该有如下几个新增加的信息。

3、VScode配置

①、插件安装

        打开VSCode,在插件安装页面,分别查找安装以下几个主要的插件,并安装即可。

        (1)C/C++

        (2)Cortex-Debug

        (3)Include Autocomplete

        (4)Path Autocomplete

        (5)Auto Comment Blocks

②、终端修改

        修改VSCode终端为Git Bash

        修改完成后,关闭重新打开的终端如下图所示。

4、ODrive源码编译

①、源码下载

        访问ODrive官方的仓库:

GitHub - odriverobotics/ODrive: High performance motor controlicon-default.png?t=O83Ahttps://github.com/odriverobotics/ODrive

        根据需要切换到所需的代码版本后,打包下载即可。

②、源码编译

        解压打开下载的ODrive程序源码后,点击ODrive_Workspace.code-workspace文件,即可打开整个ODrive的VSCode工程。

        点击firmware文件夹,修改tup.config.default文件名为tup.config,然后将文件内容修改如下所示:

# Copy this file to tup.config and adapt it to your needs
# make sure this fits your board
CONFIG_BOARD_VERSION=v3.6-56V
CONFIG_USB_PROTOCOL=native
CONFIG_UART_PROTOCOL=ascii
CONFIG_DEBUG=false
CONFIG_DOCTEST=false

# Uncomment this to error on compilation warnings
#CONFIG_STRICT=true

        打开VSCode终端,选择Firmware文件夹,然后终端中输入make -j4编译工程源码。

        如果编译过程中,有提示git相关信息,可以输入git init配置一下当前工程,即可清除掉git相关的提示信息。

        注意:如果输入make -j4,出现错误,或者没有任何作用,可以尝试关闭VSCode后,再次打开工程编译。


http://www.kler.cn/news/313967.html

相关文章:

  • Java | Leetcode Java题解之第412题Fizz Buzz
  • Apache doris手动部署时报错“Please disable swap memory before installation.“
  • Web 服务器介绍 | 通过 Tomcat 说明其作用
  • 华为摄像机/NVR主动注册协议接入SVMSP平台
  • pytorch入门(2)——TensorBoard的使用
  • Python利用PyInstaller封装EXE文件
  • 2024“华为杯”中国研究生数学建模竞赛(E题)深度剖析_数学建模完整过程+详细思路+代码全解析
  • Mysql实战
  • RNN的反向传播
  • 经典sql题(九)SQL 查询详细指南总结二
  • MySQL中的LIMIT与ORDER BY关键字详解
  • git 推送文件
  • vue3 ant-design 4.x 表格动态行样式设置
  • Tomcat服务器—Windows下载配置详细教程
  • Sui Builder House锦集,原生USDC和CCTP即将登陆Sui
  • 【HTTP】请求“报头”,Referer 和 Cookie
  • (CS231n课程笔记)深度学习之损失函数详解(SVM loss,Softmax,熵,交叉熵,KL散度)
  • 大批量查询方案简记(Mybatis流式查询)
  • Docker_启动redis,容易一启动就停掉
  • 使用Python实现深度学习模型:智能旅游路线规划
  • Base 社区见面会 | 新加坡站
  • 多层感知机paddle
  • 【nginx】搭配okhttp 配置反向代理
  • nvidia-docker Failed to initialize NVML: Unknown Error
  • 【漏洞复现】泛微OA E-Office jx2_config.ini 敏感信息泄漏漏洞
  • 在线查看 Android 系统源代码 Android Code Search
  • leetcode49字母异位词分组
  • 深度解析 MintRich 独特的价格曲线机制玩法
  • OpenGL 原生库5 变换
  • 从拥堵到畅通:HTTP/2 如何解决 Web 性能瓶颈?