跳到主要内容

总线寄存器

指令列表 总线寄存器指令用于读写Profinet或Ethernet/IP总线寄存器。

说明: Magician E6不支持这组指令。

指令功能
GetInputBool获取输⼊寄存器指定地址的bool值
GetInputInt获取输⼊寄存器指定地址的int值
GetInputFloat获取输⼊寄存器指定地址的float值
GetOutputBool获取输出寄存器指定地址的bool值
GetOutputInt获取输出寄存器指定地址的int值
GetOutputFloat获取输出寄存器指定地址的float值
SetOutputBool设置输出寄存器指定地址的bool值
SetOutputInt设置输出寄存器指定地址的int值
SetOutputFloat设置输出寄存器指定地址的float值

GetInputBool

原型:


GetInputBool(address)

描述:

获取输⼊寄存器指定地址的bool类型的数值。

必选参数:

address:寄存器地址,取值范围[0-63]

返回:

指定的寄存器地址的值,为0或1

示例:


-- 当输入寄存器0的值为1时,执行后续操作。
if(GetInputBool(0)==1)
then
-- 执行后续操作
end

GetInputInt

原型:


GetInputInt(address)

描述:

获取输⼊寄存器指定地址的int类型的数值。

必选参数:

address:寄存器地址,取值范围[0-23]

返回:

指定的寄存器地址的值,为整型数(int32)

示例:


-- 读取输入寄存器1的值并赋值给变量regInt。
local regInt = GetInputInt(1)

GetInputFloat

原型:


GetInputFloat(address)

描述:

获取输⼊寄存器指定地址的float类型的数值。

必选参数:

address:寄存器地址,取值范围[0-23]

返回:

指定的寄存器地址的值,为单精度浮点数(float)

示例:


-- 读取输入寄存器2的值并赋值给变量regFloat。
local regFloat = GetInputFloat(2)

GetOutputBool

原型:


GetOutputBool(address)

描述:

获取输出寄存器指定地址的bool类型的数值。

必选参数:

address:寄存器地址,取值范围[0-63]

返回:

指定的寄存器地址的值,为0或1

示例:


-- 当输出寄存器0的值为1时,执行后续操作。
if(GetOutputBool(0)==1)
then
-- 执行后续操作
end

GetOutputInt

原型:


GetOutputInt(address)

描述:

获取输出寄存器指定地址的int类型的数值。

必选参数:

address:寄存器地址,取值范围[0-23]

返回:

指定的寄存器地址的值,为整型数(int32)

示例:


-- 读取输出寄存器1的值并赋值给变量regInt。
local regInt = GetOutputInt(1)

GetOutputFloat

原型:


GetOutputFloat(address)

描述:

获取输出寄存器指定地址的float类型的数值。

必选参数:

address:寄存器地址,取值范围[0-23]

返回:

指定的寄存器地址的值,为单精度浮点数(float)

示例:


-- 读取输出寄存器2的值并赋值给变量regFloat。
local regFloat = GetOutputFloat(2)

SetOutputBool

原型:


SetOutputBool(address, value)

描述:

设置输出寄存器指定地址的bool类型的数值。

必选参数:

address:寄存器地址,取值范围[0-63] value:要设置的值,支持布尔值或0/1 示例:


-- 设置输出寄存器0的值为假。
SetOutputBool(0,0)

SetOutputInt

原型:

SetOutputInt(address, value)

描述:

设置输出寄存器指定地址的int类型的数值。

必选参数:

address:寄存器地址,取值范围[0-23] value:要设置的值,支持整型数(int32) 示例:


-- 设置输出寄存器1的值为123。
SetOutputInt(1,123)

SetOutputFloat

原型:


SetOutputFloat(address, value)

描述:

设置输出寄存器指定地址的float类型的数值。

必选参数:

address:寄存器地址,取值范围[0-23] value:要设置的值,支持单精度浮点数(float)。受浮点数的存储机制(IEEE754)限制,单精度浮点数可保存的有效数字约6到7位(与小数点位置无关)。有效数字大于6位的值保存为单精度浮点数可能会产生偏差,有效数字位数越多可能产生的偏差越大。 示例:


-- 设置输出寄存器2的值为12.3。
SetOutputFloat(2,12.3)