NI-1744 Smart Cameras go offline using Vision Builder AI and LV2010?

I've run into a perplexing and frustrating problem.
I have a set of 6 NI-1744 smart cameras used to monitor sample motion in an automated system
A central robot moves samples between 6 satellite chambers; there is a camera mounted above the entrance to each of the satellites; the sample carriers are drilled with up to 10 holes encoding their numbers in binary (0-1023). There is also an L-shaped registration mark drilled near the region for the number encoding. Matters are complicated somewhat in that the second generation of carriers has a slightly more complicated registration mark (which includes the simple L of the first generation).
What I would like to accomplish is this:
Most of the time, I just want to be able to see what's under each camera, illuminating from above using a ring light attached to the camera. Call that Inspection A.
I may need to capture an image without the ring light. Call that Inspection B
When a sample transfer is occurring, I need to run a more complicated inspection (Inspection C):
A light is turned on underneath the end of the sample transfer arm (the "fork"), backlighting the region where the hole pattern would be if a carrier is in fact present.
Acquire an image of the fork with the backlight on.
Check to see if the image shows the fork to be empty. If so, return that information and the inspection is complete.
If not, look for the (backlit) registration mark and establish a coordinate system for the holes. Look to see which holes are present, calculate the sample number, return the data and the inspection is complete
If not, look for the 2nd gen registration mark. If it is found, establish the coordinates as in step 4, calculate the number, return the data and complete.
If none of the registration patterns are found, turn on the ring light, capture an image and return it so the operator can intervene and enter the appropriate data.
I have successfully built the inspection, and it appears to work in the Vision Builder configuration interface, or if run from the Vision Builder inspection interface. If I attempt to *use* the inspection, accessing it via the VBAI interface in Labview, one or more of the cameras will hang after one or more inspections and stops responding to LabVIEW. It will take multiple reboots to get it back on line and visible to either VB or Labview.
Originally, I had thought to configure the camera to run inspections continously and select inspection A, B, or C based on a variable I could access using the Labview Shared Variable Engine.  Every time I tried that the camera in question would hang. My current sort-of-successful software uses the VBAI functions in LabVIEW to open Inspection A, B, or C on the camera, run that inspection a single time and return the results and inspection image. That still ends up with one or more cameras hanging, especially if I've added the case to handle the more complicated registration mark.
I think I may be running out of memory in the camera. I have occasionally received an out of memory error message when running the inspection in debug (step) mode in the VB configuration interface, at which point the camera will disconnect from the VB interface. When I look at the system monitor tab for a camera in MAX, I can see that it is showing me 11.5M free/124M total memory, and 72.3Mfree/118M total disk space. If I understand those numbers, that means that less than 10% of the memory is free when the inspection starts!
I'm only communicating with the cameras via the ethernet interface. Are there any software components I don't need to have installed on the 1744 (MAX lists about 12 different things installed!) in that case?
Alternatively, it appears there are VBAI functions available that might let me acquire an image and then process it via a local copy of Vision Builder running on the host PC, rather than in the camera. Is that so, and if so, would it be faster than running the inspection in the camera?
I've attached a zipfile with the inspection that appears to stall the camera, and samples of typical images captured of the empty fork and a sample holder.
Kevin Roche
Advisory Engineer/Scientist
Spintronics and Magnetoelectronics group
IBM Research Almaden
Attachments:
Carrier Read Problem.zip ‏657 KB

The good news: thanks to some offline assistance from Brad, my cameras are no longer crashing.
The bad news: my labview VI using VBAI functions still fails for one or more cameras after a while (typically >12 hours of monitoring). 
It's very odd: the cameras are still visible online.
I can ping them.
I can connect to them via VBAI, run inspections that way (either in configuration mode or inspection mode), and disconnect successfully.
My calling VI, however insists that it can't connect (usually with a -354700 error from VBAI Connect.vi, occasionally with a -354705).
I am using shift registers in the monitor loop of the main VI so that I can pass the VBAI session reference for each camera back to the subvis that actually load and run the desired inspection once a connection has been made. After an indeterminate time, one or more of those appears to go bad, but if I attempt to reset and connect to the camera again (I did include a control to let me close and reconnect if necessary from the monitor loop), I still get the above errors.
The only way to get them back online within LabVIEW this morning proved to be to stop the main VI and reset all the controls to default, reboot the cameras, and then restart the VI. At that point it was able to connect to all 6 again and has been running happily for over 8 hours.
I set up the persistent sessions using the shift registers because I have observed in the past continually opening and closing resources like that can lead to memory problems. It also dramatically reduced my cycle time when all I want to do is get the latest images from the cameras to under 2 seconds.
Any ideas? Is there some subtlety to disconnecting/reconnecting to the VB in the cameras via Labview that I'm missing?
I am working on a slightly smarter version of the inspection that can be allowed to run continously in a camera and simply return the appropriate result when asked, rather than having to start and stop different inspections as I do now, but that is not ready for deployment yet. It's the symptom of running just fine for X hours and then losing one or more cameras that is baffling me right now.
Kevin Roche
Advisory Engineer/Scientist
Spintronics and Magnetoelectronics group
IBM Research Almaden

Similar Messages

  • Losing smart camera connection when using web server on NI1762 smart camera

    Hi
    I am using 2 smart cameras ( old NI1762 and the new NI1772) with Vision builder 2011 . 
    I am trying to find a way to retrieve data and image to a Visual Basic 6 application. i could not find an elegant way to do it , so instead , i am sending TCP command to the smart camera as an input and the smart camera send me back a TCP command a as an output. by this way i could communicate with the smart camera . For transferring images I could not use the TCP step , so I turned on the smart camera web server to get the image by a browser Object . But the problem is that everything is going well with the TCP, but when I turned on the web server and try to communicate with it, sometimes I loose the connection with the smart camera. That is happened with the 1762 smart camera. But when I use the NI1772 it rarely happed.
    Please help me. is there any other elegant way to communicate with the smart camera , and if a TCP and web server is a solution , Why the NI1762 web server is not stable ? Why i am losing the connection when browsing to the inspection page???
    Thanx

    Previous versions of Vision Builder had a COM library that you could use from Visual Basic 6 or other environments and talk over the network to a Smart Camera running Vision Builder AI and control its execution just how you are requesting. In more recent versions, this has been replaced by a native .NET and LabVIEW-native API that is much more fully featured. Unfortunately, I do not think the older COM mechanism is still available/supported (but I certainly could be wrong...).
    However, one avenue you may wish to persue would be to call into the .NET interface from Visual Basic 6. Microsoft designed .NET to allow COM interoperibility in both directions (.NET can call into COM libraries and COM libraries can call into .NET). Take a look at the following document from Microsoft:
    http://msdn.microsoft.com/en-us/library/zsfww439(v​=vs.85).aspx
    You could then look at any of the .NET (C#) examples to get an idea of the API:
    C:\Program Files (x86)\National Instruments\Vision Builder AI 2011\API Examples\dotNET Examples
    Eric

  • Vision Builder AI and multiple cameras/image files

    Hi,
    We are trying to develop an inspection using Vision Builder for AI with 3 1394 cameras.
    We have setup the image output to save all images from the inspection, however it only saves the last image acquired during the inspection.
    Is it possible to have Vision Builder save the images from the other 2 cameras?

    VBAI only has the ability to save the last image. If you would like to save the other images you will need to port the inspection to LabVIEW, and use Vision to save the other images. The other option is to create inspection scripts for each of the cameras.

  • I have unlock my iPhone to travel and I came home to use the back up and now my phone won't accept the backup

    I have unlock my iphone to travel and I came home to use the back up and now my phone won't accept the back up

    How & who unlocked your iPhone?

  • Vehicle tracking using vision builder

    Can anyone help me to track a vehicle using vision builder?

    The Object tracking feature allows to track multiple objects.
    To do exactly what is shown in the video, where the number of cars is variable, you need to use LabVIEW and Vision Development module to have more control over the creation of the objects. (The limitation with Vision Builder AI is that each object to track is associated with a tracking session, so you have to know up front how many object you need to track, but VBAI can track multiple objects).
    The principle that I described should be the same in LabVIEW: somehow detect the new car that comes into the field of view, and at that point learn the object so that it can be tracked. The prerequesite should be that you must know where to detect the car that comes into the field of view. The difficult part of the application is to define the region of interest of the new object you want to track.
    The LabVIEW example for object tracking is located here:
    C:\Program Files (x86)\National Instruments\LabVIEW 2014\examples\Vision\Tracking\Object Tracking.vi
    Christophe

  • I can not create an Installer, After install the Vision Builder Demo and then uninstall it. I can not create a Labview installer anymore, it asks me for a Vision Builder Installer, even if My Labview program does not have nothing to do with it...

    I can not create an Installer on LabView, After install the Vision Builder Demo and then uninstall it. I can not create a Labview installer anymore, it asks me for a Vision Builder Installer, even if My Labview program does not have nothing to do with it...
    Solved!
    Go to Solution.

     Hi Shada this can happen if you are including additional installers to your installer for example DAQmx. When you are doing this the installer has to include other files like MAX (Measuremente and Automation Explorer). Probably when you installed Vision Builder it updated MAX, so when your installer is trying to Include MAX, its asking for the source where it was installed in your computer in this case Vision Builder.
     Here you can cache the information so its not asked again, or you can download a newer version fo DAQmx, so it will update MAX and change de dependecy.
     You can find more details about this issue in this KB:
    KnowledgeBase 3S88PJMY: Why Do I Get A "Missing Distribution" Error When Trying to Build an Installe...
    And for keeping a copy here is more info:
     How Do I Stop the Missing Distribution Notification Each Time I Build An Installer?
    Best Regards
    Benjamin C
    Senior Systems Engineer // CLA // CLED // CTD

  • Smart camera 1742 selecting inspection by tcp/ip and labview

    Hello everybody!
    I´m working with two smart cameras NI1742 where i have some inspection for different products, i´m trying via tcp/ip and lab view 2010 select the inspection for each product. i have configured the tcp/ip connection and test it with the vision builder ethernet terminal, this part works very good, but i can´t do this with Labview where i show images from the smart cameras via shared variables.
    If someone know how can i do it? please, i will be thankful.
    this is my code but there is something that is wrong.
    thanks and regards
    Solved!
    Go to Solution.
    Attachments:
    USER1.vi ‏85 KB

    You are already using the VBAI API in LabVIEW to start the inspection. Why don't use the Open Inspection VI to select which inspection to run and then you don't need a product select state and TCP commands? You can use the Get Target Inspections VI to list the paths to the inspections on your target since they are saved in numbered folders and it won't be obvious what the path is, but once you get the path, it is very simple to just keep one session open to the target and use the API to open inspections, run them, even get images instead of using the variables (you can use Get Inspection Image for the Image or just keep using your shared variable since it sounds like that works fine.).
    There are two possibilities I can think of without more info on why your current setup doesn't work:
    1. When you start the inspection using the API, I don't think product select works, since it is expected that you just use the API to switch inspections. You can test this out by commenting out your VBAI API calls in LV. Start the inspection from the VBAI executable when connected to the target and the Product Select is in use. Run your VI that sends a TCP command to switch to the other inspection and see if it works (you can reconnect from VBAI and see if it's running the new inspection).
    2. There is an error with the TCP command...check the error out of your TCP VIs.
    Again, instead of trying to get your current model working, I would switch to using the API for running inspections and selecting the inspections. If you do use the API, you don't need to stop the current inspection, when changing inspections. The Open Inspection VI will stop any current inspection before loading the new inspection. It will wait until the current iteration is done before stopping the current inspection, and the clean up state of that inspection will be called as well.
    Hope this helps,
    Brad

  • Registration of several reference images in a test image using vision builder

    I have downloaded the trial version of vision builder, and I am attempting a test to determine if it's worth buying:
    I would like to determine the position and orientation of two reference parts within a set of test images.  I am able to load the reference images, obtain the grayscale, perform appropriate filters, determine their global orientation based on some straight lines, and select the desired ROI's that I would like to match up.  I am also able to load in a test image, take the grayscale, and filter it.  My state diagram has three heads with the three loading steps that converge. This all seems to be great, but how do I find the position and orientation of the reference ROI's within the test image? 
    I would like to use something like the geometric matching tool, but it only seems to work on using a part of a first image on subsequent images in the same folder.  I suppose I could use my reference as the first image in the folder, then loop through the remaining ones, but...
    Once I find the position and orientation of the first reference in the test image, I would then like to find the position and orientation of the second reference in the same test image, then report values like relative distances and angles between these found references.
    Does this mean I need two folders, with their own reference image and the same set of test images?  Would I combine the geometric matching results using some variables or math functions?
    What is the best way to perform this image registration in vision builder?

    RSFree101,
    Thank you for your interest in Vision Builder AI.  If I understand what you are trying to do, you are looking to compare the position locations of two separate parts in an image.  We have a tool that does this very well.  If you use the pattern matching to find both instances of the part, you should be able to determine the distance and angle between them relatively easily.  To do this, you will need to find an edge in between the two so that you can justify the angle between them, and then simply use a few Geometry functions to actually find the angle.  To record this information, you can simply use a Data Logging step to write your findings to file.  
    If you are looking for a more complete analysis on how you might be able to do this, you will need the Vision Assistant on your computer (if you do not have it already, you can get it by downloading a free trial of our Vision Development Module).  In the Vision Assistant splash screen, click on the Solution Wizard.  This pulls up a menu.  From there, go to Tutorial » Bracket Inspection.  Click Load Solution.  If you step through that example, this displays how to do what you are looking to do with the Vision Assistant, but it should be no different at all in Vision Builder AI.  Hopefully this helps.
    Regards,
    Keith M.
    Applications Engineer

  • Installing both Vision Builder 2012 and LabView 2012 on same Computer

    am new to NI Vision Builder Automation Inspection 2012 (Which I am supposed to learn and use for part inspection) as well as LabView (Which I need not know at this time)
    When I was presented (to work with) a 1722 Camera and the computer, Labview 2012 was already installed but not Vision Builder.
    The IT folks installed the Vision builder without uninstalling LabView.
    I have my problems getting upto speed with my inspection work, but is any of it attributed to both systems being on the computer?
    Can I (Must I) uninstall LaView??
    Thanks

    LabVIEW and Vision Builder run fine on the same computer.  I have several versions of each on mine with no problems.
    Bruce
    Bruce Ammons
    Ammons Engineering

  • I want to be able to use the ebay time zone app so I am using nightly builder version and I don't like it. What version can I use and still get my ebay thing, and how do I remove what I have? Thank you

    what version supports ebay time zone

    Sorry, but if your phone is locked to AT&T, there is no way to get your phone officially unlocked. AT&T will not unlock an iPhone for anyone for any reason. Sell it before you move & purchase a phone when you get there.

  • Modify variables in a smart camera by a remote computer

    Hi
    I have a smart camera NI1722 and I want to modify some variables inside the camera by a computer which is connected to the camera.
    Is it possible to modify variables inside the camera from a computer outside? On the computer we program with CVI. We have a RS232 and a TCPIP connection.
    Does anybody can help us?
    thanks
    Oliver
    Solved!
    Go to Solution.

    Hi Oliver,
    Are you using LabVIEW or Vision Builder AI to program the Smart Camera?
    There are multiple ways of exchanging data between a smart camera and CVI on the host computer.
    The easiest way is probably to use shared variables.
    If you're using LabVIEW to program the smart camera, the following article explains how to create and deploy shared variables on the target.
    http://zone.ni.com/devzone/cda/tut/p/id/4679
    If you're using Vision Builder AI, first connect to the smart camera, then select Tools>>Variable Manager...
    Select the  System Variables tag, then click Add to create variable for the data you want to share. Make sure you select the Publish on Network checkbox.
    You can set the value of these variables in Vision Builder, using the Set Variable step, located in the Additional Tools palette.
    And many steps allow to use them directly in their configuration page, by clicking on the down arrow of some numeric controls.
    Now, on the CVI side, this example shows how to connect to, read and write the variables that you created on the smart camera.
    https://decibel.ni.com/content/docs/DOC-3806
    Hope this helps.
    Best regards,
    -Christophe

  • Smart camera for flame and smoke detection

    Has anyone ever done this with the camera?  Is the camera capable of hold the agorithems to do the task?

    That sounds reasonable to try. But, I'm not sure if it'd be able to give you satisfactory performance and reliability. You do have the option of downloading the trial versions of our Vision Development Module (VDM) or Vision Builder for Automated Inspection (VBAI) products. You could then use any camera to acquire some images of smoke and fire and use our software to check if your algorithm ideas work. VDM is a LabVIEW add-on, which gives you low-level control over our image processing algorithms. Whereas, VBAI is a stand alone application that lacks some of the functionality of VDM, but it's menu-configured and allows you to create vision inspections much faster. Either of these software products can run on our smart cameras. I linked some info pages and trial download sites below.
    Vision Development Module
    http://www.ni.com/vision/software/vbai/
    Evaluation: https://lumen.ni.com/nicif/us/evaltlktsigproc/content.xhtml
    Vision Builder for Automated Inspection
    http://www.ni.com/labview/vision/
    Evaluation: https://lumen.ni.com/nicif/us/machinevisionbrochure/content.xhtml
    Mike
    Applications Engineer
    National Instuments

  • Ajout d'une smart caméra dans un projet Labview

     Bonjour
    Je possède Labview 2009 ainsi que Ni Vision Acquisition 8.5.1 et Ni Vision Builder 3.5. Lors de l'installation de Vision Builder je ne peux installer la boite à outils Developement Toolkit car il me dis que Labview 8.5 n'est pas installé (alors que j'ai la version supérieur de 2009). Du coup je ne peux pas ajouter de smart camera dans un projet Labview puisqu'elle n'apparait pas dans les cibles et périphériques vià Labview. Comment pouvoir installer cette boite à outils ? Existe-t-il une mise à jour d'un des logiciels ?
    Résolu !
    Accéder à la solution.

    Bonjour,
    En premier lieu disposez vous bien de TOUT ces logiciels :
    LabVIEW
    LabVIEW Real-Time Module
    NI Vision Development Module
    NI Vision Acquisition Software
    ou :
    Vision Builder for Automated Inspection
    Ensuite :
    Est-ce que vous pouvez voir votre caméra sous Measurement and Automation Explorer  (MAX)?
    Dans la suite je pars de l'hypothèse que vous ne pouvez pas la voir sous MAX.
    Comment l'avez vous configuré, notamment au niveau des paramètres réseau ?
    Si vous pensez que la configuration réseau n'est pas bonne, remettez les paramètres à zéro :
    Aussi il faut faire attention à ce que les ports suivants ne soient pas filtrés par un firewall ou autre :
    Si vous ne voyez toujours rien, démarrer votre Smart Camera en safe mode :
    Regardez sous Measurement and Automation Explorer (MAX) si vous la détectez, et n'hésitez pas à la formater et réinstaller l'ensemble des composants.
    Enfin, n'hésitez pas à utiliser la sortie série qui peut vous informer de l'état de la caméra  (en utilisant Hyperterminal ou autre) :
    Avec les paramètres suivants :
    Révélation (Surlignez pour lire)
    • 9,600 bits per second
    • 8 data bits
    • No parity
    • One stop bit
    • No flow control
    • 9,600 bits per second• 8 data bits• No parity• One stop bit• No flow control
    N'hésitez pas également à nous fournir l'état des LEDs (notamment status, power, pass et fail) de votre caméra.
    Il se peut que votre firmware soit corrompu et nécessite une installation / réinstallation de la cible.
    Cordialement,
    Da Helmut

  • Smart camera & PC

    Hello,
    When running VBAI 2013 on a PC in RUN mode, all image layers can be watched on the monitor.
    Using the NI-1752 smart camera connected to PC will I be able to watch all image layers as well in real time?
    If the question is YES, do I need to use the second Ethernet port, or every thing (developing and monitoring) is done with Ethernet port 1?
    Thanks,
    gsc

    Hi,
    Yes, there are 2 ways to monitor what the Smart Camera is inspecting. Both are using Ethernet Port 1.
    1) Display the inspection interface in a web browser on the host.
    You can use the default Inspection Interface or design your own. (Tools>>Inspection Interface Configuration...)
    Then, go to Target>>Target Options. Select the Web Server category and enable the web server.
    You can then go to inspection mode and run your inspection.
    The inspection can be monitored from a web browser of a PC, where you type the IP address of the Smart Camera.
    2) Use shared variables.
    You can create an image shared variable (Tools>>Variable Manager). In the System Variable tab, create an image variable and share it.
    Set it using the Set Variable step located in the User Additional Tools palette.
    You can then create a VI on the host that reads this image variable (and any other shared variable) and displays it on your LabVIEW VI.
    This application note explains how to do that:
    http://www.ni.com/white-paper/12322/en/
    Hope this answers your question.
    Best regards,
    Christophe

  • Smart Camera

    Saludos  a todos...
    Quisiera que me recomendaran una buena Smart Camera para trabajar proyectos de procesamiento de imagenes y automatización industrial.
    tambien quiero saber que otros componentes de hardware y software necesito para trabajar o con la sola NI 1774C Smart Camera puedo trabajar...

    Hello,
    My sugestion for you is to buy Sony Smart Camera.
    I use this model XCISX100/XP and i am really satisfied with it.
    Best regards.
    Menozac

Maybe you are looking for

  • Video's not showing up... Help!

    I got the video file to go onto my ipod and it's recognised as a video, but it's not playing (the video) it plays as if its a song. Any idea what's causing this? oh, and the program i'm using to convert these files to be ipod friendly leave this fugl

  • Watch the http request a programm sends

    Hello I want to write a SOAP-Request to a HttpURLConnection Object. public static void main(String[] args)           InputStream is;           String[] mess = {"<?xml version=\"1.0\" encoding=\"utf-8\"?>",                     "<soap:Envelope xmlns:xs

  • Retrieving iweb site content from server?

    Hi y'all. I was working on my iweb site and everything was going dandy. Then my comp crashed and the only way to get it too work was to re-install the entire system. Unfortunately, I didn't get around to backing up my iweb stuff but I did publish it

  • Counting Record Totals Within Query: Totals Output to New Table

    Hi All, I'm failry new to PL/SQL... my apologies if this is obvious... I'm trying to count the total number of BI_WRKFLW.BI_LMN_SRV_AREA occurences by each BI_WRKFLW.BI_LMN_SRV_AREA (The Code correspondes to a city name like Sundance, Sheridan, Etc.)

  • Using my old speakers with Mac Mini

    I just bought a new Mac Mini less than a week ago because my HP finally kicked the bucket. I've wanted to try a Mac and chose the Mini because I could still use my other stuff (monitor, speakers, keyboard, etc.) that still work just fine. The only pr