您的位置:控制工程论坛网论坛 » 自动化软件 » 组态王的十宗罪

zhanghe

zhanghe   |   当前状态:在线

总积分:3518  2024年可用积分:0

注册时间: 2010-03-22

最后登录时间: 2023-08-14

空间 发短消息加为好友

组态王的十宗罪

zhanghe  发表于 2010/12/8 13:56:58      1450 查看 2 回复  [上一主题]  [下一主题]

手机阅读

        以下是从转载的一篇文章,里面的一些问题好像6.5也没有解决。。
        组态王十宗罪
        在下以前从未用过组态王,最近由于偶然的机遇,接手别人留下的半拉子工程,有幸真正接触并使用了一次组态王软件,想组态王被业界誉为最好的国产组态软件,所以开始使用时还是充满信心的,但未想到,几个回合下来,大失所望,故总结了软件使用过程中的若干问题,发表出来,供各位同仁共同讨论,更希望亚控公司的技术开发人员,能够亲自了解这些问题,并给出适当的解答。如不幸被言中确实存在的问题,也希望在以后的升级过程中加以完善和改进。
        1、关于画面编辑器
        请问画面编辑器窗口的最小化按钮和关闭按钮有什么区别啊?依我看,好像是完全一样的功能,就是最小化而已。从这里,其实我想说的是,退出画面编辑器真的好难!即便是用菜单命令的“退出”,最终其实也并未退出,而是被最小化了。
        看组态王软件很多地方和intouch很相似,难道,这个坏习性也是跟INTOUCH学来的?既然开发基于WINDOWS的软件,就要遵从WINDOWS软件的使用风格吧,总不能自己随便修改风格,然后却美其名曰符合中国人的使用习惯?
        其实按照多文档文本的风格设计,想来也不是多难,包括存盘命令,也不能一键完成,总要多一些另外的操作。真是麻烦!
        要说因为多文件保存的缘故,整个组态王资源管理器退出的时候,倒也能逐一跳出提示框,对被修改的画面要求保存,还不是一样。(这是唯一的能够真正退出画面编辑器的方法,怪怪!)
        2、组态王的文件类型
        画面的文件,定义为*.PIC,无话可说。但备份文件,叫做什么*.111,什么玩艺?真是不敢苟同了。从这一点上看,根本不像一个正式软件,倒是很像一个大学生的编程作业,编程时候文件类型随便定义为111,222,123就行了,程序能运行就行。所以从这里来看,我宁愿称组态王为一个程序,而不愿称之为软件了,对设计开发者,我也觉得和我等差不多的编程者而已。
        正式的软件,总要将文件的类型定义到系统注册表中,至少作为一个占用的声明,即便这个文件并不是一个文档文件,没有可绑定的程序将其打开。当然,这个声明也不能太滥,像超级解霸,将大概相关和不相关的类型都强行定义到自己名下,比如*.VBS等等也不嫌弃,并为之绑上自己的播放程序,倒是非常令人讨厌了。
        3、画面内控件的属性设计
        按照一般的使用习惯,一个控件或者对象,鼠标点中之后跳出的快捷菜单,最后一项一般来说是属性,选择属性命令,根据这个对象的特性,会跳出与之相关的系列属性设置对话窗口,文字,按钮,图像,线段各不相同。但一些通用的属性,如在画面之中的位置,前景、背景颜色等等,大致在同样的界面中出现。
        但咱们组态王?完全不是,最优先跳出的,不是这个对象,而是所在画面的属性页。不管点中的是画面还是画面之中的控件。搞不懂。画面的属性就那么重要吗?那么需要随时更改吗?
        反倒各种控件,修改的方法千差万别,但就不能统一,比如文字,内容的修改有字符串替换的专用命令,但其他,如颜色,字体、字号等等,则只有从工具箱的快捷工具之中才能找到。快捷工具能实现一些功能,固然欣慰,但我认为,一个功能的实现,不应当只有一个渠道,而是很多渠道实现,软件才叫完善。比如autocad,要画一个圆,就有很多方法实现这个命令,不是吗?
        4、按钮、指示灯等控件
        对于普通的画面对象,比如自己画的一个圆,它的背景色可以绑定到i/o的bool变量,根据逻辑状态的不同,可以显示不同的状态。但指示灯等标准控件,则不可以!要对指示灯控件选择绑定变量的时候,鬼使神差的只能选择“内存离散”,而不能选择“i/o离散”类型的变量。那些变量给屏蔽过滤掉了!变量不能显示外面世界的状态,还有什么用啊?难道非要在系统里面编程转化才行?但内存变量还不是一样要算在许可点数之内。况且自定义对象完全可以,所以我看还是定义为bug最容易理解。
        另外,组合对象不能编程,我认为是很大的垢病,如果我这个组合对象,要针对现场的某个变量的不同状态,表现不同的状态,比如位置、颜色、隐藏等等,那么还非要每个对象逐一修改才行?当然,这在程序设计上存在难度,不容易实现,可以理解。
        5、一些自说自话的功能
        一些功能,貌似看起来很体贴的,但有的时候却未必准确,反倒成为拦路虎。比如变量定义之中的线性变换,不管希望与否,一概变换,如果没有加以注意,超出了变换范围之外,比如现场出现了负数,而却省定义变换范围的下限为0,那么系统就不认识!
        大哥!我不想变换,我只想如实得到现场的实际值,可以吗?
        还有,变量输入的对话框,非要给一个上下限的范围,我不想要,可以吗?拜托!
        另外,这个软键盘的输入对话框,最好位置可以移动啊,把我的画面都挡住啦!有的时候,我想在输入的时候还想参考一下画面运行的其它值啊。
        6、控件的x,y位置
        在需要实现动画的时候,这两个值是很重要的,但和上一条一样自说自话的毛病,如果你想将一个物体从左边界移出视线之外,静态设计时可以,但动画编程时则绝对不可以!因为系统已经自作主张的认定坐标值不能为负,殊不知,如果一个100x100的矩形,如果只显示一半的话,它这时的x坐标位-50!
        7、变量名称更换
        这个功能,说来算是不错的,将变量名字修改之后,项目中所有引用到此变量的画面和程序,变量名称同样随之更改。但可惜用户界面不友好,或者说根本没有考虑到用户怎么使用!
        按照通常的使用习惯,画面中应首先显示变量本来的名字,然后才是要修改的目标值,光标停留在这个文本框之中。善意的功能,可能认为目标名字总要和旧名字类似,所以可以将原名字copy一份,并却省全部文字选择,供使用者在此基础上修改或者完全替换。
        而现在的情况呢?我都伤心的不想描述了。有兴趣的自己使用试试!我曾经想将一批变量的名字前面均添加一个A#的前缀,天知道我做的时候多么伤心和失望!对这部分功能的设计者。
        或许会有个把高人建议我导出为CSV之后修改,STOP!还不如一个一个地改成功的可能性大哩。
        顺便提一下,系统的变量使用交叉索引,功能不够强大!搜索到在某一个画面中使用,但不能指明引用的空间的性质,却只能大致的指向一个位置方位,和算命的差不多!
        除了变量的交叉索引,画面的交叉索引也比较现实!
        8、ODBC功能
        说实话,组态王对数据的处理大量使用了ODBC,而且是完全离不开的,但是这带来的毛病就是,项目程序的可移植性差,一旦用户计算机系统崩溃,恐怕除了原设计者,没有几个人能完成恢复,特别是仅仅依靠使用单位的维修人员,太困难了!
        所以,既然使用ODBC,就要有功能,在系统开始运行时,有方法判断系统DSN是否已经存在,未存在,则自动给予建立。
        初次接触,研究数天,未找到解决的方法。
        9、DLL功能
        其实是上一问题的延续,既然系统没有提供功能,则可以自己调用相关DLL程序实现吧?
        可惜,搜索所有HELP文档,唯一与DLL相关的条目也是在讲其它的问题。
        该不会有人建议用shell+rundll32+dll文件的方式吧?
        另:VBA和VBS编程语言支持是现今非常流行的,组态王,努力啊!
        10、系统函数的返回值
        不管组态王的脚本编程语言是类似C多一些,还是类似BASIC多一些,但系统提供的那些函数,其原型的描述却不甚准确,尤其是个函数的返回值的类型,大多不讲的,所以函数调用的情况,成功与否,很难得知。
        比如用户登陆的LogOn()函数和选择配方RecipeSelect()函数,运行是有模式对话框的,但如何知道最终用户是选择了确定还是取消呢?
        注:
        本人接触并使用的组态王版本为6.02,听闻又出了新版软件,想,如果上面的问题在新版中如果已不再,则当欣喜过望矣!或有侠客高人,能给出现有条件下的应对方案,也必将重谢之。
        著此文,完全从技术探讨的角度出发,无有对任何个人和公司诽谤和打击之意,如有个别词语过于激烈,使您受到不应当的伤害的话,请及时通知本人!

1楼 0 0 回复
  • lyc19730508

    lyc19730508   |   当前状态:在线

    总积分:21344  2024年可用积分:2

    注册时间: 2008-03-20

    最后登录时间: 2021-05-27

    空间 发短消息加为好友

    lyc19730508   发表于 2010/12/8 14:27:16

    好象在那儿见过此类文章!

    可能组态届还没有硬性规定的原因导致!

    2楼 回复本楼

    引用 lyc19730508 2010/12/8 14:27:16 发表于2楼的内容

  • 林波零

    林波零   |   当前状态:在线

    总积分:215  2024年可用积分:0

    注册时间: 2009-08-03

    最后登录时间: 2017-11-02

    空间 发短消息加为好友

    林波零   发表于 2011/1/12 23:38:10

    亲身体验,组态王的确是不好用
    3楼 回复本楼

    引用 林波零 2011/1/12 23:38:10 发表于3楼的内容

总共 , 当前 /