#399 unit waste data updating
This commit is contained in:
@@ -174,6 +174,7 @@ function iocontrol.init(conf, comms, temp_scale, energy_scale)
|
||||
|
||||
waste_mode = types.WASTE_MODE.MANUAL_PLUTONIUM,
|
||||
waste_product = types.WASTE_PRODUCT.PLUTONIUM,
|
||||
waste_stats = { 0, 0, 0 }, -- plutonium, polonium, po pellets
|
||||
|
||||
last_rate_change_ms = 0,
|
||||
turbine_flow_stable = false,
|
||||
@@ -1192,6 +1193,7 @@ function iocontrol.update_unit_statuses(statuses)
|
||||
local u_spent_rate = waste_rate
|
||||
local u_pu_rate = util.trinary(is_pu, waste_rate, 0.0)
|
||||
local u_po_rate = unit.sna_out_rate
|
||||
local u_po_pl_rate = 0
|
||||
|
||||
unit.unit_ps.publish("pu_rate", u_pu_rate)
|
||||
unit.unit_ps.publish("po_rate", u_po_rate)
|
||||
@@ -1202,6 +1204,7 @@ function iocontrol.update_unit_statuses(statuses)
|
||||
u_spent_rate = u_po_rate
|
||||
unit.unit_ps.publish("po_pl_rate", u_po_rate)
|
||||
unit.unit_ps.publish("po_am_rate", 0)
|
||||
u_po_pl_rate = u_po_rate
|
||||
po_pl_rate = po_pl_rate + u_po_rate
|
||||
elseif unit.waste_product == types.WASTE_PRODUCT.ANTI_MATTER then
|
||||
u_spent_rate = 0
|
||||
@@ -1213,6 +1216,8 @@ function iocontrol.update_unit_statuses(statuses)
|
||||
unit.unit_ps.publish("po_am_rate", 0)
|
||||
end
|
||||
|
||||
unit.waste_stats = { u_pu_rate, u_po_rate, u_po_pl_rate }
|
||||
|
||||
unit.unit_ps.publish("ws_rate", u_spent_rate)
|
||||
|
||||
pu_rate = pu_rate + u_pu_rate
|
||||
|
||||
@@ -339,6 +339,31 @@ function pocket.new_session(id, s_addr, i_seq_num, in_queue, out_queue, timeout)
|
||||
{ proc.mode, proc.burn_target, proc.charge_target, proc.gen_target }
|
||||
}
|
||||
|
||||
_send(CRDN_TYPE.API_GET_PROC, data)
|
||||
elseif pkt.type == CRDN_TYPE.API_GET_WASTE then
|
||||
local data = {}
|
||||
|
||||
-- local fac = db.facility
|
||||
-- local proc = process.get_control_states().process
|
||||
|
||||
-- unit data
|
||||
for i = 1, #db.units do
|
||||
local u = db.units[i]
|
||||
|
||||
data[i] = {
|
||||
u.waste_mode,
|
||||
u.waste_product,
|
||||
u.num_snas,
|
||||
u.sna_peak_rate,
|
||||
u.sna_max_rate,
|
||||
u.sna_out_rate,
|
||||
u.waste_stats
|
||||
}
|
||||
end
|
||||
|
||||
-- facility data
|
||||
data[#db.units + 1] = {}
|
||||
|
||||
_send(CRDN_TYPE.API_GET_PROC, data)
|
||||
else
|
||||
log.debug(log_tag .. "handler received unsupported CRDN packet type " .. pkt.type)
|
||||
|
||||
@@ -19,7 +19,7 @@ local renderer = require("coordinator.renderer")
|
||||
local sounder = require("coordinator.sounder")
|
||||
local threads = require("coordinator.threads")
|
||||
|
||||
local COORDINATOR_VERSION = "v1.5.15"
|
||||
local COORDINATOR_VERSION = "v1.5.16"
|
||||
|
||||
local CHUNK_LOAD_DELAY_S = 30.0
|
||||
|
||||
|
||||
Reference in New Issue
Block a user