How to implement Transfer Function in Real Time VI?!

Hi all,
I'm relatively new to Labview Real Time modoule and want to implement one Controller in Deterministic Loop! I have already one discrete Transfer Function and searching for the way to build one Controller with it! Is it right to use the Simulation Loop instead of Timed Loop (in this case Deterministic loop) and implement the controller in it?! If it's correct so, should I use the same clock and Priod as Timed Loop?!
It would be very helpful, if there is an Example about using transfer function in Real Time Loops!
thanks for your help,
Mohsen 

Hello Mohsen,
I am sorry but I do not really understand what you are trying to achieve. Could you be a little bit more specific on your goals? Which controller are you talking about?  
Best regards 
Florian Abry
Application Engineer Group Leader
NI Germany

Similar Messages

  • How to implement the Transfer Function in Real Time VIs?

    Hi all,
    I'm relatively new to Labview Real Time modoule and want to implement one Controller(not PID one) in Deterministic Loop! I have already designed discrete Transfer Function and searching for the way to build one Controller with it! Is it right to use the Simulation Loop instead of Timed Loop (in this case Deterministic loop) and implement the controller in it?! If it's correct so, should I use the same clock and Priod as Timed Loop?!
    It would be very helpful, if there is an Example about using transfer function in Real Time Loops!
    thanks for your help,
    Mohsen 

    Hello mhmdi,
    Sorry I can't open your VI (looks like it is a new version of LV than I have installed).
    You're right - you don't need to convert to a difference equation if you have the CD&SIM Module which can take discrete time transfer functions directly. You don't need shift registers with this function, as it is effectively done internally. If you don't have CD&SIM discrete TF's can be implemented easily just in a timed (or while) loop with feedback nodes or shift registers to replicate each z-1 you need.
    Some more ideas:
    There are many configuration parameters and options with the Discrete TF VI - which you need to understand for your application and make sure are correct. Sometimes implementing in a basic form (timed loop and shift registers) allows you to see what is happening without any confusing options you might not need.
    Are you using the Discrete TF VI in a Simulation Loop ? You might need to think if the loop being used is appropriate for a Real Time application. Maybe the timing of the TF, the loop and the DAQmx data are not all suitable for each other.
     I'm not familar with DAQmx, so not sure about any specific real-time aspetcs of that.
    "if the sample frequency of the discrete transfer function in the timed-loop is at multiple integers of the sampling rate (e.g. 12000 Hz for tranfer function and 4000 Hz for sampling rate, 12000=3*4000), would it somehow improve the resolution of the controller command?"
    This could actually make things worse - but depends on your transfer function if it is a problem. Think about it this way - in the scenario you state the input signal going into the Discrete TF will only change once in every three samples, that means if your transfer function includes a 1-z^(-1) factor (i.e. a derivative) - that will be zero for two samples then jump up for the next sample. You'll observe a very jittery/noisy signal, but the noise is due to samples not being correct. This will also occur if the sample times are very similar but go in and out of sync where you may get the occassional sample that is the same and hence the occassional zero in the TF.
    In an application I had we had problems trying to get the data coming into a timed loop and the timed loop itself synchronise, and before it was fixed the control signal was very jittery.
    Consultant Control Engineer
    www-isc-ltd.com

  • How do I transfer data from one time capsule to new time capsule when TC backs up an iMac and Power Book

    How do I transfer data from one time capsule to new time capsule when TC backs up an iMac and MacBookPro

    It is generally better to leave the old backups and start again.. unless there is something you particularly need.
    But if you desperately want all the old backups you have to copy the sparse bundles.. this will take very long time as it must copy via the computer..
    http://pondini.org/TM/18.html
    Take particular note of the initial comments.. ie before you read how to do it.. don't do it.

  • How to implement web functionality in OBIEE.

    Hi,
    Please help me in how to implement " web functionality" in OBIEE. Also need ur sugegstions for the below features while implement.
    a.Full set of features
    b.Installation
    c.Inter-changeability
    reg,kannan

    hi,
    Java  jdk-1_5_0_06-windows-i586-p.exe
    OBIEE  OBIEE 10.1.3.3
    1.     Copy biee_windows_x86_101330_disk1.zip file in to your local drive, extract it and run setup file
    2.     For the documentation BIDOC.zip in to your local machine, extract and explore
    Task
    1.     Copy installation files into your local machine
    2.     Install JAVA/JDK
    3.     Set JAVA_HOME, PATH, CLASSPATH
    4.     Install OBIEE
    5.     Explore OBIEE physical folders
    6.     Explore OBIEE installed components
    7.     Create some sample reports and charts.
    or else see the below link for installation
    http://www.oracle.com/technology/obe/obe_bi/bi_ee_1013/install/installoraclebee.htm
    Regards
    Naresh

  • How to implement copy functionality in advanced table

    hi all, i have a advanced table with some data populated, all the rows has a checkbox where the user can select the rows which he wants, my requirement is how to implement copy functionality, i,e i need to show the same set of rows which the user selected in the same advanced table. can any one give me an idea of how to do this

    You can copy the key of the selected rows to the copy page and based on those keys render the rows. On this copy page, once user commits after any modification to data, read those rows and save with new keys.
    --Shiv                                                                                                                                                                                                                                                                                                                                                                                                                                                   

  • I have bought a time capsule to use as time machine device. Until now I have used a external hard disk. How can I transfer the the old time machine datas to the time capsule?

    I have bought a time capsule to use as time machine device. Until now I have used a external hard disk. How can I transfer the the old time machine datas to the time capsule?

    This is really difficult to the point of not really worth it.
    Keep the old TM backups in archive.. and start afresh on the TC.
    Time Machine has a different way of backing up on Network drives cf Local drives.
    Pondini does have a method to do it... but I would not recommend it.
    http://pondini.org/TM/18.html

  • How to implement AI_Change_Parameter function?

    Hi, everyone, I just bought a NI 4472 DSA board, and want to enable IEPE excitation for a channel for connecting a ICP Accelerometer, but I do not have LabView, only use MATLAB, I don't know how to implement  AI_Change_Parameter function in the matlab? I know the devNum is 1 and chanNum is 2, then directly use this function {AI_Change_Parameter (1, 2, ND_DSA_EXCITATION, ND_ON) } in MATLAB, it does not work, could you please let me know what is the problem and how can I use this AI_Change_Parameter function?
    Another question: I checked here and found that the amplifier gain for this NI 4472 DAS board can NOT been adjusted, is that true? I just plan to amplify the signal before it goes to MATLAB.
    Thanks.

    Hi,
    In regards to your question on the amplifier gain, you are correct, there is only 1 range setting on the 4472.
    In regards to you question on programming Traditional NI-DAQ in Matlab, this shuold be handled on your post on the Multifunction DAQ forum to get the most help from other users with similar experience.
    Have a great day!
    Travis W

  • Explain how to implement prompt functionality using @variable

    Hi all,
    Anyone please explain how to implement prompt functionality using @variable.
    We got some sql reports.Those reports have to be converted into BO free hand sql report.
    Please provide any best practices for converting sql reports into BO free hand SQL.
    Thanks & Regards,
    James Charle

    Hi
    Please refer "@Variable" section  in page number 601, in http://help.sap.com/businessobject/product_guides/boexir31SP3/en/xi31_sp3_designer_en.pdf
    Regards
    Ashwini

  • How to implement erase function of paint program?

    Hello all:
    there are many demo programs on the website that indicates how to implement
    a simple draw line java program.
    However, i didn't find available source to learn how to implement the erase function,
    so that we can erase part of line or all lines.
    Some programs present the methods to do undo operations, however none of them
    related directly to how to implement erase function.
    thank you for comments
    -Daniel

    Hello all:
    there are many demo programs on the website that
    indicates how to implement
    a simple draw line java program.
    However, i didn't find available source to learn how
    to implement the erase function,
    so that we can erase part of line or all lines.
    Some programs present the methods to do undo
    operations, however none of them
    related directly to how to implement erase function.
    thank you for comments
    -DanielThere are a few ways depending on the app requirement or design.
    The simplest one is to draw with the background color, typically white.

  • Anyone know how to generate random midi in real time? part 2

    anyone know how to generate random midi in real time?
    http://discussions.apple.com/thread.jspa?messageID=11342321
    This article was archive so I can't reply to this, but I wanted to bring this back up.
    As Christian pointed out on converting your notes to P-Press, then random DataByte 1 then convert back to a Note...
    I used this approached but was able to add in a macro I created to save the generated random DataByte 1 so that when the Note OFF message came around, I can apply that saved random DataByte 1 to the Note OFF in question.
    One thing I did notice when working this out was there's 2 differences in processing the messages when it comes to using a MIDI Input Device or a MIDI Performance (midi file).
    After I was able to figure this out, now I can randomize on notes using either of the 2 Inputs.
    While randomize notes probably won't sound nice to the ear, I apply another macro I created and I'm still adding too, and that's Music Scales.
    So while I randomize notes, when applied to this last macro, the random notes now get mapped to notes in a music scale of your choosing.
    This link shows what I did.
    http://www.digimixstudios.net/RandomizeNotesUseScales/
    I'm currently in the process of creating video tutorials in breaking down the whole process but I wanted to share what I have and see if there's any interested in this.
    Remember, this is just one approach and I hope it gives others ideas to work off of.

    anyone know how to generate random midi in real time?
    When I used to drink a lot... this was no problem at all!
    pancenter-

  • How to implement this function in JSP/Servlet env?

    Hi all,
    I working on a project, it provides functionality to upload file using JSP/Servlet. In the first JSP page, there is file location and submit button. After user select a file to upload and click submit button, a message, like "sending file to XXXX", will be shown on the screen. Once uploading and validation are done on the server-side, a successful/error msg will be shown to user.
    Here I have a question for the "sending..." msg and the successful/error msg. They should be put in one jsp page or in two separate page? how to implement them?
    Thanks for any help!
    Tranquil

    For the sending message... Well, the thing is, when you click submit, it's sending the file to the server and the server is processing it, and this is all done before the "complete" page is sent to the server. So one would need to use some Javascript on the page before the actual submit happens to show some message. This is done on Ebay when you put something for sale, you can upload an image, and there is a little popup message telling you that it's uploading, and it is removed when the process is done. Now, I'm not sure the exact details of how this works, but my educated guess is this:
    1) The onsubmit function of the form checks that the file upload fields have a value (no need to popup a message if no file upload, since that's what usually takes the time, although it could just be assumed there is a file). If a file is to be uploaded, or just want to show the message anyway, a new popup window is opened with the window.open method and the "sending" message is shown (either written via Javascript or just load a small web page to the window).
    2) The popup window, since you can't transfer the window object from the form page to the next page, has to check window.opener for some value that the success/error page would have to set. The success/error page could use it's body onload function to set a variable in it's own window object to denote that the page is loaded. The popup window can use a looping check using setTimeout or setInterval in Javascript to check for window.opener.isLoadedVariable to be present, and if so, close itself.
    I've never done that, but I see no reason why it wouldn't work.

  • BAdI........How are they used in the real time scenario.

    Im a rookie in ABAP development and i was wondering that how we use the BAdI enhancement technique in the real time scenarios. Like do we get create them or we have few already built BAdI's which we work on? Can any body please explain how this works.

    Hi Ramana,
    Business add-ins are enhancements to the standard version of the system.
    Business Add-In is a new SAP enhancement technique based on ABAP Objects.
    They can be inserted into the SAP system based on specific user requirements.
    Each Business Add-In has:
    • at least one Business Add-In definition
    • a Business Add-In interface
    • a Business Add-In class that implements the interface
    In order to enhance a program, a Business Add-In must first be defined
    Subsequently two classes are automatically generated:
    • An interface with ‘IF_EX_’ inserted between the first and second characters of the BADI name.
    • An adapter class with ‘CL_EX_’ inserted between the first and second characters of the BADI name.
    The Application developer creates an interface for this Add-In.
    There are multiple ways of searching for BADI.
    • Finding BADI Using CL_EXITHANDLER=>GET_INSTANCE
    • Finding BADI Using SQL Trace (TCODE-ST05).
    • Finding BADI Using Repository Information System (TCODE- SE84).
    1. Go to the Transaction, for which we want to find the BADI, take the example of Transaction VD02. Click on System->Status. Double click on the program name. Once inside the program search for ‘CL_EXITHANDLER=>GET_INSTANCE’.
    Make sure the radio button “In main program” is checked. A list of all the programs with call to the BADI’s will be listed.
    The export parameter ‘EXIT_NAME’ for the method GET_INSTANCE of class CL_EXITHANDLER will have the user exit assigned to it. The changing parameter ‘INSTANCE’ will have the interface assigned to it. Double click on the method to enter the source code.Definition of Instance would give you the Interface name.
    2. Start transaction ST05 (Performance Analysis).
    Set flag field "Buffer trace"
    Remark: We need to trace also the buffer calls, because BADI database tables are buffered. (Especially view V_EXT_IMP and V_EXT_ACT)
    Push the button "Activate Trace". Start transaction VA02 in a new GUI session. Go back to the Performance trace session.
    Push the button "Deactivate Trace".
    Push the button "Display Trace".
    The popup screen "Set Restrictions for Displaying Trace" appears.
    Now, filter the trace on Objects:
    • V_EXT_IMP
    • V_EXT_ACT
    Push button "Multiple selections" button behind field Objects
    Fill: V_EXT_IMP and V_EXT_ACT
    All the interface class names of view V_EXT_IMP start with IF_EX_. This is the standard SAP prefix for BADI class interfaces. The BADI name is after the IF_EX_.
    So the BADI name of IF_EX_CUSTOMER_ADD_DATA is CUSTOMER_ADD_DATA
    3. Go to “Maintain Transaction” (TCODE- SE93).
    Enter the Transaction VD02 for which you want to find BADI.
    Click on the Display push buttons.
    Get the Package Name. (Package VS in this case)
    Go to TCode: SE84->Enhancements->Business Add-inns->Definition
    Enter the Package Name and Execute.
    Here you get a list of all the Enhancement BADI’s for the given package MB.
    Have a look at http://help.sap.com/saphelp_nw04/helpdata/en/04/f3683c05ea4464e10000000a114084/content.htm
    http://help.sap.com/saphelp_erp2005/helpdata/en/73/7e7941601b1d09e10000000a155106/frameset.htm
    http://support.sas.com/rnd/papers/sugi30/SAP.ppt
    http://www.sts.tu-harburg.de/teaching/sap_r3/ABAP4/abapindx.htm
    http://members.aol.com/_ht_a/skarkada/sap/
    http://www.ct-software.com/reportpool_frame.htm
    http://www.saphelp.com/SAP_Technical.htm
    http://www.kabai.com/abaps/q.htm
    http://www.guidancetech.com/people/holland/sap/abap/
    http://www.planetsap.com/download_abap_programs.htm
    http://help.sap.com/saphelp_nw04/helpdata/en/c8/1975cc43b111d1896f0000e8322d00/content.htm
    /people/thomas.weiss/blog/2006/04/03/how-to-define-a-new-badi-within-the-enhancement-framework--part-3-of-the-series
    /people/thomas.weiss/blog/2006/04/18/how-to-implement-a-badi-and-how-to-use-a-filter--part-4-of-the-series-on-the-new-enhancement-framework
    How to develop BADI
    Reward if useful.
    Thanks
    Aneesh.

  • How to implement Manager Selfservice - Recording Working Time - BP

    Hi!
    I would like to have a stepby step approach to implement business package for recording working time.
    What I need is the following information?
    1. Pre-requisites
    2. How to create the iview ?
    3. What R3 configurations need?
    you can email if you have good documentation on this to [email protected]
    Thank you
    Ramesh

    The primary limitation you will encounter when trying to do high speed
    digital I/O using your E-Series hardware is that the digital lines are
    all software timed.  This means that for each and every digital
    read it is necessary for your software to issue a command to your
    hardware, read a single point, then receive the response from the
    board.  This prevents you from performing digital operations at
    very high speed.  In general, I would say that 100 microseconds is
    a very good response using software-timed digital I/O on a Windows
    computer.
    It is difficult to make a good recommendation without more detail about
    what you are trying to do.  You may need to consider switching to
    a Real-Time operating system, or upgrading your DAQ hardware to a board
    that will allow you to time your digital acquisitions on the board
    itself.  These devices, such as the m-Series DAQ or the PCI-653x
    series, would allow you to use hardware triggers for your digital
    acquisitions, change detection, and buffered data acquisitions to
    reduce the software overhead involved in a rapid acquisition.

  • How to capture pc screen in real time?

    Hi, recently i have been asked to make a java program that captures the pc screen and shows it, in real time, either in the same pc or another pc over the local network. To do this program, i could easilly make one that takes multiple pics of the screen and shows them, but that would be very slow, so i was thinking of doing one that captures the video stream and shows it directly on the program. Problem is, how do i do it using Java? I have no idea, so if anyone can enlighten me on a way how to do it, i would be very thankful.
    on a side note, i have to make a new program, so i am not interested in another programs out there unless they java and open source for me to study.

    you would think i didnt need to post that huh? but in fact, i've looked around this forum to see if i find a solution and i saw not only once or twice, but a really large number of advertisements of programs u had to pay and were closed, in many different threads, so a little infatuation on the fact i didn't need one of those here seemed it would help :P
    thx for the answers, but neither of you focused on the real problem. First, i couldnt just plug the video board on another monitor because it would not be exactly what i need to do, i want the other monitor to be display its own computer system and have a manageable window in which it would show everything being done in the other computer, one i can open without having to mess with any cables. This application would be used in a ubiquitous project and messing with the cables wouldn't really fit in a ubiquitous description :P. I have tested sequenced screenshots, and it is indeed very slow, even in one pc showing the screen captures on itself, imagine over a network...
    altough it may sound premature, doing the program with screen captures seems to me to be entirelly different from doing it getting the feed directly from the video board, maybe with the exception of the little player window that would go with it. But once done, i would be more then happy to test it out and say which of the two would be better to send over the network.
    well, for what i understand, the first poster seems to say there is no way in doing it the way i was trying to do with java, so i'll probably have to get a C program to capture it then send to a java on via socket, but if anyone else out there would know anything that could help me, it would be greatly appreciated.

  • How to implement Breadcrumb functionality in weblogic portal 10.3

    Hi,
    We need to implement the breadcrumb functionality in weblogic portal 10.3.
    Tried to look for it in Google. But couldn't get success.
    Can someone help on how to implement this.
    Thanks
    Uttam

    Please find the example code for Breadcrumbs
    <%
         ArrayList breadcrumbTitles = new ArrayList();
         ArrayList breadcrumbURLs = new ArrayList();
         BookPresentationContext book = BookPresentationContext.getBookPresentationContext(request);
    PagePresentationContext pageCtx = PagePresentationContext.getPagePresentationContext(request);
         if(pageCtx.getDefinitionLabel() != null )
              breadcrumbTitles.add(pageCtx.getTitle());
              breadcrumbURLs.add(PageURL.createPageURL(request, response, pageCtx.getDefinitionLabel()).toString());
         if (!(book.getDefaultPage().equals(pageCtx.getDefinitionLabel())))
              breadcrumbTitles.add(book.getTitle());
              breadcrumbURLs.add(PageURL.createPageURL(request, response, book.getDefaultPage()).toString());
         else
              breadcrumbTitles.add(book.getTitle());
              breadcrumbURLs.add(PageURL.createPageURL(request, response, pageCtx.getDefinitionLabel()).toString());           
              PagePresentationContext parentPage = book.getParentPagePresentationContext();           
              while (parentPage != null)
                   breadcrumbTitles.add(parentPage.getTitle());
                   if (parentPage instanceof BookPresentationContext)
                        BookPresentationContext parentBook = (BookPresentationContext)parentPage;
                        // condition for not showing my eagle page when user not logged in. instead show default home page
                        if (parentBook.getDefaultPage().equalsIgnoreCase(""))
                             breadcrumbURLs.add(PageURL.createPageURL(request, response, ""));
                        }else
                             breadcrumbURLs.add(PageURL.createPageURL(request, response, parentBook.getDefaultPage()).toString());
                   else
                        breadcrumbURLs.add(PageURL.createPageURL(request, response, parentPage.getDefinitionLabel()).toString());
                   parentPage = parentPage.getParentPagePresentationContext();
    %>
         <ul class="breadcrumbs">
    <%
                   // compare if current page is selected. then dont show hyper link
                   if (pageCtx.getTitle().toString().equalsIgnoreCase((String)breadcrumbTitles.get(i)))               
    %>
                             <%=breadcrumbTitles.get(i)%>  
    <%          
                        }else
    %>                    
                             <a href="<%=breadcrumbURLs.get(i)%> "><font color="#005596"><%=breadcrumbTitles.get(i)%></font></a></b><img src="<render:getSkinPath imageName="/spacer.gif" />" width="2" /><img align="bottom" src="<render:getSkinPath imageName="/arrow_right.gif" />" />
                             <%
    %>
         </ul>

Maybe you are looking for

  • Partial Payment

    Hi Gurus I have got a query if anybody help me out in this. After entering the invoice in the system i want to clear it with partial payment and system does that and generates a clearing document against each other. Both invoice and partial payment r

  • MacBook won't SLEEP properly?

    My MacBook is custom set to go to the screensaver after 3 minutes and then the display is set to go to sleep after 4 minutes and it is set to ask for a password to wake from sleep or screensaver. Anyway, sometimes I'll walk away from my computer for

  • BDC for Modal dialog screen

    Hello,   I'm creating a bdc for create customer transaction (FD01). The problem I'm currently having is on maintaining the "other communication" details for the customer. The requirement I have is to maintain only the communication type "URI". But I

  • Output trigger in invoice

    Hello, The problem i am facing is when invoice was created initially print output was not triggered automatically. This was due to user exit in the system. This porblem is rectified, There are some 1000 faulty invoices where print output was not trig

  • How can I open the packages with examples (e.g. com.sap.caf.eu.gp.example)?

    Good day! I wanted to view the example 'com.sap.caf.eu.gp.example.timeoff.wd.create.CCreate' how can I achive it? Is it possible?