Control Design – May 2019

(Sean Pound) #1
14 / May 2019 / ControlDesign.com

technology trends


Rick Rice
contributing editor
[email protected]

This is the second of a two-part column about how software’s evolution
always brings a little bit of the past with it.

SOFTWARE RELEASES SEEM to come along continuously from
most hardware/software vendors, but I like to limit my unwill-
ing adventure to twice a year to limit the distraction from my
normal work functions. This particular exercise moved along
at a comfortable pace, and I was so happy with the results that
I took the time to update my protégé’s laptop, as well, to save
him some time in what for him is a far
busier schedule than my own. He is a
primary support for our maintenance
department, while my role is to sup-
port the same group if he is unable to
successfully resolve issues. I’m sort of
the backup to the backup.
As you have now guessed, the suc-
cessful conclusion of my biannual software updates exercise
wasn’t quite as successful as I originally thought. There I was,
gearing up to make a quick change to a mini-PLC to add an
additional output function when, out of nowhere, my off-line
version of the program won’t open up on my laptop.
Sure, it loaded the name and showed it on the correct spot on
the screen, but there wasn’t anything in the navigation pane.
I am at a total loss to understand what happened, and my col-
league was waiting for me to make that simple little change, so
we could set a line up for operation the following morning.
I ended up having to ask my ever-faithful creator of magic—
my electrician extraordinaire—to rig up a couple of wires to
parallel another function in the control cabinet to mimic what
my software change was to accomplish.
After a lot of digging, I found a note in an online forum about
a recent Microsoft security update that might be messing up my
programming software. The note read, “Applications that use a
Microsoft Jet database with the Microsoft Access 97 file format
may fail to open if the database has column names greater than
32 characters. The database will fail to open with the error,
‘Unrecognized Database Format’”.
The result was that certain programming software applica-
tions may not open user programs. Well, as it turns out, a recent
operating system “security” update changed something that
interacts with my programming application. I didn’t even know

what Microsoft Jet was, but apparently it is a new database that
might use an older format database that was being used by my
new, latest version of the application development software.
The suggested fix—a newer Microsoft update—didn’t fix my
issue, and I ended up uninstalling the latest version of my de-
velopment software and reinstalling the previous version. Once
done, my software application would open as expected, and I
was able to make the programming changes and download the
new version into my micro-PLC.
When I finally caught my breath,
I started to think about how this all
came about. At first I was mad at
Microsoft for providing a security
update. Then I realized that they’re
doing their best to protect our com-
puters and servers from those who
would want to do us harm.
Then I was mad at the creator of my application develop-
ment software for using a third-party program module inside
the code. It was at that point that it suddenly dawned on me
that this unseen person who had just suffered my wrath and a
stream of muttered expletives, was really just doing what I do
every time I sit down to develop some software code. I don’t
have time to reinvent the wheel every time I set out to write
an application, so I do only what comes naturally. I look to my
library of code and pull out something that already does what I
want to do and incorporate it into my application.
Lots of people spend the entire day writing and reviewing
code, all in an attempt to keep our world moving along at this
breakneck pace where everything is at our fingertips. Every
once in a while, a ripple happens where the need to protect
doesn’t take into account the impact due to dependency of soft-
ware modules on other software modules.
Should this happen to you, take a breath, have a coffee and
do whatever you need to do to calm down. Things happen.

Part I of this column can be read in the April 2019 issue of Control De-
sign, or read both parts now at http://www.controldesign.com/articles/2019/
reusable-software-is-ever-developing.

Reusable software is ever-developing—Part II


I look to my library of code and pull
out something that already does
what I want to do.

RICK RICE is a controls engineer at Crest Foods (www.crestfoods.com),
a dry-foods manufacturing and packaging company in Ashton, Illinois.

CD1905_14_TechTrends.indd 14 4/29/19 10:23 AM

Free download pdf