La Fundación Raspberry Pi ha anunciado el primer producto de clase microcontrolador basado en un nuevo chip RP2040 : el Raspberry Pi Pico , con un precio de sólo 4 dólares .
Si ha utilizado Arduino o una placa de desarrollo compatible con MicroPython , será fácil comenzar con Raspberry Pi Pico y podrá crear rápidamente aplicaciones de IoT.
Placa de desarrollo Pi Pico
Especificaciones de Raspberry Pi Pico:
Usando MicroPython en Pico
Instalar MicroPython
Puede programar el Pico conectando el Pico a la PC mediante USB y luego arrastrando y soltando los archivos del programa en el Pico. Los pasos de instalación son los siguientes:
1. Descargue el archivo UF2 de MicroPython a través del botón a continuación.
2. Mantenga presionado el botón BOOTSEL en la placa de desarrollo Pico, luego inserte el Pico en el puerto USB de Raspberry Pi o PC y suelte el botón BOOTSEL.
3. El Pico será reconocido como un dispositivo de almacenamiento masivo.
4. Coloque el archivo MicroPython UF2 descargado en el volumen RPI-RP2. Su Pico se reiniciará automáticamente y MicroPython comenzará a ejecutarse.
Desarrollo de IoT
1. Desarrollo de la nube
Estamos en la página de administración de dispositivos de la consola IoT , primero debemos crear un medidor de temperatura y humedad Pico del producto , la comunicación de datos es en formato JSON , el método de autenticación es la clave del dispositivo y la función define la temperatura del atributo del modelo aditivo. y humedad . Como se muestra abajo:
En la página de administración de dispositivos , según el producto medidor de temperatura y humedad Pico, registramos un dispositivo y obtenemos el triplete de autenticación de identidad del dispositivo . Como se muestra abajo:
2. Desarrollo del lado del dispositivo
Instale umqtt a través de la línea de comando
>>> 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
Utilice el triplete de dispositivos para establecer una conexión MQTT
import utime
from umqtt.simple import MQTTClient
import 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()
El dispositivo informa activamente los datos del modelo de objeto:
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. Operación en línea
Después de grabar el programa Python, podemos ver que el estado del dispositivo está en línea y los últimos valores de temperatura y humedad informados se pueden ver en los datos del modelo físico .
En el servicio de registro de monitoreo de operación y mantenimiento , también puede ver el registro de los datos reportados por el dispositivo. Como se muestra abajo: