资料介绍
描述
介绍
今天,我们将构建一个像Maraca一样的简单连接设备。当您摇动设备时,它将开始将数据流式传输到 AWS。然后,您将能够在您的 AWS 账户中托管的仪表板上实时查看该数据。
马拉卡斯,有时被称为伦巴振动器和其他各种名称,是起源于拉丁美洲的打击乐器——拨浪鼓。它们被归类为 idiphones。玩家握住它们的把手,通常是成对的,然后摇晃它们。
将核心连接到 Edison 和 AWS 环境后,最终的 Connected Maraca 系统将如下所示:
第 1 部分:设置您的英特尔 Edison
打开包装盒后,带有 Arduino 扩展板的 Intel Edison,按照这些一次性步骤设置、连接和刷新最新映像。
第 1 步:组装您的英特尔 Edison 开发板
要设置您的爱迪生,请将您的爱迪生卡入分线板。接下来,将 J9 跳线移至“顶部”位置。最后,使用提供的两条 micro-USB 电缆将 Edison 连接到计算机。
单击此处以获取有关如何组装电路板的更多说明。
第 2 步:闪现你的爱迪生。
接下来,您需要刷新您的 Edison 板。首先,从 Intel 的下载页面下载最新的 Yocto 镜像和 Flash Tool Lite:
注意: 当您安装并打开 Flash Tool Lite 时,它可能会被命名为“Phone”Flash Tool Lite。这很正常!
确保您的 Intel Edison 已使用两条微型 USB 电缆连接到您的计算机。打开 Flash Tool Lite,您应该会在应用程序中看到您的开发板。按着这些次序:
-
浏览并选择您在上面下载的 Yocto 图像。
-
单击“开始闪烁”。此时,它可能会要求您断开并重新连接Edison。如果是这样,请拔下 USB 电缆并重新插入。
-
等到板子完成闪烁。这将需要重新启动电路板。
恭喜!你已经成功地刷新了你的爱迪生。
第 3 步:连接到您的英特尔 Edison。
为了连接到设备,您需要进行串行连接。在 Mac 或 Linux 操作系统上,您可以使用 screen 实用程序执行此操作。在 Windows 机器上,您可以使用 PuTTy 执行此操作。
注意: 一旦您建立了串行连接,如果您看到一个空白屏幕 - 按两次 Enter。
在 Mac 上:
-
打开一个新的终端窗口并输入
screen /dev/tty.usbs
. 按“制表符”自动完成该行。最后,115200 -L
在行尾添加并按两次回车。
在 PC 上:
- 下载 PuTTy 后,选择“串行”并将波特率设置为 115200。在设备管理器中,您可以找到 Edison 正在使用的 COM 端口。连接,当您看到一个空白窗口时,按两次 Enter。
在 Linux 上:
-
在使用 screen 命令连接到 Edison 之前,您需要安装 screen。键入这些命令,然后按两次 Enter。:
$ sudo apt-get 安装屏幕 $ sudo 屏幕 /dev/ttyUSB0 115200
第 4 步:设置和配置您的 Intel Edison。
连接到设备后,通过键入配置 Edison configure_edison --setup
。
第 5 步:设置 Arduino IDE 并上传基本草图以测试您的系统。
如果您没有安装 Arduino IDE,请按照此处的步骤进行安装。
要测试所有设置是否正确,请尝试使用 Arduino IDE 上传并运行“闪烁 LED”草图。
- 打开文件 > 示例 > 基础 > 闪烁
- 在 Tools > Board 下,确保您已选择“Intel Edison”。如果没有出现,请按照此处的步骤操作。
- 在工具 > 端口下,选择dev/cu.usbmodem...
- 单击验证,然后在编译后单击上传
- 看看 Edison 上的板载 LED 是否在闪烁!
第 2 部分:创建您的 AWS 环境
您的 AWS 环境由许多不同的 AWS 服务组成,这些服务为您的 Connected Maraca 生成的发送者数据提供安全、传输和存储。您的 AWS 环境将包括使用以下服务预置的资源:
Lambda + Kinesis + DynamoDB + Cognito + S3 + SNS + IAM + CloudFormation
以下是系统的工作方式:
AWS 中的所有服务都是通过一组丰富的 REST API 提供的。您可以利用众多SDK之一通过 API 以编程方式使用服务。或者,您可以通过基于 Web 的AWS 管理控制台调用服务。为了构建我们的 AWS 环境,我们将通过控制台手动调用多项服务。但请记住,我们今天执行的每一步都可以完全以编程方式完成,这也是 AWS 云如此强大的众多原因之一。
要创建您的 AWS 环境,我们将使用 CloudFormation 模板。CloudFormation 模板使用 JSON 格式的文档来快速可靠地预置 AWS 资源,称为“堆栈”。
第 1 步:创建 CloudFormation 堆栈。
注意: 在本教程中,我们将在 AWS俄勒冈地区 ( us-west-2 ) 中设置资源。在继续之前,请确保屏幕右上角的区域下拉菜单显示Oregon。
-
通过单击服务> CloudFormation打开 CloudFormation 控制台页面
-
按蓝色的创建堆栈按钮。
-
命名你的堆栈。接下来,将以下 URL 复制并粘贴到 S3 模板 URL 字段中:
-
创建并输入一个新的设备 ID,该 ID 将用于在连接的应用程序中识别您的设备。您可以在此字段中输入任何内容,但必须介于 5 到 10 个字符之间,并且不能包含空格或特殊字符。
-
选择“Edison”作为DeviceType。
-
按下一步。添加任何可以帮助您在将来识别此堆栈的标签。
-
按下一步。此屏幕将为您提供堆栈的概览。注意:您可以在此处估算此环境每月的成本。
-
按创建。您的堆栈现在将启动。
第 2 步:记下创建的输出。
成功启动 CloudFormation 堆栈后,您将能够看到它创建的输出。这些是您在配置 Connected Maraca 和网站可视化工具时将使用的值。要查看输出,请单击输出选项卡。它看起来像这样:
第 3 部分:创建 Lambda 函数
为了处理来自设备的数据,我们将使用 Kinesis 流和 Lambda 函数。
这是将用于处理写入 Kinesis 流的数据的Lambda 函数。您将剪切该函数中的源代码并将其粘贴到 Lambda 控制台中。
注意: 在本教程中,我们将在 AWS俄勒冈地区 ( us-west-2 ) 中设置资源。在继续之前,请确保屏幕右上角的区域下拉菜单显示Oregon。
-
通过单击服务> Lambda打开 Lambda 控制台页面
-
按蓝色的立即开始按钮。
-
输入函数的名称和可选的描述。
-
在上面列出的 URL 中剪切并粘贴 Javascript 文件中的源代码。将字符串“[TABLE_NAME]”替换为在 CloudFormation 堆栈中创建的设备表的名称。
-
选择在上一步中从 CloudFormation 堆栈创建的角色。它的名称应该类似于 [StackName]-DeviceExecutionRole-XXXXX
-
按创建。该函数现已创建。
-
通过选择“Actions->Add Event Source”向函数添加事件源
-
选择由 CloudFormation 堆栈创建的 Kinesis 流作为事件源。
-
按提交。您现在应该会在函数下方的“事件源”列表中看到 Kinesis 流。
恭喜!!您现在已成功设置 AWS 后端基础设施。
第 4 部分:组装互联马拉卡
Connected Maraca 简介:它会做什么?
Connected Maraca 将以三种模式之一运行:
-
DynamoDB 模式:它将项目发布到 DynamoDB 表,列为
、 - Kinesis 模式:它将带有 device_id、时间戳和传感器数据的 JSON 记录发送到 Kinesis Stream。
- SNS 模式:它将向 SNS 主题发布时间戳。
关于应用程序的一些注意事项:
- 该应用程序默认使用 DynamoDB 模式。
- 插座 D7 上的按钮(“模式”按钮)更改(循环)当前支持的服务
- RGB LED 指示当前模式(蓝色:发电机,橙色:kinesis,紫色:sns)
- 更改模式时蜂鸣器发出哔哔声,串行控制台输出验证新模式
- 摇动马拉卡触发器将记录发布到当前模式 AWS 服务
- 串行控制台输出显示消息发送和响应信息
- 发送消息和收到 AWS 目标服务响应之间的 RBG 模式 LED 变暗
第 1 步:确保您拥有所有正确的组件
现在让我们组装连接的马拉卡。您将需要以下部件:
注意: 有关 Grove Kit 中所有组件的更详细描述,请查看 Grove Wiki。
第 2 步:连接所有组件
拥有所有组件后,将Grove 底座护罩连接到 Edison Arduino 板上。您将把各种 Grove Kit 组件连接到基础护罩。完成后,请按照下列步骤操作:
- 将 Shield 上的 3.3 至 5V 开关设置为 3.3V
- Grove Button连接到底座屏蔽插座D7
- Grove 蜂鸣器连接到底座屏蔽插座D6
- Grove LED连接到基本屏蔽插座D3
- Grove 3 轴加速度计连接到任何底部I2C端口
第 5 部分:构建并运行您的 Connected Maraca
在本节中,我们将使用 Arduino IDE 构建连接的马拉卡。
首先,您需要下载 AWS/Edison Connected Maraca 示例代码:
AWS_Edison_Maraca_Sample.zip
第 1 步:打开 Connected Maraca 草图并将其上传到您的 Edison。
按着这些次序:
-
解压上面的 Maraca 示例文件。
-
打开 Arduino IDE。
-
解压后的文件夹中有三个文件夹(库)可以导入 Arduino IDE:HardwareLibrary、AWSEdisonLibrary 和 AWSArduinoLibrary。要导入它们,请单击草图 > 导入库 > 添加库。
1 / 2 -
打开文件夹Edison_Maraca并双击Edison_Maraca.ino文件
-
修改keys.cpp并在 CloudFormation 输出中添加提供给您的信息。要到达此处,请单击 AWS 服务 CloudFormation,然后在您成功部署的堆栈下,单击“输出”选项卡。
-
按验证,然后按上传。它们是 IDE 窗口左上角的图标。
1 / 2 -
这将在您的 Edison 上上传并启动应用程序。
这是一个指导您完成整个过程的视频:
注意: 本视频演示了在 Arduino IDE 中设置 Connected Maraca 项目所需的关键步骤。请记住,您还需要在 keys.cpp 文件中添加其余的常量。如上所述,您可以通过单击 CloudFormation 中的“输出”选项卡找到这些(Kinesis 流名称、DynamoDB 表名称等)。
第 2 步:查看串行监视器上的输出
您可以通过单击工具 > 串行监视器来实时监视输出。它应该显示如下内容:
注意: 当您按住连接到 Edison 的按钮时,它会将交付模式更改为 AWS。这三个选项是 DynamoDB、Kinesis 和 SNS。
尝试到SSID: 连接无线网络 SSID:冷凝水 IP 地址 。 . . 信号强度 (RSSI):- dBm 设置完成!循环主程序 初始:运动 发布Kinesis { :,:,:,:[{ : }]} Kinesis 记录发布Stream 按钮按下改变。新:DynamoDB 发布DynamoDB DynamoDB PutItem 成功! 按钮按下改变。新:SNS 发布SNS 发送消息ID:a500139f- c1c- - - f44c782b2d9 按钮按下改变。新:运动 发布Kinesis { :,:,:,:[{ : }]} Kinesis 记录发布Stream 按钮按下改变。新:DynamoDB 按钮按下改变。新:SNS 按钮按下改变。新:运动 发布Kinesis { :,:,:,:[{ : }]} Kinesis 记录发布Stream 按钮按下改变。新:DynamoDB 发布DynamoDB DynamoDB PutItem 成功! 按钮按下改变。新:SNS 发布SNS 发送消息ID: afc97f- a1f- -bbfe- a4e1cce71e
您现在使用 Arduino 成功地将数据从英特尔 Edison 发送到云端。
恭喜!您已成功构建 Connected Maraca!当你摇动你的马拉卡时,你的数据将显示在房间前面的排行榜上。
(可选)第 6 部分:可视化您的数据
可视化应用程序是通过 S3 交付的静态 Angular.JS 网站。由于该站点完全由 HTML、CSS 和 Javascript 组成,因此保护调用 AWS 服务的 Javascript 代码所使用的凭证非常重要。
为了提供对您环境中创建的资源的安全访问,我们将使用 Cognito 服务。Cognito 与 IAM 服务集成,允许您创建策略来定义如何访问环境中的资源。例如,您可能不希望全世界都能够在 DynamoDB 中的表中读取和写入数据。但是您可能希望允许某些用户或应用程序访问这些表。使用 Cognito 和 IAM,您可以将访问您的 DynamoDB 表的权限仅限于您信任的用户或应用程序,同时禁止访问其他所有内容。
第 1 步:创建 Cognito 身份池。
注意: 在本教程中,我们将使用 Cognito 服务,该服务仅在 AWS N. Virginia区域 ( us-east-1 ) 中可用。在继续之前,请确保屏幕右上角的区域下拉菜单显示N. Virginia。
-
通过单击服务> Cognito打开 Cognito 控制台页面
-
按蓝色的开始按钮。
-
命名您的 Cognito 身份池。您可以使用任何您想要的名称。
-
在未经身份验证的身份部分下,选中该框以启用对未经身份验证的身份的访问。
-
单击创建池按钮。您现在将看到以下屏幕:
-
单击查看详细信息并记下在此过程中创建的未经身份验证的IAM 角色的名称。按允许。
恭喜!您已经设置了 Cognito 身份池。
现在已经创建了 Cognito 身份池,我们可以将其链接到定义可视化应用程序所需权限的 IAM 角色。此角色实质上允许对 DynamoDB 表中的数据进行只读访问。
第 2 步:在 IAM 中附加可视化策略
-
通过单击服务> IAM打开 IAM 控制台页面
-
在左侧菜单中,单击角色。
-
查找设置 Cognito 身份池时创建的未经身份验证的角色。单击角色名称以编辑角色。
-
在托管策略下,单击附加策略。
-
AWS 有许多现成的托管策略,可用于定义对您的 IAM 用户、组和角色的访问权限。当您启动 CloudFormation 堆栈时,为可视化创建了一个托管策略。搜索“可视化”,应显示托管策略。
-
单击复选框并按附加策略。
恭喜!您已成功将您的可视化策略附加到您的 Cognito 未经身份验证的 IAM 角色!现在,您已准备好配置和上传 Web 应用程序。
第 3 步:上传并配置您的 S3 可视化网站。
要配置和安装可视化网站,首先下载应用程序并按照以下步骤操作:
可视化.tar.gz
-
将 tarball 解压到笔记本电脑的本地目录中。
-
在文本编辑器中打开文件visual/scripts/config.js 。
-
将所有具有“[TOKEN]”形式的配置值替换为所需的值。您将使用的值都是您在第 2 部分中创建的 CloudFormation 堆栈的输出。
-
保存对文件的更改。
-
通过单击服务> S3打开 S3 控制台页面
-
找到在您启动 CloudFormation 堆栈时创建的可视化存储桶。单击存储桶名称以打开存储桶。
-
点击左上角的上传。
-
在某些浏览器中,您可以简单地将文件拖放到页面上指定的框中。在其他情况下,您可以使用增强上传器复制文件夹中的所有文件。
或者,如果您设置了 AWS CLI 工具,则可以从命令行将可视化文件上传到您的 S3 存储桶。以下是用于复制文件的命令,其中 [YOUR S3 VISUALIZATION BUCKET] 是 CloudFormation 堆栈中名为“VisualizationBucketName”的输出参数的值:
--recusive 可视化 :
现在,如果您单击 CloudFormation 输出中提供的链接,您将看到带有流设备数据的可视化网站。
恭喜!!您已完成互联马拉卡!
- 英特尔Edison教程:UPM、MRAA
- 英特尔Edison Node JS物联网报警系统
- 使用英特尔Edison和thethings.IO的自动窗帘
- 英特尔Edison阈值WiFi Grapher
- 用于演示英特尔Edison和SparkFun的机器人
- 连接的马拉卡地震探测器
- 英特尔64和IA-32体系结构软件开发人员手册 5次下载
- 2021年英特尔处理器排行榜文件下载 61次下载
- 英特尔Edison蓝牙应用指南 10次下载
- 用于OpenCL的英特尔FPGA SDK资料 8次下载
- 英特尔最小型内核实现边缘智能 0次下载
- 面向嵌入式应用的英特尔Q965高速芯片组 24次下载
- 第二代英特尔奔腾M处理器 248次下载
- 基于英特尔XScale微体系结构的英特尔80219通用PCI处理器 56次下载
- 英特尔(intel)815主板PCB板文件
- 英特尔CPU部署Qwen 1.8B模型的过程 2318次阅读
- 基于C#和OpenVINO™在英特尔独立显卡上部署PP-TinyPose模型 2307次阅读
- 英特尔电脑棒拆解 1.2w次阅读
- 英特尔为什么要找三星代工生产芯片 7946次阅读
- 英特尔推出的Ice Lake笔记本处理器能使图形性能提升2倍 4025次阅读
- 英特尔的Agilex FPGA发布 必将对当前的FPGA市场带来一波最强的冲击 1142次阅读
- 世界移动通信大会上英特尔展示了哪些5G技术和未来应用场景 999次阅读
- 英特尔的全新芯片架构和六大技术新动向战略说明 4782次阅读
- 英特尔加速物联网和AI落地这是一场人工智能马拉松 3659次阅读
- 英特尔、苹果、高通、AMD的CPU有什么重大Bug吗? 5591次阅读
- 全新的英特尔无人机技术 5225次阅读
- 一文详解英特尔CPU惊天漏洞事件 4723次阅读
- 英特尔对自动驾驶所做的准备工作 2421次阅读
- 英特尔Edison计算平台详解 3824次阅读
- 英特尔ultrabook五大技术揭秘 921次阅读
下载排行
本周
- 1山景DSP芯片AP8248A2数据手册
- 1.06 MB | 532次下载 | 免费
- 2RK3399完整板原理图(支持平板,盒子VR)
- 3.28 MB | 339次下载 | 免费
- 3TC358743XBG评估板参考手册
- 1.36 MB | 330次下载 | 免费
- 4DFM软件使用教程
- 0.84 MB | 295次下载 | 免费
- 5元宇宙深度解析—未来的未来-风口还是泡沫
- 6.40 MB | 227次下载 | 免费
- 6迪文DGUS开发指南
- 31.67 MB | 194次下载 | 免费
- 7元宇宙底层硬件系列报告
- 13.42 MB | 182次下载 | 免费
- 8FP5207XR-G1中文应用手册
- 1.09 MB | 178次下载 | 免费
本月
- 1OrCAD10.5下载OrCAD10.5中文版软件
- 0.00 MB | 234315次下载 | 免费
- 2555集成电路应用800例(新编版)
- 0.00 MB | 33566次下载 | 免费
- 3接口电路图大全
- 未知 | 30323次下载 | 免费
- 4开关电源设计实例指南
- 未知 | 21549次下载 | 免费
- 5电气工程师手册免费下载(新编第二版pdf电子书)
- 0.00 MB | 15349次下载 | 免费
- 6数字电路基础pdf(下载)
- 未知 | 13750次下载 | 免费
- 7电子制作实例集锦 下载
- 未知 | 8113次下载 | 免费
- 8《LED驱动电路设计》 温德尔著
- 0.00 MB | 6656次下载 | 免费
总榜
- 1matlab软件下载入口
- 未知 | 935054次下载 | 免费
- 2protel99se软件下载(可英文版转中文版)
- 78.1 MB | 537798次下载 | 免费
- 3MATLAB 7.1 下载 (含软件介绍)
- 未知 | 420027次下载 | 免费
- 4OrCAD10.5下载OrCAD10.5中文版软件
- 0.00 MB | 234315次下载 | 免费
- 5Altium DXP2002下载入口
- 未知 | 233046次下载 | 免费
- 6电路仿真软件multisim 10.0免费下载
- 340992 | 191187次下载 | 免费
- 7十天学会AVR单片机与C语言视频教程 下载
- 158M | 183279次下载 | 免费
- 8proe5.0野火版下载(中文版免费下载)
- 未知 | 138040次下载 | 免费
评论
查看更多