Show Posts

This section allows you to view all posts made by this member. Note that you can only see posts made in areas you currently have access to.


Messages - Philippe Parmentier

Pages: [1] 2
1
Technical support / Re:How to limit the memory access
« on: April 16, 2014, 01:46:13 AM »
Thanks Gary,

My original test was not to calculate the real 'reading time' and my description was faulty, but just to see if DM reading is faster than EEP reading... and we reached both the same conclusion...

It was to estimate what is the best solution for my code to get out of the code some message display and also prevent some modbus access to some value.. but it look that using EEP memory for calculation that are made at every ladder loop will slow down the ladder loop....
 In my current test by changing that, I go from 1000 ladder loops per second (more than 2000 on a most simple ladder login) to 600 ladder loops per second just by changing the DM variable by LOAD_EEP variable...
As far as my code is not yet fully done, it will slow down again and I try to stay over the 500 loops per second on average.

For 'human operation' it's still ok, but for electrical critical device.. it can be an issue.

2
Technical support / Re:How to limit the memory access
« on: April 15, 2014, 02:33:08 PM »
Greetings,

I've done a small test to see the performances of reaing DM[] or LOAD_EEP() Integer..

and the results are

for DM reading, it take             129,4µs
for LOAD_EEP reading it take  169,8µs

Here is the code used:

A = STATUS(21)
SETLCD 1, 1, "DM =" + STR$(DM[1]) + " / " + STR$(STATUS(21)-A)
A = STATUS(21)
SETLCD 2, 1, "EEP=" + STR$(LOAD_EEP(1)) + " / " + STR$(STATUS(21)-A)
A = STATUS(21)
SETLCD 3, 1, "DM =" + STR$(DM[2]) + " / " + STR$(STATUS(21)-A)
A = STATUS(21)
SETLCD 4, 1, "EEP=" + STR$(LOAD_EEP(2)) + " / " + STR$(STATUS(21)-A)




3
Technical support / Re:custom function (trilogy 6)
« on: April 15, 2014, 12:25:57 PM »
Hello,

In the customs functions you have some TBASIC functions

SETIO relay/output-name           ' To set On the corresponding relay
CLRIO relay.output-name            ' To set Off the corresponding relay
TOGGLEIO relay/output-name     'To invert the current state of the corresponding relay (From ON to OFF  or OFF to On)

TESTIO (relay/output-name)      'To verify in an IF Statement.  function return 1 if the corresponding relay is ON and 0 if Off.

exemple:

IF TESTIO (RELAY1) = 0 THEN SETIO RELAY1 ENDIF         'Change the state of RELAY1 from 0 to 1

IF TESTIO (RELAY1) = 0 THEN TOGGLEIO RELAY1 ENDIF  'Change the state of RELAY1 from 0 to 1

In the I)Trilogy softwareinstallation you have a sample file that illustrate theses commands:

C:\TRILOGI\TL6\usr\Samples\setIO.PC6

4
Technical support / Re:Rising Edge Coil
« on: April 12, 2014, 02:54:42 PM »
Thanks you Gary,

I was just trying to have as much efficient ladder and tbasic code, because i'm about 500 ladder logic entries, plus 1000 lines of basic an by writing efficient code I keep a good performance...

I was just trying to have in a rung lookin like the regular PLC seal logic but inside a step rung having differents ways of getting a state relay and with the rising edge, on the same relay (like the same relay on the regula seal logic) i avoid having extra code to set an 'intermediate' relay ...
That's certainly comming out of by pure IT background.

5
Technical support / Rising Edge Coil
« on: April 12, 2014, 08:01:26 AM »
Greettings all,

I getting lost with rising edge coil. As far as i've understood, when the coil is going from off to on, it execute the condition only one even if the conditions continue to be on.

In my example, is relay1 rise for off to on, it should execute once the Latch of itself.

and so the relay 1 should stay on due to the latch.

And that behaviour can be seen on the out2 and that's working fine...

but when applying that on the same relay it doesn't work and seems to work like a regular relay but not latch relay.

Can someone explain me why?

6
Technical support / Re:INTRDEF 100, n
« on: April 10, 2014, 12:10:51 PM »
Thanks,  but i would like to trap this error message to save it on a file for further troubleshooting, or off line logging

7
Technical support / INTRDEF 100, n
« on: April 09, 2014, 01:03:27 PM »
Greetings,

Have you some samples of code for trapping runtime errors,

Especially how do you get the displayed error messages on line 1 and 2 of the LCD display

What type of recover we ca do, exept doing a reset and error logging?

Regards

8
Technical support / Re:SETPWM behaviour between 2 FMD88-10
« on: March 27, 2014, 09:39:32 AM »
I've tried that already but with that system I can generate up to 100Hz frequency, or I need to go from 1 to 500 Hz

So I'm buzy to set a system that use 0.01sec interrupt up to 50Hz then using the SETPWD for higher frequency.

But is there a way when getting back to freq lower of 50Hz to stop the PWN on the channel and going back to interrupt counting?

I was thinking that's easy for the PLC to be a variable pulse generator to simulate a wind profile and anemometer behaviour, but in fact it is not


9
Technical support / Re:INTRDEF 18
« on: March 27, 2014, 09:37:39 AM »
No, but anyway, I've discovered that the compiler need a constant as the last parameter so I cannot use a variable dat handle the frequency I need to generate.

10
Technical support / INTRDEF 18
« on: March 27, 2014, 03:45:16 AM »
Greetings

After setting a command like INTRDEF 18, 10, 1000

1) Is it possible to reapply INTRDEF 18 command with another duration in ms?
2) What is the way to stop using that interrupt. I've tried INTRDEF 18, 0, 0 but it's not working.

Regards

11
Technical support / Re:SETPWM behaviour between 2 FMD88-10
« on: March 27, 2014, 01:23:13 AM »
Thanks for the reply... I wass in an hurry to buy the first PLC.... I should have been more patient!! (R78B) Lol

The Id behind was to use the second PLC to generate a Wind vane signal where the range is 5 to 500Hz.

I'm currently using a 0.01s coil and a counter but I reach 100Hz max

I tried with the INTDEF 18, but the problem is that I can put only one function linked, or I got 2 output with differents frequency to  play with.

On my old version, the PWM can then be any frequency between 50 and 50000 Hz?

Or is there another way to reach that goal?

12
Technical support / SETPWM behaviour between 2 FMD88-10
« on: March 26, 2014, 10:16:35 AM »
Greetings,

I've created a small ladder rung that run a Dcust function to set the followings commands:

SETPWM 1,500, 1
SETPWM 2,500, 2

On a FMD88-10 r81, it's working well generating a 2Hz pulse.

On a FMD88-10 t78, it' setting the DO7 and DO8 permanent.

Can you explain me that behaviour difference.

regards

13
Technical support / Re:Status(5) function
« on: March 24, 2014, 02:24:28 AM »
And the result of the display

14
Technical support / Re:Status(5) function
« on: March 24, 2014, 02:24:00 AM »
Thanks for your example, but I'm getting the same result as my code.

the function return 0

Attached the printscreen Of the firmware

15
Technical support / Status(5) function
« on: March 22, 2014, 09:39:08 AM »
I'm trying to display the current firmware version of the FMD88-10 PLC with this function
Status(5) but everytime it's returning 0.

I've tried on a 78B and 81 firmware version of PLC and both are returning 0

Am I doing something wrong?

Regards

Pages: [1] 2