Continuous in- and output with PCI-6229

Hi All,
I'm currently evaluating a PCI-6229 card on RTX (and maybe InTime later on). The main goal of the evaluation is to prove we can get hard real-time, deterministic behaviour from this system in order to use it to replace our current DSP-based solution.
To do so, I'm setting up a rather simple program that should
- continuously acquire 1 channel @ 20kHz
- have a processing loop of 5mSec, ie 100 samples; this loop should be entered every 5mSec as exactly as possible
- do some simple processing in the loop (thresholding the signal)
- bring out the result on an analog output (low signal if signal is under threshold, high signal for all samples above the threshold)
I could get the basics working pretty quickly: continuous input, continous output, continuous input with dma, input using interrupts.
Trying to combine everything isn't really working out however.. Normally I'd try and try until knowing the device inside-out but now I have a rather strict timeframe so hopefully someone here can provide some insight.
Questions:
1. For the input, I can get an SC_TC interrupt each time one frame is scanned. I measured this on a scope by toggling a digital output on the card, and there's no noticable jitter on the squarewave which is a good sign.
However I'd like to combine this with DMA, but the DMA is lagging a bit on the interrupt so I end up having to poll the DMA after all in the ISR, so there's no use using the interrupt in the first place.
Is there a way to set up continuous DMA servicing and get an interrupt from the DMA system itself after 100 samples are transferred?
2. For the output, I cannot get continuous mode working with DMA, only by writing to the FIFO manually. I can preload a couple of frames with the dma, but after calling aoStart(), tDMAChannel::write() works once, but all calls afterwards return kBufferUnderflow. Any ideas?
I probably have to check when exactly to write to the DMA, but I have no idea which of the many status functions to use. Tried with AO_Status_1.readAO_FIFO_Half_Full_St() but that's not it. tried to write it on each UC_TC interrupt but that didn't work either.
3. DMA is, to my understanding, a more performant way of getting samples into the host and doesn't require to call AI_FIFO_Data.readRegister() in a loop and vice-versa for the output side. But are there really benefits in using DMA?
4. I made a basic program to bring everything together the simplest way possible: preload 100 samples in the output FIFO, start analog input, start analog output, have the ISR copy all values directly from input to output FIFO.
Putting both analog signals on a scope, I expected to see the input and about (see question5) 5mSec later the same signal on the output, with no jitter.
However what I see is the output is just floating around, in other words there is no fixed delay between output and input! How is this possible? I use the same divisor for in-and output. Is there any sample code available that achieves what I want?
5. Is there a way to start both input and output at the exact same time, eg at the same edge of a certain clock pulse? How are input and output synchronized? Can I be sure they never go out of sync?
Solved!
Go to Solution.

update: looking at the DAQmx control samples, it seems some of them set the start trigger for the AO to the AI start trigger. I mimicked this using kAO_START1_SelectAI_START_1 with the aoTrigger method, and the sync seems better now: the output starts exactly 10mSec after the input (or 5, if I preload only one frame) and stays in sync for about 25mSec. That it goes wrong.
At the moment I'm using no DMA, just one simple interrupt routine that basically does
board->Interrupt_A_Ack.writeAI_SC_TC_Interrupt_Ack( 1 );
board->Interrupt_A_Ack.flush();
toggle ^= 1;
board->Static_Digital_Output.writeRegister( toggle ? 0x00 : 0xff );
for( u32 i = 0 ; i < numSamples ; ++i )
  const u32 val = board->AI_FIFO_Data.readRegister();
  board->AO_FIFO_Data.writeRegister( val );
In the screenshot in the attachment you can see this goes wrong: cursor A shows the position of the input signal (=AI 0, yellow) that should be shown 10mSec later at the output (blue line=AO). Cursor B shows this 10mSec later position, and you can see there's some garbage right after the cursor. This is the data that was written to the AO FIFO in the fifth interrupt (interrupt position show in purple).
Trying to figure out where that comes from, I put board->AI_Status_1.readAI_FIFO_Empty_St() in the interrupt loop. And effectively, when trying to read the 500th sample, it reports that the FIFO is empty. Consequently the data written to the AO FIFO does not make sense anymore. But I do not understand how can this ever happen? The SC_TC interrupt is fired whenever 100 samples are read from the input. So after this interrupt occurs, the FIFO should always contain at least 100 samples, no?
Attachments:
tek00000.png ‏22 KB

Similar Messages

  • Continuous, gap-free acquisition and processing with PCI-5142 and Labview

    I am trying to continuously acquire data from a PCI-5142 in Labview 7.0.  I have NI-SCOPE software installed, and right now, the best I can do is to acquire the data in chunks and then stitch the chunks together.  However, this results in a short (approx. 10ms) amount of data loss between chunks.  Since I am trying to do a cross-correlation of a function with my data, across chunks, I need the chunks to be contiguous.  Additionally, I need to do this processing in real time so I cannot just stream to disk. What are my options?

    Be sure that you are not stopping and re-starting the acquisition in between reads.  Also, be sure you are not reading from a new record each time.  There will be some time between separate acquisitions or separate records.
    The best way to acquire continuously is to configure a single record, set the Reference Trigger to Software, and never send a Software Trigger.  Set the Fetch Relative To attibute to Read Position.  That way, every time you read data, it will start at the first unread data point.  So you shouldn't see any gaps in the data (the chunks will be contiguous).
    Please refer to two examples included in the NI-Scope driver:
      - niScope EX Fetch Forever
      - niScope EX Fetch In Chunks

  • Are there any DAQmx examples available for use with pci 6229 M series card?

    I have been searching around for examples which work with the pci 6229 M series DAQ card. Most examples do not list this card as applicable and the one I have found gives an error. Is there anywhere specifically available, what I am particularly interested in is seeing an analogue channel being triggered by another analogue channel reaching a certain value.
    Thanks
    Kevin

    Hi Kejoglo,
    You are right in the fact that the M-Series card is newer than LabVIEW (and therefore the examples that are shipped with it) and therefore the example finder doesn't list the M-Series cards in the list of available hardware.
    Basically though, the M-Series cards work with DAQmx and not Traditional DAQ so if you just go into the example finder and search under Hardware Input and Output>>DAQmx and choose an example from that folder to run on your M-Series card. As long as you don't try to do anything outside of the specifications of your card (which I doubt you will do) then you shouldn't have any trouble running any of the DAQmx examples on an M-Series card.
    Hope this helps, if you still have problems then please feel free to write back.
    Best regards,
    Peter H
    Applications Engineer
    National Instruments UK

  • Counting peaks within one minute intervals and outputting with time stamp

    I'm currently working on my senior design project for biomedical engineering. We are creating a piezoelectric sensor in order to measure respiration on a bed non-invasively. The sensor lays on bed under subject and records movement due to respiration. We currently have figured out how to detect peaks. However, now we want to count number of peaks detected within a 1 min time period and output that result with a 'timestamp'. We would like the output to be into excel as two columns, rate(number peaks in 1 min) and time. Time in minutes and not actual time is fine. Sampling rate was 500Hz.
    My current VI has peak detection criteria and can output total number of peaks and their locations.
    Any help would be greatly appreciated as this is our last step before verification and have been stuck on it for awhile. 
    It won't allow me to attach a tdms file in which our data is stored as, so I can't upload the data currently.
    Also attached is our current VI for peak detection labeled 3.26.Resp.PeakDetect.
    Thanks for any and all help!!
    Attachments:
    3.26.Resp.PeakDetect.vi ‏146 KB

    I see no need for a case structure.  Or did you set up a state machine that I missed?
    I recommend making a VI that does nothing but read your 30,000 samples and process it (counting the peaks and what not).  From there, you create the array for the number of peaks and the time (in minutes).  Then you can call that VI inside of a loop to build up the array of data points.
    There are only two ways to tell somebody thanks: Kudos and Marked Solutions
    Unofficial Forum Rules and Guidelines

  • Formatting code and output with Courier font

    Hi,
    I have several problem in inserting code and output for SQL and PL/SQL.
    I.e.:
    If I insert the code below formatting usin Syntax highlight as SQL:
    SELECT empno, sal
      FROM emp
    WHERE sal > ALL (2000, 3000, 4000);
    Is there a way to have Courier as font to retain the correct indentation?
    Another problem. Suppose that I run the query below:
    SELECT *
      FROM emp
    WHERE deptno = 10;
    and I want to paste the output as Courier:
    If I copy and paste the output from SQL Plus:
    EMPNO ENAME 
    JOB         
    MGR HIREDATE    
    SAL  
    COMM
    DEPTNO
    7782 CLARK 
    MANAGER    
    7839 09-JUN-81  
    2450               
    10
    7839 KING  
    PRESIDENT       
    17-NOV-81  
    5000               
    10
    7934 MILLER
    CLERK      
    7782 23-JAN-82  
    1300               
    10
    It is pasted as a table. Even changing the font is not helping to have a good formatted code (note the header not aligned with data columns).
    I can use HTML code to paste it. I.e.:
         EMPNO ENAME      JOB              MGR HIREDATE         SAL       COMM     DEPTNO
          7782 CLARK      MANAGER         7839 09-JUN-81       2450                    10
          7839 KING       PRESIDENT            17-NOV-81       5000                    10
          7934 MILLER     CLERK           7782 23-JAN-82       1300                    10
    But it is taking quite a lot to paste the code.
    Any suggestion?
    Regards.
    Al
    Message was edited by: AlbertoFaenza

    BluShadow wrote:
    Well, I hope they get around to using fixed space fonts on the Syntax Highlighting options, as I quite like the fact it creates line numbers for the code, as that will be useful when discussing issues.
    I agree Blu. The line number is useful. If they only can use a fixed space font would be perfect.
    I also have the problem that randomly my output is pasted as a HTML table and still could not understand why it happens.
    This one i.e.:
    EMPNO ENAME
    JOB        
    MGR HIREDATE   
    SAL 
    COMM
    DEPTNO
    7369 SMITH
    CLERK     
    7902 17-DEC-80  
    800              
    20
    7566 JONES
    MANAGER   
    7839 02-APR-81 
    2975              
    20
    7788 SCOTT
    ANALYST   
    7566 19-APR-87 
    3000              
    20
    7876 ADAMS
    CLERK     
    7788 23-MAY-87 
    1100              
    20
    7902 FORD 
    ANALYST   
    7566 03-DEC-81 
    3000              
    20
    I notice that just adding a blank line as first line solve the issue.Regards.
    Al

  • How to check 6 digital signals change value at the same time with PCI-6229??

    I am using DAQ card PCI-6229.
    Channel 1 generate a digital signal.
    Channel 2,3,4,5,6,7 acquire digital signals.
    I want to check:
    1. Whether the rising edge of Channel 2,3,4,5,6,7 occures at the same time;
    2. The time delay from the rising edge of Channel 1 to the rising edge of Channel 2,3,4,5,6,7 is within a certain range.
    I know I can use counter to get the two edge seperation time delay. But I only have two counter, it is two time-consuming if I check one by one.
    I don't know how to check the rising edge of 6 different channels occure at the same time.
    Does anyone has any suggestions?
    Thanks

    Hello,
    You can use the DAQ card's digital input change detection circuitry to detect changes in the input, you can then use a counter to measure the relative time between samples. Please read Page 6-9 DI Change Detection Applications for more information. Let me know if this helps
    Christian A
    National Instruments
    Applications Engineer

  • Interface with I2C SDA and SCL with PCI 6224 digital ouputs in C/C++

    I am trying to use the pci 6224 in order to send SDA and SCL to an I2C. I have been able to control the Digital Output, but I have been unsuccessful with generating a clock source to satify the I2C. I am writing this code in C/C++. Any ideas or examples would surely be appreciated. I need a good starting point, but I have not been able to find any useful examples that have worked. I am using the SCB-68 and I am trying to use my digital multi-meter to verify my code. 
    I have looked at the examples provided, but is there a description of these functions that are being called using the NIDAQmx.h? 

    Hello VJohnson,
    The counter will give you control of the clock frequency and duty cycle.  However, this card also has correlated DIO, which means that you can clock your digital lines.  Because of this, you can write a specific pattern (101010) to the buffer and just have it continuously output.  However, you will have to write this in a way that you know what values you're writing based on the part of the clock you're at.  
    My I2C implemetation knowledge isn't the greatest, so I do not know how big each of your communication packets will be, but one implemetation would be to write your data in packets to regulate your SDA and SCL lines.  The WriteDigChan-ExtClk is the best option that shows how to write a digital channel with a clock.  You will just need to modify the DAQmxCfgSampClkTiming( function call.  The second input should be changed from "/Dev1/PFI0" to OnboardClock or NULL.  Hope this helps! 
    ColeR
    Field Engineer

  • Data acquisition and generation with PCI-MIO-16E-4 card help!!!!

    Hello,
    I'm using a PCI-MIO-16E-4 card with labview7 (in using DAQmx)and I
    would like to draw a frequency response.
    My problem is: my program can run correctly in low frequency but, it
    can't work correctly in high frequency (after 2KHz the signal is
    false).
    For verifying my program: I only try to generate and acquire a sweep
    sine. I constate after 2KHz the sine I read dosn't resemble to a sine
    I wrote.
    Can you say me where is the problem?
    Thank you.
    Le Trong Thao.

    "Dr. Imad" wrote in message news:<[email protected]>...
    > my understanding is that you are generating a sine wave (on one of the
    > anlogoutput channels) and you are trying to read the signal.
    > Since you can verify the signal at low frequency, but not at high
    > frequency, it looks like you should increase the scan rate of the data
    > acquistion (if you can, set it to 10 times the signal frequency)
    > You can also use an oscilloscope to verify the signal is what you
    > really generated.
    Thank you for your response.
    I've tried to do it, and I've tried several other possibilities but it
    doesn't work correctly.
    In fact, I think the problem is in my program. Do you have a program
    that works correctly? I f
    ound examples in the help but they don't run
    correctly.
    Le Trong Thao.

  • Using BNC 2110 with PCI 6229

    I am using BNC 2110 on connector 1.
    What are the terminal name equivalences for the M Series device 6229?

    On connector 0:
    EXTREF -> Not connected
    CTR0 OUT -> PFI12
    FREQOUT -> PFI14
    AI HOLD COMP -> PFI11
    EXTSTRB -> PFI10
    CTR1 OUT -> PFI13
    Rest should be as lebeled
    On connector 1:
    ACHX -> ACHX+8
    EXTREF -> Not connected
    CTR0 OUT -> digital P0.28
    CTR1 OUT -> digital P0.29
    PFI0 -> digital P0.16
    EXTSTRB -> digital P0.26
    FREQOUT -> digital P0.30
    SCANCLK -> digital P0.23
    This list may not be complete
    For details compare the connector of an E-Series device with the connector of an M-Series device:
    M-Series Help
    http://digital.ni.com/manuals.nsf/websearch/9477D6DF1FE5A72986256FAB00633DE4
    E-Series Help
    http://digital.ni.com/manuals.nsf/websearch/05A25C65C755D8DB86256FD30081687DMessage Edited by Peter Schlosser on 04-26-2005 06:32 PM
    Message Edited by Peter Schlosser on 04-26-2005 06:32 PM
    Peter Griese
    NI

  • Using 2 SCB-68 on PCI-6229

    I'm having problem using 2 SCB-68s with PCI-6229:
    1) Can I set 1 SCB68 in differntial mode (for Thermocouples with temp reference) and the second SCB68 in single ended mode (no temp reference)? MAX only shows "SCB68 Properties" for one unit.
    2) When using labview, I can run VIs that uses ports on one of the two SCB68's, but not both, i.e, if I attempt to use both ports 0-15 and 16-31 in the same VI, I would get an error about resouce is reserved.
    Thanks!
    Easen Ho

    Hey Easen,
    1.) Are you using NI-DAQ 7.4? The DAQmx Team added support adding an SCB-68 to each of your connectors. You can also configure each connector seperately.
    2.) I assume that when you say "ports", you are refering to the analog channels and not the digital channels. In which case, I assume that the problem is that you are trying to run two different analog input tasks on the same board. This is not possbile because all of the analog lines are viewed as a single resource. However, you can configure the analog lines in different create channel VIs and string them together, in the same task. Then you will have to sort the reading out, as they will be based on two different scales.
    -Let me know if you have any further questions.
    -Justin

  • Set audio in/output with shell command

    Hi.
    I want to switch the systems audio input and output with a shell command. I've found a command that can set the volume. Maybe someone can tell me if this is possible and if so, which command i need.
    osascript -e "set Volume 0"

    I think there's a messy way of doing it in AppleScript by addressing the menus in the System Preferences. But if I were you I would have a look at the tool that someone has created here:
    http://code.google.com/p/switchaudio-osx/
    It addresses CoreAudio directly I think to change the input/output method:
    will@Newton:~/Downloads/SwitchAudioSource-v1> ./SwitchAudioSource
    Please specify audio device.
    Usage: ./SwitchAudioSource [-a] [-c] [-t type] -s device_name
    -a : shows all devices
    -c : shows current device
    -t type : device type (input/output/system). Defaults to output.
    -s device_name : sets the audio device to the given device by name
    will@Newton:~/Downloads/SwitchAudioSource-v1> ./SwitchAudioSource -a
    Built-in Microphone (input)
    Built-in Input (input)
    Built-in Output (output)
    will@Newton:~/Downloads/SwitchAudioSource-v1> ./SwitchAudioSource -c
    Built-in Output
    will@Newton:~/Downloads/SwitchAudioSource-v1> ./SwitchAudioSource -t input -s 'Built-in Input'
    input audio device set to "Built-in Input"

  • How can i output a voltage on PCI-6229 port with visual basic 6 ?

    Hello,
    PCI-6229 card is using DAQmx, that not support VB 6 officially.
    However, members of this forum found out a way to write/read on digital port with vb6 and DAQmx.
    This was working well for me indeed.
    Then, i wanted to output a voltage on AO. I followed the same procedure they used for DI/DO but in vain.
    Apparently, the function DAQmxCreateAOVoltageChan()* causes trouble.
    Using the .exe of the program, i get this error :
    "error -200077 : Requested value is not a supported value for this property."
    Thank you for any ideas that can sort this out.
    * Public Declare Function DAQmxCreateAOVoltageChan Lib "nicaiu.dll" (ByVal TaskHandle As Long, ByVal lines As String, ByVal nameToAssignToLines As String, ByVal min As Single, ByVal max As Single, ByVal units As DAQmxUnits, ByVal customScaleName As String) As Long
    call : DAQmxErrChk DAQmxCreateAOVoltageChan(TaskAnalog, txtChanAnalog.Text, "", Min, Max, DAQmx_Val_Volts, 0)

    Hello,
    What is your buffer size ? The buffer should be 0 or greater than 2. You can get this error if your buffer size is equal to 1.
    Regards,
    Isabelle
    National Instruments France
    Isabelle
    Ingénieur d'applications
    National Instruments France

  • I am trying to make a Phase Locked Loop and I have to produce a continuous output with the incom

    ing data; so I should not use a buffer which is refreshed in every 3 seconds (by this way I am not able to get a continuous output). How am I going to obtain a continuous output signal which uses a continuous buffer (or no buffer maybe), from my DAQ board?When I try to produce a continuous output (a sine wave) according to a continuously changing input data, I see that the sine wave I can get from the DAQ board output has straight horizontal lines between waves. This means the buffer creates a wave, then stops until it fills, and then creates another output sine wave again; so I can't get a continuous sine wave output from the DAQ board. How am I going to deal with it when im
    plementing a PLL in labview.

    ing data; so I should not use a buffer which is refreshed in every 3 seconds (by this way I am not able to get a continuous output). How am I going to obtain a continuous output signal which uses a continuous buffer (or no buffer maybe), from my DAQ board?Greetings:
    It looks like you need to increase your number of samples by quite a bit. Can you supply any more information, such as your sample rate, which DAQ vi you're using, etc?
    Eric
    Eric P. Nichols
    P.O. Box 56235
    North Pole, AK 99705

  • Counter Output Pin on PCI-6229

    I am using NI-DAQmx 7.3 C API with (among others) a PCI-6229.
    I have used DAQmxSetCOPulseTerm() to connect a counter output to a terminal other than the default. It seems to work- the output pulses do, in fact, appear at PFI 6 (the terminal I'm using for testing). But the pulses continue to appear at the default output pin as well.
    Is that expected?
    In order to reverse the situation, I used DAQmxResetCOPulseTerm() just before calling DAQmxClearTask(). The function returns zero, but if I subsequently make a new task to do pulse output from the same counter, pulses appear at both PFI 6 and at the default pin.
    Am I missing something?
    John Weeks
    WaveMetrics, Inc.
    Phone (503) 620-3001
    Fax (503) 620-6754
    www.wavemetrics.com

    Salvador Santolucito wrote:
    Hi John,
    I would suggest using the DAQmxTristateOutputTerminal. I have tried what you are doing in LabVIEW and I'm seeing the exact same results. When I set the default pin to tristate, the counter output does not show up on it.
    -Sal
    Thanks for trying it and confirming what I saw, and thanks for the pointer to DAQmxTristateOutputTerminal.
    John Weeks
    WaveMetrics, Inc.
    Phone (503) 620-3001
    Fax (503) 620-6754
    www.wavemetrics.com

  • Position Control of compumotor linear servo table and GV-U6E with PCI-7344

    I'm referring PCI-7344 (not 7334).
    I have the GV-U6E which is a drive only and does not possess control functionality. the drive only version does not store or use programs. So, serial commands can not be sent through COM port by LabVIEW even though A few basic commands can be emulated.
    I am trying to do position control as I mentioned. For example, the motor should move A point to B point exactly with a certain speed. The points must be aboulte position.
    I would like you to see the reference comment that I have been contacting with in your website forum.
    http://exchange.ni.com/servlet/ProcessRequest?RHIVEID=101&RPAGEID=135&HOID=506500000008000000DD490000&USEARCHCONTEXT_CATEGORY_0=_14_&USEARCHCONTEXT_CATEGORY_S=0&UCATEGORY_0=_14_&UCATEGORY_S=0
    Regard,
    Jin Ho Lee
    ----- Original Message -----
    From:
    To:
    Sent: Thursday, September 26, 2002 5:00 PM
    Subject: Re: (Reference#1549-QYW196) "Position Control of linear servo table and GV-U6E with PCI-7344
    >
    > Note: Your reference number is included in the Subject field of this
    > message. It is very important that you do not remove or modify this
    > reference number, or your message may be returned to you.
    >
    >
    > JinHo. Compumotor is a very popular brand, and I know of several customers
    > who integrate our 7334 with Computmotor drives. However, when you say that
    > the MAX configuration doesn't fit in the compumotor drive settings, are you
    > referring to the specs from the 7344? It looks like the 7344 and the
    > Compumotor will work well together through a UMI break out box. If you're
    > referring to specific commands that the Compumotor receives, I'd have to
    > know more about the protocol. If the Compumotor needs serial commands,
    > then you can send them through the computer's COM port from LabVIEW.
    > Please let me know exactly what kind of configurations you're trying to
    > set. The 7344 can be completely configured in MAX and LabVIEW.
    >
    >
    > Best Regards
    >
    > Kyle Voosen
    > Applications Engineer
    > National Instruments
    > http://www.ni.com/support
    >
    > ------------------------------------------------------------------------------
    >
    > Problem Description :
    > "Position Control of compumotor 406LXR linear servo table and GV-U6E(motor
    > drive) with PCI-7344"
    >
    > "Since I had the answers referring:
    > http://exchange.ni.com/servlet/ ProcessRequest?RHIVEID=101&RPAGEID=135&
    > HOID=506500000008000000DD490000& USEARCHCONTEXT_CATEGORY_0=_14_&
    > USEARCHCONTEXT_CATEGORY_S=0& UCATEGORY_0=_14_&UCATEGORY_S=0
    >
    > Wiring step was done well. However, I still have a problem that MAX
    > configuration doesn't fit in compumotor drive settings. Therefore, the
    > setup is shown below, and I want to know how I can set up PCI-7344
    > configuration in MAX or LabVIEW VI.
    >
    >
    > -----------------------------------------------------
    >
    > Uploaded from device address 0
    >
    > Gemini GV Servo Drive Setup
    >
    >
    >
    > Motor Setup
    > DMTR 1703
    > Motor ID (406-x-LXR-M-x-D13-x-x-x-x-E5-x-x-x)
    > DMTIC 2.48
    > Continuous Current (Amps-RMS)
    > DMTICD 0.00
    > Continuous Current Derating (% derating at rated speed)
    > DMTKE 17.6
    > Motor Ke (Volts (0-to-peak)/krpm)
    > DMTRES 10.10
    > Motor Winding Resistance (Ohm)
    > DMTJ 119.300
    > Motor Rotor Inertia (kg*m*m*10e-6)
    > DPOLE 1
    > Number of Motor Pole Pairs
    > DMTW 40.5
    > Motor Rated Speed (rev/sec)
    > DMTIP 7.40
    > Peak Current (Amps-RMS)
    > DMTLMN 3.4
    > Minimum Motor Inductance (mH)
    > DMTLMX 3.4
    > Maximum Motor Inductance (mH)
    > DMTD 0.000000
    > Motor Damping (Nm/rad/sec)
    > DMTRWC 0.23
    > Motor Thermal Resistance (degrees Celsius/Watt)
    > DMTTCM 20.0
    > Motor Thermal Time Constant (minutes)
    > DMTTCW 0.33
    > Motor Winding Time Constant (minutes)
    > DMTAMB 40.00
    > Motor Ambient Temperature (degrees Celsius)
    > DMTMAX 90.00
    > Maximum Motor Winding Temperature (degrees Celsius)
    > DHALL 1
    > Disable Hall Sensor Checking
    > DMTLQS 0
    > Set Q Axis Inductance Saturation
    > DMTLDS 0
    > Set D Axis Inductance Saturation
    > DTHERM 0
    > Disable motor thermal switch input
    >
    >
    >
    > Drive Setup
    > DMODE 2
    > Drive Control Mode
    > DRES 8400
    > Drive Resolution (counts/rev)
    > DPWM 16
    > Drive PWM Frequency (kHz)
    > SFB 1
    > Encoder Feedback
    > ERES 8400
    > Encoder Resolution (counts/rev)
    > ORES 8400
    > Encoder Output Resolution (counts/rev)
    > DMEPIT 42.00
    > Electrical Pitch (mm)
    > SHALL 0
    > Invert Hall Sensors
    > DMTLIM 1.5
    > Torque Limit (Nm)
    > DMTSCL 1.5
    > Torque Scaling (Nm)
    > DMVLIM 119.000000
    > Velocity Limit (rev/sec)
    > DMVSCL 119.000000
    > Velocity Scaling (rev/sec)
    >
    >
    >
    > Load Setup
    > LJRAT 0.0
    > Load-to-Rotor Inertia Ratio
    > LDAMP 0.0000
    > Load Damping (Nm/rad/sec)
    >
    >
    >
    > Fault Setup
    > FLTSTP 1
    > Fault on Startup Indexer Pulses Enable
    > FLTDSB 1
    > Fault on Drive Disable Enable
    > SMPER 8400
    > Maximum Allowable Position Error (counts)
    > SMVER 0.000000
    > Maximum Allowable Velocity Error (rev/sec)
    > DIFOLD 0
    > Current Foldback Enable
    >
    >
    >
    > Digital Input Setup
    > INLVL 11000000
    > Input Active Level
    > INDEB 50
    > Input Debounce Time (milliseconds)
    > INUFD 0
    > Input User Fault Delay Time (milliseconds)
    > LH 0
    > Hardware EOT Limits Enable
    >
    >
    >
    > Digital Output Setup
    > OUTBD 0
    > Output Brake Delay Time (milliseconds)
    > OUTLVL 0100000
    > Output Active Level
    >
    >
    >
    > Analog Monitor Setup
    > DMONAV 0
    > Analog Monitor A Variable
    > DMONAS 100
    > Analog Monitor A Scaling (% of full scale output)
    > DMONBV 0
    > Analog Monitor B Variable
    > DMONBS 100
    > Analog Monitor B Scaling (% of full scale ouput)
    >
    >
    >
    > Servo Tuning
    > DIBW 1500
    > Current Loop Bandwidth (Hz)
    > DVBW 100
    > Velocity Loop Bandwidth (Hz)
    > DPBW 40.00
    > Position Loop Bandwidth (Hz)
    > SGPSIG 1.000
    > Velocity/Position Bandwidth Ratio
    > SGIRAT 1.000
    > Current Damping Ratio
    > SGVRAT 1.000
    > Velocity Damping Ratio
    > SGPRAT 1.000
    > Position Damping Ratio
    > DNOTAF 0
    > Notch Filter A Frequency (Hz)
    > DNOTAQ 1.0
    > Notch Filter A Quality Factor
    > DNOTAD 0.0000
    > Notch Filter A Depth
    > DNOTBF 0
    > Notch Filter B Frequency (Hz)
    > DNOTBQ 1.0
    > Notch Filter B Quality Factor
    > DNOTBD 0.0000
    > Notch Filter B Depth
    > DNOTLG 0
    > Notch Lag Filter Break Frequency (Hz)
    > DNOTLD 0
    > Notch Lead Filter Break Frequency (Hz)
    > SGINTE 1
    > Integrator Option
    > SGVF 0
    > Velocity Feedforward Gain (%)
    > SGAF 0
    > Acceleration Feedforward Gain (%)
    > -----------------------------------------------------
    >
    >
    > Regards,
    > JinHo"
    > NI Software :
    > LabVIEW version 6.0
    > NI Hardware :
    > Motion Control device PCI-7344
    > Driver Version :
    > no
    > OS :
    > Windows 2000
    > CPU :
    > Pentium
    > RAM :
    > 128
    > Vendor :
    > DELL
    > Customer Information :
    > Jin Ho Lee
    > North Carolina State Univ.
    > US
    > [email protected]
    > Ph: (
    > 919
    > )
    > 512-9929
    >
    >

    Yes, we used an NI PXI-7344 motion control card with an NI UMI-7764 box connected to a Gemini GV-U12E servo drive. (which is a drive only.)
    We did positional control in absolute position mode.
    I can send you an AutoCAD schematic detailing how to connect the UMI-7764 to the Gemini GV servo drive.
    In regard to the Rs232 interface to the GV servo drive,
    the GV drive only model is "configurable" not "programmable". You can create unique GV configuration files with Compumotor's Motion planner then download the configuration via Rs232 using LabVIEW as desired. Or, using LabVIEW via Rs232 you can change individual GV drive parameters on demand,
    or use the GV's two analog outputs back to LabVIEW's analog inputs to measure commanded motor current or torque, etc.etc.etc

Maybe you are looking for

  • Price difference in the latest invoice document and the last change to

    Hi gurus, This is regarding the price difference of the latest invoice document price with respect to the price of last time the document was invoiced.Without using the customer exit or back-end developement. need info if this can be done on the fron

  • DBSystemLoginModule  at Embeded oc4j server

    I followed step Frank's document. I would like to login with Oracle connection userid and password. So I chosed "DBSystemLoginModule". I modified "application.xml", "system-jazn-data.xml". and then I ran my application. I got a 403 Forbidden. But my

  • Super duper or other clone app?

    I want to add a clone app so that I can have an extra layer of backup peace of mind. I've heard of Super Duper but want to know if there are others I should consider. I want ease of use, reliability, etc. Suggestions?

  • Mac Calendar won't sync since Mountain Lion upgrade

    Since updating my Mac to Mountain Lion, the Calendar won't sync to iCloud. My iPhone and iPad calendars are syncing fine with the same account. The error message is "The server responded with an error. Calendar couldn't connect to p01-caldav.icloud.c

  • To setup pricing condition records

    Hi Gurus, Kindly help me in setting up discount condition records. Ex:- Material A full load = 100L and for each multiply of this quantity a 3% discount should be given. With the available scales maintenance possibilities this not working as it trigg