mirror of
https://github.com/MikaylaFischler/cc-mek-scada.git
synced 2024-08-30 18:22:34 +00:00
RTU device changes, bugfixes, docs
This commit is contained in:
parent
9695e94608
commit
969abca95d
@ -1,17 +1,15 @@
|
|||||||
local rtu = require("rtu")
|
local rtu = require("rtu.rtu")
|
||||||
|
|
||||||
local boiler_rtu = {}
|
local boiler_rtu = {}
|
||||||
|
|
||||||
|
-- create new boiler (mek 10.0) device
|
||||||
|
---@param boiler table
|
||||||
boiler_rtu.new = function (boiler)
|
boiler_rtu.new = function (boiler)
|
||||||
local self = {
|
local self = {
|
||||||
rtu = rtu.init_unit(),
|
rtu = rtu.init_unit(),
|
||||||
boiler = boiler
|
boiler = boiler
|
||||||
}
|
}
|
||||||
|
|
||||||
local rtu_interface = function ()
|
|
||||||
return self.rtu
|
|
||||||
end
|
|
||||||
|
|
||||||
-- discrete inputs --
|
-- discrete inputs --
|
||||||
-- none
|
-- none
|
||||||
|
|
||||||
@ -47,9 +45,7 @@ boiler_rtu.new = function (boiler)
|
|||||||
-- holding registers --
|
-- holding registers --
|
||||||
-- none
|
-- none
|
||||||
|
|
||||||
return {
|
return self.rtu.interface()
|
||||||
rtu_interface = rtu_interface
|
|
||||||
}
|
|
||||||
end
|
end
|
||||||
|
|
||||||
return boiler_rtu
|
return boiler_rtu
|
||||||
|
@ -1,29 +1,28 @@
|
|||||||
local rtu = require("rtu")
|
local rtu = require("rtu.rtu")
|
||||||
|
|
||||||
local boilerv_rtu = {}
|
local boilerv_rtu = {}
|
||||||
|
|
||||||
|
-- create new boiler (mek 10.1+) device
|
||||||
|
---@param boiler table
|
||||||
boilerv_rtu.new = function (boiler)
|
boilerv_rtu.new = function (boiler)
|
||||||
local self = {
|
local self = {
|
||||||
rtu = rtu.init_unit(),
|
rtu = rtu.init_unit(),
|
||||||
boiler = boiler
|
boiler = boiler
|
||||||
}
|
}
|
||||||
|
|
||||||
local rtu_interface = function ()
|
|
||||||
return self.rtu
|
|
||||||
end
|
|
||||||
|
|
||||||
-- discrete inputs --
|
-- discrete inputs --
|
||||||
-- none
|
self.rtu.connect_di(self.boiler.isFormed)
|
||||||
|
|
||||||
-- coils --
|
-- coils --
|
||||||
-- none
|
-- none
|
||||||
|
|
||||||
-- input registers --
|
-- input registers --
|
||||||
-- multiblock properties
|
-- multiblock properties
|
||||||
self.rtu.connect_input_reg(self.boiler.isFormed)
|
|
||||||
self.rtu.connect_input_reg(self.boiler.getLength)
|
self.rtu.connect_input_reg(self.boiler.getLength)
|
||||||
self.rtu.connect_input_reg(self.boiler.getWidth)
|
self.rtu.connect_input_reg(self.boiler.getWidth)
|
||||||
self.rtu.connect_input_reg(self.boiler.getHeight)
|
self.rtu.connect_input_reg(self.boiler.getHeight)
|
||||||
|
self.rtu.connect_input_reg(self.boiler.getMinPos)
|
||||||
|
self.rtu.connect_input_reg(self.boiler.getMaxPos)
|
||||||
-- build properties
|
-- build properties
|
||||||
self.rtu.connect_input_reg(self.boiler.getBoilCapacity)
|
self.rtu.connect_input_reg(self.boiler.getBoilCapacity)
|
||||||
self.rtu.connect_input_reg(self.boiler.getSteamCapacity)
|
self.rtu.connect_input_reg(self.boiler.getSteamCapacity)
|
||||||
@ -32,6 +31,7 @@ boilerv_rtu.new = function (boiler)
|
|||||||
self.rtu.connect_input_reg(self.boiler.getCooledCoolantCapacity)
|
self.rtu.connect_input_reg(self.boiler.getCooledCoolantCapacity)
|
||||||
self.rtu.connect_input_reg(self.boiler.getSuperheaters)
|
self.rtu.connect_input_reg(self.boiler.getSuperheaters)
|
||||||
self.rtu.connect_input_reg(self.boiler.getMaxBoilRate)
|
self.rtu.connect_input_reg(self.boiler.getMaxBoilRate)
|
||||||
|
self.rtu.connect_input_reg(self.boiler.getEnvironmentalLoss)
|
||||||
-- current state
|
-- current state
|
||||||
self.rtu.connect_input_reg(self.boiler.getTemperature)
|
self.rtu.connect_input_reg(self.boiler.getTemperature)
|
||||||
self.rtu.connect_input_reg(self.boiler.getBoilRate)
|
self.rtu.connect_input_reg(self.boiler.getBoilRate)
|
||||||
@ -52,9 +52,7 @@ boilerv_rtu.new = function (boiler)
|
|||||||
-- holding registers --
|
-- holding registers --
|
||||||
-- none
|
-- none
|
||||||
|
|
||||||
return {
|
return self.rtu.interface()
|
||||||
rtu_interface = rtu_interface
|
|
||||||
}
|
|
||||||
end
|
end
|
||||||
|
|
||||||
return boilerv_rtu
|
return boilerv_rtu
|
||||||
|
@ -1,16 +1,20 @@
|
|||||||
local rtu = require("rtu")
|
local rtu = require("rtu.rtu")
|
||||||
|
|
||||||
local energymachine_rtu = {}
|
local energymachine_rtu = {}
|
||||||
|
|
||||||
|
-- create new energy machine device
|
||||||
|
---@param machine table
|
||||||
energymachine_rtu.new = function (machine)
|
energymachine_rtu.new = function (machine)
|
||||||
local self = {
|
local self = {
|
||||||
rtu = rtu.init_unit(),
|
rtu = rtu.init_unit(),
|
||||||
machine = machine
|
machine = machine
|
||||||
}
|
}
|
||||||
|
|
||||||
local rtu_interface = function ()
|
---@class rtu_device
|
||||||
return self.rtu
|
local public = {}
|
||||||
end
|
|
||||||
|
-- get the RTU interface
|
||||||
|
public.rtu_interface = function () return self.rtu end
|
||||||
|
|
||||||
-- discrete inputs --
|
-- discrete inputs --
|
||||||
-- none
|
-- none
|
||||||
@ -29,9 +33,7 @@ energymachine_rtu.new = function (machine)
|
|||||||
-- holding registers --
|
-- holding registers --
|
||||||
-- none
|
-- none
|
||||||
|
|
||||||
return {
|
return public
|
||||||
rtu_interface = rtu_interface
|
|
||||||
}
|
|
||||||
end
|
end
|
||||||
|
|
||||||
return energymachine_rtu
|
return energymachine_rtu
|
||||||
|
@ -1,29 +1,28 @@
|
|||||||
local rtu = require("rtu")
|
local rtu = require("rtu.rtu")
|
||||||
|
|
||||||
local imatrix_rtu = {}
|
local imatrix_rtu = {}
|
||||||
|
|
||||||
|
-- create new induction matrix (mek 10.1+) device
|
||||||
|
---@param imatrix table
|
||||||
imatrix_rtu.new = function (imatrix)
|
imatrix_rtu.new = function (imatrix)
|
||||||
local self = {
|
local self = {
|
||||||
rtu = rtu.init_unit(),
|
rtu = rtu.init_unit(),
|
||||||
imatrix = imatrix
|
imatrix = imatrix
|
||||||
}
|
}
|
||||||
|
|
||||||
local rtu_interface = function ()
|
|
||||||
return self.rtu
|
|
||||||
end
|
|
||||||
|
|
||||||
-- discrete inputs --
|
-- discrete inputs --
|
||||||
-- none
|
self.rtu.connect_di(self.boiler.isFormed)
|
||||||
|
|
||||||
-- coils --
|
-- coils --
|
||||||
-- none
|
-- none
|
||||||
|
|
||||||
-- input registers --
|
-- input registers --
|
||||||
-- multiblock properties
|
-- multiblock properties
|
||||||
self.rtu.connect_input_reg(self.boiler.isFormed)
|
|
||||||
self.rtu.connect_input_reg(self.boiler.getLength)
|
self.rtu.connect_input_reg(self.boiler.getLength)
|
||||||
self.rtu.connect_input_reg(self.boiler.getWidth)
|
self.rtu.connect_input_reg(self.boiler.getWidth)
|
||||||
self.rtu.connect_input_reg(self.boiler.getHeight)
|
self.rtu.connect_input_reg(self.boiler.getHeight)
|
||||||
|
self.rtu.connect_input_reg(self.boiler.getMinPos)
|
||||||
|
self.rtu.connect_input_reg(self.boiler.getMaxPos)
|
||||||
-- build properties
|
-- build properties
|
||||||
self.rtu.connect_input_reg(self.imatrix.getMaxEnergy)
|
self.rtu.connect_input_reg(self.imatrix.getMaxEnergy)
|
||||||
self.rtu.connect_input_reg(self.imatrix.getTransferCap)
|
self.rtu.connect_input_reg(self.imatrix.getTransferCap)
|
||||||
@ -40,9 +39,7 @@ imatrix_rtu.new = function (imatrix)
|
|||||||
-- holding registers --
|
-- holding registers --
|
||||||
-- none
|
-- none
|
||||||
|
|
||||||
return {
|
return self.rtu.interface()
|
||||||
rtu_interface = rtu_interface
|
|
||||||
}
|
|
||||||
end
|
end
|
||||||
|
|
||||||
return imatrix_rtu
|
return imatrix_rtu
|
||||||
|
@ -1,4 +1,4 @@
|
|||||||
local rtu = require("rtu")
|
local rtu = require("rtu.rtu")
|
||||||
local rsio = require("scada-common.rsio")
|
local rsio = require("scada-common.rsio")
|
||||||
|
|
||||||
local redstone_rtu = {}
|
local redstone_rtu = {}
|
||||||
@ -6,16 +6,31 @@ local redstone_rtu = {}
|
|||||||
local digital_read = rsio.digital_read
|
local digital_read = rsio.digital_read
|
||||||
local digital_is_active = rsio.digital_is_active
|
local digital_is_active = rsio.digital_is_active
|
||||||
|
|
||||||
|
-- create new redstone device
|
||||||
redstone_rtu.new = function ()
|
redstone_rtu.new = function ()
|
||||||
local self = {
|
local self = {
|
||||||
rtu = rtu.init_unit()
|
rtu = rtu.init_unit()
|
||||||
}
|
}
|
||||||
|
|
||||||
local rtu_interface = function ()
|
-- get RTU interface
|
||||||
return self.rtu
|
local interface = self.rtu.interface()
|
||||||
end
|
|
||||||
|
|
||||||
local link_di = function (channel, side, color)
|
---@class rtu_rs_device
|
||||||
|
--- extends rtu_device; fields added manually to please Lua diagnostics
|
||||||
|
local public = {
|
||||||
|
io_count = interface.io_count,
|
||||||
|
read_coil = interface.read_coil,
|
||||||
|
read_di = interface.read_di,
|
||||||
|
read_holding_reg = interface.read_holding_reg,
|
||||||
|
read_input_reg = interface.read_input_reg,
|
||||||
|
write_coil = interface.write_coil,
|
||||||
|
write_holding_reg = interface.write_holding_reg
|
||||||
|
}
|
||||||
|
|
||||||
|
-- link digital input
|
||||||
|
---@param side string
|
||||||
|
---@param color integer
|
||||||
|
public.link_di = function (side, color)
|
||||||
local f_read = nil
|
local f_read = nil
|
||||||
|
|
||||||
if color then
|
if color then
|
||||||
@ -31,7 +46,11 @@ redstone_rtu.new = function ()
|
|||||||
self.rtu.connect_di(f_read)
|
self.rtu.connect_di(f_read)
|
||||||
end
|
end
|
||||||
|
|
||||||
local link_do = function (channel, side, color)
|
-- link digital output
|
||||||
|
---@param channel RS_IO
|
||||||
|
---@param side string
|
||||||
|
---@param color integer
|
||||||
|
public.link_do = function (channel, side, color)
|
||||||
local f_read = nil
|
local f_read = nil
|
||||||
local f_write = nil
|
local f_write = nil
|
||||||
|
|
||||||
@ -65,7 +84,9 @@ redstone_rtu.new = function ()
|
|||||||
self.rtu.connect_coil(f_read, f_write)
|
self.rtu.connect_coil(f_read, f_write)
|
||||||
end
|
end
|
||||||
|
|
||||||
local link_ai = function (channel, side)
|
-- link analog input
|
||||||
|
---@param side string
|
||||||
|
public.link_ai = function (side)
|
||||||
self.rtu.connect_input_reg(
|
self.rtu.connect_input_reg(
|
||||||
function ()
|
function ()
|
||||||
return rs.getAnalogInput(side)
|
return rs.getAnalogInput(side)
|
||||||
@ -73,7 +94,9 @@ redstone_rtu.new = function ()
|
|||||||
)
|
)
|
||||||
end
|
end
|
||||||
|
|
||||||
local link_ao = function (channel, side)
|
-- link analog output
|
||||||
|
---@param side string
|
||||||
|
public.link_ao = function (side)
|
||||||
self.rtu.connect_holding_reg(
|
self.rtu.connect_holding_reg(
|
||||||
function ()
|
function ()
|
||||||
return rs.getAnalogOutput(side)
|
return rs.getAnalogOutput(side)
|
||||||
@ -84,13 +107,7 @@ redstone_rtu.new = function ()
|
|||||||
)
|
)
|
||||||
end
|
end
|
||||||
|
|
||||||
return {
|
return public
|
||||||
rtu_interface = rtu_interface,
|
|
||||||
link_di = link_di,
|
|
||||||
link_do = link_do,
|
|
||||||
link_ai = link_ai,
|
|
||||||
link_ao = link_ao
|
|
||||||
}
|
|
||||||
end
|
end
|
||||||
|
|
||||||
return redstone_rtu
|
return redstone_rtu
|
||||||
|
@ -1,17 +1,15 @@
|
|||||||
local rtu = require("rtu")
|
local rtu = require("rtu.rtu")
|
||||||
|
|
||||||
local turbine_rtu = {}
|
local turbine_rtu = {}
|
||||||
|
|
||||||
|
-- create new turbine (mek 10.0) device
|
||||||
|
---@param turbine table
|
||||||
turbine_rtu.new = function (turbine)
|
turbine_rtu.new = function (turbine)
|
||||||
local self = {
|
local self = {
|
||||||
rtu = rtu.init_unit(),
|
rtu = rtu.init_unit(),
|
||||||
turbine = turbine
|
turbine = turbine
|
||||||
}
|
}
|
||||||
|
|
||||||
local rtu_interface = function ()
|
|
||||||
return self.rtu
|
|
||||||
end
|
|
||||||
|
|
||||||
-- discrete inputs --
|
-- discrete inputs --
|
||||||
-- none
|
-- none
|
||||||
|
|
||||||
@ -42,9 +40,7 @@ turbine_rtu.new = function (turbine)
|
|||||||
-- holding registers --
|
-- holding registers --
|
||||||
-- none
|
-- none
|
||||||
|
|
||||||
return {
|
return self.rtu.interface()
|
||||||
rtu_interface = rtu_interface
|
|
||||||
}
|
|
||||||
end
|
end
|
||||||
|
|
||||||
return turbine_rtu
|
return turbine_rtu
|
||||||
|
@ -1,19 +1,17 @@
|
|||||||
local rtu = require("rtu")
|
local rtu = require("rtu.rtu")
|
||||||
|
|
||||||
local turbinev_rtu = {}
|
local turbinev_rtu = {}
|
||||||
|
|
||||||
|
-- create new turbine (mek 10.1+) device
|
||||||
|
---@param turbine table
|
||||||
turbinev_rtu.new = function (turbine)
|
turbinev_rtu.new = function (turbine)
|
||||||
local self = {
|
local self = {
|
||||||
rtu = rtu.init_unit(),
|
rtu = rtu.init_unit(),
|
||||||
turbine = turbine
|
turbine = turbine
|
||||||
}
|
}
|
||||||
|
|
||||||
local rtu_interface = function ()
|
|
||||||
return self.rtu
|
|
||||||
end
|
|
||||||
|
|
||||||
-- discrete inputs --
|
-- discrete inputs --
|
||||||
-- none
|
self.rtu.connect_di(self.boiler.isFormed)
|
||||||
|
|
||||||
-- coils --
|
-- coils --
|
||||||
self.rtu.connect_coil(function () self.turbine.incrementDumpingMode() end, function () end)
|
self.rtu.connect_coil(function () self.turbine.incrementDumpingMode() end, function () end)
|
||||||
@ -21,10 +19,11 @@ turbinev_rtu.new = function (turbine)
|
|||||||
|
|
||||||
-- input registers --
|
-- input registers --
|
||||||
-- multiblock properties
|
-- multiblock properties
|
||||||
self.rtu.connect_input_reg(self.boiler.isFormed)
|
|
||||||
self.rtu.connect_input_reg(self.boiler.getLength)
|
self.rtu.connect_input_reg(self.boiler.getLength)
|
||||||
self.rtu.connect_input_reg(self.boiler.getWidth)
|
self.rtu.connect_input_reg(self.boiler.getWidth)
|
||||||
self.rtu.connect_input_reg(self.boiler.getHeight)
|
self.rtu.connect_input_reg(self.boiler.getHeight)
|
||||||
|
self.rtu.connect_input_reg(self.boiler.getMinPos)
|
||||||
|
self.rtu.connect_input_reg(self.boiler.getMaxPos)
|
||||||
-- build properties
|
-- build properties
|
||||||
self.rtu.connect_input_reg(self.turbine.getBlades)
|
self.rtu.connect_input_reg(self.turbine.getBlades)
|
||||||
self.rtu.connect_input_reg(self.turbine.getCoils)
|
self.rtu.connect_input_reg(self.turbine.getCoils)
|
||||||
@ -50,11 +49,9 @@ turbinev_rtu.new = function (turbine)
|
|||||||
self.rtu.connect_input_reg(self.turbine.getEnergyFilledPercentage)
|
self.rtu.connect_input_reg(self.turbine.getEnergyFilledPercentage)
|
||||||
|
|
||||||
-- holding registers --
|
-- holding registers --
|
||||||
self.rtu.conenct_holding_reg(self.turbine.setDumpingMode, self.turbine.getDumpingMode)
|
self.rtu.connect_holding_reg(self.turbine.setDumpingMode, self.turbine.getDumpingMode)
|
||||||
|
|
||||||
return {
|
return self.rtu.interface()
|
||||||
rtu_interface = rtu_interface
|
|
||||||
}
|
|
||||||
end
|
end
|
||||||
|
|
||||||
return turbinev_rtu
|
return turbinev_rtu
|
||||||
|
@ -7,7 +7,7 @@ local MODBUS_FCODE = types.MODBUS_FCODE
|
|||||||
local MODBUS_EXCODE = types.MODBUS_EXCODE
|
local MODBUS_EXCODE = types.MODBUS_EXCODE
|
||||||
|
|
||||||
-- new modbus comms handler object
|
-- new modbus comms handler object
|
||||||
---@param rtu_dev rtu RTU device
|
---@param rtu_dev rtu_device|rtu_rs_device RTU device
|
||||||
---@param use_parallel_read boolean whether or not to use parallel calls when reading
|
---@param use_parallel_read boolean whether or not to use parallel calls when reading
|
||||||
modbus.new = function (rtu_dev, use_parallel_read)
|
modbus.new = function (rtu_dev, use_parallel_read)
|
||||||
local self = {
|
local self = {
|
||||||
|
27
rtu/rtu.lua
27
rtu/rtu.lua
@ -29,16 +29,20 @@ rtu.init_unit = function ()
|
|||||||
io_count_cache = { 0, 0, 0, 0 }
|
io_count_cache = { 0, 0, 0, 0 }
|
||||||
}
|
}
|
||||||
|
|
||||||
---@class rtu
|
|
||||||
local public = {}
|
|
||||||
|
|
||||||
local insert = table.insert
|
local insert = table.insert
|
||||||
|
|
||||||
|
---@class rtu_device
|
||||||
|
local public = {}
|
||||||
|
|
||||||
|
---@class rtu
|
||||||
|
local protected = {}
|
||||||
|
|
||||||
|
-- refresh IO count
|
||||||
local _count_io = function ()
|
local _count_io = function ()
|
||||||
self.io_count_cache = { #self.discrete_inputs, #self.coils, #self.input_regs, #self.holding_regs }
|
self.io_count_cache = { #self.discrete_inputs, #self.coils, #self.input_regs, #self.holding_regs }
|
||||||
end
|
end
|
||||||
|
|
||||||
-- return IO counts
|
-- return IO count
|
||||||
---@return integer discrete_inputs, integer coils, integer input_regs, integer holding_regs
|
---@return integer discrete_inputs, integer coils, integer input_regs, integer holding_regs
|
||||||
public.io_count = function ()
|
public.io_count = function ()
|
||||||
return self.io_count_cache[0], self.io_count_cache[1], self.io_count_cache[2], self.io_count_cache[3]
|
return self.io_count_cache[0], self.io_count_cache[1], self.io_count_cache[2], self.io_count_cache[3]
|
||||||
@ -49,7 +53,7 @@ rtu.init_unit = function ()
|
|||||||
-- connect discrete input
|
-- connect discrete input
|
||||||
---@param f function
|
---@param f function
|
||||||
---@return integer count count of discrete inputs
|
---@return integer count count of discrete inputs
|
||||||
public.connect_di = function (f)
|
protected.connect_di = function (f)
|
||||||
insert(self.discrete_inputs, f)
|
insert(self.discrete_inputs, f)
|
||||||
_count_io()
|
_count_io()
|
||||||
return #self.discrete_inputs
|
return #self.discrete_inputs
|
||||||
@ -70,7 +74,7 @@ rtu.init_unit = function ()
|
|||||||
---@param f_read function
|
---@param f_read function
|
||||||
---@param f_write function
|
---@param f_write function
|
||||||
---@return integer count count of coils
|
---@return integer count count of coils
|
||||||
public.connect_coil = function (f_read, f_write)
|
protected.connect_coil = function (f_read, f_write)
|
||||||
insert(self.coils, { read = f_read, write = f_write })
|
insert(self.coils, { read = f_read, write = f_write })
|
||||||
_count_io()
|
_count_io()
|
||||||
return #self.coils
|
return #self.coils
|
||||||
@ -100,7 +104,7 @@ rtu.init_unit = function ()
|
|||||||
-- connect input register
|
-- connect input register
|
||||||
---@param f function
|
---@param f function
|
||||||
---@return integer count count of input registers
|
---@return integer count count of input registers
|
||||||
public.connect_input_reg = function (f)
|
protected.connect_input_reg = function (f)
|
||||||
insert(self.input_regs, f)
|
insert(self.input_regs, f)
|
||||||
_count_io()
|
_count_io()
|
||||||
return #self.input_regs
|
return #self.input_regs
|
||||||
@ -121,7 +125,7 @@ rtu.init_unit = function ()
|
|||||||
---@param f_read function
|
---@param f_read function
|
||||||
---@param f_write function
|
---@param f_write function
|
||||||
---@return integer count count of holding registers
|
---@return integer count count of holding registers
|
||||||
public.connect_holding_reg = function (f_read, f_write)
|
protected.connect_holding_reg = function (f_read, f_write)
|
||||||
insert(self.holding_regs, { read = f_read, write = f_write })
|
insert(self.holding_regs, { read = f_read, write = f_write })
|
||||||
_count_io()
|
_count_io()
|
||||||
return #self.holding_regs
|
return #self.holding_regs
|
||||||
@ -146,7 +150,14 @@ rtu.init_unit = function ()
|
|||||||
return ppm.is_faulted()
|
return ppm.is_faulted()
|
||||||
end
|
end
|
||||||
|
|
||||||
|
-- public RTU device access
|
||||||
|
|
||||||
|
-- get the public interface to this RTU
|
||||||
|
protected.interface = function ()
|
||||||
return public
|
return public
|
||||||
|
end
|
||||||
|
|
||||||
|
return protected
|
||||||
end
|
end
|
||||||
|
|
||||||
-- RTU Communications
|
-- RTU Communications
|
||||||
|
@ -22,7 +22,7 @@ local imatrix_rtu = require("rtu.dev.imatrix_rtu")
|
|||||||
local turbine_rtu = require("rtu.dev.turbine_rtu")
|
local turbine_rtu = require("rtu.dev.turbine_rtu")
|
||||||
local turbinev_rtu = require("rtu.dev.turbinev_rtu")
|
local turbinev_rtu = require("rtu.dev.turbinev_rtu")
|
||||||
|
|
||||||
local RTU_VERSION = "alpha-v0.6.3"
|
local RTU_VERSION = "alpha-v0.6.4"
|
||||||
|
|
||||||
local rtu_t = types.rtu_t
|
local rtu_t = types.rtu_t
|
||||||
|
|
||||||
@ -122,13 +122,13 @@ for reactor_idx = 1, #rtu_redstone do
|
|||||||
-- link redstone in RTU
|
-- link redstone in RTU
|
||||||
local mode = rsio.get_io_mode(conf.channel)
|
local mode = rsio.get_io_mode(conf.channel)
|
||||||
if mode == rsio.IO_MODE.DIGITAL_IN then
|
if mode == rsio.IO_MODE.DIGITAL_IN then
|
||||||
rs_rtu.link_di(conf.channel, conf.side, conf.bundled_color)
|
rs_rtu.link_di(conf.side, conf.bundled_color)
|
||||||
elseif mode == rsio.IO_MODE.DIGITAL_OUT then
|
elseif mode == rsio.IO_MODE.DIGITAL_OUT then
|
||||||
rs_rtu.link_do(conf.channel, conf.side, conf.bundled_color)
|
rs_rtu.link_do(conf.channel, conf.side, conf.bundled_color)
|
||||||
elseif mode == rsio.IO_MODE.ANALOG_IN then
|
elseif mode == rsio.IO_MODE.ANALOG_IN then
|
||||||
rs_rtu.link_ai(conf.channel, conf.side)
|
rs_rtu.link_ai(conf.side)
|
||||||
elseif mode == rsio.IO_MODE.ANALOG_OUT then
|
elseif mode == rsio.IO_MODE.ANALOG_OUT then
|
||||||
rs_rtu.link_ao(conf.channel, conf.side)
|
rs_rtu.link_ao(conf.side)
|
||||||
else
|
else
|
||||||
-- should be unreachable code, we already validated channels
|
-- should be unreachable code, we already validated channels
|
||||||
log.error("init> fell through if chain attempting to identify IO mode", true)
|
log.error("init> fell through if chain attempting to identify IO mode", true)
|
||||||
@ -171,7 +171,7 @@ for i = 1, #rtu_devices do
|
|||||||
log.warning(message)
|
log.warning(message)
|
||||||
else
|
else
|
||||||
local type = ppm.get_type(rtu_devices[i].name)
|
local type = ppm.get_type(rtu_devices[i].name)
|
||||||
local rtu_iface = nil
|
local rtu_iface = nil ---@type rtu_device
|
||||||
local rtu_type = ""
|
local rtu_type = ""
|
||||||
|
|
||||||
if type == "boiler" then
|
if type == "boiler" then
|
||||||
|
Loading…
x
Reference in New Issue
Block a user