西门子6ES7315-7TJ10-0AB0型号介绍
西门子6ES7315-7TJ10-0AB0型号介绍
S7-200设置了中断功能,用于实时控制、高速处理、通信和网络等复杂和特殊的控制任务。中断就是终止当前正在运行的程序,去执行为立即响应的信号而编制的中断服务程序,执行完毕再返回原先被终止的程序并继续运行。
中断源即发出中断请求的事件,又叫中断事件。为了便于识别,系统给每个中断源都分配一个编号,称为中断事件号。S7-200系列可编程控制器zui多有34个中断源,分为三大类:通信中断、输入/输出中断和时基中断。)通信中断
在自由口通信模式下,用户可通过编程来设置波特率、奇偶校验和通信协议等参数。用户通过编程控制通讯端口的事件为通信中断。
(2)I/O中断
I/O中断包括外部输入上升/下降沿中断、高速计数器中断和高速脉冲输出中断。S7-200用输入(I0.0、I0.1、I0.2或I0.3)上升/下降沿产生中断。这些输入点用于捕获在发生时必须立即处理的事件。高速计数器中断指对高速计数器运行时产生的事件实时响应,包括当前值等于预设值时产生的中断,计数方向的改变时产生的中断或计数器外部复位产生的中断。脉冲输出中断是指预定数目脉冲输出完成而产生的中断。
)时基中断
时基中断包括定时中断和定时器T32/T96中断。定时中断用于支持一个周期性的活动。周期时间从1毫秒至255毫秒,时基是1毫秒。使用定时中断0,必须在SMB34中写入周期时间;使用定时中断1,必须在SMB35中写入周期时间。将中断程序连接在定时中断事件上,若定时中断被允许,则计时开始,每当达到定时时间值,执行中断程序。定时中断可以用来对模拟量输入进行采样或定期执行PID回路。定时器T32/T96中断指允许对定时间间隔产生中断。这类中断只能用时基为1ms的定时器T32/T96构成。当中断被启用后,当前值等于预置值时,在S7-200执行的正常1毫秒定时器更新的过程中,执行连接的中断程序。 S7-200有PTO、PWM两台高速脉冲发生器。 PTO脉冲串功能可输出个数、周期的方波脉冲(占空比50%);PWM功能可输出脉宽变化的脉冲信号,用户可以脉冲的周期和脉冲的宽度。若一台发生器给数字输出点Q0.0,另一台发生器则给数字输出点Q0.1。当PTO、PWM发生器控制输出时,将禁止输出点Q0.0、Q0.1的正常使用;当不使用PTO、PWM高速脉冲发生器时,输出点Q0.0、Q0.1恢复正常的使用,即由输出映像寄存器决定其输出状态。
由表1可知,CPU 22X 系列具有不同的技术性能,使用于不同要求的控制系统:
CPU 221:用户程序和数据存储容量较小,有一定的高速计数处理能力,适合用于点数少的控制系统。
CPU222:和CPU221相比,它可以进行一定模拟量的控制,可以连接2个扩展模块,应用更为广泛。
CPU224:和前两者相比,存储容量扩大了一倍,有内置时钟,它有更强的模拟量和高速计数的处理能力,使用很普遍。
CPU 226:和CPU224相比,增加了通信口的数量,通信能力大大增强,可用于点数较多、要求较高的小型或中型控制系统。
CPU226XM:它是西门子公司推出的一款增强型主机,主要在用户程序和数据存储容量上进行了扩展,其他指标和CPU 226相同
中断指令有4条,包括开、关中断指令,中断连接、分离指令。指令格式如表1所示。
1. 开、关中断指令
开中断(ENI)指令全局性允许所有中断事件。关中断(DISI)指令全局性禁止所有中断事件,中断事件的每次出现均被排队等候,直至使用全局开中断指令重新启用中断。
PLC转换到RUN(运行)模式时,中断开始时被禁用,可以通过执行开中断指令,允许所有中断事件。执行关中断指令会禁止处理中断,但是现用中断事件将继续排队等候。
逻辑运算是对无符号数按位进行与、或、异或和取反等操作。操作数的长度有B、W、DW。指令格式如表1所示。
1. 逻辑与(WAND)指令:将输入IN1,IN2按位相与,得到的逻辑运算结果,放入OUT的存储单元。
2. 逻辑或(WOR)指令:将输入IN1,IN2按位相或,得到的逻辑运算结果,放入OUT的存储单元。
3. 逻辑异或(OR)指令:将输入IN1,IN2按位相异或,得到的逻辑运算结果,放入OUT的存储单元。
4. 取反(INV)指令:将输入IN按位取反,将结果放入OUT的存储单元。
本例说明了利用S7-200的集成“接通延迟"(ON-Delayed)定时器,能够方便地产生断开延迟(OFF-Delay)、脉冲(Pulse)及扩展脉冲(Extended Pulse)。
为了在输出端Q0.0得到断开延迟信号,Q0.0端的输出信号的置位时问要比I0.0端的输入信号长一段定时器的时间。
为了在输出端Q0.1得到脉冲信号,I0.1端的输入信号被置位之后,信号会在输出端Q0.1停留一段定时器的时间;但是,如果输入I0.1被复位,那么输出端Q0.1脉冲信号也将被复位。
为了在输出端Q0.2得到扩展脉冲信号,一旦输入I0.2己经置位,无论输入I0.2是否复位,那么在预置定时器时问内Q0.2端输出信号将一自处于置位状态。
程序和注释
下列程序分为3部分,每部分都相互独立,用来实现断开延迟(OFF-Delay)、脉冲(Pulse)和扩展脉冲(Extended Pulse)。
一、断开延迟(OFF-Delay)
当接通输入I0.0时,输出Q0.0被置位。如果输入I0.0被复位(下降沿),
T33,运行5秒钟后,定时器T33置位,同时使标志位M0.0和输出Q0.0
则启动定时器复位。
二、脉冲(Pulse)
当接通输入I0.1时,输出Q0.1和标志位M0.1被置位。通过对标志位M0.1置位使定时器T34启动,运行5秒钟后或输入旧.1复位,就立即使输出Q0.1复位。
三、扩展脉冲(Extended Pulse)
当接通输入I0.2时,输出Q0.2和标志位M0.2被置位。通过对标志位M0.2置位,使定时器T35启动,运行5秒钟后,立即使输出Q0.2复位
Siemens编程器S7-200系列用在中小型设备上的自动系统的控制单元,适用于各行各业,各种场合中的检测,监测及控制。
在这里,和大家一起来讨论S7-200几个使用方面的情况。
1.步进,伺服脉冲定位控制。
在设备的控制系统中,有关运动控制是很重要的,下面我们来看一看西门子S7-200系列PLC怎样来实现这 个功能。
首先,确定使用哪个端口来发脉冲,如采用Q0.0发脉冲,则它的控制字为SMB67,脉冲同期为SMW68,脉 冲个数存放在SMD72中,
下面是控制字节的说明:
Q0.0 Q0.1 控制字节说明
SM67.0 SM77.0 PTO/PWM更新周期值 0=不更新,1=更新周期值
SM67.1 SM77.1 PWM更新脉冲宽度值 0=不更新,1=脉冲宽度值
SM67.2 SM77.2 PTO更新脉冲数 0=不更新,1=更新脉冲数
SM67.3 SM77.3 PTO/PWM时间基准选择 0=1微秒值,1=1毫秒值
SM67.4 SM77.4 PWM更新方法 0=异步更新,1=同步更新
SM67.5 SM77.5 PTO操作 0=单段操作,1=多段操作
SM67.6 SM77.6 PTO/PWM模式选择 0=选择PTO,1=选择PWM
SM67.7 SM77.7 PTO/PWM允许 0=禁止PTO/PWM,1=允许
这样根据以上表格,我们得出Q0.0控制字:SMB67为:10000101
采用PTO输出,微妙级周期,发脉冲的周期(也就是频率)与脉冲个数都要重新输入。10000101转化为 16进制 为85,有了控制字以后,我们来写这一段程序根据上面这段程序,我们知道了控制字的使用,同时也知道步进电机的脉冲周期与冲个数的存放位置(对 Q0.0来说是SMW68与SMD72)。当然,VW100与VD102内的数据不同的话,步进电机的转速和转动圈数就不一样。
还有一点需要说明得是:M0.0导通---PLC捕捉到上升沿发动脉冲输出后,想停止的话,只须改变端口脉冲的 控制字,再启动PLS即可高速计数功能。
西门子S7-200系列PLC具有高速计数的功能;举一例子来谈谈高速计数的用途,我们采用普通电机来带动丝杆转动,我们想控制转动距离,怎么来解决这个问题?那么我们可在电机另一头与一编码器联接,电机转一圈,编码器也随之转一圈,同时根据规格发出不同的脉冲数。当然,这些脉冲数的频率比较高,PLC不能用普通的上升沿计数来取得这些脉冲,只能通过高速计数功能了。
启动高速计数功能,也要具有控制字
HSCO HSC1 描述
SM37.0 SM47.0 复位有效电平控制位 0=高电平有效, 1=低电平有效
SM37.1 SM47.1 启动有效电平控制位于 0=高电平有效, 1=低电平有效
SM37.2 SM47.2 正交计数器速率选择 0=4X计数率, 1=1X计数率
SM37.3 SM47.3 计数方向控制位 0=减计数, 1=正计数
SM37.4 SM47.4 向HSC中写入计数方向 0=不更新, 1=更新计数方向
SM37.5 SM47.5 向HSC中写入预置值 0=不更新, 1=更新预置值
SM37.6 SM47.6 向HSC中写入当前值 0=不更新, 1=更新当前值
SM37.7 SM47.7 HSC允许 0=禁止HSC, 1=允许HSC
参照上面的表格,我们选择HSC1高速计数器,控制字为SMB47,现在我们启动高速计数器HSC1,选择为增计数,更新计数方向,重新设置值,更新当前值:这样的话,HSC1的启动控制高为:11111000转化为16进制为 F8,将启动计数器时当前值存放在SMD48中,将预存置放在SMD52中,具体的程序
西门子S7-200系列PLC的PID控制相当的简单,可以通过micro/win软件的一个向导程序,按照提示,一步一步执行您所要求PID控制的属性即可,在这里谈一谈PID这三个参数的具体意义:P为增益项,P越大,响应起就快,在调节流量阀时:设定流量为50%,当目前流量接近50%,刚超过,如果P值很大的话,那么流量阀会马上会关闭,而不会控制在某一区域。这就是增益项太大引起。在调节的过程中应该先将P值调节比较适当了,再去调节I值,它为积分项,是在控制器回路中控制对当前值与设定值相等的偏差范围。D为微分项,主要作用是避免给定值的微分作用而引起的跳变。
在现场的PID参数的调整过程中,针对西门子S7-200型PLC我的建议是在不同的控制阶段,采用不同的PID参数组,具体而言就是当目前距离设定值差距较大时,采用P值较大的一套PID参数,如果当前值快接近设定值范围时,采用P值较小的一套PID参数。
用S7-200 CPU 214的高速计数器HSC累计来自模拟量/频率转换器(A/F的脉冲来计算模拟电压值
本例说明了如何利用CPU 214的高速计数器HSC及频率转换器来计算模拟电压。首先频率转换器将输入电压(0~10V)转换为矩形脉冲信号(0~2000Hz),再将此信号送入CPU214高速记数器的输入端并累计脉冲数。当预置的问隔时问到后,通过累计脉冲数,计算出被测模拟电压值。
主程序 在*个扫描周期调用子程序SBR0
SBR0 高速计数器和定时中断的初始化
INT0 对高速计数器求值的定时中断程序
程序和注释
主程序在*个扫描周期调用初始化程序SBR0,仅在*个扫描周期标志位SM0.1=1由子程序SBR0实现初始化。首先,把高速记数器HSC1的控制字节SMB47置为16进制‘FC',其含义是:正方向计数,可更新预置值(PV),可更新当前值(CV),激活HSC1。然后,用指令‘HDEF’把高速计数器HSC1置成工作模式0}即没有复位或起始输入,也没有外部的方向选择。当前值SMD48复位为0,预置值SMD52置为FFFF (16进制)。定时中断0间隔时间SMB34置为100ms,中断程序0分配给定时中断0(中断事件10),并允许中断。用指令HSC1启动高速计数器。
每100ms调用一次中断程序0,读出高速计数器的数值后将其置零。通过HSC1计数值及变换关系(0~2KHz对应于0~10V)来求被测的模拟电压值。本例中,计数值仅除以2,然后置入输出字节QB0,以便通过LED来显示被测的模拟电压值。显示值与10倍真实电压值相对应。例如,计数值为200除以2是100,那么,被测的模拟电压值就是10.0V。因为计数器100ms内共有200个计数脉冲,这正与2000Hz=>10V相对应。假设计数值为104,则实际电压值应为5.2V。
注意:定时中断时间可在5~255ms的范围内变化,然而,通过设立一个标志,可根据需要来延长高速计数器的求值和复位时间,这样就有更长的扫描间隔,以便提高**度,同时也会带来更长的更新时间。例如,定时中断设为100ms,每调用一次,标志增加1,仅当标志满10时,才对高速计数器求值和复位。也就是说,10V 电压可接收的zui大脉冲为2000,这样,求值**到5/1000V即**度是上例的10倍,但同时速度也减慢了10倍。
在程序中用定时器来控制时间。SIMATIC S7-200系列可编程控制器设置了两种类型的定时器:接通延迟(On-Delay)定时器(TON),保持接通延迟"(Retentive On-Delay)定时器(TONR)。它们都可工作在三种精度下,即1 msec. 10msec和100msec。
本例说明了每种定时器的操作及使用方法,重点在于小同精度下,定时器的操作方法的区别。
S7-200定时器由一个单独的使能输入端(IN)来控制,由于定时器是可使能的,因此,能够保留过去了的时间值。定时器还有一个预置时间值(PT),当前值更新时,它与当前值比较,定时器位(T位)置位/复位(set/reset)就取决于当前值与预置值的比较结果。
若当前值大于或等于预置时问值,定时器位接通(ON);否则,定时器位断开(OFF)。当前值达到zui大值时,计时停。
西门子S7-200可编程控制器PLC使用STEP7-Micro/WIN32编程软件进行编程。STEP7-Micro/WIN32编程软件是基于Windows的应用软件,功能强大,主要用于开发程序,也可用于适时监控用户程序的执行状态。加上汉化后的程序,可在全汉化的界面下进行操作。
1. 安装条件
操作系统:Windows95以上的操作系统。
计算机配置:IBM486以上兼容机,内存8MB以上,VGA显示器,至少50MB以上硬盘空间。
通信电缆:用一条PC/PPI电缆实现可编程控制器与计算机的通信
TEP7-Micro/WIN32编程软件包括Microwin3.1;Microwin3.1的升级版本软件Microwin3.1 SP1;Toolbox(包括Uss协议指令:变频通信用,TP070:触摸屏的组态软件Tp Designer V1.0设计师)工具箱;以及Microwin 3.11 Chinese(Microwin3.11 SP1和Tp Designer的汉化工具)等编程软件。
3. 编程软件的安装
按Microwin3.1→Microwin3.1 SP1→Toolbox→Microwin 3.11 Chinese的顺序进行安装。
首先安装英文版本的编程软件:双击编程软件中的安装程序SETUP.EXE,根据安装提示完成安装。接着,用Microwin 3.11 Chinese软件将编程软件的界面和帮助文件汉化。步骤如下:(1)在光盘目录下,找到“mwin_service_pack_from V3.1 to3.11"软件包,按照安装向导进行操作,把原来的英文版本的编程软件转换为3.11版本。(2)打开“Chinese3.11"目录;双击setup,按安装向导操作,完成汉化补丁的安装。(3)完成安装。
可以采用PC/PPI电缆建立PC机与PLC之间的通信。这是典型的单主机与PC机的连接,不需要其他的硬件设备。如图1所示。PC/PPI电缆的两端分别为RS-232和RS-485接口,RS-232端连接到个人计算机RS-232通信口COM1或COM2接口上,RS-485端接到S7-200 CPU通信口上。PC/PPI电缆中间有通信模块,模块外部设有波特率设置开关,有5种支持PPI协议的波特率可以选择,分别为:1.2K,2.4K,9.6K,19.2K,38.4K。系统的默认值为9.6K b/s。PC/PPI电缆波特率设置开关(DIP开关)的位置应与软件系统设置的通信波特率相*。DIP开关如图2所示,DIP开关上有5个扳键,1、2、3号键用于设置波特率,4号和5号键用于设置通信方式。通信速率的默认值为9600bit/s,如图2所示,1、2、3号键设置为010,未使用调制解调器时,4、5号键均应设置为0。
硬件设置好后,按下面的步骤设置通信参数。
(1)在STEP7-Micro/WIN32运行时单击通信图标,或从“视图(View)"菜单中选择“通信(Communications)",则会出现一个通信对话框。
(2)对话框中双击PC/PPI电缆图标,将出现PC/PG接口的对话框。
(3)单击“属性(Properties)"按钮,将出现接口属性对话框,检查各参数的属性是否正确,初学者可以使用默认的通信参数,在PC/PPI性能设置的窗口中按“默认(Default)"按钮,可获得默认的参数。默认站地址为2,波特率为9600b/s。
6. 建立在线连接
在前几步顺利完成后,可以建立与S7-200 CPU的在线,步骤如下:
(1)在STEP7-Micro/WIN32运行时单击通信图标,或从“视图(View)"菜单中选择“通信(Communications)",出现一个通信建立结果对话框,显示是否连接了CPU主机。
(2)双击对话框中的刷新图标,STEP7-Micro/WIN32编程软件将检查所连接的所有S7-200CPU站。在对话框中显示已建立起连接的每个站的CPU图标、CPU型号和站地址。
(3)双击要进行通信的站,在通信建立对话框中,可以显示所选的通信参数。
输出继电器是用来将PLC的输出信号传递给负载,是专设的输出过程映像寄存器。它只能用程序指令驱动。在每次扫描周期的结尾,CPU将输出映像寄存器中的数值复制到物理输出点上,并将采样值写入,以驱动负载。输出继电器一般采用八进制编号,一个端子占用一个点。它有4种寻址方式即可以按位、字节、字或双字来存取输出过程映像寄存器中的数据。
位: Q〔字节地址].[位地址〕如:Q0.2
字节、字或双字: Q[长度][起始字节地址]如:QB2 QW6 QD4
程序和注释
当输入点l0.0相连的开机开关(0N)动作后,电动机绕组接成星形工作方式起动。如果没有起动器故障信号,电动机绕组将在5秒钟后切换到三角形连接方式。故障信号山与输出点Q0.3相连的信号灯指示。当故障排除后,操作员按与输入点I0.6相连的确认键,即可消除故障信号。起动器反馈信号通过输入点I0.3、I0.4和I0.5引入。
当关机点动开关或电动机电路断路器(分别与输入点I0.1和I0.2连接)动作时,电动机关机。如果开机开关和关机开关同时动作,电动机仍然处于关机状态。
“接通星形起动器"、“起动定时器"和“接通主电源起动器"部分增加了一个条件:只有在*信号(Q0.3)出版时才动作。除此之外,为相关的起动器
设置下述的存储器标志位:星形起动器(Q0.1 ),主电源起动器(Q0.0),以及起动定时器(T37)。
“起动器反馈"部分是新的。从原理上讲,反馈就是将输出信号和表示起动器实际状态的输入信号相比较。
输出信号的状态分别和下述反馈输入信号比较:主电源起动器的状态(I0.3),星形起动器的状态(I0.4),三角形起动器的状态(I0.5)。如果有差异就起动定时器T38,T38的预置时问为2秒。这段延迟时问对应起动器动作的zui长时间。
如果T38溢出后,状态仍小同,故障指示输出点Q0.3被置位。这个故障信号可以用与输
入点I0.6相连的反馈确认键复位
摘要:
本文讲述三菱PLC中构造双稳态按钮的三种方法,并分析了每种方法的工作原理和特点,拓展了编制PLC程序的思路,探讨了如何利用软件实现硬件的功能,以达到节省PLC输入点的目的。
关键词:双稳态按钮,触发器,可编程控制器。
1.引言
在很多设备中经常会遇启动/停止,前进/后退等等的这样操作,操作者通常希望用一个按钮来实现:按一下启动,再按一下停止;如此循环往复。把这样的按钮称为双稳态按钮,即有两种稳定状态;接通和断开都能保持,我们在设计中经常会遇到控制面板的按键位置不够和PLC的输入点数不够等这一问题.如果在PLC程序中把按键做成双稳态的,一个按钮身兼二职.这一问题就可以迎刃面解了,可见PLC程序把按钮做双稳态,在经济上是合算的。
2.成双稳态按钮的三种方法
2.1通过SET和RST指令来实现.
图1 通过SET和RST指令来实现
图1程序中,当第一次按下按钮X0.此时第一条支路因串联的M1为常闭点,而使M0接通条件满足置位 .第二条支路的执行条件不满足,暂不去理会.再看第三条支路,假设持续按着按钮不释放,因支路中串联进X0的常闭点而使接通条件不满足,直到释放按钮X0,因串联的M0已经置位,从而使M1和Y0输出保持为"1".当第二次按下按钮X0时,因为M0的状态为"1",第一条支路条件不满足,第三条支路因X0的按钮下而使M1和Y0输出为"0",M1由"1"变为"0"产生一个下降沿,使M0复位为"0",从而使M1和Y0的"0"状态得以保持,即使释放按钮X0以后,之后对按钮X0的操作,又重复上述过程.可见得到的是一个双稳态按钮.
2.2 利用PLC基本逻辑指令来实现
图2 利用PLC基本逻辑指令来实现
PLC程序是按一定的PLC扫描周期循环往复地的执行程序代码.在每一个PLC扫描周期内,先读入输入内的信号状态,然后执行用户程序,*后刷新输出信号状态.用户程序的执行是按照先后顺序自上往下依次执行的.图2程序中正是充分利用了PLC程序的程序的执行特点.现在分析它的工作过程.按一下按钮,使X0变为"1",在第一个PLC扫描周期内,M0变为"1",M1变为"1".M1等于"1"会使M0变为"0",但M0的状态变化要到下一个PLC扫描周期才会执行,可见M0是宽度为1个PLC扫描周期的脉冲信号.因为M0等于"1".这样会使原来状态为"0"的Y0变为"1"从第二个PLC扫描周期起,不论X0变为"0"或保持为"1",M0都变为"0"并稳定在"0"上,这样Y0通过M0常闭点与Y0常开点串联的支路保持为"1"状态.再按一下按钮,M0又产生宽度为1个PLC扫描周期的脉冲信号,这个脉冲信号使原来状态为"1"的Y0变为'0"并稳定在"0"上.如此每次按一下按钮,Y0就在"0"和"1"之间切换一次,形成双稳态信号.
2.3借助于算术运算指令来实现
图3借助于算术运算指令来实现
数字电路中,如果把输出的"非"端反馈到D触发的"D"输入端.则每来一个时钟冲,D触发器的状态就翻转一次.图3所示的程序借鉴了数字电路中的D触发器的工作原理,按钮X0每按下一次,就相当于给触发器CP端输入一个触发脉冲.相加所得和的*低位状态,就翻转一次,如果Y0取之*低位,就可得到周期性状态,在“0”、“1”之间变化的双稳态信号。 为了避免加法的计算结果溢出,用M0和M3使期复位,就又重新开始累加。
3.结束语
文章开始提到的启动/停止,前进/后退等两种状态,也可以选用具有保持功能的三位选择开关,这是一种硬件实现方案.也可以选用本文所述的软件实现方案.殊途同归.但通过软件的方式,却节省PLC输入点的开销。如果PLC的输入非常紧张,这是一种行之有效的方法,但若是输入点绰绰有余,这样做就有画蛇添足之嫌了。软件方案和硬件方案哪一是**的,那就要看实际情况而定了.如果硬件很贵,那就用软件人来实现这一功能.如果硬件很便宜.那何不充分发挥硬件的功能.PLC输入点的问题正是如此.适合才是**的