基于LPC1768嵌入式系统实验课程仿真平台设计

时间:2022-10-21 12:08:38

基于LPC1768嵌入式系统实验课程仿真平台设计

摘要:目前高等院校本科强调应用型人才的培养,笔者所带的嵌入式系统则是一门理论加实践的应用型课程,针对实验教学中遇到学生离开实验室缺少实验环境的问题设计了在实验过程中发现学生对于嵌入式系统非常感兴趣,但是存在的一个客观问题就是本文重点介绍嵌入式移动机器人教学平台的设计以及相关教学实验的设计,目的在于探索建立新型概念课的方法和方式,让学生能够将知识的学习、素质的培养和实际应用联系起来。

关键词:嵌入式系统;移动机器人;实践;教学平台

中图分类号:TP751.1 文献标识码:A 文章编号:1009-3044(2015)02-0223-03

Abstract: Higher education reform focused on "heavy practice, integrated heavy, heavy and innovation",this paper introduced how to design a mobile robot teaching platform which was based on LPC1768 system. some experiments will design for student in order to improve students' practical ability. and could make student connect knowledge, practical application of knowledge and improve qualities together .

Key words: Embedded systems; mobile robot; practice; teaching platform;

机器人技术是一个国家科学技术水平和国民经济现代化、信息化的重要标志,而嵌入式系统则是机器人控制的核心部分[2]。针对笔者所在的院校向应用化改革的目标要求,设计了一门针对探索建立新型概念课的方法和方式,把知识的学习、素质的培养和实际应用联系起来。树立以学生为本,知识传授与能力培养并举,素质提高与协调发展并重的实验教学观念;以实验技能训练为核心,重应用,强调规范和精确[3-4]。本课程是将电子专业课程《C语言程序设计》,《嵌入式系统》,《传感器技术》, 《移动机器人技术》结合起来,将电子专业学生掌握的专业技能项目进行重新整合,建构一门新型实习实训课程。本课程着重于学生的应用能力的培养。

1 课程设计架构

本课程的设计根据学生的差异性分成两部分。

本课程的基础部分的整体框架是以传感器信号作为输入,以LPC1768作为CPU处理器[5],以串口或者LCD1602作为输出显示。从而构成一个简单的系统。综合部分学生可以结合自动控制的内容,实现诸如温控系统、超声探障报警系统等内容的设计。总体框架如图1所示。

图1中最左边是传感器,示意图中列出了超声传感器,红外传感器,温度传感器。当然可以设计其余的传感器传入。中间是处理信息的中心也即是嵌入式系统,设计中采用的是cortex-M3芯片,右边是数据获取显示部分,可以采取串口通过USB转串口线在上位机超级终端上显示,也可以通过无线传输模块将数据传输到上位机上,通过超级终端上显示。还可以通过I2C挂接LCD1602,在LCD1602上显示数据信息。

本课程的扩展部分是自主控制移动机器人的设计。使用嵌入式系统LPC1768作为主CPU,实现移动机器人的运动控制以及传感器数据的获取,移动机器人周围会搭载一系列传感器,如超声传感器,红外传感器,陀螺仪,电子罗盘,里程计等等。通过CPU控制电机实现控制移动机器人运动,通过超声传感器和红外传感器结合实现移动机器人周围障碍物的探测,而后CPU会处理传感器数据,通过处理的信息会进一步控制移动机器人的运动,通过陀螺仪,电子罗盘,里程计等传感器信息去获取移动机器人的位置信息。因为涉及到移动机器人运动控制部分的内容,所以会将学生分成几个小组,也会将任务分成各个部分。让学生以综合作业的形式提交。

图2所示则为扩展部分移动机器人设计框架,左边是获取周围环境的传感器信息,右边是显示部分,可以通过串口或者是无线模块nrf24l01将数据传输到PC上。传感器的数据获取以及处理则在LPC1768上实现。由图2可以看出,此设计仅仅使用了创意之星的底层框架,会使用LPC1768控制舵机运行。传感器数据获取处理,以及移动机器人的控制也是由LPC1768实现的。由于考虑到CPU的处理能力,后续会继续在此基础上使用多CPU进行改进。

2 课程体系设计

本课程将分成理论课程,实验课程以及综合设计三块内容。

第一部分是嵌入式基础知识的学习。主要包括嵌入式系统的软硬件介绍,开发环境介绍,会就嵌入式C与普通C语言的区别以及一些嵌入式C中常用的关键字如volatile进行介绍。而后会对一些与传感器连接需要使用的外设接口进行介绍,包括四个小部分,分别是通用GPIO的介绍,定时计数器的介绍,无线通讯模块的介绍以及I2C接口的介绍。

第二部分是传感器相关模块的介绍。首先介绍什么是传感器,而后分别介绍各个传感器,包括红外传感器,温度传感器,超声传感器,电子罗盘,陀螺仪等。

第三部分会留出一段时间让学生以项目的形式自己设计一个系统。会给定一些可选题目,学生也可以选择自己感兴趣的传感器去进行研究,形成一个完整的系统,需要学生提交项目计划书,产品使用说明书以及软件测试代码,测试报告等内容。

与理论课程相对应的会有实验课程结合,针对嵌入式系统的基本知识会有5个实验相对应,分别是嵌入式开发环境如何使用,主要是介绍keil软件的使用,如何创建工程,如何调试代码等。而后是对于通用GPIO接口的使用,之后是定时计数器的使用,主要是实现利用定时器精确进行计时。最后是I2C总线的介绍和使用。

针对传感器知识也设计了相关的实验,首先针对红外传感器会让学生学习如何设计了一个简单的遥控器,针对温度传感器DS18B20,要求学生能够设计一个温度报警系统,能够获取当前温度信息,当温度信息超过一定限值的时候,通过蜂鸣器进行报警。针对超声传感器,主要可以用于获取15cm-4m范围内的环境信息,希望学生能够实现每次按键中断能够获取一个障碍物距离信息。且能够通过I2C接口将数据显示在LCD1602的屏幕上。接下来九轴传感器的数据信息获取是基于I2C接口的,所以需要学生在了解I2C接口的基础上能够获取九轴传感器上电子罗盘,陀螺仪,加速度计的数据信息,且能够进行相应的处理。

针对自选项目会分层次给出题目。一般性题目诸如温度报警控制系统,有毒气体探测报警系统,超声障碍探测系统等。针对自主控制移动机器人部分,会给出诸如多红外传感器感测移动机器人四周障碍系统设计,该设计会作为独立模块要求学生使用单片机实现),超声红外探测障碍系统:与第一部分的区别是会要求学生使用舵机控制超声传感器动态探测前方障碍等。

3 课程的教学方式

本课程属于全新课程建设,包含理论教学、实验教学以及项目驱动教学。

(1)对于嵌入式系统的教学采用理论知识,软件代码以及实验结合教学的方法。

由于嵌入式系统是一门综合性很强的课程。从工程的角度分析,它是涉及了机械、电子、计算机等多个学科的系统,单个学习者很难掌握当前嵌入式系统开发的全部知识和技能。因此,各个专业的嵌入式系统教学所侧重的内容是不同的。比如电子和电气专业的嵌入式课程的教学内容更多的侧重于硬件电路设计。就计算机专业的角度分析,嵌入式系统涉及了计算机体系结构、微机原理和接口技术、实时操作系统和计算机编程等诸多知识内容。而且目前存在多种不同的嵌入式硬件平台、嵌入式操作系统平台和开发工具,如何在诸多的技术中进行教学内容的选择,是首先需要解决的问题。本课程计划采取嵌入式系统教学采用理论知识,软件代码以及实验结合教学的方法。由于本实验实训课程主要着重于嵌入式系统的外设使用,因此会避开硬件设计、操作系统、makefile等相关内容,直接采取首先介绍各个接口,而后介绍用到的寄存器,之后介绍如何使用寄存器操作接口,如何使用下载器,通过例子代码以及实物演示的方法来介绍如何使用,之后通过给定实验题目让学生在实验课程上使用理论课学习的知识来编写代码实现相关外设使用。

(2)对于传感器知识部分,采取首先介绍相关传感器的理论知识,而后实物展示,之后通过讲解传感器数据获取,处理代码让学生大概了解内部的工作原理,由于时间限制所以不要求学生会编写所有的传感器内部数据获取、处理的代码,最后会在实验课提供给学生实验课程的相关传感器初始化,读取,使用的接口代码。学生只需要能够使用各个传感器的接口代码获取传感器数据就可以了。

(3)对于最后的综合实验课程以项目组织实施的方式对学生进行指导和管理。

嵌入式系统无处不在,越来越多的数码产品充斥着我们的日常生活,如手机、数码相机、各式各样的机器人、电子交通工具、智能仪器和车载电子系统等等,而且其更新升级的速度也越来越快。这些都体现了嵌入式系统的设计和开发需要有不断创新的精神,并且需要采用研究性方法来进行设计和开发。

传统的嵌入式教学只是注重于知识的单向传播,即老师向学生灌输最终的概念、原理和结论,学生则是被动的接收和被动的记忆。学生被禁锢在课堂上、实验指导书上,极大地限制了学生的素质和创新能力的培养。在本实验实训课程的教学中,通过项目和自行创新实验的设置,大大地激发了学生的创造潜力,培养了学生的科研能力。而且通过鼓励学生参加各种机器人相关的比赛,也能够提高了学生自主创新的积极性和成就感。

本设计最后的项目,可以学生自己提出一个自己想要实现的程序,而后利用我们LPC1768实现相关的内容,同时我们也会分层次给出几个设计题目供学生选择。如气体传感器探测系统。学生可以自己选择相关的传感器,目前气体传感器有MQ2气体传感器、可燃气体传感器、二氧化碳气体传感器、空气质量传感器等很多。学生可以自己选择某种传感器去进行设计。

如学生可以选择一个可燃气体传感器做一个可燃气体探测报警系统的设计。这种设计能够用于家庭,放在厨房,当厨房可燃气体超过一定数值的时候就能够报警,对于家用安全有非常重要的作用。学生也可以选择空气质量传感器做一个系统,当今社会越来越多的人对于空气质量的指标越来越重视,如果学生能够设计出一个这样的系统去实时探测当前的空气质量,既有实际意义也能够激发学生对于电子专业的强烈的兴趣。

此外对于项目设计,要求学生在整体项目完成的过程中需要有项目需求说明书,概要设计说明书,详细设计说明书,在设计的过程中需要有对于每个设计文件的说明书以及测试代码,测试文档。对于整体设计完成之后需要有结题相关文档等。让学生在过程中了解一个软件项目中应该要做的不仅仅只是软件代码编写,还包括需求说明,设计说明,详细设计说明文档,软件功能测试代码,软件功能测试文档,系统测试代码,系统测试文档等等内容。

4 课程的考核方式

课程考核由实物演示、设计报告和答辩等三个环节组成,分别按照40%、30%、30%的比例构成。要求学生演示自己的实物,需要提交自己设计产品的使用说明书以及实验报告,最后会有一个答辩环节,三者结合给出最后成绩。

5 总结

本课程主要是将本校电子专业学生所学习的知识融合起来,让学生能够利用所学的知识进行应用。笔者在所带嵌入式系统课程上针对基础设计部分做了尝试,效果良好。学生就在学习嵌入式系统理论知识,实验操作之后,最后的大作业就设计出温度报警系统,超声传感器测距模块等应用系统。

参考文献:

[1] 殷建军,张明武,万军洲.竞教结合的嵌入式系统实践教学改革[J].计算机教育,2011,2(2):1-4.

[2] 孙士明,刘新平,郑秋梅,等. 计算机专业嵌入式系统实践教学体系探索[J]. 实验室研究与探索,2009,28(5):122-125.

[3] 原亮,丁国良,李浩,等. 嵌入式系统的综合教学实验环境建立[J]. 实验室研究与探索,2008,27(1):92-95.

[4] 汪治华,刘岩,全晓莉, 杜凯; 构筑综合学习平台, 改革创新工程教育[J]. 高等工程教育研究,2011(1):139-142.

[5] 周立功.ARM 嵌入式系统基础教程[M]. 北京:北京航空航天大学出版社,2005.

[6] LPC2114_2124_2212_2214-02-user_cn 中文手册.

[7] 何菁,詹洪陈,戴瑾.嵌入式系统设计实验[M].南京:南京大学出版社.2014.

[8] 张兰红, 陆广平.基于Proteus仿真的单片机教学的研究与实践[J]. 2014(5):76-78.

上一篇:运用切片技术和模型检验进行构件接口测试 下一篇:2×300MW循环流化床锅炉设计优化分析