搜索
bottom↓
回复: 32

通过嵌入式GPRS DTU将数据上传至乐联网

  [复制链接]

出0入0汤圆

发表于 2014-9-29 13:58:00 | 显示全部楼层 |阅读模式
本帖最后由 jerry840922 于 2014-9-29 14:06 编辑

文档主要阐述使用51单片机(STC15F2K60S2)通过嵌入式GPRS模块将温湿度及电池电压数据上传到乐联网平台的过程,主要应用于农业生产园区提供简易小型气象站数据的采集与记录。整个模块使用3.7V锂电池供电,为了实现低功耗工作,通过STC15F2K60S2内部掉电唤醒定时器来计时实现间歇工作,工作间隔时长以15min为单位增加,经过测试4000MA电池满电的状态下,30MIN分钟发一次数据可工作15-20天左右,同时有太阳能板供电接口,接入5V太阳能板可长时间工作。
需要准备的硬件材料:1、GPRS模块;2、手机流量卡;3、传感器:DS18B20,AM2303/AM2302;4、STC15F2K60S2模块;5、锂电池(或者其他电源);6、5V太阳能板(可选)。
需要准备的上位机平台:注册乐联网(www.lewei50.com)账号并获取userkey,添加相应的传感器设备


一、        通过GPRS模块发送数据到乐联网的实现原理
为了说明原理这里借用一张图:(来源文档《基于 TCP 的数据上传和反向控制流程的分析-V1.1》,感谢作者Wicy001。)

实现的原理就是通过GPRS模块以TCP Client模式连接乐联网WEB服务器(www.lewei50.com:80),以HTTP协议POST方式向乐联网数据平台发送数据,GPRS模块要做的工作就是透传,不带任何条件的透传,STC15F2K60S2的任务就是串口发送HTTP协议字符,是不是觉得51这老古董平台能轻易搭上TCP,HTTP这些名词有些不可以思议?最开始我也不相信,不管你信不信,现在反正我信了。
为了验证数据能否正确上传,我们可以使用socket tool这个调试工具测试一下(当然首先你必须注册有乐联网账号,获取了userkey并在平台上添加了相关传感器),发送的HTTP协议字符格式如下:
POST /api/V1/gateway/UpdateSensors/02 HTTP/1.1   //注意是你的设备标志
userkey:****************************************//你的USERKEY
Host: open.lewei50.com
Content-Length: 117             //下面绿色字体的字符长度
Connection: close                //这一行结束后必须两次回车换行                       

[{"Name":"Y1","Value":" 218"},{"Name":"Y2","Value":" 898"},{"Name":"Y3","Value":" 208"},{"Name":"Y4","Value":" 408"}]

  
以上就是模拟发送数据的过程。
二、        硬件平台的搭建
1、        GPRS模块的设置
我测试过两个品牌的嵌入式GPRS DTU模块,分别是厦门四信的F2113模块和山东有人科技的USR-GPRS-7s2,其中F2113是一开始测试采购的模块,价格相当高大上,人民币500+,淘宝没有相关卖家销售,有人科技的USR-GPRS-7s2模块价格就相对亲民多了,淘宝商城有售,人民币148元。在此不得不吐槽一下,这两款产品测试过程中都遇到了一些问题,有几个问题一直追到他们研发那才得以解答,最后究其原因还是因为相对应的文档功能参数描述不清楚或者驴唇不对马嘴。
GPRS模块设置需要强调的一点就是针对乐联网发送数据,必须使用纯纯的透传模式,GPRS模块运行后不能发送注册包,心跳包等,不然乐联网服务器绝对会给你好看。

厦门四信F2113模块参数设置

有人科技 USR-GPRS-7s2参数设置
2、下位机51平台的搭建

传感器接口:整个电路有两个传感器接口,一个是单线接口,支持AM2302/AM2303,DS18B20等单总线器件,另一个为双线接口,支持单总线和I2C接口,除了可以使用单总线器件外,还可以接入如SHT系列的传感器。
电源部分:电源可以使用锂电池供电,采用LDO SP6201为整个系统提供3.3V电源,同时有TP4056芯片可以为锂电池充电。
电池电量检测部分:使用电阻分压与TL431基准配合,通过51内部ADC检测电池工作状态下电压,可以一定程度上反映电池的电量情况。
GPRS模块供电部分:由于低功耗的要求致使GPRS模块必须间歇性的工作,因此采用PMOS FDN304来对GPRS模块电源进行通断管理,在此需要特别说明是:USR-GPRS-7s2必须在电源回路上并接一个470uf以上的电容来提供稳定的电源,否则模块间不能正常工作,这点我耗费了1天的时间。
单片机与GPRS接口电路:两个模块之间采用串口连接,同时单片机需要检测GPRS模式上线指示信号来决定是否需要发送数据
三、        下位机软件实现简要介绍
1、51工作流程图如下:
下位机软件部分主要核心工作是采集数据并通过串口向GPRS模块发送,程序编译下载到单片机之前需要设置userkey,设备标志,传感器数量等参数

我使用的是AM2303和DS1BB20两个传感器,AM2303测量环境温湿度,DS18B20测量土壤温湿度,如果使用其他传感器如SHT系列,只需要在程序中添加删除相应的驱动即可。
传感器接口定义在文件config.h里面可以更改定义

串口发送的数据个数在文件uart.c中有详细的注释,如果发送数据需要调整,只需要修改函数http_send_data(void)相应的行既可。  
通过上面的过程可以得出,不论什么单片机平台,只要能实现字符数据的串口输出即可通过GPRS模块透传向乐联网平台发送数据,同时也可以得出这样一个结论,不论你是使用透传功能,还是AT指令操作GPRS模块,只要能模拟http协议post方式发送数据,就能向乐联网发送数据,一切皆有可能!

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x

阿莫论坛20周年了!感谢大家的支持与爱护!!

一只鸟敢站在脆弱的枝条上歇脚,它依仗的不是枝条不会断,而是自己有翅膀,会飞。

出0入0汤圆

发表于 2014-9-29 14:11:13 | 显示全部楼层
学习了。

出0入0汤圆

发表于 2014-9-29 14:13:26 | 显示全部楼层
厦门四信  和  有人  哪个好?

出0入0汤圆

发表于 2014-9-29 14:19:32 | 显示全部楼层
dtu看起来蛮强大的,这么多配置参数!

出30入0汤圆

发表于 2014-9-29 15:02:55 | 显示全部楼层
  支持楼主

出0入0汤圆

 楼主| 发表于 2014-9-29 15:43:54 | 显示全部楼层
ljt80158015 发表于 2014-9-29 14:13
厦门四信  和  有人  哪个好?

各有优势吧,感觉厦门四信的更可靠,但是方案老旧,成本高,有人的使用MTK平台,价格有优势

出0入0汤圆

 楼主| 发表于 2014-9-29 15:46:55 | 显示全部楼层
各位如果需要源程序的话,我可以传上来,都是借鉴前人的成果,回馈阿莫论坛,多交流

出0入0汤圆

发表于 2015-7-11 09:57:58 | 显示全部楼层
jerry840922 发表于 2014-9-29 15:46
各位如果需要源程序的话,我可以传上来,都是借鉴前人的成果,回馈阿莫论坛,多交流 ...

楼主能把程序传上来参考一下?                                                                                                                                   

出0入0汤圆

发表于 2015-7-11 10:19:13 | 显示全部楼层
支持楼主,学习了

出0入0汤圆

 楼主| 发表于 2015-7-12 17:03:43 | 显示全部楼层
这是源程序,有些乱,欢迎交流

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x

出0入0汤圆

 楼主| 发表于 2015-7-12 17:04:09 | 显示全部楼层
banyan_city 发表于 2015-7-11 09:57
楼主能把程序传上来参考一下?                                                                       ...

源程序在10楼

出0入0汤圆

发表于 2015-7-13 09:27:08 | 显示全部楼层

程序很好,多谢楼主                                                                                                                                                            

出0入0汤圆

发表于 2015-7-14 08:43:27 | 显示全部楼层
本帖最后由 wtiechen1969 于 2015-7-14 09:35 编辑

多谢楼主分享,正准备学习这方面。楼主能不能把原理图文件发一个,JPG的看不清楚,谢谢

出0入0汤圆

发表于 2015-7-14 09:01:37 | 显示全部楼层
最近关于tcp长链接好像很火~~

出0入0汤圆

 楼主| 发表于 2015-7-16 23:59:29 | 显示全部楼层
wtiechen1969 发表于 2015-7-14 08:43
多谢楼主分享,正准备学习这方面。楼主能不能把原理图文件发一个,JPG的看不清楚,谢谢 ...

原理图很简单,有疑问和建议欢迎交流

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x

出0入0汤圆

发表于 2015-7-17 00:34:59 | 显示全部楼层
一直没有理解,DTU在网络连接不上的时候,透传模式发的数据发不出去是怎么处理呢 ?

出0入0汤圆

 楼主| 发表于 2015-7-19 10:21:19 | 显示全部楼层
eedesign 发表于 2015-7-17 00:34
一直没有理解,DTU在网络连接不上的时候,透传模式发的数据发不出去是怎么处理呢 ? ...

一般DTU会有缓存,如果连接不上会暂时存储到缓存中直到连上网络后发送出去,但是我这个设计是重试若干次联网不成功后DTU直接断电,MCU休眠直到下一次休眠时间到在来一次循环,所以如果本次连不上,这次的数据就丢弃了。

出0入0汤圆

发表于 2015-7-19 13:44:23 | 显示全部楼层
第一行的设备标识不知道怎么填,发送后返回了错误的信息,麻烦帮忙看下哪里出了问题

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x

出0入0汤圆

发表于 2015-7-19 13:46:23 | 显示全部楼层
添加了一个控制器 和几个传感器

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x

出0入4汤圆

发表于 2015-7-19 14:02:33 | 显示全部楼层
用的什么流量套餐?有比较核算的为gprs准备的套餐么?

出0入0汤圆

 楼主| 发表于 2015-7-20 22:54:51 | 显示全部楼层
dadian 发表于 2015-7-19 14:02
用的什么流量套餐?有比较核算的为gprs准备的套餐么?

淘宝买的,26元1张,每月30M流量,用12个月,没有其他费用

出0入0汤圆

 楼主| 发表于 2015-7-20 23:04:55 | 显示全部楼层
pengtaoABC 发表于 2015-7-19 13:44
第一行的设备标识不知道怎么填,发送后返回了错误的信息,麻烦帮忙看下哪里出了问题

...

你的网关是02吗?

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x

出0入0汤圆

发表于 2015-7-21 01:01:24 | 显示全部楼层

使用在线测试工具能成功


用TCP 工具 应该发什么具体数据?

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x

出0入0汤圆

 楼主| 发表于 2015-7-21 21:05:46 | 显示全部楼层
pengtaoABC 发表于 2015-7-21 01:01
使用在线测试工具能成功

你之前发的这个数据没错,注意网关号就好

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x

出0入0汤圆

发表于 2015-7-23 14:14:34 | 显示全部楼层
不错的帖子  最近有个项目  和你这个差不多

出0入0汤圆

发表于 2015-8-10 22:55:05 | 显示全部楼层
MARK~~~备用

出0入0汤圆

发表于 2015-8-10 22:55:24 | 显示全部楼层
MARK~~~备用

出0入0汤圆

发表于 2015-8-15 20:21:56 来自手机 | 显示全部楼层
楼主无私奉献,值得点赞

出0入0汤圆

发表于 2015-8-17 17:27:42 | 显示全部楼层
jerry840922 发表于 2014-9-29 15:43
各有优势吧,感觉厦门四信的更可靠,但是方案老旧,成本高,有人的使用MTK平台,价格有优势 ...

mtk是啥方案呀

出0入0汤圆

发表于 2015-8-17 17:29:29 | 显示全部楼层
jerry840922 发表于 2015-7-20 22:54
淘宝买的,26元1张,每月30M流量,用12个月,没有其他费用

这么便宜,26元包一年。

出0入0汤圆

 楼主| 发表于 2015-8-17 23:09:26 | 显示全部楼层

不清楚,只知道根据他们提供的固件升级软件看到是MTK的方案

出0入0汤圆

发表于 2016-6-25 23:54:15 | 显示全部楼层
mark一下,最近也在研究GPRS传输。

出0入0汤圆

发表于 2016-6-30 19:42:04 | 显示全部楼层
谢谢楼主,收藏了
回帖提示: 反政府言论将被立即封锁ID 在按“提交”前,请自问一下:我这样表达会给举报吗,会给自己惹麻烦吗? 另外:尽量不要使用Mark、顶等没有意义的回复。不得大量使用大字体和彩色字。【本论坛不允许直接上传手机拍摄图片,浪费大家下载带宽和论坛服务器空间,请压缩后(图片小于1兆)才上传。压缩方法可以在微信里面发给自己(不要勾选“原图),然后下载,就能得到压缩后的图片】。另外,手机版只能上传图片,要上传附件需要切换到电脑版(不需要使用电脑,手机上切换到电脑版就行,页面底部)。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

手机版|Archiver|amobbs.com 阿莫电子技术论坛 ( 粤ICP备2022115958号, 版权所有:东莞阿莫电子贸易商行 创办于2004年 (公安交互式论坛备案:44190002001997 ) )

GMT+8, 2024-5-12 19:16

© Since 2004 www.amobbs.com, 原www.ourdev.cn, 原www.ouravr.com

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