西门子SM323模块特价

名称:西门子SM323模块特价

供应商:西门子代理商

价格:面议

最小起订量:1/台

地址:上海松江鼎源路618弄时尚谷创意园61号5楼

手机:13585754803

联系人:郑鑫 (请说在中科商务网上看到)

产品编号:139103655

更新时间:2021-09-08

发布者IP:101.85.233.47

详细说明

  上海西邑电气技术有限公司

  联系人 郑鑫 135八五七五四八零三

  S7-1200 全局DB中的数据类型介绍

  S7-1200全局DB中的数据类型,包括基本数据类型、系统数据类型和硬件数据类型。

  在DB块中,新建一个变量,在数据类型列的下拉列表中,选择需要的数据类型。

  基本数据类型

  基本数据类型:包括位、位字符串、整数、浮点数、定时器、日期&时间、字符、数组和结构

  1.位和位字符串

  2.整数数据类型

  3.浮点型实数数据类型

  如 ANSI/IEEE 754-1985 标准所述,实(或浮点)数以 32 位单精度数 (Real) 或 64 位双精度数 (LReal) 表示。 单精度浮点数的精度最高为 6 位有效数字,

  而双精度浮点数的精度最高为 15 位有效数字。在输入浮点常数时,最多可以指定 6 位 (Real) 或 15 位 (LReal) 有效数字来保持精度。

  4.时间和日期数据类型

  TIME 数据作为有符号双整数存储,基本单位为毫秒。存储的数值是多少,就代表有多少ms。 编辑时可以选择性使用日期 (d)、小时(h)、分钟 (m)、秒 (s) 和毫秒 (ms) 作为单位。

  不需要指定全部时间单位。 例如,T#5h10s 和 500h 均有效。所有指定单位值的组合值不能超过以毫秒表示的时间日期类型的上限或下限(-2,147,483,648 ms 到 +2,147,483,647 ms)。

  DATE 数据作为无符号整数值存储,被解释为添加到基础日期 1990 年 1 月 1 日的天数,用以获取指定日期。 编辑器格式必须指定年、月和日。

  TOD (TIME_OF_DAY) 数据作为无符号双整数值存储,被解释为自指定日期的凌晨算起的毫秒数(凌晨 = 0 ms)。 必须指定小时(24 小时/天)、分钟和秒。 可以选择指定小数秒格式。

  DTL(日期和时间长型)数据类型使用 12 个字节的结构保存日期和时间信息。可以在块的临时存储器或者 DB 中定义 DTL 数据。 必须在 DB 编辑器的"起始值"(Start value) 列为所有组件输入一个值。

  DTL结构的元素如下表:

  5.字符和字符串数据类型

  Char 在存储器中占一个字节,可以存储以 ASCII 格式(包括扩展 ASCII 字符代码)编码的单个字符。 WChar 在存储器中占一个字的空间,可包含任意双字节字符表示形式。

  编辑器语法在字符的前面和后面各使用一个单引号字符。可以使用可见字符和控制字符。

  CPU 支持使用 String 数据类型存储一串单字节字符。 String 数据类型包含总字符数(字符串中的字符数)和当前字符数。 String 类型提供了多达 256

  个字节,用于在字符串中存储最大总字符数(1 个字节)、当前字符数(1 个字节)以及最多 254 个字节。 String 数据类型中的每个字节都可以是从 16#00 到16#FF 的任意值。

  String 数据类型示例:

  WString 数据类型支持单字(双字节)值的较长字符串。第一个字包含最大总字符数;下一个字包含总字符数,接下来的字符串可包含多达 65534 个字。 每个字都可以是从 16#0000 到 16#FFFF 的任意值。

  WString 数据类型示例:

  6.数组数据类型

  可以创建包含多个相同数据类型元素的数组,请为数组命名并选择数据类型"Array [lo .. hi] of type",然后根据如下说明编辑"lo"、"hi"和"type":

  < lo - 数组的起始(最低)下标

  < hi - 数组的结束(最高)下标

  < type - 数据类型之一,例如 BOOL、SINT、UDINT

  示例: 数组声明

  ARRAY[1..20] of REAL 一维,20 个元素

  ARRAY[-5..5] of INT 一维,11 个元素

  ARRAY[1..2, 3..4] of CHAR 二维,4 个元素

  示例: 数组地址

  ARRAY1[0] ARRAY1 元素 0

  ARRAY2[1,2] ARRAY2 元素 [1,2]

  ARRAY3[i,j] 如果 i =3 且 j=4,则对 ARRAY3 的元素 [3, 4] 进行寻址

  6.结构数据类型

  STRUCT 数据类型表示由固定数目的多种数据类型的元素组成的数据结构。 数据类型 STRUCT 或 ARRAY 的元素还可以在结构中嵌套。 嵌套深度限制为 8 级。 结构可用于根据过程控制系统分组数据以及作为一个数据单元来传送参数。

  对于 S7-1200 或 S7-1500 系列 CPU,可最多创建 65534 个结构。 其中每个结构可最多包括 252 个元素。

  下图为数据类型 STRUCT 的示例:

  结构所在的DB块名为“结构示例”,则可以使用 "结构示例".产品规格.长度 访问结构的第一个元素长度。

  系统数据类型

  系统数据类型:系统数据类型 (SDT) 由系统提供并具有预定义的结构。 系统数据类型的结构由固定数目的可具有各种数据类型的元素构成。 不能更改系统数据类型的结构。

  系统数据类型只能用于特定指令。 下表给出了可用的系统数据类型及其用途:

统数据类型长度(字节)说明
IEC_TIMER16定时值为 TIME 数据类型的定时器结构。例如,此数据类型可用于“TP”、“TOF”、“TON”、“TONR”、“RT”和“PT”指令。
IEC_SCOUNTER3计数值为 SINT 数据类型的计数器结构。例如,此数据类型用于“CTU”、“CTD”和“CTUD”指令。
IEC_USCOUNTER3计数值为 USINT 数据类型的计数器结构。例如,此数据类型用于“CTU”、“CTD”和“CTUD”指令。
IEC_COUNTER6计数值为 INT 数据类型的计数器结构。例如,此数据类型用于“CTU”、“CTD”和“CTUD”指令。
IEC_UCOUNTER6计数值为 UINT 数据类型的计数器结构。例如,此数据类型用于“CTU”、“CTD”和“CTUD”指令。
IEC_DCOUNTER12计数值为 DINT 数据类型的计数器结构。例如,此数据类型用于“CTU”、“CTD”和“CTUD”指令。
IEC_UDCOUNTER12计数值为 UDINT 数据类型的计数器结构。例如,此数据类型用于“CTU”、“CTD”和“CTUD”指令。
ERROR_STRUCT28编程错误信息或 I/O 访问错误信息的结构。例如,此数据类型用于“GET_ERROR”指令。
CREF8数据类型 ERROR_STRUCT 的组成,在其中保存有关块地址的信息。
NREF8数据类型 ERROR_STRUCT 的组成,在其中保存有关操作数的信息。

  硬件数据类型

  硬件数据类型:硬件数据类型由 CPU 提供。 可用硬件数据类型的数目取决于 CPU。

  根据硬件配置中设置的模块存储特定硬件数据类型的常量。 在用户程序中插入用于控制或激活已组态模块的指令时,可将这些可用常量用作参数。

HW_ANYWORD任何硬件组件(如模块)的标识。
HW_DEVICEHW_ANYDP 从站/PROFINET IO 设备的标识
HW_DPSLAVEHW_DEVICEDP 从站的标识
HW_IOHW_ANYCPU 或接口的标识号该编号在 CPU 或硬件配置接口的属性中自动分配和存储。
HW_IOSYSTEMHW_ANYPN/IO 系统或 DP 主站系统的标识
HW_SUBMODULEHW_IO重要硬件组件的标识
HW_INTERFACEHW_SUBMODULE接口组件的标识
HW_IEPORTHW_SUBMODULE端口的标识 (PN/IO)
HW_HSCHW_SUBMODULE高速计数器的标识此数据类型用于“CTRL_HSC”和“CTRL_HSC_EXT”指令。
HW_PWMHW_SUBMODULE脉冲宽度调制标识例如,此数据类型用于“CTRL_PWM”指令。
HW_PTOHW_SUBMODULE脉冲编码器标识该数据类型用于运动控制。
AOM_IDENTDWORDAS 运行系统中对象的标识
EVENT_ANYAOM_IDENT用于标识任意事件
EVENT_ATTEVENT_ANY用于指定动态分配给 OB 的事件。例如,此数据类型用于“ATTACH”和“DETACH”指令。
EVENT_HWINTEVENT_ATT用于指定硬件中断事件
OB_ANYINT用于指定任意组织块。
OB_DELAYOB_ANY用于指定发生延时中断时调用的组织块。例如,此数据类型用于“SRT_DINT”和“CAN_DINT”指令。
OB_TODOB_ANY指定时间中断 OB 的数量。例如,此数据类型用于“SET_TINT”、“CAN_TINT”、“ACT_TINT”和“QRY_TINT”指令。
OB_CYCLICOB_ANY用于指定发生看门狗中断时调用的组织块。
OB_ATTOB_ANY用于指定动态分配给事件的组织块。例如,此数据类型用于“ATTACH”和“DETACH”指令。
OB_PCYCLEOB_ANY用于指定分配给“循环程序”事件类别事件的组织块。
OB_HWINTOB_ATT用于指定发生硬件中断时调用的组织块。
OB_DIAGOB_ANY用于指定发生诊断中断时调用的组织块。
OB_TIMEERROROB_ANY用于指定发生时间错误时调用的组织块。
OB_STARTUPOB_ANY用于指定发生启动事件时调用的组织块。
PORTHW_SUBMODULE用于指定通信端口。该数据类型用于点对点通信。
RTMUINT用于指定运行小时计数器值。例如,此数据类型用于“RTM”指令。
PIPUINT用于创建和连接“同步循环”OB。此数据类型用于 SFC 26、27、126 和 127。
CONN_ANYWORD用于指定任意连接。
CONN_PRGCONN_ANY用于指定通过 UDP 进行开放式通信的连接。
CONN_OUCCONN_ANY用于指定通过工业以太网 (PROFINET) 进行开放式通信的连接。
DB_ANYUINT任意 DB 的标识(数量)数据类型“DB_ANY”在“Temp”区域中的长度为 0。
DB_WWWDB_ANY通过 Web 应用生成的 DB 的数量(例如,“WWW”指令)数据类型“DB_WWW”在“Temp”区域中的长度为 0。

  PROFINET循环的实时通信报文基于IEEE802.3,具有4个字节的VLAN标签(IEEE802.1p),该标签其中的3个位可以表示PROFINET实时数据的优先级,参考图1 PROFINET实时报文。

  图1 PROFINET实时报文

  PROFINET循环的实时数据报文具有优先级,且用户优先级为6。VLAN标示符VID=0表示报文仅包含优先级信息,而不是一个有效地VLAN标识。

  报文具有“用户优先级”符合IEEE802.1p标准,IEEE802.1p具有如下特点:

  支持IEEE802.1p的交换机会优先转发高优先级的数据,IEEE802.1p标准

  通过在OSI 2层给数据加入优先级以及交换机中的不同队列分配,实现加速报文转发。

  TCI中包含表示服务种类(Class of Service)的3个位,这样CoS服务就有8个优先级,其中0为最低优先级,而7为最高优先级。

  不同的应用按照不同的方式进行处理

  赋予实时应用更高的优先级