《物联网硬件开发基础及HaaS EDU轻应用初体验》| 学习笔记

简介: 快速学习《物联网硬件开发基础及HaaS EDU轻应用初体验》

开发者学堂课程【HaaS 物联网云端一体低代码开发课程:《物联网硬件开发基础及 HaaS EDU 轻应用初体验》 】学习笔记,与课程紧密联系,让用户快速学习知识。

课程地址:https://developer.aliyun.com/learning/course/810/detail/13909


《物联网硬件开发基础及 HaaS EDU 轻应用初体验》


HaaS EDU 轻应用的操作与应用

HaaS EDU K1 :是集成阿里专用高性能 MCU-HaaS1000 ,支持双频 2.4G/5G WI-FI,BT5.0/BLE5.0 ,丰富的传感器,包含9轴运动传感器,磁力计,温湿度,大气压,光照,声音传感器。双屏配置,适应各种场景,自带1200 mA 可充电锂电池,可脱离外接电源使用,标配 type-c 接口,充电/烧录/串口调试一口搞定

 

HaaS 轻应用的优点

便捷的开发调试方法(免编译,交互式执行)

硬件驱动开发和外设控制能力

阿里云物联网平台能力

AI 能力(支持达摩院150+视觉AI算法)

 

运行环境

硬件:  HaaS 开发板

软件:  AliOSThings  3.3

HaaS EDU K1 -内外兼修的物联网学习利器

image.png 

源代码链接:

Gitee ->https://gitee.com/alios-things/AliOS-Things/tree/rel 3.3.0/

Github ->https://github.com/alibaba/AliOS-Things/tree/rel 3.3.0

硬件:

image.png

 

HaaS Python 开发环境搭建

image.png

参考链接:

快速搭建 Python 开发环境:

https://blog.cs.net/HaaSTech/article/details/118281822

文档库:

http://g.alicdn.com/HaaSAI/PythonDoc/quickstart/quickstar haas100_edu.html#
HaaS 技术社区:https://blog.csdn.net/HaaSTech

固件下载-安装插件-烧录固件-测试命令-测试脚本

image.png

相关命令:

1.MAC 烧录命令:python flash_program.py –bin=./aos.bin –bin=./littlefs.bin#0xB32000

2.串口 :picocom -b 1500000 /dev/cu.usbserial-AU03ON5E

3.联网:python /data/python-apps/wifi/main.py haas-open 12345678

编译轻应用运行固件

AliOS Things Mini Program (AMP) 是一套运行在资源受限设备上的轻量级应用软件框架。

位于

C:\Users\Administrator\AliOS-Things\application\example\amp_app 文件夹下

通过 cd 命令到 alios-things 目录下

cd alios-things

运行配置命令

aos make amp-app@haas100 -c config

编译

aos make 

实战案例:开发温湿度上云

image.png

 

HaaS 轻应用( Python )开发环境搭建

验证:

开机默认会启动之前烧录进去的程序,打开串口工具,选择对应的串口设备,设置波特率为1500000 并连接。

Python 轻应用默认支持两种运行模式:交互式 和 文件执行,在串口下输入不同的命令进入不同的模式。

 

命令行输入 python 进入交互模式,在交互模式输入代码就能看到执行结果。键盘按下 ctrl+d 退出交互模式:

Python

命令行输入python /data/python-apps/driver/led/main.py,执行 LED 跑马灯程序

python /data/python-apps/driver/led/main.py

IDE 安装-插件安装-编写脚本-运行脚本

# -*- coding:UTF-8 -*-

import utime

from driver import GPIO

# 初始化 GPIO 类

gpio = GPIO()

leds=(“led1”,”led2”,”led3”,”led4”,”led5”)

for I in range(5):

for led in leds:
#open 函数支持的参数列表:led1,led2,led3,led4,led5

gpio.open(led)

#点亮 led

gpio.write(0)

utime.sleep_ms(200)

#熄灭 led

gpio.write(1)

utime.sleep_ms(200)

gpio.close()

app.js 代码

var gpio = require('gpio');

var led3 = gpio.open({

id: 'LED3',

success: function() {

console.log('gpio: open led success')

},

fail: function() {

console.log('gpio: open led failed')

}

});

var vol = 0;

setInterval(function() {

vol = 1 - vol;

led3.writeValue(vol);

console.log('led set value ' + vol);

}, 1000);

app.json 代码

{

"version": "1.0.0",

"io": {

"LED3": {

"type": "GPIO",

"port": 36,

"dir": "output",

"pull": "pulldown"

}

},

"debugLevel": "DEBUG"

}

除了 /data 目录之外,也可以执行 /sdcard 目录下的 python 程序

python /sdcard/led_test.py

固件下载和烧录

MacOS 环境搭建

MacOS 电脑烧录确保电脑安装pyserial,安装命令:

sudo pip install pyserial

固件包中包含:

固件版本信息,二进制 bin 文件和烧录脚本。 具体文件信息如下, 其中20210615 为版本发布信息,会随发布时间变化:.

├── 20210615

├── aos.bin

├── flash_program.py

├── littlefs.bin

└── ymodem.py

1. 机器连接电源并通过 usb 连接到电脑

通常情况下,连接成功以后,设备上会多出来一个/ dev/cu.SLAB_USBtoUART (不同的电脑串口设备路径不一样)设备。 执行 pyserial-ports 命令可以查看 HaaS 设备在当前电脑的串口名称。

2. 设置串口,执行烧录命令

进入 mac_burn 目录,执行命令烧录:

python flash_program.py --bin=./aos.bin --bin=./littlefs.bin#0xB32000

如果是第一次烧录,脚本会查询系统所有的串口节点,并要求用户自己输入当前 HaaS 设备的节点路径,烧录完成以后,串口路径就被记录到了当前目录的  .config_burn 文件中

{

"chip_haas1000": {

"baudrate": "1500000",

"binfile": [

"./aos.bin",

"./littlefs.bin#0xB32000"

],

"serialport": "/dev/cu.SLAB_USBtoUART"

}

注意

serialport 字段的路径为实际 HaaS 的串口路径。如果串口路径发生了改变,需要手动修改 serialport 字段的值为实际路径之后再进行烧录。

查询当前串口路径的命令:

pyserial-ports

烧录过程中出现如下提示,请按下板子上复位按钮(最外侧远离电源的黑色按钮),继续烧录

"Please reboot the board manually"

烧录完成以后,可以通过串口工具连接机器进入命令行。推荐使用 picocom 连接,需要退出串口的时候,请先按 Ctrl+a, 再按 Ctrl+q

picocom -b 1500000 /dev/cu.SLAB_USBtoUART

/dev/cu.SLAB_USBtoUART 是 HaaS 设备的串口路径,若提示路径不存在,请修改为自己的真实路径

 

Windows 环境搭建

1. 下载对应 HaaS 硬件设备的官方固件包并解压

刷机包解压后,文件信息如下。其中20210615为版本发布信息,会随发布时间变化.

├── 20210615

├── CheckComfirm.ui

├── Warning.ui

├── Wifi_Download.ui

├── dld_cfg

├── dld_main

├── haas1000_dld_cfg.yaml

├── haas1000_write_flash_main.exe

├── images

├── ota_bin

├── productline_cfg.xml

├── productline_config.ui

├── productline_config_en.ui

├── programmer2001.bin

├── qt.conf

├── qt4_plugins

├── setportdlg.ui

├── setportdlg_en.ui

└── setupdlg.ui

2. 机器连接电源,并通过 usb 连接到电脑

3. 进入 write_flash_gui 目录,双击运行

haas1000_write_flash_main,出现烧录软件的主界面

4. 点击 Port Config 中的 list, 选择对应的串口设备后点击开始按钮, 按键复位设备 后即开始烧录

固件编译

注意选择正确的结局方案和开发板

选择解决方案:micropython 示例

选择开发板:haas100 或 haaeduk1

alios-studio 插件烧录注意事项

默认情况下,点击插件的烧录按钮只会烧录当前编译的 aos.bin。对于 Python 轻应用,需要手动修改代码才能同时烧录 littlefs.bin。

取消 hardware/chip/haas1000/package.yaml 文件中代码段注释:

program_data_files:

- filename: release/write_flash_tool/ota_bin/littlefs.bin

address: 0xB32000

物联网平台操作

创建产品-定义物模型-创建设备-记录设备信息

image.png

物联网平台操作-创建产品

1.登录阿里云官网

2.进入物联网平台:产品-物联网 loT -企业物联网

3.进入公共示例:进入控制台-公共示例

4.创建产品和设备

Python应用 – eduk1_temp_humi 案例

填入设备信息:

productKey

productSecret

deviceName

deviceSecret

Python 案例:开发板温湿度上云

image.png

相关实践学习
钉钉群中如何接收IoT温控器数据告警通知
本实验主要介绍如何将温控器设备以MQTT协议接入IoT物联网平台,通过云产品流转到函数计算FC,调用钉钉群机器人API,实时推送温湿度消息到钉钉群。
阿里云AIoT物联网开发实战
本课程将由物联网专家带你熟悉阿里云AIoT物联网领域全套云产品,7天轻松搭建基于Arduino的端到端物联网场景应用。 开始学习前,请先开通下方两个云产品,让学习更流畅: IoT物联网平台:https://iot.console.aliyun.com/ LinkWAN物联网络管理平台:https://linkwan.console.aliyun.com/service-open
相关文章
|
10天前
|
供应链 数据可视化 物联网
新技术趋势与应用:区块链、物联网与虚拟现实的融合与创新
本文深入探讨了当前最具变革性的新兴技术——区块链、物联网(IoT)和虚拟现实(VR)的发展趋势及其应用场景。通过分析这些技术的基本原理、独特优势以及实际用例,揭示了它们如何相互促进、融合创新,并共同塑造未来智能化世界的蓝图。文章旨在为读者提供对新技术趋势的全面理解,展现其在不同领域中的广泛应用前景,以及这些技术如何共同推动社会进步和产业升级。
|
19天前
|
供应链 安全 物联网
新技术趋势与应用:区块链、物联网和虚拟现实的未来发展
本文将探讨新兴技术如区块链、物联网和虚拟现实的发展趋势和应用场景。区块链技术作为一种分布式数据库,具有去中心化、安全透明等特点,被广泛应用于金融、供应链等领域。物联网技术通过将物品与互联网连接,实现智能化管理和控制,应用于智能家居、智能交通等场景。虚拟现实技术则通过模拟虚拟环境,提供沉浸式体验,应用于游戏、教育等领域。这些技术的发展将深刻影响我们的生活和社会。
31 2
|
27天前
|
安全 物联网 区块链
新技术浪潮之巅:探索区块链、物联网和虚拟现实的未来应用
【9月更文挑战第29天】随着科技的飞速发展,新兴技术如区块链、物联网(IoT)和虚拟现实(VR)正逐步渗透进我们的生活与工作。这些技术不仅仅是概念上的炒作,它们正在改变着商业模式、增强用户体验,并推动社会进步。本文将深入探讨这些技术的发展趋势和应用场景,揭示它们如何共同塑造一个更加互联、高效和沉浸式的未来世界。
|
4天前
|
传感器 监控 物联网
新技术趋势与应用在科技日新月异的今天,新兴技术如物联网、虚拟现实等正以前所未有的速度改变着我们的生活。本文将深入探讨这些技术的发展趋势和应用场景,揭示它们如何塑造未来。
本文聚焦于物联网和虚拟现实等新兴技术的发展动态及其广泛应用。通过分析当前技术进展、实际应用案例以及未来发展的可能性,本文揭示了这些技术如何深刻影响各行各业,并对未来的趋势进行了展望。
|
10天前
|
传感器 物联网 区块链
新技术趋势与应用:探讨新兴技术如区块链、物联网、虚拟现实等的发展趋势和应用场景
【10月更文挑战第7天】随着科技的飞速发展,新兴技术如区块链、物联网、虚拟现实等正在逐渐改变我们的生活。本文将对这些新兴技术的发展趋势和应用场景进行探讨,并结合代码示例,帮助读者更好地理解这些技术的应用价值和未来发展方向。
|
8天前
|
存储 传感器 物联网
未来已来:区块链技术在物联网与虚拟现实中的应用探索
【10月更文挑战第9天】随着技术的不断进步,区块链、物联网和虚拟现实等新兴技术正逐步渗透到我们的生活中。本文将探讨这些技术如何相互融合,共同推动社会的进步。我们将通过分析它们的发展趋势和应用场景,揭示它们在未来社会中的潜在价值。让我们一起思考如何利用这些技术创造一个更美好的世界。
|
22天前
|
安全 物联网 区块链
未来已来:区块链技术在物联网与虚拟现实中的革新应用
【8月更文挑战第66天】随着科技的飞速发展,区块链、物联网(IoT)和虚拟现实(VR)等技术逐渐从概念走向现实,它们之间的融合预示着一个更加智能、互联的未来。本文将探讨这些技术的发展趋势,并通过实际代码示例,展示它们如何相互促进,共同构建一个更加安全、高效的数字生态系统。
74 19
|
14天前
|
供应链 物联网 区块链
新技术浪潮之巅:探索区块链、物联网与虚拟现实的未来应用图景
【10月更文挑战第3天】在技术日新月异的今天,新兴技术如区块链、物联网(IoT)和虚拟现实(VR)正逐步改变我们的工作和生活方式。本文将深入探讨这些技术的发展趋势,通过具体应用场景描绘它们在未来社会中的角色,旨在为读者提供一个关于如何利用这些技术推动创新和解决现实问题的视角。
|
14天前
|
传感器 物联网 新制造
新技术趋势与应用:探讨新兴技术如区块链、物联网、虚拟现实等的发展趋势和应用场景
【10月更文挑战第3天】随着科技的不断进步,新兴技术如区块链、物联网、虚拟现实等正在逐渐改变我们的生活。本文将探讨这些技术的发展趋势和应用场景,并分析它们如何影响我们的未来。
23 2
|
15天前
|
传感器 供应链 物联网
新技术趋势与应用:区块链、物联网与虚拟现实的未来展望
【10月更文挑战第2天】 在当今快速变化的技术世界中,新兴技术如区块链、物联网和虚拟现实正在重塑我们的生活、工作和娱乐方式。这些技术不仅带来了前所未有的便利和效率,还为各行各业提供了创新的解决方案。本文将探讨这三种技术的发展趋势和应用场景,并分析它们如何共同推动社会进步。通过深入分析,我们将看到这些技术如何在未来的数字经济中扮演关键角色。
25 3

相关产品

  • 物联网平台