RS-422 PPS Generation in LabWindows/CVI

I'm trying to generate a RS-422 PPS signal using the PXI-8431/8 PXI board, LabWindows/CVI and the standard CVI library functions but I can't find a way of producing a signal that remains HI persistently for X number of ms.  I realize that using the PXI-6602 would be an ideal solution but for my case I'm relying on the RT OS to maintain determinism.  Do you know of a white paper or discussion thread that might describe a reliable way of doing this with the CVI functions and serial boards I have?

What is a "PPS signal"?
Since you are asking about LabWindows/CVI, you might have better luck asking your question in the LabWindows forum rather than the LabVIEW forum.

Similar Messages

  • PDF File Generation in LabWindows/CVI

    Hi,
    I'm looking for ideas on how to automatically generate multiple-page PDF documents in LabWindows/CVI.
    The pages consist of images of panels that have automatically updated some graphs.
    Any ideas?
    Thanks,
    Kirk

    Howdy Kirk,
    Great question. You might try one of these four options:
    Install a "PDF Printer" in Windows. This is essentially a virtual Windows printer that we can print to in CVI using functions like PrintPanel, PrintTextFile, etc.
    Find a commandline PDF creator and call the commandline application from CVI. (See the launchexe.cws example located in the Example Finder under Comm w/External Apps » OS)
    Find a DLL you can call to create a PDF. (See the examples located in the Example Finder under Comm w/External Apps » Using External Code)
    Install a PDF creator and communicate with it through ActiveX if it has an ActiveX server.
    Sorry I can't provide a specific recommendation for PDF software for these suggestions, but I hope it gets you going in the right direction!
    Message Edited by pBerg on 02-05-2010 10:00 AM
    Warm regards,
    pBerg

  • How to write to MS Word using LabWindows/CVI

    HI all
    is there any toolkit available to write to MS Word in LabWindows/CVI. like the report generation toolkit in Labview is there any option in CVI.
    regards
    Regards
    Solved!
    Go to Solution.

    Hi,
    there is an instrument driver (toolslib\activex\word\wordreport.fp) and several examples are shipped with CVI, i.e. word2000demo.cws

  • Conversion of an Instrument Driver from LabWindows/CVI to LabVIEW

    Hello All,
    Conversion of an Instrument Driver from LabWindows/CVI to LabVIEW
    http://zone.ni.com/devzone/conceptd.nsf/webmain/9A93316BEBEDB17786256FA300675A0A 
    But I can not find any hyperlinkt to download
    "LabVIEW Interface Generator for LabWindows/CVI Instrument Drivers"
    Is there any evaluation version for downloading?
    Thanks,
    nonomiya

    So strange,
    I go through three pages but does not find any entry for download,
    hmm...,
    1. After press the hyperlink,
    See Also:
    LabVIEW Interface Generator for LabWindows/CVI Instrument Drivers
    2. and for a resuest info. form.
    3. press download..
    ====
    LabVIEW Interface Generator for LabWindows/CVI Instrument Drivers
    System Requirements
    NI LabVIEW 7.1 or later
    Windows 2000/NT/XP
    Use the LabVIEW Interface Generator for LabWindows/CVI Instrument Drivers to create LabVIEW VIs for VXIplug&play and IVI-C instrument drivers from function panel (.fp) files.
    Instrument Driver Network
    Before using the conversion utility to create a new instrument driver wrapper, please visit ni.com/idnet to see if a LabVIEW Plug and Play instrument driver is available for your device. The Instrument Driver Network (IDNET) provides support for more than 3,000 different instrument models from over 170 different instrument vendors.
    Recommendations
    This utility was created for developers of C-based instrument drivers who wish to provide a LabVIEW interface, but do not develop a LabVIEW Plug and Play driver. By developing the C and LabVIEW interfaces together, it keeps the components synchronized, and eliminates the need for customers to create their own LabVIEW interfaces. Vendors should distribute the LabVIEW wrapper files with the associated VXIplug&play or IVI instrument driver, so that end users do not have to visit multiple web sites to download the complete driver.
    If you are not an instrument vendor, we recommend that you use this utility only if you have instrument driver expertise. Access to the instrument driver source code is preferred, in case you need to edit the C instrument driver in LabWindows/CVI.
    After generation, the wrapper VIs should be tested with the instrument.
    Instructions
    Once you install the software, simply access the utility from the Tools>>Instrumentation>>Import CVI Instrument Driver...menu in LabVIEW. This software replaces the built-in tool and provides feature enhancements.
    For additional information on this utility, view the resources below.
    Readme for the LabVIEW Interface Generator for LabWindows/CVI Instrument Drivers
    Submit your Driver
    Visit the Instrument Driver Network
    nonomiya

  • Am unable to insert table and graphs into word document in labwindow/CVI? can any one help me ?

    Am unable to insert table and graphs into word document in labwindow/CVI? can any one help me ?

    Are you using the Word Report Generation instrument? You can find it in toolslib\activex\word\wordreport.fp under the CVI directory.
    The instrument comes with a sample project that shows how to include table and graphs in a Word document: see samples\activex\word\wordrpt.cws in the samples foder of your CVI installation.
    Proud to use LW/CVI from 3.1 on.
    My contributions to the Developer Zone Community
    If I have helped you, why not giving me a kudos?

  • Rapport cyclique variable - Labwindows CVI - PXI 5411

    Bonjour Madame, Monsieur,
    Je développe actuellement une application sous Labwindows CVI permettant de faire varier en fréquence 3 signaux déphasés de 120° entre eux . Pour cela je dispose de 3 cartes PXI 5411.
    Cependant, le rapport cyclique est fixé à 50% par défaut. Mes signaux doivent avoir un rapport cyclique Th=75%.
    Je ne sais pas comment programmer cela sous CVI.
    Voici mon bout de code (dans moin exemple j'ai fixé la fréquence à 500Hz) :
    int CVICALLBACK COMMANDBUTTON (int panel, int control, int event, void *callbackData, int eventData1, int eventData2)
     ViReal64 DC=75.00; 
     ViReal64 frequence=500.00;
     ViChar GBF1[256]="DAQ::3";
     ViChar ChannelGBF1[256]="0";
     ViReal64 Amplitude1=5;
     ViReal64 DCOffset1=2.5;
     ViInt32  Waveform1=NIFGEN_VAL_WFM_SQUARE;
     ViChar GBF2[256]="DAQ::5";
     ViChar ChannelGBF2[256]="0";
     ViReal64 Amplitude2=5;
     ViReal64 DCOffset2=2.5;
        ViInt32  Waveform2=NIFGEN_VAL_WFM_SQUARE;
     ViChar GBF3[256]="DAQ::7";
     ViChar ChannelGBF3[256]="0";
     ViReal64 Amplitude3=5;
     ViReal64 DCOffset3=2.5;
        ViInt32  Waveform3=NIFGEN_VAL_WFM_SQUARE;
     switch (event)
      case EVENT_COMMIT:
       /* Ressource 1 maître, ressource 2 et 3 esclaves*/  
     if(vi1 != VI_NULL) { niFgen_close(vi1);}  
     if(vi2 != VI_NULL) { niFgen_close(vi2);}
     if(vi3 != VI_NULL) { niFgen_close(vi3);}  
     niFgen_init(GBF1, VI_TRUE,1, &vi1);
     niFgen_init(GBF2, VI_TRUE, 1, &vi2);  
     niFgen_init(GBF3, VI_TRUE,1, &vi3);  
      /* Configuration du maître*/
     niFgen_ConfigureRefClockSource(vi1, NIFGEN_VAL_RTSI_CLOCK);
     niFgen_RouteSignalOut(vi1, "0", NIFGEN_VAL_OUT_START_TRIGGER,NIFGEN_VAL_RTSI_1);
     niFgen_RouteSignalOut(vi1, "0", NIFGEN_VAL_SYNCHRONIZATION,NIFGEN_VAL_RTSI_0);   
       /* Configuration esclave 1*/
     niFgen_ConfigureRefClockSource(vi2, NIFGEN_VAL_RTSI_CLOCK);
        niFgen_ConfigureTriggerSource(vi2, "0", NIFGEN_VAL_RTSI_1);
        niFgen_ConfigureSynchronization (vi2, "0", NIFGEN_VAL_RTSI_0);  
       /* Configuration esclave 2*/
     niFgen_ConfigureRefClockSource(vi3, NIFGEN_VAL_RTSI_CLOCK);
        niFgen_ConfigureTriggerSource(vi3, "0", NIFGEN_VAL_RTSI_1);
        niFgen_ConfigureSynchronization(vi3, "0", NIFGEN_VAL_RTSI_0);   
      /* Configuration et generation forme d'onde esclave 1*/
        niFgen_ConfigureOutputMode(vi2, NIFGEN_VAL_OUTPUT_FUNC); 
     niFgen_ConfigureStandardWaveform(vi2, ChannelGBF2, Waveform2, Amplitude2, DCOffset2, frequence,120);
     niFgen_InitiateGeneration(vi2);
        niFgen_ConfigureOutputEnabled(vi2, "0", VI_TRUE);     
     niFgen_SetAttributeViReal64 (vi2, ChannelGBF2, NIFGEN_ATTR_FUNC_DUTY_CYCLE_HIGH, DC); 
      /* Configuration et generation forme d'onde esclave 2*/
        niFgen_ConfigureOutputMode(vi3, NIFGEN_VAL_OUTPUT_FUNC); 
     niFgen_ConfigureStandardWaveform(vi3, ChannelGBF3, Waveform3, Amplitude3, DCOffset3, frequence,-120);
     niFgen_InitiateGeneration(vi3);
        niFgen_ConfigureOutputEnabled(vi3, "0", VI_TRUE);
     niFgen_SetAttributeViReal64 (vi2, ChannelGBF2, NIFGEN_ATTR_FUNC_DUTY_CYCLE_HIGH, DC); 
     /* Configuration et generation forme d'onde maître*/
        niFgen_ConfigureOutputMode(vi1, NIFGEN_VAL_OUTPUT_FUNC);
        niFgen_ConfigureStandardWaveform(vi1, ChannelGBF1, Waveform1, Amplitude1, DCOffset1, frequence,0);   
        niFgen_InitiateGeneration(vi1);
        niFgen_ConfigureOutputEnabled(vi1, "0", VI_TRUE); 
        niFgen_SetAttributeViReal64 (vi2, ChannelGBF2, NIFGEN_ATTR_FUNC_DUTY_CYCLE_HIGH, DC); 
        break;
     return 0;
    Naturellement, je me connecte sur la sortie SYNC OUT des cartes PXI. Aussi, j'ai essayé à l'aide du Front Panel NiFgen et là j'arrive à faire varier le rapport cyclique (quelque soit le signal généré sur la sortie ARB OUT).
    Pourriez-vous m'aider??
    La fonction ; niFgen_SetAttributeViReal64(vi2,ChannelGBF2,NIFGEN​_ATTR_FUNC_DUTY_CYCLE_HIGH, DC);
    ne fonctionne pas.
    Cordialement,
    Eric

    Bonjour Eric,
    Tu as posté ta question sur la partie internationale du forum.
    Si tu souhaites avoir plus de chance d'avoir une réponse je te conseille soit d'y poser ta question en anglais soit de la poser sur le forum francophone : French forum
    Nevertheless, you should be able to change the duty cycle with the following function:
    ViStatus niFgen_SetAttributeViReal64 (ViSession vi, ViConstString Channel_Name, ViAttr Attribute_ID, ViReal64 Attribute_Value);
    You can take a look at CVI examples and especially to the 5404ClockGeneration. cws example which change dynamically the duty cycle with the function above. (Help>>Find Examples)
    Regards,
    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

  • Visual Studio or LabWindows/CVI?

    I have a bit of a dilemma.
    I currently own Visual Studio 2010, IMAQ Vision Development Module 2013, and Measurement Studio (not sure of version). I currently do all of my programming in VB.net. Because IMAQ VDM is stuck in .Net framework 3.5 and there will be no further .net development by NI, I need to plan for the future. My applications need run on Win 8, 9, 43, or whatever my company decides to migrate to from Win 7.
    My understanding is that the NI modules I currently own will work with LabWindows/CVI. Correct? I also believe I can use them with C++ using the VS IDE. Is this also correct?
    Within my applications I do a lot of interfacing with Excel, writing text files, and interfacing to non-NI devices (cameras, DAQs, scanners, etc). I am able to do these things pretty easily using VB.net using vendor-provided SDK's.
    Therefore, my question is this...given the investment I have in software already, do I gain anything by migrating to LabWindows/CVI? What do I lose?
    I should point out that regardless of the path I choose I will need to bone up on my programming skills in the corresponding language.
    Thanks for all your help!

    Hello Steverino!
    Here are some advantages when using LabWindows/CVI over Visual Studio, which make the product more suitable for various industry-related applications:
    You are correct, LabWindows/CVI integrates with the NI platform: NI hardware and software, like TestStand or LabVIEW (e.g. debugging source code from one software to another, seamlessly).
    NI hardware and third-party hardware connectivity.
    OpenMP support.
    CVI integrates with intrument control.
    CVI Run-Time benefits from User Protection.
    Run-Time checking (e.g. for uninitialized variables).
    Scientific User Interface Controls and GUI Editor.
    Advanced debugging capabilities:
    Remote debugging support from ADE.
    Real-Time debugging support from ADE.
    Memory leak detection using the LabWindows/CVI Resource Tracking Window.
    Just-In-Time debugging.
    Deployment: build custom installers and patches that you can ship as stand-alone easy-to-use installers.
    LabWindows/CVI libraries: Advanced Analysis, Toolbox, Connectivity (Network Variables, Network Streams, DataSocket), etc.
    Support for LabWindows/CVI Toolkits: SQL Toolkit, Vision, PID, RT.
    Regards,
    - Johannes.

  • Software Development Engineer positions at Hysitron, Inc. in Minneapolis (LabWindows CVI exp preferred)

    Software Development Engineer
    Hysitron, Inc. is a premier scientific instrument manufacturer. Founded in 1992 with headquarters located in Eden Prairie, MN we are committed to promoting nanotechnology by developing advanced transducer and control technology. This leadership has made Hysitron the world leader in nanomechanical test instruments. The TriboIndenter®, TriboScope®, Ubi, and other Hysitron innovations have opened new horizons for scientists interested in investigating and understanding mechanical properties of materials at nano-scale. Hysitron fosters an environment and culture where innovation flourishes, teamwork is encouraged, and superior performance is rewarded.
    Hysitron invites applications for multiple software development engineer positions from those aspiring to explore and succeed in the nano world. Hysitron, Inc. is an Equal Opportunity Employer M/F/D/V
    Job responsibilities
    The software development engineers would be responsible for developing test and measurement software applications for nano-mechanical testing instrumentation. Job deliverables would include:
    -          Develop software applications in C based Labwindows CVI for Hysitron Instrumentation
    -          Support the development of applications to address challenges in instrument automation and control
    -          Test software applications using debugging and simulation tools
    -          Perform software releases and software quality assurance activities
    -          Participate in the design of new software products
    -          Perform maintenance activities for existing products
    -          Adapt and deliver on quality software development practices
    Minimum qualifications
    -          BS in Computer Science/ Computer Engineering/ Equivalent Scientific or engineering discipline
    -          Min of 3 yrs experience in Instrumentation software development in an industrial or R&D environment
    -          Expert at programming language C, knowledge of C++
    -          Working knowledge of various communication protocols, e.g. USB, RS232, IEEE, RS485, TCP/IP, Modbus
    -          Knowledge of general software design/documentation processes in test and measurement systems
    -          Proficient problem solving skills
    -          Strong analytical and technical skills
    -          Excellent communication and interpersonal skills
    Preferred Qualifications
    -          Proficient with LabWindows CVI and XML
    -          Working experience with DSP(Code Composer Studio) and/or FPGA level programming
    -          Exposure to digital electronics and instrumentation
    -          Working experience in Robotics interface programming
    -          Experience with Controls/Automation engineering
    Application and Information
    Qualified candidates should send a letter of application and their resumes to (please include ‘SW Engineer’ in subject line):
    Hysitron, Inc.
    10025 Valley View Rd
    Eden Prairie, MN 55344 USA
    Phone: (952) 835-6366
    Fax: (952) 835-6166
    E-MAIL: [email protected]
    Web: www.hysitron.com

    This position is still accepting resumes/CVs.

  • How do I send e-mail to a distribution list using LabWindows/CVI?

    I need to be able to send e-mail to a user-defined distribution list using LabWindows/CVI? Has anyone done this? Any ideas where I could look?

    I commented on something similar to this awhile back.  My issue was that I had the base version and didn't have the Internet classes.  So this external app worked like a charm
    It has a lot of command-line inputer options to use as well.
    http://forums.ni.com/t5/LabWindows-CVI/Need-Help-for-Sending-Email-with-LabWindows-8-5-or-9/m-p/1095...

  • How to use CAN256 and CAN257 in Labwindows CVI?

    I am trying to learn about CAN programming in LabWindows CVI. None of the samples do anything other than generate cryptic error messages. I do not have a card or interface device yet, but reading in the help files I found this:
    "NI-CAN provides a virtual CAN card with two interfaces, CAN256 and CAN257. The two virtual interfaces are connected by a virtual bus. When you write CAN frames to one virtual interface, those frames are received by the other virtual interface, and can be read as channels. This feature allows you to read and write CAN data in the same manner as two real CAN interfaces connected by a real CAN cable. The conversion does not require real NI CAN hardware, and your application is not required to check for specific CAN IDs."
    I modified the Waveform ouput project and add CAN256 to the dropdown in the uir file. However when I run it, I get the same error message as always, error -1074388725.
    Is there an example CVI code someplace to demonstrate the use of these virtual channels?

    Thanks Drew.
    Ultimately, my customer provided me with a WriteCAN256.vi and ReadCAN257.vi that were perfect for my needs. The WriteCAN256.vi along with my NI USB 8473s allowed me to provide data collection on multiple CAN devices and to verify that my Software can handle all data types from CAN devices.
    Note: My customer allowed me to share his .vi's. They are enclosed ...
    Best Regards,
    Don W
    Attachments:
    CanBus Read (Frames)_85.vi ‏55 KB
    CanBus Write (Frames)_85.vi ‏48 KB

  • How to use the checksumdll.lib in LabWindow/CVI to create CRCChecksum();

    Hi All,
    Any one know how to use the checksumdll.lib in LabWindow/CVI to create CRCChecksum() ?
    Thank you.

    Do you ave some documentation about that dll?
    Have you looked into dll properties searching for vendor name? Maybe you can look int vendorìs site and obtain some help.
    Ultimately: are you forced to use that dll or can you use any software to calculate the checksum? There are several CRCs that you can use: provided you know which is the type used you could find an algorithm to calculate the CRC and check an existing one.
    Proud to use LW/CVI from 3.1 on.
    My contributions to the Developer Zone Community
    If I have helped you, why not giving me a kudos?

  • How to set a DMA transfer type for PXIe-6536 in LabWindows/CVI?

    I have a PXI chassis PXIe-1078 with a controller PXIe-8115 running under Windows 7. The digital output board is PXIe-6536.
    I use a function DAQmxSetChanAttribute to set a property DAQmx_DO_DataXferMech to a value DAQmx_Val_DMA, since I want to use a direct memory access data transfer. This wokred well with a PCI-6534 board using the same LabWindows/CVI code before migrating it to the PXIe system.
    Unfortunately, running this code on the PXIe system reports a DAQmx error -200452: "Specified property is not supported by the device or is not applicable to the task".
    The task is created in the following simple way (the board name in MAX is 'Dev1'):
       DAQmxCreateTask ("digTask", &digitalTask);
       DAQmxCreateDOChan (digitalTask, "Dev1/port0:3", "DIG_CHANNELS", DAQmx_Val_ChanForAllLines);
       DAQmxSetChanAttribute (digitalTask, "", DAQmx_DO_DataXferMech, DAQmx_Val_DMA, 15);
    How can I solve this problem? How is it possible to choose between different transfer types?
    Thank you in advance for any hint!

    Hi CavityQED,
    The PCI-6534 is a "Digital I/O" board while the PXIe-6536 is a "High Speed Digital I/O" board, that's why they don't have the same properties.
    By the way you can use DMA transfer with this method :
    http://zone.ni.com/reference/en-XX/help/370520J-01/hsdio/direct_dma/
    Let me know if it helps you.
    Regards.
    Mathieu_T
    Certified LabVIEW Developer
    Certified TestStand 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;}
    LabVIEW Tour
    Journées Techniques dans 10 villes en France, du 4 au 20 novembre 2014

  • How to get bar graph in word in labwindow/CVI ?

    how to get bar graph in word in labwindow/CVI ?

    ashwinic9,
    spawning your question over more and more threads (the present one, this one and this other one) won't give you a faster answer; instead, it will irritate forum users! 
    Especially if you have at your disposal a fast way to perform a test. I pointed you some days ago to word report example, that writes a table to a word document: did you tried changing the graph into a bar graph and generating the report? I have done it for you and the result is OK, as you can see in the attached document.
    Now, since the example works well, there must be something in your particular situation that prevents the graph to be shown; that is: you must add some more data on your actual problem and maybe a small example that exposes the problem.
    But please: keep active only this discussion and let the other threads die! 
    Proud to use LW/CVI from 3.1 on.
    My contributions to the Developer Zone Community
    If I have helped you, why not giving me a kudos?
    Attachments:
    wordreport.doc ‏38 KB

  • I would like to know how to transform an API C++ application in MFC C++ application to use the measurement studio components or Labwindows CVI

    I don t know the way used to transform a C++ with API program in an MFC application using measurement studio or Labwindows CVI.
    Thank you for you help.

    You can use the Measurement Studio Add/Remove Components Wizard to add Measurement Studio components to your C++ application. For more information, see the "Adding and Removing Components from Measurement Studio Projects Using a Wizard" topic in the Measurement Studio reference. You can find it in the table of contents under:
    Visual C++ Help
    Tutorials
    Measurement Studio for Visual C++ 6.0
    If you're using the Measurement Studio update for Visual C++ .NET, this topic will be under:
    Visual C++ Help
    Tutorials
    Measurement Studio for Visual C++ .NET
    - Elton

  • I used to working with Labwindow CVI and i would like to know how can i use the commands "loadpanel" and "Displaypanel " in Labview. Using Invoke Nodes?

    I want to make another panel appears and runs, but i don´t want to use a subpanel. So, i would like to use somenthing similar to Loadpanel and Displaypanel, that you can use in Labwindows CVI, but in Labview, is ti possible?I hope your answers, thank you!!!

    Hi Bichillo,
    I posted an example here.
    http://exchange.ni.com/servlet/ProcessRequest?RHIVEID=101&RPAGEID=137&HOID=50650000000500000014570100&HTHREAD=000087828&UCATEGORY_0=_49_%24_6_&UCATEGORY_S=0
    It demonstrates how to do what you are asking.
    I do not mind you laughing at the code.
    Have fun!
    Ben

Maybe you are looking for