【周末创客】电机控制 您所在的位置:网站首页 pynq开源项目 【周末创客】电机控制

【周末创客】电机控制

2023-08-05 13:52| 来源: 网络整理| 查看: 265

本文转载自: PYNQ开源社区微信公众号

IIoT-SPYN是一个基于IIoT-EDDP开源平台和PYNQ软件框架的项目,它展示了如何在PYNQ开源框架下对电机进行控制、监视、捕获数据、可视化和分析。

上图为工程项目示意图,PL侧包含了对电机控制、状态采集的模块。在PYNQ中加载比特流后,就可以访问到这些已实现好的模块,对电机进行控制和状态检测。

此项目中采用的FOC算法示意图,包括Clarke变换、Park变换、PWM编码器、PI控制器、电流采样等。Overlay中的算法模块通过Vivado HLS生成。

设备清单

PYNQ-Z2套件 EDDP Kit

快速开始

1)方法一

在Jupyter界面中new选项里选择新建一个终端,在终端输入:

udo pip3 install --upgrade git+https://github.com/Xilinx/IIoT-SPYN.git

2) 方法二

下载IIoT-SPYN的zip压缩包,上传压缩包到PYNQ板卡,在终端中unzip上传的压缩包,移动到解压的目录下然后采用pip安装

sudo pip3 install -e .

示例Notebook演示

Overlay自带2个Notebook,spyn.ipynb和spyn_dash.ipynb

2个notebook均展示了完整的电机控制、状态检测和分析功能,不同的是spyn_dash.ipynb均在dashboard上实现。

以下为spyn.ipynb代码执行的部分截图。

以下为spyn_dash.ipynb代码执行的部分截图。

总结与展望

本Overlay中使用了FOC算法,它在本质上就是一些线性代数中的矩阵变换,这里讲述的是有传感器的FOC算法,转子的位置信息是通过绝对式磁编码器反馈的,直接是数字量。关于FOC算法的详细内容,可以参考有关电机理论的专业书籍,这里不再赘述。

本项目中的FOC算法全部使用HLS编写,使用AXI-Stream接口完成各模块的通信。我们可以通过上述AXIS监测器来从PS端看到各关键数据。读者可以使用github提供的tcl文件恢复出完整的Vivado工程,以此为基础调整其中的算法或者功能,打造适合自身需要的电机控制Overlay。



【本文地址】

公司简介

联系我们

今日新闻

    推荐新闻

    专题文章
      CopyRight 2018-2019 实验室设备网 版权所有