Excel是好软件,更是好工具,前提是,你得用好它,发挥出它的威力,否则,它面对你,它会感觉很失败。
西门子S7系列PLC的编程软件一般都提供有变量表/符号表编辑界面,而由于软件大小方面的原因,我们编辑变量表/符号表一般都采用Office Excel软件完成,减少了电脑运行编程软件的负荷。
S7有多系列PLC类型,S7-200\S7-200SMART\S7-300\S7-400\S7-1200\S7-1500等,有时项目会包含多种PLC硬件系列,而系列间的硬件软元件符号又不一样,可寻址的存储区的数量多少有差别,如何在Excel中高效创建编辑对多品牌多系列PLC硬件的符号表\变量表?
这两天简单弄了一个针对上述各系列型号PLC的变量表编辑表格,如图:
参考IT中变量命名法的”匈牙利命名法“,为了让变量名具备有用信息,暂定PLC变量名的构成法则如下,
变量名=数据类型+功能描述+物理量名称+物理量单位
西门子博途的变量名允许128个字符的长度,想必是为了让其包含更多有用的信息,当然变量长的话,固然有助于工艺上的理解,但是要做复杂数据计算时,表达式的长度可能就成了问题了,写什么样的表达式要求是尽量”原子化“的表达式,短小精悍的,当然也是另一个话题了。

物理量的选择,如压力、流量、温度、液位、速度、开度角、体积、面积等等,只要你需要的,只需要简单编辑只包含物理量的表格即可,物理量单位的选择也是通过下拉菜单实现设定,

压力单位下拉菜单如图所示,







表格中单元格的内容基本上通过点击下拉菜单中固定选项设定,减少了手工输入工作量,能够提高不少效率。
变量名和变量地址,全部根据各组成部分的单元格内的值自动进行组合,包括地址的”溢出“检测。
表格具有自动数据检查功能,如图中的黄色部分,是非法地址,针对数据大小如“WORD”“DWORD"的变量,如果设定值不是数字”2“或者”4“的倍数的话,会变成黄色提醒;红色部分是地址和变量名的雷同冲突检测,以红色提醒;黑色部分,是根据变量类型,屏蔽掉其不使用或者不具备的属性。
现描述变量名的”功能“部分尚需手工输入,当然,如果面对的是标准机器的话,完全可以把常用”功能“描述做成序列,用下拉菜单方式实现设定。
说说使用到的那些Excel中的功能,也都是些最基本的功能,如数据验证、公式、条件格式、菜单的多级联动等等,连我这样的超级”小白“也能操练操练,用的都是相对来说的”笨法子“,其它一些功能更强大更好用的函数,暂时没时间学习,如果再加上VBA的话,那真就疯狂了。

针对向西门子软件符号表/变量表的导入,可以使用VBA复制几列组成一个新的,与西门子软件中变量表的格式一致的工作表,再进行导入操作。
尚有几个具体细节还在细化完善中,大家在工作中对使用EXCEL有什么见解和心得,或者使用了提高效率的哪些功能,可以交流一下。
表格最后制作完成后,用起来很爽!可是,想要这种结果的前提是,你必须做大量细致的准备工作!这一点没有任何商量的余地;就像PLC代码自动生成,HMI画面的自动生成等,辛苦一时,爽了多年。