上一节描述了如何用掌控板使用MQTT协议接入OneNET平台,并且控制LED灯的开关,那么平台能发送给掌控板消息,能不能接收掌控板传来的信息呢?
利用掌控板使用MQTT协议接入OneNET平台,在上节课的程序基础上,加上远程控制RGB LED的亮度以及在OneNET上实时查看板载传感器数据
1、掌握利用OneNET平台控制掌控板RGB灯的亮度
2、掌握如何在产品下创建数据流
3、掌握通过OneNET平台展示板载声音传感器和光线传感器的数据
1、掌控板
2、数据线
3、OneNet平台
Step1 改变RGB LED的亮度
1. 定义变量来控制RGB灯亮度
RGB灯的亮度是通过调节R,G,B的数值来调节的,这就意味着我们可以发送任意的数字,因此这里不能使用“接受特定指令”的模块,但我们可以将OneNet发送的命令存放到一个变量中,然后利用这个变量(数字)来调节RBG灯的亮度。即下面的模块
模块的含义:我们可以在“发送命令”框发送任何指令,然后将这些指令保存到变量_msg中, 判断指令是否是数字,如果是数字则执行相应操作
2. 针对上述模块,我们现在需要做的是,判断接受的指令是数字时,调节RGB灯的亮度。首先拿出调节亮度的模块
3. 对R这个数值进行处理,也即将变量_msg放到R里面
特别注意:虽然msg判断是数字, 但其类型仍然是字符型,使用前需要将其类型转换成整数型
4. 为了更好地体现OneNET与掌控板的互动,我们可以将OneNET上发送的指令显示在OLED显示屏上,加上下面的文本显示模块,刷入程序运行。
5. 发送指令:回到OneNET平台,在“发送命令”框发送任意数值,左边是发送100的灯亮度,右边是发 送4000的灯亮度
Step2 创建数据流
1. 在物联网模块找到下面模块,创建数据流
这里我们创建两个数据流,分别取名light和sound,并将对应的传感器数值放到里面。
数据流是OneNET平台与掌控板传送数据的纽带,有了数据流我们就可以将板载传感器的数据传送到OneNET平台(OneNET平台会对这些数据进行处理,变成有用的信 息),为了识别不同板载传感器的数据,我们需要对不同的数据取个名字。
2. 在OneNET查看光线值和声音值
3. 点击数据流左边的“>”查看数据的折线图,点击“查询更新”,不断显示更新的数据
4. 监视窗口可以查看串口数据
1、如何利用掌控板进行远程点歌。
2、原程序每隔1秒才获取数据一次,如何改成更精确的数值,但是又不让图形的刷新速度过快。
点赞