Add config file and refactor windows
This commit is contained in:
@@ -5,7 +5,7 @@ namespace PamhagenSysCtrl.Helpers {
|
||||
|
||||
public record struct SensorStates(
|
||||
long PressureSensors,
|
||||
(FillState A1, FillState A2, FillState Press1, FillState Press2) FillingLevels,
|
||||
(FillState MW1, FillState MW2, FillState Press1, FillState Press2) FillingLevels,
|
||||
int TroughSelector,
|
||||
double GradationOe,
|
||||
FillState[] FillingLevelTanks,
|
||||
@@ -17,7 +17,7 @@ namespace PamhagenSysCtrl.Helpers {
|
||||
public record struct ActuatorStates(
|
||||
long Valves,
|
||||
MotorState MP1, MotorState MP2, MotorState P12, MotorState P3, MotorState P4, MotorState P5, MotorState P6,
|
||||
bool TroughAuger, bool Rebler, bool StirrerA1, bool StirrerA2, bool Belt, bool Auger1, bool Auger2, bool GradationPump
|
||||
bool TroughAuger, bool Rebler, bool StirrerMW1, bool StirrerMW2, bool Belt, bool Auger1, bool Auger2, bool GradationPump
|
||||
) {
|
||||
public readonly bool GetV(int n) => (Valves & (1L << (n - 1))) != 0;
|
||||
public void SetV(int n, bool val) {
|
||||
@@ -107,11 +107,11 @@ namespace PamhagenSysCtrl.Helpers {
|
||||
long pressure = (long)r1 | ((long)r2 << 16) | ((long)r3 << 32) | ((long)r4 << 48);
|
||||
pressure = (pressure & 0x01FFFFFFFFFFFFFF) | ((pressure & 0x0600000000000000) << 1);
|
||||
|
||||
var a1 = Int3ToFillState((f1 ) & 0x7); // 111 011 001 000
|
||||
var a2 = Int3ToFillState((f1 >> 3) & 0x7); // 111 011 001 000
|
||||
var p1 = Int1ToFillState((f1 >> 6) & 0x1); // 1 0
|
||||
var p2 = Int1ToFillState((f1 >> 7) & 0x1); // 1 0
|
||||
var wp = ((f1 >> 8) & 0x3); // 10 01
|
||||
var mw1 = Int3ToFillState((f1 ) & 0x7); // 111 011 001 000
|
||||
var mw2 = Int3ToFillState((f1 >> 3) & 0x7); // 111 011 001 000
|
||||
var p1 = Int1ToFillState((f1 >> 6) & 0x1); // 1 0
|
||||
var p2 = Int1ToFillState((f1 >> 7) & 0x1); // 1 0
|
||||
var wp = ((f1 >> 8) & 0x3); // 10 01
|
||||
|
||||
// Masseligerät : 4mA => 50 Oe
|
||||
// 20mA => 150 Oe
|
||||
@@ -137,7 +137,7 @@ namespace PamhagenSysCtrl.Helpers {
|
||||
var t9 = Int1ToFillState((f2 >> 13) & 0x1); // 1 0
|
||||
var q1 = Int1ToPumpState((f2 >> 15) & 0x1); // 1 0
|
||||
|
||||
return new SensorStates(pressure, (a1, a2, p1, p2), wp == 3 ? -1 : wp == 1 ? 2 : wp == 2 ? 1 : 0, oe, [t1, t2, t3, t4, t5, t6, t7, t8, t9], q1);
|
||||
return new SensorStates(pressure, (mw1, mw2, p1, p2), wp == 3 ? -1 : wp == 1 ? 2 : wp == 2 ? 1 : 0, oe, [t1, t2, t3, t4, t5, t6, t7, t8, t9], q1);
|
||||
}
|
||||
|
||||
protected async Task<(ushort RW000, ushort RW001, ushort RW002, ushort RW003, ushort RW004, ushort RW005, ushort RW006)> ReadOutputRegisters() {
|
||||
@@ -210,8 +210,8 @@ namespace PamhagenSysCtrl.Helpers {
|
||||
(state.TroughAuger ? 0x01 : 0x00) |
|
||||
(state.Rebler ? 0x02 : 0x00) |
|
||||
(state.GetV(58) ? 0x04 : 0x00) |
|
||||
(state.StirrerA1 ? 0x08 : 0x00) |
|
||||
(state.StirrerA2 ? 0x10 : 0x00) |
|
||||
(state.StirrerMW1 ? 0x08 : 0x00) |
|
||||
(state.StirrerMW2 ? 0x10 : 0x00) |
|
||||
(state.Belt ? 0x20 : 0x00) |
|
||||
(state.Auger1 ? 0x40 : 0x00) |
|
||||
(state.Auger2 ? 0x80 : 0x00);
|
||||
|
||||
Reference in New Issue
Block a user