BDW01手把手系列03:BDW01开发板基于TencentOS Tiny、腾讯云、腾讯连连之定位追踪项目!

定位追踪项目

在物品、枪支、电动车等需要实时追踪的领域,我们需要获取定位数据并上传到云端或手机端,从而可以查看所在位置。

本项目,在BDW01开发板上,基于TencentOS Tiny,通过中科微定位模块,获取到GPS或北斗定位,然后通过2G模块将定位上传到腾讯云,并通过微信小程序腾讯连连查看实时位置。

参考前一篇《BDW01手把手系列01:BDW01开发板基于TencentOS Tiny之helloword!》进行环境的搭建。


一、原理图部分

该项目的关键原图图如下:

M5313:通讯模块

ATGM336H:中科微定位模块


二、步骤分解

1. 云端操作步骤

登录腾讯云物联网开发平台(IoT Explorer),点击“立即使用”进入控制台,个人开发可以使用微信进行登录。

1.1 新建项目

具体可参考《BDW01手把手系列02:BDW01开发板基于TencentOS Tiny、腾讯云之测试!》新建项目章节,根据文档已经创建了一个智能终端的项目

1.2 产品开发

1.2.1 新建产品

点击项目名称进入到该项目中,点击新建产品:

产品新建成功后,可在产品列表页查看到“电动车追踪”。

1.2.2 新建功能

点击电动车追踪产品进入。

1.2.2.1

参照下图建立两个功能:灯和位置两个功能

1.2.2.2

json格式为: 

{
  "version": "1.0",
  "profile": {
    "ProductId": "OKY0D78DP2",
    "CategoryId": "1"
  },
  "properties": [
    {
      "id": "led",
      "name": "灯",
      "desc": "",
      "mode": "rw",
      "define": {
        "type": "bool",
        "mapping": {
          "0": "关",
          "1": "开"
        }
      },
      "required": false
    },
    {
      "id": "location",
      "name": "位置",
      "desc": "",
      "mode": "r",
      "define": {
        "type": "string",
        "min": "0",
        "max": "1024"
      },
      "required": false
    }
  ],
  "events": [],
  "actions": []
}

1.3 创建测试设备

在【设备调试】页面中,单击【新建设备】,设备名为 bd_location:

2. 设备侧操作

使用 Keil-MDK 打开 mqttclientiotexplorerlocation 工程: TencentOS-tiny\board\BDW01-STM32L496VG\KEIL\mqttclientiotexplorerlocation

使用 Keil-MDK 打开 mqttclientiotexplorerlocation 工程: TencentOS-tiny\board\BDW01-STM32L496VG\KEIL\mqttclientiotexplorerlocation

2.1.1 修改MQTT对接参数

在腾讯云物联网开发平台可以看到一些产品ID、设备ID、设备秘钥三个参数,如图:

接下来进入TencentOS-tiny仓库中的tools目录,使用python运行脚本mqttconfiggen.py,按照提示输出刚刚在平台查询到的三个参数,脚本会自动生成mqtt配置参数:

① 输入产品ID;
② 输入设备名称
③ 输入设备秘钥;
④ ⑤ 保持默认,直接回车;
⑥ 需要的生成信息。
接下来在代码中修改配置信息:

2.1.2 修改mqtt对接topic

设备向云端上报数据的topic如下: 上行请求 Topic: $thing/up/property/{ProductID}/{DeviceName} 上行响应 Topic: $thing/down/property/{ProductID}/{DeviceName}
首先订阅上行响应topic,数据内容如下:

{
	"method":"control",
		"clientToken":"clientToken-9d2601f3-c36f-46a5-bdf6-1bd21c547406",
	"params":
	{
		"led":1,
	}
}

修改代码,首先根据自己的产品ID和设备ID修改上报topic

然后修改订阅topic:

打开2g模块M5313的串口接收:

2.1.3 编译下载

修改完成之后编译工程,下载到开发板中,重新上电开始运行,在串口助手中查看打印日志:

2.1.4 上报定位

GPS获取到定位时,串口会打印GPS定位信息:

同时将定位上传到云端, 在云端查看上报日志:

2.1.5 LED控制

在设备调试里,打开在线调试,选择灯,期望值选择打开状态,然后点击发送,成功控制板子上的LED,并返回数据

3. 腾讯连连小程序操作步骤

3.1 添加家庭

手机端在【微信】搜索【腾讯连连】小程序,首次使用需要进入后点击【我的】->【家庭管理】,添加一个你喜欢的名称即可。

3.2 添加设备

进入后在中下方点击➕号,开始扫描二维码

在腾讯云物联网开发平台进入【设备调试】,点击对应设备后的【二维码】:

腾讯连连扫描此二维码即可成功添加设备,添加成功之后如图:

给设备上电,等一会可以看到设备上线,点进去可进行LED的控制, 开发板上的LED会亮。

3.2.1 面板配置

可以采用H5对小程序的显示页面进行编辑

下载文件然后上传文件index.js、index.css

index.css:

链接:https://pan.baidu.com/s/1utp7B_mjA0RoWrXK8_LYcw 
提取码:5dmc 

index.js:

链接:https://pan.baidu.com/s/18R0_z0hRkIsjfcXyWS4R0A 
提取码:o1va 

并将腾讯连连小程序里的帐号添加至白名单。

用小程序重新扫描设备二维码,给设备重新上电,当有定位时,效果如下:

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

爬呀爬的水滴

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值