面向运动控制的DSP技术及课程设计教学

2013-08-23 03:23堃,房
电气电子教学学报 2013年2期
关键词:里程计课程设计模块

钱 堃,房 芳

(东南大学自动化学院,江苏南京 210096)

数字信号处理器DSP是目前测控、通信、语音/图像处理和消费电子等领域中应用广泛、发展迅速的一项前沿技术。DSP教学对于培养电子信息与电气类专业学生的自主创新能力具有重要意义[1-4]。

1 DSP课程教学现状

我校开设的32学时的“DSP技术及课程设计”,包括18学时的理论教学和14学时的实验教学与课程综合设计。课程的教学内容是:嵌入式DSP处理器的硬件结构、片内外设资源、通信接口和CCS集成开发环境与软件开发等,要求学生掌握嵌入式测控系统设计开发的一般方法。

我校从“数字逻辑电路设计”、“微机系统与接口”、“单片机技术”到“DSP技术及课程设计”这一系列课程的渐进式教学,可以反映对学生软硬件设计水平和工程实践能力的深入培养。

我们为了跟上国际DSP器件技术的快速发展,没有沿用老款24xx系列与281x系列DSP,而选用了最新F28335芯片。讲课着重从运动控制的应用角度结合科研需求进行教学实践,强化DSP类课程学以致用的教学目的。

2 “DSP技术及课程设计”教学方案

2.1 芯片及编程语言选型

本课程选用了TI公司最近推出的一款2000系列浮点 DSP TMS320F28335芯片。该芯片与TMS320F2808和TMS320F2812等2000系列传统DSP相比,各方面性能都有所提高,平均性能提升50%左右,芯片具有150MHz的高速处理能力,配备了32位浮点处理单元,6个DMA通道支持ADC、MCBSP和EMIF,有多达18路的 PWM输出,12位16通道ADC[5]。它与定点C28x软件兼容,尤其适于测控领域控制精度高、速度快和集成度高的要求。

对于DSP的编程方式,我们在介绍了代码设计套件CCS开发环境的基础上,选用以C/C++为主、汇编为辅的混合编程方式,即主程序采用C语言框架,对实时性要求较高的代码段采用汇编语言编程。这种方式兼顾了上层应用软件编程的简洁性和低层控制软件的高效性,容易被学生掌握。

2.2 对比式教学法

由于学生已系统地学习或了解过微机原理、单片机等相关知识,对比式教学法能够在短时间内引导学生高效率地学习掌握DSP处理器的特点及开发方法。

学生通过比较DSP与Intel X86架构微处理器、51系列单片机在体系结构、片内资源、存储器和I/O接口等方面的特点,能够抓住DSP架构的如下核心特点。DSP具有较高的时钟频率,采用改进的哈佛结构实现程序与数据的并行处理,拥有一套特殊的指令集实现复杂算法,集成了丰富的片内资源及接口。学生通过比较X86的冯·诺依曼结构、单片机的哈佛结构以及DSP的改进哈佛结构,可清楚理解微处理器架构和指令对程序、数据操作方式的区别,也加深了在“微机原理”课程中学习的知识概念。

2.3 灵活编排教学内容

笔者针对2000系列DSP特点,以运动控制为应用目标重构了授课内容。即在介绍DSP背景知识及架构特点的基础上,首先介绍定时器计数器与中断控制系统,从基本输入输出的角度介绍GPIO及其在数字量接口中应用,介绍SPI、SCI两种串行接口;随后介绍事件管理器、ECAP、PWM模块及其在运动控制中的应用,A/D、D/A模块及其在数据采集系统中的应用;最后补充介绍eCAN模块。

我们在授课过程中,注意对具有相似性的串行外设接口SPI与串行外设接口SCI进行比较,从中分析串行同步/异步通信的差异;另外,对较为基础的GPIO与I/O(开关、液晶屏接口)实验进行压缩,对难点所在的事件管理器等部分适当地增加实验课时,为课程设计打好基础。我们在授课与实验环节中,始终贯穿对CCS开发环境、编程语言特点、软件调试流程和结果观测方法等的介绍,循序渐进地加强学生的实践开发能力。

3 结合运动控制的多元实践教学

3.1 半开放式课程设计

课程设计实验的内容是利用F28335核心板与ICETEK-MOTOR-E运动控制板,设计直流无刷电机的调速控制系统。为让学生渐进地学习掌握F28335 DSP运动控制基本方法,我们安排了若干单元实验:①基于霍尔传感器的运动状态捕获,即研究总结电机正/反转情况下霍尔传感器捕获端口状态的变化规律;②直流无刷电机驱动控制,即在利用TI公司bldc库的基础上,学习掌握PWM波形发生与电机转速控制基本方法;③半开发式课程设计,学生可选择利用GPIO扩展小键盘或A/D接口扩展电位器,对直流无刷电机进行转速设置和调节,并利用点阵液晶屏显示转速、方向等状态信息。

3.2 移动机器人运动控制的科研设计

笔者所在的智能机器人实验室自主研发了如图1所示的SBOT轮式服务机器人控制系统,原有基于ARM处理器的里程计控制板卡存在里程计模块输出跳变、更新周期慢等问题。为解决此问题,考虑到部分学生在课程学习上进一步的需要,组织他们参与课题科研,设计新的里程计定位单元。具体要求是采用双缓冲滤波机制,有效地滤除底轮码盘返回的突变值,保证里程计输出的正确性,采用定时器中断、CAN中断的方式缩短更新周期。

图1 SBOT服务机器人

新设计的里程计结构如图2所示。里程计定位单元采用TMS320F28335核心开发板,DSP处理器系统主频为150MHz,较之于原系统70MHz主频的S3C440BOX有大幅提高,为缩短里程计的更新周期创造了条件。而且,F28335自带CAN控制器能使接口电路设计较为简单,有利于降低了设计的复杂性、提高系统的稳定性。系统主要包括CAN总线通讯模块、电源模块、系统时钟与复位模块、JTAG调试模块以及光电采集模块。

图2 里程计定位单元结构图

实验室课题组在学生参与设计的新方案基础上,开发了改进的机器人里程计定位单元,并在SBOT机器人上测试,验证了机器人在室内环境下长距离运动定位的准确性和可靠性。

4 结语

本文从TI 2000系列DSP运动控制的应用出发,遵循自动化专业处理器一类课程教学的创新性、渐进性、开发性和实践性原则,对教学、实践及实践的内容和方法进行了研究论述。在实践教学中,采用半开放式课程设计与科研驱动的应用设计相结合,取得了良好的教学效果。不同层次的学生可自由选择适合的内容:普通学生通过半开放式课程设计,结合 DSP运动控制综合实验箱完成基于TMS320F28335的直流无刷电机调速系统设计,并在系统的人机交互接口等方面有所发挥;能力较强的学生参与了移动机器人里程计运动控制单元的科研实践。学生普遍反映收获很大,学习兴趣明显提高,创新能力增强。

[1] 张雪英,李鸿燕,张小玫,“DSP原理及应用”实践教学模式研究[J],南京:电气电子教学学报,2009,31,SUPP,96-98.

[2] 管庆等.“数字信号处理”与“DSP技术”课程的关系[J],南京:电气电子教学学报,2008,30(6),86-88.

[3] 张卫宁.DSP原理与应用的教学要点及方法探讨[J],北京:实验技术与管理,2007,24(6):19-20+24.

[4] 李正周等,基于DSP的波形发生器的课程设计分析[J],南京:电气电子教学学报,2011,33(3):61-63.

[5] 王忠勇,陈恩庆.DSP原理与应用技术[M].北京:电子工业出版社,2009.1.

猜你喜欢
里程计课程设计模块
室内退化场景下UWB双基站辅助LiDAR里程计的定位方法
28通道收发处理模块设计
“选修3—3”模块的复习备考
车载自主导航系统里程计误差在线标定方法
龙凤元素系列课程设计
中秋明月
一种单目相机/三轴陀螺仪/里程计紧组合导航算法
大角度斜置激光惯组与里程计组合导航方法
基于Articulate Storyline的微课程设计与开发
开放大学课程设计与资源开发