Showing posts with label DataMatrix. Show all posts
Showing posts with label DataMatrix. Show all posts

Thursday, January 9, 2014

DataMatrix code verification: what you need to know

In an effort to disprove or nullify one of my predictions for 2014, here’s some information you might find useful (and it comes straight from the ISO.org website):
  • ISO/IEC 15415:2011 addresses two-dimensional symbol print quality test specifications
  • ISO/IEC TR 29158:2011 is an engineering document intended for verifier manufacturers and application specification developers.

It describes modifications which are to be considered in conjunction with the symbol quality methodology defined in ISO/IEC 15415 and a symbology specification. It defines alternative illumination conditions, some new terms and parameters, modifications to the measurement and grading of certain parameters, and the reporting of the grading results.

ISO/IEC TR 29158:2011 was developed to assess the symbol quality of direct marked parts, where the mark is applied directly to the surface of the item and the reading device is a two-dimensional imager.

If you apply DataMatrix codes, you really need to know about this stuff. If not, you’re going to look kind of dumb when your customers asks how you make sure he can read the codes you apply.

Wednesday, March 21, 2012

Need a 2D code reader?


I don’t spend a lot of time on 2D codes, considering it a pretty mature technology, but I have just spent half an hour reading an interesting paper from Intermec.

I don’t think Intermec are well known in the machine vision world, but, so I have learned, they are a significant player in the world of code reading. And though I don’t have the numbers, I suspect that reading 2D codes is the biggest single market for vision equipment.

Turning to what I found so interesting; Intermec have a whole bunch of interesting papers available for download from their website, and one of these scored a couple of hits on my consciousness. Specifically:

  • A 1D barcode is just a number. For it to be of any value it has to be linked to some kind of database. In contrast, a 2D code can carry actual data. So a 2D code can retain the date of manufacture on the product, while a 1D code requires access to a database.
  • A very interesting potential application is in the area of hospital patient ID. You know how when you check it they fit you out with a wrist strap containing your name, date of birth and so on for all the world to read? Well replace that with a 2D code and confidentiality is assured. Only someone armed with a scanner can find out about you. It strikes me that this also increases patient safety as there must be less risk of misreading the patient’s information.
I know these might not be new to you, but they impress me. But to make your visit to my blog worthwhile, let me finish with a product reference. Intermec are bragging about a new imager with amazing autofocus capabilities. In fact they claim the EX25 can read codes from “up close to 15 meters away.”

Now that is a bold claim, and it has me scratching my head over the actual autofocus mechanism. I didn’t think liquid lenses had that kind of range, so I’m guessing it’s a motorized mechanical zoom.

Now when can we see this in a smart camera?

Tuesday, March 6, 2012

Not the whole story


Interesting article from Cognex on the pages of BioPhotonics magazine. “Vision Inspection Systems Keep Meds Safe” (February 2012) discusses the use of vision systems in pharmaceutical applications, particularly with regard to label verification.

The article discusses the use of cameras to read 2D Datamatrix codes, but in my humble opinion, there’s one significant omission. In my view, no discussion of code reading is complete without a few words addressing the difference between reading and verification.

Now I realize Cognex may argue that the application they describe is purely internal and there is no need for a customer to be able to reproduce the read result. That may be so, but I think it’s important that anyone exploring options for 2D code reading understands these issues. Just because you can read the code you’ve applied, it doesn’t follow that it is a good – machine readable – code. And without verification based upon industry standards, should a customer complain about legibility you get in to one of those “mine’s better than yours” arguments.

I have addressed this before – “Verifying datamatrix codes” (October 2011,) so if you have any interest in learning more, I suggest you click the link.

Wednesday, October 19, 2011

Verifying datamatrix codes


An engineer called in a panic. His customer had rejected a delivery because they couldn’t read the datamatrix code, yet when he ran the offending parts through his system he got good reads every time.

This is an all too common problem and it boils down to the difference between “reading” and “verifying”. “Reading” happens when you point the scanner at the code and it outputs a character string. The problem is that the customer almost certainly does this at a different working distance and with different lighting, so what works under your ideal conditions may fail in his suboptimal environment.

It was to overcome this that “verifying” was introduced. Verification is done under standardized conditions and with the objective of assessing the quality of the marking. I sent the panicked engineer a link to a useful article explaining the difference, and if you’re interested I suggest you look at it too. (I would cut ‘n’ paste the relevant paragraphs but was too intimidated by the threatening copyright notice.)

If you click the link above you’ll find that the article references various standards, most notably ISO 15415. This provides a standard for code verification but unfortunately there is a problem. As explained in “New standard improves verification of Data Matrix codes” (Test & Measurement World, February 2007,) the ISO standard is geared to black codes printed on white paper. It doesn’t work quite so well with codes laser-marked on metal surfaces. And that’s where AS9132 comes in to play.

But putting aside details of which standard to follow, the point remains: the engineer and his customer needed to agree a common way to assess code quality. Without this, arguments over readability, or lack thereof, devolve into shouting contests that no one will ever win.

Wednesday, June 8, 2011

Crying out for Datamatrix code readers


Normal practice in this blog is to share interesting cases of where people have put machine vision to work. Today I’m going to do it slightly differently: I’m going to show you a situation where they should be using machine vision.

“Laser coding plastic fuel tanks,” (published on the OptoIQ website, May 1st, 2011,) describes an automotive laser marking application. In this case a fiber laser is being used to etch a regular 1-D (like vertical fence posts) barcode on a black plastic gas tank. All well and good, until one get’s to the part that says, “… 2D would be more reliable, but they would have to change production line scanner controllers, which are not 2D capable.”

So rather than adopt a more robust means of encoding data, which would let them write more data and potentially improve traceability of what is a safety-critical component, the company prefers to stick with their old 1-D scanners. That seems a strange decision. Why not be proactive and offer the customers 2D coding? I know the auto industry and I know the big players are moving towards ever tighter traceability (not quite pharma level, but heading that direction.) Come to that, I thought the AIAG was pushing for greater adoption of 2D coding. Isn’t that why they have standards for code reading and verification?

Cognex, Microscan, call this company and tell them what 2D code readers can do.

Sunday, April 24, 2011

A new option for reading codes

When I’m shopping for something to read 2D and DataMatrix codes I will admit that I tend to go straight to Cognex and their Dataman readers. I know that’s unfair to Microscan who also have a first rate portfolio of image-based code readers, but frankly I see little to differentiate the competing products so I just go with what I know works.

And now, along comes SICK with another product I can ignore.

The LECTOR®620 appears to be a pretty capable product, as far as I can tell by the video presentation on SICK’s web site. I do like the laser pointer for alignment; that seems a very neat way of speeding up installation and I wonder why other companies don’t offer the same. No word on pricing but I have to think it slightly undercuts the Dataman and Microscan products. Curious name though. Did no one at SICK ever see Silence of the Lambs?


On a broader note, I find it interesting to observe how SICK are growing their machine vision presence. It started with the acquisition of the IVP Ranger 3D family, then came the Inspector smart cameras/vision sensors, and now code readers. It’s as if they’re starting at the top and working down. Perhaps I need to stop ignoring this growing family of vision products.

Monday, October 25, 2010

More on encoder technology

This isn’t strictly machine-vision, but it is motion control and integration-related so I’m covering it anyway. (Hey, it’s my blog and I’ll do as I please.)

A few days back I mentioned how Pepperl & Fuchs were using datamatrix codes as the basis of a long range position sensing technology (Novel use for Data-matrix codes), so this builds on that post.

In the September issue of Control Engineering, contributing editor Charlie Masi explores how electromagnetic encoders are one way of getting position feedback over long distances. (“Electromagnetic Linear Encoders To The Rescue”, September 10th, 2010.) When I discussed this type of challenge previously I was a bit hazy about the possible applications but Charlie presents a good one. He suggests aircraft assembly would benefit from the ability to traverse long distances with high position accuracy, a suggestion that makes sense to me.

As I say, this is not strictly machine vision, but it strikes me as being potentially useful, so take a look.

Wednesday, September 29, 2010

Novel use for Data-matrix codes

Data-matrix codes (DMC) are well known for part identification and traceability, but for measurement? Well that idea had me scratching my head, but according to “Data-matrix positioning systems” (MachineDesign.com, September 9th, 2010,) Pepperl & Fuchs have figured out a way to do just that.

As I understand it, the approach is to print a series of unique DMCs on a long, long strip. A camera is set up on a sliding carriage with a field of view sufficient to view six of the codes. Each code denotes a position and by interpolating between the codes the camera system can work out its location to a very high degree of accuracy.

Applications? Well I wonder about alongside railroad tracks or highways, or perhaps on very large machine tools. In fact anyway there are long travel distances this idea might have some mileage.

Wednesday, September 15, 2010

A really cheap data matrix code reader

Code readers, from companies like Microscan and Cognex, are not that expensive, but if $2,000 or so breaks the bank, why not build your own?

Well if your time is free it might be worth doing, otherwise I’m not sure I see the point, but there is an army of robotics hobbyists out there who are fired up by the challenge of doing clever things with opensource software, so guys, this is for you.

In “How to Build an Open Source Vision Sensor” (Vision & Sensors, September 1, 2010) Anthony Oliver sets out a step-by-step tutorial. I’m not one of those Linux programming enthusiasts, but this short paper has almost inspired me to give it a go. If you’re curious about developing machine vision without spending a ton of money with the big vendors, and you have a little time on your hands, why not give it a try?

I’m curious to hear how you get on, so don’t forget to email me pictures and comments!

Wednesday, August 25, 2010

Verifying Data Matrix codes

Let’s be clear about this, verifying a code is not the same as reading it. Reading means extracting the encoded information whereas verification consists of determining the quality of the marking.

“Why should I care?” you ask. “If my customer and I can both read the code, doesn’t that mean the marking is good?”

Well imagine that your customer calls you up and says he can’t get a good “read” on your data matrix codes. What do you do then? Most likely you pick a freshly marked part off the end of the line and scan it. “Yes, you say, I can read that,” but is that a sufficient test?

The problem is that your reading setup might be completely different to your customers. You might be flooding the part with monochromatic light and have the lens aperture stopped all the way down while your customer is using a handheld reader in a warehouse.

This is why we have standards for verifying data matrix codes. If you can show that your mark is good, as defined by international standards, then the problem is with your customer. But without standards your customer might push you into making expensive changes to your processes.

I recently stumbled across an excellent summary of the relevant standards on the “Test & Measurement” web site. “New standard improves verification of Data Matrix codes,” dates from February 2007, so it’s not new, but the information is still good. In particular, there are a number of links to the relevant standards. I strongly encourage you to make use of them.

Monday, March 15, 2010

Read 2D codes – very quickly!

Keyence isn’t the first name that springs to mind when shopping for a 2D code reader, but after spending some time browsing their website I can say they certainly deserve a look.

I was particularly interested in the new, “ultra-compact”
SR-600 series readers. You may need to register to get details, so let me tell you why that might be worth doing.

Not only is the reader very small and therefore able to fit into compact spaces, (though curiously, I couldn’t find the actual dimensions on the Keyence web site,) but it can also read codes on parts that are moving quickly – up to 160m/sec, or so they claim. Apparently this is achieved through the use of a “reverse ernostar lens” coupled with a very bright LED light and some rather clever image acquisition and processing software. This enables them to take out blur and deal with light variation across the field of view.

I wasn’t sure what a “reverse ernostar lens” was, so I put my friend Google to work. Apparently it’s an optical design developed by one Ludwig Bertle back in the early 1920’s. Its value is in being an optically “fast” lens – meaning that it let’s more light through – which I imagine is why Keyence are employing it in this sensor.

The
SR-600 seems like an excellent product for when you need to read 2D codes on anything flying down a conveyor belt, which makes me wonder why the marketing folks at Keyence decided to focus on the fact that’s very small.

Sell the sizzle folks, not the steak!

Tuesday, August 25, 2009

Picking a machine vision system

How do you decide which of the many smart camera systems on the market is the right one for you? Well Janice Hardrath, CTO of Censis, decided to use the ‘Chili Cookoff’ approach. As reported in Medical Design Technology, Censis were developing a 2D datamatrix code marking and reading system for surgical instruments and needed to find the ‘best’ code reader. (Here’s a link to their Censitrac® Instrument Manager product with some good images of the codes that had to be read.)

After setting up a direct comparison test of three competing systems, (what Janice called the “scan-off competition,”) she decided that the Cognex DataMan 7500 was the best tool for the job.

Three interesting points to take away from this article:
  1. Select a system by testing competing products on the actual task.
  2. Take in to account the reactions of the people who will actually be using the equipment.
  3. The lighting integrated into the DataMan 7500 was able to deal with curved, highly reflective surfaces – not an insignificant achievement.
Food for thought next time you need to select a vision system.

Wednesday, July 22, 2009

Read that code! Watch that movie!

If bar codes are your thing you might want to watch the videos on the Microscan web site. (Try Firefox if they don’t play in IE.) They show Microscan code reading equipment being used in a whole range of ways, and also illustrate the ease-of-use.

I’d really like to see more use of video for education and product promotion. Lighting is an area that cries out for simple ‘how-to’ movies; perhaps someone would like to work on a series for their web site. (Or you could commission me to do it for you.)

Wednesday, April 22, 2009

On improving traceability


What happens if a part somehow by-passes the machine vision system at final inspection? How do you ensure that you only ship product that has been inspected and pronounced “good”?

You could have the inspection system apply some kind of mark or label, then ask your shipping guys to verify the label is present, but is that really error-proof? When the truck is at the dock and the driver wants to leave, those are the kind of checks that get forgotten.

A better method is to set up a part traceability system where every item is given a unique number during manufacture, preferably in the form of a 2D datamatrix code. A scanner at the inspection station reads each code and writes it to a database, along with the date, time, and inspection result. That creates the inspection record.

Next, at shipping every part is scanned again as its packed or palletized. Any item lacking an inspection record is flagged, and ideally, it will not be possible to produce shipping documentation until the exception is resolved.

Yes there are probably ways in which the system can be fooled, but this kind of traceability can take you quite a way towards perfection.
So who do you go to for support in putting together a system? You could do much worse than talking to
Freedom Technologies (which is where I lifted the image above from.) Data management and traceability is what they do.

Thursday, March 19, 2009

Reading Bar Codes

I suppose a “bar code” might be something like, “One finger in the air for a Bud Lite, two fingers for a Sam Adams, knock once on the counter for a Jack Daniels,” but in this case I’m referring to those zebra stripe motifs printed on just about everything we buy.

Bar code reading is one of the biggest application areas for machine vision, especially since the introduction of the 2D “datamatrix” codes. Unlike the zebra codes, “datamatrix” codes can’t be read by a laser scanner; instead, a camera system, (sometimes described as a “CCD scanner,”) is needed to do the decode.

Over on the Cognex/DVT Smartlist discussion board a poster recently asked where he could get information on barcodes. I know Cognex have info on their web site, (look under “ID Standards and Specifications,”) but someone else suggested the “Worth Data® Bar Code Primer.” I wasn’t familiar with the company, so of course I took a look. Turns out it’s a really good introduction to bar codes, with a lot of links for further reading, so if your boss has just placed you in charge of a part identification program, you might want to start there.

Sunday, January 18, 2009

Debugging barcode reading problems

As pointed out in “Control Engineering,” (December 2008,) bar code reading is the biggest single application area for machine vision, and usually it’s pretty straightforward. But sometimes, for reasons that aren’t always obvious, it can be difficult to get a good “read”.

Eager to promote themselves as the “go-to” people for machine vision solutions, Keyence have published two “
Barcode Q&A” guides, subtitled “Why doesn’t my barcode reader work?” (You will need to register online for the downloads.)

I’ve read through both guides and found them full of good information. If barcode readers are currently part of your responsibilities, I’d recommend either keeping a copy on your hard drive or a print copy in your desk. Even if you don’t get involved with code reading, it’s good information, and when did a little knowledge ever hurt?

Tuesday, November 18, 2008

Where’s the growth?

What area of machine vision is growing fastest?

You may be thinking that the growth in camera resolution and computer processing power will create many more opportunities in industrial inspection, and you’d be correct. But that’s not the biggest growth area, at least according to Justin Testa, Executive V.P. at Cognex.

Interviewed in ‘
Test & Measurement World’ (November 1, 2008), Testa comments that, “the fastest growing application is industrial identification.” (That’s reading bar codes to you and me, both the 1D linear type and the newer 2D data matrix codes.)

Justion Testa was also asked what he thinks customers want to see in machine vision systems. Interestingly, his view is the same as mine: ease of use, which means both deployment and maintenance need to be less complicated.

To learn more, read the interview, “
Vision market hinges on ease of use.”

Wednesday, November 12, 2008

Making and reading data matrix codes

A sizeable part of the machine vision industry is devoted to the reading of data matrix codes. Those are the little checkerboard squares that are turning up on more and more components. They’re like bar codes only they can convey much more data, which makes them useful for part traceability.

Now while it’s true that the machine vision engineer doesn’t need to know how the marks are created, I happen to believe that a little knowledge can’t hurt, and that’s why I’d like to share with you this article from “
Industrial Laser Solutions” on “Direct Part Marking.”

There are several ways to apply the codes – ink jet, pad printing and so on – but this article focuses on laser marking. What’s particularly interesting, (or alarming, I guess it depends on your point of view,) is just how small the individual data cells can be. As vision professionals we should give some thought to what that means for resolution, field-of-view, and locating the mark in an image.

Don’t let anyone tell you that reading codes is an easy vision application!