文档中心
PLC在线模拟器
变量与系统变量

变量类型与系统变量

变量是梯形图程序的数据载体。PLC在线模拟器 提供与西门子 S7-200 SMART 对齐的基础变量类型,以及用于特殊用途的复合变量(定时器、计数器)与系统变量(SM0.x)。

基础变量类型

类型含义取值范围
Bool位(布尔)true / false
Int88 位有符号整数-128 ~ 127
Uint88 位无符号整数0 ~ 255
Int1616 位有符号整数-32768 ~ 32767
Uint1616 位无符号整数0 ~ 65535
Int3232 位有符号整数-2147483648 ~ 2147483647
Uint3232 位无符号整数0 ~ 4294967295
Real32 位单精度实数约 ±3.4×10³⁸

Bool 类型用于触点、线圈、比较等位逻辑;Int8/Uint8/Int16/Uint16/Int32/Uint32 用于数值运算、比较与传送;Real 用于需要小数精度的浮点运算。

兼容性说明:旧版本中的 Number 类型自动归一化为 Int32,Time 类型自动归一化为 Uint32,Float 自动归一化为 Real,旧工程无需手动转换。

复合变量

Timer(定时器)

定时器指令使用的复合变量,包含 5 个子变量:

子变量说明
PT预设时间(与分辨率对应:1ms/10ms/100ms)
ET当前累计时间
IN使能输入(由指令自动写入)
R复位(TONR 使用)
Q输出

Counter(计数器)

计数器指令使用的复合变量,包含 8 个子变量:

子变量说明
PV预设值
CV当前值
CU加计数输入
CD减计数输入
R复位
LD装载(将 PV 载入 CV)
QU上计数输出(CV ≥ PV)
QD下计数输出(CV ≤ 0)

系统变量(SM0.x)

系统变量由模拟器在每个扫描周期自动更新,用于实现首扫初始化、时钟脉冲等特殊功能。它们在变量表中以 SM0.x 命名,可直接用于触点、线圈等元件。

名称地址行为
Always_OnSM0.0始终为 true
First_Scan_OnSM0.1进入 RUN 后的首个扫描周期为 true,可用于程序初始化
Retentive_LostSM0.2恒为 false(暂未模拟掉电保持丢失)
RUN_Power_UpSM0.3上电后首次进入 RUN 的首个周期为 true
Clock_60sSM0.430 秒通 / 30 秒断
Clock_1sSM0.50.5 秒通 / 0.5 秒断
Clock_ScanSM0.6偶数扫描周期通、奇数扫描周期断

典型用法

  • SM0.1(首扫):用其驱动一个 MOV 指令,在程序启动时一次性写入初始值。
  • SM0.5(1 秒时钟):配合计数器实现秒表,或驱动指示灯闪烁。
  • SM0.4(60 秒时钟):用于需要分钟级周期的定时逻辑。