Using fifos or indicators / varibles on cRio.

I'm currently working on the classical "remote, non-distributed measurement of voltages using the 9205 module" application. I was just wondering if I need at all to use fifos to transfer data from the fpga to the host computer on the cRio-9004. I did start out using a FIFO which I wrote to in the FPGA vi and then read it in a host vi. However extracting the array of data from the fifo using a for-loop seems to be a bit unstable with the values not always being transferred. I'm also a bit uneasy using buffers for a realtime sampling application when the language is so highlevel. So my question is:
Can I insert all my measurement data into an array and then read from the host VI using either indicators or variables, or will I run into throughput problems ?
I'm planning on using all of the 32 channels (at 16 bits) on the 9205 at a sampling frequency of 50 Hz - 200 Hz, plus some additional inputs.
Thanks,
Kevin

Hi Kevin,
You can achieve throughput rates an order of magnitude faster if you use the DMA FIFO transfer method versus front panel arrays.  You will also have the benefit of DMA FIFOs taking up *significantly* less space on the FPGA than front panel arrays.  Depending on what else your application is doing, you may be able to still do everything you need to through the front panel data transfer, but I highly recommend using the FIFO instead.  If you're worried about data loss, just monitor the Full? output of the FIFO Write function on the FPGA to determine if any data is being lost.
FYI, we have a separate board for cRIO questions - this board is meant for the LabVIEW Embedded Development and LabVIEW Embedded For Blackfin Processors modules.
Cheers,
Matt Pollock
National Instruments

Similar Messages

  • Why use FIFO to read analog signal?

    Why must we use FIFO to obtain analog signal from FPGA? I can use a normal method of calling the FPGA using Read/Write Control and the results in a waveform chart is much more smoother. 

    I've uploaded 2 real-time VIs with and without FIFO. MQ convert is the subVI in my computer. Do have a look at it...
    My waveform chart is done that way so that I can easily export to excel ( i think) but this is a different problem in a different topic http://forums.ni.com/t5/LabVIEW/3-Waveform-Chart-to-a-Single-Excel-but-in-Different-Spreadsheet/m-p/...
    Attachments:
    Real-Time With FIFO.vi ‏397 KB
    Real-Time without FIFO.vi ‏391 KB
    MQ Convert.vi ‏19 KB

  • Agewise Stock Report using FIFO out of 0IC_C03

    Hello,
    I have a requirement where I need to create agewise stock report using FIFO.  I have the stock availability from 0ic_c03.
    Can any one plese tell me how to achieve the FIFO based agewise stock.  I have various age buckets like 0-30 , 30-60, 60-90 etc.
    If the total stock is made up of multiple receipts and I also have few issues, how can I get the balance stock based on FIFO using the GR date.
    I would appreciate your help.
    Regards
    Vasun

    Hi,
    This InfoCube allows you to evaluate stocks from ERP.
    A new feature in this InfoCube is the pre-existing stock key figure Valuated Stock Quantity (0VALSTKQTY) and the associated movement key figures Receipt Quantity Valuated Stock (0RECVALSTCK) and Issue Quantity Valuated Stock (0ISSVALSTCK).
    This is made possible by including the InfoObject indicator Evaluation Special Stock (0INDSPECSTK) in the InfoSource Material Stocks (as of SAP BW 3.1 Content) (2LIS_03_BX). The InfoSource used up until now, Transfer BW: Stock (2LIS_40_S278), did not recognize this InfoObject.
    Note the Remarks on Filling Non-Cumulative InfoCubes.
    The following Basis key figures can be restricted in the query definitions to stock categories (0STOCKCAT), such as project stock, and to stock types (0STOCKTYPE), such as quality inspection:
    ·        Quantity of Valuated Stock (0VALSTCKQTY)
    ·        Receipt Quantity Valuated Stock (0RECVALSTCK)
    ·        Issue Quantity Valuated Stock (0ISSVALSTCK)
    In this way, for example, you can evaluate the quantity of valuated project stock (Q).
    The newly-included Basis key figures are only updated through the InfoSources 2LIS_03_BX and 2LIS_03_BF.
    In this way, none of these Basis key figures can be used in queries that are built up on InfoCubes which were inventory-initialized through InfoSource 2LIS_40_S278. Moreover, the queries 0IC_C03_Q0013 to 0IC_C03_Q0016 cannot be used in the combination of InfoSources 2LIS_40_S278 and 2LIS_03_BF.
    Note the following procedures when filling the InfoCube 0IC_C03 for the first time with non-cumulative data from ERP:
           1.      Create non-cumulatives with the program BW: Initialization of Opening Non-Cumulatives in Transfer Structure (RMCBINIT_BW).
           2.      Initialize the movements/revaluations with the program RMCBNEUB/RMCBNERP.
           3.      Post in the InfoCube using the update method Creation of Non-Cumulatives from the InfoSource 2LIS_03_BX.
           4.      Post in the InfoCube using the update method Initialization of the Delta Process from the InfoSources 2LIS_03_BF and 2LIS_03_UM.
    Refer to SAP Note 0643687 (Compression of Non-Cumulative InfoCubes) regarding the subsequent steps for compression.
           5.      Compression of the request from 2LIS_03_BX with update of the marker.
           6.      Because in this case you are posting movements and revaluations in the InfoCube that occurred before the non-cumulative creation and which lead to this non-cumulative creation, you must execute a compression without updating the marker. For more information, see InfoCubes.
           7.      Thereafter, you can transfer new movements and revaluations to the BW system as usual (for performance reasons, we recommend that you regularly compress with updates of the marker, see also InfoCube Compression).
    Update Logic
    When updating the DataSources 2LIS_03_BX, 2LIS_03_UM and 2LIS_03_BX, the System applies the following logic:
    Characteristic Value Calculation
    In principle, values are updated with Plant, Material, and Stock Category only. Quantities are updated with these characteristics, as well as with Storage Location, Batch Number, and Stock Characteristic (see also SAP Note 589024: Evaluations in BW with the Characteristics Storage Location and Stck Char.).
    Key Figure Value Calculation
    The source field for quantities is the field CPQUABU, and for values it is the field CPPVLC.
    In the update, the InfoSource fields Stock Characteristic and Stock Category control whether "special stock" key figures are updated, such as Quality Stock or Stock in Transit (only relevant for 2LIS_03_BF and 2LIS_03_UM).
    The general key figures (for example, Total Stock), however, can also be restricted in queries to Stock Characteristic and Stock Category, and then deliver the same result (key word: account model versus key figure model).
    The values for Stock Characteristic and Stock Category are dealt with on the extractor side in the LMCB1F20 include (routine STA_VERAENDERUNG).
    The InfoObject 0INDSPECSTK (field KZBWS) also controls whether the sales order stock / project stock is valuated or non-valuated.
    The system valuates the transaction key to decide whether the issue movement key figure or receipt movement key figure is updated. For more information, see SAP Note 492828: Determining the transaction key for 2LIS_03_BF + 2LIS_03_UM.
    InfoSources
    This InfoCube is based on the following InfoSources:
    ·        2LIS_03_BX
    ·        2LIS_03_BF
    ·        2LIS_03_UM
    Characteristics
    InfoObject
    Description
    0MATERIAL
    Material
    0PLANT
    Plant
    0STOR_LOC
    Storage Location
    0BATCH
    Batch Number
    0STOCKTYPE
    Stock Type
    0STOCKCAT
    Stock Categories
    0GN_VENDOR
    Vendor
    Time Characteristics
    InfoObject
    Description
    0CALDAY
    Calendar Day
    0CALMONTH
    Calendar Year/Month
    0CALWEEK
    Calendar Year/Week
    0CALYEAR
    Calendar Year
    Key Figures
    InfoObject
    Description
    0RECVS_VAL
    Value Received - Valuated Stock
    0VALSTCKVAL
    Value - Valuated Stock
    0ISSVS_VAL
    Value Issued - Valuated Stock
    0ISSBLOSTCK
    Issue Quantity - Blocked Stock
    0ISSCNSSTCK
    Issue Quantity - Consignment Stock
    0ISSQMSTCK
    Issue Quantity - Inspection Stock
    0ISSTRANSST
    Issue Quantity - Stock in Transit
    0RECBLOSTCK
    Receipt Quantity - Blocked Stock
    0RECCNSSTCK
    Receipt Quantity - Consignment Stock
    0RECQMSTCK
    Receipt Quantity - Inspection Stock
    0RECTRANSST
    Receipt Quantity - Stock in Transit
    0QMSTOCK
    Inspection Stock
    0BLOCKEDSTK
    Blocked Stock
    0CNSSTCKQTY
    Quantity - Consignment Stock
    0TRANSSTOCK
    Stock in Transit
    0ISSSCRP
    Issue Quantity - Scrap
    0ISSVALSCRP
    Issue Value - Scrap
    0RECTOTSTCK
    Receipt Quantity - Total Stock
    0ISSTOTSTCK
    Issue Quantity - Total Stock
    0TOTALSTCK
    Quantity - Total Stock
    0ISSVALSTCK
    Issue Quantity - Valuated Stock
    0RECVALSTCK
    Receipt Quantity - Valuated Stock
    0VALSTCKQTY
    Quantity - Valuated Stock
    0VENCONCON
    Consumption Value - Vendor Consignment Stock
    Units
    InfoObject
    Description
    0LOC_CURRCY
    Local Currency
    0BASE_UOM
    Base Un
    Regards,
    Hareesh

  • Why I am unable to read/write thermocouple data using FIFO

    I like get data using 9213 module. I used example VI for this. And to get the data according to my desired samling rate, I used FIFO.
    The problem is, if I use FIFO, I do not get any data when run the real time VI.
    But, if I like to get data using cluster, then it is OK.
    Also, can you tell me why the error comes when I use FIFO and run the program?
    My sampling desired rate is 1200 sample/sec. I like to acquire data for 30 seconds after the trigger.
    Attachments:
    Error_50400.jpg ‏34 KB
    FPGA.jpg ‏201 KB
    realtime_temp.jpg ‏249 KB

    Good Afternoon,
    I would suggest lowering the number of elements into the invoke node in your real time VI.  You only need the number fo samples times the sampling rate for the number of elements input.  Hope this helps!
    -Cody C

  • PCI-4451 Analog Output using FIFO allocation mode

    I'm using a PCI-4451 DSA device to generate a short length (<50 updates) repeating pulse train. I want to write directly to the 4451's onboard FIFO so that I only have to transfer data to the device once and let the 4451 continuously regenerate the pulse train on its own. Using the the AOCONFIG.vi I set the allocation mode to "6" (use FIFO Memory). But when I write to the buffer, and then call AOSTART.vi, I get no output. Sometimes my system simply crashes. In either case, I get no LabVIEW generated errors when I set the allocation mode to "use FIFO memory." According to my 4451 documentation, I do have an AO FIFO, so it should be working. What could be going wrong?

    Thanks for your response,
    I used the VI you linked to and the non-FIFO mode AO works fine. In FIFO mode, it does end up generating an output, but it only iterates through the buffer once, no matter what the input to "number of buffer iterations" is on AOSTART.vi. I want it to regenerate indefinitely, but wiring "0" to "number of buffer iterations" and allowing regeneration on AOWRITE.vi doesn't make it do that. Could this be caused by a driver problem?
    Also, I figured out that if I run a non-FIFO mode AO, stop the VI (I allow AOCLEAR.vi to execute), and then switch to a FIFO mode AO without first shutting down LabVIEW, my system locks up. It's not enough to just close the VI and reopen it to get FIFO mode to run again without locking up; I
    actually have to exit and restart LabVIEW. Running a FIFO mode AO first and then runnning a non-FIFO mode AO causes no problems. I'm using Win2k professional and LabVIEW 7.

  • Bank Statement using FIFO method

    Hi all,
    Thanks in advance for your possible help. I am facing the following issue.
    All debit and credit entries on a customers account have to be cleared automatically on the bank statement according to FIFO procedure, that is credit entries on a customers account will be cleared against the oldest open invoice. The open items will be automatically matched by the system based on available credit.
    Does anyone have had a similar issue? I have already check OSS notes but no answer found.
    Thanks

    Hi R. Benavides,
    I have the same business requirement.  I was initially looking to use a developed interpretation algorithm (see SAP Note 597428) or directly coding the logic within the bank user exit FEB00001 (SMOD).   However, I have discovered that as the electronic bank statement effectively uses F-28; it should be possible to populate the "distribute age" field (RF05A-XFIFO) with "X" using Search strings (that I am using to find Customer numbers).
    If you are not using the bank statement search string functionality, you should also be able to populate, FEBEP-FNAM1 with RF05A-XFIFO and FEBEP-FVAL1 with X using the bank user exit FEB00001
    Cheers
    Jayson Dahya
    HP NZ

  • Difference between using source track indicators & track headers?

    So far I read the adobe help &amp; premiere pro classroom in a book about targeting tracks with source track indicators &amp; track headers. But I don't understand the difference between them, they sound like they do the same thing. Just looking for a simpler explanation, thanks.

    They serve different but interrelated functions.
    Track targeting affects which tracks in the sequence are 'used' for various functions, like Insert and Overlay, Copy/Paste, Next Edit shortcuts, etc.
    Source routing has a more limited function in that it defines which tracks Insert and Overlay write to, but must be used in combination with track targeting.
    For example to Insert video onto V2, you must both route the source to V2 as well as target V2.  If you do only one, it doesn't work.
    Things have changed a bit and simplified with the new version about to be released.

  • Can XFCE4 Use Ubuntu-Like Indicators?

    If anyone has used any of the latest *buntu's, then they would know about the indicators that are available. There is the unified volume control/media player sound indicator, a unified messaging menu with all of the messaging application alerts, etc. It's a bit hard to do describe... So, here are some screenshots from my grandparent's Ubuntu install:
    Volume:
    Messaging http://i.imgur.com/V2Fbf.png
    There are a few other nice ones as well.
    I am using XFCE4 as my desktop environment. I have never used Xubuntu, but I've seen videos/screenshots of this being used in Xubuntu. How can I get these indicators into my XFCE install? I currently only have XFCE installed (no GNOME, no KDE, etc.)
    -- mod edit: read the Forum Etiquette and only post thumbnails http://wiki.archlinux.org/index.php/For … s_and_Code [jwr] --

    xfce4-indicator-plugin is available in AUR, which is the placeholder applet for indicators. indicator-sound-gtk2 and indicator-application-gtk2 are supported. The Messaging menu is no longer available, because upstream dropped support for GTK+ 2.

  • Using aliases for indicators, controls, procedures and calculated channels

    Hello,
    I noticed that aliases do not show up in the workspace for indicators and controls, and in the system explorer for procedures and calculated channels. Is there a way for them to show up? I need to use aliases because I would like my system definition to control multiple test systems (which have different CAN signal names). Otherwise my system definition would break whenever I switch to a different CAN database. I thought the inability to address aliases was limited to the right click configurable controls add on, but it looks like VeriStand natively cannot address them in the areas that I'd like as well. Any recommendations would be welcome.
    Thanks.
    Solved!
    Go to Solution.

    You are correct that you cannot use Aliases within a System Definition file for mapping purposes. This is an area that we hope to improve in the future. The initial design of aliases was to serve as a public interface for the Workspace, stimulus profiles, and so on. However, it is certainly a valid use case to want to use them as an interface within a System Definition.
    One possible workaround would be to create a set of User Channels that act as your public interface in your System Definition. Always use your User Channels in all procedures, calculated channels, and so on. Then map your CAN channels to these User Channels. Whenever you update your CAN database, you only need to remap the new CAN channels to the appropriate User Channel. You could also automate this activity by importing a tab-delimited file in the Mappings page. The one downside here is that your target will take a little extra time to process these mappings.
    Jarrod S.
    National Instruments

  • How to use plot command of Matlab in cRIO equipment?

    Hello,
    I am testing an equipment and collecting some data using NI cRIO-9022. I run the program in scan engine model. However, When I try to plot the data, it told me that the command can not be used here. But I still want to watch the figure in Matlab. Do you have some good idea to solve this problem?

    Thanks, but it still doesn't work, because Matlab script node is not supported in the target. We have to think another solution.

  • Collect Data using FIfO functions

    Hi,
    I would lke to collect data from my Single Analog input in a table to create a Waveform after, For that I used FOs functions
    Here is my code
    If Someone has a idea. Please help cause t see how to put my data in a table in order to create a Waveform
    Thank you in advance for your responses
    My kind Regards
    Solved!
    Go to Solution.

    Something like this...
    There are only two ways to tell somebody thanks: Kudos and Marked Solutions
    Unofficial Forum Rules and Guidelines
    Attachments:
    Build Waveform with Timed Loop.png ‏39 KB

  • Using FIFO as sql code for assigning indicator to data items

    Hi All,
    We are looking for a solution based on FIFO algorithm. We have a table having following data:
    We need to perform FIFO on this table, and assign "object" as data items to other rows based on following conditions:
    1. first we have to group the rows based on "object" column
    2. then we have to traverse each group from the row having  minimum start time of the object group e.g: row id 1 for object group for "19O"
    2.1 Assign a "EqpREf" as "object" + <an integer value> , where integer value changes when the start and end chain finishes. Start -end chain is explained in step 2.2
    2.2 then we have to pick the "nextstarttime" of the picked row and compare it against the closest "starttime" of the rows having "start" as same as "end" of the same row we are
    picking for "nextstarttime" e.g: row id 2 of object 19O is having "nextstarttime" 0310 closest to "starttime" 0355 of row id 2 of object 19O , and rowid 2 is having "start" AAL which is similar to "end" of
    rowid 1 
    2.3 We have to perform this chain till we find end of same and allocate each row in a chain same "Eqpref"
    hence the output we need to generate will come as:
    Kindly help on same.
    Thanks in advance
    -Regards
    Kumud

    Hi,
    Please find the following code block for what is input data and what should be output.
    --The input data
    create table temp_table
    row_id int,
    engine_no varchar(20),
    schedule_no varchar(20),
    start_station varchar(20),
    end_station varchar(20),
    startdate datetime,
    enddate datetime,
    starttime datetime,
    endtime datetime,
    record_id int,
    engine_id int,
    Mgt int,
    nextstarttime datetime,
    Schedule_ref varchar(20),
    Engine_Ref varchar(20)
    GO
    insert into temp_table values(1,'19O','101','SGC','IXP','2015/01/01','2015/01/01','00:00:00','01:00:00',1,10,60,'02:00:00',null,null)
    insert into temp_table values(2,'19O','102','SGC','IXP','2015/01/01','2015/01/01','00:30:00','01:30:00',2,10,60,'02:30:00',null,null)
    insert into temp_table values(3,'19O','103','SGC','IXP','2015/01/01','2015/01/01','02:30:00','03:30:00',3,10,60,'04:30:00',null,null)
    insert into temp_table values(4,'19O','104','IXP','DFW','2015/01/01','2015/01/01','03:30:00','04:00:00',4,10,60,'05:00:00',null,null)
    insert into temp_table values(5,'19O','105','IXP','DFW','2015/01/01','2015/01/01','04:30:00','05:30:00',5,10,60,'06:30:00',null,null)
    insert into temp_table values(6,'19O','106','DFW','ABC','2015/01/01','2015/01/01','05:00:00','06:00:00',6,10,60,'07:00:00',null,null)
    insert into temp_table values(7,'19O','107','DFW','ABC','2015/01/01','2015/01/01','06:00:00','07:00:00',7,10,60,'08:00:00',null,null)
    insert into temp_table values(8,'19O','108','DFW','ABC','2015/01/01','2015/01/01','07:00:00','08:00:00',8,10,60,'09:00:00',null,null)
    insert into temp_table values(9,'19O','109','ABC','DEF','2015/01/01','2015/01/01','10:00:00','11:30:00',9,10,60,'12:30:00',null,null)
    insert into temp_table values(10,'19O','110','XYZ','BDW','2015/01/01','2015/01/01','13:00:00','15:00:00',10,10,60,'16:00:00',null,null)
    insert into temp_table values(1,'319','111','PQR','STU','2015/01/01','2015/01/01','00:00:00','01:00:00',11,11,60,'02:00:00',null,null)
    insert into temp_table values(2,'319','211','PQR','STU','2015/01/01','2015/01/01','04:30:00','15:30:00',12,11,60,'16:30:00',null,null)
    insert into temp_table values(3,'319','112','STU','ABC','2015/01/01','2015/01/01','05:00:00','06:00:00',13,11,60,'07:00:00',null,null)
    insert into temp_table values(4,'319','212','STU','DEF','2015/01/01','2015/01/01','06:00:00','07:00:00',14,11,60,'08:00:00',null,null)
    insert into temp_table values(5,'319','213','STU','PQR','2015/01/01','2015/01/01','07:00:00','08:00:00',15,11,60,'09:00:00',null,null)
    insert into temp_table values(6,'319','118','STU','XYZ','2015/01/01','2015/01/01','10:00:00','11:30:00',16,11,60,'12:30:00',null,null)
    insert into temp_table values(7,'319','119','DEF','JKL','2015/01/01','2015/01/01','13:00:00','15:00:00',17,11,60,'16:00:00',null,null)
    insert into temp_table values(8,'319','215','ABC','MNO','2015/01/01','2015/01/01','17:00:00','20:00:00',18,11,60,'21:00:00',null,null)
    insert into temp_table values(1,'19O','101','SGC','IXP','2015/01/01','2015/01/01','00:00:00','01:00:00',1,10,60,'02:00:00',null,null)
    insert into temp_table values(2,'19O','102','SGC','IXP','2015/01/01','2015/01/01','00:30:00','01:30:00',2,10,60,'02:30:00',null,null)
    insert into temp_table values(3,'19O','103','SGC','IXP','2015/01/01','2015/01/01','02:30:00','03:30:00',3,10,60,'04:30:00',null,null)
    insert into temp_table values(4,'19O','104','IXP','DFW','2015/01/01','2015/01/01','03:30:00','04:00:00',4,10,60,'05:00:00',null,null)
    insert into temp_table values(5,'19O','105','IXP','DFW','2015/01/01','2015/01/01','04:30:00','05:30:00',5,10,60,'06:30:00',null,null)
    insert into temp_table values(6,'19O','106','DFW','ABC','2015/01/01','2015/01/01','05:00:00','06:00:00',6,10,60,'07:00:00',null,null)
    insert into temp_table values(8,'19O','108','DFW','ABC','2015/01/01','2015/01/01','07:00:00','08:00:00',8,10,60,'09:00:00',null,null)
    insert into temp_table values(9,'19O','109','ABC','DEF','2015/01/01','2015/01/01','10:00:00','11:30:00',9,10,60,'12:30:00',null,null)
    insert into temp_table values(1,'319','111','PQR','STU','2015/01/01','2015/01/01','00:00:00','01:00:00',11,11,60,'02:00:00',null,null)
    insert into temp_table values(2,'319','211','PQR','STU','2015/01/01','2015/01/01','04:30:00','15:30:00',12,11,60,'16:30:00',null,null)
    insert into temp_table values(3,'319','112','STU','ABC','2015/01/01','2015/01/01','05:00:00','06:00:00',13,11,60,'07:00:00',null,null)
    insert into temp_table values(4,'319','212','STU','DEF','2015/01/01','2015/01/01','06:00:00','07:00:00',14,11,60,'08:00:00',null,null)
    insert into temp_table values(5,'319','213','STU','PQR','2015/01/01','2015/01/01','07:00:00','08:00:00',15,11,60,'09:00:00',null,null)
    insert into temp_table values(6,'319','118','STU','XYZ','2015/01/01','2015/01/01','10:00:00','11:30:00',16,11,60,'12:30:00',null,null)
    insert into temp_table values(7,'319','119','DEF','JKL','2015/01/01','2015/01/01','13:00:00','15:00:00',17,11,60,'16:00:00',null,null)
    insert into temp_table values(8,'319','215','ABC','MNO','2015/01/01','2015/01/01','17:00:00','20:00:00',18,11,60,'21:00:00',null,null)
    --output should come as the data in temp_table_final
    create table temp_table_final
    row_id int,
    engine_no varchar(20),
    schedule_no varchar(20),
    start_station varchar(20),
    end_station varchar(20),
    startdate datetime,
    enddate datetime,
    starttime datetime,
    endtime datetime,
    record_id int,
    engine_id int,
    Mgt int,
    nextstarttime datetime,
    Schedule_ref varchar(20),
    Engine_Ref varchar(20)
    GO
    insert into temp_table_final values(1,'19O','101','SGC','IXP','2015/01/01','2015/01/01','00:00:00','01:00:00',1,10,60,'02:00:00','101','19O-1')
    insert into temp_table_final values(2,'19O','102','SGC','IXP','2015/01/01','2015/01/01','00:30:00','01:30:00',2,10,60,'02:30:00','102','19O-2')
    insert into temp_table_final values(3,'19O','103','SGC','IXP','2015/01/01','2015/01/01','02:30:00','03:30:00',3,10,60,'04:30:00','103','19O-3')
    insert into temp_table_final values(4,'19O','104','IXP','DFW','2015/01/01','2015/01/01','03:30:00','04:00:00',4,10,60,'05:00:00','101','19O-1')
    insert into temp_table_final values(5,'19O','105','IXP','DFW','2015/01/01','2015/01/01','04:30:00','05:30:00',5,10,60,'06:30:00','102','19O-2')
    insert into temp_table_final values(6,'19O','106','DFW','ABC','2015/01/01','2015/01/01','05:00:00','06:00:00',6,10,60,'07:00:00','104','19O-1')
    insert into temp_table_final values(7,'19O','107','DFW','ABC','2015/01/01','2015/01/01','06:00:00','07:00:00',7,10,60,'08:00:00','107','19O-4')
    insert into temp_table_final values(8,'19O','108','DFW','ABC','2015/01/01','2015/01/01','07:00:00','08:00:00',8,10,60,'09:00:00','105','19O-2')
    insert into temp_table_final values(9,'19O','109','ABC','DEF','2015/01/01','2015/01/01','10:00:00','11:30:00',9,10,60,'12:30:00','106','19O-1')
    insert into temp_table_final values(10,'19O','110','XYZ','BDW','2015/01/01','2015/01/01','13:00:00','15:00:00',10,10,60,'16:00:00','110','19O-5')
    insert into temp_table_final values(1,'319','111','PQR','STU','2015/01/01','2015/01/01','00:00:00','01:00:00',11,11,60,'02:00:00','111','319-1')
    insert into temp_table_final values(2,'319','211','PQR','STU','2015/01/01','2015/01/01','04:30:00','15:30:00',12,11,60,'16:30:00','211','319-2')
    insert into temp_table_final values(3,'319','112','STU','ABC','2015/01/01','2015/01/01','05:00:00','06:00:00',13,11,60,'07:00:00','111','319-1')
    insert into temp_table_final values(4,'319','212','STU','DEF','2015/01/01','2015/01/01','06:00:00','07:00:00',14,11,60,'08:00:00','212','319-3')
    insert into temp_table_final values(5,'319','213','STU','PQR','2015/01/01','2015/01/01','07:00:00','08:00:00',15,11,60,'09:00:00','213','319-4')
    insert into temp_table_final values(6,'319','118','STU','XYZ','2015/01/01','2015/01/01','10:00:00','11:30:00',16,11,60,'12:30:00','118','319-5')
    insert into temp_table_final values(7,'319','119','DEF','JKL','2015/01/01','2015/01/01','13:00:00','15:00:00',17,11,60,'16:00:00','212','319-3')
    insert into temp_table_final values(8,'319','215','ABC','MNO','2015/01/01','2015/01/01','17:00:00','20:00:00',18,11,60,'21:00:00','112','319-1')
    insert into temp_table_final values(1,'19O','101','SGC','IXP','2015/01/01','2015/01/01','00:00:00','01:00:00',1,10,60,'02:00:00','101','19O-1')
    insert into temp_table_final values(2,'19O','102','SGC','IXP','2015/01/01','2015/01/01','00:30:00','01:30:00',2,10,60,'02:30:00','102','19O-2')
    insert into temp_table_final values(3,'19O','103','SGC','IXP','2015/01/01','2015/01/01','02:30:00','03:30:00',3,10,60,'04:30:00','103','19O-3')
    insert into temp_table_final values(4,'19O','104','IXP','DFW','2015/01/01','2015/01/01','03:30:00','04:00:00',4,10,60,'05:00:00','101','19O-1')
    insert into temp_table_final values(5,'19O','105','IXP','DFW','2015/01/01','2015/01/01','04:30:00','05:30:00',5,10,60,'06:30:00','102','19O-2')
    insert into temp_table_final values(6,'19O','106','DFW','ABC','2015/01/01','2015/01/01','05:00:00','06:00:00',6,10,60,'07:00:00','104','19O-1')
    insert into temp_table_final values(8,'19O','108','DFW','ABC','2015/01/01','2015/01/01','07:00:00','08:00:00',8,10,60,'09:00:00','105','19O-2')
    insert into temp_table_final values(9,'19O','109','ABC','DEF','2015/01/01','2015/01/01','10:00:00','11:30:00',9,10,60,'12:30:00','106','19O-1')
    insert into temp_table_final values(1,'319','111','PQR','STU','2015/01/01','2015/01/01','00:00:00','01:00:00',11,11,60,'02:00:00','111','319-1')
    insert into temp_table_final values(2,'319','211','PQR','STU','2015/01/01','2015/01/01','04:30:00','15:30:00',12,11,60,'16:30:00','211','319-2')
    insert into temp_table_final values(3,'319','112','STU','ABC','2015/01/01','2015/01/01','05:00:00','06:00:00',13,11,60,'07:00:00','111','319-1')
    insert into temp_table_final values(4,'319','212','STU','DEF','2015/01/01','2015/01/01','06:00:00','07:00:00',14,11,60,'08:00:00','212','319-3')
    insert into temp_table_final values(5,'319','213','STU','PQR','2015/01/01','2015/01/01','07:00:00','08:00:00',15,11,60,'09:00:00','213','319-4')
    insert into temp_table_final values(6,'319','118','STU','XYZ','2015/01/01','2015/01/01','10:00:00','11:30:00',16,11,60,'12:30:00','118','319-5')
    insert into temp_table_final values(7,'319','119','DEF','JKL','2015/01/01','2015/01/01','13:00:00','15:00:00',17,11,60,'16:00:00','212','319-3')
    insert into temp_table_final values(8,'319','215','ABC','MNO','2015/01/01','2015/01/01','17:00:00','20:00:00',18,11,60,'21:00:00','112','319-1')
    What we are doing here is generating a schedule for Trains departures.
    here, we should identify the train schedules making a chain of stations considering the endstation of a train engine no should be startstation of another record for same engineno. also the starttime of engineno should be nearest of nextstarttime
    of same station. 
    for example : if we pick Ist row "SGC-IXP", nextstarttime for same is "02:00:00 am". this means train departed from SGC will reach to IXP and is available for departure from IXP after "02:00:00 am". So we have to consider
    the record having startstation as IXP and nearest starttime to nextstarttime ("02:00:00"). So the next train departure would be IXP-DFW having starttime as "03:30:00 am".
    here you can see we have to assign the scheduleno of previously considered record to the chained schedule so we have updated the "schedule_ref" as 101. Also we have to assign the engine no - <counter of integer> to a single chain on schedule
    given in engine_ref.
    Regards
    Kumud

  • How to Set multiple Global Variables without using Controls or Indicators

    I have to set many Global Variables (i.e. declare and initialize them) in a subVI in order to pass them to various other subVI's. The only way I know how to do it in LabView is to create a Globals.vi on which you create a control or indicator for EACH Global Variable. That's fine if you have only a few variables. But I have close to a hundred Global Variables (which come from a configuration file for a large program) and clearly it is impractical and cumbersome to create a control for each global variable. In Agilent Vee, there is a simple function called "Set Variable" that sets the data value of a global variable. Then in other module, you simply use the "Get Variable" function to get back the v
    ariable and its value.
    In LabView you can use the "Invoke Node / Set Control Value" and "Get Control Value" properties to achieve the same thing. But as mentioned above, you need to create a control for each global variable and that is a big pain in my case, with many global variables. Furthermore, the global variables are read from a Configuration Text File to this VI. Is there a way to do it without using the control? Thank you in advance for any help.

    Actually you could create the same sort of facility in LV. All you have to do is create a LV2-style global that behaves as follows:
    To write a value to it, you supply a value name and the value. These pieces of data are save internally in seperate arrays.
    To read a value, you supply a value name. The VI looks up this name in the value name array to return an index into the value array. Output the value you find.
    Frankly though, it sounds like what you really need is not hundreds of globals, but a good way to manage configuration data.
    Mike...
    Certified Professional Instructor
    Certified LabVIEW Architect
    LabVIEW Champion
    "... after all, He's not a tame lion..."
    Be thinking ahead and mark your dance card for NI Week 2015 now: TS 6139 - Object Oriented First Steps

  • HP7500A printer use of visual indicators below the touch panel

    There are visual indicators named 'print' 'fax' 'scan' 'copy' 'web'. below the touch panel of my HP7500A multi function printer. 
    Initially I was thinking that these are touch buttons for quick access; however there is no functioning when I press them.
    What is the function of these buttons or only for aesthetitcs reasons?
    Regards,
    Kero Mero
    This question was solved.
    View Solution.

    Hello KeroMero,
    The words "'print' 'fax' 'scan' 'copy' 'web' " describes the functions performed by the printer. 
    They are not Buttons.
    Touch screen display is the only place to interact with the printer. 
    Regards,
    Jabzi
    Help the community by marking this post .
    Was your question answered? Mark it as an Accepted Solution!
    See a great post? Give it a Kudos!
    I work for HP
    Regards,
    Jabzi
    Give Kudos to say "thanks" by clicking on the "thumps Up icon" .
    Click "Accept as Solution" if it solved your problem, so others can find it.
    Although I am an HP employee, I am speaking for myself and not for HP.

  • How can I use a USB camera with cRIO 9022. Please see my strange problem.

    Hi,
            I would like to use a USB camera with NI cRIO 9022. I used the same USB camera with NI USB 6216 DAQ device and developed a VI(within a PROJECT and outside it). So, It is working fine with NI USB 6216 device when I use the Vision Assistant Express VI and gets detected in its Initialization Window.  Please see JPEG File 3 where I get NO ERROR.
            I am facing a problem when I want to use it with NI cRIO 9022. What exactly I am doing in this case is:
    1) Create a NEW PROJECT
    2) Add Targets and Devices(NI cRIO 9022)
    3) Use the Scan Interface mode
    4) Create a NEW VI under the cRIO 9022 device 
    5) Use a Timed Loop(Synchronized with Scan Engine) for continuous Data Acquisition and Sending from the Analog I/O modules.
    6) Use the Vision Assistant available through the NI Vision Acquisition 2010 Module(I get STUCK HERE! The Express VI opens the Initialization Window, but I don't see the USB camera like in JPEG File 3)
    I am facing difficulties with this HOST COMPUTER, cRIO implementation differences. On my host computer I have the software packages as shown in JPEG File 1, and on my cRIO 9022 as shown in JPEG File 2.
    Can someone guide me how to overcome this and get the USB camera detected when I am using NI cRIO 9022?
    NOTE: If this is a problem with software mismatches on HOST and NI cRIO 9022 device, please see JPEG Files 1 and 2 for available software and Host and cRIO 9022.
    Thanks.
    Amar.
    Attachments:
    NI Vision Acquisition Express Error for NI cRIO 9022.JPG ‏39 KB
    IMAQ and dx Modules Installed on my NI cRIO 9022 hardware(No NI Vision Acquisition 2010 SP1).JPG ‏82 KB
    NI Vision Acquisition Express NO Error for NI cRIO 9022.JPG ‏48 KB

    Only GigE comms are supported on the cRIO Real Time OS. Have a look at the following:
    Machine Vision on NI CompactRIO and Single-Board RIO
    Adnan Zafar
    Certified LabVIEW Architect
    Coleman Technologies

Maybe you are looking for

  • Can't open .pmd file in Mac Indesign CS4

    I am using Indesign CS4 in Mac OS X 10.6.2.  I have done all the latest updates to Indesign. I was trying to open and old .pmd Page Maker file that was created in a Windows version of Page Maker.  I am not sure what version they were saved in.  The f

  • Designing simple sales report

    I am trying to create a Sales report from two tables: PRODUCT table and ORDER DETAILS table. The Order Details table has the following fields: Order ID, Product ID, Unit Price and Quantity. The Order ID field is a primary key in another table called

  • Save FrameMaker Book as PDF - Files with different page sizes

    I've created a book with 2 files - the pages in the first file are 8.5 x 11, the pages in the second file are 8.5 x 14. How can I save the book as a PDF but keep both page sizes? Right now if I change the page size in the PDF settings dialog, it chan

  • Custom Event Issue

    Hope you flex geniuses can help me on this one.... the issue: an action script custom event is being dispatched by one object but is not being "heard" by it's parent despite the fact that a) the child object uses the [event] declaration in it's class

  • Disabling a CSS rule in the Page Inspector deletes it

    I have been using the Firefox Page Inspector lately to see how it compares to Firebug. I noticed that if you disable a CSS rule by unchecking the checkbox next to it, it is still shown in the inspector, so you can check the box again and reenable it.