DesignSpark Electrical Logolinkedin
菜单 搜寻
提问问题

Intel Joule 使尺寸小巧的模块拥有了笔记本电脑的性能

 

通过将强大的性能和高级功能集成在一个小巧的外形中,Intel Joule 570x 使 IoT 开发迈上了一个新的台阶,并不断地蓬勃发展。

Intel Edison 的推出为 IoT 开发平台设定了新的标杆,它采用了双核 Intel Atom CPU、1GB RAM 和 4GB 闪存,并且具有蓝牙 WiFi功能,全部集成在一个极其小巧的体型中。大约 2 年之后,Intel 更进了一步,这次推出的 Joule 同样具有小巧的体型,但其具有的特性甚至能达到笔记本电脑的性能。。

Joule 570x 硬件概述

图片来源:intel.com

  • 1.7GHz(睿频 2.4GHz)Intel Atom 四核 64 位处理器,带有 4MB 一级缓存
  • 4GB RAM
  • 16GB 板载闪存,另加外部存储支持 (SDIO)
  • Intel HD GPU(18 个执行单元)和 HDMI v1.4b
  • 硬件编码和解码支持,包括 H.264、MVC、VP8 和 VP9
  • 集成 IEEE 802.11agn + ac 和 BT 4.2 无线连接
  • 2 个 100 引脚扩展,带最多 48x GPIO (4x PWM)
  • USB 3.0
  • 48 x 24 x 3.5mm!

很明显,Joule 的设计目的并不只是为了连接到温度和湿度等传感器上(尽管可以轻松做到),那么它到底是计划用于哪些类型的应用呢?首先就是以前只有使用台式机、笔记本电脑或大得多的 SBC 才能完成的工作,这些应用往往需要较大的功率、良好的连接,甚至极可能还需要进行视频输入/输出。

Intel 提供的示例包括一台地震检测仪(其中使用了数字加速计和实时在线数据)、一台循线机器人、测距仪和 TI SensorTag 的演示程序。但有必要说明的是,这些示例都不能真正测试出 Joule 的所有功能,而只是粗浅地揭示此类平台可实现的作用。

更有趣的是,提及对 Intel RealSense 深度感应摄像头的集成支持,这是一个相当完美的组合(真的吗?不好意思...),每一侧都带有 USB 3.0 接口,并且 Joule 能够轻松支持集成了计算机视觉的应用。

扩展板

图片来源:intel.com

就像 Edison 一样,通过细间距、高速度的连接器可实现定制解决方案的集成,而在 Joule 中具有一对 2x50 引脚 Hirose 插座。凭借 570x 开发套件中提供的扩展/分路板,以及两个更有利于原型开发的 20 引脚 0.1”间距排针,可轻松访问 SPI、I2C、I2S、UART、PWM、GPIO、电源等设备。

扩展板还提供了:

  • 电源、电平移位和滤波装置
  • 用于 RTC 的电池座
  • 用于 MIPI 显示屏的连接器
  • 电源和用户/通用按钮
  • USB C(固件更新)
  • USB 3.0 主机
  • Micro USB(控制台 UART)
  • Micro HDMI

Hello Ostro

针对 Ostro 项目提供了 Linux 支持,尽管我本人就是一位 Linux 和开源的拥护者,但是不得不承认,这对我来说也是一个全新的领域。此外,结合您需要处理的本土工具等要求定制 Linux 发行版的前景也是一个考虑因素。但是不用惊慌,事实证明 Ostro 是一个参考发行版,其构建使用了来自 Linux Foundation 工作组 Yocto Project 的工具,而 Intel 就是其成员之一。

Yocto Project 提供了自己的 Linux 参考发行版 Poky,它已经取得了一定的成功,并且应用在许多开发平台中,包括 Intel Edison 和 Galileo。但是,Poky 主要针对一般嵌入式应用,而 Ostro 则明确地以 IoT 为重点,优化用于安全的设备对设备通信和软件更新,以及其他许多通过 IoTivity 框架提供的高级功能。

Ostro 有两种版本可供选择:Ostro OS(用于无外设设备)和 Ostro OS XT(用于有图形和媒体支持的设备)。支持 Ostro 的设备还有 Edison 和 Galileo,以及 MinnowBoard Turbot、BeagleBone Black 和 Gigabyte 小型 PC。

设置

正如您所预期的一样,Intel 提供了大量详细文档,Joule 模块用户指南可为您提供全程指导,包括各项要求和加载 O/S、配置 WiFi 和开发选项,以及故障诊断。

最新的 Ostro 镜像将最先下载,然后可以在 Linux PC 上使用以下命令写出:

$ unxz ostro-xt-image-swupd-intel-corei7-64.dsk.xz

$ sudo dd if=ostro-xt-image-swupd-intel-corei7-64.dsk of=/dev/mmcblk0 bs=4M

请注意,dd “of” 参数可能与其他发行版和硬件有所不同!

将 Micro SD 卡插入扩展板之后,可以通过套管连接器接通 12VDC 电源并使用一个串行控制台通过 Micro USB 接口启动 Joule 模块。

在通过串行控制台连接时将直接进入由 Busybox 提供的根 shell 程序,而不出现登录提示。以上图像中可以看到 top 实用程序正在运行,其中显示了当前所运行进程以及资源利用情况的详细信息。

ConnMan 用于管理网络接口,我个人对此没有什么经验。用户指南中关于配置无线接口的章节让我有一点疑惑,研究一番之后,我使用了以下命令序列来配置 Joule 模块,将其连接至我们的 WPA2 加密办公室网络:

# connmanctl

connmanctl> scan wifi

connmanctl> services

connmanctl> agent on

connmanctl> connect wifi__managed_psk

此时,在提示下输入密码(预先共享的密钥)。

接下来,我按照用户指南中的说明配置 SSH 访问。之后,我就能对模块进行 SSH 访问,并继续更新中间件库。

开发

在 Intel IoT Studio 中创建新项目

Joule 并不缺少开发选项,目前可提供两个官方 IDE:Intel IoT Studio(用于 C/C++)和 Intel XDK(用于 node.js 应用程序)。除此之外,还可使用 node.js/JavaScript、C++ 和 Python 进行开发,就如同直接在 Joule 上开发一样轻松。在各种情况下,利用内置支持对 GPIO 和传感器的访问都通过 MRAA 实现了简化,同时还在 Edison、Galileo、MinnowBoard 和其他平台之间提供了应用程序的可移植性。

当然也可以通过其他语言来开发应用程序,如果没有提供软件包,则只需编译Ostro源码,并选择适用的打包方式。

RealSense

Intel RealSense 是一种极其紧凑的解决方案,集成了 1080p RGB 和红外摄像头以及红外投影仪,并且提供了朝前和朝后版本。前者为短程型,适合在面部识别、手势互动和视频会议等情况下使用。而朝后型的作用范围更大,适合在对象扫描和增强现实等应用领域中使用。

在上图所示的原型构建解决方案中,我们将 Intel Joule 570x 开发员套件与长程 Intel RealSense SR200 结合使用,另外还采用了一个简单的亚克力底座和摄像头支架,以及一个小型试验电路板,用于结合由扩展板分出的 GPIO。

在以后的一篇贴文中,我将讨论 RealSense SDK 以及其与 Intel Joule 570x 配合使用的示例应用程序。

初印象

Intel 想方设法将 Joule 570x 的完整性能汇合在一个比笔记本电脑内存模块还要小的体型中,这真让人难以置信。GPU 与 HDMI 接口、WiFi、蓝牙和 USB 3.0 的集成强调了一个事实:这不是典型的 IoT 平台,其目标在于更高级的应用,远远超出了简单的传感器、显示屏和执行器。

Ostro Project 看上去确实很有趣,让人放心的是它基于标准的嵌入式 Linux 工具和元数据,着重于解决 IoT 问题,其功能特别适用于以大众市场产品为工作目标并且需要调整规模的企业。

期待尝试将 Joule 570x 与 RealSense SR200 配合使用,并结合已提供示例!

Andrew Back

Open source (hardware and software!) advocate, Treasurer and Director of the Free and Open Source Silicon Foundation, organiser of Wuthering Bytes technology festival and founder of the Open Source Hardware User Group.

6 Dec 2016, 4:08