主要内容

验证使用FPGA-in-the-Loop HDL实现PID控制器

这个例子向您展示了如何建立一个FPGA-in-the-Loop使用高密度脂蛋白(FIL)应用程序验证人™。

应用程序使用仿真软件®和FPGA开发板来验万博1manbetx证的HDL实现proportional-integral-derivative控制器(PID)。在这个例子中,仿真软件生成所需的电万博1manbetx机和模拟电机的位置控制的PID控制器。

需求和先决条件

除了MathWorks上市产品,其他要求包括:s manbetx 845

  • FPGA设计软件(Xilinx ISE®®设计套件,Xilinx Vivado®设计套件,英特尔®第四的®二世设计软件,或芯片自由人®SoC设计软件),用一个受支持的版本中列出万博1manbetxFPGA验证需求

  • 一个支持的FPGA开发万博1manbetx板。硬件支持万博1manbetx,看到万博1manbetx支持FPGA器件FPGA验证

  • 使用以太网连接:千兆以太网适配器安装在主机上,千兆以太网交叉电缆。

  • 连接使用JTAG: USB导火线I或II为英特尔FPGA板电缆和驱动程序。Digilent®JTAG电缆和司机Xilinx FPGA板。

  • 连接使用PCI Express®: FPGA板安装到主机的PCI Express插槽。

先决条件:

MATLAB®和FPGA设计软件可以在本地安装在您的计算机或网络设备访问。如果你使用软件的网络需要第二个网络适配器安装在你的电脑提供一个私有网络的FPGA开发板。咨询您的计算机的硬件和网络指导学习如何安装网络适配器。

步骤1:设置FPGA开发板

跳过这个步骤,步骤2如果您使用的是模拟串行总线连接。如果您还没有设置串行总线连接,使用支持包安装软件来指导您完成PCI Express设置。万博1manbetx

使用以下步骤设置你的FPGA开发板。

  1. 确保电源开关

  2. 将交流电源线连接到电源插头。电源适配器电缆插入FPGA开发板。

  3. 直接连接以太网连接器FPGA开发板上的以太网适配器使用交叉网线在你的电脑上。

  4. 使用JTAG下载电缆连接FPGA开发板和计算机。

  5. 确保所有跳投在FPGA开发板出厂默认值的位置,除了微芯片PolarFire需要特别设置。看到安装芯片Polarfire评估工具(高密度脂蛋白校验支持包芯片万博1manbetxFPGA板)

第二步:设置主机计算机板连接

跳过这一步如果你使用JTAG连接模拟。与以太网连接,您必须有一个千兆以太网网络适配器在您的计算机上运行这个示例。

在Windows®上,做以下步骤:

  1. 打开控制面板

  2. 类型查看网络连接在搜索栏中。选择查看网络连接在搜索结果中。

  3. 右击连接图标到FPGA开发板和选择属性从弹出菜单。

  4. 此连接使用下列项目中,选择互联网协议版本4 (TCP / IPv4)并点击属性

  5. 选择使用以下IP地址:。集IP地址192.168.0.1。如果这个地址是在你的网络使用另一台计算机,改变它任何可用的IP地址在这个子网,比如192.168.0.100。这是你的主机地址。设置子网掩码255.255.255.0。现在您的TCP / IP属性应该在下图一样:

在Linux®:

使用ifconfig命令来设置您的本地地址。例如:

% ifconfig eth1 192.168.0.1

在这个例子中,eth1 Linux电脑上是第二个以太网适配器。检查你的系统,以确定哪些以太网适配器连接到FPGA开发板。上面的命令将本地IP地址设置为192.168.0.1。如果这个地址是在你的网络使用另一台计算机,改变它任何可用的IP地址在这个子网,比如192.168.0.100。

第三步:准备资源

1。建立了FPGA设计软件

在使用FPGA-in-the-Loop之前,设置您的系统环境来访问FPGA设计软件。您可以使用函数hdlsetuptoolpath加伊势,Vivado、第四的或自由人SoC设计软件MATLAB系统路径为当前会话。信息支持版本的FPGA设计软件,明白了万博1manbetxFPGA验证需求。下面给出每个工具的示例命令行。替代与实际执行,如果是不同的。

伊势Xilinx FPGA板使用设计软件,运行:

hdlsetuptoolpath (“ToolName”,“Xilinx ISE”,“路径”,“C: \ Xilinx ISE \ 14.7 \ ISE_DS \ \ bin \ nt64 \ ise.exe”);

使用Vivado Xilinx FPGA板设计软件,运行:

hdlsetuptoolpath (“ToolName”,“Xilinx Vivado”,“路径”,“C: \ Xilinx \ Vivado \ 2020.2 \ bin \ vivado.bat ');

英特尔公司董事会,运行:

hdlsetuptoolpath (“ToolName”,“阿尔特拉第四的二世”,“路径”,“C: \ \ 20.1.1 \负责第四的\ bin \ quartus.exe ');

微芯片的董事会,运行:

hdlsetuptoolpath (“ToolName”,微芯片自由人SoC的,“路径”,“C: \ Microsemi \ Libero_SoC_v12.0 \设计\ bin \ libero.exe”);

2。打开fil_pid模型。

这个模型包含一个定点PID控制器实现了基本模型块。万博1manbetx这个模型还包含一个直流电机模型控制的PID控制器以及所需的直流电机位置作为输入的刺激。

现在运行这个模型并观察所需的范围和实际电机位置。

第四步:启动FPGA-in-the-Loop (FIL)向导

启动FPGA-in-the-Loop向导通过以下几点:

打开应用程序画廊和选择费尔向导代码验证、验证和测试部分。

或者,您可以输入filWizard命令在MATLAB命令提示符。

filWizard

第五步:在费尔向导中指定硬件选项

设置费尔FPGA开发板的选项。

1。指定向导将生成一个如果费尔FILSimulation MATLAB系统仿真软件块或对万博1manbetx象。对于这个示例,选择万博1manbetx费尔仿真与万博1manbetx仿真软件。

2。为董事会的名字,选择FPGA开发板连接到您的主机电脑。如果你的董事会是不在名单上,选择以下选项之一:

  • “让更多的董事会…”下载FPGA板支持包(s)(这个选项启动支持包安装程序)。万博1manbetx

  • “创建自定义董事会…”来创建FPGA板定义文件为您的特定FPGA板(这个选项启动新的FPGA板管理器)。

3所示。选择连接的模拟。以太网和JTAG可用的连接方法。并不是所有董事会同时支持的连接万博1manbetx方法。

4所示。以太网连接只有:如果你改变了你的计算机的IP地址从填写不同的子网。x设置网络适配器时,或者如果默认董事会期间被另一个设备,在使用IP地址192.168.0.2扩张高级选项和改变董事会的IP地址根据以下指南:

  • 子网地址,一般前三个字节的IP地址,必须相同的主机的IP地址。

  • 最后一个字节的IP地址必须不同于主机的IP地址。

  • 董事会IP地址不能与其他计算机的IP地址冲突。

例如,如果192.168.8.2主机IP地址,那么您可以使用192.168.8.3(如果可用)。不改变董事会MAC地址

5。可选的:如果你想改变DUT时钟频率从默认(25兆赫),你可以扩大高级选项和改变FPGA系统时钟频率(MHz)

6。点击下一个继续。

第六步:指定在费尔HDL文件向导

指定HDL设计的FPGA实现。

1。单击Add并浏览目录中创建准备资源。

2。选择这些高密度脂蛋白pid_hdlsrc中的文件目录:

  • Controller.vhd

  • D_component.vhd

  • I_component.vhd

这些HDL设计文件在FPGA验证。

3所示。在源文件表,检查文件的复选框在一行Controller.vhd指定这个HDL文件包含顶级HDL模块。

费尔向导会自动填充顶层模块名称字段选择的HDL文件的名称;在这种情况下,控制器。在这个例子中,顶层模块名称匹配的文件名,这样你不需要改变它。如果顶层模块名称和文件名称不匹配,您将手动正确顶层模块名称在这个对话框。

点击下一个继续。

第七步:检查I / O端口在费尔向导

费尔向导解析高层高密度脂蛋白模块控制器的控制器。vhd获得所有I / O端口和DUT显示它们I / O端口表。解析器试图自动确定可能的端口类型通过查看端口名称和显示这些信号端口类型。

1。检查端口清单。如果解析器分配一个不正确的端口类型对于任何给定的端口,您可以手动改变的信号。对于同步设计,指定一个时钟,重置,或时钟启动信号。在这个例子中,费尔正确向导自动填充表。

2。点击下一个继续。

第八步:输出数据类型集合在费尔向导

1。高密度脂蛋白的输出control_signal改变数据类型定点,标志签署部分长度28。这将使生成的费尔块的输出信号设置FPGA design-under-test (DUT)到正确的数据类型。

2。点击下一个继续。

步骤9:审查在费尔向导建立选项

1。指定输出文件的文件夹。对于这个示例,使用默认的选项,这是一个文件夹命名Controller_fil在当前目录下。

总结显示FPGA项目文件的位置和FPGA编程文件。你可能需要为高级操作这两个文件。

2。点击构建启动构建过程。

在构建过程中,发生以下行为:

  • 费尔块名叫控制器生成新的模型如下图所示。不要关闭这个模型。

  • 新模型生成后,费尔向导打开一个命令窗口,FPGA设计软件进行合成,健康,place-and-route时机分析,FPGA编程文件生成。

  • 当FPGA设计软件过程完成后,在命令行窗口中消息让你知道你可以关闭窗口。关闭窗口,并继续下一步。

第十步:建立模型

在fil_pid模型,取代控制器子系统与费尔块生成的新模型。修改后的fil_pid模型现在显示为下图所示:

步骤11:FPGA程序

1。FPGA开发板电源切换

2。双击费尔块fil_pid模型打开块面具。

3所示。在打开块面具,点击负载

如果你的董事会通过JTAG电缆正确连接到主机,一个消息窗口显示表明FPGA编程文件加载成功。点击好吧把这个对话框。

4所示。以太网连接只:你可以测试FPGA板连接到您的主机电脑正确通过ping测试。打开一个命令行窗口,输入以下命令:

C: \ mytest >期间。萍192.168.0.2

如果你改变董事会IP地址设置网络适配器时,期间与董事会取代192.168.0.2 IP地址。如果正常千兆以太网连接已经建立,您应该看到萍回答从FPGA开发板。

步骤12:费尔块检查参数

1。在费尔块面具,单击信号的属性选项卡。

2。验证数据类型高密度脂蛋白的信号control_signal32岁的fixdt (1 28)。如果不是,改变它。

3所示。点击好吧关闭块面具。

步骤13:费尔运行

1。开始fil_pid模型的仿真。

2。仿真完成后,查看所需的波形和实际位置的运动范围。注意,费尔模拟的结果应与那些你模拟仿真软件的参考模型万博1manbetx准备资源的例子