×

用于演示英特尔Edison和SparkFun的机器人

消耗积分:2 | 格式:zip | 大小:0.01 MB | 2022-10-20

姬盼希

分享资料个

描述

更新:好消息!现在有一个新版本的 EdiBot:EdiBot 2.0

EdiBot 是一款用于演示英特尔 Edison 和 SparkFun 模块的机器人。它依靠 Arduino Block 来控制电机,而 Edison 处理视觉处理任务。机器人找到任何红色物体并朝最大的那个行驶。如果红色物体在视野中​​太大,机器人会后退。

第 1 步:订购和构建电源板

您将需要一块可以将电池直接供电给 Rover 5 板(为电机供电)并将电压降到 4.2 V 为 Edison 和 Arduino 供电的板。我在 OSH Park 上创建了一个委员会来做到这一点:

https://oshpark.com/shared_projects/YDhDBhlM

您可以订购或创建自己的。原理图和布局 (Eagle) 可以在EdiBot 的 GitHub 存储库中找到

注意:VSEN 信号不起作用!这个想法是让 Arduino 感应 TL431 的 REF 引脚上的电压,并在电压达到一定水平时打开低电量 LED。但是,在没有电源的情况下,ADC 引脚会将 REF 处的电压拉到阻止 MOSFET 开启的水平,这意味着您没有获得电源!如果我将来对电源板进行修订,这将得到解决。

您将需要使用以下组件构建电路板:

  • R1:200k
  • R2:130k
  • R_TRIM:1.65k 

您还需要通过一些电线将 Deans 连接器连接到电源板上的 VBATT 和 GND。这将允许机器人由锂聚合物电池供电。

 
 
 

第 2 步:准备 Arduino 模块

将一个 6 针直角接头焊接到 Arduino 模块侧面的 FTDI 端口中。使用3.3V FTDI 分线器,使用 StandardFirmata 使用此处的说明对 Arduino 块进行编程:

第 3 步:构建块堆栈

使用 Edison 硬件包(例如 M2 螺钉、螺母和支架),将 Edison 连接到 Arduino 块,然后连接到基块。堆栈应该是:

  • 爱迪生
  • Arduino块
  • 基块

注意:不要在 Arduino Block 上的 TX 引脚的安装孔上添加支架或螺母,否则您可能会将 RX 过孔短路到地并阻止 UART 通信。

第4步:制作盘子

您需要一些东西来将所有硬件安装到 Rover 5 底盘上。您可以在任何材料上钻孔,但如果您可以使用激光切割机,则可以更轻松地对齐安装孔。

下载以下矢量艺术文件(或 PDF)并在激光切割机上切割形状。

第 5 步:连接硬件

将 Rover 5 板、Edison Block 堆栈和机器人电源板安装到底板上。请注意,Rover 5 Board 使用其包装中的支架,Edison 堆栈使用“Edison Hardware Pack”中的 2 个支架,而电源板使用 #4-40 3/8 英寸塑料支架。

 
poYBAGNQxwSADafrABJjKf8Eq_0971.jpg
 

第 6 步:连接电线

将电源线从电源板上的 Vbatt 和 GND(螺丝端子)连接到 Rover 5 板的 Vbat 和 GND(螺丝端子)。我为每个连接使用了 2 根 22 AWG 绞合线,因为单个电机失速可以消耗几安培的电流。

使用 F/F 跳线,将以下从机器人电源板连接到 Arduino 模块:

  • VOUT → VIN
  • 地线→地线 

因为 VSEN 引脚不起作用,所以不要将任何东西连接到它或 WARN 引脚。为了将来参考,VSEN 应该转到 A0(Arduino 块),WARN 应该转到引脚 8(Arduino 引脚)。

再次使用 F/F 跳线,将以下从 Arduino Block 连接到 Rover 5 板:

  • 3V3 → VCC(任意)
  • GND → GND(任意)
  • 3 → CH1:PWM
  • 2 → CH1:目录
  • 9 → CH2:PWM
  • 4 → CH2:目录
  • 11 → CH3:PWM
  • 6 → CH3:目录
  • 10 → CH4:PWM
  • 5 → CH4:目录
 
poYBAGNQxw6AaZpYABQtjhEBAik942.jpg
 

第 7 步:连接网络摄像头

用 1/4 英寸螺钉将网络摄像头连接到板上。

在 Rover 5 Board 的侧面添加 4 个支架,然后连接网络摄像头板。使用 Rover 5 Board 随附的长支架。

通过 USB micro-A 适配器将网络摄像头连接到 Edison 的 OTG 端口。

 
poYBAGNQxxaACTw5AA0ixRF86ng823.jpg
 

第 8 步:将硬件安装到 Rover

将 LiPo 电池(或 Rover 5 随附的电池组)放入 Rover 5 机箱中。

 
poYBAGNQxyCANRgAAA5rNv5gjmo438.jpg
 

使用一些 #4-40 螺钉将硬件安装到机箱上。您可能需要卸下电源板才能找到背面的螺丝孔。

将电机电缆穿过板两侧的半圆形开口。将电机连接到 Rover 5 板上的以下部件:

  • 右前电机→CH1
  • 左前电机 → CH2
  • 右后电机 → CH3
  • 左后电机 → CH4

将电池电缆穿过板背面的半圆形开口。

 
poYBAGNQxyeAfUSWAA_FbH03bJI192.jpg
 

第 9 步:安装 Ubilinux

按照以下链接中的说明在您的 Edison 上安装 Ubilinux。安装后不要忘记等待至少 2 分钟!

第 10 步:安装库

通过串行控制台或 SSH 使用凭据登录 Edison:

用户名:爱迪生

密码:爱迪生

获得超级用户权限:

密码:爱迪生

按照 Ubilinux 教程中的说明启用 WiFi:

更新apt-get:

apt-get 更新

安装必备库:

apt-get install libopencv-* apt-get install python-opencv apt-get install python-pygame apt-get install python-scipy apt-get install python-serial apt-get install python-setuptools apt-get install python-pip

安装 Python 模块:

点安装 svgwrite

安装SimpleCV

git clone https://github.com/sightmachine/simplecv cd simplecv python  setup.py  install cd ..

清理包以释放一些空间:

apt-get 自动清理 apt-get clean apt-get 自动删除

第 11 步:运行 EdiBot 代码

下载存储库:

git clone https://github.com/ShawnHymel/EdiBot cd EdiBot

运行 Python 程序:

python Ball_Chase.py

您需要将电池插入电源板并将开关打开。这为电机提供动力。

第 12 步:玩你的机器人

将任何红色物体举到机器人的网络摄像头上。机器人将尝试追逐物体!

 
pYYBAGNQxy2AaOoDAAwkKRjqNMs339.jpg
 

奖励:让代码在启动时运行

如果您希望 Ball_Chase.py 程序在启动时运行,我们需要在运行脚本之前将 uvcvideo 模块列入黑名单并加载它(否则,网络摄像头无法正常运行):

纳米 /etc/modprobe.d/fbdev-blacklist.conf

在文件底部添加以下行:

黑名单uvcvideo

修改 rc.local 以加载 uvcvideo 模块并在启动时运行 Ball Chase 程序。打开 rc.local 文件:

纳米 /etc/rc.local

在“exit 0”行之前添加以下行:

/sbin/modprobe uvcvideo python  /home/edison/EdiBot/Ball_Chase.py  &

'&' 允许脚本在后台运行。重新启动爱迪生,让它去追逐红色的东西!

注意:您将需要执行硬重启(移除电源并重新打开)。否则,将不会加载网络摄像头 USB 驱动程序。此外,Linux 启动可能需要一段时间。为 EdiBot 供电后,等待大约 30 秒,让网络摄像头指示灯亮起。


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

评论(0)
发评论

下载排行榜

全部0条评论

快来发表一下你的评论吧 !