Saffa
Member
Kalabdel, I do agree with you that having access to the PLC code is a requirement, and that it should be written such that anyone with suitable expertise in the system being controlled can follow.
There was a similar thread a few weeks ago about this.
I think some members here who build specialist machines, or things which they make dozens or hundreds of each year believe that the HMI should provide all diagnostics. Yes maybe, if but there will always be some situation the original designer didn't think of. Or a hardware issue that needs resolving. For example i had to get another integrator in to change IO allocation for a flow switch on a little Siemens S7-300 because the input went bad. The HMI might have been able to show me the status, but i don't know many machine builders that let me programmatically swap IO. German machine, local agent here isn't a PLC guy, would have had to ship out something from the factory overseas, machine down for 6 weeks. Not an option. Now there's time to get a replacement card and restore everything to how it was.
And for a big facility with thousands of IO, having full diagnostics on each IO point via SCADA is something you only get at the DCS level. Access to the code is the poor mans DCS grade diags.
I think Steve Bailey was more taking a dig at the fact that it's very easy to criticize others when you're not in their shoes. Yeah I've seen some terrible code, but I've also had to write some pretty nasty stuff to get something up and running again, and then the client never fronts up with the money to fix it properly... now you come along and say "geez, look at this **** code that Saffa wrote!" Without knowing the context.
Not defending poor design and poor programming, but it's not always black and white who should get the blame for it...
There was a similar thread a few weeks ago about this.
I think some members here who build specialist machines, or things which they make dozens or hundreds of each year believe that the HMI should provide all diagnostics. Yes maybe, if but there will always be some situation the original designer didn't think of. Or a hardware issue that needs resolving. For example i had to get another integrator in to change IO allocation for a flow switch on a little Siemens S7-300 because the input went bad. The HMI might have been able to show me the status, but i don't know many machine builders that let me programmatically swap IO. German machine, local agent here isn't a PLC guy, would have had to ship out something from the factory overseas, machine down for 6 weeks. Not an option. Now there's time to get a replacement card and restore everything to how it was.
And for a big facility with thousands of IO, having full diagnostics on each IO point via SCADA is something you only get at the DCS level. Access to the code is the poor mans DCS grade diags.
I think Steve Bailey was more taking a dig at the fact that it's very easy to criticize others when you're not in their shoes. Yeah I've seen some terrible code, but I've also had to write some pretty nasty stuff to get something up and running again, and then the client never fronts up with the money to fix it properly... now you come along and say "geez, look at this **** code that Saffa wrote!" Without knowing the context.
Not defending poor design and poor programming, but it's not always black and white who should get the blame for it...