联系我们

联系人:黄勇(先生)

联系手机:13701633515

固定电话:31660605

企业邮箱:77956468@qq.com

联系我时,请说是在地方电气网上看到的,谢谢!

今日最新资讯
热门资讯
地方电气网资讯
    西门子O.25千瓦变频器6SL3211-OAB12-5UB1
    发布者:黄工  发布时间:2016-04-08 18:40:12  访问次数:52

    西门子O.25千瓦变频器6SL3211-OAB12-5UB1,西门子O.25千瓦变频器6SL3211-OAB12-5UB1

                               {心中有空间,梦想就有可能}

                     {西门子与客户携手,让关键所在,逐一实现}

    联   系   人: 黄勇《黄工》   24小时联系手机:  13701633515
    直线销售 电 话: 021-31660605    在 线 商 务 QQ:  77956468 
    单位:台                                                                                  产品单价:电议

    供货数量:不限                                                                      最小定量:1

    包装说明:齐全                                                                      产品规格:全新原装

    6ES7 291-8GF23-0XA0 MC291,新CPU22x存储器盒,64K
    6ES7 297-1AA23-0XA0 CC292,CPU22x时钟/日期电池盒
    6ES7 291-8BA20-0XA0 BC293,CPU22x电池盒
    6ES7 290-6AA20-0XA0 扩展电缆,I/O扩展,0.8米,CPU22x/EM
    6ES7 901-3CB30-0XA0 编程/通讯电缆,PC/PPI,带光电隔离,5-开关,5m
    6ES7 901-3DB30-0XA0 编程/通讯电缆,PC/PPI,带光电隔离,USB接口,5-开关
    6ES7 292-1AD20-0AA0 CPU22x/EM端子连接器块,7个端子,可拆卸
    6ES7 292-1AE20-0AA0 CPU22x/EM端子连接器块,12个端子,可拆卸
    6ES7 292-1AG20-0AA0 CPU22x/EM连接器块,18个端子,可拆卸
    6AV6 640-0AA00-0AX0 TD400C文本显示器
    6EP1 332-1SH31 专为S7-200 设计电源,24V/3.5A 可并联5个
    6ES7 272-0AA30-0YA0 TD200文本显示器
    6XV1830-0EH10 网络总线
    6ES7972-0BB12-0XA0 网络总线连结器,带编程口,垂直电缆出线
    6ES7972-0BA12-0XA0 网络总线连结器,不带编程口,垂直电缆出线
    6ES7972-0BA41-0XA0 网络总线连结器,不带编程口,35度垂直电缆出线
    6ES7972-0BB41-0XA0 网络总线连结器,带编程口,35度垂直电缆出线
    6ES7901-0BF00-0AA0 PLC跟屏通讯电缆

    PLC程序家族的故事

      1.程序家族有哪些成员?
        PLC的控制程序一般由主程序、子程序和中断程序组成。西门子的S7-300/400将子程序分为功能(Function,或称为函数)和功能块(Function Block)。
        在每一个扫描循环周期,CPU都要调用一次主程序,用户程序必须有一个并且只能有一个主程序。小型控制系统可以只有主程序。
        中断程序用于快速响应中断事件。在中断事件发生时,CPU将停止执行当时正在处理的程序或任务,去执行用户编写的中断程序。执行完中断程序后,继续执行被暂停执行的程序或任务。
        2.哪些情况需要使用子程序?
        当系统规模很大、控制要求复杂时,如果将全部控制任务放在主程序中,主程序将会非常复杂,既难以调试,也难以阅读。使用子程序可以将程序分成容易管理的小块,使程序结构简单清晰,易于调试、查错和维护。
        子程序也可以用于需要多次反复执行相同任务的地方,只需要编写一次子程序,别的程序在需要的时候多次调用它,而无需重写该程序。
        3.怎样调用子程序?
        主程序可以调用子程序,子程序也可以嵌套调用别的子程序。嵌套调用的层数是有限制的,例如S7-200的最大嵌套深度为8级。
        执行完子程序后,返回调用它的程序中的调用指令的下一条指令。
        4.每个扫描周期都会执行子程序吗? 
        子程序的调用可以是有条件的,在被调用期间,每个扫描周期都要执行一次被调用的子程序。调用条件不满足时不会执行子程序中的指令,因此使用子程序可以减少扫描循环时间。
        5.停止调用子程序后,子程序中的线圈处于什么状态?
        停止调用子程序后,不再执行子程序中的指令。子程序中线圈对应的编程元件如果没有受到别的程序的控制,将保持子程序最后一次执行后的状态不变。即使控制这些线圈的触点的状态变化,该线圈对应的元件的状态也不会变化,因为这时根本就没有执行子程序中的指令。
        6.怎样实现子程序的无条件调用?
        有的PLC的子程序调用指令不能直接接到左侧的垂直“电源”线上,需要通过触点电路来控制是否调用子程序,即子程序的调用是有条件的。可以用一直为ON的特殊位元件(例如S7-200的SM0.0或FX系列的M8000)的常开触点来实现子程序的无条件调用。

          不同品牌的PLC的子程序大致可以分为两种,一种子程序没有输入、输出参数和局部变量,另一种则有。
           1.什么是全局变量和局部变量?
            以西门子的S7-200为例,输入I、输出Q、变量存储器V、内部存储器位M、定时器T、计数器C等属于全局变量,可以在符号表中为全局变量定义符号名。
           程序组织单元(Program Organizational Unit)简称为POU,包括主程序、子程序和中断程序。每个POU均有自己的64字节局部变量,局部变量用L(Local)来表示,局部变量只能在它所在的POU中使用。与此相反,全局变量可以在各POU中使用。
           2.局部变量有哪些类型?
           子程序可以使用下列局部变量:
           1) TEMP (临时变量)是暂时保存在局部数据区中的变量。只有在执行该POU时,定义的临时变量才被使用,POU执行完后,不再保存临时变量的数值。主程序和中断程序的局部变量表中只有TEMP变量。
           2) IN(输入参数)由调用它的POU提供的传入子程序的输入参数。
           3) OUT(输出参数)是子程序的执行结果,它被返回给调用它的POU。
           4) IN_OUT(输入_输出参数)的初始值由调用它的POU传送给子程序,并用同一变量将子程序的执行结果返回给调用它的POU。
           主程序和中断程序的局部变量表中只有临时变量TEMP。
           3.子程序的输入、输出参数有什么作用?
           具有输入、输出参数和局部变量的子程序易于实现结构化编程,对于长期生产同类设备或生产线的厂家尤为有用。编程人员为设备的各部件或工艺功能编写了大量的通用的子程序。即使不知道子程序的内部代码,只要知道子程序的功能和输入、输出参数的意义,就可以用它们快速“组装”出满足不同的用户要求的控制程序。就好像可以用数字集成电路芯片组成复杂的数字电路一样。
           如果子程序没有输入、输出参数,这种子程序没有明确的软件接口,使用起来很不方便。
           4.局部变量有什么优点?
           1) 子程序如果没有局部变量,它和调用它的程序之间只能通过全局变量来交换数据,子程序内部也只能使用全局变量。将它移植到别的项目时,需要对各POU使用的全局变量作统一安排,以保证不会出现地址冲突。当程序很复杂,子程序很多时,这种地址分配是很花时间的。
           如果子程序有局部变量,并且在子程序中只使用局部变量,不使用全局变量,因为与其他POU没有地址冲突,不作任何改动,就可以将子程序移植到别的项目中去。
           为了减少移植子程序的工作量,在子程序中应尽量避免使用全局变量和全局符号。
           2) 如果使用局部变量表中的临时变量(TEMP),同一片物理存储器可以在不同的程序中重复使用。

        下面以S7-200为例,介绍子程序的编程和调用的过程。
        1.创建子程序
        生成项目时,自动生成一个子程序。打开程序编辑器,执行“编辑”菜单中的命令“插入”→“子程序”,将自动生成和打开新的子程序。
        2.生成局部变量
        名为“模拟量计算”的子程序如下图所示,在该子程序的局部变量表中,定义了3个输入(IN)参数,一个输出(OUT)参数,和名为“暂存1”的临时(TEMP)变量。局部变量表最左边的一列是自动分配的每个变量在局部存储器(L)中的地址。

     

        3.编写子程序的梯形图
        局部变量表的下面是程序区(见上图),输入参数“转换值”是来自模拟量输入模块的与模拟量成正比的转换值,输出参数“模拟值”是计算出的对应的模拟量(例如压力、温度等)的工程值。子程序中变量名称前的“#”表示该变量是局部变量,它是编程软件自动添加的,输入局部变量时不用输入“#”号。特殊存储器位SM0.0的常开触点总是闭合。
        4.子程序的调用
        可以在主程序、其他子程序或中断程序中调用子程序,调用子程序时将执行子程序中的指令,直至子程序结束,然后返回调用它的程序中该子程序调用指令的下一条指令之处。
        创建子程序后,在上图左边指令树最下面的“调用子程序”文件夹中自动生成刚创建的子程序“模拟量计算”对应的图标。
        在梯形图程序中插入子程序调用指令时,首先打开主程序,显示出需要调用子程序的网络。打开指令树最下面的“调用子程序”文件夹,用鼠标左键按住需要调用的子程序图标,将它“拖”到程序编辑器中需要的位置。放开左键,子程序块便被放置在该位置。

        子程序方框中左边的“转换值”等是在子程序“模拟量计算”的变量声明表中定义的输入参数,右边的“模拟值”是输出参数。它们被称为子程序的形式参数,简称为形参,形参在子程序内部的程序中使用。调用子程序时,需要为每个形参指定实际的参数(简称为实参),例如为形参“转换值”指定的实参为模拟量输入字AIW2(见上图)。
        子程序调用指令中的实参的有效操作数为存储器地址、常量、全局符号和调用指令所在的POU中的局部变量,不能指定被调用子程序中的局部变量。
        CPU调用子程序时,输入参数被复制到子程序的局部存储器,子程序执行完后,从局部存储器复制输出参数到指定的输出参数地址。

    在S7-200PLC中所处理数据有三种,即常数、数据存贮器中的数据和数据对象中的数据。
    1.常数及类型
        在S7-200的指令中可以使用字节、字、双字类型的常数,常数的类型可指定为十进制、
    十六进制(6#7AB4)、二进制(2#10001100)或ASCII字符(‘SIMATIC’)。PLC不支持数据类型的处理和检查,因此在有些指令隐含规定字符类型的条件下,必须注意输入数据的格式。
    2.数据存贮器的寻址
    (1)数据地址的一般格式  数据地址一般由二个部分组成,格式为:Aal.a2。其中:A区域代码(I,Q,M,SM,V),al字节首址,a2位地址(0~7)。例如I10.1表示该数据在I存储区10号地址的第1位。
    (2)数据类型符的使用  在使用以字节、字或双字类型的数据时,除非所用指令已隐含有规定的类型外,一般都应使用数据类型符来指明所取数据的类型。数据类型符共有三个,即B(字节),W(字)和D(双字),它的位置应紧跟在数据区域地址符后面。例如对变量存贮器有VBl00、VW100、VDl00。同一个地址,在使用不同的数据类型后,所取出数据占用的内存量是不同的。
    3.数据对象的寻址
    数据对象的地址基本格式为:An,其中A为该数据对象所在的区域地址。A共有6种:T(定时器),C(计数器),HC(高速计数器),AC(累加器),AIW(模拟量输入),AQW(模拟量输出)。


    1847年10月1日,维尔纳·冯·西门子(Werner von Siemens)在其发明的使用指针是来指出字母顺序而不是摩尔斯电码的电报技术基础上建立了公司。公司随后被称为Telegraphen-Bauanstalt von Siemens & Halske。
    西门子
    西门子
    1848年,公司建造了欧洲第一条远距离电报线,从柏林到法兰克福跨度为500公里。
    1850年,创始人的弟弟,卡尔·威廉·西门子(Carl Wilhelm Siemens)在伦敦设立代表处。
    十九世纪五十年代,公司参与了俄罗斯远距离电报网络的建设工作。
    1855年,创始人的另一个弟弟卡尔·海因里希·冯·西门子(Carl Heinrich von Siemens)在圣彼得堡建立了一个新的分支机构。
    公司不断地成长并开始涉足电气列车和灯泡。1890年,创始人退休,把公司留给了他的弟弟卡尔·海因里希和两个儿子阿诺德·西门子(Arnold von Siemens)以及乔治·威廉·西门子(Georg Wilhelm von Siemens)。

    1897年,西门子和哈尔斯克(Halske)联合成立了公司S&H。
    1919年,S&H和其它两家公司共同成立了欧司朗灯泡公司(Osram Lightbulb Company)。
    1923年,成立了日本分公司。
    二战期间

    在二十世纪二十年代至三十年代之间,S&H开始生产收音机、电视机和电子显微镜。在第二次世界大战之前,S&H被卷入了德国的秘密战备。
    在1937年至1938年间(日军对南京城进行南京大屠杀),德国西门子公司驻南京办事处经理拉贝以自己时任德国国家社会主义工人党(纳粹党)南京分部副部长的特殊身份,在中国南京建立南京战时安全区,并出任安全区委员会主席,保护了约25万中国平民,被称为“活菩萨”、“中国的辛德勒”。
    战后发展

    在二十世纪五十年代,S&H开始生产计算机、半导体设备、洗衣机和心脏起搏器。
    1966年,西门子股份公司(Siemens AG)成立。
    1967年,西门子股份公司和罗伯特·博世有限公司成立主要生产白色家电的合资企业博西家用电器公司(BSH),后成为德国和西欧家电市场的领导者。
    1980年,公司的第一台数字电话交换机下线。
    1988年,西门子和通用电气收购英国防务和技术公司Plessey。因为Plessey公司的持有人分裂,因此西门子接收了其航空电子、雷达和交通控制部分,并更名为Siemens Plessey。


    S7-1200和S7-1500支持哪些错误处理OB

    OB按优先级大小执行,如果所发生事件的优先级高于当前执行的OB ,则中断此  OB  的执行。优先级相同的事件,将按发生的时间顺序进行处理。
    与S7-300/400比较,S7-1200/1500的错误处理有了较大的变化,本文主要介绍S7-1200/1500所支持的错误处理组织块以及CPU对这些错误的响应。 

    1 S7-1200/1500的错误处理组织块

    1.1 S7-1200的错误处理组织块

       
     
     
    图1-1
     
    S7-1200不再支持同步错误中断组织块OB121,OB122 。
     

    1.2 S7-1500的错误处理组织块

     
     
    图1-2
     
    S7-1200与S7-1500支持的错误处理组织块的块号与S7-300/400保持一致,不同的是S7-1500除时间错误中断组织块OB80的优先级22不能改变外,其它的错误处理组织块的优先级都可以修改。如诊断中断OB82:
     
    图1-3
     
    除了可以修改错误中断OB的优先级,S7-1500的事件中断(如硬件中断)的优先级也可以修改,这样用户通过修改优先级可避免重要的中断请求被其它中断请求延迟或中断。
     

    2 CPU对会引起错误中断的响应

    CPU对错误处理组织块的响应表:
     错误处理OB 故障类别 ‘到达事件‘
    触发
    ‘离去事件‘
    触发
     OB没有装载CPU停机
    S7-1200 S7-1500 S7-300/400
     
     OB80
    超出最大循环时间*  
    异步
     
     
    时间错误** 否*** 否***
    OB82 异步 否*** 否***
    OB83 异步 - 否***
    OB86 异步 - 否***
    OB121 同步 -
    OB122 同步 - 否***
    表2-1
    注:
    -:   不支持。
    *:  超出最大循环时间请求OB80时而下载OB80并不会使CPU停机,但如果一个周期内超时两倍的循环监控时间 S7-1200/1500/300/400都会停机。
    **:  由时间事件(如循环中断,延时中断,时间中断)触发的时间错误。
    ***:CPU不会停机,但会在诊断缓冲区产生诊断记录。
     

    3 GET_ERROR,GET_ERR_ID对PLC错误处理的影响

    GET_ERROR和GET_ERR_ID是“获取本地错误信息”指令,S7-1200/1500可通过编程用来查询程序块内出现的错误,这种程序执行中发生的错误就是所说的‘同步‘错误。

     图3-1
    “获取本地错误信息”指令支持块内进行本地错误处理。将“获取本地错误信息”插入块
    的程序代码中时,如果发生错误,则将忽略所有预定义的系统响应。
    GET_ERROR指令可以读到详细的错误信息,GET_ERR_ID只读到其中的错误编号。
    具体用法可参考软件在线帮助或参考STEP7 Professional V12的手册
    因为GET_ERROR和GET_ERR_ID对PLC的同步错误处理的影响相同,下面只对GET_ERROR指令进行说明。

    3.1 GET_ERROR对S7-1200同步错误处理的影响

    因为S7-1200不支持OB121,OB122,在发生‘同步‘错误时,只在CPU的诊断缓冲区产生错误记录:同时ERR LED闪烁
    举例:IO访问错误
    程序中访问了外设地址ID1000:P,对S7-1200来说,ID1000是默认分配给高速计数通道HSC1,但是在实际的组态中没有使能HSC1,那么就不存在这个外设。

     图3-2
    S7-1200每执行一次这条指令,在诊断缓冲区产生一条错误记录,同时ERR LED闪烁,直到 ”Tag_1”复位。

     图3-3
    在发生错误指令的下面执行GET_ERROR:
     

     图3-4
    错误仍然存在,但CPU不报错,诊断缓冲区也不会产生任何相关错误记录。
     

    3.2 GET_ERROR对S7-1500同步错误处理的影响

    与S7-1200比较,因为S7-1500支持两个同步错误处理组织块OB121,OB122,GET_ERROR对S7-1500的同步错误处理的影响还要考虑对OB121,OB122的影响。
    本文的表2-1说明了S7-1500没有执行GET_ERROR的情况下CPU的响应,下面对同步错误发生时执行GET_ERROR后CPU的响应。
    S7-1500在发生两种同步错误时在有无下载对应错误处理组织块(程序错误:OB121,IO访问错误:O122)的响应是不同的,但在发生这两种错误的程序块中执行GET_ERROR后,S7-1500将忽略所有预定义的对这个程序块中出现的错误的系统响应,因此会产生以下结果:
    n         CPU ERR LED不会闪烁
    n         诊断缓冲区不会产生错误记录
    n         不再触发OB121和OB122,发生程序错误时即使不下载OB121 CPU也不会停机

来源:上海赞国
免责声明:地方电气网转载作品均注明出处,本网未注明出处和转载的,是出于传递更多信息之目的,并不意味 着赞同其观点或证实其内容的真实性。如转载作品侵犯作者署名权,或有其他诸如版权、肖像权、知识产权等方面的伤害,并非本网故意为之,在接到相关权利人通知后将立即加以更正。联系电话:0571-87774297。
0571-87774297