I am looking for Compact RIO system for PID control

Hi all,
I am looking for the CompactRIO system for PID control.
My system acquires two input data (0-10V) from two displacement sensors and sends one output signal (0-10V) to piezo-actuator at every step. And my target is the short settling time and the low overshoot.
I think that I need fast control system. So I am interested in CompactRIO. But I am not familiar with this sytem. Could you recommend the good control system for me?
The one important thing is that the time limiting step of my system is Piezo actuator (it's natural freq is 20kHz.) CompactRIO is much faster than the Piezo-actuator. I am not sure whether CompactRIO is good to my system or not.
Here is the CompactRIO system which I am interested in:
i) CompactRIO Reconfigurable Embedded System: cRIO-9004
ii) CompactRIO Reconfigurable Chassis: cRIO-9101
iii) I/O Module : AI : cRIO-9215 AO: cRIO-9263
Thank you so much,
Sungjin

Hello Sungjin,
CompactRIO should work great for your PID control system. Those I/O modules are the correct voltage range and the 1M gate FPGA backplane will be plenty for a single PID controller. You'll probably be able to get loop rates around 100kHz for analog PID control.
Keep in mind that the LabVIEW FPGA module includes PID examples that will cut down your development time considerably.
Regards,
Vineet

Similar Messages

  • How can I control 4 sets of compact RIO system with my host PC?

    Hi all,
    As the title.
    I want to control 4 sets of compact RIO system at the same time.
    I have written TCPIP connection for two PC before.
    But I never program to connect more than one PC.
    If I need to connect more than one PC, should I set the PC's connection port different?
    Could you provide me an example?
    Thank you a lot.
    Solved!
    Go to Solution.

    Hi StephenCh...,
    you can calculate the transfer rate it depends on your network card. You'll find very good examples on that in the example finder, search for tcp/ip. You can use the server code on each of your cRIOs. Use the client to connect to your servers (cRIO), you only need to change the IP. If you need to connect to all at the same time, then you have to change the client program a bit, so that you are able to build four connections.
    Where do you have problems? Did you already see the examples?
    Mike

  • Visa Error in MAX for Compact RIO

    Hi,
    I have a compact rio I haven't used in a few months. In Labview 7.1 and since upgrading to 7.1.1, I can't
    connect to the compact rio. In MAX, I can see the crio device. When I open up the device, I get a VISA error
    under Devices and Interfaces . 0xBFFF00A7 (VI_ERROR_MACHINE_NAVAIL). I can't ftp or ping to the crio either.
    I have NI-RIO 1.2.
    I connected to the crio console ....
    General Software STPC Embedded BIOS 2000 (tm) Revision 5.2
    Copyright (C) 2003 General Software, Inc.
    Copyright (C) 2004 National Instruments Corp.
    NI cRIO-9002 Controller
    00000589K Low Memory Passed
    00064512K Ext Memory Passed
    Wait.....
    PCI Device Table.
    Bus Dev Func VendID DevID Class Irq
    00 0B 00 104A 0201 Host Bridge
    00 0C 00 104A 0210 ISA Bridge
    00 0D 00 104A 0229 IDE Controller 11
    00 0E 00 104A 0230 Serial Bus 11
    00 0F 00 104A 0238 Ethernet 11
    00 18 00 1093 70F7 Unknown Device 11
    00 1F 00 104A 0981 Ethernet 10
    (C) 1996-2003 General Software, Inc.
    STPC-5.2-01DE-EB2E
    BIOS revision: 1.1.9 (08/10/04)
    Firmware revision: 10.1.94
    Booting LabVIEW RT from drive...
    Fat16
    Jumping to 07E0:0000
    Checksum: 011BCEEB
    LabVIEW RT Boot Loader
    (C) Copyright 2002-2003 National Instruments Corporation
    STE10/100A Ethernet found.
    Initializing network... done. IP address is 152.50.232.157
    --------------------- NI-Serial v2.5.4 for LabVIEW RT ---------------------
    COM1 - | Built-In Serial Interface
    Welcome to LabVIEW Real-Time 7.1
    NI-VISA Server started successfully.

    Hi, Raltieri,
    I noticed from the text that you sent that your cRIO controller has LabVIEW RT 7.1. Since you upgraded your host computer to LabVIEW 7.1.1, you will also need to upgrade the LabVIEW image on your controller to the same version. Try reinstalling the LabVIEW RT component into the cRIO controller (in MAX, under Remote Systems, under your cRIO >> Software), and just make sure that you select 7.1.1 as the version to reinstall. Most likely that is the problem.
    Please let me know if that doesn't help.
    GValdes
    National Instruments

  • Hi i wrote a java program for scanning a system for java.exe 's

    hi ,
    i wrote a program which scans the system for java.exe 's and then it captures them in a linked list and then i
    iterate through it for "\\Java\\jdk1.5.0_08\\bin\\java.exe and my aim is to return true in case the linked list contains the string "\\Java\\jdk1.5.0_08\\bin\\java.exe" and stop scanning the system.
    If the linked list does not contain "Java\\jdk1.5.0_08\\bin\\java.exe" it should return false.
    But my problem is the program is continuing to scan the system even if the linked list has "\\Java\\jdk1.5.0_08\\bin\\java.exe"
    Any sort of help is appreciated.
    The code is as follows:
    package com.installanywhere.exper;
    import com.zerog.ia.api.pub.CustomCodeRule;
    import com.installanywhere.exper.SearchTool;
    * @author
    public class eFileTool extends CustomCodeRule {
         /* (non-Javadoc)
         * @see com.zerog.ia.api.pub.CustomCodeRule#evaluateRule()
         @Override
         public boolean evaluateRule() {
              // TODO Auto-generated method stub
              SearchTool searchtool=new SearchTool();
              boolean valueTocheckfor=false;
              valueTocheckfor=searchtool.find();
              String someothervalue=Boolean.toString(valueTocheckfor);
              if(someothervalue.equalsIgnoreCase("true")){
                   return true;
                   //System.exit()
              else if(someothervalue.equalsIgnoreCase("false")){
                   try {
                        Thread.sleep(5000);
                   } catch (InterruptedException e) {
                        // TODO Auto-generated catch block
                        e.printStackTrace();
              System.out.println(valueTocheckfor+"xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx");
              return valueTocheckfor;
    The code of search tool is
    package com.installanywhere.exper;
    import java.io.*;
    import java.util.*;
    public class SearchTool
         * @param args
    static     boolean valuesToReturn=false;
    static     boolean anothervalueToRefer=false;
         public static void main(String[] args) {
              // TODO Auto-generated method stub
              SearchTool           t = new SearchTool();
              System.out.println("xxxxxxxxxxxxxxxxxxxx");
              boolean someArgument=t.find();
              System.out.println(someArgument+"iiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiii"+"");
                   public boolean find()
                        System.out.println("2222222222222222222");
                   boolean someThing=searchcomp("java.exe");
                   System.out.println(someThing+"inside the othere one");
                   return someThing;
              public boolean searchcomp(String file)
                   System.out.println("3333333333333333333333");
                   File[] drives=File.listRoots();
                   boolean valueIdentified=false;
                   for (int ctr=0;ctr<(drives.length-1);ctr++)
                        valueIdentified=search(drives[ctr],file);
                        System.out.println("4444444444444444444");
                   System.out.println(valueIdentified+"something i need to accomplish");
                   return valueIdentified;
                   public boolean search(File dir,String file)
                   File[] directories=dir.listFiles();
              System.out.println("55555555555555555555555");
                   if (directories == null)
                        System.out.println("666666666666666666666666");
                   return false;
                   for(int ctr=0;ctr<directories.length;ctr++)
                        if(directories[ctr].isDirectory())
                             System.out.println("77777777777777777777777777");
                             valuesToReturn=search(directories[ctr],file);
                             System.out.println(valuesToReturn+"india is great");
                        else
                             if(directories[ctr].getName().equals(file))
                                  String path = directories[ctr].getAbsolutePath().toString();
                                  System.out.println(path);
                                  List someList=new LinkedList();
                                  anothervalueToRefer=allPaths(path);     
                                  System.out.println(anothervalueToRefer+"god damn it");
                                       //System.out.println(anothervalueToRefer+"let me seeeeeeeeeeeeeeeeeee");                                        
                                  return anothervalueToRefer;
                   return valuesToReturn;
                   public boolean allPaths(String allPath)
                        List l=new LinkedList();
                        String somepath=allPath;
                        l.add(somepath);
                        //return l;
    /*if(l.contains("C:\\Program Files\\Java\\jdk1.5.0_08\\bin\\java.exe")){
                             System.out.println("yepeeeeeeeeeeeeee");
                             //System.exit(0);
    else{
         System.out.println(" the face");
                        ListIterator li = l.listIterator();
                        System.out.println("inside the method of all paths");
                        if(li.hasNext())
                             if(li.next().toString().contains("\\Java\\jdk1.5.0_08\\bin\\java.exe"))
                             System.err.println(somepath+"this is the path i wanted to resolve correctly");                         
                             return true;
                             else{
                                  System.out.println("trueeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee");
                                       return false;
                        else {
                                  return false;
         }

    A good place to ask advice about web development is at the MozillaZine "Web Development/Standards Evangelism" forum.
    *http://forums.mozillazine.org/viewforum.php?f=25
    The helpers at that forum are more knowledgeable about web development issues.<br>
    You need to register at the MozillaZine forum site in order to post at that forum.

  • Two entries for every technical system for XI in SLD

    Hi,
    Last weekend we had a patch upgrade in our Production env for SAP PI system.
    After that we got the Cache error (Cache notification from Integration Directory failedError when accessing the System Landscape Directory) in RWB -- "Cache Connectivity Test -> IR -> ID -> Adapter Engines".
    And
    In SLD->Technical Systems->all (Adapter Engine, Integration Directory, Integration Repository, RWB).
    e.g.:There are two Adapter Engines:
    Adapter Engine on p80.p80xxxxx
    and
    Adapter Engine on p80.p80xxxxx\p80
    Our Basis team contacted SAP for help & SAP has suggested as below.
    "We compared the SLD->Technical Systems for QA (Q80) and PROD (P80), and found that for the production box (P80), each XI component is registered Twice.
    Now as per the note 764176, we have to delete the entries in the SLD -> Technical Systems. And these will be re-created after a restart.
    Could you please let us know whether these have been maintained for any special reason or we can go ahead and delete them."
    If you have any idea if those two should be maintained or not, please suggest how to proceed.
    Thank you & Best regards,
    Farooq.

    Hi Farooq,
       I have faced the same issue and got resolved by 764176.
    you can go ahead and implement the note 764176 which will resolve your issue.
    Regards,
    naveen

  • Best design idea for parallel DAQ (via GPIB), PID control and watchdog system

    Hello!
    I am a starter programmer in LabView, I already understand the basic ideas, and design patterns, like producer/consumer, events state machine, functional global variables, and so on, so the basics...
    I started a project a few weeks ago, and first I wrote and tested all of the necessary subvi-s for my project, like the ones initializing my GPIB devices (a Keithley mux and a dvm), controlling/reading out the measured voltage/resistancy values from them, subvi for my Static Analog Output card (I have to drive 7 analog output channels, 4 has to be PID controlled regarding to some of the measured values from the GPIB devices), and another subvi for the analogue card, sending TTL watchdog signals out to my experiment in every 2 seconds.
    Any idea is welcomed about suggesting the best design pattern for my project.
    The main features of my program would be:
    After starting the user interface the program starts with a start-up state, initializes the DAQmx channels and the GPIB devices. The program starts to read out different values from the GPIB devices, including 4 temperature values in every 3 seconds.
    In the same loop (?), using PID control, the program sets the DC voltage values of 4 channels (3 to heating wires, 1 to a Peltier-heat pump) on the Static Waveform Analogue output card, the remaining 3 values are constants.
    I have to send digital TTL watchdog signal to some relays from the same output card, changing its state in every 2 seconds (not the same rate as the GPIB values are read out).
    When the 4 temperatures and the power values regarding to the heating wires are equilibrated after a few hours, the program goes into another state, and signals to the user, that the measurement can be started. During a measurement, I write out all of the measured values to a TDMS file, and there is also some basic calculations "on the fly", like a moving average.
    After the measurement done, the user can swap samples, and the program goes into the above state, waiting for equilibration . and so on...
    Do you think I should use a Producer/Consumer pattern with events? Or someone would recommend me a better design idea?
    Thanks very much!
    ps.: I read out lots of values from the Keithleys, so I put them in a cluster. I made a small test vi (attached without the GPIB comm subvi-s), just to test the GPIB comm. So this is the recent state of my project. (all other subvi-s tested and ready to use as I wrote above, like the DAQmx output part)
    Attachments:
    GUI_Calorimeter_control_image_v2.vi ‏284 KB

    Okey
    I think it is a better approach if I work first, and after I ask
    I go with small steps. For first, now I just want to make a DAQ analog output loop, and parallel a watchdog loop sending out TTL in every 2 seconds.
    The main loop in my project will iterate with approx. 10-15 seconds.
    I want to check in my watchdog loop, if my main loop hangs up (in that case the PID control stops, but the danger is if the output voltages stay on).
    After some readings, I have decided to use a functional global variable.
    I have attached the vi, can someone give me advice, what would be the good solution for this purpose?
    (I know it is a bit silly what I messed up with the shift registers in the bottom loop, it was some experimenting).
    Thanks in advance!
    Attachments:
    watchdog_funcglobvariable.vi ‏12 KB
    Global 1_stop.vi ‏4 KB
    analog_output+Watchdog.vi ‏57 KB

  • How can I make and wire reffercence signals(ramp,sine,square) to excite and evaluate the behaviour of the system wih PID control?

    Dear all,
    I am Tri, I am a beginer with LV program. Actually I used LV for my reasearch, I had tried wiht very simple thing but the problem arise because I am not familiar with LA. Why I know that problem is simple because I compare with MatLab that I had somtime used before.
    I make a loop of PID control, It worked properly but I don't know how to make a refference signal to wire to the loop for excitating to evaluate the behaviour of the system. Please give me your help.
    Thanks

    Hi Tri,
          I've employed the "simple PID.vi" without a problem, but your example is more complex.  I think you use a Function generator to modulate DAQ inputs?
    Perhaps someone else will be able to infer your intention and identify a flaw in the logic.
    In case someone else wants to run your VI, it may help to build/attach an .llb (some sub-VIs are needed by the VI you atached.)
    To build the .llb, save your VI with Development Distribution options (Alt-F,Alt-W) and attach the .LLB
    1) \File\Save with Options
    2) select Development Distribution
    3) Save
    4) choose "New VI Library"
    But first, It would be helpful to us if you clean-up the code - straighten wire-paths, minimize bends in wires, and try to avoid "tall" diagrams.  Scrolling diagrams up and down is "bad form".  If scrolling is necessary, left&right is preferrable!
    Cheers.
    (and, for the record: in my previous post, Exitation would be wired to "Process Variable", Not "Set Point" (ouch!))
    When they give imbeciles handicap-parking, I won't have so far to walk!

  • How to store data into a file from a host VI developed for Compact RIO

    Hi,
    I am new to the CompactRIo.I have developed a VI which runs on the FPGA(CompactRIO) which continuously monitors tha data from a system and i have developed a host VI to read the data and i am successfully getting the data into my computer and i want that data to store into a file.When i use the write to spreadsheet VI for writing into a file.The data is not written into file can anybody tell me why this is happening?

    Hi,
    The last one you said is working when i conected through it is working, whatever files i have  used earlier are there.Thanks  for that but i have few queries please answer me so that i acn proceed in my  project.
    1.As you said to connect to ftp://xx.xx.xx.xx i have seen some extra files along with my files waht are they? waether my data files are stored in flash memory of RT controller?if so, how to clear those files?
    2.Suppose i want to clean up the flash memory of RT contrller i.e suppose i have deployed some file earlier , now i want to cleanup those i dumped into the memory how to do that?
    3.How to disable the Application running on the RT controller when it powers on? i.e. when i switch on the power it should be connected but nothing hould be running on.
    4.I mean at the end of the experiment when i stopped the host VI by pressing stop button weather application running on the RT controller will stop and weather FPGA VI runnibg on that also stop if not how to stop?
    5.Suppose next time when i connect to ftp://xx.xx.xx.xx i dont want to keep earlier files there how to delete them?Because my doubt is if i am using the file name which is same as the prevoius one there is aproblem of appending the new data to the old file.?
    Regards,
    Vishnu

  • CANopen LabVIEW Library for Compact Rio (cRIO) + 985x ?

    Hi
    Has anyone made a CANopen LabVIEW library for the cRIO and the 9852 or 9853 modules ?
    It should not be build on the NI-CAN API but must use the 985x driver "directly"
    The CANopen NI sells does not support cRIO http://sine.ni.com/nips/cds/view/p/lang/en/nid/202614
    Thanks
    Teddy Roerby
    Denmark

    Hi Teddy,
    I know this is late but you can check this link out:
    CANopen Basics for cRIO: http://zone.ni.com/devzone/cda/epd/p/id/5474
    Hope this helps,
    Vincent Carpentier, Ing./P.Eng.
    CLD
    Neosoft Technologies
    www.neosoft.ca

  • Where can I find Firefox for BADA Operating system for Samsung Wave 2 Mobile GT-S8530 Model

    I would like Firefix for my Samsung Wave 2 BADA OS Model GTS-8530 . Please provide it at the earliest with Flash player facility

    Firefox Mobile runs on the Android and Mameo operating systems. We don't have a version that works on BADA OS.

  • How do I update the Adobe Inspiration Browser for Mac operating system for Photoshop Elements 10?

    I am unable to update the Adobe Inspiration Browser shown as an option on the first dilog box when I opened Adobe Photoshop Elements 10 for Mac for the first time.  I get an error message indicating an incorrect configeration to accomplish this task.  What am I doing wrong?  Please indicate the exact steps do accomplish this task.

    See if anything here helps (scroll down for mac):
    http://helpx.adobe.com/photoshop-elements/kb/tutorials-displayed-inspiration-browser-photo shop.html

  • CRM System for Macbook Pro

    Hi there
    I am currently looking for a crm system for my small business. I have looked for one using filemaker software as i can aslo then use it on my ipad. I have currently found two Businessman and Jobprocentral. Is there any other off the shelf systems like this that i could look at

    CRM for Mac Review 2014
    The Best CRM Software for Your Mac
    CRM Software for Mac
    Mac CRM Software - Reviews of 2014's Best Systems
    What is the best CRM Software ?

  • Hardware Sizing for high Availability system

    Hi,
    I have to perform Hardware sizing for high Availability system for a fresh installation and I am quite new to this area.
    It will be a User based sizing.
    Total user count 150. 
    105 - Info-consumer Users
    40 - Executive Users
    05 - Expert Users
    Can you please let me know what will be the best approch and what are the factors have to consider to perform the hardware sizing for high Availability system
    Your support will be appriciated.
    Regards,
    Basis

    Hi Sebastian,
    Thanks for your response. Yes, I am going through the doc.
    Solution will be BW 7.4 on HANA. If you can give me what are the factors I have to consider will be very helpfull for me.
    I already did sizing for standalone installation, but client is looking for Hardware Sizing for high availability system.
    Regards,
    Basis

  • How To Create A Technical And Business Systems For Web AS ABAP ???

    Hi Experts,
    How To Create A Technical And Business Systems For Web AS ABAP ???
    Please Let me Know All the Step-By-Step Process to Create ????
    Points Will be Given
    Regards
    Khanna

    Hi Sumit,
    When U Told the thing that first time to execute the RZ70 and All i Did this in XI System
    So I got An Entry for the Technical System for XI System.
    Now i Deleted that and Executed RZ70 in R/3.
    When I Executed RZ70, I got this Error.
    <b> "RFC Call failed: Error Opening an RFC Connection "</b>.
    Now I am Unable to see Any Technical System  Under Web As ABAP. It's Showing Empty Now.
    Please Let me know
    Regards
    Khanna

  • Sorting files for distributed systems for Documaker

    Hello,
    I've been asked to research tools that will assist with fast sorting of files for the distributed systems for Documaker. Unfortunately, I have not had any exposure to Documaker so I'm starting from scratch. Anyone have any experience with this?
    Thanks in advance,
    Ron

    Easy enough!
    BCH files can be sorted by any number of means depending on what you would like to do and when you want to do it, and the complexity of your sorting requirements. Documaker includes some rudimentary sorting capabilities, but since there are so many other options available this is not something we have focused on as a desired feature. You can browse the system doc for more details on that. Otherwise... if you're running in multistep mode then you have access to the BCH file, in which case you can sort it using whatever is appropriate to your OS: MVS folks have syncsort, Linux folks have just about anything from perl to sort, Windows folks have a sort command as well. It so happens that those items I've mentioned are all solutions I've used for customers. If you're running single-step, then you won't likely have the BCH file available to use, and will have to write a custom rule in your CUSLIB for Documaker to sort. In this case, you would have to have access to a sorting application that provides an API. I've used Opt-Tech Sort for customers in the past, and it's definitely both affordable and powerful (and multiplatform).
    NA and POL files generally do not require sorting and I would highly recommend that you steer clear of messing with those files unless you have a darn good reason to do so. Primarily you don't need to sort them because the print output is controlled by the BCH file so if you reorder the BCH, the print reflects that order. The NA file contains the variable data, and the POL file contains the forms and sections and recipients for the transactions.
    Printstream sorting is an entirely different animal. I haven't been too involved with printstream sorting because it is both 3rd party and happens outside the Documaker realm, but I can tell you that most customers use facilities provided by their print controller (depending on the type of printer) or they use tools like StreamWeaver (in fact that's probably the best one IMO).
    Hope this helps!
    Andy
    Edited by: Andy Little on May 20, 2010 12:09 PM

Maybe you are looking for

  • MSI Ti 4200 random lockups

    Ive been trying to get a GeForce 4 to work in my computer for over 3 months now and I am getting very frustrated.  First I had a Visiontek Ti 4200 64Mb with a Soyo Dragon+ mobo and that would lockup any time I tried to play a video game.  The screen

  • New AEBS (dual mode) extending with AEBS - N Issues

    I just bought the new AEBS dual mode router. When I try to extend the network with a AEBS-N the attached computer always seem to to have DNS issues and cannot connect to websites. The problem appears to be very intermittent with network drops a few t

  • DVD Studio pro vs iDVD: DVD Quality?

    Do the DVDs made by DVD studio Pro look better than those from iDVD? I have very good looking HD videos, made in iMovie: which look quite good as QT movies, but quality deteriorates a fair amount when iDVD makes it into a DVD. looking for better DVD

  • Transfer data from Sap system to .xls format

    Hi Friends, How to transfer data from a internal table in SAP system to the .xls file in legacy system. Is gui_download the correct one. Thanks, Anuradha

  • Service profiles and templates

    I was wondering what people are doing when creating service profiles for esxi. Are you creating a single service profile for each esxi server you deploy or are you using a template and then creating service profiles from that template? Also what is t