C++ 中的测距仪扫描器
这个测距仪扫描仪应用程序是使用英特尔® 物联网开发者套件、英特尔® Edison 板、英特尔® IoT 网关、云平台、API 和其他技术编写的一系列物联网(IoT)代码示例练习的一部分。
获取新的英特尔® 物联网开发者套件,这是一套完整的硬件和软件解决方案,可让开发人员使用英特尔® Galileo 和英特尔® Edison 板创建激动人心的新解决方案。请访问 英特尔® 物联网开发者中心。
这个测距仪扫描仪应用程序是使用英特尔® 物联网开发者套件、英特尔® Edison 板、英特尔® IoT 网关、云平台、API 和其他技术编写的一系列物联网(IoT)代码示例练习的一部分。
通过此练习,开发人员将学习如何:
- 连接 Intel® Edison 板或 Intel® IoT 网关,这些计算平台专为原型设计和生产物联网和可穿戴计算产品而设计。
- 使用英特尔® 物联网开发者套件中的 MRAA 和 UPM 与英特尔® Edison 板或 Arduino 101*(在美国以外地区品牌为 Genuino 101*)板的 IO 和传感器存储库进行交互,这是一套完整的硬件和软件解决方案,可帮助开发人员探索物联网并实现创新项目。
- 在英特尔® System Studio IoT Edition(用于 C/C++ 和 Java* 开发的 Eclipse* IDE)中运行这些代码示例,以创建与传感器和执行器交互的应用程序,从而快速开始为英特尔® Edison 板或英特尔® Galileo 板开发软件。
- 设置 Web 应用程序服务器,以通过直接从英特尔® Edison 板或英特尔® IoT 网关提供的网页查看测距仪数据。
它是关于什么的
使用英特尔® Edison 板或英特尔® IoT 网关,此项目可让您创建一个测距扫描仪,该扫描仪可以:
- 持续检查 Grove* IR 距离中断器。
- 使步进电机以 360 度圆形旋转。
- 可以通过内置的 Web 界面访问,以查看测距仪数据。
工作原理
随着步进电机旋转,它会暂停以从 Grove* IR 距离中断器获取读数。
这些读数可以在直接从英特尔® Edison 板或英特尔® IoT 网关提供的网页上查看。
硬件要求
Grove* Robotics Kit 包含
- 带有 Arduino* 分线板的英特尔® Edison 板或带有 Arduino 101*(在美国以外地区品牌为 Genuino 101*)板的英特尔® IoT 网关。
- Grove Base Shield V2
- Grove IR 距离中断器
- 步进电机控制器和步进电机
软件要求
如何设置
此示例已是 Intel® System Studio 中包含的物联网示例之一。要开始使用它,请按照以下步骤操作
- 从主菜单中,选择 Intel® IoT > 导入 IoT 示例。
- 展开“C++ > 如何编码示例 > 测距仪扫描仪”的树视图,然后单击“导入示例”。
- 从选择窗口中选择您的开发板,然后选择 下一步。
- 从选择项目类型窗口中选择 Intel® IoT C/C++ 项目,然后单击 下一步。
- 从选择目标操作系统下拉菜单中选择 Yocto,然后单击 下一步。
- 下一个选项卡将要求输入连接名称和目标名称。如果您不知道这些,请单击 搜索目标。
- 从下拉列表中选择您的 Edison。选择 确定。
- 您的连接名称和目标名称应该已填写。选择 完成。
- 将打开一个新窗口,您需要为项目选择一个名称并单击 下一步。
- 您的项目源文件现在默认在 IDE 的左上方可用。
连接 Grove* 传感器
您需要将 Grove* Base Shield V2 连接到兼容的 Arduino 101*(在美国以外地区品牌为 Genuino 101*)板分线板,以便将所有 Grove 设备插入 Grove Base Shield V2。确保 Grove Base Shield V2 上的小型 VCC 开关设置为“5V”。
您需要使用入门套件随附的外部电源适配器为英特尔® Edison 板或 Arduino 101*(在美国以外地区品牌为 Genuino 101*)板供电,或者使用外部“12V 1.5A”电源。您还可以使用外部电池,例如“5V”USB 电池。
此外,您还需要一个面包板和一个额外的“5V”电源为步进电机供电。
注意:您需要为电机单独的电池或电源。您不能为英特尔® Edison 板和电机使用同一个电源,因此您总共需要 2 个电池或 2 个电源。
- 将步进电机控制器插入 Arduino* 分线板上的四个引脚(9、10、11 和 12)。它还必须连接到接地(GND)、来自 Arduino* 分线板的 5V 电源(VCC)以及用于电机的单独 5V 电源(VM)。
- 将 Grove* 电缆的一端插入 Grove* IR 距离中断器,并将另一端连接到 Grove* Base Shield V2 上的 D2 端口。
将 Intel® Edison 板或 Intel® IoT 网关连接到 Intel® System Studio
如果提示输入用户名和密码,则用户名为 root,密码是您在配置英特尔® Edison 开发板时指定的密码。
Intel® IoT 网关设置
您可以使用连接到 Arduino 101*(在美国以外地区品牌为 Genuino 101*)板的英特尔® IoT 网关来运行此示例。
请按照此处的网站上的说明,确保您的英特尔® IoT 网关已设置好。
https://software.intel.com/en-us/getting-started-with-intel-iot-gateways-and-iotdk
Arduino 101*(在美国以外地区品牌为 Genuino 101*)板需要安装 Firmata* 固件。如果您在网关上安装了 IMRAA,则会自动完成此操作。否则,请手动将 StandardFirmata 或 ConfigurableFirmata 草图安装到您的 Arduino 101*(在美国以外地区品牌为 Genuino 101*)板上。
在 Intel® Edison 板或 Intel® IoT 网关上运行代码
当您准备好运行示例时,单击 Intel® System Studio 顶部菜单栏中的 运行。
这将使用 Cross G++ Compiler 编译程序,使用 Cross G++ Linker 链接程序,将二进制文件传输到英特尔® Edison 开发板,然后在开发板本身上执行它。
重新生成 HTML 和 CSS
如果您对 index.html 或 styles.css 文件进行了任何更改,则需要重新生成用于通过内置 Crow* Web 服务器提供资源的 .hex 文件。有关使用 shell 脚本的帮助,请访问此链接。
查看测距仪数据
测距数据通过一个单页 Web 界面查看,该界面在样本程序运行时直接从英特尔® Edison 板提供。
Web 服务器运行在端口 3000
上,因此如果英特尔® Edison 板或英特尔® IoT 网关连接到 IP 地址为 192.168.1.13
的 Wi-Fi,则在同一网络上的浏览器地址将是 http://192.168.1.13:3000
。
重要提示:本软件为示例软件。它并非设计或 intended 用于任何医疗、生命支持或生命维持系统、交通运输系统、核系统或任何其他关键任务应用,在这些应用中系统的故障可能导致严重伤害或死亡。该软件可能未经充分测试,可能包含错误或缺陷;它可能并非 intended 或适合商业发布。尚未获得该软件的任何监管批准,因此该软件可能未获批准在某些国家或地区使用。