西门子供应软件经销商

   2023-12-15 250

西门子供应软件经销商

PLC是什么意思?相信很多人处于大概知道是什么,但是又无法准确说出的阶段,作为专注于为企业提供数据采集和设备控制解决方案的众诚工业,今天和大家探讨一下。

而众诚工业还能根据用户需求,设计PLC控制程序,为客户提供PLC编程和上位机软件的定制化开发技术服务,满足用户的多种需求,比如,自主研发的洁净空调智能控制系统和通风排风智能控制系统就配置PLC,不仅具有报警和定时控制功能,还兼具可扩展性和兼容性,系统能被第三方系统集成。


以上PLC的基本介绍,相信大家对PLC也有一个初步的了解。PLC的型号、品牌不同,对应着其结构形式、性能、编程方式等等都有所差异,价格也各不相同,在挑选时候,建议先要明确自己的应用需求,比如具体的应用场景,希望实现的运动和控制功能,已经特殊的控制要求,这些将决定了PLC的选型和搭配组合。

简单地说,PLC就是一种小型的计算机,和我们常用的计算机不同的是,PLC是设备之间通过数字信号进行互动,而我们常用的计算机,是人和计算机的互动。


控制是PLC的核心功能,其控制类型主要分为以下几种1、开关量的开环控制。这是PLC*基本的控制功能,它能凭借其强大的逻辑运算能力,取代传统继电接触器的控制系统;


2、数据采集与监控。这是PLC非常必要的功能,否则它将无法完成现场控制;


3、数字量智能控制。PLC具有实现接收和输出高速脉冲的功能,近年来先进的PLC还开发了数字控制模块和新型运动单元模块,让工程师更加轻松地通过PLC实现数字量控制;


4、PLC能通过模拟量采集和调节温度、压力、速度等参数。


正因为PLC功能强大,且具有设计方便、重量体积小、能耗低、改造工作量小、通用性强、维护方便等易学易用的特点,深受工程师的欢迎,因此应用非常广泛,钢铁、石油、化工、纺织、交通、机械制造等等行业都能看到它的身影。

ATTR_DB(读取数据块属性) 表格 9-224 ATTR_DB 指令 LAD/FBD SCL 描述 ret_val := ATTR_DB( REQ:=_bool_in_, DB_NUMBER:=_uint_in_, DB_LENGTH=>_udint_out_, ATTRIB=>_byte_out_); 可使用指令“ATTR_DB”获取有关 CPU 的工作 存储器中某个数据块 (DB) 的信息。该指令可 决定所选 DB 的 ATTRIB 参数中的属性集。 对于优化访问类型的数据块和仅位于装载存 储器中的数据块,其长度无法读取。此时, 参数 DB_LENGH 的值为“0”。 请勿将 ATTR_DB 应用于具有优化访问且激活 了预留存储空间的数据块。 请勿通过“ATTR_DB”指令读取运动控制的数据 块。因此,将输出错误代码 80B2。 参数 下表列出了“ATTR_DB”指令的参数: 参数 声明 数据类型 存储区 描述 REQ Input BOOL I、Q、M、D、L 或 常量 REQ = 1:块属性读取请求 DB_NUMB ER Input DB_ANY I、Q、M、D、L 或 常量 要测试的 DB 的编号 RET_VAL Output INT I、Q、M、D、L 错误信息 DB_LENGT H Output UDINT I、Q、M、D、L • 所选数据块中包含的数据字节数。 • “0”表示优化访问的数据块和仅位于装载存储器 中的数据块描述 ATTRIB Output BYTE I、Q、M、D、L DB 属性: • 第 0* 位 = 0:未设置属性“仅存储在装载内存 中”(only store in load memory)。 • 第 0 位* = 1:已设置属性“仅存储在装载内存 中”(only store in load memory)。 • 位 1 = 0:未设置属性“在设备中写保护数据 块”(Data block write-protected in the device)。 • 位 1 = 1:已设置属性“在设备中写保护数据 块”(Data block write-protected in the device)。 如果第 0 位 = 1,则第 2 位不受影响,并且值为 1。 • 位 2 = 0:保持性 - 如果至少一个值设置为保持 性,则数据块将被视为保持性。 • 位 2 = 1:非保持性 - 整个 DB 都不是保持性。 • 位 3 * = 0:该 DB 在装载存储器(第 0 位 = 1) 或工作存储器(第 0 位 = 0)中。 • 位 3 * = 1:装载存储器和工作存储器中均会生 成该 DB * 将在指令“CREATE_DB(创建数据块) (页 527)”的参数中说明位 0 和位 3 之间的关系。 有关有效数据类型的更多信息,请参见“数据类型 (页 103)”。 参数 RET_VAL 错误代码* (W#16#...) 说明 0000 未发生错误。 80A1 输入参数 DB_NUMBER 中有错误:所选的实际参数 • 等于“0” • 大于所用 CPU 允许的*大 DB 编号。 80B1 CPU 上不存在具有指定编号的 DB。 80B2 无法使用“ATTR_DB”指令读取运动控制工艺对象的数据块。 常见错误信 息 另请参见“扩展指令的常见错误代码 (页 545)” * 在程序编辑器中,错误代码可显示为整数或十六进制值。截图20230509171717.png说明 ret_val := DELETE_DB( REQ := _bool_in_, DB_NUMBER := _uint_in_, BUSY => _bool_out_); “DELETE_DB”指令用于删除通过调用 “CREATE_DB (页527)”指令由用户程序创建的 数据块 (DB)。 如果数据块不是通过“CREATE_DB”创建的, DELETE_DB 将通过参数 RET_VAL 返回错误代 码 W#16#80B5。 DELETE_DB 调用不会立即删除选定的数据 块,而是在执行循环 OB 后的循环控制点处删 除。 功能描述 “DELETE_DB”指令将异步执行。即,可通过多次调用执行这一指令。在 REQ = 1 时调用该指 令,将开始中断传送。 输出参数 BUSY 和输出参数 RET_VAL 的第 2 个和第 3 个字节用于显示作业状态。 当输出参数 BUSY 的值为 FALSE 时,数据块的删除即完成。 参数 下表列出了“DELETE_DB”指令的参数: 参数 声明 数据类型 存储区 说明 REQ Input BOOL I、Q、M、D、L 或常量 REQ =1:请求删除在参数 DB_NUMBER 中指 定编号的 DB DB_NUMBER Input UINT I、Q、M、D、L 或常量 要删除的 DB 的 编号 RET_VAL Output INT I、Q、M、D、L 错误信息(请参见“RET_VAL 参数”) BUSY Output BOOL I、Q、M、D、L BUSY= 1:该过程尚未完成。 有关有效数据类型的更多信息,请参见“数据类型 (页 103)”未发生错误。 7000 首次调用时,REQ = 0:未激活数据传送;BUSY 的值为“0”。 7001 首次调用时,REQ = 1:已触发数据传送;BUSY 的值为“1”。 7002 中间调用(与 REQ 无关):已激活数据传送;BUSY 的值为“1”。 80A1 输入参数 DB_NUMBER 中有错误: • 参数的值为“0”。 • 参数值大于所用 CPU 允许的*大 DB 编号。 80B1 CPU 上不存在具有指定编号的 DB。 80B4 无法删除该 DB,原因是 CPU 存储卡受到写保护。 80B5 未使用“CREATE_DB”创建该 DB。 80BB 装载存储器空间不足。 80C3 由于存在临时资源限制,此时不能执行“删除 DB”功能。 常见错误信息 另请参见“扩展指令的常见错误代码 (页 545)” * 在程序编辑器中,错误代码可显示为整数或十六进制值。 9.11 处理地址 9.11.1 GEO2LOG(根据插槽确定硬件标识符) 可使用 GEO2LOG 指令根据插槽信息确定硬件标识符。图片_20230609101825.jpg根据在 HWTYPE 参数处定义的硬件的类型,可通过其它 GEOADDR 参数评估以下信息: • HWTYPE = 1 时(PROFINET IO 系统): – 仅评估 IOSYSTEM。不考虑 GEOADDR 的其它参数。 – 输出 PROFINET IO 系统的硬件标识符。 • HWTYPE = 2 时(PROFINET IO 设备): – 评估 IOSYSTEM 和 STATION。不考虑 GEOADDR 的其它参数。 – 输出 PROFINET IO 设备的硬件标识符。 • HWTYPE = 3 时(机架): – 仅评估 IOSYSTEM 和 STATION。不考虑 GEOADDR 的其它参数。 – 输出机架的硬件标识符。 • HWTYPE = 4 时(模块): – 评估 IOSYSTEM、STATION,以及 SLOT。不考虑 GEOADDR 的 SUBSLOT 参数。 – 输出模块的硬件标识符。 • HWTYPE = 5 时(子模块): – 评估 GEOADDR 的所有参数。 – 输出子模块的硬件标识符。 未评估 GEOADDR 系统数据类型的 AREA 参数。 表格 9-227 参数的数据类型 参数和类型 数据类型 说明 GEOADDR IN/OUT or IN ? Variant 指向 GEOADDR 系统数据类型结构的指针。GEOADDR 系统数据类 型包含可用于确定硬件 ID 的插槽信息。 更多信息,请参见“GEOADDR 系统数据类型” (页 544)。 RET_VAL OUT or RETURN ? Int 错误信息输出。 LADDR OUT HW_ANY 组件或模块的硬件标识符。 此编号为自动分配,存储在硬件配置的属性中有关有效数据类型的更多信息,请参见 STEP 7 在线帮助中的“有效数据类型概述”。 表格 9-228 条件代码 RET_VAL* (W#16#...) 说明 0 未发生错误。 8091 GEOADDR 中 HWTYPE 的值无效。 8094 GEOADDR 中 IOSYSTEM 的值无效。 8095 GEOADDR 中 STATION 的值无效。 8096 GEOADDR 中 SLOT 的值无效。 8097 GEOADDR 中 SUBSLOT 的值无效。 * 在程序编辑器中,错误代码可显示为整数或十六进制值。 9.11.2 LOG2GEO(根据硬件标识符确定插槽) 使用 LOG2GEO 指令从逻辑地址中确定属于硬件标识符的地理地址(模块插槽)。 表格 9-229 LOG2GEO 指令 LAD/FBD SCL 说明 ret_val := LOG2GEO( laddr:=_word_in_, GEOADDR:=_variant_in_out_) ; 可使用 LOG2GEO 指令确定属于硬件 标识符的模块插槽。 LOG2GEO 指令根据硬件标识符来确定逻辑地址的地理地址: • 使用 LADDR 参数根据硬件标识符选择逻辑地址。 • GEOADDR 中包含 LADDR 输入所给定的逻辑地址的地理地址。 说明 在 HW 类型不支持组件的情况下,将返回模块 0 的子插槽号。 如果 LADDR 输入未寻址到 HW 对象,则发生错误。数据类型 说明 LADDR IN HW_ANY IO 系统或模块的硬件标识符。此编号为自动分配,将存储在 CPU 属性或硬件配置的接口中。 RET_VAL OUT Int 指令的错误代码 GEOADDR IN_OUT Variant 指向 GEOADDR 系统数据类型的指针。GEOADDR 系统数据类型包 含插槽信息。 更多信息,请参见“GEOADDR 系统数据类型” (页 544)。 有关有效数据类型的更多信息,请参见 STEP 7 在线帮助中的“有效数据类型概述”。 表格 9-231 条件代码 RET_VAL (W#16#...) 说明 0000 无错误 8090 LADDR 参数指定的地址无效。 * 在程序编辑器中,错误代码可显示为整数或十六进制值。 9.11.3 IO2MOD(根据 I/O 地址确定硬件标识符) 可使用 IO2MOD 指令根据(子)模块的 I/O 地址确定该模块的硬件标识符。 表格 9-232 IO2MOD 指令 LAD/FBD SCL 说明 ret_val := IO2MOD( ADDR:=_word_in_, LADDR:=_word_out_); 可使用 IO2MOD 指令确定属于硬件标 识符的模块插槽。 IO2MOD 指令根据(子)模块的 I/O 地址(I、Q、PI、PQ)确定该模块的硬件标识符。 在 ADDR 参数中输入 IO 地址。如果在此参数中使用了一系列 IO 地址,仅通过评估第一个地 址来确定硬件标识符。如果正确指定了第一个地址,则在 ADDR 处指定的地址长度没有任何 意义。如果使用了包含多个模块或未使用地址的地址区域,则还可以确定第一个模块的硬件 标识符。截图20230707143834.png数据类型 存储区 说明 ADDR IN or IN/OUT ? Variant I、Q、M、D、L (子)模块内的 IO 地址(I、Q、PI、 PQ)。 确保片段访问未用于参数 ADDR。如果使 用了片段访问,将会在 LADDR 参数处输 出不正确的值。 RET_VAL OUT or RETURN ? Int I、Q、M、D、L 指令的错误代码。 LADDR OUT HW_IO I、Q、M、D、L IO(子)模块的确定的硬件标识符(逻辑 地址)。 有关有效数据类型的更多信息,请参见 STEP 7 在线帮助中的“有效数据类型概述”。 表格 9-234 条件代码 RET_VAL* (W#16#...) 说明 0 未发生错误。 8090 在 ADDR 参数处指定的 IO 地址未被任何硬件组件使用。 * 在程序编辑器中,错误代码可显示为整数或十六进制值。RD_ADDR(根据硬件标识符确定 IO 地址) 使用 RD_ADDR 指令获取子模块的 I/O 地址。 表格 9-235 RD_ADDR 指令 LAD/FBD SCL 说明 ret_val := RD_ADDR( laddr:=_word_in_, PIADDR=>_udint_out_, PICount=>_uint_out_, PQADDR=>_udint_out_, PQCount=>_uint_out_,); 使用 RD_ADDR 指令获取子模块的 I/O 地 址。 RD_ADDR 指令根据子模块的硬件标识符确定输入或输出的长度和起始地址: • 使用 LADDR 参数根据硬件标识符选择输入或输出模块。 • 以下输出参数根据其为输入模块还是输出模块加以使用: – 如果是输入模块,则在 PIADDR 和 PICOUNT 参数中输出确定值。 – 如果是输出模块,则在 PQADDR 和 PQCOUNT 参数中输出确定值。 • PIADDR 和 PQADDR 参数各自包含模块 I/O 地址的起始地址。 • PICOUNT 和 PQCOUNT 参数各自包含输入或输出的字节数(8 位输入/输出对应 1 个字节, 16 位输入/输出对应 2 个字节)。 表格 9-236 参数的数据类型 参数和类型 数据类型 说明 LADDR IN HW_IO (子)模块的硬件标识符 RET_VAL OUT Int 指令的错误代码 PIADDR OUT UDInt 输入模块的起始地址 PICOUNT OUT UInt 输入的字节数 PQADDR OUT UDInt 输出模块的起始地址有关有效数据类型的更多信息,请参见 STEP 7 在线帮助中的“有效数据类型概述”。 表格 9-237 条件代码 RET_VAL (W#16#...) 说明 0000 无错误 8090 LADDR 参数中的模块硬件标识符无效。 * 在程序编辑器中,错误代码可显示为整数或十六进制值。 9.11.5 GEOADDR 系统数据类型 地理地址 系统数据类型 GEOADDR 包含模块地理地址(或插槽信息)。 • PROFINET IO 的地理地址: 对于 PROFINET IO,地理地址由 PROFINET IO 系统 ID、设备号、插槽号和子模块(如果 使用子模块)组成。 • PROFIBUS DP 的地理地址: 对于 PROFIBUS DP,地理地址由 DP 主站系统的 ID、站号和插槽号组成。 可在每个模块的硬件配置中找到模块的插槽信息

核心提示:西门子软件经销商
 
标签: 电工电气,工控系统及装备,PLC
反对 0举报 0 收藏 0 打赏 0评论 0
 
同类新闻
  • 联系人:吴维
  • 电话:13817547325
  • 地址:上海市松江区石湖荡镇塔汇路755弄29号1幢一层A区213室
  • 手机:13817547325
我们的产品