AuroraFOC使用指南一(STM32F405双路FOC)

一. 简介

哈喽,感谢各位选择AuroraFOC开发板,在这里将对其进行一个详细的介绍,方便大家使用。并且对提供的工程文件和上位机的操作也进行了详细的说明。

有什么疑问或者好的建议 可以微信联系: WU1356742146

最后再次感谢大家的支持。

请添加图片描述

AuroraFOC 开发板功能展示啦(含开源仓库介绍)

二. 开发板详细参数

  1. 电源供电: 7.4-14V

  2. 主控: STM32F405RGT6,64pin,主频168M,1M FLASH,192KB RAM

  3. 电机驱动: 使用FD6288作为驱动芯片,使用SED3080M 30V80A 83W作为驱动NCMOS,PCB最大电流建议控制在10A内,避免温升过大,可以同时驱动两路无刷电机,提供两种电机接口:MR30(大功率,航模电机)和SH1.0(小功率,云台电机)

  4. 电流采样: 使用INA240A2作为采样芯片,两相采样,放大倍数为50,采样电阻使用的是0.007R,最大采样电流为4.7A

  5. 电机编码器: 两路支持SPI/IIC接口的磁编码器,默认支持AS5047P编码器,

  6. 外部存储: 128 Mbit flash

  7. 其余模块: 1.47寸 LCD屏幕,MPU6050,CAN通讯,NRF24L01 2.4G,USB , 两个LED灯,旋转编码器按键

二. 字体下载

大家拿到AuroraFOC开发板的时候,里面是下载好了工程固件的,但是一些相关的资源可能没有下载,例如开机动画、字体文件和待机图片,其中开机动画和待机图片有无是不影响正常使用的,所以上电后的第一件事就需要下载字体文件。

1. 获取(制作)字体

我会给大家提供默认的三种大小的字体文件(微信私发),另外如果大家想制作自己的字体文件,可以在b站上看相关的视频。

请添加图片描述

2. STM32固件修改

第一次下载字体文件的时候,需要先将工程文件中LCD_thread线程里面的开机启动函数给注释掉,避免加载字体出现错误导致程序卡死。

请添加图片描述

3.上位机下载

使用我提供的上位机可以非常方便的将字体文件下载到开发板上去。

  1. 选择串口并且连接
  2. 将操作模式选择为文件模式
  3. 将设置里面的数据包大小为64,包间隔为30ms
  4. 选择字体大小和对应的字体路径,注意路径不要有中文
  5. 点击更新
  6. 等待下载完成

请添加图片描述

至此字体文件就顺利下载到开发板上去了,取消刚刚注释掉的开机启动函数,重新下载固件即可。

三.图片下载

图片下载和字体下载类似,而且比字体文件更新要方便的多。

  1. 准备好图片,图片类型为jpg,大小为320*172,并且全部放到一个文件夹下(开机动画和休眠图片分开存放),开机动画最多支持66张图片,休眠图片最多支持9张图片,开机动画可以使用我提供的python脚本将mp4转为一张张符合大小的图片。
  2. 选择对应的文件夹
  3. 将设置里面的数据包大小为64,包间隔为30ms
  4. 点击对应的更新
  5. 等待发送完成

四. LCD 主界面介绍

开机动画完成后,LCD会进入主页面的一个显示,一共有四个选项可以选择:

  1. 模式选择: 校准电机 和 选择电机运行模式

  2. 波形显示: 将电机运行过程中的数据,使用波形的方式呈现出来

  3. 详细信息: 将电机运行过程中的数据,以文本的方式呈现出来

  4. 显示待机: 显示待机图片

请添加图片描述

通过旋转按钮左右旋转可以切换不同的选项,单击可以进入对应的选项页面,如果是双击的话,那么将会重启。

1. 模式选择

在模式选择界面中,可以通过旋转按钮只有旋转切换电机的运行模式: 暂停(默认),开环,电流环,速度环和位置环,正下方会有一个红色标识,指示当前操作的电机(默认为左电机,通过单击可以切换操作的电机。另外在第一次上电的时候,需要先对电机进行一个校准,用于电角度和机械角度对其,如果没有对齐的话,电机可能会无法正常旋转,大家可以在此界面长按旋转按钮,便会自动进行电机校准。

双击 即可返回主界面,电机运行模式保持。电机三环控制的PID参数需要通过上位机进行设置

请添加图片描述

2. 波形显示

在波形显示的界面中,如果对应的电机处于非暂停状态,那么界面就会显示对应的波形,通过左右旋转旋转按钮,可以切换波形显示的类型,总共支持的波形显示类型有如下几种: 三相的占空比,三相电流,IqId轴电流,IalphaIbeta轴电流,电机的机械角度。

双击 即可返回主界面,波形显示的最大值和最小值需要通过上位机进行设置

请添加图片描述

3. 详细信息

在详细信息界面中,可以实时显示电机的Uq,电流,速度和位置的值,以及在对应环下的一个期望值。

双击 即可返回主界面。

请添加图片描述

4. 显示待机界面

在显示待机界面中,显示的一张张待机图片,左右旋转按钮可以切换图片

双击 即可返回主界面。显示的图片需要通过上位机更新。

请添加图片描述

​

五. 上位机介绍

待定

六. CAN功能使用

待定

七. NRF24L01 无限模块使用

待定

八. USB HID使用

待定

九. BootLoader使用

待定


以上部分会随着开发的过程而更新

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如若转载,请注明出处:http://www.tpcf.cn/bicheng/12259.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

SpringBoot实现 QQ邮箱验证码

SpringBoot实现 QQ邮箱验证码 文章目录 SpringBoot实现 QQ邮箱验证码一、开通SMTP校验码1.登录qq邮箱2.开启SMTP服务3.发送手机短信4.得到授权码 二、回到spring项目中1.导入所需依赖2.验证码工具类3.具体实现逻辑(serviceimpl) 三、测试qq邮箱验证码 一、开通SMTP校验码 1.登…

数据不平衡:使用其他机器学习方案,修改算法

数据不平衡: 神经网络在面对不均衡数据时,是束手无策的。有些机器学习方法,像决策树就不会受到不均衡数据的影响。 修改算法: 梨是多数派,需要调整门槛位置,使得更偏向于苹果。只有非常置信的时候&#x…

15-ps命令

常用选项 aux axjf a:显示一个终端所有的进程u:显示进程的归属用户及内存使用情况x:显示没有关联控制终端j:显示进程归属的进程组idf:以ASCII码的形式显示出进程的层次关系 ps aux其中| more是只显示一部分内容&…

iOS——runtime

什么是runtime 我们都知道,将源代码转换为可执行的程序,通常要经过三个步骤:编译、链接、运行。 C 语言 作为一门静态类语言,在编译阶段就已经确定了所有变量的数据类型,同时也确定好了要调用的函数,以及函…

如何通过ETL工具对数据进行去重

在数据处理流程中,数据去重是一个至关重要的环节,它能够确保数据分析的准确性和效率。ETL(Extract, Transform, Load)工具作为数据集成的重要组成部分,提供了强大的功能来帮助用户实现数据的抽取、转换和加载&#xff…

sudo -u postgres -i 和 psql -U postgres 啥差别

sudo -u postgres -i 和 psql -U postgres 这两个命令在 Ubuntu 或其他 Linux 系统中用于与 PostgreSQL 数据库交互,但它们的作用和用途有所不同。 sudo -u postgres -i 这个命令使用 sudo 来以 postgres 用户的身份启动一个交互式 shell。-u postgres 指定了要使…

数据结构第一次实验

删除进程未完成 代码&#xff1a; #include "stdio.h" #include <stdlib.h> #include <conio.h> #define getpch(type) (type*)malloc(sizeof(type)) #define NULL 0// PCB struct pcb{// char name[10];// char state;// int super;int ntime;int …

(第17天)【leetcode题解】232、用栈实现队列 225、用队列实现栈

目录 232、用栈实现队列题目描述思路代码 225、用队列实现栈题目描述思路代码 232、用栈实现队列 题目描述 请你仅使用两个栈实现先入先出队列。队列应当支持一般队列支持的所有操作&#xff08;push、pop、peek、empty&#xff09;&#xff1a; 实现 MyQueue 类&#xff1a;…

高级查询(一)

解决需求&#xff1a;Excel都可以轻松搞定 分组查询原理&#xff1a; 语法&#xff1a; SELECT …<列名> FROM <表名> [WHERE<条件表达式> ] GROUP BY 参与分组的列 可以与 聚合函数作用的列 一块显示 注意 SELECT列表中只能包含&#xff1a; 1、被分…

算法-卡尔曼滤波之卡尔曼滤波的其他三个方程

一维不带噪声的卡尔曼滤波方程有五个&#xff0c;下面分析剩余的三个方程&#xff1a; 分析第一个例子&#xff0c;其中测量值和真实值之间的误差属于测量误差&#xff08;使用准确性来描述&#xff09;&#xff0c;由于测量误差是随机的&#xff0c;我们可以使用方差来描述&am…

k8s、helm删除不掉资源问题处理

1.k8s删除不掉资源处理 k8s 删除资源&#xff08;这里的资源包括pod、namespace、sevice、clusterrole、clusterrolebinding等k8s所有资源&#xff09;一直Terminating&#xff0c;卡死一直删不掉 使用强制删除 kubectl delete ns --force --grace-perod0 依然报&#xff1…

Nginx 代理 MySQL 实现通过域名连接数据库

文章目录 Nginx 模块介绍Stream 模块配置远程连接 MySQLDataGrip 连接 MySQL Nginx 安装这里不做介绍。域名默认已经解析到服务器公网IP。 Nginx 模块介绍 HTTP 模块&#xff1a; HTTP模块提供了处理HTTP请求的功能&#xff0c;包括反向代理、负载均衡、缓存、HTTP代理等。 例…

搜索整个文件夹的所有日志

grep request * 这里的*就是全部文件 grep -e A -e b" * grep -rine "关键字"

遇到难题 暗区突围掉宝Twitch绑定关联账号显示404

Twitch作为一个广受欢迎的直播平台&#xff0c;经常会举办各种与游戏相关的互动活动&#xff0c;如“掉宝活动”&#xff0c;其中就包括了与《暗区突围》的合作。这类活动允许观众在观看指定的Twitch直播时&#xff0c;通过将他们的Twitch账号与《暗区突围》游戏账号绑定&#…

(二刷)代码随想录第6天|242.有效的字母异位词、349.两个数组的交集

242.有效的字母异位词 242. 有效的字母异位词 - 力扣&#xff08;LeetCode&#xff09; 代码随想录 (programmercarl.com) 学透哈希表&#xff0c;数组使用有技巧&#xff01;Leetcode&#xff1a;242.有效的字母异位词_哔哩哔哩_bilibili 给定两个字符串 s 和 t &#xff…

QML开发经验之启动方式-文件路径-屏幕适配

文章目录 QML启动方式文件路径多分辨率适配图片适配文字适配背景适配在QML开发的过程中有很多知识点和小技巧看似不起眼,但是如果没能掌握会对开发进度和产品效果产生极大的影响。这里就介绍一下常用的三个知识点,分别是:1.QML启动方式 2.文件地址的访问方式 3.如何适配各种尺…

使用Pyramid、Mako和PyJade生成 HTML

Pyramid 是一个流行的 Python Web 框架&#xff0c;而 Mako 和 PyJade 是用于模板引擎的工具&#xff0c;它们可以与 Pyramid 配合使用来生成 HTML 内容。但是在实际使用中还是有些差别的&#xff0c;尤其会遇到各种各样的问题&#xff0c;下面我将利用我所学的知识一一为大家解…

Vue3组件库开发项目实战——03封装Button组件/输出vitePress文档

Vue3组件库开发项目实战——01组件开发必备知识导学-CSDN博客 Vue3组件库开发项目实战——02项目搭建&#xff08;配置Eslint/Prettier/Sass/Tailwind CSS/VitePress/Vitest&#xff09;-CSDN博客 在前面两篇博客中&#xff0c;我分别介绍了组件库开发必学知识&#xff0c;以及…

免费pr相册模板mogrt|手机壁纸AI绘画摄影作品照片展示模板视频素材

pr相册模板mogrt&#xff0c;手机壁纸、电脑桌面壁纸、AI绘画、摄影作品、照片展示模板视频素材。 Premiere Pro 2023及以上版本。 全高清&#xff08;19201080&#xff09;分辨率/30fps。 通用表达式&#xff08;适用于所有特效语言&#xff09;。 免费下载&#xff1a;https…

手写vite-alias插件

整个插件就是在vite不同的生命周期中干不同的事情 手写vite-alias其实就是抢在vite.config.js配置文件执行之前&#xff0c;去改写vite.config.js配置文件。 项目根目录下src中建立plugins文件夹&#xff0c;在建立ViteAlias.js文件 // 必须给vite返回一个对象const fs req…