当前位置:首页 > 工业控制 > 电路设计项目集锦
[导读]本文将介绍整个过程的最后一步。在前面的文章中,我们构建了SD卡和sysroot,交叉编译了应用程序,并将内核开发为xclbin文件。现在,我们需要将所有内容放到板子上,设置xclbin位流并启动应用程序。

这个项目是KRS Unleashed系列的一部分,KRS是原始KRS的修订版。本文介绍了机载设置。

本文将介绍整个过程的最后一步。在前面的文章中,我们构建了SD卡和sysroot,交叉编译了应用程序,并将内核开发为xclbin文件。现在,我们需要将所有内容放到板子上,设置xclbin位流并启动应用程序。

在解释具体步骤之前,我想强调两点:

我目前正在设置FPGA板,如具有连接的外设和监视器的树莓派,以建立SSH连接并安装缺失的依赖项。这是非常直接和容易做到的,但不是必需的。所有的步骤也可以通过一个简单的JTAG连接来完成,但是我没有为这种情况提供说明。

第二点:在Ubuntu和Petalinux之间建立连接所需的端口是不同的,Ubuntu需要在左上角有一个插头(如图),而Petalinux需要在左下角进行SSH连接。当连接到互联网时,我发现如果我在那段时间拔掉SSH连接会更容易。

第一次启动SD卡

第一步是建立SSH连接。对于Petalinux,这已经配置好了,但是在Ubuntu中,您需要在每次启动时通过JTAG设置它

或者你找到一个监视器并通过显示端口连接FPGA。然后你可以简单地在Ubuntu中配置网络,就像你通常做的那样,并使连接持久。

对于Ubuntu,你现在需要安装一些缺失的依赖项:

•ROS 2(在网站上安装)

•ltng用于跟踪,libgcal用于Apriltag算法

对于Petalinux,已经包含了可安装的依赖项。但是,您需要复制lttng.py和_lttng.cpython-310-aarch64-linux-gnu文件。所以从Ubuntu sysroot(包括在os_workspace/firmware_kr260_petalinux/artifacts/),并把它们放在板上,包括丢失的python包装:

•文件位于Ubuntu sysroot下的“firmware_kria_ubuntu/sysroots/aarch64-xilinx-linux/usr/lib/python3/dist-packages”

•并且需要复制到Petalinux SD卡上的‘ /usr/lib/python3.10/ ’

准备比特流

我们需要复制exports文件夹,例如通过SCP

这包含了部署比特流和用于测试的附加二进制文件所需的一切。现在你需要按照通常的KRS指令,将文件移动到Ubuntu的‘ /usr/lib/firmware/xilinx ’或Petalinux的‘ /lib/firmware/xilinx ’下:

我建议重命名文件夹以匹配二进制文件的名称,我不知道是否有必要,但我通常遵循这种做法(参见复制命令)。

成功后,您应该看到一条消息,风扇应该快速旋转

准备申请

现在,剩下的就是获取ROS 2脚本了。

Ubuntu:

Petalinux:

然后像这样启动应用程序:

通常,ROS 2会自动检测通过SSH连接的本地开发机器,并将所有主题转发到您的PC,这样您就可以通过ROS对话中的这个有用脚本来调查它们:

最后备注/ ROS的优化

您将注意到Kria上ROS 2的默认配置非常需要RAM,从而导致潜在的崩溃和死机。因此,建议依赖组件而不是节点,使用CycloneDDS而不是FastDDS。在“krs/”下包含了CycloneDDS的示例配置,可以在这里找到更多信息。

当您使用此配置添加不同的DDS时,在启动应用程序时经常会遇到问题,因为您需要连接板以使用CycloneDDS配置,并且您不能使用FastDDS保持旧会话仍然打开。当你遇到像

只需使用‘ unset RMW_IMPLEMENTATION ’重新编译您的应用程序,关闭所有终端窗口并重做。

本文编译自hackster.io

本站声明: 本文章由作者或相关机构授权发布,目的在于传递更多信息,并不代表本站赞同其观点,本站亦不保证或承诺内容真实性等。需要转载请联系该专栏作者,如若文章内容侵犯您的权益,请及时联系本站删除。
换一批
延伸阅读

LED驱动电源的输入包括高压工频交流(即市电)、低压直流、高压直流、低压高频交流(如电子变压器的输出)等。

关键字: 驱动电源

在工业自动化蓬勃发展的当下,工业电机作为核心动力设备,其驱动电源的性能直接关系到整个系统的稳定性和可靠性。其中,反电动势抑制与过流保护是驱动电源设计中至关重要的两个环节,集成化方案的设计成为提升电机驱动性能的关键。

关键字: 工业电机 驱动电源

LED 驱动电源作为 LED 照明系统的 “心脏”,其稳定性直接决定了整个照明设备的使用寿命。然而,在实际应用中,LED 驱动电源易损坏的问题却十分常见,不仅增加了维护成本,还影响了用户体验。要解决这一问题,需从设计、生...

关键字: 驱动电源 照明系统 散热

根据LED驱动电源的公式,电感内电流波动大小和电感值成反比,输出纹波和输出电容值成反比。所以加大电感值和输出电容值可以减小纹波。

关键字: LED 设计 驱动电源

电动汽车(EV)作为新能源汽车的重要代表,正逐渐成为全球汽车产业的重要发展方向。电动汽车的核心技术之一是电机驱动控制系统,而绝缘栅双极型晶体管(IGBT)作为电机驱动系统中的关键元件,其性能直接影响到电动汽车的动力性能和...

关键字: 电动汽车 新能源 驱动电源

在现代城市建设中,街道及停车场照明作为基础设施的重要组成部分,其质量和效率直接关系到城市的公共安全、居民生活质量和能源利用效率。随着科技的进步,高亮度白光发光二极管(LED)因其独特的优势逐渐取代传统光源,成为大功率区域...

关键字: 发光二极管 驱动电源 LED

LED通用照明设计工程师会遇到许多挑战,如功率密度、功率因数校正(PFC)、空间受限和可靠性等。

关键字: LED 驱动电源 功率因数校正

在LED照明技术日益普及的今天,LED驱动电源的电磁干扰(EMI)问题成为了一个不可忽视的挑战。电磁干扰不仅会影响LED灯具的正常工作,还可能对周围电子设备造成不利影响,甚至引发系统故障。因此,采取有效的硬件措施来解决L...

关键字: LED照明技术 电磁干扰 驱动电源

开关电源具有效率高的特性,而且开关电源的变压器体积比串联稳压型电源的要小得多,电源电路比较整洁,整机重量也有所下降,所以,现在的LED驱动电源

关键字: LED 驱动电源 开关电源

LED驱动电源是把电源供应转换为特定的电压电流以驱动LED发光的电压转换器,通常情况下:LED驱动电源的输入包括高压工频交流(即市电)、低压直流、高压直流、低压高频交流(如电子变压器的输出)等。

关键字: LED 隧道灯 驱动电源
关闭