mirror of
https://github.com/metrostroi-repo/MetrostroiAddon.git
synced 2026-05-02 00:42:29 +00:00
Temporary commit just to switch to the base branch
This commit is contained in:
@@ -75,13 +75,14 @@ function TRAIN_SYSTEM:Initialize(parameters,extra_parameters)
|
||||
-- Should relay be spring-returned to initial position
|
||||
parameters.returns = parameters.returns or (not parameters.latched)
|
||||
-- Trigger level for the relay
|
||||
parameters.trigger_level = parameters.trigger_level or 0.2*math.random() + 0.4
|
||||
--parameters.trigger_level = parameters.trigger_level or 0.15*math.random() + 0.2
|
||||
parameters.trigger_level = parameters.trigger_level or 0.002*math.random() + 0.001 -- 100–300 mA in percentage of 80 A (coil hold current)
|
||||
-- relay coil resistance, Ohm
|
||||
parameters.coil_res = parameters.coil_res or math.random(100,300)
|
||||
for k,v in pairs(parameters) do
|
||||
self[k] = v
|
||||
end
|
||||
|
||||
|
||||
|
||||
----------------------------------------------------------------------------
|
||||
-- Relay parameters
|
||||
if self.close_time == 0 then
|
||||
@@ -289,6 +290,11 @@ function TRAIN_SYSTEM:Think(dT)
|
||||
self.Value = self.TargetValue
|
||||
self.SpuriousTripTimer = nil
|
||||
end
|
||||
-- Register new relay as current consumer
|
||||
if self.Train.Battery and self.Train.Battery.Consumers and not self.Train.Battery.Consumers[self] then
|
||||
--print("Registering relay",self, "Train: ", self.Train)
|
||||
self.Train.Battery.Consumers[self] = {0,self.coil_res}
|
||||
end
|
||||
-- Switch relay
|
||||
if self.ChangeTime and (self.Time > self.ChangeTime) and not self.SpuriousTripTimer then
|
||||
-- Electropneumatic relays make this sound
|
||||
@@ -340,6 +346,7 @@ function TRAIN_SYSTEM:Think(dT)
|
||||
end
|
||||
end
|
||||
self.Value = self.TargetValue
|
||||
self.Train.Battery.Consumers[self][1] = self.Value
|
||||
self.ChangeTime = nil
|
||||
|
||||
-- Age relay a little
|
||||
|
||||
Reference in New Issue
Block a user