Legacy Hardware and Apps
Voltage Trigger

Good day to you all.

I would like to ask how to do the following:-

I have 3 voltage inputs which will either be 0 or 5 VDC.
I would like to know how to use these inputs to trigger a point on a chart from a PT100 thermistor.

I would also like to ask, is there a switchable output from the DT800 giving 10 VDC output on command and If so how would it be activated?

Please can all responses be based on using the compiler only.

Many thanks.
James W.

Good day to you all. I would like to ask how to do the following:- I have 3 voltage inputs which will either be 0 or 5 VDC. I would like to know how to use these inputs to trigger a point on a chart from a PT100 thermistor. I would also like to ask, is there a switchable output from the DT800 giving 10 VDC output on command and If so how would it be activated? Please can all responses be based on using the compiler only. Many thanks. James W.

Hi James,

What do you mean about using compiler only?
Anyway, I will try to answer your question based on dataTaker native language.

  1. Do you mean you want to use voltage reading to trigger temperature sensor reading?

  2. DT800 has one switchable output up to 10V, you can activate this output using VO syntax.
    VO=1000 means trigger voltage output 1000 mV

Best regards,
Rudy Gunawan

Hi James, What do you mean about using compiler only? Anyway, I will try to answer your question based on dataTaker native language. 1. Do you mean you want to use voltage reading to trigger temperature sensor reading? 2. DT800 has one switchable output up to 10V, you can activate this output using VO syntax. VO=1000 means trigger voltage output 1000 mV Best regards, Rudy Gunawan

Hi Rudy,
Thank you for replying to my question.

I have not yet been trained to program the DT800 using text commands, only the built in program builder (the compiler) as shown in the attached PDF. Hopefully it will describe it better than I can.

I have also attached the circuit diagram I wish use as well. As you will see I have 3 switches and what I want to happen is this:-

  1. When each switch closes or opens the temperature on a PT100 thermistor will be recorded for each switch.
  2. When all switches have opened in any order to energise the 10VDC output.
  3. When all switches have closed in any order to disconnect the 10VDC output.
  4. With this switching operation, I want it not to count switching’s but to monitor that it is all three and not 1 switch switching three times.

We had a program like this but it was written by a colleague that is no longer work with us. He used the digital input to trigger the reading of the PT100, but this only gave us the capability of using a maximum of 9 switches. I have only described 3 switches in my notes but we would like to grow this to a maximum of 14 switches when we have it working.

I hope I have explained things better and look forward to your reply.

5caafcc68a973
5caafcc9cf4a0

Many thanks, James W.

Hi Rudy, Thank you for replying to my question. I have not yet been trained to program the DT800 using text commands, only the built in program builder (the compiler) as shown in the attached PDF. Hopefully it will describe it better than I can. I have also attached the circuit diagram I wish use as well. As you will see I have 3 switches and what I want to happen is this:- 1. When each switch closes or opens the temperature on a PT100 thermistor will be recorded for each switch. 2. When all switches have opened in any order to energise the 10VDC output. 3. When all switches have closed in any order to disconnect the 10VDC output. 4. With this switching operation, I want it not to count switching’s but to monitor that it is all three and not 1 switch switching three times. We had a program like this but it was written by a colleague that is no longer work with us. He used the digital input to trigger the reading of the PT100, but this only gave us the capability of using a maximum of 9 switches. I have only described 3 switches in my notes but we would like to grow this to a maximum of 14 switches when we have it working. I hope I have explained things better and look forward to your reply. ![5caafcc68a973](serve/attachment&path=5caafcc68a973) ![5caafcc9cf4a0](serve/attachment&path=5caafcc9cf4a0) Many thanks, James W.

Hi all,
I think I have answered my own question.

Please find attached a text version of the program I built.
I think this will work but I would like it checked before I run it. If anyone can have a look for me that would be great.

'JOB=JOB1
'COMPILED=2014/09/02 11:53:05
'deLogger generated program file for dataTaker 8 series
DT=\d
BEGIN"JOB1"
CATTN
'Spans and polynomial declarations
S1=0,100,0,5000
S2=0,100,0,5000
S3=0,100,0,5000
S4=0,100,0,5000
S5=0,100,0,5000
'Thermistor declarations
'Switches declarations
'Parameter declarations
P31=3
P47=5
'Global declarations
RS1S
'main schedule definitions
'schedule definition
RA1S LOGONA GA
1PT385(4W,"CH 01 TEMP ",NL)
2V(S1,"CH 02 T-01",W)
3V(S2,"CH 03 T-02",NL)
4V(S3,"CH 04 T-03",NL)
5V(S4,"CH 05 T-04",NL)
VO=1000
6CV("CV 06",W)=2V+3V+4V+5V=>400=VO=1000
7CV("CV 07",W)=2V+3V+4V+5V=<100=VO=0000
8CV("CV 08",NL)=2V=>100=1PT385(4w) OR 2V=<10=1PT385(4W)
9CV("CV 08",NL)=3V=>100=1PT385(4w) OR 3V=<10=1PT385(4W)
10CV("CV 08",NL)=4V=>100=1PT385(4w) OR 4V=<10=1PT385(4W)
11CV("CV 08",NL)=5V=>100=1PT385(4w) OR 5V=<10=1PT385(4W)
END
'end of program file

Many thanks.
James w.

Hi all, I think I have answered my own question. Please find attached a text version of the program I built. I think this will work but I would like it checked before I run it. If anyone can have a look for me that would be great. _&#039;JOB=JOB1 &#039;COMPILED=2014/09/02 11:53:05 &#039;deLogger generated program file for dataTaker 8 series DT=\d BEGIN&quot;JOB1&quot; CATTN &#039;Spans and polynomial declarations S1=0,100,0,5000 S2=0,100,0,5000 S3=0,100,0,5000 S4=0,100,0,5000 S5=0,100,0,5000 &#039;Thermistor declarations &#039;Switches declarations &#039;Parameter declarations P31=3 P47=5 &#039;Global declarations RS1S &#039;main schedule definitions &#039;schedule definition RA1S LOGONA GA 1PT385(4W,&quot;CH 01 TEMP &quot;,NL) 2V(S1,&quot;CH 02 T-01&quot;,W) 3V(S2,&quot;CH 03 T-02&quot;,NL) 4V(S3,&quot;CH 04 T-03&quot;,NL) 5V(S4,&quot;CH 05 T-04&quot;,NL) VO=1000 6CV(&quot;CV 06&quot;,W)=2V+3V+4V+5V=&gt;400=VO=1000 7CV(&quot;CV 07&quot;,W)=2V+3V+4V+5V=&lt;100=VO=0000 8CV(&quot;CV 08&quot;,NL)=2V=&gt;100=1PT385(4w) OR 2V=&lt;10=1PT385(4W) 9CV(&quot;CV 08&quot;,NL)=3V=&gt;100=1PT385(4w) OR 3V=&lt;10=1PT385(4W) 10CV(&quot;CV 08&quot;,NL)=4V=&gt;100=1PT385(4w) OR 4V=&lt;10=1PT385(4W) 11CV(&quot;CV 08&quot;,NL)=5V=&gt;100=1PT385(4w) OR 5V=&lt;10=1PT385(4W) END &#039;end of program file_ Many thanks. James w.

Hi James,

  • NL option means you do not log the result, while W option means no log, no display and no return to host PC (that line with W is just working in the background).
  • Attenuation option (A) must be enabled if you want to reach above 3V while staying in mV (5000 mV), other wise you need to use high voltage option and change the scaling to S1=0,100,0,5
  • I believe VO=1000 is your initialization, therefore it must be defined before schedule A (immediate schedule)
  • You can't use channel declaration (i.e.: 1V) directly into the formula, you must use channel variable (i.e.: 2CV)
  • It seems you want to use several conditional statement but ended up using CV channel

Example:
'this line will read RTD without logging it
1PT385(4W,"CH 01 TEMP ",NL)

'this line will read voltage channel in the background (no log, no display and no return to host)
2V(S1,"CH 02 T-01",W)
...
'I don't understand about this formula
6CV("CV 06",W)=2V+3V+4V+5V=>400=VO=1000

'Could it be you want to enable output voltage at 1000 mV if 2V+3V+4V+5V greater or equal to 400?
'In that case IF(2V+3V+4V+5V=>400){VO100} should be used.
'The above conditional statement must be written in USER channel.

Notes:
You can use a single scaling since all your voltage reading has the same scaling.

Best regards,
Rudy Gunawan

Hi James, - NL option means you do not log the result, while W option means no log, no display and no return to host PC (that line with W is just working in the background). - Attenuation option (A) must be enabled if you want to reach above 3V while staying in mV (5000 mV), other wise you need to use high voltage option and change the scaling to S1=0,100,0,5 - I believe VO=1000 is your initialization, therefore it must be defined before schedule A (immediate schedule) - You can&#039;t use channel declaration (i.e.: 1V) directly into the formula, you must use channel variable (i.e.: 2CV) - It seems you want to use several conditional statement but ended up using CV channel Example: &#039;this line will read RTD without logging it 1PT385(4W,&quot;CH 01 TEMP &quot;,NL) &#039;this line will read voltage channel in the background (no log, no display and no return to host) 2V(S1,&quot;CH 02 T-01&quot;,W) ... &#039;I don&#039;t understand about this formula 6CV(&quot;CV 06&quot;,W)=2V+3V+4V+5V=&gt;400=VO=1000 &#039;Could it be you want to enable output voltage at 1000 mV if 2V+3V+4V+5V greater or equal to 400? &#039;In that case IF(2V+3V+4V+5V=&gt;400){VO100} should be used. &#039;The above conditional statement must be written in USER channel. Notes: You can use a single scaling since all your voltage reading has the same scaling. Best regards, Rudy Gunawan

Hi Rudy, Thanks for all your help to date.
I think I will start from the beginning. How do I achieve the following:-

  1. When a voltage input on an analog channel reaches a set voltage. How do I get the Delogger to record the temperature from a PT100 4 wire thermistor on a chart and in a form? Only at the point when the voltage state changes. I.e. Voltage increases to 3500 MV and the temperature of the thermistor is recorded. After 4 minutes the voltage drops to 1000 MV and the temperature of the thermistor is recorded again. This continues until the program is halted. I look forward to your reply?

Many, Many thanks.
James W.

Hi Rudy, Thanks for all your help to date. I think I will start from the beginning. How do I achieve the following:- 1. When a voltage input on an analog channel reaches a set voltage. How do I get the Delogger to record the temperature from a PT100 4 wire thermistor on a chart and in a form? Only at the point when the voltage state changes. I.e. Voltage increases to 3500 MV and the temperature of the thermistor is recorded. After 4 minutes the voltage drops to 1000 MV and the temperature of the thermistor is recorded again. This continues until the program is halted. I look forward to your reply? Many, Many thanks. James W.

Hi James,

This requirement might involve a complex program because your RTD reading is bound to voltage reading
I try to explain the concept step by step:

  1. Getting the voltage reading
  2. Assumed you have a voltage sensor connected to terminal 1+ and 1- and is bound by a schedule
  3. Since your voltage has a limit of 5 V and you want to express it in mV, attenuate option must be activated.
  4. Because you want to weight the result, you need to save it to channel variable (i.e.: 1CV)

RA1M
1V("Voltage~V",A,=1CV)

  1. Getting the RTD reading
  2. You need to use another schedule to read RTD
  3. Because this reading depend on voltage level you need to set this schedule to run manually
  4. assumed RTD is being read from terminal 2

RBX
2PT385("Temperature~degC")

  1. Conditional statement to link both reading
  2. The first conditional statement has an upper limit of 3500 mV
  3. You will weight voltage reading on 1CV, when the condition is met run schedule B (XB)

IF(1CV>3500){XB}

  • The second conditional statement has a lower limit of 1000 mV
  • You will weight voltage reading on 1CV, when the condition is met run schedule B (XB)

IF(1CV<1000){XB}

The above logic will record RTD only when the voltage reading pass a certain point, because schedule A run every minute the RTD record will also run every minute.
If you need to have a single reading then the logic must be changed.

Best regards,
Rudy Gunawan

Hi James, This requirement might involve a complex program because your RTD reading is bound to voltage reading I try to explain the concept step by step: 1. Getting the voltage reading - Assumed you have a voltage sensor connected to terminal 1+ and 1- and is bound by a schedule - Since your voltage has a limit of 5 V and you want to express it in mV, attenuate option must be activated. - Because you want to weight the result, you need to save it to channel variable (i.e.: 1CV) RA1M 1V(&quot;Voltage~V&quot;,A,=1CV) 2. Getting the RTD reading - You need to use another schedule to read RTD - Because this reading depend on voltage level you need to set this schedule to run manually - assumed RTD is being read from terminal 2 RBX 2PT385(&quot;Temperature~degC&quot;) 3. Conditional statement to link both reading - The first conditional statement has an upper limit of 3500 mV - You will weight voltage reading on 1CV, when the condition is met run schedule B (XB) IF(1CV&gt;3500){XB} - The second conditional statement has a lower limit of 1000 mV - You will weight voltage reading on 1CV, when the condition is met run schedule B (XB) IF(1CV&lt;1000){XB} The above logic will record RTD only when the voltage reading pass a certain point, because schedule A run every minute the RTD record will also run every minute. If you need to have a single reading then the logic must be changed. Best regards, Rudy Gunawan
42
7
3
live preview
enter atleast 10 characters
WARNING: You mentioned %MENTIONS%, but they cannot see this message and will not be notified
Saving...
Saved
With selected deselect posts show selected posts
All posts under this topic will be deleted ?
Pending draft ... Click to resume editing
Discard draft