企业信息

    浔之漫智控技术(上海)有限公司

  • 7
  • 公司认证: 营业执照已认证
  • 企业性质:私营企业
    成立时间:2017
  • 公司地址: 上海市 松江区 永丰街道 上海市松江区广富林路4855弄52号3楼
  • 姓名: 聂航
  • 认证: 手机已认证 身份证已认证 微信未绑定

    西门子模块6ES7331-7PF01-0AB0供应

  • 所属行业:电气 工控电器 DCS/PLC系统
  • 发布日期:2023-11-14
  • 阅读量:15
  • 价格:面议
  • 产品规格:模块式
  • 产品数量:1000.00 台
  • 包装说明:全新
  • 发货地址:上海松江永丰  
  • 关键词:西门子代理商,西门子一级代理商

    西门子模块6ES7331-7PF01-0AB0供应详细内容

    西门子模块6ES7331-7PF01-0AB0供应


    面向对象编程是计算机语言的一种的编程模式,在工业控制系统的PLC程序中也可以采用这种设计思想,虽然我们无法实现面向对象的很多特点如“继承”,甚至于它根本就不具备面向对象编程语言的特点,但面向对象编程的基本概念就是类和类的实例(即对象),我们只需要使用这种概念就可以了。在计算机编程中我们需要把一些事物抽象和归纳,才能编写类,而在工业控制系统中,控制对象如:电机,阀等等是很明显的控制类别,不需要抽象就可以很明显的针对它们编写类,以下将会用到西门子的Step7编程语言和的Unity 编程语言来讲解PLC的面向对象编程。

    一、 实现方式

        面向对象编程在Step7中使用功能块(即FB)编程,一谈到此大家就会想到西门子提出的模块化编程,不错,就是这个模块化编程,但西门子提出的模块化、背景数据块、多重背景等名词并不能让大家很明白的理解和使用这种的设计理念。如果大家从面向对象编程的角度去理解,则可以很好的理解这种设计模式。“FB块”被看 成“类”,它可以被看成是对相似的控制对象的代码归纳,如对MM440的变频器可以编写FB块:MtrMM440,这在面向对象编程中称为“类”,当需要 编程控制具体的电机时,可以给它分配一个背景DB块,在面向对象编程中称为类的实现(即创建类的实例:对象),当需要控制多个电机时,可以分配不同的背景 DB到这个FB块,即创建类的多个实例。Step7中有另外一种程序块,即FC块,以FC块为主的编程在西门子中称为结构化编程,这也可以类比于计算机编程中的面向过程编程,即纯粹以函数为主体的编程。

        的Unity软件编程可以好的理解面向对象编程。它的DFB定义中包含输入/输出参数,私有/共有变量,以及代码实现,而这正是计算机的面向对象 编程中“类”的基本元素,而创建类的实例(对象)就像创建普通的“布尔”变量一样,只需在“Function Blocks”中定义这种“类”的变量即可。

        Step7和Unity都可以采用面向过程和面向对象编程方式,这两种编程方式的区别类似于计算机语言中的C语言和C++语言编程的区别。

        以下的讲解将会把Step7中的FB和Unity中的DFB称为“类”,Step7中的FB+背景DB以及Unity中DFB的实例称为“对象”。

    二、 面向对象编程架构

        以上讲解的是实现细节,而编程思想是建立在程序架构上的,不是某个局部使用了面向对象方式,则可以称之为这种编程就是面向对象编程。这种编程需要从以下方面着手:

    1、 电路设计的结构化。

        这里主要以自动线为主介绍,对于单机机床可以是它的简化结构,

        <1>、自动线层:这是层次,它拥有一个主PLC,对属于它下面的各区域控制

        <2>、工程层:拥有立的配送电系统,但没有PLC,只有分布式模块,由自动线控制。顾名思义,它有着较大的立性,可以作为一个单的工程项目设计和制造,当自动线比较小时,可以省略该层次。

        <3>、功能组层:根据工艺划分,将实现某一个工艺功能的区段设备划分为一个功能组,它隶属于工程层,当工程层被省略时,隶属于自动线层。

        面向对象编程并不一定要求使用以上的结构,但好的电气结构利于面向对象编程。

    2、 任何控制对象逻辑都在“类”中实现。

        为了做到这点,分析与控制对象相关的信息,譬如,对于一个电机,有以下相关的信息需要考虑:

        输入信息:

        <1>、电路保护信息,如电机的空气开关,热继电器等。

        <2>、功能保护信息,如运动电机的限位开关,风机的风压开关,油泵的油位开关等。

        <3>、启动和终止条件,以上的电路保护和功能保护都可能导致电机运转终止,复位也可能导致重启动,但这里的条件指的是正常运行的启动和终止条件,譬如顺序控制的流程步。

        <4>、控制模式:如手动和自动等。

        <5>、故障复位:通过复位信息,重新启动。

        输出信息:

        <1>、控制输出,如控制电机的主接触器

        <2>、状态信息输出

        <3>、故障输出

        .........

        状态储存信息:

        用于代码实现的中间变量以及可以被人机界面读出的状态变量等

        把以上信息都整合到一个类中,并尽量使类的参数标准化。不过,同编程语言还是曾在一些差别,针对Step7,应该遵循的标准是:程序结构由FC实现,对象控制由FB实现,如下的一种结构体系(其电气结构来自上面的介绍):这只不过是一个粗略的PLC程序架构体系,好的架构应该完善和科学。

    3、 规划好数据结构

        数据结构的定义相当重要,并尽量统一这些结构,不要顾虑存储空间,当今的PLC内存足以容纳大量的数据。说明一点的是在Step7中尽量不要在类的外部定义数据结构(UDT),而是在类里面定义,虽然会造成不同类中同一结构的重复性定义,但却提高了类的立性。

    三、 优越性

    1、 标准化

        使用这种设计模式,可以将程序设计分为两个阶段,即标准库、基本架构开发,以及实际应用层面设计。其中标准库、基本架构是程序标准化的基础,而应用层设计是针对具体的控制工程编程,这样可以把程序设计人员分成两类,一类是标准开发,由程序员负责,一类是应用设计(其中程序调试规划到应用设计),由 经过标准化培训的一般程序员完成,通过这种分配就可以解决中国工业自动化中面临的尴尬局面。传统的中国控制工业,一个程序设计由一个人完成,这样他还负责现场调试,而拥有丰富经验的程序员一般是三十岁后,这时他已经成家,而显然长期出差对家庭不利,很多的程序员为了家庭考虑不得不改行,要么转到管 理岗位,要么去制造工厂搞设备维护,这是资源的严重流失。毫无疑问,使用以上的设计流程,我么可以让经验丰富的程序员搞标准库和架构的设计,而让刚踏入这个行业的年轻人搞应用设计和调试,这不仅可以让老程序员继续他自己的工作,而不影响家庭,也可以让年轻的程序员参入现场调试,培养自己的经验,提高自己的 收入。

        这可能让某些人士担心,认为年轻的程序员可以参加现场的调试吗?可以肯定的是没有标准化支撑的程序不仅年轻的程序员编不出来,而且现场调试会问题多多。但有了好的标准化后,一年半以上工作经验的程序员就应该能够立面对自动线。

        PLC中的面向对象编程的就是黑匣子编程,针对Step7,我们使用FB去实现每一个对象的控制,控制逻辑、报警处理、信号交换全在FB中,对于应用设计人员,不需要明白里面的代码实现,只需要了解该FB的功能以及如何使用好它就行,这样对于应用程序人员的编程能力要求大大降低,对于编程只不过是遵循架构,拷贝代码,改变输入输出条件而已。

        那么调试呢?很多人认为使用FB编程的烦就是FB的多次调用后,根本无法诊断这些代码,从技术层面上讲确实如此,我们除了从背景DB上查看信息外, 是无法在它多次被调用后监控代码的,但我已说过,这是黑匣子编程,我们不需要诊断这些代码,只需要知道什么样的输入、什么样的参数设定导致什么样的输出就行,代码的逻辑与功能好坏是由标准库开发人员负责的,这就要求标准开发人员需要对他设计的功能块在不同条件下进行不同的测试,保证无误,还需要编写完整、 详尽的功能说明文档,以便于应用设计人员了解这些块,标准架构并不是出来就一劳永逸的,针对千变万化的工程,它是需要不断完善和修订的,这也是一个工程公司可以实实在在进行知识积累的地方。

        程序不仅需要给调试人员使用,而且用户(设备维护人员)也需要了解,如果把完整的标准库文档给用户,可能曾在技术外泄的可能,若不给,对他们诊断设备可能曾在困难,这就需要标准人员制作另外一分文档,即设备维护文档,其知识的透漏以用户能够使用程序进行诊断为限。

    2、 重用性和易管理型

        计算机面向对象编程的优点也有重用性和易管理型,在PLC中也曾在,以Step7为例,需要讨论FC和FB的差异。观察数据类型,FB比FC只不过多一个 “STAT”类型,在使用上FB需要背景DB,FC不需要,但就这个差别导致FB拥有自己立的数据储存空间,而FC的数据储存却借助公有变量(如中 间变量M或者共享DB),有这样一种准则,程序块的立性越强,其重用性也越好,产生数据访问冲突的可能性也少,则易于管理。有些公司生产的PLC, 其程序语言没有类似FB 的这种特性,这时可以采用类似“FC+共享DB”的替代方案解决,但它的立性已经大大降低。

        同样的代码的立性是标准的一个重要环节,很难想象一个与其他功能块之间有着千丝万缕联系的功能块能够被作为标准块在不同工程中有效的重复使用。

        纵观计算机语言的发展,开始的编程都是令人恐怖的,而当今的编程让人们得到很大的解脱,有很多现成的标准类库实用,人们可以把多的编程精力放在实现功能本身上,PLC编程也应该朝这种方向发展,应该让多的人从事应用层面的设计,那些标准功能块不应该重复的被不同人员开发,虽然各大PLC厂开发了大量 的程序库,但工业控制对象各式各样,不**业都应该拥有自己的程序库,而代码的可重用性是评价这些功能块好坏的关键。

    3、 设计思想的性

        在电路图设计中我们早已经在使用针对控制对象的绘图方式,即把基本的主配送电路和PLC配置完成后,我们会针对每一个现场控制对象如:电机、阀、气缸等控制对象绘制电路图,他们的电源来自主配送电路,控制和反馈与PLC建立连接,硬件连锁根据实际情况调整,一个个控制对象就象搭建积木一样有组织的堆积起来,同样的,编程也是针对一个个控制对象使用相应的标准控制块实现就可以,把程序控制细节实现了有效的封装,使程序看起来简洁和易于维护,而好的设计可以把原理图和程序进行很好的关联,甚至于做到一对一的关系,如原理图中的一个控制对象可以在程序中找到相应的FB调用与之对应,真正做到面向控制对象编程。

        可能有人疑虑,PLC编程大部分是步进编程,这一个个标准块都是针对控制对象的,那控制顺序如何实现呢?这就要求编写专门的顺序控制FB块,或者使用Siemens现成的Graph7来实现,这点与一般编程没什么差别。

        结束语:现在的工业控制领域有很多程序高手,他们很精通算法,也有着自己的编程理念,当我和一些人探讨标准化时,他们认识到标准化的性,但认为这样无法体现自己的编程水准,是的,如上所述作为应用层面的程序设计是不要很高的编程水平,但要想想,一个人难道能一辈子去搞现场调试吗?若想体现自己的,可 以从事标准编程。我希望他们能花一点时间研究程序架构,各行各业,真正的是系统架构设计者,编程小技巧只不过是为好的架构锦上添花。

    202104071431097571384.jpg202104071431097446074.jpg202104071431082511284.jpg


    从西门子PCS7V5.1开始,可以使用调试工具“PCS7PIDTuner”来优化控制器。这个工具可以通过测量方式识别控制对象参数并给出优化参数的设置建议。如果用户需要,可以立刻使用这些参数。

    从PCS7V7.1开始,可以优化“PCS7Library”和“PCS7AdvancedProcessLibrary”中的控制器,以及有类似功能的控制器。同样也可以调整步进控制器的马达启动时间。

    要求:

    西门子PCS7的PID整定器软件安装在工程师站上。在正常PCS7的工程师站安装中就可以安装此工具。

    安装相应授权。从PCS7V7.1开始,不再需要额外的PCS7PID整定器授权。

    CFC已经编译并下载到PLC中。

    ES和PLC之间有在线连接。

    对于控制回路需要了解以下几方面:

    1.控制对象的过程特性(是否存在积分环节)

    2.控制回路状态(手动或者自动)

    3.控制器的阶跃工作点

    4.控制器类型(比例积分微分,比例积分或者比例控制器)

    说明:

    以下以连续型的比例积分控制器为例解释如何使用PCS7的PID整定器。

    注意:

    1.请注意优化过程会干扰实际系统运行。如果影响了实际过程运行,在相应优化步骤中会有提示。用户需要知道可能出现的后果。

    2.在优化工作之前,对操作工做合适的人员安排。

    3.优化过程中,密切关注过程曲线记录。

    序号步骤

    1为控制器优化做准备

    优化之前,控制器需要切换到“优化”模式。可以在CFC中或者在上位机OS面板上设置。

    在CFC中将“OPTI_EN”管脚设为“Enable”,这个管脚默认隐藏。如果在OS面板上,在“bbbbbeter”视图中勾选“EnableOptimiz”选项。

    2启动PCS7的PID整定器

    选择控制器功能块,在CFC中通过菜单“Edit>OptimizePIDController...”启动此工具。

    3设置曲线记录参数

    为了使当前显示符合实际,停止曲线记录并点击“Settings...”按钮。

    4启动控制器优化

    点击"StartControllerOptimization"按钮。

    5读取测量值(步骤1到5)

    步骤1到3中,需要定义读取测量值的条件。步骤4中读取测量值,监视曲线记录。这时可以取消过程。

    1.选择过程特性(是否存在积分环节)

    2.选择操作模式(手动/自动),输入实现阶跃的起始点

    3.输入新的设定值,实现阶跃

    4.读取测量值

    5.取消过程

    6控制器的行为及结果(步骤6到8)

    在步骤6和7中选择控制器行为和类型。步骤8中使用优化控制器参数控制回路。可以通过不同阶跃值和控制器参数来测试。

    6.设置控制器行为(适当的扰动/适当的主控动作)

    7.参数结果并选择控制器类型(比例积分微分,比例积分或者比例控制器)

    8.使用优化参数控制回路

    7设置控制器(步骤9)

    后一步,决定是否采用老的还是新的设置。点击“Finish”按钮结束参数优化。

    9.控制器参数选择(老/新)

    8关闭PID整定器

    控制器已经采用新的参数设置。通过“Endandsave”按钮关闭PID整定器。控制器被复位到初始的操作状态。

    提高PLC运行效率,缩短完成相同任务时的执行时间。 

    1、没必要共享信号时,放置在同一网络里的多条指令,会产生额外的进出栈操作(具体可以转成STL来分析),而且如果不是逻辑要求,应避免横向串联,这样至少可以减少一个“与”指令。好处仅仅是放在一个网络里,感觉紧凑一点。 

    2、合理使用立即IO指令(尽量减少使用)节LC处理立即指令的转换时间。 

    3、计算中尽量使用计算结果存储器,而不用过渡存储器。 

    4、可以用“字”的时候尽量避免用“双字”,可以用整数时,尽量避免用实数。 

    5、尽量避免数据类型转换,不得不用时,尽量用AC存放中间变量,减少转换次数。或者编程时先预留出存储空间,比如:用VW2存整数时,VW0空出不用,就可以直接以VD0的形式来进行访问VW2中的数据; 

    6、减少非必要网络扫描,把可以设条件执行的网络(特别是AIW、AQW),归类到子程序中作条件调用(例如定时中断); 

    7、在保证工艺要求前提下,适当减小发生中断的频率;  下面我们就针对3WL 3WT 3VL 3RT产品订货号位置进行一下说明。
        大部分客户都会选定抽出式的3WL和3WT,抽出式断路器有两部分组成,其中一部分是断路器本体,另一部分是导向框架。而为了方便客户单订购备件,这两部分型号是分别印刷在断路器本体以及导向框架上的,我们可以在3WL正面左下方,3WT正面左上方查到断路器本体的型号,在导向框架侧面可以看到导向框架的单订货号。而产品的完整型号分别在3WL的包装箱标签上以及3WT的导向框架右侧可以查到。
        对于3VL来说,在产品侧面也有几个标签,上面有不同的型号,这些型号都是产品各个部件的单订货号,便于客户单购买备件时使用。而产品的完整型号需要在产品正面手柄右下方位置查看,它是由3VL1~8开头的一串以数字和字母组成的订货号,这其中会有“..”或“--”的符号,对应着这些符号会有向上或者向下的头指向对应的数字或者字母,查抄订货号时只需要将这些数字或字母填入到“..”或“--”符号位置中便可以得到一个十六位的完整的产品订货号。
        3RT产品的完整订货号查找也是需要技巧的,不同规格的查询方法如下:
    1.对于S00规格的3RT产品,其完整订货号可以在产品正面右下角位置看到;
    2.对于S0~S3规格的3RT产品,其正面右下角也可以看到一串订货号,但是这串订货号的十位以及十一位是“..”,这两位表示的是线圈电压,具体的型号可到线圈接线端A1,A2中间的标签上查找,将查到的型号(由一个字母和一个数字组成)填入这两位,即能得到一个完整的产品订货号;
    3.对于S6~S12规格的接触器,在其正面中间偏下位置能查到一串订货号,但是这串订货号的九位,十位以及十一位是“…”, 九位表示的是接触器功能,有四种选择,常用的是“A”为标准功能,除此之外还有“N”为PLC控制,“P”为PLC控制+寿命指示,“Q”为ASI控制+寿命指示,十位和十一位和S0~S3接触器一样表示线圈电压,具体的型号可到线圈接线端A1,A2中间的标签上查找,然后将查到的型号填入这三位,即能得到一个完整的产品订货号。




    http://zhangqueena.b2b168.com
    欢迎来到浔之漫智控技术(上海)有限公司网站, 具体地址是上海市松江区永丰街道上海市松江区广富林路4855弄52号3楼,联系人是聂航。 主要经营电气相关产品。 单位注册资金单位注册资金人民币 100 万元以下。 价格战,是很多行业都有过的恶性竞争,不少厂家为了在价格战役中获胜,不惜以牺牲产品质量为代价,而我们公司坚决杜绝价格战,坚持用优质的原材料及先进的技术确保产品质量,确保消费者的合法利益。