Control DC motor position

Dear member
I dont know how to control the position of motor, if inputing the Motor Driver Voltage into PWMA, I can only control the velocity of the motor, what should I do?

Could you please provide some information on your hardware setup? Make, model number, required inputs etc.
Also, could you please expland on what you mean by inputting driver voltage to PWMA? If you're having trouble controlling the motor, I recommend viewing the manufacturer's datasheet to understand the specifications of the drive/motor's input signals.
Finally, could you please post the VI itself rather than screenshots.
-Mike
Applications Engineer
National Instuments

Similar Messages

  • Controlling Stepper Motor

    Hi All.
    I am pretty new to Labview, and am looking for some advice in controlling a set of two stepper motors.  I have some experience with controlling stepper motors, but previously I used Matlab to create a binary script that was read into Labview to create a motion that I desired for the two motors.  Now I am hoping to control the motors using coordinates read in from another system (not an encoder, but a completely different system).  I basically just want the motors to follow the X and Y coordinates as they are read into Labview from the other system.  Any ideas are appreciated.
    Thanks!
    Jacob

    By LabVIEW driver I'm ssuming you mean the DAQ drivers and I'm also assuming since you're using a DAQ to control the motors you don't have an actual motor controller which means you will have to write the code to perform the function of a physical motor controller.
    Since it sounds like you're starting with a pretty low-level interface, I would say the next step is to write a wrapper that lets you input a) Step Direction and b) No of Steps to make in the direction
    Then you could use that function within what will ultimately be your "motor controller" which will keep track of where the motor currently is based on previous steps, and use that to enable the use of an absolute position your high level input.

  • How to control the cursor position on a text item..

    Hello,
    How can we control the cursor position programmatically on a text item.
    i.e. how do we move the cursor to home or end of the text item.
    TIA,
    Hiten

    If you have an access to metalink.oracle.com, take a look at notes:
    Note 61656.1 (V45) HIGHLIGHTING A REGION OF TEXT
    Note 131028.1 Default Highlighting in Forms (Client Server)
    and threads from metalink forum:
    531481.996 "Select_All not working in 6.0.8.25.2", 153092.995 "Text item cursor position"

  • How do you control the motor in the continuous mode ?

    I use the NI 7334, I would like to create the program to control the motor in the continuous mode. please help me.
    Thank you very mich.

    Hellow water2006,
    Thank you for using our discussion forums.  In regards to continuous mode, are you referring to a constant velocity motion?  There are several examples on our website which will give you a good start on setting this up.  In particular the "Constant Velocity Move" example which is found at http://zone.ni.com/devzone/cda/epd/p/id/1206
    I hope this helps.
    Regards,
    Vu D
    Applications Engineer

  • How to use sinewave to controll my motor run automatically.

    Hello
    I am now tring to use a waveform(sinwave ) to control my motor run automatically .I am using  labview2010 and EPOS50/5. Is there anyone can give me your suggestion? Thanks in advance.The attachment is the program for my epos.
    Attachments:
    epos and sinewaveform.vi ‏34 KB

    PS: My program for epos can work, but I don not know how to combine the sinewave program with the epos program to make motor run automatically.
    Thanks your suggestion in advance.

  • How do I control the motors in a third party usb toy with LabVIEW?

    Any suggestions?

    Hi, if you are only wanting to control motors than you have a lot of options. Use the parallel port with a current driver, use the serial port and a micro to control the motor. If you want to interface the USB device than this is where to get started.
    http://digital.ni.com/public.nsf/allkb/42B604435E3F9604862565E20043CD30
    http://zone.ni.com/devzone/cda/tut/p/id/4478
    LabVIEW 8.2,8.6,2009...still learning

  • Assigning digital port to control stepping motor

    Hi
    I want to control optical encoder, DC motor, Digital camera, Stepping motor, Electric lamp using LabVIEW and Data aquisition card. I am
    facing problem in interfacing stepping motor to DAQ device and configuring the digital output port using measurement and automation explorer.
    I am attaching the document showing configuration of measurment and automation explorer. I want to assign four line digital port for controling
    stepping motor. I want to assign DIO0,DIO1,DIO2,DIO3 for stepping motor. But the signal is going to other ports as well. Please somebody help me
    out of this problem.
    Jayaprakash.
    Attachments:
    Measurment and automation explorer.doc ‏99 KB

    Answered on your other post.

  • Can I control the cursor position

    I'd like to confine the cursors position to a grid when it's within a particular panel. I tried public void mouseMoved(MouseEvent e)
    int x = (int) (GRIDSIZE*java.lang.Math.round(e.getX()/(1.0*GRIDSIZE)));
    int y = (int) (GRIDSIZE*java.lang.Math.round(e.getY()/(1.0*GRIDSIZE)));
    e.translatePoint(x,y);
    } But that didn't work. Can it be done?

    I'm not exactly sure what you want to be done, but, if you want to control the mouse position, you can create a Robot object (check the class in the java docs) and use robot.mouseMove(mouseX,mouseY) where mouseX and mouseY are integers. THIS ONLY WORKS IN APPLICATIONS THOUGH. its too powerful to be able to control a persons mouse, (and keyboard is controllable too with Robot), you can imageine what a person could do lol.. Anyway, you could repeatedly check if the mouse position is on the grid, and if it isn't, use robot.mouseMove, to place it onto the grid.

  • Controling the cursor position

    Hi all,
    I have two x, and y signal outputs from a dll module and I plan to use them to control the cursor position. One problem I'm facing is that my signals are variable enough to cause the cursor to vibrate in stationary setting. So, I use hysterysis (putting threshold) to eliminate these fluctuations but the drawback is that keeping the treshold high enough to eliminate the fluctuations keeps me from getting a nice, smooth movement when the speed of movement (rate of x and y changing) is low. Any ideas or suggestions will be appreciated.
    p.s. I am using "SetCursorPos".dll as you might have already guessed.
    Thank you,
    Elnaz

    The formula for an exponential filter of degree D is the following:
    New Average = (New Value + (D-1)*Old Average)/D
    I usually add a special case for startup so that D is never greater than the number of points. 
    As I said, it is a low-pass filter, much like using a running average.  I usually like it because the state is simply a single value (Old Average) instead of the array of values you have to keep around to do a running average.
    As to the new question of separating high-frequency noise from your high-frequency signal, that is a bit more complicated (obviously).  You should take a power spectrum of the noise to see if there is a characteristic feature you can use (cutoff frequency, strong peaks).

  • How to control DC motor in a simulation loop??

    Hi,
    I am Xiaofei, a beginner of LV. We plan to use feedback control on 2 DC motors using Simulation loop. Now the question is: i am not quite sure if the simulation loop is only a virtual simulation of the system, or it can be used to control the real system. We will use 2 encoders to detect the actual postion of the motor shafts, and the decoding code works well in a while loop, as the attached VI. But we don't know how to make it work in a simulation loop. Whenever we put it in a simulation loop and click "run", there's no response  no matter what we do on the system. So if you know, could you tell me if the simulation loop is suitable for our application and what we can do to run the encoders in it? Thanks a million!! 
    Xiaofei

    Hi Xiaofei,
    Thanks for posting on the NI forums!  Can you tell me a little more about your setup?  What do you mean by Simulation loop?  Do you mean Simulation Module or Simulation Interface Toolkit?  What hardware are you using to control the motors and read the encoder feedback?  What kind of motors do you have?  Can you read the encoder inputs in LabVIEW when you turn the motors by hand?
    Thanks,
    Maclean G.
    National Instruments
    Applications Engineer

  • How to use waveform to control the motor(EPOS2)

    Hello
    I am now tring to use a waveform(sinwave ) to control my motor in labview2010, I am using the EPOS50/5. Is there anyone can give me your suggeation? Thanks in advance.

    need more detail on the hardware (motor and data card) you are using. also What do you mean by using sine wave to control motor? 
    Kudos are (always) welcome for the good post. :-)

  • Using BNC2110 DAQ In Order to Control Stepper Motor

    So basically my goal here is to use LabView to control the direction and the steps of the stepper motor.
    I have BNC 2110 (connected to PC), Lin Engineering's 4218M-54P-04 Stepper Motor, and Lin Engineering's R701 Stepper Motor Driver.
    The specification documentations are attached.
    I know that the driver and the stepper motor are compatible.
    Is it possible to control the motor through Labview(PC) < - -> BNC2110 < - -> R701 Driver < - -> Stepper Motor, without the motor's own controller?
    An example of a controller for this particular motor would be on this website.
    I would much appreciate your support.
    Thank you.
    Attachments:
    4LeadBipolarSteppingDriver-linengineering--4218m-54p-04.pdf ‏652 KB
    DriverR701.pdf ‏379 KB

    Hi jhprks,
    It would appear that the stepper motor controller that you list communicates via RS-232 or RS-485.  You can make serial calls in LabVIEW using the Serial or VISA commands.  It could be something to look into.
    Further, we do have a multitude of ways to accomplish this with our hardware; here are a few resources to take a look at, with the first being an example of how to do this with a multifunction DAQ device:
    Using Software Timed Digital IO to control a stepper motor with DAQmx:
    http://decibel.ni.com/content/docs/DOC-6385
    Stepper motor control via Parallel port:
    http://zone.ni.com/devzone/cda/epd/p/id/3611
    High Performance Stepper/Servo control:
    http://sine.ni.com/nips/cds/view/p/lang/en/nid/10026
    Stepper Motor Theory of Operation:
    http://zone.ni.com/devzone/cda/ph/p/id/248
    Stepper motor Drives:
    http://sine.ni.com/nips/cds/view/p/lang/en/nid/3308
    Adam
    Academic Product Manager
    National Intruments

  • Powders dosing machine? Direct control of motors?

    Hi Everyone,
    I hope this was not posted below but I begin my worki with nxt and labviev and have some problem.
    I want to build a powder doser which consists of two powder feeders (driven by motors) and laboratory weight controlled by RS232.
    The aim is to be able to make precise mixtures in a way that weigh weights empty box, make tare, then one feeder adds some powder (A) weight checks how much was given- if not enough adds some more etc..etc.. then proceeds with powder 2 and make mixture ..
    The problem is that I know that I can write NXT program on labview to run NXT brick, but this would be quite complicated to use - the best way would be to take direct control over motor via NXT- so when I want motor to move few degrees it doesnt have to start program in nxt brick, just do it from LAbview program level... IS it possible ? Can I use NXT brick as a motor controller itself?
    Thanks
    Marek
    Solved!
    Go to Solution.

    Marek,
    This is possible both in the NXT Module 2009 and earlier NXT toolkits.  In 2009 you simply need to write your NXT code in a VI that is not target to the NXT (e.g. it is targeted to My Computer/Main Application Instance).  The NXT VI's know when they are targeted to the computer and automatically send Direct Commands to the NXT brick via USB or Bluetooth.  
    In earlier versions of the NXT toolkit you will have to use the NXT Direct VIs to accomplish the same task, which isn't as seamless as the new method but works just the same.  Please let us know if you have questions as to how to implement this.
    Cheers,  
    Mark
    LabVIEW R&D

  • Stepper motor positioning control system

    hello
    Iam building positioning control system using a stepper motor, and I need to know what are some position sensors available to feedback the position of the stepper motor.. Also I need to know how can use a C code in the labview...For example, if I have an algorithm developed in C; How can I use that code in the labview..
    Thanks
    Shaham

    Shaham,
    Below is a link to several encoders that NI provides specifically for stepper motors.
    Quadrature Encoder:
    http://sine.ni.com/nips/cds/view/p/lang/en/nid/205321
    As far as the C code is concerned, this can be accomplished in two different ways, provided that the code is first placed in a dll file.  
    First, you can import the dll into a project library, by selecting Tools»Import»Shared Library.  This option is good for code that will be used often, as it creates wrapper VIs for each function that can be reused.
    Secondly, a "Call Library Function" node can be used to call a C function from a dll.  This procedure is shown in the following tutorial, and is useful when code only needs to be called a few times.
    http://decibel.ni.com/content/docs/DOC-9069
    I hope this helps!
    Drew
    Drew T.
    NIC AE Specialist

  • Two controllers controlling single motor

    I have a problem in connecting two controllers with a single motor
    I am using two sbRIOs from which I get a  pid output varying from 0volts to 5volts(between AO & AOGND of same board)
    I want to give this output to a fan whose speed is under control through a BNC  cable
    how can I switch the output from one controller to the other in order  to drive my motor without manually changing the terminals....

    Hi Stephen,
    Thanks ever so much for getting back to me about this. Sorry that it's taken me a little while to reply.
    Basically the idea of my project is to produce a particle detector capable of detecting the direction of a radiation source.  The aim is to mount a 'scintillator crystal' within a PVC container so that it can be rotated by the motor.  The scintillator is a material that produces light particles when exposed to radiation.  The theory is that as the crystal rotates the depth of the crystal, relative to the radiation source, will change.  This, in turn, will alter the quantity of light photons produced and this will be measured by a photomultiplier tube which will detect and count the light photons and convert them to a current.  My intention is to convert this signal to a digital output that can be returned to the computer and logged, ideally within Labview. 
    The data should be quick to recover so I don't need to leave a long delay between movements, neither do I need the crystal to move quickly.  I just need to  know it's position at any particular time.  I was hoping to initially reach a situation where the motor can be controlled.  This would allow me to complete the project and log the data manually if necessary, and then alter the program later to provide a data logging function. 
    Thanks again for all of your help
    George

Maybe you are looking for