没有合适的资源?快使用搜索试试~ 我知道了~
中大型LABVIEW软件三层设计架构.pdf
1.该资源内容由用户上传,如若侵权请联系客服进行举报
2.虚拟产品一经售出概不退款(资源遇到问题,请及时私信上传者)
2.虚拟产品一经售出概不退款(资源遇到问题,请及时私信上传者)
版权申诉
0 下载量 16 浏览量
2021-10-02
12:52:38
上传
评论
收藏 52KB PDF 举报
温馨提示
试读
5页
中大型LABVIEW软件三层设计架构.pdf
资源推荐
资源详情
资源评论
通常一个 VI 若包含三、四十个以上的 subVI( 不包含 LabVIEW 本身在 Functions 中提供的 VI)
时,就可算是一个中大型的软件计划 (software project) 了。虽然比起软件工程中的一些作业
环境软件 (如 Windows 系列 )或大型应用软件 (如 Word 、Excel) 等仍算是小工程,但其复杂性
亦在一定程度之上,若没有事先想好在撰写程序时的一些规划与方法,想要完成这类中大型
的软件绝对不是一件简单的事。尤其这类软件通常不是由一个人,而是由一个团队所共同完
成的,因此整个软件的结构,就要能让团队中的每一成员都能清楚的了解,而且要够简单,
才算是好的软件结构。 以下将参考由 Rick Bitter 等人所着 ”LabVIEW Advanced Programming
Techniques ”,中之第 4章的部分内容,介绍所谓软件计划中的三层式结构 (the Three-Tiered
Structure) 的概念及其优点。
需要软件结构的主要原因, 是当软件人员发展软件到某一阶段时, 若没有计划或无意的创
造了许多 subVI ,但各 subVI 之间有许多部分其实是重复撰写的;或各 VI 相互间呼叫时没有
一定的纪律,使得在 VI Hierarchy 中所看到的各 VI 间的联机是错综复杂,像个盘丝洞一般,
这将可能会使多人发展的软件计划增加所耗费的时间和可能出错的机会、减低程序的效率,
以及增加 debugging 时的困难。为了改善上述的情形,所以要提倡三层式结构的概念。
三层式结构由上而下依次为: Main Level 、Test Level 和 Driver Level ,这种结构是由经
验中得来的, 在多人发展的软件计划中显得简单明了, 当大家都能遵照这个结构来写程序时,
这种结构就可以充分显现出它的优点。那这三个阶层到底如何区别呢?以通俗的比喻来说,
假设我们如果要组织一个篮球队参加全国比赛,每个球员要练习基本动作及体能,如何跑、
如何跳、手脚该如何放置才是正确位置等,这就相当于系统中 Driver Level 所做的事情;接
下来,将各球员组合练习某一套防守或进攻的战术,如二三区域联防、人盯人防守,每个人
该在什么位置才能正确接应等,则像是 Test Level 中一项项的 test 了;而最后比赛时,场上
的战略运用,包括何时要用什么战术组合、如何更换球员、何时喊暂停、终场前是不是要故
意犯规或采拖延战术等等,对照过来,就像是在 Main Level 中,如何将 Test Level 中各 test
做最有效能的整合与排列组合等的工作。
简单来说, Driver Level 包含了程序与所有仪器、组件、马达或其它应用软件的沟通、控
制等较低阶的事情,使其可完成某一项基本的动作,例如初始化、马达走到 home 位置、雷
射以设定的能量及频率发射光束 ? ? ? 等。可注意到我们在这边所说的 driver ,并不像一般在
别处所称驱动程序的那种 driver 那么低阶,真正最低阶的工作还是要有现成的 VI 来帮忙才行;
在 Test Level 中,则是如何连接各个 Driver VI 的基本动作,使可做完出一套连续、有意义的
流程,来执行某项测试,例如让手臂由 A 点走到 B 点,下降夹取一个螺丝,再走至 C 点装到
某面板上,然后回到 A 点等待,类似这样控制一个流程的进行,便是 Test VI 的工作内容;
Main Level 则包含了使用者接口 (User Interface) 或称人机接口 (Man-Machine Interface) ,目
的是整合各项测试和例外处理 (Exception Handling) 等,将它们以适当的顺序及流程组合,很
容易地让使用者操作。
当一个软件计划严格的遵照上述的三层结构来撰写时,最大的优点是可使程序代码的再
使用 (code reuse) 达到最大化,在不同的 Test VI 中,可重复使用相同的 Driver VI ;而在不同
程序的 Main Level 中,又可重复使用相同的 Test VI ,这将使得程序维护或修改的时间与精力
大幅减少;同时当我们已有一个程序的样板 (template) 后,可增加软件版本更新的速度。另一
个很重要的好处是,当我们在撰写某一个 level 中的程序时,并不需要关心在另一个 level 中
有什么其它的程序是如何执行的, 而只要专注在自己的这个 level 的程序上就可以了, 这使得
由团队来共同完成一个大型计划的工作变得容易许多。
以下将依 Driver Level 、Test Level 、Main Level 的顺序,来介绍在各 level 写程序时的原
资源评论
资料大全
- 粉丝: 14
- 资源: 26万+
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功