『瀚思彼岸』» 智能家居技术论坛

 找回密码
 立即注册
查看: 13548|回复: 18

[流程系列] 车子定位,移动iot数据导入HA

[复制链接]

18

主题

275

帖子

2349

积分

金牌会员

Rank: 6Rank: 6

积分
2349
金钱
2074
HASS币
10
发表于 2018-9-24 10:20:32 | 显示全部楼层 |阅读模式
本帖最后由 九天 于 2018-9-24 14:00 编辑

使用了 STM32+GSM+GPS 开发板,向移动IOT平台发送GPS定位数据,然后读取这个数据,向HA提交

微信图片_20180924140021.jpg

流程如下:
IOT.PHP 上传到自己的服务器

<?php
$header[]="api-key:XXXXXXXXX";//此处写成自己的API-KEY值
$url="http://api.heclouds.com/devices/XXXXXXXXX/datastreams/location";/*获取数据流为**的数据值,注意此处设备ID号以及申请获取的数据流ID号都应根据自己的OneNet平台设备ID号,希望获取的数据流ID号进行更改*/ 
//用于获取从OneNet平台返还的数据
function get($url, $header)
{
       //1.初始化,创建一个新cURL资源
       $ch=curl_init();
       //2.设置URL和相应的选项
       curl_setopt($ch,CURLOPT_URL,$url);//需要获取的URL地址,也可以在curl_init()函数中设置
       curl_setopt($ch,CURLOPT_HTTPHEADER,$header);//启用时会将头文件的信息作为数据流输出
       curl_setopt($ch,CURLOPT_RETURNTRANSFER,1);//将curl_exec()获取的信息以字符串返回,而不是直接输出。
       curl_setopt($ch,CURLOPT_HEADER,0);//启用时会将头文件的信息作为数据流输出。
       if(curl_exec($ch)=== false) //curl_error()返回当前会话最后一次错误的字符串
       {
             die("Curlerror: ".curl_error($ch));
       }
       $response =curl_exec($ch);//获取返回的文件流
    curl_close($ch);
    return $response;
}
 
$output=get($url,$header);
$output_array=json_decode($output,true);
print_r($output_array["data"]["current_value"]);
?>


在NODE-RED里添加


QQ图片20180924101024.png

[{"id":"c0524b72.d57be8","type":"tab","label":"流程3","disabled":false,"info":""},{"id":"f0a81a3f.e51e78","type":"http request","z":"c0524b72.d57be8","name":"","method":"GET","ret":"txt","url":"http://www.xxx.com/iot.php","tls":"","x":240,"y":200,"wires":[["697c5394.614c9c"]]},{"id":"a25b6c09.876dc","type":"inject","z":"c0524b72.d57be8","name":"","topic":"","payload":"","payloadType":"date","repeat":"","crontab":"","once":false,"onceDelay":0.1,"x":90,"y":200,"wires":[["f0a81a3f.e51e78"]]},{"id":"5f41bf45.6eead","type":"http request","z":"c0524b72.d57be8","name":"","method":"GET","ret":"txt","url":"","tls":"","x":800,"y":200,"wires":[["2daf12e.33f24ee"]]},{"id":"2daf12e.33f24ee","type":"debug","z":"c0524b72.d57be8","name":"GPS请求输出","active":true,"tosidebar":true,"console":false,"tostatus":false,"complete":"true","x":980,"y":200,"wires":[]},{"id":"b965d3b4.0cd37","type":"function","z":"c0524b72.d57be8","name":"构造GPS请求","func":"const device = 'tuguan'\nconst lat = msg.lat\nconst lon = msg.lon\nreturn {\n url:`[url=https://www.xx.com:8123/api/gpslogger?device=]https://www.xx.com:8123/api/gpslogger?device=[/url]${device}&latitude=${lat}&longitude=${lon}&accuracy=0&battery=100`\n}","outputs":1,"noerr":0,"x":620,"y":200,"wires":[["5f41bf45.6eead"]]},{"id":"697c5394.614c9c","type":"function","z":"c0524b72.d57be8","name":"解析GPS数据","func":"const gps = msg.payload.substring(21,58)\nconst lon = gps.substring(0,12)\nconst lat = gps.substring(26,41)\nreturn {lon,lat}","outputs":1,"noerr":0,"x":420,"y":200,"wires":[["b965d3b4.0cd37"]]}]


感谢所有代码提供者。


NODE-RED解析GPS数据 这个里面我用了个笨办法,希望有人改进下
const gps = msg.payload.substring(21,58)
const lon = gps.substring(0,12)
const lat = gps.substring(26,41)
return {lon,lat}


iot.rar (1.6 KB, 下载次数: 11)

评分

参与人数 1金钱 +20 收起 理由
antsunzj + 20 在下对你的景仰犹如滔滔长江之水,连绵不绝.

查看全部评分

回复

使用道具 举报

123

主题

4661

帖子

1万

积分

管理员

囧死

Rank: 9Rank: 9Rank: 9

积分
16414
金钱
11668
HASS币
45
发表于 2018-9-24 12:49:01 | 显示全部楼层
哈哈,研究出来了啊!恭喜,厉害!
回复

使用道具 举报

18

主题

275

帖子

2349

积分

金牌会员

Rank: 6Rank: 6

积分
2349
金钱
2074
HASS币
10
 楼主| 发表于 2018-9-24 13:40:58 | 显示全部楼层
Jones 发表于 2018-9-24 12:49
哈哈,研究出来了啊!恭喜,厉害!

折腾的不容易啊
回复

使用道具 举报

0

主题

316

帖子

1732

积分

金牌会员

Rank: 6Rank: 6

积分
1732
金钱
1416
HASS币
0
发表于 2018-9-24 16:33:53 | 显示全部楼层
向大佬低头致敬
回复

使用道具 举报

42

主题

523

帖子

2517

积分

金牌会员

Rank: 6Rank: 6

积分
2517
金钱
1989
HASS币
30
发表于 2018-9-24 19:03:35 | 显示全部楼层
移动数据导入ha时做什么用的?如何用地图显示出轨迹?
回复

使用道具 举报

18

主题

275

帖子

2349

积分

金牌会员

Rank: 6Rank: 6

积分
2349
金钱
2074
HASS币
10
 楼主| 发表于 2018-9-24 20:23:09 来自手机 | 显示全部楼层
定位,回到家,自动打开家里的车库门
回复

使用道具 举报

4

主题

113

帖子

515

积分

高级会员

Rank: 4

积分
515
金钱
402
HASS币
0
发表于 2018-9-25 04:26:43 | 显示全部楼层
楼主这份宁可用上别人羡慕嫉妒恨也绝不用手按一下遥控的折腾尽头,充分体现了HA娱乐的价值,点赞
回复

使用道具 举报

62

主题

603

帖子

6404

积分

论坛元老

Rank: 8Rank: 8

积分
6404
金钱
5726
HASS币
240

教程狂人论坛风云人物

发表于 2018-9-25 08:53:17 | 显示全部楼层
成本咋样啊?你这个要打印个外壳,这样就完美了。
尝试过萝卜,我想你一定会忘记青瓜
回复

使用道具 举报

24

主题

608

帖子

3490

积分

元老级技术达人

积分
3490
金钱
2877
HASS币
0

卓越贡献

发表于 2018-9-25 08:59:47 | 显示全部楼层
哇!厉害!这是教程吗?
回复

使用道具 举报

42

主题

523

帖子

2517

积分

金牌会员

Rank: 6Rank: 6

积分
2517
金钱
1989
HASS币
30
发表于 2018-9-25 09:28:40 | 显示全部楼层
九天 发表于 2018-9-24 20:23
定位,回到家,自动打开家里的车库门

有钱人,还有车库。
我看蓝牙更适用,是地下车库也不会影响定位信号
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

Archiver|手机版|小黑屋|Hassbian

GMT+8, 2024-12-4 16:30 , Processed in 0.057256 second(s), 36 queries .

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表