西门子工业支持中心,以专业共创价值!
西门子工业支持中心,以专业共创价值!
作者 | 主题 |
---|---|
绫 总坛主 ![]() ![]() ![]() 经验值:11325 发帖数:1112 精华帖:108 |
楼主
![]() 主题:【周三技术工坊】编程风格指南的八个重要规则 ![]() 使用SIMATIC控制器或者SIMOTION编程时,程序员的任务是创建一个尽可能清晰可读的用户程序。 每个程序员都会使用自己的方法和策略,例如命名变量或程序块甚至是注释的写法。 不同的程序员的方法和策略创建了非常不同的用户程序,最终会产生各种不同的代码。 这对程序维护和协作工作会造成一定的困难。因此可以考虑采用一致的编程风格。 *使用一致的编程风格的优势 如果有几个程序员在同一个程序上工作,建议坚持使用统一协调的编程风格。 这提供了以下优点:
1. 如果编程风格中没有注明标识符表示法的其他规则 2. 指南,各自的标识符写在camelCasing中。 3. 以下规则适用于camelCasing: a. 首字母以小字体书写。 b. 不使用分隔符(如连字符或下划线)。 4. 如果标识符由多个单词组成,则每个单词的首字母为写成大写字母。
块(OB,FB,FC,DB,背景数据块,TO等)的标识符以大写字母开头 例如: ConveyorControl 实例DB块的前缀使用'inst'/'Inst': 例如: 单次实例:InstHeater (大写→自己的块) 多重实例: instTimerMotor(小写→在一个实例中)
临时变量(TEMP)必须由用户进行初始化。通常,必须确保在读取临时变量之前始终先初始化或者写入临时变量值。 Example #tempAcceleration := 0.0; #tempVelocity := #MAX
1. FC和FB中不允许访问全局数据。这包括以下内容: a. 访问全局数据块和使用其他实例数据块 b. 访问标签(标签表)。 2. 访问数据通过接口进行。
如果程序中调用的FC,FB或系统函数提供错误信息和标识,则始终需要对这些信息和标识进行评估。通过设置布尔错误变量来指示错误。
常量的定义使用大写字母和下划线,常量的名称总是以大写字母书写要检测单个单词或缩写,应在单个单词或缩写之间使用下划线。 比如:MAX_VELOCITY。而且应该尽量使用本地常量。
用户定义数据类型的标识符前面带有前缀“type”。
程序代码(SCL,LAD,FBD),需要描述重要的信息,例如: //============================================ // Company// (c)Copyright (year) //----------------------------------------------------------------------------- // Library: (that the source is dedicated to) // Tested with: (test system with FW version) // Engineering: TIA Portal (SW version) // Restrictions: (OB types, etc.) // Requirements: (hardware, technological package, memory needed, etc.) // Functionality:(that is implemented in the block) //----------------------------------------------------------------------------- // Change log table: // Version Date Expert in charge Changes applied // 01.00.00 dd.mm.yyyy (Name of expert) First released version //============================================
更多详细信息,请参考如下文档: https://support.industry.siemens.com/cs/us/en/view/109478084 -------来自 西门子技术支持工程师 |