NI ELVIS PROBLEM: Function generator DC offset

Hello
My ni elvis has a serious problem!
The func generator gives a 40mV DC offset when i try to generate a sinewave whitout offset!
Can you help me?
Thank you!
Giovanni

Hi Giovanni,
I verified the specifications of the NI-ELVIS and I noticed that the DAC of the function generator has a resolution of 8 bit and output range of (-10,+10) V.
Moreover in the version 2.0 of NI-ELVIS is possible to perform a calibration procedure (execute the Calibration Wizard) to improve the resolution of the signal generated.
I hope these informations can help you with this device.
Best regards,
Marco Lencioni

Similar Messages

  • ELVIS II Function Generator Switch

    Hi i  have and elvis II and running it using labview 2012 and im trying to get a switch in order to be able to start and stop the function by using a boolean.
    Any help is appreaciated
    Thanks in advance
    Attachments:
    FGEN Switch.vi ‏68 KB

    Thank you for posting on NI Forums. Maybe you could try using an event structure to trigger the express VI to start running? Then, the same boolean could be used to stop the VI. I don't have an NI ELVIS with me to test this out, but I tried to modify your VI to implement this. I hope that this at least points you in the right direction.
    Jeremy P.
    Applications Engineer
    National Instruments
    Attachments:
    FGEN Switch2.vi ‏67 KB

  • DC offset problems in NI-5401 function generator card

    When i give a Dc offset of 1 Volt the output of my function generator reads 1.97v. what is the reason behind this,why is it so what setting have to be made so as to get the dc ofset only when no ac signal is given.

    Hi. The NI 5401?s output voltage is specified in terms of 50 ohms. This means for a 50 ohm load, you should see 1.0 Volts for a 1.0 Volt setting when the load is 50 ohms. For an other than 50 ohm load, there is a voltage divider action that takes place, where the voltage will vary up to double the size for a high impedance load, such as most default oscilloscope settings. The Connecting Signals>>ARB Connector section of Chapter 1 of the NI 5401 user manual describes this in further detail.
    To generate just a DC voltage level, there is an option for DC as the Waveform to use when programming the device. The LabVIEW niFgen Function Generator Example shows this on the front panel. If you are using the Sources Soft Front Panel, when the Standard Function Output is se
    lected, there is a DC Voltage level selection button available to be selected to generate a DC voltage.

  • 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

  • What is the internal impedance of the NI ELVIS Function Generator?

    Does anyone know the load impedance of the function generator? I'm wondering how much it may be tainting the results of Tau for my RC circuit. Thanks.

    Impact -
    With the NI ELVIS Function Generator, the output impedence is spec'ed
    at 50 Ω guaranteed.  You can find the block diagram from the
    Function Generator on page A-6 and C-6 (Appendix C:  Theory of
    Operation) of the NI ELVIS User Manual. 
    NI Educational Laboratory Virtual Instrumentation Suite (NI ELVIS) User Manual - http://digital.ni.com/manuals.nsf/websearch/11E6BA4103D9ADD086257103005C97E0
    Good luck with your application!
    Mark Walters
    Application Engineer

  • Problems with the Stanford Reseach Systems DS345 Function Generator

    I'm writing a labview program that will allow operation of the Stanford Reseach Systems DS345 Function Generator. The problem that I'm having is in the amplitude calculation. The way the driver finds the amplitude is by recieving an array of what are essentially y-coordiantes (on a cartesian graph system), finding the max and min of the array, and subtracting them.
    This is where the problem lies. I've designed my program so I can type in an equation, see the graph of this equation, and send the y values into a the subvi provided by the driver. This subvi is the one that finds the amplitude...etc and sends it to the oscilliscope. However, when I use a formula for something as simple as sin(x), it caclulates the amplitude as 2. This is because the max/min values of sin(x) are 1 and -1. So the function generator reads in an amplitude of 2. This amplitude of 2 results in a sine wave that oscillates between 2 and -2. Obviously, this is not what I'm looking for. I know by dividing the sine wave coordiantes by 2, or just using the max/min value to be sent to the function generator as the amplitude will work in this case, but not for all cases (ex: sin(x)*e^(-3x). I'd appreciate any suggestions on how to fix this amplitude problem for all cases.
    In addition to having this sine function, I wrote a subvi that essentially generates a series of pulses depending on the user preferences. It's relativly complicated to explain how it works, but it just sends an array of y-coordinates (similar to above, and they are sent to the same subvi to be sent to the function generator). This array is the one that truly puzzles me.
    For example, I have a single pulse, with height 5. The y array is 10 places big. At index 0 to 3, the y value is 0. At 4 to 6, the value is 5. And from index 7 to 9, the index is zero again (Imagine a pulse "_|-|_" , it may help understand this).
    I send this array of 10 places to the same subvi as the one described in the sine function earlier. I would expect the amplitude to go in as five (max - min), and it does. However, when determining the actual value from the oscilliscope, it turns out to be 10.8 peak to peak voltage. The values range from -.8 volts to 10 volts. I can't imagine why they do not range from 0 to five as specified in the array which is sent.
    If anyone has any answers, suggestions or questions concering this description, I would greatly appreciate it. Feel free to post answers or email me at: [email protected]
    I'll be more than happy to post the files if someone wants to look at them.
    Thanks again,
    Jim Dalton
    North American Lighting
    [email protected]

    I am taking these measurments using the measurment and automation explorer test function. I set my range on all channels to 0-8khz and Have been inputing no more than 8khz. What leads me to believe I have a software or config problem is that I sent in a module to NI for repair and this is the brand new one they sent me back. While testing this module, I also have a 1102 module and 1124 module on the scxi-1000 chasis and both of those are working as specified. I also moved the 1126 module to slot 1 and ran it that way as well when I replaced the chasis.

  • Labview NI ELVIS function generator error

    Whenever I run my vi one time and run it again for a frequency sweep it sometimes shows an error
    Possible reason(s):
    Resource requested by this task has already been reserved by a different task.
    Task Name: _unnamedTask<1314>
    What does this means?
    here is an image of my block Diagram
    Attachments:
    Bode_Plot.png ‏46 KB

    Impact -
    With the NI ELVIS Function Generator, the output impedence is spec'ed
    at 50 Ω guaranteed.  You can find the block diagram from the
    Function Generator on page A-6 and C-6 (Appendix C:  Theory of
    Operation) of the NI ELVIS User Manual. 
    NI Educational Laboratory Virtual Instrumentation Suite (NI ELVIS) User Manual - http://digital.ni.com/manuals.nsf/websearch/11E6BA4103D9ADD086257103005C97E0
    Good luck with your application!
    Mark Walters
    Application Engineer

  • Problem function: windows_ui_xaml!CWindowsServices::UriCreate

    I am wondering if anyone could offer a hint on what this crash report is about?
    Problem function:
    windows_ui_xaml!CWindowsServices::UriCreate ARM_STOWED_EXCEPTION_windows_ui_xaml!CWindowsServices::UriCreate+3d 2
    Exception type
    ARM_STOWED_EXCEPTION_windows_ui_xaml!CWindowsServices::UriCreate+3d
    Stack trace:
    Frame Image Function Offset
    0 Windows.UI.Xaml.dll CWindowsServices::UriCreate 0x0000003d
    1 Windows.UI.Xaml.dll ResourceManager::CombineResourceUri 0x00000051
    2 Windows.UI.Xaml.dll CBitmapImage::UpdateAbsoluteUri 0x0000007d
    3 Windows.UI.Xaml.dll CBitmapImage::ReloadImage 0x0000007d
    4 Windows.UI.Xaml.dll CImageBrush::ReloadImage 0x00000083
    5 Windows.UI.Xaml.dll CImageBrush::EnterImpl 0x000ddeff
    6 Windows.UI.Xaml.dll CDependencyObject::Enter 0x0000009d
    7 Windows.UI.Xaml.dll CNoParentShareableDependencyObject::Enter 0x00000071
    8 Windows.UI.Xaml.dll CResourceDictionary::ChildEnter 0x00000085
    9 Windows.UI.Xaml.dll CDOCollection::EnterImpl 0x000000af
    10 Windows.UI.Xaml.dll CDependencyObject::Enter 0x0000009d
    11 Windows.UI.Xaml.dll CResourceDictionary::ChildEnter 0x00000085
    12 Windows.UI.Xaml.dll CDOCollection::EnterImpl 0x000000af
    13 Windows.UI.Xaml.dll CDependencyObject::Enter 0x0000009d
    14 Windows.UI.Xaml.dll CDependencyObject::EnterImpl 0x000001bd
    15 Windows.UI.Xaml.dll CDOCollection::EnterImpl 0x00000025
    16 Windows.UI.Xaml.dll CDependencyObject::Enter 0x0000009d
    17 Windows.UI.Xaml.dll CDependencyObject::EnterImpl 0x000001bd
    18 Windows.UI.Xaml.dll CUIElement::EnterImpl 0x0000006f
    19 Windows.UI.Xaml.dll CFrameworkElement::EnterImpl 0x00000015
    20 Windows.UI.Xaml.dll CControl::EnterImpl 0x00000015
    21 Windows.UI.Xaml.dll CUserControl::EnterImpl 0x00000015
    22 Windows.UI.Xaml.dll CDependencyObject::Enter 0x00000113
    23 Windows.UI.Xaml.dll CDOCollection::ChildEnter 0x00000067
    24 Windows.UI.Xaml.dll CDOCollection::Append 0x00000247
    25 Windows.UI.Xaml.dll CUIElementCollection::Append 0x00000041
    26 Windows.UI.Xaml.dll CUIElement::AddChild 0x00000063
    27 Windows.UI.Xaml.dll CContentPresenter::ApplyTemplate 0x0000028b
    28 Windows.UI.Xaml.dll CFrameworkElement::MeasureCore 0x0000009b
    29 Windows.UI.Xaml.dll CUIElement::MeasureInternal 0x00000131
    30 Windows.UI.Xaml.dll CUIElement::Measure 0x0000012b
    31 Windows.UI.Xaml.dll CBorder::MeasureOverride 0x000000cf
    32 Windows.UI.Xaml.dll CFrameworkElement::MeasureCore 0x0000015b
    33 Windows.UI.Xaml.dll CUIElement::MeasureInternal 0x00000131
    34 Windows.UI.Xaml.dll CUIElement::Measure 0x0000012b
    35 Windows.UI.Xaml.dll CControl::MeasureOverride 0x00000035
    36 Windows.UI.Xaml.dll DirectUI::FrameworkElement::MeasureOverrideImpl 0x0000004f
    37 Windows.UI.Xaml.dll DirectUI::FrameworkElementGenerated::MeasureOverride 0x0000004b
    38 Windows.UI.Xaml.dll DirectUI::ContentControl::MeasureOverride 0x00000099
    39 Windows.UI.Xaml.dll DirectUI::FrameworkElementGenerated::MeasureOverrideProtected 0x00000039
    40 Windows.UI.Xaml.dll DirectUI::FrameworkElement::MeasureOverrideFromCore 0x0000008d
    41 Windows.UI.Xaml.dll CFrameworkElement::MeasureCore 0x001dda53
    42 Windows.UI.Xaml.dll CUIElement::MeasureInternal 0x00000131
    43 Windows.UI.Xaml.dll CUIElement::Measure 0x0000012b
    44 Windows.UI.Xaml.dll CBorder::MeasureOverride 0x000000cf
    45 Windows.UI.Xaml.dll CFrameworkElement::MeasureCore 0x0000015b
    46 Windows.UI.Xaml.dll CUIElement::MeasureInternal 0x00000131
    47 Windows.UI.Xaml.dll CUIElement::Measure 0x0000012b
    48 Windows.UI.Xaml.dll DirectUI::UIElement::MeasureImpl 0x0000004b
    49 Windows.UI.Xaml.dll DirectUI::UIElementGenerated::Measure 0x00000037
    50 Windows.UI.Xaml.dll DirectUI::ScrollContentPresenter::MeasureOverride 0x00000337
    51 Windows.UI.Xaml.dll DirectUI::FrameworkElementGenerated::MeasureOverrideProtected 0x00000039
    52 Windows.UI.Xaml.dll DirectUI::FrameworkElement::MeasureOverrideFromCore 0x0000008d
    53 Windows.UI.Xaml.dll CFrameworkElement::MeasureCore 0x001dda53
    54 Windows.UI.Xaml.dll CUIElement::MeasureInternal 0x00000131
    55 Windows.UI.Xaml.dll CUIElement::Measure 0x0000012b
    56 Windows.UI.Xaml.dll DirectUI::UIElement::MeasureImpl 0x0000004b
    57 Windows.UI.Xaml.dll DirectUI::UIElementGenerated::Measure 0x00000037
    58 Windows.UI.Xaml.dll DirectUI::ScrollViewer::MeasureOverride 0x00155a01
    59 Windows.UI.Xaml.dll DirectUI::FrameworkElementGenerated::MeasureOverrideProtected 0x00000039
    60 Windows.UI.Xaml.dll DirectUI::FrameworkElement::MeasureOverrideFromCore 0x0000008d
    61 Windows.UI.Xaml.dll CFrameworkElement::MeasureCore 0x001dda53
    62 Windows.UI.Xaml.dll CUIElement::MeasureInternal 0x00000131
    63 Windows.UI.Xaml.dll CUIElement::Measure 0x0000012b
    64 Windows.UI.Xaml.dll CRootVisual::MeasureOverride 0x00000045
    65 Windows.UI.Xaml.dll CFrameworkElement::MeasureCore 0x0000015b
    66 Windows.UI.Xaml.dll CUIElement::MeasureInternal 0x00000131
    67 Windows.UI.Xaml.dll CUIElement::Measure 0x0000012b
    68 Windows.UI.Xaml.dll CLayoutManager::UpdateLayout 0x00000181
    69 Windows.UI.Xaml.dll CCoreServices::NWDrawTree 0x00000235
    70 Windows.UI.Xaml.dll CCoreServices::NWDrawMainTree 0x0000006b
    71 Windows.UI.Xaml.dll CWindowRenderTarget::Draw 0x0000004b
    72 Windows.UI.Xaml.dll CXcpBrowserHost::OnTick 0x00000099
    73 Windows.UI.Xaml.dll CXcpDispatcher::Tick 0x0000003d
    74 Windows.UI.Xaml.dll CXcpDispatcher::OnReentrancyProtectedWindowMessage 0x00000041
    75 Windows.UI.Xaml.dll CXcpDispatcher::WindowProc 0x0000007f
    76 Windows.UI.Xaml.dll CDeferredInvoke::WindowProc 0x0000003b
    77 minuser.dll Core::Yield::WndProc 0x0000012b
    78 minuser.dll minDispatchMessageW 0x00000219
    79 windows.ui.dll Windows::UI::Core::CDispatcher::WaitAndProcessMessages 0x00000117
    80 windows.ui.dll Windows::UI::Core::CDispatcher::ProcessEvents 0x00000063
    81 Windows.UI.Xaml.dll CJupiterWindow::RunCoreWindowMessageLoop 0x0000003b
    82 Windows.UI.Xaml.dll CJupiterControl::RunMessageLoop 0x0000001b
    83 Windows.UI.Xaml.dll DirectUI::DXamlCore::RunMessageLoop 0x00000027
    84 Windows.UI.Xaml.dll DirectUI::FrameworkView::Run 0x0000000f
    85 twinapi.appcore.dll Windows::ApplicationModel::Core::CoreApplicationView::Run 0x00000027
    86 twinapi.appcore.dll CWrlLightweightHandlerBase::ReleaseMarshalData 0x0000011b
    87 shcore.dll SHCreateThreadRef 0x00000201
    88 ntdll.dll RtlUserThreadStart 0x00000017" Download
    Hong

    The best I can make of this dump is that it's generated on suspend of the app.  Are you doing anything special in the suspending event handler?
    Matt Small - Microsoft Escalation Engineer - Forum Moderator
    If my reply answers your question, please mark this post as answered.
    NOTE: If I ask for code, please provide something that I can drop directly into a project and run (including XAML), or an actual application project. I'm trying to help a lot of people, so I don't have time to figure out weird snippets with undefined
    objects and unknown namespaces.

  • Problem with generate sine 50 Hz

    I have a problem with generate sine voltage with freq 50 Hz.
    I form waveform with this frequency and sent in to the "AO Write" with update rate equal waveform lenght*frequency. And so I have a cycle of my program 20 ms, but I need a cylce 5 ms.
    How I can make it right?
    I forming my waveform "Basic Function Generator" with sampling Info equal my waveform lenght.
    Message Edited by Unk on 09-28-2005 02:36 PM

    The
    amplitude
    phase
    frequency
    of the signal are independent parameters.
    You can generate the relevant signal using Basic Function Generator VI, then supply this waveform to your AO operation (DAQmx write is polymorphic and allows you to use a waveform directly as the input - those guys at NI are clever )

  • Create a melody with Labview/ Function Generator

    Hi (first sorry for poor english, not my native language)
    I have a project at school which is creating a melody using Labview and a function generator. I've worked on it for hours now and i still can't get through it.
    I joined the vi file with my post so you can get a look at what i've done so far.
    First, i do'nt know which loop i have to use (u'll understand soon enough if u just take a look at the vi file), the problem is that i want to create 4 arrays using 2 text files.
    The first one is used as a reference : exemple the frequency to play an A is 440Hz, so my first text file looks like that :
    A 440
    B 493
    the second one is my melody, which includes the notes and the tempo (in ms)
     , so it's like :
    B 1000
    C 1500
    I used the first two loops to seperate each string lines of my files so I have at the end 4 different arrays. One containing the note's references, one containing the frequency, one containing my melody's notes and one containing the duration of each notes.
    The problem is that when I use a while loop, it seems that my arrays are not containing every elements it should, it only has the last one. Just try to run the vi file.
    Could anyone give me some help ? Don't hesitate to ask more questions if u didn't fully understand my problem !
    Thx
    Attachments:
    PR.vi ‏19 KB

    Hi claudeuntel,
    Your array contains just the last note because at each for loop iteration a new table is created.
    You have to send the table you created at one iteration to the next one.
    To do this you can use shift register.
    I didn't have tested the VI below but it should looks like that.
    Valentin
    Valentin
    Certified TestStand Architect
    Certified LabVIEW Developer
    National Instruments France
    #adMrkt{text-align: center;font-size:11px; font-weight: bold;} #adMrkt a {text-decoration: none;} #adMrkt a:hover{font-size: 9px;} #adMrkt a span{display: none;} #adMrkt a:hover span{display: block;}
    Travaux Pratiques d'initiation à LabVIEW et à la mesure
    Du 2 au 23 octobre, partout en France

  • Proportional controller connected to a function generator

    Hi....
    We'd like to connect some output from a proportional controller to a function generator which
    produces a square pulse with variable duty cycle.
    The question is what proportional controller to use here and if there is any examples related?
    And how to produce this square pulse with a high frequency, while some controllers do not support
    any thing more than 1kHz? In addition, if it exceeded this, something wrong happens to the output and disappears?
    Thanks in advance
    Ray

    Ray,
    Please be more specific in your description. Proportional controllers usually do not connect to function generators so it is not clear exactly what you are trying to accomplish.
    Which parts of your system are hardware and what kind? Which are implemented in LV (which version)? What are the inputs and outputs to both the hardware and software? What frequency range do you need? If you have specific problems with a part of your LV program, posting an example showing the problem is very helpful.
    When you say the output disappears, do you mean that the pulses stop? That may simply indicate a 0% or 100% duty cycle.
    Many inidviduals with a wide range of experience monitor this forum and will try to help if we understand what you are trying to do.
    Lynn

  • Hp 3311 A function generator GPIB

    Hi, I've a Hp 3311 A function generator and I'd like to control it by GPIB. I'd tested with the example in labview "GPIB.vi" but when i send it a command, pej "APPLIN 1.0E+3, 3.0, -2.5" it doesn't work (It makes only a sound "Bip" ).
    Does anyone knows why the function generator doesn't generate the signal?
    Note: When i send it the command IND?, the instrument returns the name "Hp 3311A", but when i send another command it doesn't work.
    Thanks. Regards, peliasrojo.

    Hi. I don't use the drivers, I'm using the example GPIB-VISA. I'm be able to change the type of function (sin, square, etc) but when i try change the frequency or the others parameters it doesn't work.
    I've attached the program (v2011). The program only tries to apply a square signal with visa commands.
    The manual shows an example of a sine function: "APPLIN 5.0E+3, 3.0, -2.5" that generates a sine function of 5kHz, 3Vpp and an offset of -2.5V.
    Thanks, regards Peliasrojo
    Attachments:
    GPIB-VISA (modificada).vi ‏11 KB

  • Creating two sin signals using function generator.vi example

    hi all. i want to create two sin signals with different parameters using function generator.vi example. i tried to modify the example by copying the code and try to output two sin signals on different channels of the DAQ but error message saying that you are validating of the AO write buffer . attached is the file. how can i modify it to solve the problem?!
    Attachments:
    function_generator2.vi ‏123 KB

    Nidal,
    Below is an example that illustrates how to generate different sine waves on two separate analog output channels.
    Example

  • How to plot data from a GPIB function generator

    I am doing a litle application with Visual C++ and the ComponentWorks++ to
    control a GPIB device. I am tring to Plot a CNiGraph with data coming from
    the GPIB function generator. I use the code below to write/read the device
    and to Plot the graph. It give me some results but for exemple, if I
    request a sin wave it give me something that doesn't look like a sin and if
    I request a square wave it give me about the same wave... So I want to know
    if the problem is in my code or maybe it's because my device is just a
    emulator not a real func generator. But I guest I am doing some kind of
    convertion error.
    CNiInt16Vector vBuffer(100); // Should I try CNiReal64Vector or something
    else ?
    m_Visa->Write(m_strC
    ommande); // Write to the device, this works well
    m_Visa->Read(vBuffer); // Is it the right way to do reading ?
    m_Graph.PlotY(vBuffer); // This Plot some data, but it doesn't seem right
    Could somebody bring the light on this?
    Thanks alot!
    P.S. Sorry for the bad english...

    Ares:
    I have two suggestions about common problems in VISA.
    (1) How is m_Visa defined? There is occasionally some confusion about which VISA class should be used for this purpose. CNiVisaSession is the class designed for this purpose.
    (2) How is the instrument returning data? Usually instruments return some sort of header before the actual data.
    You may want to contact National Instruments Technical Support to continue this discussion. You can reach our telephone support at 1-800-IEEE-488 or email support at http://www.ni.com/ask.
    Good Luck,
    Chris Wood
    Applications Engineer
    National Instruments

  • Acquire waveforms from function generator to oscilloscope

    I have a problem. We constructed a virtual function generator and a virtual oscilloscope. It's working well, the oscilloscope is displaying the (almost) correct data. My problem is that the waveform displayed in the oscilloscope vi is always sine, although the selected waveform in the function generator is already different.
    I should replace the constant 'zero' with something so that the cases will change in order for my oscilloscope to display different waveforms. Is there a way to acquire the values of the constant enum, for instance, from another vi to this vi?

    Yes, you would need to replace the constant with a control. Once you do this, in the main VI you simply do a right click on the subVI's terminal and select Create Control/Constant that but you cannot change it as the subVI runs.

Maybe you are looking for