《物联网硬件开发基础及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
相关文章
|
1月前
|
传感器 监控 物联网
新技术趋势与应用:物联网和虚拟现实的未来发展###
本文探讨了物联网(IoT)和虚拟现实(VR)这两项新兴技术的发展趋势和应用场景。随着科技的不断进步,这些技术正在以前所未有的速度改变我们的生活、工作和娱乐方式。本文首先介绍了物联网和虚拟现实的基本概念,接着分析了它们的最新发展趋势,最后探讨了它们在各行业中的实际应用。通过这些分析,我们可以看到这些新兴技术如何推动社会的变革和发展,带来更多的创新和可能性。 ###
|
24天前
|
传感器 物联网 数据挖掘
新技术趋势与应用:物联网与虚拟现实的未来发展###
随着科技的迅猛发展,物联网(IoT)和虚拟现实(VR)已成为引领未来的重要技术趋势。本文旨在探讨这两项新兴技术的发展趋势和应用场景,通过分析当前技术现状、挑战及未来前景,揭示物联网和虚拟现实在各领域的潜在影响和应用价值。研究表明,物联网在智能家居、智慧城市、工业自动化等方面具有广泛的应用前景;而虚拟现实则在游戏娱乐、教育培训、医疗健康等领域展现出巨大的潜力。本文认为,随着技术的不断进步,物联网和虚拟现实将深度融合,为社会经济发展带来新的机遇和挑战。 ###
122 59
|
1月前
|
传感器 物联网 区块链
新技术趋势与应用:探讨新兴技术如区块链、物联网、虚拟现实等的发展趋势和应用场景
在当今科技飞速发展的时代,新兴技术的涌现正在改变我们的生活和工作方式。本文将深入探讨区块链技术、物联网以及虚拟现实等新兴技术的发展趋势和应用场景。我们将从这些技术的本质出发,分析它们的发展现状,并展望未来可能带来的变革。同时,我们也将通过一些简单的代码示例,展示这些技术如何在实际中发挥作用。让我们一起探索这个充满无限可能的科技世界吧!
|
19天前
|
存储 安全 物联网
未来已来:区块链技术在物联网与虚拟现实中的应用
随着科技的不断进步,新兴技术如区块链、物联网(IoT)和虚拟现实(VR)正在逐渐改变我们的生活和工作方式。本文将探讨这些技术的发展趋势和应用场景,以及它们如何相互融合,为我们带来更便捷、安全和沉浸式的体验。
|
15天前
|
供应链 监控 数据可视化
物联网技术在物流与供应链管理中的应用与挑战
本文探讨了物联网技术在物流与供应链管理中的应用,通过实时追踪、信息共享、智能化决策等手段,大幅提升了管理效率和智能化水平。特别介绍了板栗看板作为专业可视化工具,在数据监控、分析及协同作业中的重要作用。未来,随着技术的进一步发展,物流与供应链管理将更加智能高效,但也面临数据安全、标准化等挑战。
|
22天前
|
供应链 物联网 区块链
新技术趋势与应用:探讨新兴技术如区块链、物联网、虚拟现实等的发展趋势和应用场景
本文将探讨新兴技术的发展趋势和应用场景,包括区块链技术、物联网和虚拟现实等。我们将深入了解这些技术的发展现状,以及它们在未来可能带来的变革。同时,我们还将提供一些代码示例,以帮助读者更好地理解这些技术的应用。
|
1月前
|
供应链 物联网 区块链
新技术趋势与应用:探讨新兴技术如区块链、物联网、虚拟现实等的发展趋势和应用场景
随着科技的飞速发展,新兴技术如区块链、物联网、虚拟现实等正逐渐改变我们的生活和工作方式。本文将对这些技术的发展趋势和应用场景进行深入探讨,以期为读者提供更全面、更深入的了解。
|
29天前
|
传感器 监控 物联网
新技术趋势与应用:探讨新兴技术如物联网、虚拟现实等的发展趋势和应用场景###
本文探讨了物联网(IoT)与虚拟现实(VR)这两项新兴技术的快速发展及其在多个领域的应用场景。物联网通过设备互联、数据驱动和应用场景拓展,正在智能家居、智慧城市、工业自动化等方面带来革命性变化。虚拟现实则以其沉浸式体验和不断增强的交互性,在游戏娱乐、教育培训、医疗健康等领域展现出巨大潜力。结合具体案例分析,本文揭示了这些技术如何独立演进又相互融合,共同推动社会进步,并展望未来可能带来的变革。 ###
|
28天前
|
传感器 存储 物联网
物联网:关键技术剖析与应用拓展
物联网(IoT)通过互联网连接各种设备,实现数据交换和远程控制。本书深入解析了物联网的关键技术,如传感器、通信协议、数据处理等,并探讨了其在智慧城市、工业自动化等领域的广泛应用前景。
|
29天前
|
安全 物联网 区块链
未来触手可及:探索区块链技术、物联网与虚拟现实的融合应用
随着技术的飞速发展,区块链、物联网和虚拟现实等新兴技术已不再局限于科技领域的讨论话题,它们正在成为推动社会进步的重要力量。本文将深入探讨这些技术的发展趋势和实际应用,揭示它们如何相互交织,共同塑造一个更加智能和互动的未来世界。通过分析这些技术的独特优势和面临的挑战,我们将展望它们在金融、医疗、教育等领域的潜在影响,并探讨如何利用这些技术解决现实世界的问题。

相关产品

  • 物联网平台