达州西门子S7-300代理商西门子S7-300系列PLC在编程时是否需要用到SCL
问:西门子S7-300编程必须要用到SCL吗,只用LAD怎么样?
答:S7 SCL是符合EN 61131-3(IEC 61131-3)标准的文本语言,也就是说支持该标准的任意厂家的PLC均可以使用与之相似的语言编程,支持强大的数据处理运算功能,一般深受IT人员的喜爱。SCL是STEP 7软件的一个可选附件包,标准版的只有 LAD,STL,FBD三种编程工具。它同STL、LAD、FBD属于同一个作用, SCL需要用单独的程序块来编写,需要编译后才能下载到CPU执行;LAD和STL可以在同一个程序块里编写。在STEP7没有安装SCL时,用其编辑的块都会以STL格式打开并显示。
S7 SCL 包含的语言结构与编程语言Pascal和C相类似,所以只要接触过Pascal、Delphi、vb等编程语言者,实现S7-SCL语言的快速入门是非常容易的,不必了解继电器原理,而且,即使是做逻辑控制也只需简单的编程语句就可以完成,所以S7 SCL特别适合于习惯于使用编程语言的人使用。这种语言适合于处理复杂的逻辑和大量的数学运算,由于其具有语言的编程结构,因此和S7的STL语句表编程方式比较起来有着更加方便的控制方式,可以这样说,只要是必须使用语句表的地方,我们均可以考虑使用SCL。
也许STL在执行时比SCL更加高效,但事实上也不一定,首先SCL可以编译成STL,同时 SCL设计时可以优化编程,而STL若运用不当,可能还会将低效率。当然在目前的这种系列的PLC上,效率对于我们来说已是次要的,我们更关心的是编程结构。就像在PC机上,舍弃了汇编语言,而主要采用C/C++等语言。总体来说,SCL适合于编写标准功能块,由于在维护中,它和STL一样,不象 Lad一样利于维护,因此这些标准功能块都应该有文档说明,以便用户了解其功能。STL源文件由文本组成,使用关键字在源文件中设定块结构、声明变量表和程序网络段,为将其编译成块,必须按一定规则编写其结构及语句。
当使用LAD(梯形图)/FBD(功能图)编程时,系统会自动添加严格的语法结构。而STL并不自动添加完整的语法结构(数据类型匹配,系统堆栈处理等)。应此LAD/FBD格式的程序可以转换为STL格式,而STL格式的程序并不一定可以转换为LAD/FBD。
SCL可以编译成STL。如果想再把STL*转换成LAD,难度很大,或者说不可能。把STL程序按功能组拆成逐个网络,然后或许大部分可以转换成LAD,但是无法保持程序的完整性,零零散散无法阅读。
做 PCS7项目,如果不学会SCL语言,做项目难度比较大,单纯使用CFC和SFC编程,由于工艺控制的复杂性和多样性,CFC图表会有大量的块,程序可读性不高,技术保密不了;用SCL编程可以把工艺联锁、工艺核心控制程序和工艺数据处理包装成一个FB块,CFC程序就简单多了。 PCS7是DCS系统,模拟量很多,而且程序一般都比较大。这种大型的程序通常都用语言工具来编写,例如SCL,CFC和SFC。他们编译以后生成STL,但是没有注释,阅读难度会非常大,一年都未必看的明白。工业控制软件发展到现在,大型程序通常都是用语言来编写,如SCL,CFC和SFC这样工作量会小很多很多。所以建议大家直接阅读学习SCL语言编写的程序。
对于STL、LAD、SCL等语言之间进行转换的问题,的确有些STL变成LAD是转不过来的。反过来行。LAD可以直接转SCL,但反过来不一定行,需要严格的按一定的格式写才能转回来,因为SCL是结构化编程语言,比LAD复杂。
南平西门子代理商
故障的分类
1.外部设备故障
外部设备就是与实际过程直接的各种开关、传感器、执行机构、负载等。这部分设备发生故障,直接影响系统的控制功能。
2.系统故障
这是影响系统运行的全局性故障。系统故障可分为固定性故障和偶然性故障。
故障发生后,可重新启动使系统恢复正常,则可认为是偶然性故障。
重新启动不能恢复而需要更换硬件或软件,系统才能恢复正常,则可认为是固定故障。
3.硬件故障
这类故障主要指系统中的模板(特别是I/O模板)损坏而造成的故障。这类故障一般比较明显,影响局部。
4.软件故障
软件本身所包含的错误,主要是软件设计考虑不周,在执行中一旦条件满足就会引发。在实际工程应用中,由于软件工作复杂、工作量大,因此软件错误几乎难以避免。
对于可编程控制器组成的控制系统而言,绝大部分故障属于上述四类故障。根据这一故障分类,可以帮助分析故障发生的部位和产生的原因。
可编程控制器的自诊断测试
可编程序控制器具有*的自诊断测试功能,在系统发生故障时要充分利用这一功能。在进行自诊断测试时,都要使用诊断调试工具,也就是编程器。
利用系统功能进行诊断测试
利用可编程控制器本身所具有的各种功能,自行编制软件、采取一定措施、结合具体分析确定故障原因。
用户通过程序可以编辑组织块,来告诉CPU当出现故障时应如何处理,
如果相应的故障组织块OB没有编程,当出现该故障时,CPU转到“STOP"状态。
系统故障率曲线
1.早期故障期
2.随机故障期
3.耗损故障期
可编程控制器系统的故障分布
系统故障:整个控制系统失效的总故障。
外部故障:系统与实际过程相连的传感器、检测开关、执行机构和负载等部分的故障。
内部故障:可编程控制器本身的故障。
只有10%的故障发生在可编程控制器中。90%的故障发生在I/O模板中,
要提高系统的可靠性,在系统设计中要注意外部设备的选择,在可编程序控制器中我们要提高I/O模板的维修能力,缩短平均维修时间。
关键词: PLC
线性化编程;分部编程以及结构化编程(工业搅拌系统)。
被搅拌的对象要求如下:
1.当成分A(B)泵工作时要求:1)成分A(B)的进料阀已开,出料阀已开;2)搅拌桶未满,搅拌的出料阀关闭;3)泵的驱动电机*,没有紧急停止动作。
2.拌电机工作时的条件:1)搅拌桶未空,搅拌桶的出料阀关闭;2)搅拌马达*,紧急停止没有动作。
3.开排放阀的条件:搅拌马达停止,紧急停止没有动作。
系统中的液位开关让操作者了解搅拌桶内的液位情况,并且提供输送泵和搅拌电机之间的连锁关系。
一、线性化编程
线性化编程就是将用户程序连续放置在一个指令块内,即一个简单的程序块内包含系统的所有指令。线性化编程不带分支,通常是OB1程序按顺序执行每一条指令,软件管理的功能相对简单。
二、分部编程
分部式编程是把一项控制任务分成若干个独立的块,每个块用于控制一套设备或一系列工作的逻辑指令,而这些块的运行靠组织块OB内指令来调用。
三、结构化编程
结构化程序把过程要求的类似或相关的功能进行分类,并试图提供可以用于几个任务的通用解决方案。向指令块提供有关信息(以参数形式),结构化程序能够重复利用这些通用模块。
控制软件分为五个功能块:
FC10功能块用于控制成分A的供料泵;
FC20功能块用于控制成分B的供料泵;
FC30功能块用于控制搅拌马达;
FC40功能块用于控制排料电磁阀;
FC50功能块用于控制操作站上的指示灯。
可以通过系统功能 SFC 55 (WR_PARM), SFC 56 (WR_DPARM) 和 SFC57 (PARM_MOD) 在程序循环执行过程中组态具备过程报*能力的模块。有关如何用系统功能组态相关数据记录的信息,请参见手册 "Programmable Logic Controller S7-300 Module Data" (可编程逻辑控制器 S7-300 模块数据),条
有关不同 SFC 的信息,请参见 S7 在线帮助以及手册 "System Software for S7-300/400 System and Standard Functions" (S7-300/400 系统的系统软件和标准功能)章节7.1,条目号 1214574。
*告:
系统功能 SFC 55, SFC56 和 SFC 57 不能在 PROFINET IO 中应用。
注释:
一些数字量模块 (例如 6ES7321-7BH0X 或 6ES7321-7RD00)) 需要 6个字节的长度来写数据记录 DS1。 在 SFC 55 的 "RECORD" 参数增加了 2 到 6 字节的 ANY 类型数据。附加的两个字节的值必须为零。
冻结,延时,发布过程报*:
过程报*可以通过系统功能 SFC 39 (DIS_IRT IRT_FUNC),,SFC 40 (EN_IRT IRT_FUNC),,SFC 41 (DIS_AIRT IRT_FUNC) 和 SFC 42 (EN_AIRT IRT_FUNC) 来冻结,延时和发布。
在较低保护等级 IP20 的产品中附加的保护措施
通过附加的保护措施,标准产品能够被增强。在标准产品的基础上,SIEMENS 提供SIPLUS 产品线。SIPLUS 产品线可实现:
在-40 ° C /-25 ° C 至 + 60 ° C / + 70 ° C 的扩展温度范围内,冷启动和连续运行的高可靠性
防凝露和结冰。SIPLUS 产品线允许在 * 凝露,凝结和结冰使用
防盐咸气体。SIPLUS 产品线按照 IEC 60068-2-52 标准进行了盐雾测试
防有害气体和化学活性物质。SIPLUS 产品线按照 EN 60721-3-3 3C4 标准进行了实验
注意油和化学剂的防护
现场的自动化类器件常常直接接触油和化学剂。
对于这种设备,根据 DIN EN 60529 标准的 IP 防护等级无效,原因是:
水的蠕变特性多样化,因此不可能保证*的防水。
在产品设备中,化学属性是一个*性的影响。(如外壳,电缆等)
在这种情况下,需要查看是哪种油和洗涤剂应用在哪些自动化设备上。
传动装置广泛采用的是速度控制方式,但也有很多应用是需要转矩控制方式的。
如何使用MM440的转矩控制?
MM440的转矩控制功能是很好的功能,可以应用于一些张力控制的场合,使用时需要注意以下问题:
1. 设定变频器为无速度传感器矢量控制模式。 参看FAQ文档"MM440:无速度传感器矢量控制(SLVC)" (FAQ ID:7494205).
请确认变频器功能设置为SLVC,因为转矩控制运行于SLVC模式。
2. 通过参数P1500设定转矩控制的转矩给定源,参数P2003为基准转矩,代表*对应的转矩值.
例如,P1500=2选择模拟量输入0~10V为转矩给定源。
在上面的例子中,如果转矩为负,例如在放卷应用中,模拟量输入通道2可以连接至P1523,作为转矩下限值设定。需要重新标定模拟量输入通道2以允许负的设定值(例如0到10V对应0到-*转矩)。
频率设定值也需要合适的标定(例如模拟量输入通道1的0到10V对应0到-50Hz)。
提示3:采用正的和负的转矩运行
如果模拟量输入通道2控制的转矩既有正值又有负值,那就有必要用模拟量输入通道2同时调整P1522(例如0到*)和P1523(例如0到-*)。这可以通过PID环中的信号反相来实现。
漳州西门子代理商
6. 建立符号表:
7. ,建立变量表,然后 ,在线查看和修改PLC变量
步:零点标定
空秤时显示毛重为1.85kg (注:默认单位为kg,小数点位数为2)
写入命令代码3,并将触发位置1, 按钮,进行零点标定,将当前重量标为0,如下所示:
第二步:砝码标定
将一个20kg的砝码传感器上,然后写入命令代码4,并将触发位置1
命令执行完毕后,值为2000,即20kg
注:(1)务必保证标定砝码的重量大于所有称重传感器的总额定负荷的5 %,否则命令4无法执行;
(2)标定砝码的重量可以通过SIWATOOL MS进行修改,默认值为20kg
第三步:去皮操作
当前毛重为6.59kg,写入命令代码22,并将触发位置1,如下所示
命令执行完毕后,毛重值变为0kg
注:(1)如果采用预设皮重的,那么可以在VW14中输入预设的皮重值,然后执行命令26;或者在SIWATOOL MSDR15中输入预设皮重,然后执行命令24
第四步:毛重、皮重和净重的显示
- 广安西门子S7-300代理商 2024-05-08
- 宜宾西门子S7-300代理商 2024-05-08
- 南充西门子S7-300代理商 2024-05-08
- 乐山西门子S7-300代理商 2024-05-08
- 内江西门子S7-300代理商 2024-05-08
- 遂宁西门子S7-300代理商 2024-05-08
- 广元西门子S7-300代理商 2024-05-08
- 绵阳西门子S7-300代理商 2024-05-08
- 德阳西门子S7-300代理商 2024-05-08
- 泸州西门子S7-300代理商 2024-05-08