0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

如何在ZYBO平台上构建Wi-Fi机器人

454398 来源:wv 2019-08-31 09:51 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

步骤1:组装机器人机箱

组装阴影底盘并将减速电机编码器连接到底部框架。 ZYBO,面包板和超声波传感器可以使用提供的部件进行安装,可以使用支架和双面胶带进行3D打印和固定到机箱。电池应安装在机器人背面附近,最好安装在顶部和顶部之间。底部框架。将路由器靠近ZYBO和DC/DC转换器靠近面包板。将轮子连接到最后的减速电机。

步骤2:电线电子设备

DC/DC转换器的输入和输出分别连接到面包板上的两个电源轨。这些将用作系统的12V和5V电源。将ZYBO连接到5V导轨,如图所示。使用USB Micro-B电源线将路由器连接到5V电源轨。 XT60电缆应连接到12V导轨。在其余电子设备正确接线之前,请勿插入电池。超声波传感器应连接到5V导轨。使用ZYBO上的Pmod端口JC的引脚6在面包板上创建3.3V电压轨。逻辑转换器的高压输入应连接到5V轨,而逻辑转换器的低压输入应连接到3.3V轨。将电机编码器连接到3.3V电压轨。将电机驱动器的VCC1连接到5V导轨,并将VCC2连接到12V导轨。将所有EN引脚连接到5V并将所有GND引脚接地。

将超声波传感器的TRIG和ECHO引脚分别连接到逻辑转换器的HV1和HV2。 LV1应连接到JC4,LV2应连接到JC3。请参阅Pmod引脚分布图。将电机连接到电机驱动器。 Y1应连接到右电机的正极端子,Y2应连接到右电机的负极端子。同样,Y3应连接到左电机的正极端子,Y4应连接到左电机的负极端子。 A1,A2,A3和A4应分别映射到JB2,JB1,JB4和JB3。有关引脚编号,请参阅原理图。将JC2连接到右侧编码器,将JC1连接到左侧编码器。确保使用上拉电阻将这些信号连接到3.3V电压轨。非常,使用以太网电缆将ZYBO连接到路由器。

步骤3:在Vivado中创建框图

创建Vivado新的RTL项目。确保此时不指定任何来源。搜索“xc7z010clg400-1”并点击完成。下载encoder_driver.sv和ultrasonic_driver.sv。将它们放在自己的文件夹中。打开“工具”下的IP打包程序,然后选择打包指定的目录。将路径粘贴到包含编码器驱动程序的文件夹,然后单击“下一步”。单击“包IP”并重复超声波传感器驱动程序的过程。然后,导航到设置菜单中IP子部分下的存储库管理器。将路径添加到驱动程序文件夹,然后单击“应用”将它们包含在IP库中。

创建新的程序框图并添加“ZYNQ7处理系统”。双击该块并导入提供的ZYBO_zynq_def.xml文件。在“MIO Configuration”下,启用Timer 0和GPIO MIO。点击“确定”保存配置。添加3个“AXI GPIO”模块和4个“AXI Timer”模块。运行块自动化,然后是S_AXI的连接自动化。双击GPIO块以配置它们。一个模块应该是双通道,具有4位输入和4位输出。将这些连接外部连接并将其标记为SW用于输入,LED标记为输出。第二个块也应该是双通道,带有2个32位输入。最后一个GPIO块将是一个32位输入。使每个定时器模块的pwm0输出为外部。将它们标记为PWM0,PWM1,PWM2和PWM3。

将编码器驱动程序添加到程序框图中,并将CLK连接到FCLK_CLK0。将OD0和OD1连接到第二个GPIO模块的输入通道。使ENC外部并将ENC_0重命名为ENC。添加超声波传感器块并将CLK连接到FCLK_CLK0。使TRIG和ECHO外部并将TRIG_0重命名为TRIG,将ECHO_0重命名为ECHO。将RF连接到第三个GPIO模块。请参阅提供的框图以供参考。

在“源”窗格中右键单击您的程序框图文件,然后创建一个HDL包装器。务必允许用户编辑。添加提供的ZYBO_Master.xdc文件作为约束。点击“生成比特流”并休息一下。

步骤4:设置软件开发环境

转到“文件”下,将硬件导出到Vivado SDK。确保包含比特流。在“CORTEX_A9_Zynq_ZC702”中导入RTOSDemo项目。它将位于FreeRTOS安装目录中。创建一个新的Board Support Package,选择lwip202库。将RTOSDemo项目中引用的BSP更改为刚刚创建的BSP *。

*在编写此Instructable时,FreeRTOS似乎存在引用正确BSP的错误。要解决此问题,请使用与第一个相同的设置创建新的BSP。将引用的BSP更改为新的BSP,然后在构建失败后将其更改回旧的BSP。 FreeRTOS现在应该编译没有错误。随意删除未使用的BSP。

步骤5:修改演示程序

在“src”目录下创建一个名为“drivers”的新文件夹RTOSDemo。复制提供的gpio.h.将gpio.c,pwm.h,pwm.c,odometer.h,odometer.c,rangefinder.c,rangefinder.h,motor.h和motor.c文件放入“drivers”目录。

打开main.c并将mainSELECTED_APPLICATION设置为2.将“lwIP_Demo”下的main_lwIP.c替换为更新后的版本。 “lwIP_Demo/apps/BasicSocketCommandServer”下的BasicSocketCommandServer.c也必须使用新版本进行更新。不幸的是,导航到“FreeRTOSv10.1.1/FreeRTOS-Plus/Demo/Common/FreeRTOS_Plus_CLI_Demos”并用提供的版本替换Sample-CLI-commands.c。构建项目并确保一切都成功编译。

步骤6:Flash固件到QSPI

使用“Zynq FSBL”模板创建一个名为“FSBL”的新应用程序项目。编译FSBL项目后,创建RTOSDemo项目的启动映像。确保在“引导映像分区”下选择“FSBL/Debug/FSBL.elf”作为引导加载程序。如果未列出该文件,请手动添加该文件的路径。

将ZYBO上的JP5跳线移至“JTAG”。使用USB Micro-B电缆将计算机连接到ZYBO。连接电池并打开ZYBO。运行Adept以确保计算机正确识别ZYBO。单击Vivado SDK中的“Program Flash”,并提供RTOSDemo中BOOT.bin文件和FSBL中FSBL.elf文件的路径。在点击“程序”之前,请务必选择“闪光后验证”。观察控制台以确保闪烁操作成功完成。然后,关闭ZYBO电源并断开USB电缆。将JP5跳线移至“QSPI”。

步骤7:配置无线接入点

电池仍然连接后,连接到路由器的Wi-Fi网络。默认的SSID和密码应位于路由器的底部。然后,导航到http://tplinkwifi.net并使用“admin”登录用户名和密码。运行快速设置向导,在启用DHCP的接入点模式下配置路由器。确保也更新设备的默认用户名和密码。完成后,路由器应自动重启进入接入点模式。

启动ZYBO并使用您指定的SSID连接到路由器。路由器很可能出现在IP地址192.168.0.100或192.160.0.101上。 ZYBO将被分配路由器没有的任何地址。要快速确定路由器的IP地址,可以从Windows的命令提示符运行“ipconfig”,或从Linux或MacOS的终端运行“ifconfig”。如果您仍然连接到路由器,您将看到其IP地址显示在无线接口旁边。使用此信息确定ZYBO的IP地址。要确认ZYBO的IP地址,您可以从命令行ping它或通过telnet连接它。

步骤8:运行Java程序

下载RobotClient.java并从命令行使用命令“javac RobotClient.java”编译该文件。运行命令“java RobotClient ”,其中“ip_address”是ZYBO的IP地址。如果在计算机和ZYBO之间建立成功连接,则将弹出控制GUI。聚焦窗口后,应使用键盘上的箭头键控制机器人。按退出按钮结束会话并断开与机器人的连接。

GUI将突出显示按下的键并在右上方显示电机输出。左侧的测距仪每2米填充一个条,最多10米。

步骤9:校准测距仪

板上的开关ZYBO可用于配置板载测距仪。最小检测距离 d 是作为开关输入 i 的函数给出的:

d = 50i + 250

输入的整数步长可在0到15之间变化。这意味着0.25米到1米的距离范围。在最小距离处,第一个LED将开始闪烁。激活的LED数量与对象的接近程度成正比。

步骤10:辅助功能

此机器人非常容易访问。由于其控制简单,只需一根手指即可完全控制。为了提高可访问性,可以添加对其他输入设备的支持。这可能允许禁用用户使用身体的不同部分来控制机器人。

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 机器人
    +关注

    关注

    213

    文章

    30581

    浏览量

    219589
  • ZYBO
    +关注

    关注

    1

    文章

    10

    浏览量

    4788
收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    浅谈Wi-Fi 6E与Wi-Fi 7的关键器件——BAW滤波器新技术

    作者: Qorvo 亚太区无线连接事业部高级行销经理林健富   2020年1月,Wi-Fi联盟正式宣布开放6GHz频段(5925MHz-7125MHz),并将其命名为Wi-Fi 6E。2020年4月
    发表于 09-19 18:29 1321次阅读
    浅谈<b class='flag-5'>Wi-Fi</b> 6E与<b class='flag-5'>Wi-Fi</b> 7的关键器件——BAW滤波器新技术

    基于 SSID 的 Wi-Fi 定位:与其他定位服务的性能比较

    随着 nRF7000 Wi-Fi 协同 IC 的推出,我们现在可以提供具有 Wi-Fi、蜂窝物联网和 GNSS 功能的完整硅到云定位解决方案。nRF7000 针对 Wi-Fi 网络扫描进行了优化
    发表于 08-31 21:01

    LitePoint Wi-Fi测试软件减轻客户设计负担

    Wi-Fi 7于一年多前获得Wi-Fi联盟认证以来,作为最新一代通信技术,Wi-Fi正逐步成为用户实现无所不在无线连接的新选择。随着每一代Wi-Fi信号复杂性的提升,建议将硬件测试纳
    的头像 发表于 08-06 15:34 895次阅读
    LitePoint <b class='flag-5'>Wi-Fi</b>测试软件减轻客户设计负担

    如何选择合适的芯科科技Wi-Fi开发板

    您正在寻找适用于超低功耗物联网应用项目的Wi-Fi 开发板吗?本文将介绍Silicon Labs(芯科科技)推出的所有SiWx917 Wi-Fi 6和低功耗蓝牙5.4解决方案的Wi-Fi 开发板。SiWx917是目前市场上最节能
    的头像 发表于 07-09 09:15 2274次阅读

    科普|公司的Wi-Fi,为什么这么慢?

    大家在公司上班,经常会使用到Wi-Fi。最近这几年,随着时代的发展,高清视频会议等大带宽网络应用越来越普遍。而公司的网络,却非常不给力,频繁卡顿,严重影响使用体验。哪怕IT的同事已经把网络优化得很
    的头像 发表于 06-20 06:06 1060次阅读
    科普|公司的<b class='flag-5'>Wi-Fi</b>,为什么这么慢?

    Wi-Fi 8:开启极高可靠性 (UHR) 连接的新纪元——1

    英国作家狄更斯在《双城记》的开头写道:“这是最好的时代,也是最坏的时代。” 这句话若套用在现今Wi-Fi 的市场现状,何尝不是惊人的相似? 怎么说呢?Wi-Fi 从被发明至今已经经过了20多年的迭代
    发表于 06-13 11:09

    盘点#机器人开发平台

    Athena机器人****开发平台思岚推出Athena机器人开发平台,有望主导机器人开发平台未来
    发表于 05-13 15:02

    Wi-Fi HaLow如何突破传统Wi-Fi性能瓶颈?

    视频推荐在万物互联的时代,传统Wi-Fi在覆盖范围、功耗、连接数上渐显不足。而Wi-FiHaLow的诞生,正在用黑科技打破传统Wi-Fi的性能瓶颈!今天,我们一起来探究Wi-FiHaL
    的头像 发表于 04-22 11:38 730次阅读
    <b class='flag-5'>Wi-Fi</b> HaLow如何突破传统<b class='flag-5'>Wi-Fi</b>性能瓶颈?

    基于 Wi-Fi 的定位服务

    以下捕获使用 location_wifi_get 函数请求 Wi-Fi 定位服务。该事件的总功耗为 125.85mC,日志显示精确度为 30.0m。 Got location: method
    发表于 04-17 15:16

    nRF Cloud Wi-Fi 定位服务

    、Predictive-GPS、Single-Cell、Multi-Cell 和 Wi-Fi 定位。通过利用 nRF Cloud 的优化定位算法,基于 Nordic SoC 和 模组的产品可在定位用例
    发表于 04-17 15:07

    Wi-Fi 定位服务

    Wi-Fi 是一种著名的无线网络技术,用于设备的局域网和互联网接入。Wi-Fi 通过 Wi-Fi 网络为家庭、办公室和学校等环境提供便捷的无线互联网接入服务。 Wi-Fi 定位是一种
    发表于 04-17 15:01

    推出了期待已久的 nRF7002 低功耗Wi-Fi 6

    nRF7002 是一款协同 IC,提供无缝的 Wi-Fi 连接和基于 Wi-Fi 的定位(本地 Wi-Fi 集线器的 SSID 嗅探)。它旨在与Nordic现有的nRF52®和nRF53®系列蓝牙
    发表于 03-26 11:00

    Wi-Fi 7 与频率控制的关系

    作者:Poornima Apte 投稿:DigiKey 北美编辑 2024-12-18 Wi-Fi 需要使用一定范围的无线电频率才能让设备进行通信拨号。多年来,Wi-Fi 一直使用 2.4 GHz
    的头像 发表于 01-25 14:45 1189次阅读
    <b class='flag-5'>Wi-Fi</b> 7 与频率控制的关系

    华为海思正式进入Wi-Fi FEM赛道?

    转载自——钟林谈芯 昨天在网上看到一份九联UNR050 BE3600无线路由器拆机报告,Wi-Fi主芯片是海思新款Wi-Fi7芯片Hi1155,速率2.5G。 在海思AP Wi-Fi芯片系列中,还有
    发表于 12-11 17:42

    Wi-Fi 4到Wi-Fi 7:网速飙升40倍的无线革命

    1 Wi-Fi技术的快速发展 每一代新的Wi-Fi协议发布,都会带来更高的无线速率。   从Wi-Fi 4到Wi-Fi 7:无线网络技术显著提升,实现了网速的巨大飞跃。    
    的头像 发表于 12-09 10:10 1610次阅读
    从<b class='flag-5'>Wi-Fi</b> 4到<b class='flag-5'>Wi-Fi</b> 7:网速飙升40倍的无线革命