Main Level又称人机接口(Man-Machine Interface, MMI),设计Main Level程序的中心观念是不仅要能完成测试外,而且操作上要越能user-friendly越好,因为当使用者在操作仪器设备时,他其实并不见得很关心细节的部分是如何运作的,他或许只希望能很轻松愉快的尽快完成工作,然后轻松愉快的下班回家。例如,使用者希望手臂能够走到某特定位置去夹取一个螺丝,最好是按下某个屏幕上的按钮就好了,只要看着屏幕上一切正常的讯息,说不定他还可以有时间悠闲地喝杯咖啡呢!
通常Main Level VI的设计往往利用while循环不断的polling,大部分的时候也不只一个while循环。其内容要包含几个重点:
a) 可让操作者设定或更改操作参数:
例如可选择何项测试及执行顺序、接口的地址、档案的路径等等,但也请注意,需设定的选项并非越多越好,太多的选项容易使人分散注意力而容易出错。
b) 在特定的情况下使用适当的Control:
有时Control需加些心思来点变化,以表示其不同的重要性,最简单的当然是以大小、颜色来区别,当然在执行时也可利用property node中闪烁的效果来强调,不过一般而言,常用的重要Control通常用按钮放在Front anel上显眼的地方;而较不常用的Control,通常利用放在cluster或tab control中,利用invisible的功能或换至其它页面使其平常不出现在Front Panel上。较不常用的按钮,也较不用按钮的形式,而可在Controls> Classic Controls> Boolean中选择Radio Button或Checkbox来使用。请记得一个原则,在Front Panel上可看见的Control越少越好,因出现越多的Control,设定的参数就越有可能因不小心而改变,进而造成错误发生,要避免这种情形,可将Control连上另一Indicator后,在将Indicator放到Front Panel显示其值即可。
c) 要将众多的Control及Indicator依使用功能分类,并适当地利用页面切换来显示。
d) 在执行程序时可以选择cancel或abort:
这对操作者而言是十分重要的,但却容易被程序设计者所忽视,因程序设计者会不经意的假设操作者是非常了解他所写的程序,又非常熟练,而且一定照正确步骤不会按错按键。但实际上操作者可能并不熟练或很粗心等等,有时若一旦按下某个按钮就不能后悔的话,很容易造成万劫不复的悲剧。请注意,程序设计者一定要在程序中加入在执行中跳出程序的方法,而尽量避免由操作者去按下toolbar上的abort(红色圆形按钮)来跳出程序。
e) 在Front Panel上多使用图形,避免过多的文字或数据。