DL-06 question.....

David_Emmerich

Lifetime Supporting Member
Join Date
Sep 2002
Location
Smiths Grove, KY
Posts
671
Hi group....I am using two Bailiff laser distance sensors to monitor and control the level of damp cement mix in a divided hopper...they work great....and I am reading the levels as a 0-10vdc input into a 4 channel analog card in slot # 1 in a DL-06. The short little program that I wrote is working just fine, but.....now the block plant guys want to be able to change the setpoints for when the "SEND MORE MIX" signal is sent to the batch controller system.

I am using the "greater than or equal" and the "less than" contacts to trigger this action, w/ a 3 sec filter to debounce the 0-10vdc signal. I think that what I need to do is load the image at v2000 and v2001 and compare them w/ a setpoint stored in , say, v3000 and v3001,....but it appears that my only outputs for this action are the pointers at 'S60, S61, and S62'...



HELP !!!!!!!!!!!

If I can figure out how to post code here or at Ron's I'll let you know....It's terrible how much you forget when you don't do something often...except get older....

Thanks in advance,

David Code:
PLC 06

// Rung 1
// Address 0
#BEGIN COMMENT
"THIS IS A NEW PROGRAM FOR THE BOWLING GREEN BLOCK PLANT."
"WRTTEN 31 AUGUST 2007 BY DAVID D. EMMERICH."
"VER.:: DDE:5:A"
""
"THIS RUNG SETS UP ALL THE CONDITIONS TO READ THE MATERIAL LEVELS IN "
"THE BLENDING HOPPER USING THE TWO LASER DISTANCE SENSORS."
#END
STR SP0
LD K8400
OUT V700
LDA O2000
OUT V701

// Rung 2
// Address 5
STR SP1
AND V2000 K525
OUT C100

// Rung 3
// Address 9
STR SP1
ANDN V2000 K300
OUT C101

// Rung 4
// Address 13
STR SP1
AND V2001 K600
OUT C102

// Rung 5
// Address 17
STR SP1
ANDN V2001 K300
OUT C103

// Rung 6
// Address 21
#BEGIN COMMENT
"RUNGS 6,7,8,9 ARE FILTERS TO STOP CHATTER IN THE LEVEL INDICATORS."
#END
STR C100
TMR T100 K30

// Rung 7
// Address 25
STR C101
TMR T101 K30

// Rung 8
// Address 29
STR C102
TMR T102 K30

// Rung 9
// Address 33
STR C103
TMR T103 K30

// Rung 10
// Address 37
#BEGIN COMMENT
"RUNGS 10, 11, 12, 13 TURN ON THE LEVEL INDICATORS AFTER BEING RUN "
"THRU THE FILTERS ABOVE."
#END
STR C100
AND T100
OUT Y0

// Rung 11
// Address 40
STR C101
AND T101
OUT Y1

// Rung 12
// Address 43
STR C102
AND T102
OUT Y2

// Rung 13
// Address 46
STR C103
AND T103
OUT Y3

// Rung 14
// Address 49
STR X0
AND X21
ANDN X7
ANDN X10
AND X5
OUT C0

// Rung 15
// Address 55
STRN X0
AND X7
AND X21
ANDN Y5
OUT Y6

// Rung 16
// Address 60
STRN X0
AND X10
AND X21
ANDN Y7
OUT Y10

// Rung 17
// Address 65
STR X0
AND C0
AND X21
AND X23
STRN X0
AND X15
AND X21
ORSTR
ANDN Y6
OUT Y5

// Rung 18
// Address 75
STR X0
AND C0
AND X21
STRN X0
AND X16
AND X21
ORSTR
ANDN Y10
OUT Y7

// Rung 19
// Address 84
STR X2
AND X3
AND Y0
OUT C3

// Rung 20
// Address 88
STR X2
AND X4
AND Y2
OUT C4

// Rung 21
// Address 92
STRN X1
AND X3
AND Y0
OUT C5

// Rung 22
// Address 96
STR C3
OR C4
OR C5
OUT Y4

// Rung 23
// Address 100
STR C3
TMR T3 K30

// Rung 24
// Address 104
STR C3
AND T3
ANDN T6
OUT Y13
TMR T6 K30

// Rung 25
// Address 111
STR C4
TMR T4 K30

// Rung 26
// Address 115
STR C4
AND T4
ANDN T16
OUT Y14
TMR T16 K30

// Rung 27
// Address 122
#BEGIN COMMENT
"THE NEXT FOUR RUNGS ARE RUN TIME COUNTERS FOR THE TWO BELTS."
"DO NOT MESS!!!!"
"ZERO ON 31 AUG 2007"
#END
STR X22
AND SP4
STR X60
ORE CTA22 K5000
CNT CT22 K5000

// Rung 28
// Address 130
STR CT22
STR X60
CNT CT44 K9999

// Rung 29
// Address 135
STR X23
AND SP4
STR X60
ORE CTA23 K5000
CNT CT23 K5000

// Rung 30
// Address 143
STR CT23
STR X60
CNT CT46 K9999

// Rung 31
// Address 148
STR SP1
AND V3000 K525
OUT Y30

// Rung 32
// Address 152
STR SP1
LDD V2000
CMPD V3000

// Rung 33
// Address 155
STR S60
OUT Y60

// Rung 34
// Address 157
STR S61
OUT Y61

// Rung 35
// Address 159
STR S62
OUT Y62

// Rung 36
// Address 161
END

// Rung 37
// Address 162
NOP


#BEGIN ELEMENT_DOC
"X0","BELTS IN AUTO","","ALL THE H.O.A. SW'S ARE IN AUTO"
"X1","ONE COLOR MIX","",""
"X2","TWO COLOR MIX","",""
"X3","DIVERTER @ WALL","",""
"X4","DIVERTER @ BELT","",""
"X5","B.M HOPPER PROBE","",""
"X6","START BOTH FWD","",""
"X7","START FLAT REV","",""
"X10","START INCLNE REV","",""
"X11","VIBRATORS ON","",""
"X15","HAND FLAT FWD","",""
"X16","HAND INCLN FWD","",""
"X21","ESTOP ON B. M.","",""
"X22","FLAT RUNNING","",""
"X23","INCLINE RUNNING","",""
"X60","WHEN PIGS FLY","",""
"Y0","TRACK SIDE EMPTY","",""
"Y1","TRACK SIDE FULL","",""
"Y2","OFFICE SIDE MTY","",""
"Y3","OFFICE SIDE FULL","",""
"Y4","TO GSE MIXER DIS","",""
"Y5","RUN FLAT FWD","",""
"Y6","RUN FLAT REV","",""
"Y7","RUN INCLINE FWD","",""
"Y10","RUN INCLINE REV","",""
"Y11","DIVTR TO WALL","",""
"Y12","DIVTR TO BELT","",""
"Y13","RUN T.S. VIB SOL","",""
"Y14","RUN O.S. VIB SOL","",""
"C0","RUN BOTH BELTS","",""
"C3","AT THE WALL","DIVERTER","TRACK SIDE EMPTY AND"
"C4","AT THE BELT","DIVERTER","OFFICE SIDE EMPTY AND"
"C5","AT THE WALL 2","DIVERTER",""
"C100","CR FOR Y0 FILTER","",""
"C101","CR FOR Y1 FILTER","",""
"C102","CR FOR Y2 FILTER","",""
"C103","CR FOR Y3 FITER","",""
"T100","Y0 FILTER TIMER","",""
"T101","Y1 FILTER TIMER","",""
"T102","Y2 FILTER TIMER","",""
"T103","Y3 FILTER TIMER","",""
"CT22","FLAT RUN TIME""A""","",""
"CT23","INCLN RUN TIME""A","",""
"CT44","FLAT RUN TIME B","",""
"CT46","INCLN RUN TIME B","",""
"V701","BIN HEIGHTS","",""
"CTA22","AUTO RESET 22","",""
"CTA23","AUTO RESET 23","",""
"V1210","TRACK BIN","",""
"V1214","T.S. SETPOINT","",""
"V1220","OFFICE BIN","",""
"V1224","O.S.SETPOINT","",""
"V2000","T.S.LASER LEVEL","",""
"V2001","O.S.LASER LEVEL","",""

#END


Start new topic
 
David,


For those unfamilar with the DL-06, we are talking about the CMPD (Compare Double) starting on Rung 32, which has the following description:

The Compare Double (CMPRD) instruction is a 32-bit instruction that compares the value in the accumulator with the value (Aaaa), which is an 8-digit (max.) constant. The corresponding status flag will be turned on indicating the result of the comparison.

Discrete Bit Flags
SP60 On when the value in the accumulator is less than the instruction value.
SP61 On when the value in the accumulator is equal to the instruction value.
SP62 On when the value in the accumulator is greater than the instruction value.
NOTE: The status flags are only valid until another instruction that uses the same flags is executed.
It appears okay so far. Now you have three outputs Y60 (for V2000 Less Than V3000, Y61 for V2000 Equal To V3000, and Y62 for V2000 Greater Than V3000. If you want "Less Than or equal To", simply put SP60 and SP61 in parallel branches.

I can't see how you are converting the Comparison to a 0-10 volt signal. If you would ZIP and post the 5 or 6 DL-06 program files, I could view them directly and perhaps would have some more comments.
 
Thanks Ron and Lancie,.....Eric also showed me an easy way to do what I needed to do.I will repost the changes later today here, after I plug it into the system.
Thanks again,

David
 
David,

I noticed you are using a "when pigs fly" sensor at X60. I have been looking to source some of these for a project management would like me to do. Where to you get your sensors from?;)
 

Similar Topics

OK. You guys helped me out a bunch with my first Siemens question. I found a bunch of issues with integrity checking the PLC programs I was...
Replies
3
Views
105
Hi all, Writng a FB in ST on Beckhoff TC for a pulser which turns on and off on a cycle, is paused by turning bControlInput to FALSE, but resumes...
Replies
4
Views
93
Hello folks! Never been here before but I have a question that's been bugging me for a while. I recently got a job at a chemical plant that's...
Replies
8
Views
282
I am currently backing a Micro Logix 1100 and no-one seems to have the file for me to upload from. Is there a way for me to upload the project off...
Replies
15
Views
341
Good morning crew! Ok my logic works but I am missing something. When the start button is pushed it should like the red light for 4sec then shut...
Replies
13
Views
344
Back
Top Bottom