技术文章

职业院校嵌入式Android系统实验教学的设计与创新实践

武汉唯众智创科技有限公司

2024/10/16 11:24:35

一、前言

随着消费者对产品智能化需求的日益增长,嵌入式系统市场迎来了显著扩张。物联网、信息物理系统、VR/AR、人工智能及自动驾驶等前沿技术的蓬勃发展,极大地推动了嵌入式系统在智能手机、电话、高清电视、无人机、数码相机、医疗器械等日常生活各个方面的广泛应用。其中,将Android作为操作系统的嵌入式Android系统,凭借其灵活的应用程序框架、优化的图形处理能力以及多样化的通信方式,已成为消费电子等领域的热门选择。

然而,经过深入调研,我们发现国内在基于Android的嵌入式实验教学资源方面存在明显不足,学生在该领域的实践操作能力普遍较弱。针对这一现状,本文聚焦于嵌入式Android系统的硬件平台,致力于探索实验教学的新模式与新路径,以期推动实验教学的创新与发展。

基于嵌入式Android系统的硬件平台,我们设计并实施了一系列实验教学改革举措,涵盖了从基础类、进阶类到综合设计类的多层次实验项目。这些实验项目的有序开展,不仅有助于学生逐步掌握嵌入式系统软硬件平台的开发技能,更能在实践中培养他们的问题发现、分析与解决能力,进而提升工程实践能力,使学生从更深层次上理解和把握工程概念。

二、实验教学平台

2.1 高性能实验硬件平台

为了满足综合设计实验中智能家居、智慧物联、工业控制以及信号探测等多元化场景的需求,我们精心挑选了以Exynos4412为核心芯片的实验开发板。这款开发板由核心板和底板两大部件组成,功能强大且灵活多变。

核心板内置主频高达1.6 GHz的ARM Cortex-A9核心处理器,配备2 GB双通道DDR3内存和16 GB存储空间,足以应对日常生活中各类嵌入式系统的控制挑战,如智能家居系统、智慧控制系统、健身器械操控平台、智能仪表以及智能探测设备等。

底板则集成了WIFI、蓝牙、4G等无线通讯模块,并配备了USB、串口、网口、I2C等多种接口模块,为用户提供了丰富的拓展选项。通过将开发板置于底板上,并结合我们自制的功能模块,用户可以轻松设计并验证多种类型、不同难度的嵌入式系统实验,极大地提升了实验的灵活性和实用性。

嵌入式系统硬件底板结构框图

2.2 高效的实验软件平台

在软件平台方面,我们采用在VmWare上运行Ubuntu虚拟机的方式来搭建嵌入式系统的开发环境。这一设置能够全面支持嵌入式系统内核的裁剪、编译、镜像生成等一系列与内核及硬件紧密相关的实验操作。

当内核镜像被成功烧录至硬件平台后,可以通过应用开发平台着手进行上层应用的设计工作。相较于Eclipse,我们更倾向于使用Google推出的、基于IntelliJ IDEA构建的集成开发环境——Android Studio。Android Studio以其稳定性和速度、优雅美观的界面设计、强大的智能化功能以及丰富的插件系统脱颖而出。此外,它还内置了终端工具,使得初学者也能轻松上手。因此,我们选择了Android Studio作为我们的软件开发环境。

三、嵌入式系统专题实验教学体系的创新设计

嵌入式系统专题实验教学体系紧密依托嵌入式硬件实验平台,通过理论与实践的深度融合,旨在帮助学生全面掌握嵌入式系统的核心技术与开发流程。整个实验课程共计32学时,精心划分为四大实验模块,每个模块又包含多个实验单元,以确保学习的系统性和连贯性。

嵌入式系统专题实验教学体系

为了构建学生对嵌入式系统软硬件平台的整体认知框架,我们从嵌入式底层硬件平台入手,设计了包括嵌入式系统编译环境构建、内核文件修改、镜像文件生成等一系列实验单元。这些实验不仅引导学生逐步深入掌握嵌入式系统的核心技术,还通过镜像烧写实验,让学生亲身体验嵌入式系统构建的完整过程,从而加深对系统构建流程的理解。

随后,转向上层应用设计部分。从应用开发环境的搭建开始,逐步引导学生分模块完成不同嵌入式应用的设计与实现,让他们熟悉使用Android Studio进行应用开发的过程和方法。这一环节不仅培养了学生的应用设计能力,还为他们后续的专业发展奠定了坚实的基础。

在此基础上,还特别设置了软硬件协同设计环节,旨在让学生掌握通过上层应用控制底层硬件的方式和方法。这一环节的实施,不仅增强了学生对软硬件协同工作的理解,还提高了他们解决实际问题的能力。

最后,通过综合性设计实验,如智能家居控制、智慧物联系统等,将所学知识融会贯通,让学生在实践中不断提升分析问题和解决复杂问题的能力。这些实验不仅考验了学生的综合能力,还为他们未来的职业发展提供了宝贵的实践经验。

嵌入式系统专题实验体系设计

四、实验设计的深度与实践探索

针对当前嵌入式实验教学中存在的偏重于上层应用而忽视系统整体理解,特别是对硬件系统认知不足的问题,我们在进行教学设计时,采取了从嵌入式系统的最原始认知出发的策略,旨在引导学生全面追溯嵌入式系统的发展历程。在此坚实基础上,引入了实验课堂专用的同构多核实验板卡,并紧密结合当前嵌入式系统的发展趋势及异构众核系统的实际应用案例,为学生精心打造了一系列更加贴近实际应用的教学环节。

以同构多核系统为例,通过精心设计的实验环节,让学生深入探索嵌入式系统中“嵌入”这一核心过程,从而深刻领悟“嵌入式系统以应用为中心,软硬件可剪裁”的本质特征。通过镜像生成、烧录等关键实验操作,学生不仅能够亲手定制自己的嵌入式系统,还能在实践操作中进一步加深对嵌入式系统工作原理的透彻理解。

在完成基础实验后,进一步引导学生开展应用开发、软硬件协同设计以及综合设计训练等实验项目。这些项目旨在帮助学生将理论知识与实践紧密结合,从而全面提升他们解决复杂问题的能力。

4.1 底层硬件实验设计的深度探索

(1)嵌入式系统编译环境构建及镜像文件的生成

在深入了解了嵌入式系统从单核系统向同构多核系统乃至异构众核系统的演进过程后,设计了生成构建嵌入式系统镜像文件的实验内容。该实验要求学生独立完成嵌入式系统编译环境的构建,并使用交叉编译器成功编译出嵌入式系统内核镜像文件。实验中特别包含了多核同构和异构众核系统镜像的产生过程,通过对比分析,学生能够更加深入地理解常见同构多核系统与异构众核系统在编译环境、镜像生成方式等方面的区别与联系,从而为他们未来的专业成长奠定坚实的基础。

编译产生的内核镜像文件

2)嵌入式系统内核的剪裁与重新编译

嵌入式系统的镜像文件,是通过交叉编译内核文件生成的。当这些镜像文件被引导程序烧录到硬件板卡上时,它们将赋予嵌入式系统不同的功能。在编译过程中,可以根据实际需求对内核进行裁剪,增加或删除某些功能,例如,根据外设情况来剪裁内核中对应的驱动代码。为了让学生深刻理解嵌入式系统“以应用为中心,软硬件可剪裁”的本质,本实验特别对比了常见同构多核系统与异构众核嵌入式系统的构建方法,并详细阐述了异构众核系统中不同处理器芯片的功能及其控制方法。

3)嵌入式系统的构建与控制

镜像文件生成后,将通过仿真器或调试接口将其烧录到开发板处理器上,完成嵌入式系统的构建。随后,通过控制端口接入系统,实现对系统的控制。

4.2 上层软件基础实验

1)嵌入式系统应用环境的构建与简易应用开发

应用开发是嵌入式系统重要的一部分。在本次实验中,学生需要完成嵌入式应用开发环境的构建,并深入了解嵌入式应用开发的流程及调试方法。

2)智能应用的UI设计

当用户使用智能应用时,UI界面是他们首先接触到的部分。一个清晰、直观且易于使用的UI界面对于提升用户体验至关重要。在本次实验中,我们以美观、易用为目标,详细讲解了UI控件的分类、作用及使用方法。学生将通过实践,掌握常见应用的UI设计技巧,并能够根据实际需求设计并实现自己期望的UI界面。

3)智能应用的后台交互

一个优秀的智能应用不仅需要简洁、美观的界面,还需要流畅的后台支撑。在本次实验中,将在前述UI设计的基础上,加入后台功能,实现前后台数据交互。例如,学生将学习如何实现本地信息发送、用户注册、网页跳转等简单应用,从而加深对智能应用后台交互机制的理解。

4.3 软硬协同进阶实验

1)基于JNI的炫彩小灯控制实验

本实验利用Java Native Interface(JNI)技术,实现上层应用对底层硬件(炫彩小灯)的控制。通过引入Android应用开发中的进程与线程概念,学生将能够设计出多种形式的炫彩小灯控制方案。此实验不仅加深了学生对JNI在软硬件协同中作用的理解,还提升了他们在Android应用开发方面的实践能力。

2)嵌入式Android系统中的串口通信实验

串口通信作为计算机上一种广泛应用的通信协议,其原理的理解对于嵌入式系统开发至关重要。本实验结合JNI使用原理,通过上层应用驱动嵌入式系统中的串口设备,并利用串口调试助手实现计算机与嵌入式Android系统之间的串行通信。这不仅锻炼了学生的串口通信技能,还增强了他们对JNI在嵌入式系统通信中应用的认识。

3)嵌入式Android系统中的Zigbee短距离通信实验

Zigbee作为一种高效、可靠、低成本的无线通信技术,在消费类电子产品、家庭自动化、工业自动控制等领域有着广泛的应用。本实验在串口通信的基础上,结合外设Zigbee模块,通过应用编程实现短距离的无线信息传输。学生将掌握Zigbee的无线传输方式,并在具体场景下锻炼分析问题和解决问题的能力。

4.4 综合设计系统实验——简易智能家居控制

本综合实验要求使用至少两块硬件开发板,通过无线传输技术实现简易智能家居控制。其中一块开发板作为控制器,负责发送控制指令;其余开发板作为执行端,接收并执行控制器的指令,并反馈命令执行结果。

1)系统框图

系统采用星型网络结构,由一个核心节点(中心控制器)通过无线信号控制其余节点。其余节点地位对等,每个节点根据控制器的指令控制不同的外设模块工作,并反馈自身的工作状态。所有节点之间通过WIFI或4G网络实现无线信号传输,从而构建一个完整的智能家居控制系统。

智能家居控制系统框图

2)系统中的无线传输实现

在实验板中,拥有WiFi、4G和Zigbee等多种通信模块可供选择。鉴于Zigbee的通信传输已在之前的实验中完成,且考虑到家庭常用网络为WiFi,以及智能家居控制系统普遍接入WiFi进行全面控制的现状,本综合实验决定采用WiFi模块来实现无线传输。WiFi协议在传输层使用TCP/IP协议,因此,在应用开发过程中,我们将使用套接字(Socket)编程来完成通信任务。

Android 中 Socket 通信模型

从上面的系统模型图可以看出,系统中包括控制器和接收器两种网络节点。在通信过程中,控制器能够控制多个接收器的工作。因此,我们可以将控制器设定为通信的服务端,而接收器则作为客户端。当各节点互联后,它们能够完成消息的双向收发,此时,服务端与客户端的界限将不再明显。

3)控制器的编程实现

控制器作为主控节点,其职责是向智能家居控制系统中的其他节点发送控制信息。在编程实现上,除了使用socket编程作为服务端向接收器发送控制信息外,控制器还需要具备一个用户友好的可视化操作界面,用于显示接收器的工作反馈信息。这样的设计旨在为用户提供更加直观、便捷的智能家居控制体验。

控制器的用户界面

4)接收器的编程实现

接收器在智能家居系统中扮演着命令执行端的角色。它不仅要能够接收无线信息,还需要根据接收到的信息执行相应的操作,并及时向控制台反馈执行结果。在接收器的实现过程中,学生可以在已有的外设基础上自由选择,如LED灯控制、设备音量调节、播放器操控、摄像头监控、步进电机驱动以及传感器监测等。课堂上,我们鼓励学生在已完成实验的基础上,尽可能多地驱动不同类型的外设模块,以构建更为复杂的智能家居控制系统,并完成延伸拓展部分的内容,从而进一步提升他们的系统设计能力和工程实践能力。

5)实验结果展示

当控制器和接收器均实现后,我们需要在客户端中输入控制信息,以完成接收器和控制器之间的互联。通过控制端以文字或按钮的方式发送控制指令,接收端在接收到指令后,会执行相应的操作并返回执行结果。例如,当接收器接收到控制指令后,开始播放音乐,并展示音乐波形和频谱。

6)实验延伸与拓展

在完成综合任务的基础上,我们要求学生进行进一步的拓展和延伸。在上面智能家居控制系统框图所示的系统框架下,各个接收节点可以通过多种外接传感器(如温度传感器、压力传感器等)对周边环境信息进行采集,并使用4G模块进行无线传输。这些信息汇聚到中心节点后,会通过无线方式上传至主控台进行实时分析处理。根据分析结果,系统可以对环境做出预警反应,从而实现对智能家居系统的全面监控和管理。

五、结语

实践教学对于提升专科生的实践操作能力具有关键作用。本文结合了现代通信技术和人们日常生活的实际需求,将Android系统融入到了嵌入式实践教学中。经过深入调研,我们选择了当前适用的嵌入式硬件平台,并自主开发了一些外设模块。在这些硬件的支持下,我们设计了一系列实验模块,包括底层硬件操作、上层软件应用、软硬件结合实践以及智能家居应用等。通过这些实验,学生们不仅能够了解嵌入式系统的基本构建流程,还能掌握嵌入式应用开发的完整步骤。更重要的是,通过团队合作,极大地锻炼了他们的实践操作能力,并增强了他们的工程意识。

相关产品

猜你喜欢

当前客户在线交流已关闭
请电话联系他 :