Selecting a PLC based on memory

donald_adams

Member
Join Date
Mar 2018
Location
Akron, Ohio
Posts
1
How can I get a rough estimate of how much memory I will need for a controller if the code is not written yet, but I know how much I/O it will be running? (One VFD, and about 8 digital inputs). Small project, using a compactlogix

Options are 384 kb, 512 kb, or 1 Mb. I imagine 384kb would be enough. But would like to know how I can estimate my usage.

Also, is the size of the .ACD file in rslogix the exact memory a code uses?

And what happens if I run out of memory? I doubt I ever would for this application, but for future reference, would I have to upgrade the controller? Or is there some type of add-on memory that can be implemented?

Thanks!
 
(One VFD, and about 8 digital inputs). Small project, using a compactlogix

Welcome to PLCTalk.net

I would think that any CompactLogix will handle that easy, once you have the program written you can check, some people say I = xxx but I have not been able to come up with my formula, if you are doing motion or analog that will use more than normal digital I/O
 
Welcome to PLCTalk.net

I would think that any CompactLogix will handle that easy, once you have the program written you can check, some people say I = xxx but I have not been able to come up with my formula, if you are doing motion or analog that will use more than normal digital I/O

I think in a given industry/application there may be guidelines you can scale by, but I'd agree that there definitely isn't a general purpose approach for estimation.

The best way is to write as much of the program as you can before you order your PLC, to get an idea of where you're headed. Realistically, though, that almost never happens.
 
There are many variables in selecting a PLC.

Will there be an HMI, What is the HMI.

How will it connect to the other devices (Dry Contacts, Serial, Ethernet).

Micrologix PLCs are also a good alternative. You can also buy memory add-on modules for PLCs.
 
If it's as small as you say, and there aren't going to be thousands of rungs or any crazy recipe or datalogging stuff, the smallest option will be fine.

Best way to estimate memory usage is to look at other programs. Compare their code length and number of tags to the shown memory usage and you will get a good idea.
 
If it's as small as you say, and there aren't going to be thousands of rungs or any crazy recipe or datalogging stuff, the smallest option will be fine.

Best way to estimate memory usage is to look at other programs. Compare their code length and number of tags to the shown memory usage and you will get a good idea.

Agree with you
 
You can get an estimate from certain ab controllers, go to the IO configuration tree double click the CPU properties, go to the memory tab then click estimate.
 
Sales teams at systems integrators have a memory estimator spreadsheet they put together listing all the things that contribute to memory size, using the past projects as examples.

The most simple one is:
Number of DI/AI/DO/AO/Comms devices.

You can add modifiers like io point complexity, number of p&id elements, does it need a PID? Does it need to store the last 5 minutes of data for some complex algorithm?

If you run out of space, you can either reduce the functionality of your code, make a few size optimisations, store data elsewhere in the system, or sell (return for a restocking fee?) your now unboxed plc and buy a bigger one.

When just starting out, or if using an unfamiliar plc, a good distributor should be able to guide you on project size. "Yeah we have a guy up north with a similar type of application doing it and he buys these ones." If he keeps overestimating by a factor of 10, he is not what you want in a distributor and you should go elsewhere. Later in your career or when you have several projects of that size under your belt, you can tell if memory is going to be a problem or not.

Oh and the ACD file is much bigger than the memory used. You have to open the project and go to controller properties and hit the estimate memory usage button.
 
I was looking at a 1400IO system using CLX, and during the investigation the RA field guy fired up IAB/PAX (can't remember which) and was able to tell (estimate) memory usage based on IO. No program yet written.

Based on your IO, I would say the smallest memory L16 would do. Ask your AB rep.
 

Similar Topics

Hello plctalk, new guy here. I have an application that I'd like to present for your considered opinions so I can figure out what hardware I...
Replies
11
Views
2,483
Hi, I frequently demonstrate automation product (that we make) to various customers. The system uses an AB7007 Anybus gateway that connects to...
Replies
16
Views
5,245
Hopefully I'll have a legitimate copy of RS500 to program micrologix and SL500 series PLCs. A guy in another group is going to mail me his old...
Replies
6
Views
1,823
Hey guys, I need some help in determining a PLC for a project. I've never used a PLC or Ladder Logic before and have done some research but am...
Replies
3
Views
1,596
My system has 11 analog inputs, 6 analog outputs. 10 digital inputs and 13 digital outputs. I don't know which PLC I should select to get the...
Replies
12
Views
4,150
Back
Top Bottom