Add py script for voltage drop calcs
This commit is contained in:
49
power_calcs.py
Normal file
49
power_calcs.py
Normal file
@@ -0,0 +1,49 @@
|
||||
#!/usr/bin/python
|
||||
|
||||
import sys
|
||||
|
||||
cabletype = sys.argv[1]
|
||||
voltage_limit = 11.5
|
||||
|
||||
cable_size = {
|
||||
"13": 1.5,
|
||||
"16": 2.5,
|
||||
"32": 6.0,
|
||||
"63": 16,
|
||||
}
|
||||
single_phase = {
|
||||
1.5: 31,
|
||||
2.5: 19,
|
||||
6.0: 7.9,
|
||||
16: 2.9,
|
||||
}
|
||||
three_phase = {
|
||||
1.5: 27,
|
||||
2.5: 16,
|
||||
6.0: 6.8,
|
||||
16: 2.5,
|
||||
}
|
||||
|
||||
drop = 0
|
||||
if "/3" in cabletype:
|
||||
drop = three_phase[cable_size[cabletype[:-2]]]
|
||||
else:
|
||||
drop = single_phase[cable_size[cabletype]]
|
||||
|
||||
print("Voltage Drop (per ampere per metre): {}mV/A/m".format(drop))
|
||||
|
||||
assumed_load = int(sys.argv[2])
|
||||
length = int(sys.argv[3])
|
||||
|
||||
total_drop = drop * assumed_load * length / 1000
|
||||
|
||||
print("Total drop at {}A over {}m is: {}V".format(assumed_load, length, total_drop))
|
||||
if total_drop > voltage_limit:
|
||||
print("FAILED: VOLTAGE DROP TOO HIGH")
|
||||
max_length = (voltage_limit * 1000) / (drop * assumed_load)
|
||||
print("Maximum length of cable at this load: {}m".format(int(max_length)))
|
||||
|
||||
r = total_drop / assumed_load
|
||||
pfc = 230 / r
|
||||
|
||||
print("Estimated PFC is {:.1f}A".format(pfc))
|
||||
Reference in New Issue
Block a user