FOC软件中要处理的问题
1. 电流采样时间及通道
FOC需要通过采集相电流来进行控制,采样时间及通道极为关键,在二或三电阻采样方案中,采用如下方式:
在1、6扇区,B、C为采样通道;
在2、3扇区,A、C为采样通道;
在4、5扇区,A、B为采样通道;
要在下臂导通时间内进行采样,在PWM定时器工作在中心对齐模式下,最佳采样点为PWM定时器过零点,详细分析见FOC中的电流采样
2. 数据处理
FOC算法中涉及到很多运算,为了加快运算或者使用不支持浮点运算的处理器,通常用Q格式标定来把浮点数转换为定点数进行计算
${X_Q} = X*{2^Q}$
${X_Q}$为转换后的定点值
$X$为待转换的浮点数
Q表示小数点所在位置,如12,则表示小数点在第12位
运算法则:
加法:${X_Q} + {X_Q} = {X_Q}$
乘法:${X_Q}*{X_N} = {X_{Q + N}}$
在乘法运算中,为了保证运算结果为同一格式数据,通常将运算结果左移一位再取高16位,如:C=A*B,A、B、C为${X_{15}}$格式,则C=((A*B)<<1)>>16
3. 正余弦运算
在坐标变换中,要用到正余弦运算,而坐标变换是FOC算法的主干部分,FOC算法通常运行于中断中,因此运算速度要足够快。为了保证速度,采用查表法
4. 无感FOC的位置和速度估计
最常用的是滑模估计和PLL估计
5. PWM频率选择更新重复频率
使用stm32 设计的过程中,软件设计为TIM1的通道4触发ADC电流采样,在ADC中断中运行FOC算法。电流采样选择三电阻采样,在TIM1溢出后ADC转换触发要晚(DT+TN-TS)/2,考虑AD转换需要的时间,在最坏情况下,FOC算法是在TIM1计数器溢出之后5us才开始执行。FOC算法执行时间大约20us,在无传感模式下,为了在下个更新事件之前完成新占空比设置,必须保证最小占空比大约为(5+20)us,即能达到的最大FOC执行频率大约是20kHz,此时重复计数器可设定为1.对于高于20kHz的PWM频率,重复计数器必须设定为3
FOC软件中要处理的问题的更多相关文章
- CRM/ERP 企业管理软件中常见的七种程序设计模式
管理软件中的常见代码设计模式,来自于业务上的需要,有不恰当的地方欢迎批评指正. 1 RE-TRY 重试模式 场景:在连接数据库服务器时,如果SQL Server数据库没有启动或正在启动,我们需要有一 ...
- 小讲堂:Mobox文档管理软件中的文件外链是什么?
今天我们来讨论Mobox文档管理软件中的文件外链是什么?熟悉MOBOX的朋友们应该知道,如果有文件需要分享给其他同事,直接可以进行文件共享.对方会在AM的即时通讯客户端有消息提醒,点击消息提醒可以看到 ...
- 小讲堂:在线编辑在Mobox文档管理软件中的意义
今天我们来讨论一下,mobox文档管理软件中的在线编辑的这个功能,相信这个功能是用户在日常的文档维护中非常需要的. 文档管理软件的诸多功能中,在线编辑是一块很重要的功能点,因为在线编辑可以说是提高工作 ...
- 在现有的图像处理软件中融合dxf格式输出
在现有的图像处理软件中融合dxf格式输出 dxf格式是autocade的支持格式.如果将现有图像识别的结果导出到dxf格式,就能够使用autocad的强大功能进行后续处理. dxf的格式比较复杂,开源 ...
- Atitit.软件中见算法 程序设计五大种类算法
Atitit.软件中见算法 程序设计五大种类算法 1. 算法的定义1 2. 算法的复杂度1 2.1. Algo cate2 3. 分治法2 4. 动态规划法2 5. 贪心算法3 6. 回溯法3 7. ...
- JMP软件中的晶圆图( Wafer Map)分析
关键词:芯片 良率分析 晶圆图 质量管理 JMP Minitab 半导体芯片的生产,简单来讲,是将电路通过各种复杂的物理化学方法制作到晶圆上,在生产的最后阶段会进行不同电性功能的测试以确保产品的功能性 ...
- Illustrator软件中eps和ai格式的区别
转自Illustrator软件中eps和ai格式的区别 AI是ILL特有的格式,EPS格式是在排版领域经常使用的格式.AI中的位图图像是用链接的方式存储,EPS格式则将位图图像包含于文件中.对于含有相 ...
- BarTender软件中GS1-128条码如何制作?
GS1-128条码是UCC/EAN-128条码的新名字,它只是Code 128的一个特殊子集.GS1-128条码是EAN·UCC系统中唯一可用于表示附加信息的条码,可广泛用于非零售贸易项目.物流单元. ...
- Altium软件中Unknowpin的详细解决办法
1.Altium软件中Unknowpin第一种原因:PCB封装缺失遗漏,直接加入对应的封装即可.点击箭头指示处的Add,接着点击OK之后,再点击图中所示处Browse...选择封装库的封装即可. 2. ...
随机推荐
- JavaScript 的DOM操作详解
内容概要 DOM之查找标签 基本查找 间接查找 节点操作 获取值操作 class操作 样式操作 事件 内置参数this 事件练习 内容详细 DOM操作 DOM(Document Object Mode ...
- Solution -「UR #21」「UOJ #632」挑战最大团
\(\mathcal{Description}\) Link. 对于简单无向图 \(G=(V,E)\),定义它是"优美"的,当且仅当 \[\forall\{a,b,c,d\ ...
- Solution -「LOJ #6053」简单的函数
\(\mathcal{Description}\) Link. 积性函数 \(f\) 满足 \(f(p^c)=p\oplus c~(p\in\mathbb P,c\in\mathbb N_+) ...
- Solution -「HNOI 2019」「洛谷 P5293」白兔之舞
\(\mathcal{Description}\) Link. 不想概括题意.jpg \(\mathcal{Solution}\) 定义点集 \(S_c=\{(u,v)|v=c\}\):第 ...
- Solution -「CF 1392H」ZS Shuffles Cards
\(\mathcal{Description}\) Link. 打乱的 \(n\) 张编号 \(1\sim n\) 的数字排和 \(m\) 张鬼牌.随机抽牌,若抽到数字,将数字加入集合 \(S ...
- 前端提交数据到node的N种方式
写在前面 本篇介绍了前端提交数据给node的几种处理方式,从最基本的get和post请求,到图片上传,再到分块上传,由浅入深. GET请求 经典的get提交数据,参数通过URL传递给node,node ...
- 利用 kubeasz 给 suse 12 部署 kubernetes 1.20.1 集群
文章目录 1.前情提要 2.环境准备 2.1.环境介绍 2.2.配置静态网络 2.3.配置ssh免密 2.4.批量开启模块以及创建文件 2.5.安装ansible 2.5.1.安装pip 2.5.2. ...
- ELK(Elasticsearch 、 Logstash以及Kibana)
配置日志收集系统 ELK需求背景:业务发展越来越庞大,服务器越来越多各种访问日志.应用日志.错误日志量越来越多,导致运维人员无法很好的去管理日志开发人员排查问题,需要到服务器上查日志,不方便运营人员需 ...
- omnet++:官方文档翻译总结(一)
1.什么是omnet++ 翻译总结自:What is OMNeT++? omnet++是用来进行网络仿真的C++库和框架.这里的网络包括有线.无线.on-chip.queueing网络等等.特定领域中 ...
- Python安装包报错:PackagesNotFoundError: The following packages are not available from current channels
以安装SimpleITK包为例,安装时,显示下图错误 conda install SimpleITK 按以下操作完成包安装 anaconda search -t conda SimpleITK #查询 ...