说明
写本文章的目的是最近和同事学习发现了一种可以通过matlab2021a的simulink自动生成配套zynq7000 ip核的方法,尤其是还自带了foc电机控制模块,因此记录一下。
步骤1:安装matlab、xilinx vivado2020.2、matlab离线硬件支持包、正版matlab账号(某宝购买)
1、由于matlab离线硬件支持包好像从国内下载很麻烦,因此同事有国外的同学帮他下载了配套matlab2021a的离线硬件安装包,所以这里只能用matlab2021a版本了。当然网上也有一些下载方法,但是好像都不管用,比如超简单的Matlab附加功能安装包的安装方法、添加链接描述,但是后面想到是否可以购买云主机,用国外云主机去下载配套其他版本matlab的硬件支持包,这个没有具体尝试,也许可以。
2、该安装包支持vivado2018-vivado2020,所以这里使用vivado 2020.2,vivado的安装方法就不多讲了
3、离线硬件支持包在我的网盘中《ZYNQ7000配套Matlab2021工具》
4、需要某宝购买一个正版的matlab账号,大概35RMB
步骤2:打开matlab,下载附件工具
1、首先打开matlab的附加功能->获取附加功能,如图所示:
然后搜索zynq,如图所示:
2、然后先选择HDL Coder Support Package for Xilinx Zynq Platform ,如图所示:
点开后,选择安装->仅下载->一路下一步就可以了(注意这里一定要选择仅下载,因为实际是会下载失败的,我们后续要用离线的硬件支持包去替换的)
等待设置路径那一步,注意要选择默认路径,如果不小心改了,可以点击还原默认文件夹得方式进行还原,另外一定注意要记住下载的路径,因为这个文件夹会被隐藏,需要通过路径找到,如图所示:
最后会下载失败,这个是正常的,因为国内好像没法下载,科学上网也不行:
然后关闭这个附件的安装,再选择,重复上述的步骤,安装路径选择一样即可,同样第一次也会安装失败的,如图所示:
上面这个路径也要默认的
两个附件都进行安装后,虽然失败,但是不要紧,我们后面步骤会用离线包替代的。这里我们关闭matlab就行。
步骤3:复制离线硬件支持包
上一步我们在下载第三方附件的时候发现会报下载错误,我们就在这里解决。把准备好的离线硬件支持包《ZYNQ7000配套Matlab2021工具》->《simulink_zynq_combine_tool》->《R2021a》->《archives》中的四个文件夹复制到上一步路径中对应的《archives》文件中,替换即可。
下图是我解压后的离线硬件支持包的archives文件夹中的文件,把他们复制:
替换到,刚才通过matlab安装附件时选择的那个路径对应的archives文件夹中:
离线安装包的《ZYNQ7000配套Matlab2021工具》->《simulink_zynq_combine_tool》->《R2021a》中有一个readme文件,是安装方法的简要说明,可以阅读一下。
步骤4:重新下载matlab支持包
上一步我们手动用离线硬件支持包进行了替换,这里我们就要重新安装刚才安装失败的两个matlab附件。
重新打开matlab,然后继续执行步骤2,如图所示:
还是先点仅下载
然后选择默认路径
但是这里发现可以安装成功了,如图所示:
另一个附件也同样操作
步骤5:安装matlab硬件支持包
在下载的matlab离线支持包《ZYNQ7000配套Matlab2021工具》->《simulink_zynq_combine_tool》->《R2021a》中有一个readme文件,里面有安装提示,如下图所示:
这里面用的是cmd,但是因为对shell比较熟悉,所以我是用powershell执行的指令(注意要采用管理员模式打开powershell),具体指令如下
cd E:\MATLAB\bin\win64
install_supportsoftware.exe -archives C:\Users\11955\Downloads\MathWorks\SupportPackages\R2021a\
C:\Users\jsmith\Downloads\MathWorks\SupportPackages\R2018b\其实就是离线硬件支持包的路径
当输入指令后,会自动唤出matlab界面,有的时候安装支持包界面会无法弹出,反复进行安装指令并且关闭杀毒软件或者阻止安装的软件,多试几次应该就可以了,如下图所示:
正常会弹出如图所示的界面,全选并且点击下一步等待安装即可:
最后安装成功了,选择稍后设置,关闭matlab即可:
步骤6:打开Model Composer and System Generator 2020.2
右击通过管理员权限打开Model Composer and System Generator 2020.2,如图所示(注意一定要右击以管理员身份运行):
这个时候会弹出matlab界面,如图所示:
如果出现提示版本不匹配的报错,如图所示:
看步骤7,修改相关的配置文件即可。
步骤7:修改xilinx支持matlab的xml文件
由于vivado2020.1好像默认不支持matlab2021a,因此需要进入xilinx的安装目录,修改一个xml文件,来对matlab2021a进行支持。具体操作如链接所示:Vivado System Generator 不支持新版Matlab 解决办法
步骤8:运行FOC例程
解决版本不支持问题后,重新打开Model Composer and System Generator 2020.2后会直接进入matlab界面,这个时候运行命令zynqexPMSMFOCStart,如图所示:
直接弹出如图所示界面:
再点击open simulation test bench model,弹出下图界面:
根据操作,可以直接生成simulink的foc代码,并且可以生成zynq7000的IP核。不过后面具体就没有研究了,因为对simulink不了解,学习之后在来续写。