西门子销售工业计算机经销商
西门子销售工业计算机经销商
PLC是什么意思?相信很多人处于大概知道是什么,但是又无法准确说出的阶段,作为专注于为企业提供数据采集和设备控制解决方案的众诚工业,今天和大家探讨一下。
而众诚工业还能根据用户需求,设计PLC控制程序,为客户提供PLC编程和上位机软件的定制化开发技术服务,满足用户的多种需求,比如,自主研发的洁净空调智能控制系统和通风排风智能控制系统就配置PLC,不仅具有报警和定时控制功能,还兼具可扩展性和兼容性,系统能被第三方系统集成。
以上PLC的基本介绍,相信大家对PLC也有一个初步的了解。PLC的型号、品牌不同,对应着其结构形式、性能、编程方式等等都有所差异,价格也各不相同,在挑选时候,建议先要明确自己的应用需求,比如具体的应用场景,希望实现的运动和控制功能,已经特殊的控制要求,这些将决定了PLC的选型和搭配组合。
简单地说,PLC就是一种小型的计算机,和我们常用的计算机不同的是,PLC是设备之间通过数字信号进行互动,而我们常用的计算机,是人和计算机的互动。
控制是PLC的核心功能,其控制类型主要分为以下几种1、开关量的开环控制。这是PLC*基本的控制功能,它能凭借其强大的逻辑运算能力,取代传统继电接触器的控制系统;
2、数据采集与监控。这是PLC非常必要的功能,否则它将无法完成现场控制;
3、数字量智能控制。PLC具有实现接收和输出高速脉冲的功能,近年来先进的PLC还开发了数字控制模块和新型运动单元模块,让工程师更加轻松地通过PLC实现数字量控制;
4、PLC能通过模拟量采集和调节温度、压力、速度等参数。
正因为PLC功能强大,且具有设计方便、重量体积小、能耗低、改造工作量小、通用性强、维护方便等易学易用的特点,深受工程师的欢迎,因此应用非常广泛,钢铁、石油、化工、纺织、交通、机械制造等等行业都能看到它的身影。
参数 CONDITIONS 数据类型结构的第 1 部分(开始条件) 表格 13-106 START 条件的 CONDITIONS 结构 参数和类型 数据类型 说明 STARTCOND IN UInt 指定开始条件(默认值:1) • 01H - 开始字符 • 02H - 任意字符 • 04H - 线路中断 • 08H - 线路空闲 • 10H - 序列 1 • 20H - 序列 2 • 40H - 序列 3 • 80H - 序列 4 IDLETIME IN UInt 线路空闲超时所需的位时间数。(默认值:40)。仅与线路空 闲条件一起使用。0 到 65535 STARTCHAR IN Byte 用于开始字符条件的开始字符。(默认值:B#16#2) SEQ[1].CTL IN Byte 针对每个字符执行的序列 1 忽略/比较控制:(默认值: B#16#0) 它们是为开始序列中各字符启用的位。 • 01H - 字符 1 • 02H - 字符 2 • 04H - 字符 3 • 08H - 字符 4 • 10H - 字符 5 禁用与某个字符关联的位意味着该序列位置中的任意字符均符 合条件。 SEQ[1].STR IN Char[5] 序列 1 开始字符(5 个字符)。默认值:0 SEQ[2].CTL IN Byte 针对每个字符执行的序列 2 忽略/比较控制。(默认值: B#16#0) SEQ[2].STR IN Char[5] 序列 2 开始字符(5 个字符)。默认值:0 SEQ[3].CTL IN Byte 针对每个字符执行的序列 3 忽略/比较控制。默认值:B#16#0 SEQ[3].STR IN Char[5] 序列 3 开始字符(5 个字符)。默认值:0参数和类型 数据类型 说明 SEQ[4].CTL IN Byte 针对每个字符执行的序列 4 忽略/比较控制。默认值:B#16#0 SEQ[4].STR IN Char[5] 序列 4 开始字符(5 个字符),默认值:0 示例 请注意以下所接收的十六进制编码消息:“68 10 aa 68 bb 10 aa 16”以及下表中列出的已组 态开始序列。在成功接收到第一个 68H 字符时,开始评估开始序列。在成功接收到第四个 字符(第二个 68H)时,开始条件 1 得到满足。只要满足了开始条件,就会开始评估结束 条件。 开始序列处理会因各种奇偶校验、成帧或字符间时间错误而终止。由于不再满足开始条件, 因而这些错误将导致不会有接收消息。 表格 13-107 开始条件 开始条件 第一个字符 第一个字符 +1 第一个字符 +2 第一个字符 +3 第一个字符 +4 1 68H xx xx 68H xx 2 10H aaH xx xx xx 3 dcH aaH xx xx xx 4 e5H xx xx xx xx RCV_PTP 指令的结束条件 消息结束由指定的结束条件确定。消息结束由第一次出现的一个或多个已组态结束条件来确 定。主题“组态接收参数 (页 957)”中“消息结束条件”部分介绍了可以在 RCV_CFG 指令中 组态的结束条件。 可以在设备配置的通信接口的属性中组态结束条件,或者通过 RCV_CFG 指令组态结束条件。 只要 CPU 从 STOP 模式切换到 RUN 模式,接收参数(开始条件和结束条件)就将恢复为设 备配置设置。如果 STEP 7 用户程序执行 RCV_CFG,则这些设置将更改为 RCV_CFG 的条件*大消息长度:仅当选择*大长度结束条件时使 用。1 到 1024 个字节 N IN UInt 0 长度域在消息中的字节位置。仅与 N + LEN + M 结 束条件一起使用。1 到 1022 个字节 LENGTHSIZE IN UInt 0 长度字段的大小(1、2 或 4 个字节)。仅与 N + LEN + M 结束条件一起使用。 LENGTHM IN UInt 0 指定跟在长度域后、不包含在长度域值内的字符 数。该参数仅与 N + LEN + M 结束条件一起使用。0 到 255 个字节 RCVTIME IN UInt 200 指定接收第一个字符所需的等待时间。如果在指定 时间内没有成功接收到字符,接收操作将被终止且 包含错误。该参数仅与响应时间条件一起使用。(0 到 65535 个位时间,*多 8 秒) 此参数不是消息结束条件,因为在接收到第一个响 应字符时评估即终止。由于在预期有响应时却接收 不到响应,因此仅就其能够终止接收方操作而言, 它又是一个结束条件。必须选择一个单独的结束条 件。 MSGTIME IN UInt 200 指定在接收到第一个字符后完成接收整条消息所需 的等待时间。只有选择了消息超时条件时,才会使 用该参数。(0 到 65535 毫秒) CHARGAP IN UInt 12 指定字符间的位时间数。如果字符间的位时间数超 出指定值,则结束条件得到满足。该参数仅与字符 间隙条件一起使用。(0 到 65535 个位时间,*多 8 秒)说明 SEQ.CTL IN Byte B#16#0 针对每个字符执行的序列 1 忽略/比较控制: 它们是为结束序列中各字符启用的位。字符 1 是位 0,字符 2 是位 1,依此类推,字符 5 是位 4。禁用 与某个字符关联的位意味着该序列位置中的任意字 符均符合条件。 SEQ.STR IN Char[5] 0 序列 1 开始字符(5 个字符) 表格 13-109 条件代码 STATUS (W#16#....) 说明 80C0 所选开始条件非法 80C1 所选结束条件非法;未选择结束条件 80C2 启用了接收中断,但不允许此操作。 80C3 启用了*大长度结束条件,*大长度是 0 或大于 1024。 80C4 启用了计算长度,但 N >= 1023。 80C5 启用了计算长度,但长度不是 1、2 或 4。 80C6 启用了计算长度,但 M 值大于 255。 80C7 启用了计算长度,但计算长度大于 1024。 80C8 启用了响应超时,但响应超时为零。 80C9 启用了字符间隙超时,但该字符间隙超时为零。 80CA 启用了线路空闲超时,但该线路空闲超时为零。 80CB 启用了结束序列,但所有字符均“不相关”。 80CC 启用了开始序列(4 个中的任何一个),但所有字符均“不相关”说明 "SEND_PTP_DB"( REQ:=_bool_in_, PORT:=_uint_in_, BUFFER:=_variant_in_, LENGTH:=_uint_in_, PTRCL:=_bool_in_, DONE=>_bool_out_, ERROR=>_bool_out_, STATUS=>_word_out_); SEND_PTP 用于启动数据传输,并将分配的缓冲 区传送到通信接口。在 CM 或 CB 块以指定波特 率发送数据的同时,CPU 程序会继续执行。仅 一个发送操作可以在某一给定时间处于未决状 态。如果在 CM 或 CB 已经开始传送消息时执行 第二个 SEND_PTP,CM 或 CB 将返回错误。 1 STEP 7 会在插入指令时自动创建 DB。 表格 13-111 参数的数据类型 参数和类型 数据类型 说明 REQ IN Bool 在该传送使能输入的上升沿激活所请求的传送。这会启动将缓冲区数 据传送到点对点通信接口。(默认值:False) PORT IN PORT 安装并组态 CM 或 CB 通信设备之后,端口标识符将出现在 PORT 功能 框连接的参数助手下拉列表中。分配的 CM 或 CB 端口值为设备配置属性 “硬件标识符”。端口符号名称在 PLC 变量表的“系统常量”(System constants) 选项卡中分配。(默认值:0) BUFFER IN Variant 该参数指向传送缓冲区的起始位置。(默认值:0) 注:不支持布尔数据或布尔数组。 LENGTH 1 IN UInt 传输的帧长度(字节)(默认值:0) 传输复杂结构时,始终使用长度 0。 PTRCL IN Bool 保留供以后使用 DONE OUT Bool 上一请求已完成且没有出错后,保持为 TRUE 一个扫描周期时间 ERROR OUT Bool 上一请求已完成但出现错误后,保持为 TRUE 一个扫描周期时间 STATUS OUT Word 执行条件代码(默认值:0) 1 可选参数:单击 LAD/FBD 框底部的箭头,展开框并包含此参数。 传送操作进行期间,DONE 和 ERROR 输出均为 FALSE。传送操作完成后,DONE 或 ERROR 输 出将被设置为 TRUE 以显示传送操作的状态。当 DONE 或 ERROR 为 TRUE 时该输入为 TRUE 并且有消息时,会将消息从 CM 或 CB 传送到 BUFFER。 EN_R 为 FALSE 时,将检查 CM 或 CB 是否收到消息并更新 NDR、ERROR 和 STATUS 输出,但不会将消息传送到 BUFFER。(默认值:0) PORT IN PORT 安装并组态 CM 或 CB 通信设备之后,端口标识符将出现在 PORT 功能 框连接的参数助手下拉列表中。分配的 CM 或 CB 端口值为设备配置属性 “硬件标识符”。端口符号名称在 PLC 变量表的“系统常量”(System constants) 选项卡中分配。(默认值:0) BUFFER IN Variant 该参数指向接收缓冲区的起始位置。该缓冲区应该足够大,可以接收 *大长度消息。 不支持布尔数据或布尔数组。(默认值:0) NDR OUT Bool 新数据就绪且操作无错完成后,保持为 TRUE 一个执行周期时间。 ERROR OUT Bool 操作已完成但出现错误后,保持为 TRUE 一个执行周期时间。 STATUS OUT Word 执行条件代码(默认值:0) LENGTH OUT UInt 返回消息的长度(字节)(默认值:0)0) 注意,EN_R 输入与 RCV_PTP 指令的消息缓存区之间的以下关系输入 EN_R 控制着是否将接收到的消息复制到 BUFFER。 当 EN_R 输入为 TRUE 并且有消息时,CPU 将消息从 CM 或 CB 传送到 BUFFER 并更新 NDR、 ERROR、STATUS,和 LENGTH 输出。 当 EN_R 为 FALSE 时,CPU 将检查 CM 或 CB 是否有消息并更新 NDR、ERROR,和 STATUS 输出, 但不会将消息传送到 BUFFER。(注意,EN_R 的默认值为 FALSE。) 建议将 EN_R 设置为 TRUE 并通过 EN 输入控制 RCV_PTP 指令的执行。 NDR 或 ERROR 为 TRUE 时,STATUS 值有效。STATUS 值提供 CM 或 CB 中的接收操作终止的 原因。它通常是正值,表示接收操作成功且接收过程正常终止。如果 STATUS 值为负数(十 六进制值的*高有效位置位),则表示接收操作因错误条件终止,例如,奇偶校验、组帧或 超限错误。 每个 PtP 通信接口*多可缓冲 1024 字节。这可以是一个大消息或几个较小的消息。如果 CM 或 CB 中存在多个消息,则 RCV_PTP 指令将返回*早的可用消息。随后执行 RCV_PTP 指令将 返回下一个*早的可用消息。 表格 13-115 条件代码 STATUS (W#16#...) 说明 0000 没有提供缓冲区 0094 因接收到*大字符长度,消息被终止 0095 因消息超时,消息被终止 0096 消息因字符间超时而终止 0097 消息因响应超时而终止 0098 因已满足“N+LEN+M”长度条件,消息被终止 0099 因已满足结束序列,消息被终止 80E0 因接收缓冲区已满,消息被终止 80E1 因出现奇偶校验错误,消息被终止 80E2 因组帧错误,消息被终止 80E3 因出现超限错误,消息被终止 80E4 因计算长度超出缓冲区大小,消息被终止描述 REQ IN Bool 在该使能输入的上升沿激活接收方重置(默认值:False) PORT IN PORT 安装并组态 CM 或 CB 通信设备之后,端口标识符将出现在 PORT 功能 框连接的参数助手下拉列表中。分配的 CM 或 CB 端口值为设备配置属性 “硬件标识符”。端口符号名称在 PLC 变量表的“系统常量”(System constants) 选项卡中分配。(默认值:0) DONE OUT Bool 在一个扫描周期内为 TRUE 时,表示上一个请求已完成且没有错误。 ERROR OUT Bool 为 TRUE 时,表示上一个请求已完成但有错误。此外,该输出为 TRUE 时,STATUS 输出还会包含相关错误代码。 STATUS OUT Word 错误代码(默认值:0) 有关通信状态代码,请参见点对点指令的公共参数 (页 969)。 说明 您可能希望使用 RCV_RST 指令以确保在出现通信错误或更改波特率等通信参数后清除消息 缓冲区。执行 RCV_RST 会导致模块清除所有内部消息缓冲区。清除消息缓冲区后,可确保 程序执行后续接收指令时返回的是新消息,而不是 RCV_RST 调用之前的消息在该输入的上升沿获取 RS232 信号状态值(默认值:False) PORT IN PORT 安装并组态 CM 或 CB 通信设备之后,端口标识符将出现在 PORT 功能 框连接的参数助手下拉列表中。分配的 CM 或 CB 端口值为设备配置属性 “硬件标识符”。端口符号名称在 PLC 变量表的“系统常量”(System constants) 选项卡中分配。 NDR OUT Bool 新数据就绪且操作无错误地完成时,在一个扫描周期内为 TRUE ERROR OUT Bool 操作已完成但出现错误后,保持为 TRUE 一个扫描周期时间 STATUS OUT Word 执行条件代码(默认值:0) DTR OUT Bool 数据终端就绪,模块就绪(输出)。默认值:False DSR OUT Bool 数据设备就绪,通信伙伴就绪(输入)。默认值:False RTS OUT Bool 请求发送,模块已做好发送准备(输出)。默认值:False CTS OUT Bool 允许发送,通信伙伴可以接收数据(输入)。默认值:False DCD OUT Bool 数据载波检测,接收信号电平(始终为 False,不支持)