基于树莓派制作了一个实时交通仪表盘,来能够更容易地开始使用AI HAT+功能
扫描二维码
随时随地手机看文章
作为一个喜欢摆弄我的树莓派5并在各种有趣的项目中使用它的人,我对用树莓派AI HAT+构建一些东西来集成AI模型而不会减慢树莓派的速度的想法感到非常兴奋。然而,当我查看文档时,我所能找到的都是在桌面操作系统上使用图形应用程序演示的例子。这对于将硬件嵌入到家里、办公室或任何我需要它的地方的独立项目中并不是很有帮助。
所以我创建了一个可重用的模块,使我自己和其他人能够更容易地开始使用AI HAT+功能。
为了展示它的可行性(并提醒自己上下班途中的交通状况),我制作了一个实时交通仪表盘,显示了我的树莓派运行YOLO模型和USB网络摄像头的视频流的实时图像和数据。
设置你的树莓派
有关在Raspberry Pi 5上安装AI HAT+的说明,请参阅官方文档。
树莓派从microSD卡启动。您需要将树莓派操作系统安装到您将与Pi一起使用的microSD卡上。有关安装Raspberry Pi的其他方法的更多详细信息,请参阅Viam文档。
安装树莓派操作系统
•将microSD卡连接到计算机上。
•下载Raspberry Pi Imager并启动它。
•单击“选择设备”。选择您的Pi型号,即Raspberry Pi 5。
•单击“选择操作系统”。在菜单中选择“Raspberry Pi OS(64位)”。
•单击CHOOSE STORAGE。从设备列表中,选择您打算在Raspberry Pi中使用的microSD卡。
•配置您的树莓派远程访问。单击Next。当提示应用操作系统自定义设置时,选择EDIT settings。
•选中Set hostname,并在该字段中输入您想要访问Pi的名称,例如test。
•选中“设置用户名和密码”复选框,并设置用于登录Pi的用户名(例如,您的名字)。如果跳过此步骤,默认用户名将是pi(出于安全原因不建议使用)。并指定密码。
•将你的Pi连接到Wi-Fi,这样你就可以无线运行viam-server了。选中“配置无线局域网”并输入无线网络凭据。“SSID”为Wi-Fi网络名称,“password”为网络密码。将“无线局域网国家”部分更改为您的路由器当前正在运行的地方。
•选择“SERVICES”页签,勾选“Enable SSH”,并勾选“Use password authentication”。
•请确保记住您设置的主机名和用户名,因为在SSH到Pi时将需要这些。
•保存您的更新,并确认YES以应用操作系统自定义设置。确认“YES”清除u盘数据。操作系统也可能提示您输入管理员密码。向Imager授予权限后,它将开始写入并验证Linux安装到USB闪存驱动器。
•安装完成后,从计算机中取出USB闪存驱动器。
使用SSH连接
•将microSD卡插入树莓派,并将其插入插座来启动树莓派。一个红色LED会亮起,表示Pi已经接通电源。
•启动Pi后,使用SSH连接到它。从命令行终端窗口输入以下命令。<>中的文本(包括<和>符号本身)应该替换为您在设置Pi时配置的用户和主机名。
•如果系统提示“您确定要继续连接吗?”,请输入“yes”并按回车键。然后,输入用户名的密码。您应该看到一条登录消息和一个命令提示符。
•更新您的树莓派以确保安装了所有最新的软件包
安装了操作系统后,是时候为AI HAT+设置系统包了。
设置硬件
如果您还没有从上一步连接到Pi,则使用SSH连接到Pi。
启用PCIe Gen 3.0速度以获得最佳性能
•打开Raspberry Pi Configuration界面:
•选择高级选项
•选择PCIe速度
•选择“Yes”,开启PCIe Gen 3模式
•选择Finish退出配置界面
•重启设备
•用SSH重新连接到Pi以继续。
设置系统依赖项
•安装“hello -all”包,其中包含AI HAT+的固件、设备驱动程序和处理库:
•这可能需要几分钟,具体取决于您的网络速度。
•重启设备
•用SSH重新连接Pi
•验证一切正常运行:
•您应该看到类似以下的输出:
添加你的网络摄像头
•将摄像头的USB接口连接到Pi上的任何USB接口。摄像头通过USB接口将视频数据传输给树莓派。
现在我们已经物理地连接了硬件组件,将它们放置在一个可以很好地看到流量的位置。在下一节中,我们将配置机器。
配置您的机器
•在Viam应用程序的LOCATIONS选项卡下,通过输入名称并单击Add machine来创建一台机器。
•单击查看设置说明。
•要在您想要使用的Raspberry Pi设备上安装viam-server,请为Raspberry Pi选择Linux / Aarch64平台,并将安装方法保留为viam-agent。
•使用viam-agent下载并在Raspberry Pi上安装viam-server。按照说明从您的Raspberry Pi的SSH提示符运行安装说明中提供的命令。
•当机器成功连接时,设置页面将显示。
配置你的网络摄像头
•在Viam应用的CONFIGURE选项卡下,点击左边菜单中的+图标,然后选择Component。
•选择camera,并找到网络摄像头模块。这增加了与USB网络摄像头一起工作的模块。现在保留默认名称camera-1。
•注意,添加此组件会添加称为camera-1的网络摄像头硬件组件。从面板的Attributes部分,选择一个视频路径。
•单击右上角的Save。这可能需要一些时间来应用您的配置更改。
•在camera-1面板的底部,展开TEST部分,以确保您已经正确配置了摄像机并看到视频提要。
配置您的视觉服务
•在配置选项卡下的Viam应用程序中,单击左侧菜单中的+图标并选择Service。
•选择vision,并找到hello -rt模块。这增加了与AI HAT+使用的Hailo Runtime一起工作的模块。选择“添加模块”。现在保留默认名称vision-1。
•注意,添加此服务将添加称为vision-1的计算机视觉软件服务。从面板的Depends on部分,从“Search resources”下拉菜单中选择camera-1。
•单击右上角的Save。这可能需要一些时间来应用您的配置更改。
•在vision-1面板的底部,展开TEST部分,以确保您已经正确配置了服务,并看到来自camera-1的图像,上面有对象检测框。
配置您的检测传感器
•在Viam应用的CONFIGURE选项卡下,点击左边菜单中的+图标,然后选择Component。
•选择传感器,找到检测模块。这增加了一个用于从视觉服务捕获目标检测数据的模块。现在保留默认名称sensor-1。
•注意,添加此组件时还添加了称为sensor-1的传感器组件。从面板的Attributes部分,添加以下JSON配置。
在面板的Data capture部分,单击“+ Add method”。设置“方法”为“读数”,“频率(赫兹)”为1。单击面板内横幅中的“创建数据管理服务”,自动创建名为data_manager-1的数据管理服务。
•单击右上角的Save。这可能需要一些时间来应用您的配置更改。
•在sensor-1面板的底部,展开TEST部分,以确保您已经正确配置了传感器,并看到已配置标签的列表,其中包含定期刷新的检测次数。
•有了所有的组件和服务,您就可以继续为您的机器创建实时远程操作仪表板了!
创建你的流量仪表盘
本步骤介绍如何使用Viam应用程序的远程操作(或远程操作)功能。
•配置远程工作空间
•在Viam应用程序中,返回到主页。
•然后在TELEOP选项卡下,通过单击create workspace创建一个新的仪表板。
•点击“untitled-workspace”来设置仪表板的名称。
•单击“Select machine”并从列表中选择先前配置的机器。
配置摄像头流部件
•点击“+ Add widget”,选择“Camera stream”。
•注意,添加这个小部件会创建一个名为Camera的面板。在“Camera name”字段中选择Camera -1,保持“Refresh type”为“Live”。
配置时间序列图表小部件
•点击“+添加小部件”,选择“时间序列”。
•注意,添加这个小部件会创建一个名为Time series的新面板。设置“标题”为“流量”,“时间段(分钟)”为“30”。
•在面板的Lines部分下,为“资源名称”选择sensor-1,为“捕获方法”选择读数,为“标题”选择cars,以及读数。汽车代表“路径”。
•点击“+添加行”添加新行。为传感器捕获的每个剩余标签创建一条线:总线和人。
•点击“保存更改”来查看实时的摄像机流和数据更新。
保持建筑!
此时,您已经创建了一个边缘设备,可以执行实时对象检测并从任何地方远程监控它!您可以继续在此项目上添加其他功能:
•通过将红色、黄色和绿色led连接到Pi上,模拟交通信号灯控制,模拟出智能城市控制系统。
•通过与家庭助理集成,使您的智能家居更加智能
•把它放到漫游车上,让它移动起来
本文编译自hackster.io