日照西门子模块代理商
SIMATIC S7-1200 I/O模块
多达8个信号模块可连接到扩展能力*高的CPU。一块信号板就可连接至所有的 CPU,由此您可以通过向控制器添加数字或模拟量输入/输出信号来量身定做 CPU,而不必改变其体积。
SIMATIC S7-1200 CPU
SIMATIC S7-1200 系统的 CPU 有三种不同型号:CPU 1211C、CPU 1212C 和 CPU1214C。每一种都可以根据您机器的需要进行扩展。任何一种 CPU 的前面都可以增加一块信号板,以扩展数字或模拟 I/O,而不必改变控制器的体积。信号模块可以连接到 CPU 的右侧,以进一步扩展其数字或模拟 I/O 容量。CPU 1212C 可连接 2 个信号模块,CPU 1214C 则可连接 8 个。所有的 SIMATIC S7-1200 CPU 都可以配备*多3 个通讯模块(连接到控制器的左侧)以进行点到点的串行通讯。
所有的 SIMATIC S7-1200 硬件都具有内置夹,能够方便地安装在一个标准的 35 mmDIN 导轨上。这些内置的夹子可以咬合到某个伸出位置,以便在需要进行面板安装时提供安装孔。SIMATIC S7-1200 硬件可进行竖直安装或水平安装。这些集成功能在安装过程中为用户提供了*大的灵活性,同时也使得 SIMATIC S7-1200 成为众多应用场合的理想选择。
所有的 SIMATIC S7-1200 硬件在设计时都力求紧凑,以节省控制面板中的空间。例如,CPU 1214C 的宽度仅有 110 mm,CPU 1212C 和 CPU 1211C 的宽度也仅有90 mm。通讯模块和信号模块的体积也十分小巧,使得这个紧凑的模块化系统大大节省了空间,从而在安装过程中为您提供了*高的效率和灵活性。
快速、简单、灵活的工业通讯 集成 PROFINET 接口
组网简单
与其它控制器和 HMI 设备进行通讯
与第三方设备进行通讯
针对低性能要求的摸块化小控制系统,它多可有7个模块的扩展能力,在模块中集成背板总线,它的网络联接有rs-485通讯接口和profibus两种,可通过编程器pg访问所有模块,带有电源、cpu和i/o的一体化单元设备。其中的扩展模块(em)有以下几种:数字量输入模块(di)——24vdc和120/230vac;数字量输出(do)——24vdc和继电器;模拟量输入模块(ai)——电压、电流、电阻和热电偶;模拟量输出模块——电压和电流。还有一个比较特殊的模块-通讯处理器(cp)——该块的功能是可以把s7-200作为主站连接到as-接口(传感器和执行器接口),通过as-接口的从站可以控制多达248个设备,这样就可以显着的扩展s7-200的输入和输出点数。
2、S7-300
相比较s7-200,s7-300针对的是中小系统,他的模块可以扩展多达32个模块,背板总线也在模块内集成,它的网络连接已比较成熟和流行,有mpi、工业以太网,使通讯和编程变得简单,选择性也比较多,并可借助工具进行组态和设置参数。s7-300的模块稍微多一点,除了信号模块(sm)和200的em模块同类型之外,它还有接口模块(im)——用来进行多层组态,把总线从一层传到另一层;占位模块(dm)——为没有设置参数的信号模块保留一个插槽或为以后安装的接口模块保留一个插槽;功能模块(fm)——执行特殊功能,如计数、定位、闭环控制相当于对cpu功能的一个扩展或补充;通讯处理器(cp)——提供点对点连接、profibus和工业以太网。针对cpu设计模式选择器有:mres=模块复位功能;stop=停止模式,程序不执行;run=程序执行,编程器只读操作;run-p=程序执行,编程器可读写操作。状态指示器:sf,batf=电池故障;dc5v=内部5vdc电压指示;frce=表示至少有一个输入或输出被强制;run=当cpu启动时闪烁,在运行模式下常亮;stop=在停止模式下常亮,有存储器复位请求时慢速闪烁,正在执行复位时快速闪烁。mpi接口用来连接到编程设备或其它设备,dp接口用来直接连接到分布式i/o。
3、S7-400
同300的区别主要在于热启动(wrst)这一部分,其他基本一样。它还有一个外部的电池电源接口,当在线更换电池时可以向ram提供后备电源。编程设备主要有pg720pg740pg760——可以理解成装有编程软件的手提电脑;也可以直接用安装有step7(siemens的编程软件)的pc来完成。而实现通讯(要编程首先要和plc的cpu通讯上)的要求主要在于接口:1.可以在pc上装cp5611卡——上面有mpi口,可用电缆直接连接。2.加个pc适配器,把mpi口转换成rs-232口后接到pc上。3.plc加cp343卡,使它具有以太网口。
4、西门子plc在工程中的应用
每个自动化过程都是由许多较小的部分和子过程组成,所以工程建立的 个任务是分解子任务。而每个子任务定义了自动化系统要完成的硬件和软件要求。其中硬件包括输入/输出数目和类型,对应模块序号和类型,所用机架号,cpu型号和容量,hmi系统,网络系统。软件方面主要是程序结构,自动化过程中的数据管理,组态数据、通讯数据及程序和项目文档。在siemens的s7中,上述工作都在项目管理(simatic管理器),包括必须的硬件(+组态),网络(+组态),所有程序和自动化解决方案的数据管理。f1在线帮助。simatic管理器管理step7项目,编写step7用户程序的工具,有梯形图lad,语句表stl,和功能块图fbd,编程语言。利用编程器或外部编程器可以把用户程序保存到eprom卡上。simatic管理器是一个在线/离线编辑s7对象的图形化用户界面,这些对象包括项目、用户程序、快、硬件站和工具。此管理器的用户界面中工具条和windows差不多,就是多了几个plc菜单——显示访问节点、存储器卡、 、仿真模块。
step7项目结构:项目中,数据以对象形式存储,按树型结构组织。 级:包含项目图表,每个项目代表和项目存储有关的一个数据结构。第二级:站(如s7-300)用于存放硬件组态和模块参数等信息,站是组态硬件的起点。s7程序文件夹是编写程序的起点,所有s7系列的软件均放在s7程序文件夹下,它包含程序块文件和源文件夹。simatic的网络图表(mpi、profibus、工业以太网)第三级和其他级:和上级对象类型有关。编程器可离线/在线查看项目——offline:编程器硬盘上的内容;online:通过网线从plc读到的内容。
中断程序不是由程序调用,而是在中断事件发生时由操作系统调用。因为不能预知系统何时调用中断程序,故它不能改写其他程序使用的存储器,因此应在中断程序中使用局部变量。在中断程序中可以调用一级子程序,累加器和逻辑堆栈在中断程序和被调用的子程序中是公用的。
可采用下列方法创建中断程序:在“编辑”菜单中选择“插入”→“中断”,在程序编辑器视窗中单击鼠标右键,从弹出菜单中选择“插入”→“中断”;用鼠标右键单击指令树上的“程序块”图标,并从弹出菜单中选择“插入”→“中断”。创建成功后程序编辑器将显示新的中断程序,程序编辑器底部出现标有新的中断程序的标签,可以对新的中断程序编程。
中断处理提供对特殊内部事件或外部事件的快速响应。应优化中断程序,执行完某项特定任务后立即返回主程序。应使中断程序尽量短小,以减少中断程序的执行时间,减少对其他处理的延迟,否则可能引起主程序控制的设备操作异常。设计中断程序时应遵循“越短越好”的原则。
中断允许指令ENI(Enable Interrupt)全局性地允许处理所有被连接的中断事件。
禁止中断指令DISI(Disable Interrupt)全局性地禁止处理所有中断事件,允许中断排队等候,但是不允许执行中断程序,直到用全局中断允许指令ENI重新允许中断。
进入RUN模式时自动禁止中断。在RUN模式执行全局中断允许指令后,各中断事件发生时是否会执行中断程序,取决于是否执行了该中断事件的中断连接指令。
使ENO=0的错误条件:SM4.3(运行时间),0004(在中断程序中执行ENI、DISI、HDEF指令)。
中断程序有条件返回指令CRETI(Conditional RETurn from Interrupt)在控制它的逻辑条件满足时从中断程序返回。编程软件自动地为各中断程序添加无条件返回指令。
中断连接指令ATCH(Attach Interrupt)用来建立中断事件(EVENT)和处理此事件的中断程序(INT)之间的联系。中断事件由中断事件号指定(见表1),中断程序由中断程序号指定。为某个中断事件指定中断程序后,该中断事件被自动地允许。
表1 中断事件描述
中断号 | 中断描述 | 优先级分组 | 按组排列 的优先级 |
8 | 通信口0:字符接收 | 通信(高) | 0 |
9 | 通信口0:发送完成 | ||
23 | 通信口0:报文接收完成 | ||
24 | 通信口1:报文接收完成 | 1 | |
25 | 通信口1:字符接收 | ||
26 | 通信口1:发送完成 | ||
19 | PTO0脉冲输出完成 | 数字量(中等) www.diangon.com | |
20 | PTO1脉冲输出完成 | ||
0 | I0.0的上升沿 | 2 | |
2 | I0.1的上升沿 | 3 | |
4 | I0.2的上升沿 | 4 | |
6 | I0.3的上升沿 | 5 | |
1 | I0.0的下降沿 | 6 | |
3 | I0.1的下降沿 | 7 | |
5 | I0.2的下降沿 | 8 | |
7 | I0.3的下降沿 | 9 | |
12 | HSC0CV=PV(当前值=设定值) | 10 | |
27 | HSC0方向改变 | 11 | |
28 | HSC0外部复位 | 12 | |
13 | HSC1CV=PV(当前值=设定值) | 13 | |
14 | HSC1方向改变 | 14 | |
15 | HSC1外部复位 | 15 | |
16 | HSC2CV=PV(当前值=设定值) | 16 | |
17 | HSC2方向改变 | 17 | |
18 | HSC2外部复位 | 18 | |
32 | HSC3CV=PV(当前值=设定值) | 19 | |
29 | HSC4CV=PV(当前值=设定值) | 20 | |
30 | HSC4方向改变 | 21 | |
31 | HSC4外部复位 | 22 | |
33 | HSC5CV=PV(当前值=设定值) | 23 | |
10 | 定时中断0 | 定时(低) | |
11 | 定时中断1 | ||
21 | 定时器T32的CT=PT | ||
22 | 定时器T96的CT=PT |
使ATCH指令的ENO=0的错误条件:SM4.3(运行时间),0002(HSC输入赋值冲突)。
中断分离指令DTCH(Detach Interrupt)用来断开中断事件(EVENT)与中断程序(INT)之间的联系,从而禁止单个中断事件。
在启动中断程序之前,应在中断事件和该事件发生时希望执行的中断程序之间,用ATCH指令建立联系,使用ATCH指令后,该中断程序在事件发生时被自动启动。
多个中断事件可以调用同一个中断程序,但一个中断事件不能调用多个中断程序。中断被允许且中断事件发生时,将执行为该事件指定的后一个中断程序。
在中断程序中不能使用DISI、ENI、HDEF、LSCR和END指令。
中断按以下固定的优先级顺序执行:通信(高优先级)、I/O中断、定时中断(低优先级)。在上述3个优先级范围内,CPU按照先来先服务的原则处理中断,任何时刻只能执行一个用户中断程序。一旦一个中断程序开始执行,它要一直执行到完成,即使另一程序的优先级较高,也不能中断正在执行的中断程序。正在处理其他中断时发生的中断事件要排队等待处理。3个中断队列及其能保存的大中断个数如表2所示。
表2 中断队列和各队列的大中断数
队 列 | CPU221 | CPU222 | CPU224 | CPU226 |
通信中断队列 | ||||
I/O中断队列 | ||||
定时中断队列 |
如果发生中断过于频繁,使中断产生的速率比可处理的速率快,或中断被DISI指令禁止,则中断队列溢出状态位被置1。只应在中断程序中使用这些位,因为当队列变空或返回主程序时这些位被复位。
可编程序控制器的串行通信口可由用户程序控制,通信口的这种操作模式称为自由端口模式。在该模式下,接收信息完成、发送信息完成和接收一个字符均可产生中断事件,利用接收和发送中断可简化程序对通信的控制。
I/O中断包括上升沿中断、下降沿中断、高速计数器(HSC)中断和脉冲列输出(PTO)中断。CPU可用输入点I0.0~I0.3的上升沿或下降沿产生中断。高速计数器中断允许响应HSC的计数当前值等于设定值、计数方向改变(相应于轴转动的方向改变)和计数器外部复位等中断事件。高速计数器可实时响应高速事件,而可编程序控制器的扫描工作方式不能快速响应这些高速事件。完成指定脉冲数输出时也可以产生中断,脉冲列输出可用于步进电机等。
【例】 在I0.0的上升沿通过中断使Q0.0立即置位,在I0.1的下降沿通过中断使Q0.0立即复位。
//主程序OB1
LD SM0.1
ATCH INT_0,0 //I0.0上升沿时执行0号中断程序
ATCH INT_1,3 //I0.1下降沿时执行1号中断程序
ENI// //允许全局中断
//中断程序0(INT_0)
LD SM0.0
SI Q0.0,1 //使Q0.0立即置位
//中断程序1(INT_1)
RI Q0.0,1 //使Q0.0立即复位
可用定时中断来执行一个周期性的操作,以1 ms为增量,周期的时间可取1~255 ms。定时中断0和中断1的时间间隔分别写入特殊存储器字节SMB34和SMB35。每当定时器的定时时间到时,执行相应的定时中断程序,例如可以用定时中断来采集模拟量和执行PID程序。如果定时中断事件已被连接到一个定时中断程序,为了改变定时中断的时间间隔,首先必须修改SMB34或SMB35的值然后重新把中断程序连接到定时中断事件上。重新连接时,定时中断功能清除前一次连接的定时值,并用新的定时值重新开始定时。
定时中断一旦被允许,中断就会周期性地不断产生,每当定时时间到时,就会执行被连接的中断程序。如果退出RUN状态或定时中断被分离,则定时中断被禁止。如果执行了全局中断禁止指令,则定时中断事件仍会连续出现,每个定时中断事件都会进入中断队列,直到中断队列满。
定时器T32/T96中断允许及时地响应一个给定的时间间隔,这些中断只支持1 ms分辨率的通电延时定时器(TON)和断电延时定时器(TOF)即T32和T96。一旦中断允许,当定时器的当前值等于设定值时,在CPU的1 ms定时刷新中,将执行被连接的中断程序。
【例】 定时中断的定时时间长为255 ms,用定时中断1实现周期为2s的高精度定时。
为了实现周期为2s的高精度周期性操作的定时,可以将定时中断的定时时间间隔设为250 ms,在定时中断1的中断程序中,将VB0加1,然后用比较指令判断VB0是否等于8。若相等(中断了8次,对应的时间间隔为2 s),在中断程序中执行每2s一次的操作,例如使QB0加1。语句表程序如下:
MOVB 0,VB0 //将中断次数计数器清零
MOVB 250,SMB34 //设定时中断0的中断时间间隔为250 ms
ATCH INT_0,10 //指定产生定时中断0时执行0号中断程序
ENI //允许全局中断
//中断程序0(INT_0),每隔250 ms执行一次
INCB VB10 //中断次数计数器加1
LDB= 8,VB10 //如果中断了8次(2 s)
MOVB 0,VB10 //将中断次数计数器清零
INCB QBO //每2s将QB0加1