Machine vision systems can reduce time consuming
manual inspection. However,
these systems require specialized
programming and maintenance, which can make
them difficult to implement. California-based
Intrinsics Imaging solves this problem through its
analytics-as-a-service software, called Heijunka
Vision. It provides a library of image processing
and machine learning algorithms running in the
cloud that work with any IP camera to perform
intelligent defect detection.
Typically, Heijunka integrates with SCADA
systems to create analytics dashboards, alarms,
and quality control actions. But when Intrinsics
was approached by a customer hoping to integrate
Heijunka directly into process controls, it looked
to Opto 22’s groov RIO edge I/O for a way to
connect the cloud to the edge.
Securing a path
to the edge
Heijunka Vision finds defects in coatings, underlayment,
color consistency, product wrapping, and
even pallet counts. It can also continuously inspect
in-process materials to ensure that specifications,
such as dimensions, smoothness, straightness, and
color, are met.
For this application, Heijunka would be looking
at two production lines moving discrete
boards at high speed.
- The primary line cuts large sheets of raw
material to size. Cut sheets would need to be
inspected for excess moisture as well as dents,
debris, and scratches as small as a grain of
rice. The customer runs hundreds of different
product types through this conveyor, each
being cut to a different size and configuration.
- The second line would be responsible for monitoring
the quality of the milling process, specifically
looking for chipping along the edges.
Unlike most Heijunka applications, the customer
also wanted a pass/fail I/O signal that it could integrate
directly into the PLCs handling material
rejection. By bypassing the SCADA and providing
a direct path to PLC action, the customer hoped to
simplify integration and reduce latency.
Besides needing a device that could tolerate an
industrial environment and integrate with Heijunka’s
existing software stack, the company also required
minimal latency. From the time a given video capture
was sent to Heijunka, the customer would have a
roughly five-second window in which to detect and
reject a problematic part. Therefore, Heijunka would
need to return a pass or fail indication that consistently
fell within that window of opportunity.
Finding the missing piece
For this application, Heijunka would be hosted on
AWS and publish MQTT messages to a hosted
broker. That broker would be bridged to an on premises
broker in the customer’s facility, allowing
the cloud and edge networks to exchange data
behind the scenes. This architecture proved to be
the key factor in choosing groov RIO for the final
piece of Intrinsics’ solution.
“The customer found [an edge I/O device
that used MQTT, and it] made me realize that an
MQTT device could work for what we were doing,”
says Eric Cheng, Heijunka’s chief technology officer.
“I started searching around and came across
[groov RIO.]”
Groov RIO had the industrial build Cheng
needed and was compatible with his software
stack. “Groov RIO was on the same wavelength
as us: built-in MQTT, Linux-based, web interface,
and it just seemed more modern than [some other
devices] that still require Windows 7 executables
for configuration,” he says. “I didn’t want to have
those kinds of dependencies.”
The groov RIO MM1 module (GRVR7-
MM1001-10) provides eight channels of universal
I/O with support for more than a dozen
software-selectable signal types. I/O data can be
shared via MQTT, REST, VPN, or traditional protocols
like Modbus/TCP.
Given the nature of their request, Heijunka’s customer was also interested in the cybersecurity
of the proposed architecture and appreciated that
groov RIO could secure communications with user
authentication, a local firewall, and TLS encryption
using X.509 certificates.
Putting the cloud
in control
Intrinsics built an isolated network to connect IP
cameras and groov RIO modules to the on-premises
MQTT broker. A separate network connects
that broker to the internet for video streaming
to Heijunka Vision and data exchange with the
hosted MQTT broker, both running on AWS.
Each groov RIO module makes an encrypted
connection to the local broker, which has only
port 8883 open—the standard port for MQTT
TLS connections. Bridging between the two
MQTT brokers also provides security, with the
local broker acting as a firewall for the OT side
of the system while still allowing groov RIO data
to be exchanged with Heijunka in the cloud. “The
goal is to keep the RIOs inaccessible from the
outside,” says Cheng.
To satisfy another customer request, each production
line uses two groov RIO modules with
each configured to provide eight discrete inputs.
Production line PLCs encode the product ID for
the specific part being examined by Heijunka as
a 16-bit integer and send each bit to one of the
inputs on the RIO pair. A Node-Red flow in each
RIO module publishes its eight input channels as
MQTT topics, which Heijunka combines to decode
the product ID and select the appropriate set of
algorithms for that product type.
The groov RIO modules also use Node-Red
to subscribe to quality indicators, which Heijunka
publishes to the MQTT broker. One of the relay
outputs in each pair of modules is used to indicate
the pass/fail decision returned by Heijunka for a
given part. The production PLCs watch these outputs
and use them to trigger a physical rejection
of the product if needed.
Since Heijunka performs all the heavy computation
and product identification, the groov RIO
modules can run the same logic without regard
for the product type, creating a clean interface
between cloud and edge networks.
Fast, automated
quality control
With the full system in place, Intrinsics confirmed
a round trip time, from measurement to result, of
less than two seconds. At this point, the customer
has been automatically rejecting defects for several
months and plans to introduce Heijunka in the
rest of its facilities.
“I’m impressed with how fast it is even though
we are taking two or three steps,” says Cheng.
“Most of that latency is due to transmitting video
over the network.”
Intrinsics’ customer is using Heijunka to save
on labor costs and increase quality with an overall
goal of avoiding material returns. The customer
can review system performance through Heijunka’s
built-in trending, monitor historical trends
in defect rates, and diagnose the root cause of
elevated defect levels. Each defect that appears
in Heijunka indicates a product that triggered a
reject signal, which then made its way to the groov
RIO modules via MQTT.
“We were under the gun to do this quickly,”
says Cheng, “but we got it figured out in less than
a month. Now we can provide a direct physical
interface to low-level automation systems. Using
the RIOs allowed us to own more of the last
mile between cloud software and physical action
and allowed the customer to speak the language
they were most comfortable with. That allowed a
cleaner separation between our software expertise
and their hardware expertise.”
With groov RIO, Heijunka can now be adapted
to many more applications, supporting both hardware
and software interfaces, whichever produces
the best performance.
For more on Intrinsics Imaging, visit www.
intrinsicsimaging.com.