HaaS轻应用(Python)示例

简介: py_engine (Python轻应用引擎) 以MicroPython为基础打造而成, 基于py_engine可以快速实现IoT场景连云、控端、AI等最常见功能。
  1. 案例简介

py_engine (Python轻应用引擎) 以MicroPython为基础打造而成, 基于py_engine可以快速实现IoT场景连云、控端、AI等最常见功能。快速上手文档和编程接口请参考Python轻应用快速上手

连云:支持基于linkit连接阿里云物联网平台
控端:支持PWD、UART、SPI、I2C、ADC、DAC、GPIO等基本硬件接口控制
AI:支持端上AI和云端AI能力,覆盖人脸、人体、视频、文字等150+场景
py_engine 默认作为一个组件存在于alios things 中。

py_engine_demo 依赖了py_engine 组件,主要功能如下:

注册python命令
启动python虚拟机
py_engine_demo 只有一个appdemo.c,注册了python cli 命令后就退出了,等待用户指令启动python虚拟机

  1. 基础知识

2.1 组件依赖方法

在package.yaml 中增加py_engine组件依赖

        - py_engine: dev_aos

增加头文件

调用初始化方法

    mpy_run(argc, argv);

  1. 物料清单

3.1 HaaS100 硬件

HaaS100 硬件简介
image.png

  1. 案例实现

4.1 硬件连接

该案例只需要连接电源线以及串口线,如下图所示:
image.png

4.2 软件实现

AliOS Things开发环境搭建

开发环境的搭建请参考《aos-studio使用说明之搭建开发环境》,其中详细的介绍了AliOS Things 3.3的IDE集成开发环境的搭建流程。

py_engine代码下载
py_engine代码下载请参考《aos-studio使用说明之创建工程》,其中,

选择解决方案: “micropython示例”
选择开发板: HaaS100
编译

参考 《aos-studio使用说明之编译固件》。

烧录

由于该demo的资源文件位于/data,分区,因此烧录的时候需要烧录littlefs.bin,方法如下:

将hardware/chip/haas1000/package.yaml文件中以下代码段的注释打开

    - filename: release/write_flash_tool/ota_bin/littlefs.bin
      address: 0xB32000

4.3 验证Python功能

连接串口,通过python命令进入python repl模式

# python on HaaS100 by 2021-03-17, press ctrl+d to exit!
>>> print("hello-world")
hello-world

  1. 总结

该demo只依赖AliOS Things,不依赖具体的硬件,通过这个demo ,默认可以将py_engine 按照两种不同的方式运行。

相关文章
|
6天前
|
Python
以下是一些常用的图表类型及其Python代码示例,使用Matplotlib和Seaborn库。
以下是一些常用的图表类型及其Python代码示例,使用Matplotlib和Seaborn库。
|
5天前
|
存储 Python
Python示例:分解一个不多于指定位的正整数
Python示例:分解一个不多于指定位的正整数
13 0
|
7天前
|
数据可视化 Python
Python绘制基频曲线——实例解析与应用探讨
Python绘制基频曲线——实例解析与应用探讨
30 9
|
4天前
|
数据挖掘 Python
【Python】应用:pyproj地理计算库应用
这篇博客介绍了 `pyproj` 地理计算库的应用,涵盖地理坐标系统转换与地图投影。通过示例代码展示了如何进行经纬度与UTM坐标的互转,并利用 `pyproj.Geod` 计算两点间的距离及方位角,助力地理数据分析。 安装 `pyproj`:`pip install pyproj`。更多内容欢迎关注本博客,一起学习进步! Pancake 🍰 不迷路。😉*★,°*:.☆( ̄▽ ̄)/$:*.°★* 😏
|
5天前
|
存储 数据安全/隐私保护 Python
Python常用数据结构——字典的应用
Python常用数据结构——字典的应用
|
5天前
|
Python
Python编程的循环结构小示例(二)
Python编程的循环结构小示例(二)
|
8天前
|
JavaScript 前端开发 UED
WebSocket在Python Web开发中的革新应用:解锁实时通信的新可能
在快速发展的Web应用领域中,实时通信已成为许多现代应用不可或缺的功能。传统的HTTP请求/响应模式在处理实时数据时显得力不从心,而WebSocket技术的出现,为Python Web开发带来了革命性的变化,它允许服务器与客户端之间建立持久的连接,从而实现了数据的即时传输与交换。本文将通过问题解答的形式,深入探讨WebSocket在Python Web开发中的革新应用及其实现方法。
22 3
|
7天前
|
数据库 开发者 Python
实战指南:用Python协程与异步函数优化高性能Web应用
在快速发展的Web开发领域,高性能与高效响应是衡量应用质量的重要标准。随着Python在Web开发中的广泛应用,如何利用Python的协程(Coroutine)与异步函数(Async Functions)特性来优化Web应用的性能,成为了许多开发者关注的焦点。本文将从实战角度出发,通过具体案例展示如何运用这些技术来提升Web应用的响应速度和吞吐量。
12 1
|
9天前
|
负载均衡 Java 调度
探索Python的并发编程:线程与进程的比较与应用
本文旨在深入探讨Python中的并发编程,重点比较线程与进程的异同、适用场景及实现方法。通过分析GIL对线程并发的影响,以及进程间通信的成本,我们将揭示何时选择线程或进程更为合理。同时,文章将提供实用的代码示例,帮助读者更好地理解并运用这些概念,以提升多任务处理的效率和性能。
|
8天前
|
机器学习/深度学习 物联网 算法框架/工具
探索Python的魅力与应用
在这篇文章中,我们将深入探讨Python编程语言的各个方面。从它的起源和设计理念开始,到具体的应用场景和技术实现,我们将一步步揭示Python成为现代编程领域中不可或缺的工具的原因。无论是对于初学者还是有经验的开发者来说,Python的魅力都不容小觑。
15 1
下一篇
无影云桌面