Position -force feedback program in labview for PI piezo actuator.

I am new to labview. I need to write a labview program to control a PI piezo with force -position feedback.

Okay.
I would recommend you start by looking at the online LabVIEW tutorials
LabVIEW Introduction Course - Three Hours
LabVIEW Introduction Course - Six Hours
Then post back when you have a specific question that we can help you with.

Similar Messages

  • How can I write program in Labview for zbrain kit..??

    Hello everybody
    I need to write the program in Labview fro Zbrain kit. I need to write code for multiple analog input (through multiple channels) that results multiple digital output. I found one refrence code which has one analog input (one channel) and gives one digital output.
    I also need to save data for channels. I have no idea how can I save data for channels.
    I have attached here the base program. Please give me idea how can I understand this program so that I can complete following tasks:
    1. Save data for one channel and later for multiple channels
    2. Modify the number of channels from one channels to multiple channels.
    Actually I have gone through the videos and text based content(basics in labview) but I am unable to write the code.
    Attachments:
    Analog_3_InBlock.vi ‏131 KB

    Hi,
    Attached is an example snipped with some more comments on how to acquire multiple channels on a ZBrain platform that is based on an Analog Devices Blackfin processor. Just drag and drop it into your LabVIEW diagram. More examples can be found here: http://wiki.schmid-engineering.ch/zsystem/doku.php?id=example_zmc_adc-dma_continous. The idea behind dynamic data acquisition on a microprocessor is simple: you define the channels (up to 6x) , sampling frequency (up to 250kHz)  and block sizes (up to 65'000) and start the acquisition. The underlying driver model samples in the data in parallel and the LabVIEW program gets this data. While e.g. processing the data, the underlying driver model continues sampling new data.
    I hope this helped.
    Marco Schmid
    Schmid Engineering
    Attachments:
    snippet_zmc_adc-dma_continuous.png ‏107 KB

  • Forcing a program to wait for a few hundred milliseconds

    Is there any way to stop a program for say 300 milliseconds? If I use ENQUEUE_SLEEP, the code only seems to work at quantums of 1 second, which is a bit too much for our purposes.
    BR,
    Tony.

    In 4.7, there are 2 variants in the documentation.
    In variant 1, the system interprets the field time as an integer. This allows you to enter waiting periods in seconds.
    In variant 2, the system interprets the field time as a floating point number. The internal resolution of the time period is performed in millisecond units. This means that the smallest possible time period is 1 millisecond (i.e. WAIT UNTIL logexp. UP TO '0.001' SECONDS).
    (as described in documentation of WAIT command).

  • I seek exemple of codes in labview for programming a robot

    Hello,
    I have a project and i seek codes programming in labview for move an lego mindstorm.  It's for have an idea on how use labviex for move or turn the robot
    Thanks 

    Have you tried the vi's contained in the NXT Toolkit?  It has most of the NXT-G blocks, including Move and Motor.

  • LABVIEW FOR LINUX

    Hello,
    Presently i am a user of labVIEW 7.1 and 8.2.1 windows version.
    and also working on following hardware.
    SCXI-1001 12 chassis,
    SCXI-1125,SCXI-1124,SCXI-1160,SCXI-1162,PXI-1001,PXI-6251,PXI-6602,USB
    1600,USB 6602,PXI-1044,PXI-6133,PXI-8187,PXI-9257.
    since i am facing the problem of virus and sudden restarting of system,I am planning to switch over to linux version of linux.
    what is ur comment on my deceision?
    which version of linux OS will support all above mentioned products.
    what are the other advantages i can get from LINUX version?.
    Wil i get full programming help as available in windows?
    Can we easily learn the programming by reding the help?

    Hello chandhuu,
    Most of your hardware will be supported except for the USB devices.  The readme file for DAQmx 8.0 for Linux lists which devices are supported and by which Linux OS.
    The LabVIEW 8.5 readme file for Linux would also be helpful, along with this KnowledgeBase article, which lists which Linux OS versions support National Instruments software and drivers.  You will find that programming in LabVIEW for Linux is basically the same as in Windows, so you shouldn't have any trouble switching over if you are familiar with Linux and with LabVIEW.  Personally, I am not too familiar with Linux so I feel much more comfortable with LabVIEW for Windows.  What about just having a dedicated Windows PC that you can take off the network and use with LabVIEW so that you don't have to worry about viruses?
    Regards,
    Clint M
    National Instruments

  • Force Feedback for Lion and Saitek R440 Wheel

    I just got Dirt2 from the App-Store and it works fine.
    Except my wheel a SAITEK R440 Force Feedback just lets me control the car but there is no force feedback with it.
    So I wrote a mail to Feral and got a simple answer:
    "Apple took out the support for force feedback from lion and so it wont work at all.
    We hope Apple would fix this problem one fine day"
    Is this correct?
    If YES: When will Apple support Force Feedback for Wheels (to play Dirt2 at full range)
    If NO: Whts going wrong with my device?
    Can you help me please.
    Andre

    All steering wheels that have force feedback in Snow Leopard you can fix in Lion by using the hint on the vgp3depot forums. However that solution is not offically supported. I don't know if Force Feedback ever worked on the Saitek wheels on the Mac as I don't think Saitek wrote any drivers.
    Edwin

  • Calling a Function node in a DLL to give force-feedback effect to a joystick (using DirectInput)

    Hello,
    I have been working for a couple of weeks on writing a DLL in Visual C++ Studio. My intention is to write an exported function in the DLL to initialize a Logitech Force3Dpro joystick, setup a force feedback effect and run it using DirectInput. I would like to control this force feedback effect (in particular, the intensity of the feedback) from Labview by calling the function in the DLL.
    I followed the FFConst example in Microsoft SDK DirectInput Samples for making an .exe file to setup and run force feedback effects. I have been able to build the DLL successfully with an exported function that can be accessed from Labview by "Call a function node". I tested the function by running simple functions such as addition and multiplication of integers, andconfirmed the fact that the DLL was built correctly. I have also included the DirectInput code for initializing and running the force feedback effect. I am able to compile and build the DLL with no problems.
    The Problem:
    The only problem that I have at this point is with setting SetCooperativeLevel for the DirectInput8 joystick device. I have to provide a top-level window handle to SetCooperativeLevel so that I can give the function exclusive access to the joystick. Since I am not making a window and am building a DLL, I am not sure what handle I am supposed to provide it so that the joystick can respond. I am not sure if passing a handle to the Labview window would work because it is accessing the DLL's function? I tried passing LabView window handle to the function and read the X-axisposition off the joystick, but it read some junk (huge long integer) - which lead me to believe that the problem is something to do with initializing the joystick.
    For all practical purposes, I am a complete novice at DirectInput
    programming and working with Visual C++. Although, I have programmed in
    C++previously. I am sorry for the long message, but I wanted to give a bit of background so that my aim is clear.
    Any help, advice or direction with this problem be very much appreciated. Thank you for your time!
    Cheers!
    Abhishek

    Hi,
    This gave me the nudge in the right direction I needed, after a bit of basic frameset research I've got the desired functionality.
    Huge thanks!

  • Driving the force feedback of an MS joystick

    I'd like to drive the force feedback of a joystick (sidewinder) with Labview 7.0. How can I do ?
    I hope anyone could answer me.
    Thanks

    Hello,
    I
    have been working for a couple of weeks on writing a DLL in Visual C++
    Studio. My intention is to write an exported function in the DLL to
    initialize a Logitech Force3Dpro joystick, setup a force feedback
    effect and run it using DirectInput. I would like to control this force
    feedback effect (in particular, the intensity of the feedback) from Labview by calling the function in the DLL.
    I
    followed the FFConst example in Microsoft SDK DirectInput Samples for
    making an .exe file to setup and run force feedback effects. I have
    been able to build the DLL successfully with an exported function that
    can be accessed from Labview by "Call a function node". I tested the
    function by running simple functions such as addition and
    multiplication of integers, andconfirmed the fact that the DLL was
    built correctly. I have also included the DirectInput code for
    initializing and running the force feedback effect. I am able to
    compile and build the DLL with no problems.
    The Problem:
    The only problem that I have at this point is with setting SetCooperativeLevel
    for the DirectInput8 joystick device. I have to provide a top-level
    window handle to SetCooperativeLevel so that I can give the function
    exclusive access to the joystick. Since I am not making a window and am
    building a DLL, I am not sure what handle I am supposed to provide it
    so that the joystick can respond. I am not sure if passing a handle to
    the Labview window would work because it is accessing the DLL's
    function? I tried passing LabView window handle to the function and
    read the X-axisposition off the joystick, but it read some junk (huge
    long integer) - which lead me to believe that the problem is something
    to do with initializing the joystick.
    For all practical purposes, I am a complete novice at DirectInput
    programming and working with Visual C++. Although, I have programmed in
    C++previously. I am sorry for the long message, but I wanted to give a bit of background so that my aim is clear.
    Any help, advice or direction with this problem be very much appreciated. Thank you for your time!
    Cheers!
    Abhishek
    P.S. I apologize for posting this message in an old thread. I have been following many such threads and this one in particular seemed pretty close to the problem I am currently facing.

  • How can we call a C program in Labview

    Hi
    a) In one of our application we have to call a C progran in Labview. I am not able to call it. Can somebody help me.
    b) When we call a C program ,is  Labview makes block diagram for it.
    Please reply
    Thanking You

    hi there
    well, then we need more information what you mean with a "C program". are you talking about C source code, a command line executable, a high end executable with a GUI, a dll, ActiveX.... what are the parameters you have to pass? what parameters are returned from the "C program"? please post some code....
    as a startup you could search the examples shipped with LV. open the example finder from the runtime menu.
    Best regards
    chris
    CL(A)Dly bending G-Force with LabVIEW
    famous last words: "oh my god, it is full of stars!"

  • LabView for ARM - MCB2300 Audio

    Hi, and thanks for reading!
      My name is Chuck and I'm an undergrad ME student taking a mechatronics course. We were asked to create a proximity alarm with the MCB2300 and an IR proximity sensor. I have the entire program running correctly, but this lab has brought up a couple questions about how to better implement audio with the LabView for ARM processors.
      I understand how interrupts work, and I've seen a couple examples online of using an interrupt with a timed loop, but I believe the current version of LabView (2010) doesn't support that feature any more. I had a couple questions about how to get a feature similar to this to work with LV 2010.
      I was thinking I could have the proximity trigger enable an interrupt that I could use to generate higher quality audio than I am already making with a While - Timer loop. However, I'm not sure how to make an increment in the interrupt VI without using some form of a loop. The solution I'm thinking of at the moment is to make a For loop run once and to have an incrementing integer separate from the loop iteration (which would only go from 0 to 1) that stores its most recent value in the shift register.
      My other question is about playing a sound file through the MCB2300. I wrote a VI that reads a .wav file and writes each sample as the output needed to drive a speaker, but that decompression turns a 10KB .wav file into a 300KB text file. I also don't have a way to really load the text file onto the board. Is there any reasonable way to go about this? I found an example online that processes audio data using the MicroVision software, but I don't want to learn a new language to implement this.
      Sorry for such a long post, I just had a couple questions and was looking for some feedback. Any help would be greatly appreciated.
    Thanks so much!

    charlestrep91 wrote:
    Hi everyone,
    I just got my Labview for ARM cortex M3 evaluation kit and I can't download a simple program to the target. I'm using the Keil ULink 2 programmer and I get this error when compiling/downloading:
    [4:23:16 PM] Status: Error
    SWD Communication Failure
    Error: Flash Download failed  -  Target DLL has been cancelled
    Detail: [UVSC_PRJ_FLASH_DOWNLOAD, MSG: 0X100A, STATUS: Ex.] (1) 
    Status: FLASH download error.
    I have read about this error and NI simply refers to Ulink2 user's guide which has this description for this error:
    Serial Wire Debug communication is corrupted. The target SWD interface is not working properly. Mainly caused by the target: debug block not powered or clocked properly. Avoid Deep-Sleep modes while debugging. Lower the Max Clock frequency in the ULINK USB-JTAG/SWD Adapter section.
    I have tried to "Lower the Max Clock frequency in the ULINK USB-JTAG/SWD Adapter section" but it didn't resolve the problem.
    I have also tried to download the program using the usb port on the dev board but instead I get this error:
    [4:51:22 PM] Status: ErrorUnexpected error occurred.
    [Source: Target is in debug mode
    Detail: [UVSC_PRJ_ADD_GROUP, MSG: 0x1002, 
    STATUS: 0xA] Code: 10]
    What am I supposed to do with that?? I'm wondering if the dev board is defective. And this was supposed to be plug and play...
    Any help is greatly appreciated!
    I'll ask the obvious question, are you intending to use SWD or just download through the JTAG.  Check your settings.  I have not used the ARM with LV, but can you download anything using the Keil software?  Give that a try.  That may tell us where the problem lies.  Try to duplicate your settings in LV from the Keil sw.
    Reese, (former CLAD, future CLD)
    Some people call me the Space Cowboy!
    Some call me the gangster of love.
    Some people call me MoReese!
    ...I'm right here baby, right here, right here, right here at home

  • Can i use NI-7358 to implement a hybrid position force/torq​ue control system?

    Hello!
    I have a manipulator with 5 joints. I will use the NI-7358 motion control card to control them. In my application i also want to implement a force control system by using a force/torque sensor.
    Question:
    Is it possible to use the NI-7358 to implement a force/torque control system? Can i use the analog input channel of the NI-7358 as the force feedback? How is the torque exactly controlled with this card? Do I need buy other hardware to realize the hybrid force/position control?
    Thanks a lot!
    WLAN

    wlan wrote:
    thank you Jochen, i have two ways to get the torque values for each axis:   1. by using a force-sensor on each axis. (direct, very precise) 2. by using the Jacobian of my manipulator structure to calculate the torques (indirect, not precise, maybe correction needed)   do u mean i must  use option "1" as feedback (hardware dependent)? (JK:
    yes, that's the only option with the 7358. The other option will
    require the use of another approch like LV RT or LV FPGA as discussed
    before) how can i increase or reduce the torque when i use the force-feedback and the NI PCI-7358? (JK:
    please refer to the document about analog feedback that I have attached
    to my first answer. With analog feedback you can set torque values
    exactly the same way as you set target positions).
      still a question:   the motors that i am using are:   Motor:              3x Faulhaber 3564 024B DC-Servomotor                          2x
    Faulhaber 2036 012B DC-Servomotor Encoder:         1x HEDM 5500 B14   can i use the Faulhaber BLD 5606 http://www.faulhaber.de/zip_pdf/produkte/kat_2000/​10_steuerungen/dBLD5603_06.pdf Motor Driver with the NI PCI-7358 together (with UMI)?
    (JK:
    The PDF doesn't contain a schematic of the pinout but telling from the
    table this combination should work. Please make sure that you limit the
    output voltage of the 7358 to +-5 V as this is the voltage input range
    for the command input of the BLD 5606. This can be done in MAX)
    Can u take a look?   Thanks for your help!   WLAN

  • Help configuring Thermocouples in LabView for a Mac

    I am trying to set up a LabView program that will read 4 T-type thermocouples attached to a NI 9211 Thermocouple Input and in a NI USB-9162 Hi-Speed USB Carrier. I had no issues when using a PC to set this up with the DAQ-Mx software, but I need to configure a program on a Mac for a laboratory experiment which can record and display the temperatures read by 4 thermocouples. Since Macs do not have the DAQ Assistant, all the tutorials do not work on how to set up an appropriate program. Similarly, Mac only supports the DAQmx Base software, which I have been unable to get to read more than 1 thermocouple at a time (I need to be able to record and display a graph of the 4 thermocouples simultaneously. I was wondering if anyone could offer any assistance on how to appropriately use LABVIEW 2009 to read the thermocouple temperatures, record their temperatures, and display the 4 temperatures on one graph in real time. Thanks.

    I would like to make a clarification about DAQmx Base. Adnan is correct that DAQmx Base is not multi-thread safe, but that limit does not prevent you from acquiring data from more than one channel. Rather, it prevents you from making parallel calls into the driver and forces you to make sequential calls instead. When programming in LabVIEW, make sequential calls by using only one error cluster to connect all of the DAQmx Base calls. You can still have other parallel threads in your VI, but the DAQmx Base calls must all come from the same thread.
    Without seeing your code, my guess is that you're trying to create one DAQmx Base task for each thermocouple channel, which won't work since the 9162 only has one timing engine and the first task will reserve it and lock the others out. Try using the example '<LabVIEW root>/examples/daqmxbase/dynamic/ai/Cont Acq&Graph Voltage-Int Clk.vi' and changing the channel string to "Dev1/ai0:3" and see what happens ;-)
    Joe Friedchicken
    NI VirtualBench Application Software
    Get with your fellow hardware users :: [ NI's VirtualBench User Group ]
    Get with your fellow OS users :: [ NI's Linux User Group ] [ NI's OS X User Group ]
    Get with your fellow developers :: [ NI's DAQmx Base User Group ] [ NI's DDK User Group ]
    Senior Software Engineer :: Multifunction Instruments Applications Group
    Software Engineer :: Measurements RLP Group (until Mar 2014)
    Applications Engineer :: High Speed Product Group (until Sep 2008)

  • Force Feedback steering wheel

    Hi to all,
    I don't know if it is the correct place to post, but I would like to buy a new steering wheel to play with Grand Prix Legends (and its mods) under wine.
    My current steering wheel has two issue:
    1) it has combined pedals (accelerator and brake use the same axis, so if you press the at the same time the output is zero and you cant brake and at the same time use the accelerator to maintain high engine RPM using the cluth which, hower, is not present and I've to command with a button)
    2) it has no force feedback.
    So I would like to buy a new one with these non combined pedals and force feedback. Obviously it must work in my arch linux 64 bit system using wine (maybe in the future I may also start playing with the native vdrift).
    So before buying anew device I would like to know if:
    1) anybody play with racing games and can help me finding a working device;
    2) anybody play with Grand Prix Legends under wine with a Force Feedback Steering Wheel;
    3) this package (https://aur.archlinux.org/packages.php?ID=50236) is needed to use force feedback. I suppose it will install a library, but I don't know if it will be usable also from a 32 bit program (wine) running in my 64 bit system. Does anybody have experience on that?
    Thank you,
    Xwang

    Hi Teemu,
    Like Paul or Sean suggested, using directX, win API, or DLL calls can all provide a solution to your problem.
    I would suggest looking at http://digital.ni.com/public.nsf/websearch/CA411647F224787B86256DD000669EFE?OpenDocument for some more information on reading the joystick/gamepad. To send the force feedback, I would suggest trying to find some more information on the driver provided with Logitech device (maybe searching on google forums) and then calling the functions in LV.
    If you end up using the dll's then you can use DependencyWalker (not an NI utility) to get the function names in that dll and then probably searching web on those function names.
    You are working on a cool application and maybe you are the first one doing it, so do post the solution in the end.
    Regards,
    Ankita
    NI

  • How to force TestStand to ignore LabVIEW errors

    Hi,
    usually where there is an error in the LabVIEW code module TestStand stops and gives a pouup message .
    Is there any way to force TestStand to ignore LabVIEW errors and contiouse testing?
    Thanks

    You can also work more globally - go to the Configure menu item and select Station Options.
    At the bottom of the execution tab, there's a section for what to do on Run-time errors. -> Show dialog, Cleanup, Ignore or Abort.
    Whilst not specific to steps configured to use the LabVIEW adapter (assuming you're mixing some programming languages) that at least get you continuing on to the next step without the dialog.
    If you need to assess if it's specifically LabVIEW modules causing the error, then you need to use the Station, Process Model or Sequence File callback for On run-time error, and the step gets passed as a parameter. That would allow you to work out if the step was LabVIEW specifically and then make a decision as to what to do next.
    Hope that helps.

  • CH Pro Throttle and MS Force Feedback 2 in X3: Terran Conflict.

    Hi all, I posted over in the X3: Reunion Linux thread on the official X Universe boards, but this is probably relevant to some of you here:
    I have managed to get the my CH Products Pro Throttle and Microsoft Sidewinder Force Feedback 2 to work together perfectly in X3: Terran conflict. It was a pain in the backside to do, but here's how:
    First I grabbed the source code to joy-map, the linux userspace joystick mapping program. This allows you to remap axes and buttons on existing devices and assign them to a new virtual device. By default, joy-map sets all the evdev abs_max values to 32767 and all the evdev abs_min values to -32767 for all axes. When I was running it out of the box, this caused the virtual stick to barely register movement, as the raw output from the USB devices was in the region of -256 to 256 for the throttle and -512 to 512 for the sidewinder.... and then the stick twist was -32 to 32, and the hats were -1 to 1. As X3 doesn't let you recalibrate in game, and any joydev calibration with jscal is ignored, this was not much use.
    So I used evtest to find out what the maximum and minimum reported raw values were for each and every axis I was remapping. I then edited devices.c, one of the joy-map source files. Line 127 is the start of the loop which sets up the abs_max and abs_min values for all of the axes, so I commented out the loop and hard-coded the values for each axis in. After that was done, I compiled the mapper, and wrote a map file which combined all of the axes and buttons I needed.
    Finally, I copied the compiled loadmap executable and my joystick map config to my X3:TC directory and modified the last line of testandlaunch to read
    ./loadmap CH-sidewinder.map & ./$1
    killall loadmap
    It's not as straighforward as the CH Products Control Manager software in Windows, and if I change my stick setup (as I plan on doing next payday when I intend to get a CH Fighter Stick and CH Pro Pedals) then I'll have to edit the joy-map source and recompile, but it works, and I can play X3:TC in Linux with mt HOTAS setup.
    If anyone is interested in the hacked joy-map source or the config map file, I can provide them. There's probably a way to get joy-map to set abs_max and abs_min values based on the values supplied by the devices themselves, but that's something I'll work on when I have more time.
    This may be of use to people whose joysticks do not work without calibration, as well as anyone looking to combine multiple stick setups to play X3:TC
    Last edited by 2Karl (2014-09-28 02:17:16)

    Having used Corsair almost exclusively with X58's for the past three years, those you have linked look to be an excellent choice. 3X4GB is a great way to go for 12GB, much better than 6X2GB route.
    As for initial startup, please use just one stick RAM in the primary black dimm slot. I always load Windows & all the drivers that way too. Then, add the other sticks & additional HDD's, etc.
    Added: If & when you decide to OC, open a new thread in the OC & Mod Section of the forum. These are really easy to OC.
    2nd add: Wouldn't mess with the BIOS revisions unless a specific problem is encountered.

Maybe you are looking for

  • In SCM 5.0 Runtime Errors: DBIF_DSQL2_SQL_ERROR Exception: CX_SY_NATIVE_SQ

    Hi, I am getting following shortdump in my SCM 5.0 system with LiveCache 7.6.03 on AIX 5.3. Please help me. Runtime Errors         DBIF_DSQL2_SQL_ERROR Exception              CX_SY_NATIVE_SQL_ERROR Date and Time          01.07.2008 09:20:09 Short tex

  • I want to run java program on windows environment as background process

    Hi all I want to run java program on windows environment as background processSo command prompt return after executing java command and program on background In Linux we can do this easily �but I do not how to do this in windows for example look this

  • Add a button in javabean class

    hi how can i have an add button in my class, i what an action listener in my class which will allow me to have a button to add a record in my javabean,i what to have createInsert button,how can i create that in my class.am not yet connect to database

  • 10.5 freezes during install

    I have a G5 iMac (iSight) who's hard drive died (at least that's what it looked like). So I purchased a new Seagate 250gb drive and installed it. I started up from the 10.5 install disk, formatted the drive with Disk Utility, then proceeded to instal

  • [svn] 1263: Update language selection code so that you can actually select one of the new languages I recently added .

    Revision: 1263 Author: [email protected] Date: 2008-04-16 12:25:02 -0700 (Wed, 16 Apr 2008) Log Message: Update language selection code so that you can actually select one of the new languages I recently added. Modified Paths: flex/sdk/trunk/modules/