实时控制软件设计第三周作业
- 阅读笔记
结合本周课堂所讲的实时操作系统知识内容,浏览如下商用和开源实时操作系统网站,写一段文字向其他同学简要介绍下某个实时操作系统的性能特点或进行操作系统间性能的比较:
Vxworks: www.windriver.com/products/vxworks
QNX:www.qnx.com
Xenomai: xenomai.org
Intime: www.tenasys.com/tenasys-products/intime-rtos-family/overview-rtos
Sylixos: www.sylixos.com
ucos: www.micrium.com
在此对Vxworks操作系统的性能进行简要介绍:
简介:VxWorks操作系统是美国WindRiver公司于1983年设计开发的一种嵌入式实时操作系统(RTOS),是嵌入式开发环境的关键组成部分。
性能特点:
(1)内核:微内核,VxWorks 的核心,被称作 wind,包括多任务调度(采用优先级抢占方式),任务间的同步和进程间通信机制以及中断处理,看门狗和内存管理机制。微内核体系结构,使得核心小巧而可靠,易于ROM固化,并可模块化扩展。内核对于用户而言是不可见的,系统中不会显示"内核进程"或"内核任务",只能通过系统调用。
(2)I/O 系统:VxWorks提供了一个快速灵活的与ANSIC兼容的I/O系统,包括UNIX标准的BasicI/O(creat(),remove(),open(),close(),read(),write(),andioctl().),BufferI/O(fopen(),fclose(),fread(),fwrite(),getc(),putc())以及POSIX标准的异步I/O。
(3)文件系统:VxWorks 提供的快速文件系统适合于实时系统应用。它包括几种支持使用块设备(如磁盘)的本地文件系统。这些设备都使用一个标准的接口从而使得文件系统能够被灵活地在设备驱动程序上移植。VxWorks 也支持 SCSI 磁带设备的本地文件系统。VxWorks I/O 体系结构甚至还支持在一个单独的 VxWorks 系统上同时并存几个不同的文件系统。
VxWorks 支持几种文件系统:dosFs、 rt11Fs、 rawFs、 tapeFs、 nfs、 cdromfs。
(4)网络支持:它提供了对其它VxWorks系统和TCP/IP网络系统的"透明"访问,包括与BSD套接字兼容的编程接口,远程过程调用(RPC),SNMP(可选项),远程文件访问(包括客户端和服务端的NFS机制以及使用RSH,FTP或TFTP的非NFS机制)以及BOOTP和代理ARP、DHCP、DNS、OSPF、RIP。无论是松耦合的串行线路、标准的以太网连接还是紧耦合的利用共享内存的背板总线,所有的VxWorks网络机制都遵循标准的Internet协议。
参考:
xinz
xinz
2. 本课程需要完成一个团队项目,主要功能是实现一个两轴机械手的运动控制仿真,主要功能包括:
用户接口任务:负责接收来自用户的请求,并发送运动指令给轨迹插补任务。
轨迹插补任务:接收运动指令,实时计算各轴的位置和速度设定值。
物理引擎接口:基于ODE开源物理引擎,创建一个两轴机械手及环境的物理模型,用轨迹插补任务输出的各轴位置和速度设定值控制模型的运动,并把实时状态反馈给轨迹插补任务。
图形化用户接口:可基于qt把上述功能集成到一个GUI界面。
1)请思考你最擅长或最有兴趣参与哪一个模块的开发,并写在博客上。
2)除了编程,你可以以多种形式为一个软件项目做贡献,如团队管理、需求分析、功能定义、算法设计、仿真分析、软件测试、文档写作......,快速阅读邹欣老师《构建之法》一书前五章和邹欣老师的博客(http://www.cnblogs.com/xinz),请写下你对团队协作开发的理解,以及自己在一个控制软件项目中倾向于承担的角色或任务。
简答如下:
1)在本次团队项目中,我分配的任务是完成游戏策略子系统,因此应该比较倾向于轨迹插补任务。
2)我觉得团队协作开发,各个任务之间有简有繁,个人能力也有差异,有各自擅长和不擅长的方面,关键在于任务的分配。在这一点上,需要一个比较熟悉各成员能力,并且对项目整体有清晰框架的leader,对各任务进行分配,才能保证团队中的每个人都充分发挥自己的能力,为团队开发做出做大贡献。
浙公网安备 33010602011771号