华 男,现任施耐德电气(中国)投资有限公司工业自动化部产品推广经理。
3 配置编辑器
3.1 硬件配置
要创建一个基于Atrium,Premium,M340或者Quantum平台的自动化项目,第一步就是选择相应的处理器,以便能够对机架和电源进行缺省定义。
配置编辑器支持直接的,图形化的配置、修改和扩展功能:
● 机架,电源;

● 处理器上的PCMCIA内存或者通信卡(Atrium/Premium) ;
● 离散量输入/输出,模拟量输入/输出或者特殊应用程序模块;
● 其他。
用户可以使用以下两个选项:
(1) 从目录表中选择模块对象,并将其拖到一个空的槽架内;
(2) 从环境文件中把一个新的模块插入到一个空闲的插槽内。
3.2 输入/输出以及特殊应用模块的配置

在Atrium,Premium,M340或者Quantum机架的配置页面,会显示出相关模块的参数页面,用户可以通过该页面来选择应用程序的操作特性和参数,如:
● 离散量输入/输出的过滤值;
● 模拟量输入/输出的电压或者电流范围;
● 计数器阈值;
● 位置控制的轴轨迹;
● 称量过程中的传感器校正;
● 通信传输速度;
● 预先对模块相关变量进行变量设定;
● 其他。
3.3 通信网络的配置

可以使用结构视图中的“通信”文档夹来对连接到PLC站的网络列表进行定义。接下来,可以通过以下操作对实现网络正常运行所需的所有参数进行定义:
● 创建一个逻辑网络并对相关联接进行说明;
● 对定义的逻辑网络进行各种相关服务配置。在配置过程中,一旦创建一个逻辑网络,必须有一个网络模块与其关联。以太网TCP/IP,ModbusPlus以及Fipway网络模块均以此种方式进行配置。
3.4 配置检查

在配置过程中,任何时候都可以访问以下信息:
● 针对PLC配置中每一个机架电源所有可用电流和功耗信息;
● 已配置的输入/输出的数量 (Atrium,M340或者Premium平台)。
4 软件结构
通过Unity Pro设置的Atrium,M340,Premium和Quantum平台支持两种应用程序结构:
● 单任务:这是相对简单的缺省结构,在这种结构中,只执行主任务;
● 多任务:该结构更适合用来处理高性能实时事件,它包含一个主任务,一个快速任务,多个辅助任务,以及多个具有高优先级的事件触发任务。
主任务,快速任务和辅助任务由程序段和子程序构成。程序段和子程序可以使用以下任何一种语言来编写:结构化文本 (ST),指令表 (IL),梯形图 (LD) 或者功能块图(FBD) (1)。事件触发任务也使用同样的语言来编写。而顺序功能图 (SFC) 或者Grafcet语言则专门用于编写主任务程序段。
下表分别列出了Atrium,Premium和Quantum处理器类型可能拥有的程序任务。

注1:Premium TSX P57 1●4M 处理器不支持功能块图 (FBD)语言 4.1 模块化、灵活、方便的编程方式
一个用于Atrium,Premium,M340或者Quantum平台的Unity Pro程序任务,包括若干个部件,通称为程序段和子程序。对于要执行的进程来说,每一个程序段都可以用最合适的语言来编写。
这种将程序划分为若干程序段的做法,使得开发者能够编写结构化的程序,并建造和添加所需的程序模块。 子程序可以从它们所属任务的任何程序段,或者子程序进行调用。

以上的语言与IEC的61131-3标准兼容:可以对Unity Pro软件进行相关配置(工具/项目设置/语言扩展菜单),以确保生成的应用程序与IEC的61131-3标准兼容。另外,只要用户只使用标准的指令库,用户就可以在任何Atrium,M340,Premium或者Quantum平台上对已有的程序进行复用。
4.2 单任务内存结构
有两种可用的程序执行方式:
● 正常的循环执行。这是缺省的选项;
● 周期性执行。这种执行方式和它的执行周期,可在编程过程中,由用户在任务参数 (主任务)设置时,进行设定。
4.3 正常执行 (循环的)
在每一次扫描结束以后,PLC系统都会进行一个新的扫描过程。每一次扫描的执行时间,都会通过一个监视时 钟来进行监控,这一时间由用户来进行定义 (最大值为1500毫秒)。
如果发生超时,就会产生错误,从而导致:
● 扫描过程立即中止 (STOP) ;
● 在处理器的前面板上显示错误状态 ;
● 用于主机架电源的警报继电器,设置为0。
4.4 周期执行
在每一个周期结束的时候,才会执行一次新的扫描操作。扫描的执行时间必须小于定义的周期时间 (周期时间最大值为255毫秒)。如果发生了超时,状态会被存储到一个系统位 (%S19)中去,这个系统位可以由用户复位为0 (通过程序或者终端)。扫描时间会通过一个监视软件来进行监控,这个执行时间可以由用户进行定义 (最大值为1500毫秒)。如果发生了超时,就会显示出执行错误 (参看正常执行) 。扫描的执行时间 (上次扫描,最长扫描和最短扫描)会存储在系统字%SW 30/31/32中。
4.5 多任务软件结构
Atrium,Premium,M340和Quantum平台所支持的多任务结构中包括:
● 1个主任务 (分成用ST,IL,LD,FBD和SFC语言编写的若干个程序段) ;
● 1个快速任务(分成若干个程序段) ;
● 0到4个辅助任务 (分成若干个程序段) 注2;
● 1个或者更多的事件触发任务 (每个任务只含有一个程序区段) 。
这些任务是彼此独立的,它们以并行的方式执行,并由PLC处理器来安排在执行过程中的优先级。在一个事件任务,或者快速任务发生之后:
● 如果有较低优先级的任务正在执行,那么这些任务会被挂起;
● 系统执行事件任务或者快速任务;
● 在具有较高优先级的任务执行完毕以后,系统会恢复执行早些时候被中断的任务。
该结构优化了处理能力。因为每一个任务都可以单独编写和调试,所以使用者可以通过它来对应用程序进行

优化,简化设计和调试过程。
注2:顶级Premium TSX P575●4M和Quantum 140 CPU 651 ●0/67160处理器的专用任务。
4.6 主任务
这个任务可以是周期的,也可以是循环的,它用来执行主程序。该任务以系统的方式启动。该任务所包含的所有程序段和子程序,它们可以用梯形图 (LD),功能块图 (FBD),结构化文本 (ST)或者指令表 (IL)语言来编写。主任务的一些程序区段可以用顺序功能表 (SFC) 或者Grafcet语言来编写。
4.7 快速任务
该任务与主任务相比,具有较高的优先级。它被设定为周期性的任务,以便系统能够有时间执行具有较低优先级的任务。在需要监视和控制离散输入按周期快速变化的情况下,应该使用该任务。在执行快速任务的过程中,主任务(优先级较低)被挂起。该任务的处理过程应该尽量地短,以避免影响主任务的处理。该任务可包含多个程序段和子程序,可以使用指令表,结构化文本,梯形图或者功能块图(ST,IL,LD或者FBD)语言来编写。
4.8 辅助任务
这些任务在顶级的Premium TSX P57 5● 4M和Quantum140CPU651●0/67160处理器中使用。它们用来处理那些速度比较慢的控制过程,比如说温度测量,过程控制,人机界面,应用程序诊断等。周期性的辅助任务优先级最低,它们只有在高优先级的任务(主任务和快速任务)扫描完毕以后才能执行。这些任务可包含多个程序段和子程序,都可以用指令表,结构化文本,梯形图或者功能块图(ST,IL,LD或者FBD)语言来编写。 4.9 事件触发任务
与以上所描述的各种任务不同,这些事件触发任务与周期没有关系。它们的执行过程是通过以下途径以同步的方式来触发的:
● 来自特殊模块的事件 (比如说计数器阈值发生溢出,离散输入的状态发生变化) ;
● 来自事件定时器的事件。
这些任务优先于其他所有任务,它们适合用来处理那些相对于事件到达之后,需要极短反应时间的操作。Atrium,Premium,M340或者Quantum平台具有3个优先级级别 (按照由高到低的顺序,分别是模块事件EVT0,模块事件EVT i以及定时器事件Timer i). 这些任务的程序段,可以用指令表,结构化文本,梯形图或者功能块图表 (ST,IL,LD或者FBD)语言来编写。
4.10 为任务分配输入/输出通道
每一个主任务,快速任务和事件触发任务都会对分配给它的输入信号进行读操作 (在扫描开始的时候)和写操作 (在扫描结束的时候)。在缺省的设置下,输入信号会分配给主任务。
对于Quantum平台来说,远程输入/输出 (RIO)只分配给主任务 (这些分配过程可以以站号为单位来进行,也可以基于任务的程序段来进行),与此同时,分布式输入/输出 (DIO)则完全分配给主任务本身 (不会分配给它的程序段)。

对于事件触发任务来说,可以将与事件相关的输入/输出信道注3分配给该事件。在这种情况下,再开始对输入进行处理,以及最后对输出进行处理的过程中,就会发生内部的数据交换。
注3:这些通道分配是以Quantum输入/输出模块以及Atrium/Premium/M340输入/输出信道为单位而进行的。
|