LogixLibraries - Your New GitHub Resource

Contributions welcome (and credited!). I suppose by DM / dropbox link. Or I can set you up as a repository contributor.
 
Looking for ideas?
How about a fast hash function just to look for any change in an array of tags. Would be used to indicate a setpoint change that needs to be written. Helpful with slow polling telemetry systems.

Indicate a new rising transition of any single bit in an array of bits ignoring falling edges. Useful to detect new alarm bits that need to trigger a process.

Both can be done other ways but since you are creating AOIs... :)
 
Looking for ideas?
How about a fast hash function just to look for any change in an array of tags. Would be used to indicate a setpoint change that needs to be written. Helpful with slow polling telemetry systems.

Indicate a new rising transition of any single bit in an array of bits ignoring falling edges. Useful to detect new alarm bits that need to trigger a process.

Both can be done other ways but since you are creating AOIs... :)

Interesting problem.

Wouldn't the act of maintaining a hash require continuous array passes? Or is insertion/deletion/update 'interfaced' and the hash computed only then?
 
What is a DataLink?

When you add a PowerFlex 525 to the I/O tree, for example, there is a default data type, which includes some basic stuff. Start/stop, fault, frequency command, etc. If you want some additional control or feedback, you can add input and output parameters. Rockwell refers to these additional parameters as datalinks. The term dates back well before PF525's.

Normally, to edit these, you have to make the change offline and download. There is a new predefined data type for each datalink configuration.

What I think Jeremy is saying is that you can change these on the fly.

Jeremy, tell me datalinks can be dynamic. Inquiring minds want to know :)
 
Yes they can be (and are).

It starts with a generic module of the sum total size of the possible datalinks, in each direction. PF525 in this example. Input 16 bytes, output 12 bytes, configuration 0 bytes. Even if you don't use datalinks, the drive accepts this connection.

The configuration bytes being zero are the real key to it - the AOP places the parameter instance numbers in this array to "key" the connection to these parameters, hence why the download is necessary from the PLC side and why the drive requires you to preconfigure it with the datalinks. If you instead push these parameters by message (or even by hand) to a drive with a zero-config IO connection, you just need to momentarily inhibit the connection to get them to reflect the change. I'm 99.99997% sure this method will work with other equipment including the 750 series and its 20 datalinks.
 
Last edited:
I'm pretty sure I remember you saying you used the generic module in order to solve the obnoxious AOP issues when new revisions come out. You effed around and found out, nice!
 
I'm pretty sure I remember you saying you used the generic module in order to solve the obnoxious AOP issues when new revisions come out. You effed around and found out, nice!

If you really want to have "fun" you could put the Generic:C to use as a general-purpose 400 byte message buffer to save memory and tag database usage.
 
Ok I'm dumb what is an AOP. What is the AOP problem?


I haven't really touched Rockwell in a year. I have been using codesys.

AOP = Add On Profile. It is the definition of a thing in the I/O tree. You need to install AOPs for major revisions of firmware for some I/O tree devices.

Each time a new major revision of PowerFlex 525 comes out, for example, they will release a new AOP, which you have to install in order to configure the drive from the tree. The latest is v7.0, at least last time I checked. If I were to add a v7.0 drive to the I/O tree and you don't have the v7.0 AOP installed, it is going to show up as unknown when you open it.

Using Jeremy's method of adding generic modules to the tree instead of using the official RA AOP eliminates the dependency of having to have the AOP installed. You wouldn't have access to parameters like you normally would by using the AOP, though it sounds like Jeremy has largely worked around that.
 

Similar Topics

In reference to this old thread: http://www.plctalk.net/qanda/showthread.php?postid=18988#post18988 I put my logo instead of Globe. However I...
Replies
0
Views
1,249
Howdy. Have compact Logix with a SM-2 module installed, talking MODBUS out all three channels to various aftermarket devices. Been in and working...
Replies
3
Views
2,898
I was given a Vijeo project file to do some work on and part of that requires that I do some fiddling with some images they have in the Resource...
Replies
0
Views
2,515
I came across this site not to long ago, it's by a Technical College in Wisconsin near where I grew up. Great resource of some basics. I think...
Replies
2
Views
2,239
Hello there. I was wondering if anyone knows any good resource where we can make a good graphic library for hmi and scada software ? Most of the...
Replies
12
Views
16,204
Back
Top Bottom