西门子供应工控机代理商
PLC是什么意思?相信很多人处于大概知道是什么,但是又无法准确说出的阶段,作为专注于为企业提供数据采集和设备控制解决方案的众诚工业,今天和大家探讨一下。
而众诚工业还能根据用户需求,设计PLC控制程序,为客户提供PLC编程和上位机软件的定制化开发技术服务,满足用户的多种需求,比如,自主研发的洁净空调智能控制系统和通风排风智能控制系统就配置PLC,不仅具有报警和定时控制功能,还兼具可扩展性和兼容性,系统能被第三方系统集成。
以上PLC的基本介绍,相信大家对PLC也有一个初步的了解。PLC的型号、品牌不同,对应着其结构形式、性能、编程方式等等都有所差异,价格也各不相同,在挑选时候,建议先要明确自己的应用需求,比如具体的应用场景,希望实现的运动和控制功能,已经特殊的控制要求,这些将决定了PLC的选型和搭配组合。
简单地说,PLC就是一种小型的计算机,和我们常用的计算机不同的是,PLC是设备之间通过数字信号进行互动,而我们常用的计算机,是人和计算机的互动。
控制是PLC的核心功能,其控制类型主要分为以下几种1、开关量的开环控制。这是PLC*基本的控制功能,它能凭借其强大的逻辑运算能力,取代传统继电接触器的控制系统;
2、数据采集与监控。这是PLC非常必要的功能,否则它将无法完成现场控制;
3、数字量智能控制。PLC具有实现接收和输出高速脉冲的功能,近年来先进的PLC还开发了数字控制模块和新型运动单元模块,让工程师更加轻松地通过PLC实现数字量控制;
4、PLC能通过模拟量采集和调节温度、压力、速度等参数。
正因为PLC功能强大,且具有设计方便、重量体积小、能耗低、改造工作量小、通用性强、维护方便等易学易用的特点,深受工程师的欢迎,因此应用非常广泛,钢铁、石油、化工、纺织、交通、机械制造等等行业都能看到它的身影。
诊断错误中断 OB 包含的启动信息可帮助您确定事件发生原因是错误的出现还是清除所致,
以及确定报告错误的设备和通道。可以在诊断错误中断 OB 中编写指令,以检查这些启动值
并采取适当的措施。
说明
如果没有未决诊断事件,诊断错误 OB 启动信息会将子模块作为一个整体来参考
如果离去事件离开子模块时无未决诊断,启动信息将完全参考子模块 (16#8000),即使事件
源为特定通道也是如此。
表格 5-6 诊断错误中断 OB 的启动信息
输入 数据类型 描述
IOstate WORD 设备的 IO 状态:
• 如果组态正确,则位 0 = 1,如果组态不再正确,则 = 0。
• 如果出现错误(如断线),则位 4 = 1。(如果没有错误,
则位 4 = 0。)
• 如果组态不正确,则位 5 = 1,如果组态再次正确,则 = 0。
• 如果发生了 I/O 访问错误,则位 7 = 1。有关存在访问错误
的 I/O 的硬件标识符,请参见 LADDR。(如果没有错误,
则位 6 = 0。)
LADDR HW_ANY 报告错误的设备或功能单元的硬件标识符 1
Channel UINT 通道号
MultiError BOOL 如果存在多个错误,参数值为 TRUE
1 LADDR 输入包含返回错误的设备或功能单元的硬件标识符。硬件标识符是在设备或网络视图
中插入组件时自动分配的,位于 PLC 变量的系统常量中。还会自动为硬件标识符分配名称。无
法更改 PLC 变量的“系统常量”(System constants) 选项卡中的这些条目。
5.1.3.8 拔出或插入模块 OB
当已组态和非禁用分布式 I/O 模块或子模块(PROFIBUS、PROFINET、AS-i)生成插入或拔出
模块相关事件时,系统将执行“拔出或插入模块”OB拔出或插入模块事件
以下情况将产生拔出或插入模块事件:
• 有人拔出或插入一个已组态的模块
• 扩展机架中实际并没有所组态的模块
• 扩展机架中的不兼容模块与所组态的模块不相符
• 扩展机架中插入了与所组态模块兼容的模块,但组态不允许替换值
• 模块或子模块发生参数化错误
如果尚未对该 OB 进行编程,那么当已组态且未禁用的分布式 I/O 模块以上任意情况时,CPU
都将保持在 RUN 模式。
无论是否已对该 OB 进行编程,当中央机架中的模块以上任意情况时,CPU 都将切换到 STOP
模式。
表格 5-7 拔出或插入模块 OB 的启动信息
输入 数据类型 说明
LADDR HW_IO 硬件标识符
Event_Class Byte 16#38: 模块已插入
16#29: 模块已拔出
Fault_ID Byte 故障标识符
5.1.3.9 机架或站故障 OB
当 CPU 检测到分布式机架或站出现故障或发生通信丢失时,将执行“机架或站故障”OB。
机架或站故障事件
检测到以下任一情况时,CPU 将生成机架或站故障事件:
• DP 主站系统故障或 PROFINET IO 系统故障(进入或离开事件)
• DP 从站系统故障或 IO 设备故障(进入或离开事件)
• PROFINET I 设备的某些子模块发生故障如果尚未对该 OB 进行编程,那么发生以上任意情况时,CPU 将保持在 RUN 模式。
表格 5-8 机架或站故障 OB 的启动信息
输入 数据类型 说明
LADDR HW_IO 硬件标识符
Event_Class Byte 16#38:离开事件
16#39:进入事件
Fault_ID Byte 故障标识符
5.1.3.10 时钟 OB
时钟 OB 根据所组态的时钟时间条件执行。CPU 支持两个时钟 OB。
时钟事件
可将时钟中断事件组态为在某个指定的日期或时间发生一次,或者按照以下周期之一循环发
生:
• 每分钟:每分钟发生中断。
• 每小时:每小时发生中断。
• 每天:在每天的指定时间(小时和分钟)发生中断。
• 每周:在每周指定日期的指定时间(例如,每周二下午 4:30)发生中断。
• 每月:在每月指定日期的指定时间发生中断。日期编号必须介于 1 和 28 之间(包括 1 和
28)。
• 每个月末:在每个月*后一天的指定时间发生中断。
• 每年:在每年的指定日期(月和日)发生中断。不能指定 2 月 29 日。
表格 5-9 时钟事件 OB 的启动信息
输入 数据类型 描述
CaughtUp Bool 已向前设置时间,因此满足 OB 调用
SecondTim
e
Bool 已向后设置时间,因此第二次启动 OB 调用如果 DPV1 或 PNIO 从站触发状态中断,则执行状态 OB。如果 DPV1 或 PNIO 从站的组件(模
块或机架)更改了其工作模式(例如由 RUN 变为 STOP),则可能发生这种情况。
状态事件
有关可触发状态中断的事件的详细信息,请参见 DPV1 或 PNIO 从站的制造商文档。
表格 5-10 状态 OB 的启动信息
输入 数据类型 说明
LADDR HW_IO 硬件标识符
Slot UInt 插槽号
Specifier Word 报警说明符
5.1.3.12 更新 OB
如果 DPV1 或 PNIO 从站触发更新中断,则执行更新 OB。
更新事件
有关可触发更新中断的事件的详细信息,请参见 DPV1 或 PNIO 从站的制造商文档。
表格 5-11 更新 OB 的启动信息
输入 数据类型 说明
LADDR HW_IO 硬件标识符
Slot UInt 插槽号
Specifier Word 报警说明符
5.1.3.13 配置文件 OB
如果 DPV1 或 PNIO 从站触发配置文件特定的中断,则执行配置文件 O有关可触发配置文件中断的事件的详细信息,请参见 DPV1 或 PNIO 从站的制造商文档。
表格 5-12 配置文件 OB 的启动信息
输入 数据类型 说明
LADDR HW_IO 硬件标识符
Slot UInt 插槽号
Specifier Word 报警说明符
5.1.3.14 MC 伺服和 MC 插补器 OB
在创建运动工艺对象并将驱动器接口设置为“模拟驱动器接口”(Analog drive connection) 或
“PROFIDrive”时,STEP 7 会自动创建只读 MC 伺服和 MC 插补器 OB。用户无需编辑任何 OB
属性,也无需直接创建此 OB。CPU 将这些 OB 用于闭环控制。有关更多详细信息,请参见
STEP 7 信息系统。
5.1.**** MC-PreServo
可以对 MC-PreServo OB 进行编程,使其包含程序逻辑:在 MC-Servo OB 执行前直接执行
STEP 7 程序。
MC-PreServo 事件
MC-PreServo OB 使您可读取所组态的应用周期信息(单位为 µs)。
表格 5-13 MC-PreServo OB 的起始信息
输入 数据类型 说明
Initial_Call BOOL TRUE 表示从 STOP 转为 RUN 的过程中首次调用该 OB
PIP_Input BOOL TRUE 表示相关的过程映像输入为*新值。
PIP_Output BOOL TRUE 表示在*后一个周期后,CPU 将相关的过程映像输出适
时传送到输出中。
IO_System USINT 触发中断的分布式 I/O 系统的编号
Event_Count INT n:丢失的循环数
-1:丢失的循环数未知(例如,由于更改了循环输入 数据类型 说明
Synchronous BOOL 预留
CycleTime UDINT 显示为 MC-Servo OB 组态的应用周期,单位为 μs
5.1.3.16 MC-PostServo
可以对 MC-PreServo OB 进行编程,使其包含程序逻辑:在 MC-Servo OB 执行后直接执行
STEP 7 程序。
MC-PostServo 事件
MC-PreServo OB 使您可读取所组态的应用周期信息(单位为 µs)。
表格 5-14 MC-PostServo OB 的起始信息
输入 数据类型 说明
Initial_Call BOOL TRUE 表示从 STOP 转为 RUN 的过程中首次调用该 OB
PIP_Input BOOL TRUE 表示相关的过程映像输入为*新值。
PIP_Output BOOL TRUE 表示在*后一个周期后,CPU 将相关的过程映像输出适
时传送到输出中。
IO_System USINT 触发中断的分布式 I/O 系统的编号
Event_Count INT n:丢失的循环数
-1:丢失的循环数未知(例如,由于更改了循环)
Synchronous BOOL 预留
CycleTime UDINT 显示为 MC-Servo OB 组态的应用周期,单位为 μs
5.1.3.17 事件执行的优先级与排队
事件控制着 CPU 的执行。事件会触发要执行的中断 OB。可以在块的创建期间、设备配置期
间或使用 ATTACH 或 DETACH 指令指定事件的中断 OB。有些事件定期发生,例如,程序循
环或循环事件。而其它事件只发生一次,例如,启动事件和延时事件。还有一些事件则在硬
件触发事件时发生,例如,输入点上的沿事件或高速计数器事件。诊断错误和时间错误等事
件只在出现错误时发生。事件优先级和队列用于确定事件中断 OB 的处理顺序。
CPU 按照优先级顺序处理事件,1 为*低优先级,26 为*高优先级。可在 OB 属性的属性中
为 OB 分配优先级等级。不可中断执行模式
OB (页 72) 按照其触发事件的优先级顺序执行。在 CPU 设备组态的启动属性 (页 149)中,您
可以将 OB 执行组态为可中断或不可中断。请注意,程序循环 OB 始终为可中断,但可将其
它所有 OB 组态为可中断或不可中断。
如果设置了可中断模式,则在执行 OB 并且 OB 执行结束前发生了更高优先级的事件时,将
中断正在运行的 OB,以允许更高优先级的事件 OB 运行。运行更**别的事件直至结束后,
才会继续执行之前中断的 OB。如果执行可中断 OB 时发生多个事件,CPU 将按照优先级顺
序处理这些事件。
如果未设置可中断模式,则无论触发的 OB 在运行期间是否触发了其它任何事件,都将继续
运行直至结束。
考虑以下两种情况,其中中断事件触发循环 OB 和延时 OB。在这两种情况中,延时 OB
(OB 201) 没有过程映像分区分配(页65)并且以优先级 4 执行。循环 OB (OB 200) 分配了 PIP1
过程映像分区并且以优先级 2 执行。下图显示了不可中断执行模式与可中断执行模式下执行
OB 的区别