树莓派基金会发布了基于一款全新的 RP2040 芯片构建的首款微控制器级产品:Raspberry Pi Pico,售价仅 4 美元。
如果你使用过 Arduino 或支持 MicroPython 的开发板,那么树莓派 Pico 上手会很容易,并且能快速搭建起 IoT 物联网应用。
Pi Pico 开发板
树莓派 Pico 规格参数:
在Pico 使用MicroPython
安装 MicroPython你可以通过将 Pico 由 USB 连接到 PC,然后将程序文件拖放到 Pico 上来实现编程。安装步骤如下:
1、通过下面的按钮下载 MicroPython 的 UF2 文件。
2、按住 Pico 开发板上的 BOOTSEL 按钮,然后将 Pico 插入树莓派或 PC 的 USB 接口,然后松开 BOOTSEL 按钮。
3、Pico 会被识别为大容量存储设备。
4、将下载的 MicroPython UF2 文件放入 RPI-RP2 卷上。你的 Pico 将自动重启,然后 MicroPython 就开始运行了。
IoT物联网开发
1.云端开发
我们在 IoT 控制台的设备管理页面,我们需要先创建一个产品Pico温湿度计,数据通信以JSON格式,认证方式为设备秘钥,功能定义添加物模型属性温度和湿度。如下图:
我们在设备管理页面,基于Pico温湿度计产品,注册一个设备,并获取设备身份认证的三元组。如下图:
2.设备端开发
通过命令行安装 umqtt
>>> import upip
>>> upip.install('micropython-umqtt.simple')Installing to: /lib/Installing micropython-umqtt.simple 1.3.4 from https://files.pythonhosted.org/packages/bd/cf/697e3418b2f44222b3e848078b1e33ee76aedca9b6c2430ca1b1aec1ce1d/micropython-umqtt.simple-1.3.4.tar.gz复制代码使用设备三元组,建立MQTT连接
import utime
from umqtt.simple import MQTTClientimport ujson product_key = '产品productKey'device_name = '设备deviceName'device_secret = '设备deviceSecret' client_id = 'pico'sign_method = 'hmacsha1' mqtt_client_id = '{0}|securemode=3,signmethod={1}|'.format(client_id,sign_method)username = '{0}&{1}'.format(device_name, product_key)password = get_password(client_id,product_key,device_name,device_secret,sign_method) broker_address = '{0}.iot-as-mqtt.cn-shanghai.aliyuncs.com'.format(product_key)broker_port = 1883 client = MQTTClient(client_id=mqtt_client_id, server=broker_address, port=broker_port, user=username, password=password, keepalive=300) client.set_callback(callback)client.connect()复制代码设备主动上报物模型数据:
publish_topic = '/sys/{0}/{1}/thing/event/property/post'.format(product_key, device_name)
data = { 'id': '13548753493', 'version': '1.0', 'params': { 'temperature': 21, 'humidity': 68 } }message = ujson.dumps(data)client.publish(publish_topic, message)复制代码3.联机运行
烧录Python程序后,我们看到设备状态为在线,物模型数据中可以看到最新上报的温度和湿度值。
在监控运维的日志服务里,也可以看到设备上报数据的日志。如下图: