What is the best way to run two concurrent programs using the output of either executing the other?

I wanted to just kind of get a notice of some people here. I have two main screws the first is a data acquisition system that displays 99 different sensors and which feeds on these data in a table. The second is a real-time processing system that is designed to take the painting and do many calculations. The two output data from screw at the front that I want to see, so I don't want to use just as a Subvi.

Is there a simple way to run two screws, using the output of the data acquisition system to power the processor so that you can easily see the signs before two screws? I had thought to simply copy the code from the processor in real-time in the DAQ VI, but I fear that the VI resulting will be very large and unsightly.

On a side note, I'm more thinking about this? I apologize if this is a stupid question, it has been a long week... aaaand it's Wednesday.

Look at the Architecture of producer/consumer.  It will be a good starting point, even if you find that you need to change.  When performing data acquisition and processing of tasks in parallel loops, they can both run simultaneously.  Both can feed data to the main draw of the VI.

I'd probably use three loops with the third being the user interface only.  All that must be displayed to the user is sent to the GUI of the acquisition of data or processing loop loops and commands or entered by users are returned in these loops, probably through queues.  The wall of the VI of data acquisition and processing VI are never displayed to the user.  Especially the treatment, because it runs on a system in real-time, should avoid synchronization issues that can present a graphical interface.

Lynn

Tags: NI Software

Similar Questions

  • What is the best way to run the report of jasper in the ADF Applications?

    Mr President.

    What is the best way to run the report of jasper in the ADF Applications?

    Concerning

    Tender Hello,

    Check out these links

    Sameh Nassar: Using Jasper report in Application of ADF (detailed)

    https://www.YouTube.com/watch?v=ezX0gdLIhs0

  • Best way to run a script from a script

    Hello world

    I'm looking for running a script from an After Effects script, so far, there is aftereffects.executeScript (scriptContent) who use eval to run the script. The problem is that it uses eval so it is not really sure and he is slower. So I would like to know what is actually used when we file-> Script-> Run script file.

    As seen in the Javascript tool Guide CC page 168 in the section QAnywhere Corss-DOM.

    aftereffects.executeScript(theScriptContent); // Doesn't work with a script which as comments AND the script has access to my scope
    

    In addition, if there are comments like / * * / or / * / in the script I want to run, it no longer works.

    So, what is the best way to run a script from a script?

    If you want to evaluate a whole script file, you can use $.evalFile (file, timeout) - see description in ESTK object model viewer

    To evaluate a bit of code, you can use eval, that's for sure.

    Xavier

  • What is the other possible way to reset the new hash in 12 c value

    What is the other possible way to reset the new hash value in 12 c (edit user < username > identified by the values < "Hash" >;  ?

    Thank you

    Suman

    Thanks for all the help.

    Problem has been resolved. There was little extra space (undesirable character in file) which has been provided by the user. Monday, I created a test user and manually run reset password and has worked well:

    SQL > select banner version of v$.

    BANNER

    --------------------------------------------------------------------------------

    Database Oracle 12 c Enterprise Edition Release 12.1.0.2.0 - 64 bit Production

    PL/SQL Release 12.1.0.2.0 - Production

    CORE Production 12.1.0.2.0

    AMT for Linux: Version 12.1.0.2.0 - Production

    NLSRTL Version 12.1.0.2.0 - Production

    SQL > alter the test user identified by test2;

    Modified user.

    SQL > select name, password of the user$ where name = 'TEST ';

    NAME PASSWORD

    ---------- --------------------

    TEST A43C4E7D0745AB7D

    SQL > alter user identified by the values "A43C4E7D0745AB7D" test

    Modified user.

    My apologies without testing on my side I asked a question here.

    Thank you.

    Suman

  • What are the other blackberry except eclipse development environment?

    Hello

    I want to know what are the other blackberry outside the eclipse development environment?

    In fact, I'm new on this and I have a lot of problem to make the GUI phase. Are there any other environment where MISTLETOE is easily done?

    Yes, if you want to develop in java for os bb then I would say.
    Eclipse + bb plugin.

  • What are the other 4 CD for?

    I install Photoshop Elements. I know I have to start with disk 1, but what are the other 4 for?

    Install the first Elements, Photoshop Elements

    Mylenium

  • What is the best way to run multiple instances of the class containing infinite while loop?

    Hello

    I have a several instances of the class (say a, b, c,...) that have the same parent and I want to run the same methods overridden to all instances in parallel.

    For example:

    a.init ()-> a.run ()-> a.stop ()-> a.run ()-> a.stop ()->

    b.init ()-> b.run ()-> b.stop ()->->->

    c.init() ->           ->             -> c.run() ->               -> c.stop()

    ...

    See the attachment for more details.

    The problems are now:

    1. the 'run' - method does not return until it receives the external trigger

    2. everything to run methods return in a different time

    1 chip means I can't use autoindexed for loop because in this case b.run () will have to wait before the end of a.run (), right? Is it possible to run to the loop in parallel?

    2 chip means that an object must be able to run and stop independently from others.

    What is the most elegant solution? The solution copy - paste in the attachment works for 3 instances, but there are currently 10 and more is coming.

    Juha

    In fact, what I wanted to know was "how to add the 'P' loop '... Easy, after you ask the right question.

    In the attachment, there is a test.vi that has two numerical indicators in a certain time-infinite loops. If I leave the parallelism, the two digital are incremented infinitely. If I don't allow parallelism, only the first is incremented (he never leaves the infinite while loop).

    To solve my original problem, I can make an init-start-stop branch within a loop-parallel-indexing for and make sure that there are the same number of instances of loop as there are objects in my array of objects (object array is an autoindexed in the loop for).

    Also good point about the vis environment. I should also add that.

  • What is the best way to run DAQ in larger system?

    I have a relatively simple installation of the PXI hardware require software in real time to perform data acquisition and to provide feedback to the user.  Somewhere on the order of discrete outputs 150, 55 entered discrete, some analog, etc...  My question is this: does anyone know of a white paper, etc., which describes the best way to the acquisition of configuration data?  For example, is it better to put all the discrete outputs on a single task and manage state in memory (150 items Boolean) before writing to DAQmx, or is there some advantage at the time of the execution/memory to open a task for each channel and individually each signal.  The driver even allow me to do this?

    Synchronization is not a concern, is pilot crashes, so I would like to get the best performance out of DAQmx.

    If someone has explored this?

    Dan

    Hi Dan,.

    To optimize your application, you'll want to create tasks as little as possible.  When you create a task, you ask for all the parameters of this task (which would be like doing 150 calls to the hardware).  The extent of the GB whitepapers - you can find useful this webcast .  For example, some of your concerns are addressed low toware of this FAQ document.  Hope this helps, let me know if you need something more specific.  Have a great day!

  • The best way to manage two GUI

    I have two classes using java swings. The first Panel is where all the calculations will be made and the result will appear in a JList (in the 1st Panel). After that, the next button will show a 2nd Panel where the JList of the 1st group results are transferred. I need a back button in the 2nd Panel to return to the Panel 1. After you click the back button, I need the previous results on the 1st Panel to always be there for extra change (add / change / delete data). If I changed something and click the next button again, I want the 2nd Panel show a set results to date from the 1st Panel.

    What is the best way to do it? I spent two days trying to apply this using the presentation of the card, but it does not work as I want. All the examples I found use only one category. Even if I break down for separate classes, I face problem where when I click the back button, all the data in the 1st Panel disappeared. I'm out of my mind right now. It would be great if anyone can share some ideas in this. Any suggestions are welcome.

    Yes. I already tried several times to break it down into categories before posting here again. I am new to Java, that's why I found quite difficult and decided to post my problem here after he tried for two days. In any case, I thought about it already. I share the codes so that anyone who has problems like me can be useful if not much.

    Presentation of the main card:

    import java.awt.CardLayout;
    
    import javax.swing.JFrame;
    import javax.swing.JPanel;
    import javax.swing.SwingUtilities;
    
    public class CardCard {
      private static final String FIRST_PANEL = "firstPanel";
      public static JPanel mainPanel;
      private JFrame frame;
      public static CardPanel_1 cp1 = null;
      public static final CardLayout cardLayout = new CardLayout();
    
      public CardCard (){
      frame = new JFrame("Test");
      frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
      frame.setLocationByPlatform(true);
      mainPanel = new JPanel(cardLayout);
      cp1 = new CardPanel_1();
      mainPanel.add(cp1, FIRST_PANEL);
      frame.getContentPane().add(mainPanel);
      frame.pack();
      frame.setVisible(true);
      }
    
      public static void main(String... args) {
      SwingUtilities.invokeLater(new Runnable()
      {
      public void run()
      {
      new CardCard();
      }
      });
      }
    
    }
    

    First card:

    import java.awt.FlowLayout;
    import java.awt.event.ActionEvent;
    import java.awt.event.ActionListener;
    import java.util.ArrayList;
    import java.util.List;
    import java.util.Observable;
    import java.util.Random;
    
    import javax.swing.JButton;
    import javax.swing.JPanel;
    import javax.swing.JTextField;
    
    public class CardPanel_1 extends JPanel {
      public static JTextField textField, textField3;
      private static final String SECOND_PANEL = "secondPanel";
      private CardPanel_2 observer;
      private JButton btnNext, btnRandom;
      private String show;
      public CardPanel_2 cp2 = null;
      private List numList;
      private String numResult;
    
      /**
      * Create the panel.
      */
      public CardPanel_1() {
      setLayout(new FlowLayout());
    
      textField = new JTextField();
      textField.setBounds(64, 5, 134, 28);
      add(textField);
      textField.setColumns(10);
    
      textField3 = new JTextField();
      textField3.setBounds(64, 5, 134, 28);
      add(textField3);
      textField3.setColumns(10);
    
      btnRandom = new JButton("Randomise");
      btnRandom.addActionListener(new ActionListener() {
      public void actionPerformed(ActionEvent e) {
      String str = textField.getText();
      int num = Integer.parseInt(str);
      numList = new ArrayList();
      for (int i =0;i
    

    2nd map:

    import java.awt.event.ActionEvent;
    import java.awt.event.ActionListener;
    import java.util.Observable;
    import java.util.Observer;
    
    import javax.swing.JButton;
    import javax.swing.JPanel;
    import javax.swing.JTextField;
    
    public class CardPanel_2 extends JPanel implements Observer {
     private static JTextField textField2;
      private JButton btnBack;
     private static final String FIRST_PANEL = "firstPanel";
    
     /**
      * Create the panel.
      */
      public CardPanel_2() {
      System.out.println("PANEL 2");
      textField2 = new JTextField();
      add(textField2);
      textField2.setColumns(10);
      btnBack = new JButton("Back");
      btnBack.addActionListener(new ActionListener() {
      public void actionPerformed(ActionEvent evt) {
      CardCard.cardLayout.show(CardCard.mainPanel, FIRST_PANEL);
      System.out.println("BACK");
      }
      });
      add(btnBack);
      }
    
      public void update(Observable o, Object arg) {
      System.out.println("Updated: " + CardCard.cp1.textField3.getText());
      textField2.setText(CardCard.cp1.textField3.getText());
      }
    }
    
  • What is the best way to send personalized mass emails using Mac Mail?

    Attempts to send mass emails (in bulk) to a custom list of customers (less than 100) with a greeting / salutation. What is the simplest and cheapest way to do it?

    The App store has a few options, but not one with a qualification or a review. Online searches are not very convincing.

    Apple is usually easy to use and easy with these small details, but it is a nightmare, and I don't see why it should be so complicated (although I'm still hoping there is an easy work around or something, outside writing each message individually).

    Any help is very appreciated!

    In all honesty I suggest that you find a good online service to do it for you...

    http://MailChimp.com

    Or one of the many others.

    These services have the ability to manage the e-mail in bulk. E-mail servers will block your messages if you seem to be spamming, there are a lot of issues to be addressed (addresses failed, bouncing mail, management of requests to subscribe / unsubscribe...). I suspect it's more trouble should manage it all yourself.

  • Can I install windows 8 SL with windows 7 home top on the same computer? If yes than what I need to do to run two operating systems?

    Hello. I use a version of top House licensed windows 7 on my laptop. Now, I want to use windows 8 SL opereting system.

    I want to know that can I run the two OS on my laptop even? If yes than how?

    and why do I have to remove or delete my version of windows 7 home top?

    If it is a retail upgrade, you must have a previous on the other partition qualification license until you can install it.

    If it's a complete OEM System Builder Windows 8, you can dual boot Windows 7. See the following for instructions:

    How dual boot Windows Vista/7 and Windows 8

  • Best way to run a LabVIEW VI, written for Windows in a MAC OSx environment

    I've written a VI in LabVIEW 8.6 Windows XP and it compiled into a .exe.  Now, I want you to run this executable on a MAC OS x computer.  What is the best way to do this without having to buy a LabVIEW for MAC license or machine virtual Windows for MAC software?

    Thank you

    CJL

    CJL,

    Yes, that should run.   Except... Your show is there any material?  To use all the functions that are specific to Windows (from the platform folder)? It relies on a video driver specific or sound card? It relies on mouse right click action?  All these kinds of things may or may not work because they are closely linked in the Windows operating system and the underlying hardware.  While the software itself will problaby execute, the programmay does not work as expected if some of these dependencies are handled differently by the Apple hardware.

    I have not used VM but native running under Bootcamp works fairly well, again allowing the issues mentioned above.

    Lynn

  • best way to connect two PC 2748 s?

    I just upgraded our office in two PC 2748 s (while still also using one of our PC 2324 devices) and I would like to know the best way to connect these three switches.

    At the present time, I have a cord Ethernet connecting each of the 2748 s via the 49 port and then another cord ethernet connecting the 2324 to the 50 of my first 2748 port (which has our main file server and the outgoing Internet connection on it, among other things).

    Should I also connect the 2324 to SECOND 2748 or is asking for disaster? Also, is there an advantage to invest in GBIC modules for the two 2748 s so that I can connect this way or this advantage of flow occurs only when connecting a 2748 to another device (i.e. There is no speed advantage when only connecting two 2748 s together)?

    Thanks in advance for your clarification...


  • BB10 best way to create two lists view

    Hello!

    I am doing an application with two lists, something like a file browser. A single list have records and the other have files.

    When I type on a folder on the first list, a second is updated with the files.

    The playbook, I show the two lists, a narrow with folders on the left and the one with the files on the right, but this type of display is not very usable on smartphone.

    What do you think would be the best solution in this kind of scenario?

    How would you present two lists discovered?

    Page 1A records (list). Select a folder and it slides open page with files (list) 2. An action on the bottom bar would have a back button to return to the folders. Additional action buttons allow the actions to perform on the selected file.

  • Best way to archive projects for future use

    I use Adobe Premiere Pro CS4, but this is a more generic question.  I shoot the videos that people want to save for a long time.  I burn my DVD projects (or if the client does not mind the cost of Blue-ray discs).  DVD can be destroyed, lost, will wear out.  What is the best way to keep these memories?  I know that some people charge the customer and use an external hard drive dedicated for each project.  Which technique is not too expensive, but it will last the longest?

    Thank you

    Lisa

    I think most use the method of the hard disk or tape.  The stuff (dvd, Blue ray) 'See only' cant really be used for editing "again" without loss of quality because of the compression... so the HD or the band allows you to save the project and less compressed (perhaps "Lossless" codec)... that can be edited later.

    If you just want to record the DVD "for life" just make copies of the DVD and keep them nicely...

Maybe you are looking for

  • Minimizes the offscreen window, unable to size

    I can't find my browser unless it is full screen. Maximize takes it to full-screen size and I can't find an edge to smaller drag. Size gives me a slider 4 positions that allow me to draw a rectangle or drop a window. WTH am I missing?

  • Disable/remove password Public iPad without MDM

    I bought six air iPad (running iOS 9.2.1) for "iPad reference Bar." school library these iPads are in a public space in a kiosk of the enclosure. While I placed many restrictions on these iPads, some students keep by allowing an access code. Then the

  • Re: Screen Equium A200 is low

    Hello I have a Toshiba Equium A200 computer laptop with a dark screen. I changed the inverter and the screen but the image isalways off.I came to the conclusion that near the lid switch was defective but have disassembled the laptop and can't find fo

  • "drm activator application stop working" error when installing a game

    applications of the Activator I'm runng windows vista basic and I'm trying to download a gme bought but I can't download it, I get a message that says "drm activator application stop working", which is an activator of drm, and how to fix?

  • How we prevent frim backlight dimming (maybe crazy Blackberry that the interaction that happened?)

    I have an app that for long periods of time the user watches the screen, But even I put the backlight for the maximum wait time, it's not enuff. Is there a way to prevent the screen from dimming or is there a work-around, like cheating the blackberry