PLC Memory...Why So Small?

kdcui

Lifetime Supporting Member
Join Date
Dec 2007
Location
USA
Posts
386
I've noticed, compared to the capabilities of current technologies, PLC memory remains ridiculously capped.

For example, a ControlLogix5565 (1756-L65) has 32MB of memory.

Why so small?

Putting aside the fact that this is partly a marketing strategy to make more money, why would it be so difficult to put 256MB of solid-state memory in there (at the very least).

Or is the memory in the PLCs "special"?

EDIT:

One could argue, "Who needs 256MB of memory?" which is not the point I am really trying to make...
 
Last edited:
what do you need it for? there are CPUs with 64Mb too, then you get soft PLCs etc.

hardware based plc uses memory differently from your PC, for example it has to keep the data even during power loss (PCs need to boot files from HDD).
 
Last edited:
Is storing the program (or the bulk of it) in some type of flash based, solid-state memory too slow for the purposes of PLCs?
 
My first exposure to PLC controls was after many years of operating some very complicated equipment.

I was stunned to see and learn how crude and "simplistic" the computers controlling those machines actually were.

I asked the same question about the memory and also questioned the use of ladder logic. It seemed very antiquated and oversimplified to me. I was expecting something much more "advanced".

I was told that the memory limitations were based on reliability. The slow CPU and limited amount of rugged ram made the things run for years without trouble even in high temperatures and high vibration environments.

I soon came to realize that a whole lotta ladder will fit in 4K of ram, and have seen many a PLC run for a decade or longer without a processor related hiccup.

Just my 2 cents...
Paul
 
I soon came to realize that a whole lotta ladder will fit in 4K of ram, and have seen many a PLC run for a decade or longer without a processor related hiccup.

Paul

I realize that you can fit a substantial amount of ladder into a relatively small amount of memory.

And ultimately reliability is what you want in a system.

I am gathering the reliability gained by using SRAM on the processor is greater than using flash memory (not to mention that flash memory is slower, but cheap).
 
One thing to remember is it takes a while to develop a PLC. PLC's tend to be around a lot longer than PC's so components are picked to have a long market life. Another point is that PLC parts are picked to handle extreme conditions. PC parts are commercial parts produced in bulk for quick and easy consumption, PLC parts typically are not. PC parts sell by the millions, PLC parts sell by the thousands. There are worlds of differences between the two.

Think back to the 90's when every week a new PC CPU came out and memory was obsolete as fast as you could buy it. You can't do that in an industrial setting. With FDA and other specs where you have to do enormous amounts of testing and validation the cost would put companies out of business. Every time the hardware/software changed you would have to do it all over again.

Picking parts based on longevity and performance instead of price has it's advantages.
 
I realize that you can fit a substantial amount of ladder into a relatively small amount of memory.

And ultimately reliability is what you want in a system.

I am gathering the reliability gained by using SRAM on the processor is greater than using flash memory (not to mention that flash memory is slower, but cheap).

You wouldn't want to use FLASH for your volatile memory anyway. The write cycles would be used up in no time. It doesn't take long to chew through a million write cycles writing to something every scan.

Most PLC's use FLASH to store the program. The issue is it's slow writing to it. Really slow writing to it. So if you want to do true run time upgrades you typically do either one of two things. Either you double the memory size so you can have two copies of the program or you shadow the FLASH with RAM. Either way adds cost. Never mind that it adds memory that the customer never will see or get to use for any other reason.

There are tons of reasons that you don't see many PLC's with much memory. As I alluded to in the previous post a lot of it has to do with not monkeying with an existing working system. I feel that more memory and features such as USB will at some point make their way into the PLC universe. The evolution of the PC will make it happen as technologies such as serial become less accessible. Just don't expect it to happen at the same rate as PC's. The industrial world just doesn't move that fast.
 
As well as hardware reliability, as already mentioned below, it will also have to do with software reliability.

In the older generations, RAM will have been limited by the address capability of the micro inside the PLC (i.e. a 16 bit chip will only address RAM easily to 65k bytes). The new generations (ControlLogix) are undoubtedly bigger than this but remember that a large CPU and RAM in todays PCs come with many many layers of software, just to manage it i.e. kernel, operating system, daemons, drivers etc. And again you need to define what the memory is for... have you got a program that won't fit in 32MB of code space etc etc, or do you want to have some JPEGs or MPGS as part of the code.

One driver for more RAM i guess is the concept of a Historian in the rack, which I believe Rockwell is looking at. That will no-doubt be an 'embedded PC microcomputer' of sorts. I'm sure it won't drive the outputs though - I hope not!

As a general rule, the simpler the software, the longer the up-time.

All that said, PLCs will no-doubt head in the same direction as 'computers'......overall, reliability is still very good though.
 
I've noticed, compared to the capabilities of current technologies, PLC memory remains ridiculously capped.

For example, a ControlLogix5565 (1756-L65) has 32MB of memory.

Why so small?

Putting aside the fact that this is partly a marketing strategy to make more money, why would it be so difficult to put 256MB of solid-state memory in there (at the very least).

Or is the memory in the PLCs "special"?

EDIT:

One could argue, "Who needs 256MB of memory?" which is not the point I am really trying to make...

You'd have loved the early PLC's then :D

I remember 2K memory, live with that.. or using Siemens S5-150u processors to control a whole plant, maximum of 48K, the biggest they had at the time.

Why do you want more though, its not meant as data storage if that's what you want a PC witha database is better equipped.

I can imagine someone filling up GB's of memory with totally gibberish code and a how long will it take to scan 🤞🏻 please finish the scan in the next half hour
 
I can remember programming PLCs with 1024 steps and most functions took several steps.
1 NO contact (load) was 1 step.
Made you quite inventive.
 
There are a couple reasons

Static memory is expensive and uses a lot of power. It is costly and bulky to keep a lot of static ram backed up using a battery.

Newer technologies have provide means to quickly write out retentive memory as soon as power is turned off with power remaining in the capacitors. There is still a limits on how much can be written during this time. There are also devices such as FRAM.
http://www.ramtronsolutions.com/?sid=ppc1012&gclid=CIvs2qLSrpkCFRFWagodaDABJw
These are not cheap.

BTW, our dinky RMC75 has a mere 64MB of dynamic memory and a FRAM to back up only what is marked as retentive. We looked into getting smaller dynamic memory chips but they cost just as much or more than the bigger chips. Most of the small micros are limited by the number of address lines. Most can't access more than 64K bytes. In reality much of the addressing space is used for other things like I/O and peripherals. The rest must be shared by flash and ram.

Newer 32 bit micros can access a larger memory space and have the ability to access dynamic memory without a lot of 'glue'. They also have memory caches because dynamic memory is not very fast compared to static ram.

I have no idea what the soft PLCs do when power goes off. Forget?
 
Peter Nachtwey said:
I have no idea what the soft PLCs do when power goes off. Forget?
Good question.
'Packaged soft-plcs' such as TwinCat in Beckhoff CX, and Siemens WinAC RTX in a MicroBox achieve the retentivity by writing to flash upon shutdown.
Soft-plcs that you install in 'regular' PC hardware, can only achieve some kind of retentivity in combination with a UPS.
 
I've noticed, compared to the capabilities of current technologies, PLC memory remains ridiculously capped.

For example, a ControlLogix5565 (1756-L65) has 32MB of memory.

Why so small?

Why are toasters only 4 slice? Every one should be at least 100 slices.

Why are Televisions not a minimum of 72" diagonal?

What exactly do you think you are "Missing" out on with "ONLY" 32MB of memory? Forget marketing. Forget cost. Or do you not believe in matching a solution to a problem? Is Bigger always better? More Reliable?

This is a silly question.
 
Why are toasters only 4 slice? Every one should be at least 100 slices.

Why are Televisions not a minimum of 72" diagonal?

What exactly do you think you are "Missing" out on with "ONLY" 32MB of memory? Forget marketing. Forget cost. Or do you not believe in matching a solution to a problem? Is Bigger always better? More Reliable?

This is a silly question.

I remember being amazed at the memory of 250K for an AB PLC3, the rep told us that he had to go to a cement plant because they appeared to be having scan problems... they decided that the memeory was so big they controlled the entire site from one PLC !!!!! :D
 

Similar Topics

Hello I am doing some research on plc memory allocation, including RAM, EEPROM, volatile and non-volatile variables etc. I would like to keep my...
Replies
5
Views
1,692
Is it possible to trend PLC memory usage in the historian? We are getting few faults on the compactlogix controllers. They are old running V17. I...
Replies
8
Views
2,055
Hello to everyone. I hope you are doing well. I have a KINCO PLC HP043-20DT. I'm communicating through free-protocol instructions XMT and RCV...
Replies
0
Views
1,244
I would like to create an AOI which throw me an alarm when cpu usage is more than 75%. Since GSV doesn not support this functionality I am...
Replies
7
Views
2,705
Hi All, I have an Omron PLC program which is copied from the memory card. Could you please tell can I open the PLC program using CX programmer or...
Replies
0
Views
958
Back
Top Bottom