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

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

3天内不再提示

如何通过蓝牙将数据值从Arduino板发送到M2X Cloud

454398 来源:wv 2019-10-15 14:24 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

第1步:材料

在开始之前,您需要注意以下几点:

NodeMCU ESP8266蓝牙模块

跳线

面包板

Arduino开发板

第二步:下载

转到http://www.mingw.org/wiki/Getting_Started,然后下载mingw-get-setup.exe。请遵循安装说明。进入软件包选择和安装时,请确保安装msys-base,mingw32-base和mingw-developer-toolkit。

下一步,请访问https://git-scm.com/下载/赢得下载Windows版Git Bash。下载.exe文件,然后按照其上的安装说明进行操作。

转到https://curl.haxx.se/download.html并将curl-7.49.1.zip下载到您的计算机。提取.zip文件夹,您就可以开始使用!

最后,从https://en.osdn.jp/projects/ttssh2/releases/下载Tera Term并按照安装说明进行操作。

步骤3:M2X入门

转到https://m2x.att .com/并创建一个帐户。

在设备选项卡下,单击左侧面板上的“新建”按钮,然后选择创建新设备。

创建后设备上,添加新的流。创建它之后,您现在可以登录并将值保存到其中。

步骤4:创建脚本

打开Git Bash在计算机上,然后导航到要保留脚本的文件夹。 Git Bash使用Linux之类的命令(cd,vim,mkdir等)。要转到文件夹,请使用不带引号的“ cd”。例如,我想将文件保留在桌面上,因此在git bash中,我键入了“ cd desktop”。

键入“ vim script_name.sh”以创建一个新的脚本文件(并替换为您的脚本名称)。复制脚本并将其粘贴到文件中。

脚本的运行方式如下:

脚本将连续运行,直到到达文件末尾,并且每次读取一行时,脚本都会保存任何内容它读入一个名为‘line’的变量

接下来,我们获得ISO8601格式的日期(YYYY-MM-DDTHH:MM:SS.nnnZ),因为我们需要这样做才能将数据发送到M2X云使用curl

现在将读取的值(行)发送到设备并使用curl流化。确保使用您自己的设备信息替换curl命令中的“设备ID”,“流名称”和“设备API密钥”。

将curl请求的响应保存到名为“ send”的变量中。

从send变量获取状态。如果被接受,则继续该文件。否则,请退出程序。

第5步:Arduino代码

我们将使用来自的SoftwareSerial库Arduino IDE,以便Arudino可以将数据发送到HC-05蓝牙模块,该模块随后将通过蓝牙将数据发送到计算机。

将HC-05的TX连接到Arduino的数字引脚10。

将HC-05的RX连接到Arduino的数字引脚11。

将HC-05的GND连接到Arduino上的GND。

将HC-05的VCC连接到Arduino上的5V。

如果要更改发送数据的时间间隔,请确保脚本和Arduino代码中的时间间隔相同。

注意:我只是向云发送随机数,但是您总是可以获取一个传感器,并修改Arduino代码以读取传感器输入,然后将该数据发送到HC-05模块,而不仅仅是向其发送随机数。

步骤6:一切就绪

现在是时候将计算机与HC- 05模块!转到设置-》更改PC设置-》 PC和设备-》蓝牙。确保计算机上的蓝牙已打开,并确保HC-05模块已打开(模块上的红色LED指示灯将快速闪烁)。从蓝牙设备列表中选择HC-05,然后输入配对代码。如果您的HC-05具有默认设置,则配对代码应为 1234 。

打开Tera Term并连接到HC-05。与它配对后,应该会显示两个COM端口。选择编号较低的一个。如果成功连接HC-05,则其上的红色LED指示灯应大约每1或2秒快速闪烁两次。

我们现在需要记录HC-05发送的所有数据。转到文件-》日志。..,然后选择保存日志的位置。

步骤7:运行程序

现在您已经有了Tera Term的日志,可以将所有传入数据保存到文件中,您可以将Arduino程序上传到Arduino。一旦上传,您的数据值应该开始以固定的时间间隔出现在Tera Term窗口中。该数据将保存在文件中,因为我们选择了记录会话。

通过打开Git Bash并转到脚本的位置来运行脚本。要运行该脚本,请键入“ 。/script_name.sh file_name”,并将您的脚本名称和Tera Term日志作为文件名。

现在,您可以登录M2X并看到其中的数据值您的设备流!

步骤8:AT&T流程

使用M2X,我们可以看到已发布的值的列表或图形。此步骤将向您展示如何在AT&T Flow中检索这些值,以便您可以对数据进行某些操作(发送电子邮件或文本通知等)。

在flow.att.com上创建一个帐户。然后单击左下角附近的(+)图标以创建新流程。

从“注入”节点开始。将其设置为在开始时注入,并将时间间隔设置为与Arduino代码和脚本设置为相同的时间间隔。

添加一个Function节点(我称为mine Get M2X Value)以从M2X获取数据值,并将Inject节点的输出连接到Function节点的输入。功能节点的代码在上图中。

添加一个M2X节点,并将其连接到功能节点。

将M2X节点的输出连接到JSON节点,以便将M2X数据转换为javascript对象。

将JSON节点的输出连接到另一个函数节点(我称为mine Parse Output)。上图中是第二个功能的代码。此函数从msg.payload中查找并获取值,并将其转换为数字。如果您的流发送非数字数据,则需要更改函数以不将值转换为数字。另外,您可能需要根据每个值的大小来更改从中获取值的索引

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

    关注

    119

    文章

    6221

    浏览量

    177524
  • Arduino
    +关注

    关注

    190

    文章

    6515

    浏览量

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

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    广成科技蓝牙转CAN模块的作用和应用场景

    接收到蓝牙设备发送数据时,会将其转换为CAN总线数据格式,发送到CAN总线上,实现两者之间的数据
    的头像 发表于 09-29 11:05 661次阅读

    SPI主机/机接收发送都开启DMA通信

    发送;SPI 作为机时,接收和发送同时开启 DMA 进行数据接收和发送。 注:本应用笔记对应的代码是基于雅特力提供的V
    发表于 09-10 16:56

    M483SIDAE SD控制器,无法使用DMA读取SDHC获取正确的数据,怎么解决?

    ) 为什么DMA无法SD卡中读取正确的数据2、用于SDXC型SD卡 目前,大多数SD卡都是SDXC型,M483SIDAE支持 SDXC 卡吗?甚至
    发表于 08-28 06:21

    如何通过VCOM4个CAN FD消息转换为SLCAN?

    通过VCOM接口M460系列微控制器(MCU)的4条CAN FD消息转换为SLCAN协议,并发送到计算机。
    发表于 08-19 06:23

    如何清除CYUSB3014的缓冲区数据?USB接口数据什么时候发送到电脑?

    该芯片是CYUSB3014。工作模式下:GPIF II接口作为生产者,USB接口作为消费者。数据外部FPGA进入GPIF II接口,然后通过USB 3.0接口发送到计算机软件。 请问
    发表于 07-18 07:58

    如何使用 CYW20829 获得的传感器数据发送到广播中?

    我计划使用外部传感器原始数据输出到蓝牙模块的闪存中,然后通过蓝牙发送原始
    发表于 07-02 07:16

    CY8CPROTO-062S2-43439无法连接到ThingSpeak服务器怎么解决?

    的。 使用 cURL 验证互联网访问: 我的电脑,我可以使用以下方式数据发送到ThingSpeak: ​curl -X GET \
    发表于 06-05 08:26

    如何使用USB2.0数据fpga传输到PC?

    : Input/Output Error您CAN 帮助我找到此错误的解决方案,以便 CAN 数据 fpga 发送到计算机?在此先感谢。 告诉我是否需要查看 JAVA 代码和 vhd
    发表于 05-29 06:28

    如何小于1024字节的缓冲区FPGA发送到PC?

    的 PC 请求读取时出现错误,然后我尝试 FPGA 连续发送到 PC。 最后,我意识到 PC(主机)只能读取 1024 个字节。 非常糟糕,如何小于1024字节的缓冲区FPGA
    发表于 05-09 08:18

    CYUSB3017是否可以在系统运行时向SX3发送命令,然后SX3这些命令转换为I2C命令并将其发送到FPGA?

    我们有一种场景,我们想要在传感器运行时更新图像传感器。 是否可以在系统运行时向 SX3 发送命令,然后 SX3 这些命令转换为 I2C 命令并将其发送到 FPGA?
    发表于 05-07 06:15

    FreeRTOS读取ADS1299数据有误

    您好,请问,用stm32的FreeRTOS的队列对ADS1299传感器读取数据,已设置采样率为2khz 在采集任务中:通过spi读取数据——滤波(-DSP库)——
    发表于 05-05 22:48

    nRF Cloud Wi-Fi 定位服务

    中实现高性能和超低功耗。对于 Wi-Fi 定位请求,nRF Cloud 可借助 Wi-Fi 数据库计算设备位置,该数据库包含不同 Wi-Fi 网络的坐标。然后,设备位置将从 nRF Cloud
    发表于 04-17 15:07

    ad77681数据读取异常的原因?

    数据发送到arm,两个spi均使用了DMA。 在采样率为128KHz时,adc的数据异常,会有接近于参考电压的突变,并且会有其他异常值,正常的数据
    发表于 04-16 07:26

    通过Arduino Nano Matter开发构建智能卷帘系统

    Alexa 语音 AI 进行控制,并将传感器数据集成到开源 Home Assistant 软件和 Arduino Cloud 中,以实现更高级的自动化和实时监控。无论您是经验丰富的开发者,还是刚刚入门的新手,这个项目
    的头像 发表于 02-28 09:46 914次阅读
    <b class='flag-5'>通过</b><b class='flag-5'>Arduino</b> Nano Matter开发<b class='flag-5'>板</b>构建智能卷帘系统

    ADS8556采集到的数据通过McBSP发送到C28346,BUSY/INT和RESET这两个引脚应该接什么?

    ADS8556采集到的数据通过McBSP发送到C28346,关于引脚的连接,其中BUSY/INT和RESET这两个引脚应该接什么?
    发表于 02-11 06:22