rzyzzxw 发表于 2018-11-4 22:16:42

【掌控】mpython-22…开始物联,点亮板载灯-1

掌控:开始物联。从点亮板载灯开始。

【小目标】
1、把掌控接入物联网。
2、远程点亮板载灯。

【IOT平台准备】

【step1】OneNET平台创建MQTT协议的产品并添加设备。
OneNET平台官网地址:https://open.iot.10086.cn/,登录成功进入开发者中心,

添加一个新产品。




【step2】添加设备
设备ID、产品ID和APIKEY参数的信息将来要写入程序。



【step3】本程序用到micropython-umqtt库,需要将 simple.py 下载刷入掌控板。


【step4】
代码准备,可以不用每句都懂,能改代码就OK。
源代码来自帮助文档,掌控团队出品。
为了好玩,我修改一小点。

from simple import MQTTClient
from mpython import *
import time,network

# MQTT服务器地址域名为:183.230.40.39,不变
SERVER = "183.230.40.39"
#设备ID
CLIENT_ID = "********"
#产品ID
username='*******'
#产品APIKey:
password='*********'


# wifi参数
SSID="*****"            #wifi名称
PASSWORD="*******"         #密码
wlan=None

# 本函数实现wifi连接 规定动作,不要修改
def ConnectWifi(ssid=SSID,passwd=PASSWORD):
    global wlan
    wlan=network.WLAN(network.STA_IF)
    wlan.active(True)
    wlan.disconnect()
    wlan.connect(ssid,passwd)

    while(wlan.ifconfig()=='0.0.0.0'):
      time.sleep(1)
      print('Connecting to network...')
    print('WiFi Connection Successful,Network Config:%s' %str(wlan.ifconfig()))

# 当接收到on,点亮红灯,off,灭灯 这里修改,可以实现更多功能
def sub_cb(topic, msg):   
    if msg == b"on":
      rgb.fill((50,0,0))       #点亮红灯
      rgb.write()
    elif msg == b"off":      #灭灯
      rgb.fill((0,0,0))
      rgb.write()

# 规定动作,也不用修改
def main(server=SERVER):
    #端口号为:6002
    c = MQTTClient(CLIENT_ID, server,6002,username,password)
    c.set_callback(sub_cb)
    c.connect()
# 下面四行是我加的,为了显示网络已接入IOT
    display.fill(0)
    display.DispChar("Connected to", 16, 16)
    display.DispChar("%s" % server, 16, 32)
    display.show()
    try:
      while 1:
            c.wait_msg()
    finally:
      c.disconnect()
# 加了三行代码,开机时接入IOT提示
display.fill(0)
display.DispChar("IOT 接入中……", 32, 16)
display.show()
ConnectWifi()
main()
准确填写MQTT参数和WiFI参数,刷入掌控,设为默认运行。

等待IOT平台接入。

IOT平台已接入。
同时平台上也的小绿灯显示。

【step5】
点击发送命令按钮。

在对话框输入on,点击发送。

哈哈,掌控上红灯亮起。


在对话框输入off,点击发送。

红灯灭掉。

你的第一个掌控物联网项目就些完成。

改一下代码,可以显示接收到的字符了。

可以休息庆祝了。

{:5_148:}



rzegkly 发表于 2018-11-5 06:42:56

板子代码很喜欢,帖子的内容更吸引人!

rzyzzxw 发表于 2018-11-5 22:15:06

代码中没有掉网重新接入功能,已经反馈,源码如有更新,帖子也会更新。;P
页: [1]
查看完整版本: 【掌控】mpython-22…开始物联,点亮板载灯-1