0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

第二届大会回顾第25期 | OpenHarmony上的Python设备应用开发

OpenHarmony TSC 来源:OpenHarmony TSC 作者:OpenHarmony TSC 2024-08-27 11:53 次阅读

演讲嘉宾 | 唐佐林

回顾整理 | 廖 涛

排版校对 | 宋夕明

003bb828-55e8-11ef-a4b4-92fbcf53809c.jpg

嘉宾介绍

OpenHarmony技术俱乐部分论坛

唐佐林电子科技大学OpenHarmony技术俱乐部指导老师、电子科技大学信息与软件工程学院培训中心企业导师、四川知识产权运营中心平台智库专家、成都市开源专委会专家委员、开放原子开源基金会开源讲师、蜀鸿会创始人,研究方向:操作系统,编译原理,计算机视觉

视频回顾

打开哔哩哔哩APP,观看更清晰视频

正文内容

Python以其简单、易学和功能强大而闻名,有着广泛的用户群体。采用Python开发有助于降低OpenHarmony的学习门槛。如何在OpenHarmony上用Python开发设备应用,有哪些关键技术?电子科技大学技术俱乐部指导老师唐佐林在第二届OpenHarmony技术大会上进行了精彩分享。

004044e2-55e8-11ef-a4b4-92fbcf53809c.png

自2020年9月开源以来,在产业界和学术界的大力支持下,OpenHarmony已经成为智能终端领域发展速度最快的开源操作系统。将Python引入 OpenHarmony,能扩大OpenHarmony的应用场景,吸引更多开发者参与代码共建。

基于此,作者本人提出了“Py4OH”,即:Python for OpenHarmony,是OpenHarmony设备上的Python应用程序开发框架,能够将硬件设备的差异所屏蔽,提供统一的接口和开发方式,极大的提高了设备应用程序的可移植性。完整的Py4OH框架主要分为三个部分:

Py4OH引擎:OpenHarmony上的Python语言解析器以及内置接口。

Py4OH REPL:PC上的Python设备开发工具链,用于与Py4OH引擎通信完成设备编程

Py4OH库:为OpenHarmony硬件定制开发的Python库,方便设备编程。其中,核心库集成于引擎中,由底层语言写成,不可动态更改;扩展库动态加载执行,由Python语言写成,可随意修改和动态加载。

Py4OH的引擎架构主要分为硬件层、操作系统层、API层以及应用程序层。其中,应用程序中包含了Python解释器,可读取、解析、执行Python编程语言源代码的程序。

005c7b30-55e8-11ef-a4b4-92fbcf53809c.png

Py4OH的开发环境架构主要分为IDE / Low Code / AIGC、Py4OH REPL、Middleware Runtime以及Windows/Linux/Mac四层。其中,Middleware Runtime中间层的原理类似虚拟机,为Py4OH的跨平台开发提供了虚拟环境;Py4OH REPL层与设备间的通信通过TCP、UDP以及Serial Port实现。

0067aa3c-55e8-11ef-a4b4-92fbcf53809c.png

基于Py4OH框架开发的优势主要有:语言简单:轻松上手;接口统一:无需担心接口剧烈变动;应用程序可以在线升级:能够实现远程升级;可作为已有开发平台中间件(间接接入设备)。

如何基于Py4OH-REPL实现与Py4OH引擎通信完成设备编程?主要步骤为:

一、预备工作:

下载CH340驱动并安装

将设备连接至PC并确认串口(如:COM14)

烧写Py4OH镜像文件(如:Py4OH-Hi3861-v1.0.1.bin,Py4OH-RK2206-v1.0.1.bin)

二、内置函数:

%config( port, wifi, id, pwd ):用于对设备进行配置

%connect( [IP] ):用于连接设备

%workspace( [path] ):用于设置当前工作目录(Python文件应放置于工作目录中)

%install( file ):用于将工作目录中的Python文件从PC传输至设备中

%run( file ):用于执行已安装到设备的Python文件

%query( port ):用于查询设备状态

三、设备运行模式:

主要分为REPL模式和APP模式。REPL模式主要用于开发阶段,可方便的验证方案和调试程序;APP模式主要用于部署阶段,设备启动后从main.py文件开始执行。设备运行模式可通过%config()函数切换,并于重启后生效,例如:REPL模式:%config( COM14, mode, repl );APP模式:%config( COM14, mode, app )。此外,通过扩展不同的设备连接方式(如:蓝牙,星闪,等),可进行空中编程(Device Programming Over the Air)。

006dd8b2-55e8-11ef-a4b4-92fbcf53809c.png

后续,作者本人及其团队,将继续进行Py4OH的OpenCV、Inference Engine、LVGL以及Mqtt/OneNet等核心库开发。电子科技大学OpenHarmony技术俱乐部也将持续深入OpenHarmony技术生态贡献,进行OpenHarmony低代码开发环境、OpenHarmony推理引擎适配、OpenHarmony图像处理框架等方面的研究。

附:外设控制示例

007666bc-55e8-11ef-a4b4-92fbcf53809c.jpg

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • python
    +关注

    关注

    53

    文章

    4752

    浏览量

    84039
  • OpenHarmony
    +关注

    关注

    25

    文章

    3541

    浏览量

    15713
收藏 人收藏

    评论

    相关推荐

    第二届大会回顾24 | 面向OpenHarmony的软件工程研究:机遇与挑战

    随着万物智联时代的到来,OpenHarmony作为一个开源的智能终端设备操作系统的框架和平台,将会遇到哪些机遇和挑战?北京航空航天大学教授、OpenHarmony技术俱乐部主任黎立在第二届
    的头像 发表于 08-07 18:14 617次阅读
    <b class='flag-5'>第二届</b><b class='flag-5'>大会</b><b class='flag-5'>回顾</b><b class='flag-5'>第</b>24<b class='flag-5'>期</b> | 面向<b class='flag-5'>OpenHarmony</b>的软件工程研究:机遇与挑战

    报名开启!第二届OpenHarmony开发大会2024重磅来袭!

    /jishu_2429449_1_1.html 预约直播: 第二届OpenHarmony开发大会主论坛 第二届
    发表于 05-14 15:23

    实地探展 | 别样视角一站式感受第二届OpenHarmony技术大会

    OpenHarmony技术大会 感受技术融入生活的美好瞬间! 原文标题:实地探展 | 别样视角一站式感受第二届OpenHarmony技术大会
    的头像 发表于 11-14 15:10 217次阅读

    亮点速递 | 一图看懂第二届OpenHarmony技术大会

    点击蓝字 ╳ 关注我们 开源项目 OpenHarmony 是每个人的 OpenHarmony 原文标题:亮点速递 | 一图看懂第二届OpenHarmony技术
    的头像 发表于 11-06 19:40 335次阅读

    大咖金句 | 第二届OpenHarmony技术大会演讲集锦

    点击蓝字 ╳ 关注我们 开源项目 OpenHarmony 是每个人的 OpenHarmony 第二届OpenHarmony技术大会圆满结束
    的头像 发表于 11-06 19:40 407次阅读

    高能有料 | 第二届OpenHarmony技术大会议程速递

    第二届开放原子开源基金会OpenHarmony技术大会如约而至 让我们一起 开封无限惊喜的技术成果 开放无限前沿的议题干货 开启无限可能的未来之门 点击此处报名参会!
    发表于 11-02 17:07

    议程直击 | 第二届OpenHarmony技术大会——编程语言及开发框架分论坛

    点击蓝字 ╳ 关注我们 开源项目 OpenHarmony 是每个人的 OpenHarmony 原文标题:议程直击 | 第二届OpenHarmony技术
    的头像 发表于 11-01 16:10 321次阅读
    议程直击 | <b class='flag-5'>第二届</b><b class='flag-5'>OpenHarmony</b>技术<b class='flag-5'>大会</b>——编程语言及<b class='flag-5'>开发</b>框架分论坛

    议程直击 | 第二届OpenHarmony技术大会——应用(北向)生态分论坛

    点击蓝字 ╳ 关注我们 开源项目 OpenHarmony 是每个人的 OpenHarmony 原文标题:议程直击 | 第二届OpenHarmony技术
    的头像 发表于 11-01 16:10 339次阅读

    议程直击 | 第二届OpenHarmony技术大会——OS内核及视窗分论坛

    点击蓝字 ╳ 关注我们 开源项目 OpenHarmony 是每个人的 OpenHarmony 原文标题:议程直击 | 第二届OpenHarmony技术
    的头像 发表于 11-01 09:25 392次阅读

    高能有料 | 第二届OpenHarmony技术大会议程速递

    点击蓝字 ╳ 关注我们 开源项目 OpenHarmony 是每个人的 OpenHarmony 第二届开放原子开源基金会OpenHarmony技术大会
    的头像 发表于 11-01 09:25 287次阅读
    高能有料 | <b class='flag-5'>第二届</b><b class='flag-5'>OpenHarmony</b>技术<b class='flag-5'>大会</b>议程速递

    议程直击 | 第二届OpenHarmony技术大会——OpenHarmony技术俱乐部分论坛

    点击蓝字 ╳ 关注我们 开源项目 OpenHarmony 是每个人的 OpenHarmony 原文标题:议程直击 | 第二届OpenHarmony技术
    的头像 发表于 11-01 09:25 358次阅读
    议程直击 | <b class='flag-5'>第二届</b><b class='flag-5'>OpenHarmony</b>技术<b class='flag-5'>大会</b>——<b class='flag-5'>OpenHarmony</b>技术俱乐部分论坛

    议程直击 | 第二届OpenHarmony技术大会——OS原生智能分论坛

    点击蓝字 ╳ 关注我们 开源项目 OpenHarmony 是每个人的 OpenHarmony 原文标题:议程直击 | 第二届OpenHarmony技术
    的头像 发表于 11-01 09:25 456次阅读

    议程直击 | 第二届OpenHarmony技术大会——OS安全分论坛

    E N D     关注我们,持续获取OpenHarmony技术大会最新消息! 原文标题:议程直击 | 第二届OpenHarmony技术大会
    的头像 发表于 11-01 08:44 301次阅读
    议程直击 | <b class='flag-5'>第二届</b><b class='flag-5'>OpenHarmony</b>技术<b class='flag-5'>大会</b>——OS安全分论坛

    技术筑生态,智联赢未来 第二届OpenHarmony技术大会即将在京启幕

    2023年11月4日,第二届开放原子开源基金会OpenHarmony技术大会即将在北京国家会议中心盛大开幕。本次大会由OpenAtom OpenHa
    发表于 10-31 11:27

    亮点剧透 | 第二届开放原子开源基金会 OpenHarmony技术大会精彩来袭

    点击蓝字 ╳ 关注我们 开源项目 OpenHarmony 是每个人的 OpenHarmony 探讨开源创新实践,共筑开源技术未来 第二届开放原子开源基金会OpenHarmony技术
    的头像 发表于 10-27 19:50 492次阅读