How to adjust a function generator on-the-fly in Labview 7.0

I'm using the 'Simulate Signal' vi in LabView 7.0 (with BNC-2090 board) to generate a triangle wave for output to a potentiostat. If the value of either the high or low potential is changed, however, the signal incorporates discontinuities as it recalculates the amplitude and offset. Does anyone know of a way to recalculate the phase shift on-the-fly so that those discontinuities and sudden jumps in signal no longer appear? I think there should be a way to do it using an array, but the 'simulate signal' vi seems like it would be much easier to use.

I agree with Evan that this is not an easy task.
A PID loop could help with the discontinuity but hurt other things. Here are my thoughts.
PID at output of "Simulate Signal"
This would smooth the transition but would also round-off the max and mins. Probably not good.
PID to control Amplitude and offset
Once you have this tuned, it may do what you want if you can tolerate the delay.
Filtering
Here you have to tolerate some phase shift as in the above. You are also caught in a catch 22 because you do not want the dicntinuity when the settings change but meanwhile the triagle wave is an endless series of cusps.
Let us know what ends up working for you.
Ben
Ben Rayner
I am currently active on.. MainStream Preppers
Rayner's Ridge is under construction

Similar Messages

  • Elvis: Is It possible to use the Function Generator and the Oscilloscope simultaneously?

    Hi,
     We are using the NI Elvis to output a function or a sine wave at a certain frequency and using the oscilloscope on the same board/elvis to read a modified signal. Is this possible? Can we use both the Function Generator and the oscilloscope at the same time? Please help. The oscilloscope would be reading signal from an accelerometer. Thank you in advance. We have no VI as we do not know which to use and if they are possible.

    Hi,
    There is no problem using the Function Generator and Oscilloscope
    at the same time with NI ELVIS. Using the NI ELVIS soft front panels (Start
    >> Programs >> National Instruments >> NI ELVIS 3.0 >>
    NI ELVIS – see picture attached –‘NI ELVIS soft front panels.JPG’), you can choose
    to open more than one instrument at a time. We do this by opening one
    instrument, allowing it to begin, and then opening another. We can also program
    in LabVIEW using more than one instrument at a time by placing down multiple
    Express VI’s taken from the NI ELVIS pallet on the block diagram (see picture
    attached – ‘ELVIS Express VI's (LabVIEW).JPG’). One note when doing this,
    please see KB 41ODPHX1 
    for an example of how to program in parallel. If you do not wire the ‘stop’
    terminal of the express VI’s, you will get the error described.
    David L.
    Systems Engineering
    National Instruments
    Attachments:
    ELVIS Express VI's (LabVIEW).JPG ‏74 KB
    NI ELVIS soft front panels.JPG ‏56 KB

  • How to write a function generator

    How to write a function generator from labview and using PCI-MIO-16

    Hallo, [email protected],
    Du (x) meintest am 27.07.01 zum Thema How to write a function generator:
    > How to write a function generator from labview and using PCI-MIO-16
    Look to the examples - there are many VIs with that function.
    Viele Gruesse!
    Helmut

  • How can I backup archivelog generated in the last 5 minutes ?

    Version: 11.2.0.3
    Platform : RHEL 6.2
    How can I backup archivelog generated in the last 5 minutes ? Following is what I've attempted so far ?
    RMAN> backup archivelog all format '/rman_backups/Nov21Bkp/archiveTest_%U' UNTIL TIME 'sysdate-5/1440';
    RMAN-00571: ===========================================================
    RMAN-00569: =============== ERROR MESSAGE STACK FOLLOWS ===============
    RMAN-00571: ===========================================================
    RMAN-00558: error encountered while parsing input commands
    RMAN-01009: syntax error: found "until": expecting one of: "archivelog, auxiliary, backupset, backup, channel, controlfilecopy, copy, current, database, datafilecopy, datafile, db_recovery_file_dest, delete, diskratio, filesperset, force, format, from, include, keep, maxsetsize, noexclude, nokeep, not, plus, pool, recovery, reuse, section, skip readonly, skip, spfile, tablespace, tag, to, comma, (, ;"
    RMAN-01007: at line 1 column 81 file: standard input
    RMAN> backup archivelog all UNTIL TIME 'sysdate-5/1440' format '/rman_backups/Nov21Bkp/archiveTest_%U';
    RMAN-00571: ===========================================================
    RMAN-00569: =============== ERROR MESSAGE STACK FOLLOWS ===============
    RMAN-00571: ===========================================================
    RMAN-00558: error encountered while parsing input commands
    RMAN-01009: syntax error: found "until": expecting one of: "archivelog, auxiliary, backupset, backup, channel, controlfilecopy, copy, current, database, datafilecopy, datafile, db_recovery_file_dest, delete, diskratio, filesperset, force, format, from, include, keep, maxsetsize, noexclude, nokeep, not, plus, pool, recovery, reuse, section, skip readonly, skip, spfile, tablespace, tag, to, (, ;"
    RMAN-01007: at line 1 column 23 file: standard input

    HemantKChitale wrote:
    You shouldn't specify both "ALL" and "FROM/UNTIL TIME"
    Also if you want the archivelogs generated in the last 5 minutes, you should be using FROM TIME.
    If you want the archivelogs generated until 5minutes ago (and not the latest archivelogs), you should be using UNTIL TIME.
    Hemant K Chitale
    I've wondered about the utility of the FROM and UNTIL options for backup of archivelogs.  If one is going to back them up, why would one use an option that distinctly introduces the possibility of having gaps - un-backed-up archivelogs?  Why would one not simply back up all archives not previously backed up at least once?
    I'm sure you'll give me a valid response for a situation for which my imagination fails to see. 

  • How to find which function module write the relevant idoctype?

    Dear All,
    how to find which function module write the relevant idoctype?

    Hi,
    Generally the function modules of the idoc types are having a naming convention as IDOC_INPUT for inbound processing and IDOC_OUTPUT for outbound processing followed by the idoc type name
    for example : For IDOC type ORDERS
    the inbound function module will be IDOC_INPUT_ORDERS and for outbound IDOC_OUTPUT_ORDERSP
    In this way you can find the function module for a particular IDOC
    P.S: Hope this is what you have asked for
    Regards
    Sarves

  • Oracle Trigger - How can I capture and correct on the fly  ORA-01847

    Oracle Trigger - How can I capture and correct on the fly ORA-01847 day of month must be between 1.
    I have a table that has a date column. Sometimes an invalid date is passed and I'd like to capture and initilize the incoming value to null and have it inserted without error. Currently I get ORA-01847 day of month must be between 1.
    Example:
    create table ep1
    col_1 number,
    col_2 date
    Now if a user does the following, I want no error to occure but rather for the date value to be set to null and inserted.
    insert into ep1 values('1', '41-JAN-13')
    The insert may come from any client and I can't change the calling code hence can't used a precedure to replace the insert. I'm guessing there is some way to catch system level exceptions on the DB level. This doesn't need to be nice, it just needs to work.
    Here is the question on experts exchange. I'm told there is no way, but there must be. After all the exception is on a DB system level and I would think one could extend or override these, or disable them.
    http://www.experts-exchange.com/Database/Oracle/PL_SQL/Q_23045306.html

    SQL> declare
      2     wrong_month      exception;
      3     pragma exception_init (wrong_month, -1843);
      4  begin
      5    begin
      6      insert into emp (empno, hiredate)
      7      values (2345,to_date('13/25/81','MM/DD/YY'));
      8    exception
      9      when wrong_month then
    10      dbms_output.put_line('I caught the bad month');
    11      insert into emp (empno, hiredate)
    12      values (2345,null);
    13    end;
    14  end;
    15  /
    I caught the bad month
    PL/SQL procedure successfully completed.
    SQL>
    SQL> select * from emp
      2  where empno = 2345;
         EMPNO ENAME      JOB              MGR HIREDATE         SAL       COMM     DEPTNO
          2345Note the 1843 error vice 1847. It can be done outside of a trigger.

  • How to delete lock entries generated by the function module "BAPI_OBJCL_CHANGE"

    Hi experts,
    I'm now trying to make an add-on program
    which updates material master information by the background job.
    To update the "Classification" view of material master,
    the program calls the function module "BAPI_OBJCL_CHANGE".
    If the "RETURN" information is valid,
    then the program calls "BAPI_TRANSACTION_COMMIT" (with the "wait" parameter 'X').
    Contrary to my intention,
    lock entries generated by the function module "BAPI_OBJCL_CHANGE" remains after "BAPI_TRANSACTION_COMMIT".
    As a result, the material updated remains locked until the add-on processing ends.
    To shoot this trouble, I read some SCN discussions below:
    <<lock unlock record>>
    ⇒ As I wrote above, I checked the parameter for "BAPI_TRANSACTION_COMMIT".
    <<BAPI_OBJCL_CHANGE Lock Error !>>
    ⇒ I cannot call the function module "BAPI_OBJCL_CHANGE" with "IN UPDATE TASK" option
    because of "BAPI_OBJCL_CHANGE" attributes.
    ("BAPI_OBJCL_CHANGE" is not a "Update Module".)
    How can I delete lock entries generated by the function module "BAPI_OBJCL_CHANGE" ?
    Thanks in advance.
    Tom

    I quess/hope you want to remove locks in you caller program and not locks required by the update task processing to insure database consistencies...
    Did you use the WAIT option in the commit FM, else if there are no other locks in your called program a call of FM DEQUEUE_ALL could solve your problem.
    Regards,
    Raymond

  • How to use Mail functionality OPTT in the Schema

    Dear All,
        We have a requirement where we need to send a mail to the Time Administrator if Time Evalution ends in Error.  We have implemented the functionality OPTT MAIL option in the schema, but it is not sending the mail to Time Administrator. We have maintained the Time Administrator table T526 with the SAP ID.
    Could anybody tell us, we have to do anyother configuration to enable the mail function
    Thanks in Advance
    Rajesh.S

    Hello Folks,
        Can anyone please let me know How to send a mail notification to the Time Administrator.
    In the Schema, OPTT MAIL 1 has declared.
    The Time Administrator is maintained in T526 table.
    Do we need to do other than above to send mail.
    Kindly let me know.
    Note. The COLER function is not used in the Schema.

  • How to adjust webpages to fully fit the C470 screen

    Hi all
    Appreciate any guidance on how to adjust the size of a webpage to fully fill the 21.5" screen of C470. Enlarging by Ctrl+ or Fullscreen F11 won't help as the zooming originate from the centre outwards resulting in the truncation of the height of a webpage. Thanks in advance
    Regards
    kh

    Doesn't always work the way you think it should but you could try dropping the Broadcast Safe filter on the entire clip.
    You could also just cut the clip where the brightness first appears and add the 3 way Color Corrector. Adjust it to where you like it and then add a disolve between the clips. (may or may not do it for you depending on how the bright spot comes into frame, but it's a fast workaround) Could keyframe the 3 way in if you like.
    There are other things you can do with the 3 way to limit it's effect but to get a grip on it you should probably refer to the manual.
    rh

  • How to create a function to finish the step add and decrease

    Hi,sirs,
    Can you give a simple example that uses a function to finish the step add and decrease? In fact, I am doing the following job:
    I hope to use "while" frame to implement "step add":
    when the "i" in the "while" frame increases, a value should be increased accordingly and then be output. However, after the value reached a Max value, it should be decreased while the "i" continues increasing.
    Can you give me a simple program for that? I am using Labview 6.0.
    Thanks a lot.

    Here's a slightly different version. In this one, you can specify the minimum and maximum count values, the starting count, start count direction, and even have different values for incrementing and decrementing. There is also a Pause and a reset control.
    It reverses count direction when either the min or max count is reached.
    It's saved in LabVIEW 6.0.2. This one is designed to be used as subVI.
    Ed
    Ed Dickens - Certified LabVIEW Architect - DISTek Integration, Inc. - NI Certified Alliance Partner
    Using the Abort button to stop your VI is like using a tree to stop your car. It works, but there may be consequences.
    Attachments:
    Up-Down_Counter_(DBL).vi ‏61 KB

  • How to execute a function and return the result into a bind variable

    Hi,
    I am trying to calculate the sum of salaries of all persons with a particular JOB_ID using a function TOTAL_INCOME(v_job_id).
    create or replace function total_income
    +(v_job_id IN varchar2)+
    RETURN number IS
    v_total number(6);
    cursor get_sal is
    select salary from employees
    where job_id = v_job_id;
    BEGIN
    v_total := 0;
    for emp in get_sal
    loop
    v_total := v_total emp.salary;+
    end loop;
    dbms_output.put_line('Total salary of '||v_job_id||' is: '|| v_total);
    return v_total;
    END;
    Now I woud like to execute this function and assign the returned value into a bind variable test_sal
    variable test_sal number(6)
    SELECT total_income('AD_VP') into :test_sal FROM DUAL;
    dbms_output.put_line('Total Sal:'||:test_sal);
    This is returning the below errors:
    SELECT total_income('AD_VP') into :test_sal FROM DUAL
    *+
    Error at line 0
    ORA-01036: illegal variable name/number
    dbms_output.put_line('Total Sal:'||:test_sal);
    Error at line 3
    ORA-00900: invalid SQL statement
    Could someone help me what could be the problem?? Thanks for your time...

    Dear,
    If everything you will do will be done inside PL/SQL (stored procedure or stored function) then you don't have to care about bind variable.
    When using PL/SQL (static SQL) you will never encounter issues related to bind variables. PL/SQL itself takes care of your code and uses bind variables behind the scene.
    The only situation where you have to look carefully to the use of bind variables within PL/SQL is when you use Dynamic sql into stored procedures or functions.
    So, see in the light of the above comment, if you have to care about returning your function into a bind variable?
    Best regards
    Mohamed Houri

  • How to create a function to get the 16th of the current month and the 15th of the next month

    I need to create a function to get the 16th of the current month and 15th of the next month to use it in the fast formula to calculate the sick leave.
    Example:
    If an employee takes a sick leave from 16 feb 2015 to 17 feb 2015 , I want it to affect march's payroll not February.
    Please help and thanks in advance.

    Below statement gives you the result. Use the concept and write your PL/SQL function.
    select TO_DATE('16-'||TO_CHAR(SYSDATE, 'MON-RRRR')), TO_DATE('15-'||TO_CHAR(add_months(SYSDATE, 1), 'MON-RRRR')) from dual;
    Or you can use same construct directly in the fast formula by changing syntax accordingly.
    Regards,
    Peddi.

  • Liquid data--how to parse the xml which is generated on the fly

    I am using liquid data for retreiving data from database which I am able to do
    but the problem is that it generates the xml on the fly and prints the response
    in xml format in html document .My need is that I want to parse this xml and use
    the data on need basis in my jsp document.
    I am usig following weblogic workshop 8.1 tags in my jsp :
    <lds:query name="bdemo_cust_info" server="t3://localhost:7001">
    <lds:param name="cust_name" value="<%=\"MCD\"%>"/>
    </lds:query>;
    Please help??
    Thaks and Regards,
    Ajay Jindal

    hi Ajay
    You can create a Liquid Data Control and display it using NetUI - or see the QueryClient
    example in weblogic\samples\liquiddata\ejbAPI and create an XML Bean from the
    result.
    - Mike
    "ajayjidal" <[email protected]> wrote:
    >
    I am using liquid data for retreiving data from database which I am able
    to do
    but the problem is that it generates the xml on the fly and prints the
    response
    in xml format in html document .My need is that I want to parse this
    xml and use
    the data on need basis in my jsp document.
    I am usig following weblogic workshop 8.1 tags in my jsp :
    <lds:query name="bdemo_cust_info" server="t3://localhost:7001">
    <lds:param name="cust_name" value="<%=\"MCD\"%>"/>
    </lds:query>;
    Please help??
    Thaks and Regards,
    Ajay Jindal

  • How do I create an object on the fly

    Hello there,
         I was wondering if it is possible to create an object on-the-fly. For example:- I have a class called Customer which holds the name, address and phone number of a customer. While the program is running I get a new customer, Mr Brown. How can I create a new Customer object which will hold the details of Mr Brown.
    yours in anticipation
    seaview

    If I understood you right, you are thinking far too complicated.
    So, when you click a button, a new object shall be created and stored. So basically you write a listener to your button that contains a method like this:
    public void actionPerformed(ActionEvent e){
       Customer newCustomer = new Customer(textfield.getText());
       listOfCustomers.add(newCustomer);
    }Maybe what got you confused is the object's name. Remember this: variables and field names DON'T exist anymore at runtime! They are just meant to help you when programming. If you want Mr. Brown as a customer, you have to provide a field in the customer class for the name. If a field is required for the existence of an object, you usually write a custom constructor for it, which accepts an according parameter.

  • Adjust video playback brightness on-the-fly...?

    I've just moved over from a 5G iPod to an iPhone, and had a question about a certain aspect of video playback...
    I watch a lot of video on my iPod (now iPhone), and I'm a stickler for saving my battery life, so I always turn the screen brightness right down to its lowest viewable point when watching video.
    I also watch video in bed, with the lights off, so turning the brightness right down still makes the videos perfectly viewable.
    Sometime though, of course, I have to turn the brightness up for scenarios where I'm in a brighter environment.
    The way to do this on the 5G iPod is, at any time when watching a video, hit the centre button twice (once takes you to the scrubber) and then scroll left or right for dimmer or brighter. Easy. Job done. And you can see the results right there and then, so you can adjust it to just right.
    Now unless I'm mistaken, there's no similar way of doing this on the iPhone, and that you can NOT adjust video brightness on the fly...
    The only way to adjust brightness is, while watching a video, to go to Home > Settings > Brightness > Drag it > Home > iPod > Video.
    Surely everyone can see that's a MUCH more laborious way of doing things!?
    Even then, you can't be sure you got the brightness setting adjusted correctly, because a bright vivid animation, like The Simpsons, is much more visible and clear on a low brightness setting than, say, TV shows of Magnum P.I. with their 80's "converted-from-video" feel.
    And believe me, I know, because those 2 examples are real-world scenarios for me.
    And before anyone says it, yes I DO know about the "Auto-Brightness" setting, but I've tried it, and 9 times out of 10 it's too dim for my liking in a brightly-lit room (especially on the Magnum P.I.'s) and it's too bright in bed with the lights off (especially on the Simpsons)!
    So I suppose if I'm making this post a question, it would be:
    Is there no method of changing video playback brightness on-the-fly, while the video is still playing on-screen?

    Brett,
    You've been around on these forums long enough to understand what is and isn't allowed by the TOA, so I'm fairly sure you know (I don't know but could make a guess as well).
    In general this whole thread could be deleted... except that you asked a question at the very end of your first post (which was answered). That's all these forums are for, asking and getting questions answered. Editorial comments, rants and raves are not what we are here for.

Maybe you are looking for

  • The scan's to PDF file can not be printed

    Hello, Im have an Mac running on Mac Os X 10.7.3 I bought a HP officejet PRO 8500 A910. The printer is installed and works fine if a want to print a document or a picture. The scanner also works. BUT there is a problem. When I scan a document in my H

  • Hello, I need to down wassapp in my iphone but apear other email. what I can to do?

    Hello, I need to down wassapp in my iphone but appear other diferent email and dont let me do it, I dont know the apple id for that email. What I can do? thanks

  • 6120 Classic Dictionary Help

    Hey all, Does anyone know if it's possible to remove words manually added to the dictionary? I've got annoying words like "yot" and "I6m" showing up now instead of "you" and "I'm". It's bloody annoying when I'm in a hurry and so far I haven't found o

  • E_ADEPT_DATABASE Duplicate entry

    This is the HTTP response I get from attempting to open an acsm file. <error xmlns="http://ns.adobe.com/adept" data="E_ADEPT_DATABASE http://books.google.com/books/acs4/fulfillment/Auth Duplicate%20entry%20'Vêw%0e‰fJø»¾P�&#127;%12‰'%20for%20key%201"/

  • Can't open any e-books not even the sample one

    I have installed Adobe Digital Edition 4 on my PC and am trying to open a e-book,. when I download a book and click to open the message "Fullfuling the "name of the book" pops up. Once the fulfulling is done nothing appears in the Adobe Digital Editi