技术论坛

 谈谈怎么提升程序逼格

返回主题列表
作者 主题
宁超
至圣

经验值:11564
发帖数:1009
精华帖:39
楼主    2016-11-09 11:11:41
主题:谈谈怎么提升程序逼格 精华帖 

逼格

“逼格”一词也许不雅,名词,意为装逼的能力。其实逼格和装逼是有区别的,前者只提供装逼的能力但去不去装是另一个议题,当你不装逼时逼格就不能称之为逼格。格逼是网络新词语也就是所谓「逼格」即「装逼」的档次。

目录:

1使用英语提升BG

2使用项目集成方式提升BG

3使用多种语言提升BG

4使用模块化和小工具来提升编程能力BG

5合理使用上位机的颜色来提升BG


1使用英语

   编程界面一定要是英语哦!勇敢的第一步就是把你的STEP7语言设置为英语!使用英语编程界面,英语再不好的工程师,只要对STEP7稍微有点熟悉,3个月的适用期一过,想改回中文都不乐意。因为习惯了别人羡慕的眼光。

   PLC工程师可以说门槛比较低,从事PLC调试的职位的人员以及维护类岗位其英语水平较差的应该不在少数,大部分还在每天在网上QQ群,各大工控论坛网罗别人的项目程序例程。当他们打开你的程序发现你的程序找不到几个汉字的时候,第一感觉一定会认为你是个很牛的人啊。

 

  

    极其相似的两段程序,有没有觉得自己真的潜意识的是有点崇洋媚外的,明明中文更容易看懂,还有这么清楚的注视,为什么就是觉得中文的不好看呢?从感官来说,中文真的不适合编程。


    用于英语毕竟不是母语,全英语化程序对工程师来说,要求甚高。而且调试的容易头大,比如,操作时候探出什么对话框的时候,会由于现场调试着急根本就不看那全是字母的对话框到底写的什么,也就错过了STEP7系统自带给出的正确解决方案。 但为了BG我都忍了,下面来讲讲怎么合适英语化,又简单又好使。   

符号表的英语化

   编程界面使用英语并不是说你的项目里所有的文字都使用英语,如符号表注释可以使用中文,因为那个难度还真的有点大,把符号表的注释都写成英文。


1.常用标志位英语化

这里有常1,常0标志位,有首次扫描标志位。这些时钟脉冲用于程序里计时等。这些符号命名注释好,以后项目都可以使用,真谓一劳永逸。


                  使用效果示范

2.较难翻译中文描叙

例如:

P101_Local,  I0.0,  BOOL   渗透水出口泵远程就地选择,1=就地

P101_FbkRun, I0.1,  BOOL   渗透水出口泵运行反馈

P101_Trip,   I0.2,  BOOL   渗透水出口泵跳脱保护

P101_Start,  Q0.0,  BOOL   渗透水出口泵启动

渗透水专业性强,因为有可能你翻译不出来Imbibition water,

你这样说就行了,“因为针对业主是国内的,所以我们注释是使用的中文,方便维护。

切记变量不要使用中文。


3.OB,FB,FC的英语化

命名,注释,作者等信息齐全,且英文注释;

比如我个人就会在SCL编程的时候写上这么一堆东西。

                             使用效果图1

              效果图2

4.FB,FC的接口名英文化,有意义化:

比如电机的运行反馈接口怎么命名:

好的命名:FbkRun (Feedback Running)

坏的命名(中文拼音式命名):Djfk (电机反馈)

无意义命名:IN1,A1,A2,IN2(实赖英语水平差,不知道运行反馈英语怎么写)

电机接口命名方式可以参考以下列表(取自PCS7 APL MotSpdCL功能块IO说明)


       无意义的命名

            摘自PCS APL MotSpdCL功能块

 

宁超
至圣

经验值:11564
发帖数:1009
精华帖:39
1楼    2016-11-09 11:12:06
精编帖  主题:回复:谈谈怎么提升程序逼格

2.使用项目集成的方式

  使用项目集成方式(OS编辑器)能助你实现

   自动变量上传

   自动组态归档变量

   自动组态报警消息

   PCS7风格界面(无需手动做画面切换按钮,做报警界面,用户登录等)

   厉害了,Word哥!


    如果你没玩过程序自动上传报警到wincc,没有玩过归档自动上传到wincc,我不怪你,但是你如果连变量自动上传到wincc都没玩过就太Low了。

 

    西门子有款组件叫OS编辑器,能轻松实现编译OS自动上传变量,上传报警消息,上传归档变量。添加FB的接口属性,以SCL编程为例:

    当前要上传电机的转速和电流并归档,只需要命名接口时添加属性即可自动上传至wincc。

    FB_SPD       {S7_m_c:='true';S7_archive:='shortterm'}

                 : REAL := 0.0;   // Motor speed feedback

    Current      {S7_m_c:='true';S7_archive:='shortterm'}

                 : REAL := 0.0; //AV1

                                           变量自动上传

    有人说自动上传报警归档你这是PCS7做的吧,告诉他这绝对是STEP+WinCC实现的,为什么可以实现,就让他凛冽寒风中自己脑补吧。

                                                              

                               自动生成的归档变量列表

                                    自动生成的报警列表




           想起Papi酱的一句话,OS编辑器,这么厉害,你不用一下吗?(你不点我一下吗)

宁超
至圣

经验值:11564
发帖数:1009
精华帖:39
2楼    2016-11-09 11:12:23
精编帖  主题:回复:谈谈怎么提升程序逼格

使用多种语言


  不要跟人去争什么编程语言好,因为咱家什么语言都用。你一争你就Low了。LAD在BOOL逻辑里有无可厚非的优势,STL的寻址能力很强,无视数据类型的约束,SCL易读性强,适合算法。我喜欢他们各自的优势。LAD,STL,SCL,CFC,SFC ,SFC type,Graph都会。

  

                    多种语言混用


                即使是拼音党会用STL看上去也很牛

   听说STL会被淘汰,听到这么消息的时候,其实我是很Sad的,蓝瘦,香菇。以后又少了一装b神器。我当时学的很努力的,取消支持STL后会感觉身体被掏空。

   论坛上可是有一大批想弄什么指针,STL的人。


  

模块化以及小工具

还想谈谈我对工程师编程的程序框架观察: 

编程人员的水准大概分为这三到四级吧!

最Low的方式:线性编程,程序从头到尾都在OB1里完成了,以前的S7-200盛行的编程方式;新手不加以指导,程序必定是这样的最后结果。


第二级:会使用FC和FB来规划分类程序,然后在OB1里调用FC、FB ,但是FC和FB里有较多的绝对地址,不具备可以重复调用的能力,移植差,每次调用需要修改程序里的绝对地址。


第三级:会使用FB,FC的形参,对程序规划比较合理,会优化程序的调用,例如会处理IO刷新的一致性,会将PID至于合理的OB中中断。 


第四级:善于利用工具,OS编辑器是其中之一,如在PCS7中会使用IEA等批量生成程序,对项目前期能精确规划,返工和漏洞以及修改都比较少。EXCEL公式或者VBA用的666的,能巧妙的利用EXCEL手动导入导出归档报警,自动生成符号表等。具备有自我开发类似库的能力,并能针对项目特性作出很多有用的小工具。


我个人尝试做了很多小工具,都是基于EXCEL的,EXCEL是工程师最好的伙伴没有之一,比如输入位号自动生成符号表,自动生成IEA格式等,无奈通用性太差,也不太灵活,能一定程序上减少工作量,但是改动会非常麻烦。还需努力把。

                   自动生成符号表信号分柜


您收到0封站内信:
×
×
信息提示
很抱歉!您所访问的页面不存在,或网址发生了变化,请稍后再试。