disecret

hamid hadi

Member
Join Date
Dec 2015
Location
bukharest
Posts
24
Hello. please can any one help me. I need to know (in RSlogix 5000 function block). How can i represent the discrete for example i have the function
uk=uk_1 -uk_2+yk+yk_1;
so how can i represent the tag memory update at each scan time like that
uk_1=uk;
uk_1=uk_2;
yk_1=yk;
In RSlogix5000 function block.
with best regards
hamid
 
Hello, Hamid,

I'm not trying to disparage you, discourage you, or otherwise disillusion you, but there is something I think you need to understand.

The silence you are experiencing to your questions is because we will not do your homework for you.

If, however, you post something that you have tried and show that you are trying to do the work, people are more willing to help. It shows that you are willing to learn and grow.

Also, if you can provide details on what you are trying to do, the answers are usually better, and sometimes a solution you hadn't considered can shine through.

So, let's start over. What do you have for us to look at?
 
Hello, Jordan
sorry, I dont know why you say that, its just normal question. I read more and don't like to depend on any one in my study but i saw here good place to share information. and about my question its clear. If i have(in RSlogix 5000 function block diagram) variable or tag named (uk) and (uk_1), I want from (uk_1) to get the value of (uk) at each scan time.
its simply like,
uk_1=uk;
at the end of the program.
with my best regareds
 
Last edited:
Hello, Hamid.

The point of my post is "What have you tried?". Or, more to the point, "Show us what you've tried".

There are so many posts on here that start with "show me the code" with little information or proof of work that it has pretty well become policy to ignore them. Others would blast people out of the water, but I'm trying to guide you to a more productive path.

In conclusion, what have you tried?
 
Hello,
I did a program for multimodel controller that mean more than one PID controller for the same process with different operation conditions as clear in attached image. but i want to develop that program to use RST controller and this controller as you know depend on the disecritization. Its not problem in the disecritization but my problem is like that. the controller output uk=uk-uk_1-uk_2-yk-yk_1+rk;
after each scan time i shoud get
uk_1=uk;
uk_2=uk_1;
yk_1=yk;
uk:controller output;
yk: process output;
I cant fined the operation to move the real value from tag to another tag at each scan time simply like the operation(=) in any language. because the (equal) in function block just for compartment.
with my best regads

1 (2).jpg
 
Thanks for the update, Hamid.

I'm not an Function Block guy, so others can jump in, but one option that comes to mind is to use Select, just using In1. Leaving the selector unconnected defaults to using In1.

2016-09-14_19-03-25.jpg
 
Thanks for the update, Hamid.

I'm not an Function Block guy, so others can jump in, but one option that comes to mind is to use Select, just using In1. Leaving the selector unconnected defaults to using In1.

You can also use any Math block...uk_1 = Uk * 1 or Uk_1 = Uk + 0
 
Hello robertmee,
already i already tried this way but i didnt got a good result. however i tried to run the task as a periodic task but its not work. should i have at least one contentious periodic task or its OK.
with best regards
 
Back
Top Bottom