Data acquisition on the basis of time

       Hi everyone,
I want to acquire the radial run-out (radial small displacement) of a rotating spindle using a capacitive sensor. To do so I will use the LabView v. 7.1. The PCI-6036E card from National Instruments (NI) will be utilized for data acquisition. The spindle turns at 100 rpm and a rotational incremental encoder is fixed at rear of spindle. This encoder provides an index digital pulse per revolution. This pulse should be used to start and finish the sampling process. I want to sample on the basis of time, by means of sampling rate of the card (Ksamples/s). So, let us suppose that I want to acquire 500 data/rev. The spindle takes 0.6 sec to complete one revolution. Thus, the required sampling rate is Fs = 500 samples/0.6 s = 833 samples/s. So, I should set the VI in LabView so that it samples only 833 data/s. Therefore, I will have to reduce the sampling rate of the analog-input channels in use. For example, let us suppose that the card provides 100 Ks/s when operating in multiple channels. Let us admit that there are 4 analog-input channels in use. So, the scan rate per channel is 25 Ks/s. This is too much for this application. I only need 833 samples/s. So, I should program the VI so that the card provides that required sample rate. As said earlier, I need to start and end the sampling process at the same point. Thus, to do that the index pulse of the encoder will be used. Also, I want to sample during 5 consecutive revolutions of the spindle. So, by means of a loop in VI, I should count the index pulse of encoder until the number of pulses be equal to 5 (= number of revolutions). At this instant, the sampling process should be stopped. Note: 1) the sampled data should be put in a buffer. After the sampling process is finished, this data should be saved in a file of LabView; 2) In fact, the data acquired by the sensor are voltage analog input. Questions:1) Could you make a VI for this problem, please? Note: you can use the DAQ ASSISTANT EXPRESS VI or DAQmx TASK NAME CONTROL method2) What should I do to stop the data acquisition at the end of 5 revolutions using the index pulse of encoder?3) Could you send examples (VIs) similar to my problem above? In anticipation, thank you very much for any help. My e-mail: [email protected]                                                                                      
 Bruce  

duplicate post
Continue in other thread
Message Edited by smercurio_fc on 11-14-2008 09:10 AM

Similar Messages

  • Data type of the base attribute or the base value does not match...

    ...the assigned expression.
    Hello all,
    I always get the Error
    +<ERROR+
    TEXT="'DWH.CUB_REGISTRATIONS_AW.REGISTRATIONS': XOQ-02517: Der Datentyp des Basisattributs oder der Basisgröße stimmt nicht mit dem zugeordneten Ausdruck überein.
    XOQ-01400: Ungültige Metadatenobjekte"/>
    The English message must be something like this:
    The data type of the base attribute or the base value does not match the assigned expression.
    when I run my mapping. The attribute REGISTRATIONS is NUMERIC (12,2) in the Cube and I map a NUMERIC(12,2) constant in it.
    I use a simple OWB-Mapping for loading, but I don't understand why it doesn't function. Other mappings where the attributes are out of a
    table I put in a cube are running well.
    I tried different things, but nothing fixed my problem. Any idea ?
    Thanks a lot for help
    Michael

    Technically this is a 'warning' from the server, not an 'error'. This means that the change you made should have been submitted, but you get an warning message on the client. AWM would suppress this warning, but evidently OWB does not. Can you switch to use AWM?
    Here is the definition of the warning along with 'cause' and 'action' sections. (Unfortunately these sections are not translated into German for some reason.)
    >
    02517, 0, "The data type \"%(1)s\" of the base attribute or base measure is different from the mapped expression \"%(2)s\"."
    // *Cause: Either the base attribute or base measure with the mapped expression was set to an inconsistent data type, or it was mapped to an expression of a different data type from its fixed data type.
    // *Action: When changing a mapped expression for a base attribute or base measure, ensure that the expression has the same data type; otherwise, set the data type of the base attribute or base measure to NULL first. When a base attribute or a base measure has an existing mapped expression, do not set it to a different data type.
    >
    It is probably safe to ignore this warning, but if you can post the relevant XML for the cube, then will probably be able to spot the problem. I assume that REGISTRATIONS is a measure in the cube CUB_REGISTRATIONS_AW, so this is what you can look for in the XML:
    (1) The definition of the base measure along with the datatype. It should be something like this
    <Measure>
      <BaseMeasure
        SQLDataType="NUMBER(12,2)"
        ETMeasureColumnName="REGISTRATIONS"
        Name="REGISTRATIONS">(2) The mapping info for the measure, which should looks something like this:
    <MeasureMap
      Name="REGISTRATIONS"
      Expression="...">
      <Measure Name="REGISTRATIONS"/>
    </MeasureMap>I don't know if you can get the XML directly from OWB. If not, then DBMS_CUBE.EXPORT_XML should work (assuming you are in 11.2). You could also attach AWM and save the cube to an XML template.

  • How to know the User name and date, who executed the report last time.

    Hi All,
    We are collecting a list of reports which are not executed for past 3 months. Can anybody tell me how to know the username and date they executed the report last time.
    Is there any table to look ? or is there any process ?
    Thanks,
    Ravi.

    Ravi,
    Use SE16 - then look at rszcompdir.
    We look up Version = 13 for queries.
    Regards
    Gill

  • WIP should charge the resosorce on the basis of Time taken to complete job

    Hi,
    I would like to know how:
    WIP should charge the resosorce on the basis of Time taken to complete a job.
    the facility what we have in WIP is to change the unit of resource and then the costing will take place.
    I will clarify with the help of an example.
    Let a job requires 1 hour to complete but it has taken 1 1/2 (90 minutes) hours to complete. the WIP value summary shows the Cost based upon the standard hours required and not on the actual hours taken to complete the job.
    Please provide suggestions
    Regards
    S

    Sounds like you are autocharging labor but you don't want to. The only way to do what you want is to use a charge type of manual on the resource. This can cause other issues so make sure you test fully. For example in an average cost environment the manual resource transaction must occur before the completion transaction or the cost goes to variance.

  • Data acquisition with highly accurate GPS time stamping (hh:mm:ss:sss UT)

    A research group has developed a data acquisition system dedicated to daily observations of solar phenomena at radio waves using high time resolution (5-100 ms).
    First, the analog signal from the antenna (1000-2500 MHz) is sent to a spectrum analyzer (HP8559-A). After that, the analog signal is digitized during 5 minutes in a NI USB-6009 device connected to the PC, before to be stored in a file. By that time, other acquisition data cycle is restarted and so on up to the end of day.
    However, we need timestamp (UTC) the solar data at the beginning and end of each sample of 5 milliseconds, during all acquisition process, in order to have the UTC time information of recorded solar events. So, a time resolution of at least 1 ms is required.
    A software permit us to read recorded data and visualize corresponding spectra during last 5 minutes. However, we need UTC time information in the format hh:mm:ss.sss UT. Then, UTC millisecond is important for us, but not available yet.
    To solve this problem, we are searching for a high accuracy timing GPS receiver (on the order of microseconds or nanoseconds), with at least three significant digits of precision (UT time in milliseconds) and which give us the UTC signal at least each 5 milliseconds or even better (1 ms). However, most GPS receivers only outputs 1 PPS (Pulse Per Second = 1000 millisecond).
    Then, we are open to a better addressing on how to solve this problem !!
    We know that GPS time synchronization with PXI-6608 can be used to precisely timestamp data acquisition, but we have to solve this problem with a lower cost. Also, we require a PCI interfacing instead of PXI.
    Do we have to use a timer card? How do we use a timer, GPS and USB-6009 to timestamp data acquisition? Does the NI PCI-6602 solve the problem?
    Obs:
    The data acquisition software was developed in C++ Builder to run on a PC (Pentium III 2 GHz) under Windows XP environment. We used the NI-DAQmxBase driver to sample the signal from the NI USB-6009.
    We are sure your expertise can help us on this matter.
    Regards,

    I better explain my problem in the thread How to timestamp continuous analog data acquisition using USB-6009 and GPS timing board?
    We are considering to use the PCI-1588 or a GPS timing board (low-profile slot too), but I´m not sure that the USB-6009 can be used to solve the problem.
    How to syncronize the data acquisition and timestamps using USB-6009 and PCI-1588 with external GPS?
    In other thread I would appreciate any suggestions for GPS timing board and PCI-1588 too.
    Regards,
    Lilian

  • Continuous data acquisition and analysis in real time

    Hi all,
    This is a VI for the continous acquisition of an ECG signal. As far as I understand the DAQmx Analog read VI needs to be placed inside a while loop so it can acquire the data continously, I need to perform filtering and analysis of the waveform in real time. The way I set up the block diagram means that the data stays int the while loop, and as far as I know the data will be transfered out through the data tunnels once the loop finishes executing, clearly this is not real time data processing. 
    The only way I can think of fixing this problem is by placing another while loop that covers the filtering the stage VIs and using some sort of shift registeing to pass the data to the second loop. My questions is whether or not this would introduce some sort of delay, and wether or not this would be considered to be real time processing. Would it be better to place all the VIs (aquicition and filtering) inside one while loop? or is this bad programming practice. Other functions that I need to perform is to save the data i na file but only when the user wants to do so. 
    Any advice would be appriciated. 
    Solved!
    Go to Solution.

    You have two options:
    A.  As you mentioned, you can place code inside your current while loop to do the processing.  If you are clever, you won't need to place another while loop inside your existing one (nested loops).  But that totally depends on the type of processing you are doing.
    B.  Create a second parallel loop to do the processing.  This would decouple the processes to ensure that the processing does not hinder your acquisition.  See here for more info.
    Your choice really depends on the processing that you plan to perform.  If it is processor-intensive, it might introduce delays as you mentioned.  
    I would reccomend you first try to place everything in the first loop, and see if your DAQ buffer overflows (you can monitor the buffer backlog while its running).  If so, then you should decouple the processes into separate loops.
    Regarding whether or not "this would be considered to be real time processing" is a loaded question.  Most people on these forums will say that your system will NEVER be real-time because you are using a desktop PC to perform the processing (note:  I am assuming this is code running on a laptop or desktop?).  It is not a deterministic system and your data is already "old" by the time it exits your DAQ buffer.  But the answer to your question really depends on how you define "real-time processing".  Many lay-people will define it as the processing of "live data" ... but what is "live data"?

  • Authorisation control for master data creation on the basis of eq. category

    Hi Experts,
    In one of my business scenerio , I want to control the authorisation of a particular person on the basis of equipment category. I want to create a role for that particular ID and assign that equipment category sothat he can not create the equipments other than that category.
    How can I control this authorisation on object level basis? If any other way , please let me know sothat i can try out for the same.
    With Regards
    VT

    Hi
    You can use SPRO>PM and CS>Tech objects>equipment>Defien field selection for eqmt master record. Chose 2nd activity in list and click 'influencing' and select Equipment catiegory. Through this for a equipment category, you can control fields as input, required, display, hide.  Maintain the field auth group as required for a equipment category you want to control.
    You can create auth group in SPRO same path as above under techincal objects, general data. Check with GRC/basis team to limit auth to Equipment category for this group. If not, you can do this through ABAP for validating the auth group for equipment category. Assign this Auth group to a role
    Regards
    Hemanth

  • I am doing data acquisition using the 6024E board, how can I acquire voltages greater than 10V

    I am doing data acquisition on MATLAB using the 6024E board, the maximun range I can see is <-10V,-10V>, can I increase this limit to be able to acquire higher voltages

    Without knowing the details of the signal you are acquiring (output Z etc), I can only offer an old suggestion.
    A voltage divider may be usefull. This will work if your application can tolerate some external resistors.
    Ask if you want details.
    Ben
    Ben Rayner
    I am currently active on.. MainStream Preppers
    Rayner's Ridge is under construction

  • Data required on the basis of Profit center group.

    Hi,
        Is there any table or report from where we can find out the values of customer, cusotmer description, city, GL Account, GL description, amount, sales document or sales order on the basis of PROFIT CENTER GROUP.
    Means i need the above details on the basis of  profit center group.
    Can anybody suggest on this
    Regards,
    Shree.

    Hi:
    Using this report, you can display according to profit center wise, not as profit center group wise.
    All the details are displayed accordling according to your requirement.
    Select the screen layout and select the fields you required.
    The Standard report is
    FBL5N - Display/Change Line Items
    Please let me know if you need more information.
    Assign points if useful.
    Regards
    MSReddy

  • To make it clear, we try to get data, well, automate the data acquisition through the NI-DAQ...

    Well,we tried to automate the I/O acqusition through the NI-DAQ card, we tried to calibrate it by the control Calibrate_1200, but it didn't calibrate it and it did not save the file where we did the calibration either.My boss thinks it is due to a misconfiguration of LabVIEW,what do you think of it?

    Hi,
    I don't think it's a misconfiguration of LV!
    I have never used 1200 DAQ device, but I took a look at the 1200Calibrate function and apparently it allows all the calibration features you need. I think you should embed the part of your application where you calibrate the device to see if there's something not correct.
    Just a hint, when you use 1200Calibrate what is the value returned by the status output?
    Alternatively you could use MAX to create virtual scales associated to your analog channels where you can set offset, gain (slope) and even non-linear scale. All these settings are saved by MAX in a file and applied automatically each time you use the virtual scales you created, refer to MAX online help
    Good luck,
    Alberto

  • Real-Time Data Acquisition

    WHAT IS REAL-TIME DATA ACQUISITION AND
    WHAT ARE REAL TIME QUERIES AND
    DEAMON UPDATE AND HOW DO WE EXTRACT AND LOAD DATA
    Please Explain in detail.....
    regards
    GURU

    Hi,
    Real-Time Data Acquisition –BI 2004s
    Real-time data acquisition supports tactical decision-making. It also supports operational reporting by allowing you to send data to the delta queue or PSA table in real-time.
    You might be having complex reports in your BI System, which helps in making decisions on the basis of data of your transactional system. Sometimes (quarter closure, month end, year ending...) single change in the transactional data can change your decision, and its very important to consider each record of transactional data of the company at the same time in BI system as it gets updated in the transactional system.
    Using new functionality of Real-time Data Acquisition (RDA) with the Net Weaver BI 2004s system we can now load transactional data into SAP BI system every single minute. If your business is demanding real-time data in SAP BI, you should start exploring RDA.
    The source system for RDA could be SAP System or it could be any non-SAP system. SAP is providing most of the Standard Data Sources as real-time enabled.
    The other alternative for RDA is Web Services, even though Web Services are referred for non-SAP systems, but for testing purpose here I am implementing Web Service (RFC) in SAP source system.
    Eg will be a production line where business wants information regarding defective products in the real time so that production can be stopped before more defective goods are produced.
    In the source system, the BI Service API has at least the version Plug-In-Basis 2005.1 or for 4.6C source systems Plug-In 2004.1 SP10.
    Real-Time Data Acquisition -BI@2004s
    http://help.sap.com/saphelp_nw2004s/helpdata/en/42/f80a3f6a983ee4e10000000a1553f7/content.htm
    https://www.sdn.sap.com/irj/sdn/go/portal/prtroot/docs/library/uuid/230d95df-0801-0010-4abb-ace1b3d197fd
    https://www.sdn.sap.com/irj/sdn/go/portal/prtroot/docs/library/uuid/3db14666-0901-0010-99bd-c14a93493e9c
    https://www.sdn.sap.com/irj/sdn/go/portal/prtroot/docs/library/uuid/3cf6a212-0b01-0010-8e8b-fc3dc8e0f5f7
    http://help.sap.com/saphelp_nw04s/helpdata/en/52/777e403566c65de10000000a155106/content.htm
    https://www.sdn.sap.com/irj/sdn/webinar?rid=/library/uuid/230d95df-0801-0010-4abb-ace1b3d197fd
    Thanks,
    JituK

  • Starting time of the data acqusition of the digitizer

    I may need to know the exactly starting time of the data acquisition of the digitizer.
    The data acqusition is triggerred by outside signal. 
    I just wonder if the digitizer is possible to send a signal to PC when it start data collection. So when PC receive the signal, it can check the system time.
    Any suggestion, thanks.

    The card does not synchronize time with the pc. Look here for an explanation of how the timestamp is obtained.

  • Updating of QM info structures on the basis of inspection lot creation date

    Dear Gurus,
    Our business requirement is as follow:
    Suppose MM has received 10 consignment of a material (Goods receipt) against a material in month of Feb-2008 from a particular vendor.
    Inspection lot statistics in MCXA is updated on the basis of inspection lot generation, which is as per our requirement.
    Suppose this inspection take 2 days for analysis at laboratory.
    Now FI has to make payments for the month of Feb-2008 against this inspection results. They need the value of average quality parameter for the month of Feb-2008. (Average value of all quality parameter for the material of all the inspection lot which are generated in Feb-2008)
    I want that QMIS should update on the basis of Inspection Lot creation date not on the basis of result recording system date.
    I think there should be some configuration settings available for this purpose.
    Please help me out.
    Regards
    Honyal

    Any valuable input are welcome
    regards
    Honyal

  • Data-acquisition with NI 6036E DAQ card & GPIB using an external trigger

    Hi all,
    I hope somebody could give me some help with the following and answer some questions:
    Simple system description:
    Labview 6.1
    PCI-GPIB card
    6036E DAQ card
    In my system, I am using an external analog trigger signal (A) for continuous data-acquisition. Characteristics of the analog trigger signal (A) are: ~40 Hz, signal height +1.48V, triggered by rising edge (the analog trigger signal (A) could be changed to a TTL signal). Each data-acquisition is done within ~1.0 ms after the rising edge of the trigger pulse. The timing of the data-acquisition and analyzing procedure is controlled by execution in a sequence structure placed in a loop.
    Now, I connected a power meter to the system, to measure the laser power during the data-acquisition. The power meter has two options to provide the laser power data:
    a) via analog signal output (voltage corresponds to laser power in watts)
    b) via GPIB (direct output reading of laser power in watts).
    Problem:
    During a certain point in my data-acquisition sequence structure (defined by a frame), I want to use the next occuring analog trigger signal (A) to acquire 1 value from the power meter.
    How do I do this in Labview programming for the following two situations?
    a) If I connect the analog output from the power meter to an analog input channel of the 6036E DAQ card. The analog trigger (A) would be connected to a second analog input channel (In case the analog trigger signal (A) is changed to a TTL signal it would be connected to the PFI0/Trig input pin on the DAQ card).
    b) If I use the GPIB connection of the power meter. The analog trigger (A) would be connected to a second analog input channel (In case the analog trigger signal (A) is changed to a TTL signal it would be connected to the PFI0/Trig input pin on the DAQ card).
    An other possibility would be to trigger the power meter directly, so it outputs constantly power meter values at ~40 Hz. How could I than acquire 1 power meter value (at a certain time im my sequence structure) via analog input at DAQ card or GPIB?
    Additional questions:
    How do I configure the PFI0/Trig pin on the 6036E DAQ board individually as an INPUT?
    How do I use an analog trigger signal (A) as counting signal for a loop, or as an activation signal for a sequence structure which includes GPIB commands?
    It would be very nice if somebody could give me some help.
    Kind regards,
    beam

    Hi beam,
    I just want to verify that I understand your situation correctly:
    An external trigger signal (A) is wired to one of your input channels (e.g. CH0) to trigger data acquisition of a second channel (e.g. CH1). Your power meter is connected to an analog input channel, which you would like to trigger with a certain rising edge at some of your sequence structure.
    Problem:
    During a certain point in my data-acquisition sequence structure (defined by a frame), I want to use the next occuring analog trigger signal (A) to acquire 1 value from the power meter.
    How do I do this in Labview programming for the following two situations?
    a) If I connect the analog output from the power meter to an analog input channel of the 6036E DAQ card. The analog trigger (A) would be connected to a second analog input channel (In case the analog trigger signal (A) is changed to a TTL signal it would be connected to the PFI0/Trig input pin on the DAQ card).
    If a task has been configured to acquire signal from one analog channel, it's not possible to run a second analog input task or to add a second channel on the fly. You had mentioned that it's possible to read from the instrument through GPIB. Is it possible to perform a software trigger such that at a certain frame of your structure, when the trigger signal A reaches voltage "x", a GPIB command is written to your power meter to query a measurement reading?
    Additional questions:
    How do I configure the PFI0/Trig pin on the 6036E DAQ board individually as an INPUT?
    You do not need to explicitly configure the PFI0 line as an input. If you want to use it as an input such that it acts as an analog trigger, simply wire the trigger signal to this pin. When configuring the trigger in your software, specify PFI0 as the trigger source.
    How do I use an analog trigger signal (A) as counting signal for a loop, or as an activation signal for a sequence structure which includes GPIB commands?
    You can try using the Limit VI to find out when the trigger signal reaches a certain level, and count how many times this level is reached. Similarly, you can use this as the condition to execute GPIB commands.
    Hope this helps,
    Lesley

  • Multiple data acquisition using PXI-5124 digitizer

    I have a system in which I do data acquisition of the present state of the physical system (using PXI-5124 digitizer),
    give the system some change (using labview program itself) and do data data acquisition again corresponding to 
    the changed state of the system.
    So I need to do two data acquisitions in one loop. How do I do this ? Labview examples have some programs (attached file) that
    does one data acquisition in one loop but I need to do two.
    I tried to make some changes to this program but it doesn't seem to work well.
    Thanks
    Attachments:
    PXI5124-data-acquisition.vi ‏46 KB

    From the explanation you have given about reconfiguring the digitizer,
    I think the example you are looking at is the one you want.
    The digitizer is reconfigured with new settings every time with in that loop,
    so the user can change the settings such as triggers and vertical range on the fly.
    The original state of the example showed how it was reconfiguring the digitizer,
    was there something else you wanted to add  to that example?

Maybe you are looking for

  • Will Acrobat 9.5.2 run under Windows 8?

    Transferred from Win 7 via PC Mover.  Printer did not transfer so I reinstalled from original CD. When trying to print a Word doc, get error message in Printer box in Devices and Printers. No explanation of error.

  • Cant click and drag with one finger, but works with 3 fingers

    Last week, my trackpad starts to fail. Thing is that i can't click and drag with one finger but if i turn on the 3 finges option, i can tap and drag without a problem Check the prefs, universal access too. And everything is ok. Reset pram, smc , run

  • IDOC with basic type INVOIC01 help !!!

    Hi experts, In this idoc type  INVOICE01, where I can see the customer number? I created a function module to process this inbound IDOC and trying to get sales orders by BAPI function module BAPI _ SALES_GETLIST , but I don't know how to get the cust

  • An unhandled exception has been thrown in the ESB system

    Hi Experts, we are using SOA suite 10.1.3.1.0 with Jdev 10.1.3.1.0, when we are trying to deploy the FullfillmentESB(of SOA Order booking application) to Integration server, prompted with the following error: Entity Deployment Failed error code: 0 :

  • Completely stuck with provisioning profiles which have expired - any ideas?

    My various certs and provisioning profiles seem to have expired, so I tried recreating them and so on, but I can't build anything now for the following error: Checking Dependencies CodeSign error: a valid provisioning profile is required for product