PLC Lockout For Non-Payment

If someone won't pay and you have fufilled your obligations, in the US, there is something called "placing for collection" where the debt is turned over to a third party collection agency. For a fee, the agency will hound the customer for you, among other things. It is also noted on the company's credit report. Today, with many companies on shaky borrowing ground, the mere mention of collection can be very effective.
 
Not so easy, but a devious mind ponders.....

Terry Woods said:
I've already got an idea! Do the words cryptology and indirect-addressing mean anything to you?

I don't see how anyone could write some lock code that just can't be deleted. Any secure lock code would need to be hidden or put in some undocumented place where it couln't be found. The lock code could be activated by a interrupt. This would remove the need to call this lock subroutine from the main program where it will be easy to delete the call.

If lock code was merged in with some vital piece of code then the lock code could not be removed with affecting the functionality of the PLC. This assumes the merged code and vital code could not be separated. This may be possible with a S7 where modules can be locked. This could also be done on a IEC type of system like Friedrich's OATS where one can just withhold the source code.
Modicon has custom loadables that would allow this too.

To be really clever, one would need to find a undocumented feature just like the real virus writers do.
 
I think my post got mis-read. I never mean't that we should not get paid for our services/equipment/etc. Just a point that I know, In the state of PA. you cannot "fault" a system in a municipality such as a water treatment plant, etc. due to non payment.
 
Terry: No matter how good you misdirect with indirect addressing, eventually you will come to a 'Go / no-go' check.

Any shutdown method will result in a symptom (ie: machine shuts down, or won't start).

It's not to hard to find out why, and make the 'go / no-go' check a 'go / go' check by adding a contact for example. Or simply finding the element that is blocking a start command, and shorting around it.

Even machine code with no documentation can be disassembled and patched if someone is determined enough.

*** Something that could work though, at least partially, would be if PLC CPU's accepted dongles, maybe even smart-button type readers, that can be set with time limits. That of course, would require that the means of locking a CPU to the Dongle be prohibitivly expensive, or require some kind of very strong licensing policy between the PLC manuf and the OEM / System designer.
 
Last edited:
PLCs with passwords

I don't know what sort of controllers you guys are using, but with the Modicon line, you can simply password protect the program once it's written to flash memory. If you don't know the password, you don't get access. There is no 'reset' without sending it to the mfg for a factory reset.

So, write your lock-out at ANY stage of the program you like. Burn it to flash. Then, password protect it. Viola!!!
 
Two words---Shock Collars. We sometimes sell this as a control option and the customer makes his operators wear the collars. When the operator tries to make the machine operate in an unacceptable manner, we activate the collar then display the reason on a touchscreen.

Make your customer wear a shock collar--the activation could be coded into the machine PLC or manually operated by you.

The shock collar has replaced an earlier alarming system called "a boxing glove on a spring".
 
Terry doesn’t tell and will not put anything here.

He likes to tease and play with you.

I am, I suppose an old timer on this board. I have been a member for many years. For the past few years, I have not seen a single topic that has been unique (including this one)

About 4 years ago this subject came up and at that time I had never time bombed or even protected a plc program, but I had been ripped off. (in my view)

I designed a program for a ‘bow’ making machine. The type of bow you buy at Christmas to stick on presents. It was a good little number. After all the R&D was completed, they made the machine and I just supplied the PLC with the program already in there.

I supplied each program and plc under a sort of unofficial licence and they did the rest.
But, someone got wise (or stupid) at this company and bought the programming software and copied my program. From then on – I was no longer part of the equation.

They made, and still do hundreds of these machines. I get nothing although my original program is still in every one of them.

There was never any official documentation as to who owned the copyright to this program and at the time a long and protracted argument broke out on this board as to whether copyright even exists on original plc programs. (Remember that old argument long servers)

The argument went along the lines of – plc code is plc code and there is nothing original about any program ever written – only variations of a theme.
It then moved onto specific algorithms that have been developed by individuals that could be called unique.

This may even stir thoughts within your own breast, so I leave you with this conundrum.

If you personally design write and build code for an application for one particular process, is the code unique and copyrightable as your own work?

If you think yes, then you have every right to protect it however you feel.

If you think plc code is plc code and nothing is unique about writing it then you should never protect it because it is nothing special or original.


If like Terry, you profess to have designed a unique protection system – is that copyrightable and unique and even legitimate.

I suspect your thoughts depend on where you stand in the chain!
 
My personal understanding of the copyright issue is that if you write a code for a particular machine, for a customer, then when the contract is written you should specify whether the code is your property or the property of the customer. I have seen contracts that state that the code is the property of the writer but may be accessed by the customer. But may not be copied except for a backup. Also MAY NOT BE REUSED. The first course I took in plc, the instructor(A.B. rep by day) said that it was a universal understanding that if not stated in a contract, then the code belonged to the customer. And if you have code written for you, do your damndest to get ownership of the code. We have a lamintaor that I wanted to copy ladder for troubleshooting reasons. The owner of the company that designed the manchine showed me in the contract that under no terms were we to access the plc code for any reason. Sure he did that so would get more service calls.....Kind of wish the higher ups would include the techs in the contract negotiations...
Or maybe I'm just an idiot and have no idea.....

dale
 
I've said this before - barring any contrary written agreement ownership of intellectual property belongs to the one that pays for developing it.

I have a lot of proprietary logic that I developed on my own time an at my own expense. I own this code, I put copyright notices on all the documentation, and I make my customers sign a single system license agreement before I give them access to the program.

I have also written programs for customers employing logic they developed, and while being paid by the hour or project to develop the program for them. They own the logic, and can re-use it as many times as they want.

Every agreement with a customer should cover a number of items as a matter of course. These include schedule, payment terms, and ownership of intellectual property.
 
I think I'm a better than "decent" customer

We (the company) bought a machine from an OEM. Normally they supplied their equipment with AB PLCs. In this case we spec'd an AD unit because that is what we have been trying to homogenize the plant with. The machine shows up at the plant with some abortion as an excuse for a program. I called the "EE" of the supplier who was in charge of the project and asked him what he wanted the program to do in some specific instances where I could tell the program was all wrong. He told me what was supposed to happen and I told him what he had done wrong. At that time he asked me to send him a copy of the changes I had made. You know what, without a second thought, I sent my program. Now this OEM has their AB program on file and my AD program on file. I even included lots of descriptive annotations for each line, laying it all out in plain english so that anyone could follow my work. Ask me what I got out of it. Go ahead, ask me... Squat; jack squat!!! Not even a thank you email mind you. Oh well, such is life. Another million dollar opportunity wasted.


At least that's how I'll tell the story to my grandkids. (The story is true only the names (and dollar amounts) have been changed to protect the innocent)
 

Similar Topics

What have you done in the past to ensure that a PLC output is no longer "hot" in an outside electrical panel? I do not want to turn off the PLC...
Replies
17
Views
6,072
The past week we received a new piece of equipment from Germany which utilizes siemens controls. Typically in our company we use A.B. controls for...
Replies
9
Views
181
the conveyor can stop because of a safety sensor or safety switch. And also it can stop because of an object jam detector sensor. If the conveyor...
Replies
5
Views
186
Good Day to all of you, this is my first post, i will try to explain as best as possible, english is not my natural language. I am performing an...
Replies
0
Views
40
Hi All, Someone at work has put a PLC system on my desk, that's just been taken off an idle production line. He said "It's an S7 PLC. We don't...
Replies
10
Views
249
Back
Top Bottom