基于STM32+SOC方案的植物精灵
前一段时间偶然接触了机智云,觉得不错,SDK和资料比较全面,开发者需要做的工作也不是很多,即使不懂物联网开发也可以很容易的做出自己的产品。我先梳理一下机智云的开发流程,很多人刚刚用机智云的时候无从下手,所以这里简单的科普一下。
【第一步】 进入开发者中心注册机智云并登录,这个是开发自己产品的前提
【第二步】新建产品&创建数据点 这个就是我们的项目
1.新建项目
2. 设置项目属性 至于分类和名称随意起 保存
3.随后定义数据点 数据点就是描述产品的属性,比如我采集温度的,就设置一个温度的数据点, 我控制水泵的,就添加一个水泵的二进制数据点
4.编辑数据点
标识名,用英文。
读写类型就是说你的数据点的类型,只读一般用来读取传感器的值比如温湿度等等,这类数据的特点是只能查看,不能改变。
可写指的是你可以修改数据点,比如我们调节灯光占空比,或者水泵等等。
报警和故障一般用于比较紧急事件,比如设备电量或者房屋内有人进入等等。
数据类型根据项目需求设置,比如知识控制水泵的开关,我们就用布尔值,获取温度我们就用数值
【第三步】下载机智云生成好的MCU工程
我们选择独立MCU方案,在这个方案里,MCU用于采集和上报数据,以及接受数据并处理,而无线模组则只是进行透传。
这里需要输入秘钥,进入下图界面输入用户登录密码获取复制
填入秘钥生成代码包
下载代码包
【第四步】 下载ESP8266固件(你用其他的模组就用下载对应固件)
下载地址http://dev.gizwits.com/zh-cn/developer/resource/hardware?type=GAgent
按下图烧写(固件也可以去附件里下载)
第二烧写文件才是机智云提供的,其他三个是乐鑫(ESP8266厂商)提供的(用于设备初始化和boot启动)
【第五步】 修改代码(以植物精灵为例)
先要理清我们要干什么。我们用户要根据温度来进行灌溉,所以我们要获取温度,然后手动控制水泵。
1.采集温度,用户只需要关注main.c中的void userInit(void)和void userHandle(void)函数,一个用来给外设初始化,一个用来获取传感器数值(温度);
2.控制水泵,gizwits_product.c文件中的int8_t gizwitsEventProcess(eventInfo_t *info, uint8_t *data, uint32_t len)函数,该函数用于用户对设备进行操作,比如开关水泵。
3.配网(让设备连接WIFI)
机智云的APP可以根据用户设置的数据点自动生成控件,比如滑动条或者按键,配网机智云是使 用按键来设置的,具体的还要根据用户原理图来进行设置,配网成功后便可获取温度和控制了。
------------------------------------------------你们看不见的分割线----------------------------------------------
再说说我的这个项目,这么植物精灵主要用于采集环境温湿度(DHT11),土壤湿度,并且用户可以给植物进行采光(通过PWM驱动暖色光),以及灌溉(水泵)。
下面是演示视频。
http://v.youku.com/v_show/id_XMjY3NzQyNDc4MA==.html
下面是整版:
作者QQ:1322698936
赞,,厉害 感谢您的分享 哪个采集温湿度的上传怎么写了 挺好的,很有创意!!
页:
[1]