r/PLC•
Dutch_Razor

Remote updating software on Beckhoff PLC's?

Hello,

Normally I update software via Twincat as usual. Now I'm working a machine whereby the operator would update the software themselves, preferably without using Twincat.

Does anyone know if it is enough to replace the .app file and reboot the PLC? It'll probably work but would that be recommended?

Posted Mar 29, 2018, 7:56 PM UTC

63
keijon_kova_kasi•

It is possible to update remote plc without programming environment. I might remember the directories wrong but something like the following:

Build the project locally with correct configuration. Then copy all files from _Boot/x64 or 32 folder (under project folder) to PLCs c:/twincat/boot/plc or similar. Restart and done.

Edit: just keep the bootdata file to not to lose persistent data. Not sure how correct way this is to update.

3
Evan5659•

I think this is right, but you should be able to try it. Just try it out on your test machine, but likely you can send them a zip and they can extract the files to the boot folder and restart it.

I'd be interested to see what a Beckhoff App engineer says about it though, I know people have done it, but I've always just remote-targeted the runtime over a VPN and done it that way.

2
RouxBru•

Beckhoff PLCs run on windows CX IIRC. The plc code is saved in a file and is loaded upon startup. Yes you can replace this file, but would you want to?

Edit: Let me rephrase, would you trust them to?

1
PaleFlyerABB IRC5 fluent, jack of most otherwise•

A lot of the "smarter" ones run on Win7. Like full windows. Not the light/cx version

1
RouxBru•

I am not saying you are wrong, that would be very interesting indeed, the ones I have encountered all had a realtime version of windows on board, now I know you can run TwinCAT on a plc, connect IO using ethercat and run your plant with that, but I have not encountered a "proper" full windows on one of them.

But please prove me wrong

1
Evan5659•

The older and really lightweight cheaper stuff is on WinCE, and you can still buy with that.

The higher performance things are usually running WES7, which is windows embedded 7. It is essentially Windows 7 Pro but with a TON of stuff gutted out. You can still install software like you would on any other Windows 7 machine.

You can run full windows 7 Pro on the machines, and I've had clients that do (due to IT calling them computers and having to take control). It was a bad idea in general, and it doesn't always detect the performance level, so your licenses will cost more, etc.

There is nothing "realtime" about WinCE, it is just lightweight and ideally more stable, smaller footprint, etc.

The realtime component of TwinCAT is the kernel mode realtime driver that preempts the NT kernel under windows (or maybe it doesn't preempt technically, but it does some low level stuff to get realtime/deterministic timing).

2
RouxBru•

I obviously only had to do with the older cheaper stuff, it was the CX range if I remember correctly.

So it is not actually a realtime system? Just a gutted "normal" version with hardware interrupts?

1
PaleFlyerABB IRC5 fluent, jack of most otherwise•

I can't prove it myself, as the only client I can think of is hours away. But I have seen it on what was a full windows panel PC near as I could tell.

I have also ran TC3 on a normal Win7 laptop, showing the same performance as a "top tier" TC3 system.

I have also used a number of TC2 systems that have a full Pentium 4 system, running Windows XP.

1
RouxBru•

I would love to run a little P4 system at home, sounds like a fun project

1
In_Perdition•

The compile information, current configuration, retain, and persistent data is all stored in the boot folder (usually c:/twincat/boot or c:/twincat/3.1/boot - may be wrong off the top of my head) - not in the .pro/solution. Just replacing the .pro / .sln and rebooting won’t do much of anything for them. The runtime will keep running the old application until you download the new compiled program to the runtime - either as an online change or a full download. I don’t know of any way of doing this outside of the twincat PLC / XAE environment itself. Your best bet would be to send them a .pro / .sln and walk a computer savvy operator through opening it and downloading it to the runtime, then generating the boot project.

1
Dutch_RazorOP•

Thanks for the insight, I think I'll talk a computer savy person through using Twincat to upload the code.

1
RouxBru•

A very big P4 system then🤣

1