《实时控制软件设计》2015年度课堂教学内容总结

本课程共24课时,12次课程,因元旦放假,实际上了11次课程,实际教学内容如下:

第一次课程:

软件工程概述,自动化软件体系结构概述,课程要求和考核方法,面向对象编程回顾。
开源机器人运动学库KDL介绍。
作业:加入课程QQ群,建立cnblogs账号,建立github账号,完成第一次编程作业和阅读笔记。

第二次课程:

C++编程复习,Complex例程讲解,构造函数和析构函数,操作符重载,虚函数。
KDL代码中的类定义演示。

第三次课程:

容器与算法简介,Vector容器的使用,例程讲解。
KDL代码对容器的使用演示。

第四次课程:

OOD基本思想,面向对象八大原则,设计模式,例程讲解。
KDL代码中应用的设计模式演示。

第五次课程:

商用机器人控制系统软件架构分析。
机器人正逆运动学和坐标变换分析。
两轴机器人作业讲解。
KDL项目在GITHUB上的目录结构分析。
作业:完成两轴机器人编程作业。

第六次课程

GIT/GITHUB操作介绍。
作业:完成GIT操作练习和阅读笔记。

第七次课程

单元测试的原理与作用,CPPUNIT架构。
KDL的单元测试实现演示。

第八次课程

构建工具概述,Makefile文件的编写。
CMAKE工具的使用。
KDL的CMAKE构建演示。
Automation Studio编程环境简介和咖啡机程序演示。
作业:组建团队,建立GITHUB项目。

第九次课程(贝加莱工程师主讲)

基于模型的实时控制软件设计。
用MATLAB/Simulink和Automation Studio协同开发控制软件。
温度控制和Delta机器人实例演示。

第十次课程

Automation Studio项目建立过程。
实时多任务调度机制。
控制软件的需求分析。
基于状态机的设计方法。
基于GITHUB的代码提交和团队开发流程。
作业:通过pull request把编程作业提交到GITHUB上的课程项目中。

第十一次课程

集成测试和自动化测试的概念。
Travis CI介绍和使用演示。
各团队介绍项目计划和分工。
作业:开展团队项目大作业。

主要问题:

  • 课堂讨论不足,可以把一些基础知识和工具使用方面的内容做好网络资源留到课下自学。
  • “梯子”提供不足,要给学生提供更多的文档模板,代码模板,测试用例等,让学生有闯关升级的兴趣。
  • 重点不够清楚,学生学习过程存在困惑。
  • 各个环节衔接不够好,没有为团队作业做好准备,应在开课阶段就完成团队组建,个人可有针对性地进行技能训练。
  • 实验环境没展开,2016年争取做到每个小组都有一个可操纵的机电硬件平台,如桌面型多关节机器人。

特别致谢:

  • 邹欣老师:对教学内容,作业设计给出很多重要建议,并对同学们的博客进行犀利点评。
  • 飞龙博士:对课程积极建言,对同学博客进行拉网式阅读和认真诚恳的点评。
  • 周筠老师:组建“构建之法”教学群,通过和全国不同高校的老师同学交流,对本课程的完善有很大的促进。
  • 贝加莱公司领导和朋友们:提供实验平台、软件和培训资料,参与课堂教学,提供技术支持。
posted @ 2016-01-17 22:58  chenhust  阅读(552)  评论(7编辑  收藏  举报