AIoT背景下高职物联网专业嵌入式课程体系建设研究

2022-12-23 03:14浦灵敏施纪红
物联网技术 2022年12期
关键词:微控制器嵌入式联网

浦灵敏,施纪红

(苏州健雄职业技术学院 人工智能学院,江苏 苏州 215411)

0 引 言

智慧物联网(Artificial Intelligence of Things, AIoT)是人工智能(AI)和物联网(IoT)技术相融合的产物。近年来,随着AIoT技术的迅速发展,势必要求高职院校物联网专业对现有的课程体系做出及时调整。而物联网应用技术是一个多学科交叉融合的专业,涉及电子技术、计算机网络、软件技术、自动控制等众多专业知识和技能。其中,嵌入式技术应用与开发是物联网专业人才培养的重要核心技能,同时,嵌入式也是人工智能发展的基础,开启了人工智能的进程。高职物联网专业必须紧随目前最新的人工智能发展方向,调整和优化现有物联网嵌入式课程体系和内容。因此,在AIoT背景下,开展嵌入式人工智能相关课程体系的建设研究具有十分重要的意义[1-2]。

1 课程面临的问题

嵌入式系统分为硬件系统和软件系统两大部分,对应课程的知识综合性强,高职院校的人才培养目标定位于培养高素质技术技能型人才,既需要掌握理论又要与实际应用紧密联系,对实践要求高。目前,高职院校物联网专业普遍开设了嵌入式微控制器和嵌入式操作系统等相关课程,采用意法半导体STM32F103系列控制器进行物联网感知层产品的开发,使用嵌入式Linux和Android系统进行网络层和应用层智能设备、云平台服务器、移动终端应用程序的设计,课程覆盖了物联网的感知层、网络层和应用层三层架构,教学难度大,教学效果不明显,学生学完该系列课程仍无法开展实际项目的软件编程、硬件设计和调试,更无法体现嵌入式技术在人工智能领域的应用[3]。

目前,嵌入式课程教学内容仍以知识点的验证性技能实训为主,偏重微控制器外设资源的应用、系统应用程序编程语法的讲解和练习,课程知识点和技能点之间相对独立,前后关系不明显,且嵌入式软硬件系统种类繁多,开发环境、编程、下载和验证方法各异,任何环节出现问题都将影响整体实现效果,并需要重新按照流程进行调试[4]。

此外,在传统的嵌入式物联网硬件驱动开发领域,涉及众多的通信协议和数据交换,并且由于芯片和硬件结构的限制,不同的硬件平台所具备的资源各不相同,给高职物联网专业的AIoT项目教学和应用开发带来了较大困难[5]。

2 具体解决方法

2.1 结合AIoT聚焦嵌入式通用编程语言

对于物联网专业的学生而言,嵌入式课程的教学侧重点应是如何快速实现人工智能+专业应用,即将人工智能和物联网技术结合起来。目前大部分高职院校嵌入式基础课程教学仍以C语言为主,而主流的人工智能软件框架大多是基于Python语言开发,在AIoT背景下,嵌入式课程体系必须学习Python语言的基础编程方法,并在后续嵌入式硬件课程中使用MicroPython进行基于微控制器的应用开发[6]。

MicroPython是基于Python3语法实现的一种可以在微控制器上运行的Python语言分支,拥有自家的解析器、编译器、虚拟机和类库等,可以实现底层硬件模块的访问和操作,如对LED、按键、SD卡等的控制。同时,MicroPython固件封装了大量库和函数,包括常用的通信协议和硬件驱动,在项目开发时只要调用这些库和函数就可以快速控制LED、液晶、舵机、多种传感器、SD卡、串口、I2C总线等实现相关功能,极大地降低了开发难度,减少了重复开发工作,提高了运行效率。MicroPython可以在多种嵌入式硬件平台上运行,如STM32、ESP8266、ESP32、CC3200等。

在经过前续Python基础语法和常用算法的学习后,利用MicroPython聚焦解决专业应用性问题,可以快速开发通用硬件平台下的物联网系统驱动[7]。

2.2 AIoT实训环境搭建和内容开发

目前,STM32和ESP8266这两大硬件平台是MicroPython运行中最为完善和成熟的应用平台。嵌入式人工智能课程需要搭建较快的硬件运行环境,并非所有的STM32都能使用 Python编程,能够运行MicroPython系统的微控制器需具备以下性能:

(1)具备USB通信功能(用于模拟串口通信、U盘读写操作);

(2)FLASH闪存:256 KB及以上;

(3)主频:90 MHz及以上(主频越高系统运行越流畅)。

可见,最高主频为72 MHz的STM32F103系列微控制器已无法流畅执行Python程序,高职院校可以使用基于MicroPython开发语言的官方Pyboard开发板,如图1所示。将Python编程语言直接运行在STM32F405嵌入式开发板上,STM32F405微控制器采用高性能ARM Cortex-M4 内核,工作频率高达168 MHz,芯片具有1 MB容量的闪存和196 KB随机存取存储器,且性价比较高,非常适合作为嵌入式硬件开发环境[8]。

图1 MicroPython官方开发板

通过在嵌入式硬件课程上搭建MicroPython固件加Python代码的嵌入式微控制器实训教学环境,可以快速进行AIoT智能终端项目开发,在前期教学实践中,笔者已在该实训环境下开发了基于智能家居系统的相关项目用于教学,如图2所示,取得了不错的教学效果。

图2 课程教学内容开发

2.3 选择合适的物联网操作系统

目前,高职物联网专业普遍开设了基于嵌入式Linux操作系统应用开发的相关课程,由于Linux开发涉及大量命令和参数,且需要一定的计算机基础和软件开发门槛,高职物联网专业学生在没有大量前续课程学习基础的情况下,无法真正掌握功能强大的Linux系统用于物联网系统的搭建。在AIoT背景下,必须选择物联网专用操作系统进行学习,根据高职物联网专业嵌入式课程教育教学的特点,选取RT-Thread嵌入式操作系统开展教学,将RTThread操作系统的运行、RT-Thread项目框架的搭建、物联控制的实现、Modbus2MQTT网关设计等物联网应用开发任务作为教学载体,同时推广国产实时操作系统(RTOS)的应用[9]。

RT-Thread嵌入式操作系统是一款由我国开源社区主导开发的开源操作系统,同时也是一个组件完整丰富、高度可伸缩、简易开发、超低功耗、高安全性的物联网操作系统,具备通信协议支持和云端连接能力,是AIoT 领域最为主流的操作系统平台之一。与 Linux 操作系统相比,RT-Thread体积小、成本低、功耗低、启动快速,除此以外,RT-Thread还具有实时性高、占用资源小等特点,非常适合于资源受限(如成本、功耗限制等)的场合。

RT-Thread操作系统支持所有主流微控制器,可以解决设备碎片化问题,与AIoT的实训软硬件环境无缝衔接,非常适合加入高职物联网专业的嵌入式课程体系中。

此外,对于移动端操作系统应用程序开发课程,在AIoT核心技术独立自主需求的背景下,华为鸿蒙操作系统将成为高职物联网专业嵌入式课程体系中的重要课程之一,鸿蒙是为物联网和人工智能服务的操作系统,目标是实现万物互联和万物智能,这与AIoT产业所需要的技能高度吻合,作为培养技能型人才的高职院校应积极响应,校企共同将自主核心技术的应用发扬光大[10]。

3 结 语

作为万物互联的物联网专业,结合人工智能方向的嵌入式课程体系建设是专业教学改革的重要方向,也是专业发展的必由之路。在AIoT背景下,通过引入和优化Python程序设计、微控制器应用开发(基于MicroPython)、嵌入式系统应用与调试(基于RT-Thread)、鸿蒙移动应用程序设计等最新前沿嵌入式课程,使专业课程体系更加合理,专业人才培养质量进一步提高。总之,为了迎接AIoT产业发展带来的机遇与挑战,高职物联网专业应积极投入到嵌入式人工智能课程体系的建设和改革工作中,不断提升专业学生职业发展的能力。

猜你喜欢
微控制器嵌入式联网
“身联网”等五则
抢占物联网
搭建基于Qt的嵌入式开发平台
物联网技术在微控制器实验教学中的应用
嵌入式软PLC在电镀生产流程控制系统中的应用
可再生能源与物联网
Atmel针对新一代物联网应用发布全新32位微控制器
Altera加入嵌入式视觉联盟
最新STM32设计工具增加对混合信号微控制器的支持
得MCU者得物联网天下