Use reference trigger for cyclic recording data

Hi,
Before I start, let me briefly introduce what hardware I have and what I want to achieve.
  I  got SCXI-1000 (Chassis), SCXI-1102C (module), SCXI-1303 (terminal block,
  mainly for temperature sensor input); a couple month ago  I bought feedthrough SCXI-1180 and terminal SCXI-1302 to input my digital signal (see attached PNG file). In fact, I have two digital signals to input. The first one is Injection digital signal (input as PFI0) which will trigger the start of recording my
temperature profile; The second is packing signal (input as PFI1), which I want to use as a reference trigger to stop the recording and save as the cycle file.
And then the injection cycle keeps going. Please see the attached VI for details.
    I get my digital trigger working to start recording my temperature sensor profile. However, I can't get the second part trigger to stop the recording.
The error message from running my VI is that a reference trigger is only applicable for finite sampling. It seems that I need continuous sampling to recording my temperature profile! So, by looking through my VI, please give some suggestions to do the task and solutions to solve the conflictions for sampling.
  Your assistance is higly appreciated.
HW
Solved!
Go to Solution.
Attachments:
Arburg digital signals.png ‏17 KB
Trigger_Test2_TransientComparison.vi ‏109 KB

Hi, Jim:
I've tried with the way you suggested to poll out the digital line. In your VI, it will stop the running of the whole program when the second signal jumps up. If you see my VI attached, I'd like to start recording with the first trigger and then stop the cycle file by the second trigger signal falls down, and then keep recording the second cycle until clicking stop (reference to my signal illustration).
So what I am trying is to use both trigger signal to output a boolean value (when both trigger signals are 0), reverse it to true (1), and use it to stop the cycle file. But I am still little far away from doing the task. Is there any way to do the cyclic file as I want with or without 'Write to Measurement File' VI?
Please edit my VI and save in V8.5. Thanks for your help! 
Best Regards
HW
Attachments:
Trigger_signal_illustration.png ‏12 KB
Read_AI_Test2-Dig_Chan_triggers.vi ‏111 KB

Similar Messages

  • NI-5122 Multiple records: different trigger for first record

    Hi,
    I’m using a NI-5122 high-speed digitizer to acquire multiple records (say 100 of length 20 each), triggered by an external 1kHz source, and clocked by an external 80MHz clock.
    Is it possible to start the whole acquisition process (i.e. the first record) with a certain trigger signal (e.g. from PFI0), but trigger subsequent records with a different trigger signal (e.g. from TRIG)?
    Thanks in advance for your suggestions!

    TobiSL,
    Yes, what your asking for is possible, and the two trigger types you mentioned are called repectively: Start Trigger, and Reference Trigger.  You can configure each of these triggers separately.  To configure the Reference trigger you use the "niScope Configure Trigger vi".  To configure the start trigger, all you need to do is specify the source of the start trigger, using the niScope property node: "Start Trigger Source".  
    Hope this helps!
    Product Support Engineer
    National Instruments

  • Using htp.p for print dynamic data in apex region make my page slow?

    Hi, everyone!!! My name is Rafael, and...
    I search in the web and in this forum but i can´t find a answer for my doubt.
    Using the procedure htp.p for print dynamic data in apex region through on demand process , this will leave my webpage slow to load when the user access?
    Example:
    For build a menu in my webpage, it´s read a function in the database that returns variable string, so by a demand process this string is obtain and print in a web page using htp.p.
    I notice that this practice causes slow to load the data on the page.
    This is it...
    If someone help me, thanks...
    bye and Happy new Year!!!
    Edited by: user9518141 on 26/12/2009 17:19

    Hi,
    Try commenting out the function call and print some sample text in the htp.p like htp.p('Hello world..');
    I think the function call is probably taking a lot of time .. not htp.p.
    I have used htp.p to print out values dynamically in a lot of situations and have not ever come across any performance issues.It could be a problem with the function you are calling.
    Thanks,
    Rajesh.

  • Using reference pages for document revision tracking

    I'm hearing a goofy idea at work about using Frame 7 reference pages for revision tracking on a document. I think the idea is to create a reference page and put a revision tracking table on that page.
    My impression is that reference pages aren't for users to muck with very much. Template updates could affect them, future Frame upgrades could affect them, etc.
    Is anyone else out there doing something similar and does it work?

    I can see a problem with your approach if you import formats from one file to many files. You can easily overwrite the revision information.
    Say you make a reference page called "REVS" for all your book chapters and begin populating the revisions. At some point in time, somebody imports the formats (including reference pages) from chapter 3 to all the other files in the book. All the reference pages named "REVS" will be overwritten with the chapter 3 revision information.
    A way ensure against overwriting would be to give a unique name to each file's revision page (REVSch1, REVSch2, etc.); however, you may end up with multiple, unused, outdated reference pages in each file. They won't cause any harm (except maybe causing confusion when updating the rev info), but may bloat your file size.

  • Can I use a trigger to keep record of deleted data?

    I am trying to log changes to a table, including deletes. The trigger is working effectively for INSERT and UPDATE, but does not capture the data from the row when I create a DELETE trigger.   I have tried various trigger syntax methods to capture the data in a new "log" table, but I only seem to get the key field after the trigger fires.
    My base table has only a few fields:  ID (key), NAME, DESCRIPTION, CREATED_ON, UPDATED_ON.
    On delete, I would like to capture the data that was deleted for record keeping and audit trails.   Below is the latest iteration of my trigger define code:
    create trigger ADDRESS_TYPES_TRIGGER_D
    BEFORE DELETE ON "MEDPORTAL"."MEDPORTAL_XS.data::ADDRESS_TYPES"
    REFERENCING OLD ROW AS thisRow
    FOR EACH ROW
    begin
      declare newId INT;
      declare deleteId INT := 131;
      select "MEDPORTAL"."MEDPORTAL_XS.data::Address_Types_Log_ID".NEXTVAL into newID from DUMMY;
      INSERT INTO "MEDPORTAL"."MEDPORTAL_XS.data::ADDRESS_TYPES_LOG"
      (ID,
      USERNAME,
      ACTION_ID,
      ADDRESS_TYPE_ID,
      NAME,
      DESCRIPTION,
      UPDATED_ON
      values(
      :newId,
      current_user,
      :deleteId,
      :THISROW.ID,
      :THISROW.NAME,
      :THISROW.DESCRIPTION,
      current_timestamp
    end
    This code captures the newId from the sequence as the new table key.  It also captures the USERNAME, ACTION_ID (coded to a delete message in another table), ADDRESS_TYPE_ID (THISROW.ID), and the current_timestamp.  How can I capture the data in NAME and DESCRIPTION in the log table? 
    I have tried
    create trigger ADDRESS_TYPES_TRIGGER_D
    AFTER DELETE ON "MEDPORTAL"."MEDPORTAL_XS.data::ADDRESS_TYPES"
    REFERENCING OLD ROW AS thisRow
    FOR EACH ROW
    and
    create trigger ADDRESS_TYPES_TRIGGER_D
    AFTER DELETE ON "MEDPORTAL"."MEDPORTAL_XS.data::ADDRESS_TYPES"
    FOR EACH ROW
    But I cannot capture the data.  I am on the AWS rev 70 image (1.0.70.386119)
    Is the DELETE trigger capable of capturing the data?

    If you can add a step to disable backup job start of ETL and enable backup job after ETL completes.
    exec msdb..sp_update_job @job_name = 'LS backup Job Name', @enabled = 0 --Disable
    exec msdb..sp_update_job @job_name = 'LS backup Job Name', @enabled = 1 --Enable
    create a record in a table:
    In those line you can create a new job as well which will check record in table if its 0(ETL completed) then enable the backup job and if its 1(ETL running/started) then disable the job. This job will run every 5 mins to check the flag in table. Depending
     on ETL status it will enable or disable tlog backup job that way you will be able to resume log shipping without delay. 

  • I am using a Conditiona​l Retrieval Trigger but only recording data around a very narrow band relative to the set point. Any thoughts? Thanks

    Since I am pretty new to LabView, I have tried to build this with examples given and have things running my way except for this trigger problem. I would like to have my acquisition channel serve as my trigger channel and only log data after this point is reached and stop after the level goes back under the set point.
    Attachments:
    Force_Monitor.vi ‏92 KB

    I apologize, but I did not realize what hardware you were using previously. The 6024E card does not have analog triggers. It only supports digital triggering. Therefore, you will be unable to configure an analog start and stop trigger.
    In order to configure a digital start and stop trigger, you may want to look at the following example program.
    Continuously Acquiring Analog Signals Using a Digital Start and Stop Trigger in LabVIEW
    http://venus.ni.com/stage/we/niepd_web_display.DIS​PLAY_EPD4?p_guid=B45EACE3ED3556A4E034080020E74861&​p_node=DZ52308&p_submitted=N&p_rank=&p_answer=&p_s​ource=Internal
    The work-around since your board does not support analog triggering is to use conditional retrieval, which implements a circular buffer in c
    omputer memory and checks each point as it is acquired to see if it matches the trigger conditions. When the trigger conditions are met LabVIEW reads the desired data from the buffer. Since the program you are pointing me to uses conditional retrieval, I will assume you already knew of this work-around. Basically you will no longer be performing a hardware trigger. Instead you will just be checking each input value to see if it falls in an acceptable range. Unfortunately, the VI you attached to your post is missing subVIs. I cannot open your attachment and run it with the broken subVIs. You will need to save your application as a library (llb) in order for me to view it.
    Regards,
    Justin

  • Mutating Error problem using audit trigger for UPDATE

    I need to add 4 columns to all of my tables named:
    INSERT_BY
    INSERT_DATA
    UPDATE_BY
    UPDATE_DATE
    I intend these to act as "inserted" and "last updated" audit trails within the table, as opposed to creating a new table and storing the audit information there. The insert columns appear to be easy, as I can just use a DEFAULT clause within the definition of the table. However when I attempted to write a (my first) trigger then I run into problems with mutating tables. Presumebly because I am attempting to change the table while the trigger is referencing it.
    create or replace trigger test_audit
    after update on dictionary
    begin
    update dictionary
    set update_by = user, update_date = sysdate
    where entity_id = :old.entity_id;
    end;
    I thought I could maybe get around this by calling a procedure from inside the trigger. Something like:
    create or replace procedure test_audit(vColumn in varchar2, vData in varchar2, vTable in varchar2) is
    -- vTable is table name
    -- vColumn is PK of table
    -- vData is value of PK in current row
    begin
    update vTable
    set update_by = user, update_date = sysdate
    where vColumn = vData;
    commit;
    end test_audit;
    However I cannot use variable for table names. Will this mean I have to create a procedure for each table/trigger? Is there a way to reference the table name as a variable and keep this a generic procedure? Or is there an easier way to record the auditing UPDATE information for each changed row within the original table?
    Many thanks in advance......

    Will
    this mean I have to create a procedure for each
    table/trigger? I think you've answered that question already.
    Is there a way to reference the table
    name as a variable and keep this a generic procedure?Not that I'm aware of.
    Or is there an easier way to record the auditing
    UPDATE information for each changed row within the
    original table?Well, there's the AUDIT feature.
    C.

  • Help needed writing trigger for deleting records from multipul tables

    i am trying to write a trigger which would help me delete the record from 3 different tables
    lets say i have table a , b and c
    i an trying to write a trigger which would help me delete the same record from table a and c.
    drop trigger az_zzz_trigger;
    create trigger az_zzz_trigger
    before INSERT or UPDATE or DELETE ON az_employ
    FOR EACH ROW
    BEGIN
    IF DELETING then
    delete from za_payroll
    delete from az_salary_audit
    end if;
    end;
    while executing this trigger all data of table za_payroll is delete.
    what should i do so that only the record which i delete from az_employ gets deleted from az_payroll and az_salary_audit

    872959 wrote:
    i am trying to write a trigger which would help me delete the record from 3 different tables
    lets say i have table a , b and c
    i an trying to write a trigger which would help me delete the same record from table a and c.
    drop trigger az_zzz_trigger;
    create trigger az_zzz_trigger
    before INSERT or UPDATE or DELETE ON az_employ
    FOR EACH ROW
    BEGIN
    IF DELETING then
    delete from za_payroll
    delete from az_salary_audit
    end if;
    end;
    while executing this trigger all data of table za_payroll is delete.
    what should i do so that only the record which i delete from az_employ gets deleted from az_payroll and az_salary_auditutilize appropriate WHERE clause

  • Use BEx variable for user input data, not to filter.

    Hi,
    I have a situation where I am displaying notification task data.  Each header notif has a number of tasks.  These tasks are marked either newest, oldest or no mark (in the middle) for each different task code.
    Using VKF's and by passing the user entered variables for newest and oldest I am able to make KF calculations.
    So if I have a notif that is like this:
    Notif XYZ
      Task 1  Code: SCM     Date: 1/1/2000
      Task 2  Code: SCM     Date: 1/4/2000
      Task 3  Code: SCK     Date: 1/10/2000
    If the user selects Newest = SCM and Oldest = SCK
    The key figure would use those 2 different notif tasks to calculate.
    This works fine.
    My problem now is that since the data is displayed at the line level.  When the user enteres his choices for task code, BEx will filter to find one single task item that has both the Newest and Oldest values that the user entered.  It will return no data.
    Example:
    NOTIF    TASK      NEWEST     OLDEST
    XYZ.........1.......SCM
    XYZ.........3..................SCK
    If user enteres Newest = SCM and OLDEST = SCK
    It will look for one line with both value, returning nothing.
    So, I want to simply use the BEx selection screen to pass values to my virtual code (which I already have working)-  but I do not want the report to filter on a notification that only has both values as OLDEST and NEWEST tasks.
    Is this possible?  To deactivate the BEx filtering for two infoobjects thus only passing the user entered values to my CMOD code?
    Any help/suggestions would be appreciated.
    Thanks in advance,
    Brandon

    Hi Prakash,
    Can you explain what you mean?  I know using a text variable would allow me to take the user entry and apply it to the header of a column... but how would it disable filtering on what was entered?
    Thx

  • Can we use remote cubes for real time data

    Hi Gurus,
    Can you please explain, can remote cubes be used for sales item and billing item ,data sources, if it, can i extract the data as of normal cube running on these DataSource, if so then i want to make multicube on normal cube and remote cube and make a real time sales data on BW, please explain the possibilities of this, we are on version 3.1c
    Thanks in advance

    Hi,
    Remote cubes are special InfoCubes. A Remote cube represents a logical view.
    Unlike with BasisCubes however, no data is physically stored in SAP BW. The
    data is taken from the source systems only after a query has been executed.
    There are three types of remote cube. They can be distinguished by the way
    in which they retrieve data.
    Overview: Virtual Cube Types
    -SAP RemoteCube
    A SAP RemoteCube allows you to define queries with direct access to transaction data in other SAP systems.
    -General RemoteCube:
    A general Remote Cube allows reporting using data from non-SAP systems. The external system transfers the requested data to the OLAP processor via the BAPI.
    -Virtual InfoCube with Services:
    For a virtual InfoCube with services, a user-defined function module is used as the data source.
    Regards
    Pavan Prakhya

  • Using Serial Port for Non-Serial Data Acquisiton

    I searched the forums and couldn't find anything related to this topic.
    I saw that it was possible to use the parallel port for simple digital I/O and I was hoping the serial port can be configured the same. It seems all the VISA VI's only want to use the serial port to recieve ASCII chars at a given baud rate, but is it possible to simply poll the status of the serial line at my own speed to see if it is high or low, kind of like a single pin DAQ?
    It seems it would be possible as long as the serial data is read and controlled by labview and not by Windows. Let me know if you have any ideas how to approach this problem, or any feedback as to why it is not possible.
    Thanks everyone!
    Solved!
    Go to Solution.

    Select Property>Serial Settings>Modem Line Settings. For example, the CTS State is an input to the pc.
    Using these lines is a very poor replacement for a scope or DAQ board. The only things you can get back is Asserted, Unasserted, or Unknown. The range of acceptable signals is quite large. Anything between +3 and -3 is an unknown state. Your other signals are +/3 to 15 volts. what kind of signals do you actually want to capture?
    edit: There is no such thing as VISA Status so I have no idea what you are actually using.
    Message Edited by Dennis Knutson on 07-20-2009 11:09 AM

  • Is it possible use component controller  for to expose data of one view in another view within the same component?

    please give with an example if possible to use?
    Moderation: Thread Locked. Kindly do not post interview questions here

    I'm so sorry I don't have a solution for your problem but would you be able to show how you managed to call an external task-flow inside another application? I'm having some difficulties doing so.
    Thanks so much

  • How to set & use digital trigger for AIN on a DAQmx?

    1) How I configure a task to allow a digital input line to trigger a AIN reading in VB6.0 with a USB-6210?
    2) To help me answer the above I created a task in Measurement & Automation Explorer that used a digital trigger (TRIGGER TYPE= DIGITAL EDGE, TRIGGER SOURCE = PFI0, EDGE=RISING).  Then from VB I tried to figure out the parameters that were set.  I had no luck.  So, once I understand to achieve (1) above I want to be able to verify the resulting settings.  What command(s) would I use?

    Hi Hjehan,
    I recommend checking the following knowledge Base that can point you to the different DAQmx examples.
    Regards,
    Faris A
    Bueller

  • Re: audit using ddl trigger for dcl (grant and revoke)

    Why are you trying to re-invent oracle's own auditing feature?

    No, there is no way to unbranch.
    I'll lock this branch and you can answer Ed on your original thread (I'll leave it to you to copy/paste Ed's question in your reply).

  • How to use start and reference trigger on HI-Scope digitizer

    HI,
    I would like to ask about the start and reference trigger with PCI-5124.
    I found an sample VI on the following link, however it doesn't work as I expected.
    http://zone.ni.com/devzone/cda/epd/p/id/2998
    The VI "start_and_reference_trigger.vi" can detect both start and reference trigger in my system and they start data acquisition.
    It starts data acquisition when both start and reference triggers are input.
    However what I would like to do is:
     1. Sampling rate at 200MHz with record length 1500 with one channel.
     2. Receive the start trigger (i.e. 50Hz)
     3. Receive the reference trigger (i.e. 50kHz)
     4. For every reference trigger, I would like to acquire the data, i.e. acquiring 1500 data for each 100 reference trigger (not with the combination with the start trigger)
    Start trigger: _|^|_________________________________________
    Ref   trigger:______|__|__|__|__|__|__|__|__|__|__|__|__|__|__|____
                                       ^    ^    ^    ^   ^   ^   ^   ^    ^    ^   ^    ^    ^   ^  
                                     trigger timings that I would like to acquire
    With the sample VI "start_and...", I found that it acquires when both start and reference trigger comes and the data acquisition is only after the one reference trigger. 
    I hope my explanation is understandable and I can have a solution soon.
    解決済!
    解決策の投稿を見る。

    Hi Tom 1225,
    Thanks for posting on Discussion Forum.  Based on your statement, I guess, what you want PCI-5124 to do is what general bench-top type oscilloscopes do.  To realize that functionality, at the end of each sampling of a record length, PCI-5124 has to rearm its trigger for its next sampling.  The amount of "rearm time" is listed in "trigger" section on 5124 manual, said that the rearm time is 10[us] when TDC is ON and 2[us] when TDC is OFF.  So, we have to keep in mind that, if one waveform of measured signal is shorter than 2[us] (TDC OFF), more than one waveform may fail to kick the trigger, because 5124 still rearming its trigger.     
    I made two samples and attached them on this post.  
    In "Sample SW Timing Trigger.vi", trigger rearm occurs at software timing, when the time NI-Scope Start function is called.  In "Sample HW Timing Trigger.vi", trigger rearm occurs at hardware timing.  As seen on the block diagram, for a hardware timing trigger rearm, the number in "number of records" of horizontal setting function should be equal to the times of the trigger-based measurements.  If you have any question on my sample VIs, feel free to ask.  If my post resolves your problem, please click on the green "解決策に決定" icon on my post.  
    Osamu Fujioka
    Applications Enginner 
    National Instruments Japan
    添付:
    Sample SW Timing Trigger Rearm.vi ‏28 KB
    Sample HW Timing Trigger Rearm.vi ‏31 KB

Maybe you are looking for