FAQs

Bender Associates--Sightech Products
 


Products

Documentation

FAQs

Applications

Technology

 

Frequently Asked Questions and Other Tips

 

How far off is PAL?

Please contact your local reseller or SIGHTech for availability of PAL versions of Eyebot.

Output, how does one define the delays?

Three ways:

  1. Via the OPTION menu.  Using the YES/NO and UP/DOWN buttons you can speed up or slow down the delay. 
  2. Via the RS-232 port. A simple terminal emulation program allow you to set the values. 
  3. Via the PLC (or PC) that controls the line (i.e., Eyebot send out the signal instantly, and you delay it elsewhere). 

What happens if there is a power failure? Does it retain the settings?

Yes. Up to 10 years. 


What are some successful applications realized with the Eyebot system?

Some examples are on www.SIGHTech.com  More examples are seen on the video. In short, if you can see (image) the defect through a video camera, then Eyebot should be able to see the defect.  Please consult SIGHTech with your specific needs. 


What kind of data can be output by the Eyebot controller?

A  Score indicating the severity of the defect. The more severe the defect, the higher the Score.  There are also two optically isolated relays coming out of the DB-25 port which switch 3 amps at 60 volts. 


Is the function access to the system also possible trough e.g. a serial communication port or paralel I/O control instead of manual selection through the front panel selector-switch?

Yes, all the commands are available thru the DB-9 (serial) RS-232 port. A complete list of all the commands is in the manual, which you can download from www.SIGHTech.com. 


What is the principle of operation of the learning algorithm  (self-teaching method through neuronal network classification?)

Eyebot learns about 13 million features per second. The basic principle is that Eyebot learns small features in relationship with other features. During the learning process, Eyebot learns all the features it sees.  In inspection mode during the RUN process, Eyebot complains when it sees features or characteristics that it has never seen before. 


What is the maximum pixel memory size that can be stored into memory?

We do not use frame grabbers and we do not store pixels. 


What sort of cameras are supported by the system ?  (e.g: full random shutter, full frame, etc..)

All NTSC cameras are supported. SIGHTech plans to move to PAL in 4Q99.


Why is Eyebot not able to distinguish between my good and bad part?

Just remember: you need to have a setup where there is a distinct difference between the good and bad part from the perspective of the VIEW position. 

In other words, if you're looking at VIEW and you can't tell the difference between the good and bad, then you must change things (lighting, video threshold) to make that difference more pronounced. 



Eyebot does not come on - the green LED does not light up. 

Check AC power pack connection to Eyebot.  Turn on power switch.



No Video Display.

Check power connections and video cables. 

  • Are the cables on the Eyebot connected correctly?
  • Is the monitor plugged into the monitor jack? 
  • Is the Eyebot turned on? The switch is on the rear. 
  • Is the monitor adjusted properly? 
  • Is the camera's power connected?  Plug the camera directly into the monitor to see if the video system is working


The Score (the thin bar) barely goes up even after 60 seconds of training.

  • Does the image that Eyebot is trying to learn have many features? (A good example of an object with many features is a dollar bill.) If so, complex objects tend to take longer to learn than simple ones, especially if it is moving.
  • Is the object moving too much in a non-repeatable fashion?  If so, try better fixturing or try putting using Eyebot X/Y switches in the  Non-Fixtured  position for training and operation. 


What is the tolerance for a moving object? What is the speed variation?

Eyebot can learn moving objects at a pace at over 2,000 per minute. It helps to train Eyebot at a similar speed that it will inspect the object. It doesn't have to be exactly at the speed, but the more similar, the better. 



If I set the Decision Threshold level slightly below the Score level, what does it mean? Am I correct to say that the lower the threshold level is relative to the scoring level, the less strict Eyebot becomes?

That's correct.  Moreover, the score is logorithmic; therefore, a relatively small movement at the bottom is equivalent to a relatively large movement at the top. 



What is the best way to demonstrate the features of the Eyebot? Any recommendation? 

Look on our web page under Applications to give you an idea of some of the problems we solve and demo. Also, under Eyebot you will find some more info.  Do a demo that shows off the self-learning ability of Eyebot. A bottle demo works well, or have it learn and inspect raisin boxes. We learn some good bottles/boxes, then put it in the inspect mode, and it will see defects on the bottle/boxes. It will take about 5 minutes of learning. 



Why does Eyebot not signal a defect when there is nothing on the screen?

Because there are no features. To get around this, turn on the pixel counter by turning to OPTION and pressing the YES button TWICE. ERASE and re-train Eyebot. Make sure that Eyebot does not learn anything on the screen or the pixel counter will not work, because it will learn that no pixels are acceptable. The pixel counter learns the acceptable range of pixels while Eyebot is in LEARN. When placed in TEST or RUN, Eyebot will alert you when either there is a large jump in the number of pixels or a large drop.  The more narrow range of pixels you show Eye-bot, the more effective the pixel counter will work. 



Why is the Score not rising when I am in LEARN (or IGNORE)?

Try erasing Eyebot and starting over.  Look at the VIEW Mode so you can see, on the screen, what Eyebot sees.  Is the image too complicated or is it moving too much in a non-repeatable fashion?  If so, try better fixturing it or try using the Eyebot’s Non-Fixtured Mode for training and operation. 

Eyebot learns a part in one position in the center of the screen and when I move the part to another area of the screen, Eyebot signals a defect (i.e., the Score drops). 

First, verify that Eyebot’s rear settings are on Non-Fixtured X and Non-Fixtured Y. Toggle the switches twice to be absolutely sure. 

Second, even if your Eyebot is operating in a completely Non-Fixtured state, it is still normal for this to happen. The reason this happens is that even when it appears that your lighting setup is even, it usually is not. As a result, when you move the part to another area of the screen, small new features appear because the light hits the object in a different way and causes new shadows, which cause the new features. 

The solution is to LEARN the part in various areas of the screen. Be careful to not put your hand in the screen while Eyebot is learning, because Eyebot will learn you hand, which may diminish the perform-ance. Another trick is to tap the camera to cause vibrations, so that Eyebot is less sensitive. 

Third, it is possible that when you move the part to another area of the screen that you placed it in a slightly different orientation, which Eyebot never learned. Therefore, have Eyebot LEARN the part with a little bit of realistic variation and changes in orientation. 



Do you have any program that runs on PC that can link with Eyebot? Can you get the status from Eyebot and control it via a PC?

Yes. See the Eyebot Manual for details. 

To manage Eyebot through a PC, you may use Procomm or any terminal emulation program. We use version 2.4.2 (current version is 4.5, and costs $129). You need to hook Eyebot through the serial port. Eyebot works at 19.2K baud. Full duplex. No parity. 

SIGHTech suggests using the least expensive terminal emulation program. You don't need anything fancy. You may find more at Shareware.com and search for "terminal emulation." 



When will Eyebot make the decision?

Eyebot makes 60 decisions every second. In other words, it makes decision on every video frame. On the other hand, it samples 18 video frames before sending an output, hence it can inspect three parts per second. 

The bottom line is that Eyebot sends 60 outputs per second, but because it samples many frames before sending a output it cannot inspect more than 3 parts per second. Hornet, on the other hand, will sample fewer frames, and therefore, will be able to inspect more parts per second. 



If no strobe, how does the Eyebot learn as the shampoo bottle passes by the camera?

If there is no strobe, then Eyebot will learn EVERYTHING on the screen, including your hand (if you stick it in the screen), the background, and everything in the viewing area. 

It takes about 5 minutes to learn the shampoo bottles, assuming low UVT (see manual) and decent lighting (we use $19 halogen lamps). 

Eyebot can spot very small defects. 



Multi-Session Eyebot  is able to grab 8 images.  Do you think this will be used for inspection of components on a PCB?

Remember, we don't grab images. We do not use a frame grabber. MS Eyebot will be able to do multiple training sessions. Each training session can comprise thousands of images or frames. You could learn a gear in all orientations in just one training session, for example.  MS Eyebot will then allow you to inspect multiple products and/or do object recognition. 

PCB inspection is difficult. Eyebot can only spot gross defects (missing components, for example). Missing solder is tough. We would need a fair amount of product placement control. 



Is your Eyebot NTSC or CCIR? 

Eyebot is currently shipping NTSC or RS-170 compatible. In 2000 all new Eyebots will also be PAL or CCIR compatible. 



When will SIGHTech offer units with multiple cameras?

There are currently no plans for this feature. Eyebots are so afforable that you can purchase multipele units in your process. If you need hundreds of Eyebots, consider becoming a Mini-Eyebot OEM.



Is the optically isolated relay output of Eyebot compatibleto a PLC controller. (0-24volts)?

Yes. It's a relay output sends a signal of 3 Amps at 60 volts, AC or DC. It's very flexible. 



Does the Eyebot come will suitable lighting accesories?

We only provide suitable lighting if the customer requests it. Lighting is such an application specific solution, that it may not make sense to include lighting with every order. 
 


How do I reduce the amount of "video noise" Eyebot sees?

The key is that you image the parts that you want to see.  Do this experiment:

  1. Put Eyebot in "VIEW".
  2. Adjust the Video Threshold so that you can just barely see the parts that could be missing.
  3. Remove the part.
  4. Can you see the difference when looking at the VIEW?
  5. If not, then adjust the video threshold so there is a discernable visual difference between a good part and bad one. 

 

What is the tolerance of placement for fixtured mode and non-fixtured mode?

Full Fixtured (FF) is extremely sensitive to part placement. If it moves slightly to the left, right, up or down, then it will be considered a defect. If it is missing it is also a defect. 

FF is useful when you want to see small defects and you know the part is extremely controlled in its X/Y positioning. If you can't control the placement, then you should consider Non-Fixtured (NF). 

NF is relatively insensitive to part placement. For example, let's say you have Eyebot learn a cellular phone on a gray background in NF. Then you place it in RUN. If you move the cellular phone slightly up, down, or right or left, you will notice that the score does not move down much, assuming your lighting is diffuse. If you rotate the phone, however, the score will drop because it will be considered a defect. Similarly, if you create a defect on the phone, it will also make the score drop. 

If NF appears to sensitive to placement and is not acting as described above, then it could be because: 

a. You may have low-level lighting that causes the shadows when you move the part around the screen. For instance, the cell phone could appear to have defects if shadows cause new features or characteristics on the phone. So adjust the lighting so that it doesn't create too many new shadows if you move the product around the screen. 

b. You might be slightly rotating the object. Therefore, giggle the part a bit to teach Eyebot a slight amount of variation. 

Finally, there is Half-Fixtured (HF), which is sensitive to up and down movements, but somewhat insensitive to right and left movements. The new Eyebots allow you switch this in your OPTIONS menu, under the PROCESSING submenu. 


How do I make Eyebot start inspecting? In other words, how does it know when the next unit is under the camera for inspection. (I'm using the Eyebot within a continuous, no-strobe system.)

Eyebot is ALWAYS INSPECTING. There are only three ways to stop it from inspecting: 

a. Put it in VIEW mode. 

b. Strobe enable the input via the optically isolated relay or the RS-232 port. 

c. Use strobe lighting. (In this case, Eyebot is still always inspecting, it just can't see when the strobe is off.) 

 



Is the inspection area (seen in the VIEW mode) fixed? It would be good if Eyebot could zoom to a particular location.  Can I vary the window of inspection?

Yes, Eyebots allow you to control the inspection area.  Turn the knob to OPTION and press YES to enter the WINDOW submenu.

Use UP and DOWN to navigate. If you respond YES, then can use the UP and DOWN buttons to modify the size. 


Is Eyebot suitable for mark inspection? Say inspect marks on IC?

As you probably know, Eyebot does not do OCR. It does not do Bar Code reading either. 

The general rule of thumb with Eyebot is: if you can see the defect on the screen (through the eyes of the camera), then Eyebot should be able to see it too. If the difference between a good mark and a bad mark is really obvious, then Eyebot should definitely be able to do it. If Eyebot is not able to see the gross defect, then you should probably troubleshoot another part of your setup. 



I need to inspect the marking on the IC. Say "74LS123" whether itis printed correctly or not. What are the things to take note whensetting up the Eyebot? So far I have tried setting it up but it fail to recognize the marking. It only recognize whether the IC is present or not. 

The most important thing you need to do is go into the VIEW mode and see if you can see the marking on the monitor. If you cannot see the marking in the VIEW mode, then you should adjust the lighting, lens, or camera to make sure that Eyebot can see the marking relatively well. 

Don't worry that the image in the view mode does not seem crisp. This is normal. Eyebot will still see a lot of detail. The key is that you can see some amount of detail in the image. 

If you cannot see much detail, then consider zooming into the marking to make the image bigger. Then refocus the camera and/or adjust the lighting to make the features of the marking relatively clear to Eyebot in the VIEW mode. 

The second thing you should be careful is the amount of rotation you put on the IC. If you train Eyebot to learn an IC in many positions and orientations, Eyebot's learning will become generalized and, therefore, less sensitive to small defects. 

IMPORTANT: The more variation you have Eyebot learn, the less sensitive it becomes. 

So if you learn the IC with a fair amount of rotation, then it might not be able to see if the "3" of the 74LS123 marking is missing. 



When using IGNORE, if a new object, which Eyebot has not been trained to either LEARN or IGNORE, appears on the screen, what will be the outcome?

It depends.  If the new object (which Eyebot has never seen before) has similar features and characteristics as the learned object, then the score will react as it would when it saw the learned object. 

If the new object does not share many of the features and characteristics with the learned object, then the score will react as it does with ignored objects. 

Obviously, using IGNORE is only useful when you have a known universe of objects; in other words, you know all the objects Eyebot will be looking at. If you are not sure what types of objects Eyebot will face, or what types of defects Eyebot will encounter, then you should not use IGNORE. 

Here's an example of when to use IGNORE: you have 4 parts and you want Eyebot to tell you when it sees the part it learned. There are only 4 parts.  So you make Eyebot LEARN one and IGNORE three. Eyebot can LEARN and IGNORE in all orientations.  Then Eyebot should be able to identify when it sees the learned part. 

Another example: let's say you want to see if a screw has been put on or not. You LEARN the object with the screw. IGNORE it without. That is the known universe. There are no other possibilities. Therefore, Eyebot will be able to tell you when you have a defect. There is only one type of defect possible. 



When teaching the Eyebot to recognize a marking say "103" on a chip resistor, Eyebot will say that when I move the unit slightly Eyebot will say it is a defect. 

When you are in Non-Fixtured-Mode, you should be able to move the object around without Eyebot thinking it is a defect, unless you are focusing so close onto the mark and you are not looking at the whole part, then that would cause a defect.  Also be careful of angular movement - Non-Fixtured-Mode is extremely sensitive to rotational movement. 



How would you go about teaching the Eyebot to recognize a marking say "103" on an IC?

Let's try the first way. 

  1. Make sure you are in NF (Non-Fixtured). 
  2. Set the camera so that the ENTIRE IC is in the field of view. 
  3. Put the IC on a plain piece of paper that reduces video noise. 
  4. Select ERASE and press YES.
  5. Go to VIEW mode (make sure you can see something that looks like the marking. If you can't see the 103, then you can't solve it this way, you will need higher resolution). 
  6. Assuming you have a decent image in the VIEW mode, turn knob to LEARN and press the YES button. 
  7. While Eyebot is learning, move the piece of paper around a little bit (but do not tilt the IC). Make sure your hands are not in the viewing area (that's why the piece of paper helps). Move it around the screen (while maintaining the same orientation) for a few minutes until the learning bar is in the upper portion of the screen. 
  8. Turn knob to TEST. 
  9. Move the IC up and down and right and left (but do not tilt it). The score should not drop much, because you learned it in NF and you put a little bit of movement while learning. 
  10. Now tilt (rotate) the IC (by moving the paper). Is there a defect? Does the score drop? It should. 
  11. Now replace the IC with one that does not have the marking. Does Eyebot see the defect? Does the score drop? If the difference is apparent in the VIEW mode, then Eyebot should see the difference. 
  12. Train Eyebot with some more good ICs, because every IC will be slightly different, so Eyebot needs to generalize its learning somewhat. 
  13. After training a 10 good ICs, see if Eyebot can still see the defective IC. Try putting a good IC that Eyebot has never seen before; do you get a false reject? If so, Eyebot needs more training.

The second way, perhaps the better way, is to focus primarily on the marking. The advantage is that you don't have to worry about having sufficient resolution. 

  1. Follow the same steps as above, but make sure the main object in the field of view is the marking. In other words, the marking should take up 90% of the viewing area.
  2. Turn to LEARN and press YES. 
  3. Move the IC around slightly to put a little bit of variation in the learning (so that you don't just learn it in one place). Make sure the thin bar is in the upper half of the screen before going to the next step. This may take a few minutes. 
  4. Continue by following Steps 7-12 above.

If using IGNORE doesn't work on this application, nothing will! 

How to use IGNORE: 

  1. Turn to LEARN and press YES when you have the marking in place. Move the IC around while learning. 
  2. Turn to IGNORE.
  3. Put a defective IC on the screen. 
  4. Press YES to start ignoreing the part. 
  5. Move it around the screen (to ignore various positions). Keep moving it around until the thin bar goes into the upper half of the screen. 
  6. Turn to TEST while the defective IC is on the screen.
  7. Set the Decision Threshold with the UP and DOWN so that DECISION light stays off.
  8. Put the original IC (with the marking) onto the screen. The DECISION light should go on when Eyebot sees the object it learned.


What is the speed of the Eyebot making the inspection?  Need to know the operating rate (Eg. max speed).

Eyebot's maximum speed is 1/60 sec or 3600 parts per minute. Set the SPEED (under PROCESSING submenu) to 0 to get this max rate. The SPEED value is the number of video frames Eyebot averages before making a decision.



When Eyebot is used to inspect device carrier tapes, should the installation of Eyebot should be indexed or free moving? 

The free moving approach is preferred if possible.  It greatly simplifies setup. Carrier tape should be feasable if carefully done and the following are points are considered for the setup: 

  1. Tape movement is smooth and not too fast (6 in /sec is fine which is inspecting at a rate of 4-20 pockets per second). 
  2. The tape should be fixtured so it cannot move sideways or up/down. 
  3. Experiment with illumination, since it is the reflections off the surface, and shadows,  that provide most of the features for inspection.  Varying surface sheen will cause different eflections - these variations must be trained into the Eyebot.  The black color of the carrier tapes make lighting especially challenging.  Note that reflections from sharply shaped corners, etc. do not change radically with sheen differences - reflections from flat areas do. Diffused "cloudy sky" illumination may be helpful in this application and may minimize trouble caused by sheen variation. 
  4. With the Eyebot in VIEW mode, be sure that the defects that you are interested in are visible. Create some of the defects in question and test the setup. 
  5. Eyebot should be able to detect bended tape, improperly formed pockets, foreign material, sideways hole shifts (although somewhat tricky), improperly formed holes, and surface scratches (if large enough to be imaged - check with VIEW mode). 

How fast does Eyebot run?

The default speed setting is 18 fields, which is 9 frames.  This means that Eyebot will learn and inspect 9 frames before it makes a decision.  It averages its decision over these 18 fields.  This means that Eyebot can inspect around 200 PPM.

If you want to go faster, decrease the speed setting.  For example, by lowering the speed setting to 2, Eyebot will make a decision on a single frame.  Now the speed will be 1/30th of a second, or 1800 PPM.

Finally, if you've set it at 1 or 0, Eyebot will run at 3600 PPM.  When the setting is 0, Eyebot will send a sharp spike from the relays, instead of the normal 15ms on time.

 


How do I train Eyebot to accept some variation in the placement of the part to be inspected?

While Eyebot is in the "LEARN" mode, try the following:

  1. "LEARN" the part in its fixed state.
  2. Tap the camera (while in "LEARN") and/or wiggle the part slightly (without getting your hand in the field of view).
  3. Turn knob to "RUN".
  4. Pull out the part and then put it back in again.  What is your Score?  Did it drop significantly?  If so, return to step #1 and repeat.
  5. Once Eyebot is no longer complaining about a good part and that the Score is consistently high, then you should try pulling the part away and setting the decision threshold accordingly.
  6. Make sure the Pixel Counter is on (you should have two gauges on the screen).
  7. Make sure that there is always a part on the screen during the "LEARN" process, otherwise you will teach Eyebot that no pixels is acceptable.


While Eyebot was in the "LEARN" mode I removed a part.  Eyebot's Score was oscillating up around 40 and my Decision Threshold was set at 16.  Why is the fail light still flickering?  
Most importantly:  you are dealing with a hard thing for Neuro-RAM to see, which is the absence of features.  Therefore, I would ignore the Score completely and focus on the Pixel Counter.  Remember, if either the Pixel Counter or Score gives a failure, then the part will fail.  Therefore, this is an instance when you might just want to rely on the Pixel Counter.  It's got to do with how the algorithm works:  it doesn't see absence of features as well as the presence of features.

If you want to detect a flaw using the Score, then you will have to pull back very far so that the part is only taking up about 10% of the screen.  It will look funny, but it will work.

Eyebot learns very small features in context with other features around it.  Since you are so close, it does not make an association with the missing pieces and the part as a whole.  Therefore, by pulling back, and making it a small image on the screen, Eyebot will associate all the features together.

In short, you have two options:

  1. Rely on the Pixel Counter and ignore the Score (i.e., just train Eyebot to learn the acceptable pixel range and then that range should drop when you remove lots of pixels)
  2. Pull back, make the image small and rely on the Score.


 

REMEMBER:  Eyebot will fail the part when either the Score drops below the Decision Threshold OR when the pixel count goes outside (high or low) the range of the Pixel Count.

Therefore, the fail light is flickering because your pixel count range is, for example, 600 to 800, and the actual pixel count is jumping between 580 and 620 - for example.  Or 780 and 815.  This would cause flickering even when the Decision Threshold is 16 (and the Score is well above it).

Both the Pixel Counter and the Neuro-RAM (i.e., Score) must voice approval before a part is passed.

If you want to loosen up the Pixel Counter, then you can: 

  1. Train Eyebot more loosely and give it a bigger range of pixels, so when it complains and it is indeed a good part, just make it learn that too; 
  2. Manually adjust the Pixel Count via the "OPTIONS" menu (not recommended).

I would rather you do (a.) because it's more true to life.  If it's giving you a sporatic failure on a good part, just make it learn that part!

If you want, experiment with FULL Fixtured Mode.  In the "OPTIONS" menu, go to PROCESSING, then select FIXTURED and pick FULL.  This mode will be hyper-strict about your positioning, so be patient.  It will complain if anything moved, even slightly so training may take a few minutes.

 

 

ghersgtrasger