bernie_carlton
Lifetime Supporting Member + Moderator
Actually I see that I forgot to add in the math for creating V2000 as the combined hour/minute information. But just grab it from earlier in the thread.
At the bottom of Rung 3, it seems like if the clock register V7770 is not set properly, then V2000 will always be zero:I am concerned that V2000 remains zero.
PLC 440
// Rung 1
// Address 0
#BEGIN COMMENT
""
" 24-hr clock value for use in Time-of-day operations."
""
"Rung 1 updates the clock value once per second"
#END
STR "_1Second"
PD C0
// Rung 2
// Address 2
#BEGIN COMMENT
"Rung 2 loads the 'Hours' value, shifts it left by 2 digits, and adds the 'Minutes' value, "
"resulting in a Time-of-Day value in HHMM format."
#END
STR C0
LD V7770
SHFL K8
ADD V7767
OUT V2000
// Rung 3
// Address 8
#BEGIN COMMENT
"RUNG 3 -9 PROVIDES UP TO 7 TIME BANKS PER ROOM THAT CAN BE SELECTED "
"BY HMI PUSHBUTTONS"
""
"Typical ""Constant Time Each Day"" rung."
#END
STR V2000 K700
ANDN V2000 K1300
OUT "TIME BANK 1"
// Rung 4
// Address 13
#BEGIN COMMENT
"Typical ""Constant Time Each Day"" rung."
#END
STR V2000 K700
ANDN V2000 K1400
OUT "TIME BANK 2"
// Rung 5
// Address 18
#BEGIN COMMENT
"Typical ""Constant Time Each Day"" rung."
#END
STR V2000 K700
ANDN V2000 K1500
OUT "TIME BANK 3"
// Rung 6
// Address 23
#BEGIN COMMENT
"Typical ""Constant Time Each Day"" rung."
#END
STR V2000 K700
ANDN V2000 K1600
OUT "TIME BANK 4"
// Rung 7
// Address 28
#BEGIN COMMENT
"Typical ""Constant Time Each Day"" rung."
#END
STR V2000 K700
ANDN V2000 K1700
OUT "TIME BANK 5"
// Rung 8
// Address 33
#BEGIN COMMENT
"Typical ""Constant Time Each Day"" rung."
#END
STR V2000 K700
ANDN V2000 K1800
OUT "TIME BANK 6"
// Rung 9
// Address 38
#BEGIN COMMENT
"Typical ""Constant Time Each Day"" rung."
#END
STR V2000 K700
ANDN V2000 K1900
OUT "TIME BANK 7"
// Rung 10
// Address 43
#BEGIN COMMENT
"ROOM 1 HMI CONTROLS. "
"MAN LIGHTS ON, MAN KILL LIGHTS, AUTO, WEEKDAYS ARE DEFAULT, "
"WEEKENDS ARE TOGGLED BY HMI SELECTION, PUSHBUTTONS TO SELECT "
"TIME BANK,"
#END
STRN "ROOM 1 AUTO"
ANDN "ROOM 1 MAN KILL"
STR "ROOM 1 AUTO"
AND "TIME BANK 1"
ORSTR
STR "ROOM 1 AUTO"
AND "TIME BANK 2"
ORSTR
STR "ROOM 1 AUTO"
AND "TIME BANK 3"
ORSTR
STR "ROOM 1 AUTO"
AND "TIME BANK 4"
ORSTR
STR "ROOM 1 AUTO"
AND "TIME BANK 5"
ORSTR
STR "ROOM 1 AUTO"
AND "TIME BANK 6"
ORSTR
STR "ROOM 1 AUTO"
AND "TIME BANK 7"
ORSTR
STRN "KILL SATURDAY"
ANDN "KILL SUNDAY"
OR "ENABLE SATURDAY"
OR "ENABLE SUNDAY"
ANDSTR
OUT "ROOM 1 OUTPUT"
// Rung 11
// Address 72
END
// Rung 12
// Address 73
NOP
// Rung 13
// Address 74
NOP
// Rung 14
// Address 75
NOP
#BEGIN ELEMENT_DOC
"Y0","ROOM 1 OUTPUT","",""
"Y1","","","ROOM 1"
"C1","TIME BANK 1","",""
"C2","TIME BANK 2","",""
"C3","TIME BANK 3","",""
"C4","TIME BANK 4","",""
"C5","TIME BANK 5","",""
"C6","TIME BANK 6","",""
"C7","TIME BANK 7","",""
"C10","ROOM 1 AUTO","",""
"C11","ROOM 1 MAN KILL","",""
"C100","KILL SATURDAY","",""
"C101","KILL SUNDAY","",""
"C102","ENABLE SATURDAY","","HMI TOGGLE ENABLE SAT"
"C103","ENABLE SUNDAY","","HMI TOGGLE ENABLE SUNDAY"
"V2000","","","TIME OF DAY"
"V3000","","","DAY FROM HMI"
"V3010","","","TIME ON FROM HMI"
"V3020","","","TIME OFF FROM HMI"
"V7771","","","ACTUAL DAY OF WEEK"
#END