关闭视频

十分钟开发物联网:手机App远程控制Led灯(4G版)

发表于:2021年11月17日 15:23更新于:2024年05月03日 21:51

本文设计的一款通过4G Cat1方式接入机智云的设备,用户可以通过App远程控制设备上的Led灯的亮灭。通过本例可以很容易衍生出其他应用,比如远程控制继电器、电磁阀、电机、声光报警等应用场景。

 

视频教程及实物展示

 

视频演示教程:

 

接线实物图和App监测页面:

 

 

硬件端接线图

 

 

材料清单

 

名称 推荐购买源 资料下载
通用版机智云App 免费 https://download.gizwits.com/zh-cn/p/98/99
ShineBlink 万能物联网开发板 淘宝搜索“机智云”或“ShineBlink”店铺有售 shineblink.com
带机智云GAgent固件的ML302 4G模块 淘宝搜索“机智云”或“ShineBlink”店铺有售 gizwits.com
黑色底板

该底板只是为了省掉接杜邦线,让外观好看一些,不是必需品,开发者如果没有可以用杜邦线来替代。

如果仍想获取该底板,可通过右边提供的PCB工程资料自己打样PCB制作即可。

https://fe9a58.link.yunpan.360.cn

/lk/surl_y6mpLtWWB9W#/-0

 

硬件端完整源码

 

--配置D9为普通输出,控制ShineBlink开发板上的LED2灯,作为实验演示灯
LIB_GpioOutputConfig("D9","STANDARD")
--机智云平台为每个产品类别分配的唯一PK和PS,一定要改成您自己的PK和PS
PK = "7c597675f7a14254b02031b4aadd2637"
PS = "8fb19b46dfba4c1aa78ec27af9605c82"
--初始化4G模块
LIB_Giz4GConfig(PK,PS,6000,120,"UART0","D5","HIGH","D6","HIGH")
--开始大循环
while(GC(1) == true)
do
--查询机智云是否下发了写"Sw1"开关量数据点的动作
flag,recv_data = LIB_RecvFromGizCloud("Sw1")
if flag == 1 then
if recv_data == 1 then -- 云下发了1
LIB_GpioWrite("D9",0)--LED2灯亮
else -- 云下发了0
LIB_GpioWrite("D9",1)--LED2灯灭
end
end
end

上面代码中出现的"LIB_"开头的库函数的详细介绍可点击查询。

 

这里重点介绍一下上面代码中的函数:

LIB_Giz4GConfig(PK,PS,6000,120,"UART0","D5","HIGH","D6","HIGH")

◆ 设置产品的PK和PS,每隔6000ms上传一次数值型数据点(比如整型、浮点型),本例中未使用到该类型的数据点,该时间值越大越省流量;

◆ 如果120秒内没收到4G模块的UART接口数据,则ShineBlink开发板会通过D5引脚复位4G模块,以提高系统的健壮性,如果不需要此特性,可以将120改成0;

◆ D5接4G通讯模组的RST复位引脚,上面已介绍其作用;

◆ D6接4G通讯模组的PWR引脚。

 

机智云接入和App开发(三个选择)

 

►选择一:机智云+通用版APP访问设备(难度最低

通过《4G设备接入机智云教程》我们可以很快掌握机智云的接入流程,并使用现成的通用版机智云App即可很快的实现手机App远程访问我们的开发板。

本例中我们使用了"Sw1"布尔值型数据点,记得在机智云平台修改相应的数据点的名称。

► 选择二:机智云+零代码定制版App访问设备(难度较低

在选择二之前,必须完成上面选择一的工作,然后参考《赛博坦零代码App开发(4G版)》教程实现定制版App访问设备。

开发好以后的页面如下:

► 选择三:定制化开发APP或微信小程序(难度较高

如果有一定开发能力,开发者可以考虑在机智云免费提供的开源代码上做一定的定制开发形成自己的App。

如果开发者希望开发一个专属的App,机智云也会提供代码开源的安卓和IOS SDK框架,帮助开发者快速完成App开发,开发者仅需关注App的UI和UE设计即可,而相对复杂的协议与错误处理等事项可忽略。关于开源SDK的介绍和获取请进入docs.gizwits.com了解更多内容。

如果开发者希望开发一个专属的微信小程序应用, 可以进入docs.gizwits.com了解相关开发教程。