Scan engine vs. module

I recently received a 9023 RT controller and 9114 chassis.  I have 7 modules installed, 9205, 9265, 9425, 9477, 9481, 9485, and 9264.  How do the installed modules affect CPU usage in scan mode.  Is a module scanned by virtue of being installed or do you need to access some I/O on a given module before it is added to the scan.  Does it take as long to scan every channel on a module as to scan one?   In my short experiments I have all seven modules in scan mode.  When I had DI0 and DI1 from the 9425 monitored using I/O Alias the scan engine used about 20% of the CPU.  When I added AI0 to the monitoring the scan usage went up to 50%.  When I added AI1 the scan usage didn't seem to change.

I played with this a little more.  I am monitoring the IO Alias using a desktop PC.  The amount of CPU usage on the cRIO varies with the loop rate of the monitoring VI on the PC.  So perhaps some of the problem is the network load on the cRIO as it is the server in this case.

Similar Messages

  • 9236 enable shunt cal property crashes crio OS with scan engine

    I would like to inform users of the 9236 Quarter Bridge Strain Gauge Module of a bug. The Real-Time team is aware of this issue and I have been working with an app engineer on it for about a week and he has confirmed my findings. He says the problem is most likely a driver issue or scan engine issue and they are investigating it.
    There is a bug that completely crashes the cRIO operating system with the 9236 module. Currently when a cRIO device is loaded with LV2009 SP1 or LV2010 and using scan engine interface, attempting to write the "shunt cal enable" property of a 9236 module completely crashes the VxWorks OS. If you try to access the property again, the crio crashes and enters an error state where the crio has rebooted twice without being told to. The LED indicator blinks four times to indicate this.
    I have tested this with a few different hardware combinations with both the crio-9014 and crio-9012 controllers, combined with either the 8-channel 9104 back plane or the 4-channel 9102 back plane with the same results. The app engineer was able to duplicate this issue as well.
    To duplicate the bug:
    Load a crio device with 2009 SP1 or LV2010 and configure the device for scan engine. Locate the 9236 module in the project explorer and drag and drop it into a VI to create the IO variable. Right click the output terminal of the IO Variable and go to create > property > enable shunt calibration  on a channel. Once the property is dropped, right click on it and do change to write so that you can write a boolean to the variable. It doesn't matter if you write a true or false to the property, the results are the same. Hit run, watch it crash. When it reboots, hit run again. The crio is now in a state that can only be recovered by physically resetting the device.
    I love the crio stuff and I use it every day because it is very reliable and robust. This kind of thing is rare, which is why I am reporting it to the community as well as NI as it is a pretty big bug that took me a while to narrow down.
    [will work for kudos]

    rex1030,
    Shunt calibration can be accessed using a property node.  The operation will be the same, you still need to acquire two sets of data and compute the scalar.
    You can obtain the necessary reference by dragging the module to the block diagram from the project.  Please see http://zone.ni.com/devzone/cda/tut/p/id/9351 for more information on programmatic configuration.
    Let me know if you have any other questions.
    Sebastian

  • Setting thermocouple type in scan engine

    I am using cRIO 9211 to acquire thermocouple data using NI Scan Engine. I don't see any option to specify the type of thermocouple other than by right clicking on the module (in project) and selecting Properties.
    Is there a way to programmatically set the type of thermocouple?
    If this is not possible, can I can read the cjc and offset channels, so that I can convert the raw voltage to temperature in my RT code?
    Will I be able to read the cjc and offset channels if I use NI Scan Engine Advance I/O Access?
    "A VI inside a Class is worth hundreds in the bush"
    യവന്‍ പുലിയാണു കേട്ടാ!!!

    Cross posted here.
    "A VI inside a Class is worth hundreds in the bush"
    യവന്‍ പുലിയാണു കേട്ടാ!!!

  • NI Scan Engine Wont Run

    Hello, I am trying to deploy a program on the real time controller of a compactRIO. I decided to use scan mode for now. However, when I try to run my VI I get the following error:
    One or more items in this deployment require the NI Scan Engine and corresponding I/O driver(s) to be installed.  Go to MAX to install.
    If you continue to encounter this conflict, refer to the "Deploying and Running VIs on an RT Target" topic in the LabVIEW Help for information about resolving target deployment conflicts.
    I have LabVIEW real time on my machine so I don't know what the reason for this is and I can not find under MAX where to install the scan engine (again I assume it is already installed).
    I am using LabVIEW 8.6.1 and the modules I use on my cRIO-9073 are the 9477 DO module and the 9205 AI module. Any help would be appreciated.
    Solved!
    Go to Solution.

    if I tried to install the software software at the NI Max
    but it give error 
    "The selected target does not support this function"
    how to fix this error,
    what problem with it
    thank you
    Msyafiq
    Attachments:
    install error.jpg ‏128 KB

  • Unable to Access Itune's Store Cisco Content Scanning Engine

    Hi there, new to apple forums. Having all sort of problems downloading from Itunes Store and updates, via our Cisco ASA Firewall.
    Have identified that the Trend Micro Scanning Engine Module is causing the issue, and the only work around is to disable the Scanning Engine altogether, or to configure IP address exclusions from the scanning process. Using the logs from the firewall, I managed to locate some of the IP's related to Itunes; registered to Akamai Technologies.,US (81.23.243.0/24) and got things working, but now it has stopped working again. Is there a list of IP addresses that Apple and Itunes use?
    Would appreciate any pointers if anyone else has resolved similar issues.
    Thanks

    Apple uses a distributed server system and so may use a number of IP addresses, none of which have ever been officially published, so trying to allow specific addresses may not be possible. If your system will accept domain names and not just IP addresses, try using these two domains instead:
    phobos.apple.com
    phobos.apple.com.edgesuite.net
    Hope this helps.

  • CRIO 9068 + Scan Engine Support Error - Even though it is installed on cRIO, after deploying error says its missing

    All,
    I have a cRIO-9068 that I am trying to use the scan mode for. I have intalled all the latest drivers and software as explained. However, when I set my chassis to scan mode and then select deploy all, I recieve this error on my chassis and all of my modules:
    "The current module settigns require NI Scan Engine support on the controller. You can use Measurement & Automation Explorer (MAX) to install a recomended software set of NI-RIO with NI Scan Engine support on the controller. If LabVIEW FPGA is installed, you can use this module with LabVIEW FPGA by adding an FPGA Target Item under the chassis, and drag and drop the module onto the FPGA Target Item."
    Has anyone experienced this or know why labVIEW won't recognize that the software is installed on my cRIO or is it not being installed correctly?
    Solved!
    Go to Solution.

    So I found that the target's Scan Engine was in Configuration mode.  After placing it in Active, I was able to deploy all of the modules on the cRIO target.  However, now I cannot deploy any of my modules on my EtherCAT NI 9144 racks regardless of which scan mode I place the Scan Engine.  I verified that I have all software on the cRIO target I need.  I was also able to find the EtherCAT slaves and their modules on MAX and I was able to add them to the project.  The problem I am having is being able to deploy them.  I have gone through the procedure outlined in the manual provided with the EtherCAT racks and the following link with no issues:  http://www.ni.com/white-paper/10555/en/
    The top LEDs on the EtherCAT racks are solid yellow and the bottom are solid green.  Does anyone know why I may be having this problem?

  • Shared Variables, Scan Engine & Multiple Targets

    I am seeking some general advice about the structure of my LabVIEW project.
    The project consists of a laptop with LabVIEW, and a joystick connected, and a CompactRIO connected via ethernet. I had been running the cRIO in FPGA Interface mode, however a change in some things caused the project to have to be shifted to scan mode.
    As of now, the code on the laptop updates shared variables on the cRIO, and reads from shared variables on the cRIO for monitoring. I want the shared variables hosted on the cRIO because it will also need to operate without the laptop connected. Before switching the cRIO to scan mode, I found that I had to first run the laptop code, and then run the cRIO code, or the shared variables would not communicate properly. Now that I have switched to scan mode, I have to run the cRIO code first, and even then the shared vars do not communicate properly for more than a few seconds, and are much laggier.
    My ideal project solution is a system that can run with or
    without the laptop connected, and obviously not having all these shared
    variable issues. I would like to autostart the code on the cRIO, and
    have the user run the laptop code if necessary, but in the past this did
    not seem to work with the shared variables.
    I am really confused about why this is happening. Hopefully I have explained my problem well enough. I don't really want to post the entire project on here, but I can email it to people if they are willing to take a look at it. Thank you for taking the time to read this.
    I am running LabVIEW 2010 SP1 with the Real-time, FPGA, DSC, and Robotics modules. I have the Feb '11 driver set and NI-RIO 3.6.0 installed and all completed updated on my RT cRIO.
    Solved!
    Go to Solution.

    I do this type of stuff all the time...
    Move all your NSV libraries to the cRIO.  From the project you must deploy to the cRIO and from then on they are persistant until you reformat.
    From your windows HMI app, you can place static NSV tags on the block diagram or use the dynamic SV API to R/W.  Also you can bind HMI controls and
    indicators directly to cRIO NSV's (This is what I do)  Also I create a 'mirror' library in the PC HMI that is bound to the cRIO library.  This library has DSC Citadel
    data logging enable and will automatically save historical traces of all my important data - very nice.  PC hosted libraries can be set to autodeploy in the app build. 
    also the project has a autodeploy option for the Development Environment which I normally turn off.  If you have PC to cRIO binding setup then you need to be cautious
    about any sort of autodeployment since it will potentially force the cRIO app to stop when you deploy.  To get around this, you can use PSP binding (IP address rather than project
    process name) and use the DSC deploy library vi's in your HMI app.  Once you are using the scan engine you can use the DSM (Distributed System Manager) app to view, proble and
    chart all of you IOV and NSV's on your network.

  • Does the cRIO scan engine support TEDS

    I have a cRIO chassis with 9237 bridge amplifier modules and would like to use the TED feature of my transducers.  I know the module itself supports TEDS but is this functionality incorporated into
    the new scan engine?
    Thanks

    Hi Sachsm,
    Currently, there is no support for TEDs with the CompactRIO Scan Interface.  However, you should be able to write an application that will allow you to get to your desired TEDs information by compiling two biftfiles, one that communicates to the modules using the TEDs interface that is supported with the LabVIEW FPGA Host interface functions, and another that then just communicates to Modules through the Scan Interface.
    After the TEDs information was read from the first bitfile, then you could use this information to calibrate the data used for the sensor.
    Let me know if you would like me to explain a little bit further or if you think the solution would work for you.
    Thanks,
    Basset Hound

  • Why does New Gen sbRIO not support Scan Engine?

    The 'New Gen' sbRIO's use the LX25 and LX45 FPGA and it seems that none of them support the scan engine.  cRIO's that use the same FPGA do support the scan engine.  Is it just a RIO driver issue?  If so when will this be resolved?

    Hi sachsm, 
    I was told initially that it is a performance issue, but after doing some extra research I have found that it cannot be the case.  You are right that the cRIOs that have the LX25 and LX45 FPGAs support the scan engine, so the answer lies outside the bounds of performance requirements.  I spoke with some of our more senior engineers, who believe that R&D has phased out scan engine support for the newer sbRIOs based on the majority use cases for which they are deployed.  Notice on the product pages for these devices that only OEM quantities are available for purchase, meaning that most of our customers for these are companies producing many units, and who generally desire to use the FPGA interface (not the Scan Interface).  Each sbRIO that currently supports the Scan Interface (older models) has a custom scan engine bitfile that is written to the FPGA, and I guess someone on the development side of things decided that it wasn't worth the effort to write scan engine bitfiles for these new models.  There is no indication that these will be supported by the scan interface in the future.  
    cRIO, on the other hand, is intended to have custom and reconfigurable module setups, and thus will always require the scan engine for those who wish to use the real-time functionality without having to deal with the FPGA interface.
    I hope that this clears up some of the confusion!
    Kevin W.
    Applications Engineer
    National Instruments

  • Programmatically remove ethercat slaves from scan engine

    I am using an RT Target as the master of EtherCAT chain.  It has several different sorts of third party slaves in the chain.  All are correctly detected.  However some are buggy (they're in development) and prevent the Scan Engine from switching to Active mode.  If I remove the buggy slaves from under EtherCAT Master (but leave them plugged into the chain) in the project then the Scan Engine will switch to Active and the remaining targets are interogated correctly.
    However I want my RT app to be stand alone and adapt to different chains of slaves. I invoke the Refresh Modules method to find all the available slaves then it finds the buggy ones.  These then prevent the Scan Engine from switching to Active mode.  I have not been able to find a way to programmatically remove these buggy slaves as I can from the project - does it exist???
    Many thanks!

    I am not sure if you will be able to do this but I would suggest posting this question to the Industrial Communications board.
    http://forums.ni.com/t5/Industrial-Communications/bd-p/260
    If this is something that you are able to do, the people that frequent that board are much more likely to know about it.
    Matt J
    Professional Googler and Kudo Addict
    National Instruments

  • Slow Scan Engine

    I'm trying to read an analog input signal from a function generator via Scan Engine on a cRIO-9074, but scan engine doesn't seem to be updating as quickly as it should be. The input is a 10Hz sine wave +/-3V into a 9207 module. The scan engine settings are default, and I get good readings when hooked up to a DC power supply so all the hardware should be good. The attached front panel picture shows the results I'm getting which I figure is about a 0.8sec update rate.
    Thanks for any help,
    ~Tyler
    Attachments:
    FP.jpg ‏219 KB
    ScanEngine Block Diagram.jpg ‏68 KB
    Settings.jpg ‏114 KB

    Hi Tyler,
    Thank you for your post.
    I notice that your "Network Publishing Period" is set to 100ms. This means that the target will update published values on the network every 100ms only, even though you have the scan period set to 10ms.
    Try altering the network publishing period to be closer to the scan period. Please tell me if this has solved the issue.
    Thank you,
    Eden S
    Applications Engineer
    National Instruments UK & Ireland

  • Optimizing EtherCAT Performance when using Scan Engine

    Hello everyone,
    This week I have been researching and learning about the limitations of the LabVIEW's Scan Engine. Our system is an EtherCAT (cRIO 9074) with two slaves (NI 9144). We have four 9235s, two 9237s and two 9239 modules per chassis. That means we have a total of 144 channels. I have read that a conservative estimation for each scan is 10 usec. This means with our set up, assuming we only scan it would take 1.44 msec which would yield roughly a rate of 694 Hz. I know that when using a shared variable, the biggest bottle neck is transmitting the data. For instance, if you scan at 100 Hz, it'll be difficult to transmit that quickly, so it's best to send packets of scans (which you can see in my code).
    With all of that said, I'm having difficulties scanning any faster than 125 Hz without railing out my CPU. I can record at 125 Hz at 96% of the CPU usage but if I go down to 100 Hz, I'm at 80%. I noticed that the biggest factor of performance comes when I change my top loop's, the scan loop, period. Scanning every period is much much more demanding than every other. I have also adjusted the scan period on the EtherCAT's preferences and I have the same performance issues. I have also tried varying the transmission frequency(bottom loop), and this doesn't affect the performance at all.
    Basically, I have a few questions:
    1. What frequency can I reasonably expect to obtain from the EtherCAT system using the Scan Engine with 144 channels?
    2. What percent of the CPU should be used when running a program (just because it can do 100%, I know you shouldn't go for the max. Is 80% appropriate? Is 90% too high?)
    3.Could you look through my code and see if I have any huge issues? Does my transmission loop need to be a timed structure? I know that it's not as important to transmit as it is to scan, so if the queue doesn't get sent, it's not a big deal. This is my first time dealing with a real time system, so I wouldn't be surprised if that was the case.
    I have looked through almost every guide I could find on using the scan engine and programming the cRIO (that's how I learned the importance of synchronizing the timing to the scan engine and other useful facts) and haven't really found a definitive answer. I would appreciate any help on this subject.
    P.S. I attached my scan/transmit loop, the host program and the VI where I get all of the shared variables (I use the same one three times to prevent 144 shared variables from being on the screen at the same time).
    Thanks,
    Seth
    Attachments:
    target - multi rate - variables - fileIO.vi ‏61 KB
    Get Strain Values.vi ‏24 KB
    Chasis 1 (Master).vi ‏85 KB

    Hi,
    It looks like you are using a 9074 chassis and two 9144 chassis, all three full with Modules and you are trying to read all the IO channels in one scan?
    First of all, if you set your scan engine speed for the controller (9074), then you have to synchronize your Timed Loop to the Scan Engine and not to use a different timebase as you do in your scan VI.
    Second the best performance can be achieved with I/O variables, not shared variables and you should make sure to  not allocate memory in your timed Loop.  memory will be allocated if an input of a variable is not connected, like the error cluster for example or if you create Arrays from scratch as you do in your scan VI.
    If you resolve all these Issues you can time the code inside your Loop to see how long it really takes and adjust your scan time accordingly.  The 9074 does not have that much power so you should not expect us timing. 500 Hz is probably a good estimate for the max. Performance for 144 channels and depending on how much time the additional microstrain calculation takes.
    The ECAT driver brings examples which show how to program these kinds of Apps. Another way of avoiding the variables would be the programmatic approach using the variable API.
    DirkW

  • NI Scan Engine, cRIO 9211 and CJC

    Does anyone know if the temperature returned by the scan engine uses the CJC and zero offset channels on the 9211?
    Thanks 

    This is what the 9211 user manual says about it.
    http://digital.ni.com/manuals.nsf/websearch/A24B9BB284234EDF862571CA00684AC7 
    Heat dissipated by adjacent modules or other nearby heat sources
    can cause errors in thermocouple measurements by heating up the
    terminals so that they are at a different temperature than the
    cold-junction compensation sensor used to measure the cold
    junction. 
    Not sure what the different ways for implementing CJCs are, but is there something that can be inferred by knowing that is a an actual sensor within the module?

  • Error message for liveupdate engine COM module - Satellite P100

    I have a Satellite P100 using Windows Vista home premium, and upgraded cable internet plans with Optus over the weekend to the Fusion89 plan.
    Since then internet has been slow to open (up to 25 seconds when I click on a new tab), and attachments are slow to open from E-mails.
    I also keep receiving an error message from Microsoft Windows stating "liveupdate engine COM module stopped working and was closed. A problem caused the application to stop working correctly. Windows will notify you if a solution is available".
    I have contacted Microsoft who said they would help me for a fee, but as I have the laptop under an extended warranty, they suggested I contact the people I bought it from or Tochiba. Before I contact Clive Peters soes anyone have any comments or suggestions regarding my issues?
    Any assistance will be much appreciated.

    Try this:
    Go to a Command Prompt and run "CHKDSK C: /F"
    Run WindowsUpdate / update Internet Explorer
    Try disabling your Antivirus software or Firewall software.
    If you installed Optus/connection software, update the software.
    Ensure the ISP (optus) proxy settings are correct in IE and the email software.

  • Error 2147138480 in Set Scan Engine Mode to Actif

    Hi all,
    I'm fighting in front of this error which occur and does not want to go away (even after trying everything)...
    The error (-214713840) is happening when trying to set back the Scan Engine Mode to actif.
    It says: "The slave device could not be found. The positional addresses within the LabVIEW project are inconsistent with the actual network topology. [...]"
    I was trying to program the detection of the loss of a CompactRIO chassis when this error first occurr.
    I have 2 CompactRIO "EtherCAT" connected to a RT computer.
    Thanks for all the help or suggestion you can provide me ;-)
    Cheers,
    Laurent

    Hi Laurent,
    I don't know if your problem has been solved but I prefer asking.
    Are you sure of the error code you encounter ? I don't find it in the manual or other places.
    Regards,
    Mathieu P. | Certified LabVIEW Associate Developer
    National Instruments France
    #adMrkt{text-align: center;font-size:11px; font-weight: bold;} #adMrkt a {text-decoration: none;} #adMrkt a:hover{font-size: 9px;} #adMrkt a span{display: none;} #adMrkt a:hover span{display: block;}
    Journées techniques : des fondamentaux aux dernières technologies pour la mesure et le contrôle/comm...

Maybe you are looking for