Step motor control direction and step

I need to send two signs one for the step and other for the direction. the sign for the step needs to have a certain frequency                                             scheme     
the problem is when the frequency is larger than 5000  what is incorrect  I use a board 6023E thank you

Puplicate Dost:
http://forums.ni.com/ni/board/message?board.id=170&message.id=153180
~~~~~~~~~~~~~~~~~~~~~~~~~~
"It’s the questions that drive us.”
~~~~~~~~~~~~~~~~~~~~~~~~~~

Similar Messages

  • Position drift during the stepper motor controlled back and forth motion

    Hi everyone there,
    I get a headache position drift problem during the stepper motor controlled back and forth motion. I have been wroking on the problem for the last two weeks, and still can not figure it out. So I write down here my problem in hope of getting some clues from those have some experiences in stepper motor motion control.
    My goal is to use a stepper motor to drive a beam flage fixed onto the shaft to go back and forth for a certain angle, and this back and forth motion needs to be stable and reproducible within hours. With the SMD1 stepper motor driver, I only need to send in a pulse train to control the number of steps(the pulse frequency defines the stepping rate), and another pulse to controle the direction (i.e., cw or ccw). To do this, in LabView, I used the counter of the DAQ board to produce a finite pulse train to step the motor, and used one digital line to produce a pulse to switch the direction every 500ms, the timing is contolled by the software.(I used the oscilloscope to monitor these two pulses, the pulse train produced by the counter looks very stable, and delay between the pulse edges of the direction pulse and the pulse train is also very stable within 500ms. There seems no software timing problems at such a long delay.)  And this labview controlled motor appears to work perfectly as I required, the motor steps a defined number of steps at one direction, and then steps back at the origin position. But after running for a few minutes, the back position shifts gradually(I can not observe a obvious shift at the first few minutes) with repect to the origin position(the position I start running). I looked it up at the manual and also the website, I got a clue that this might because the motor steps at the resonace frequency of the motor and hence misses or takes extral steps sometimes. So I changed the steping rate from 1Hz to 1000Hz to see if the shift disappears or gets smaller at certain frequency range, but the shift always exists.
    I did observe the shift got smaller within the same running time when change the step model from full step (1.8degree/step)to half and quarter step model. According to this, the motor did miss steps (or pulses) during running, the quarter step model has smaller shift due to the smaller steps.  But I also noticed that the motor always shift at one direction, no matter I started with clockwise or counter-clockwise, this seems really strange to me. Because the motor should shift at each direction with the same probability if we assume the motor missis steps randomly.
    There is something must be wrong, either the labveiw program or the motor, but I don't even know a clue of this weird shift problem. And because of this, I haven't made any progress in my lab for the last three weeks. So any suggestions could be very helpful for solving this headache and will be really appreciated.
    Thanks a million in advance and Merry Christmas!
    Li

    Hey, Brian Beal,
    Thanks for your quick response. "accel" and "decel" mean acceleration and deceleration, am I understanding right?
    If yes, then I don't have these in my LabView program, I just generate one TTL pulse train and one TTL pulse with LabView and send them into the SMD1 stepper motor driver.
    The pulse train steps the shaft, and the other switchs the direction.
    Yesterday, I confirmed that if the motor steer always at one direction either CW or CCW, then the stepping were very stable, no missing or extra steps happen for hours.
    And I also observed that the motor took one extra step  from time to time when the direction changes. And this only happens when the direction switch from CW to CCW. (bizarre!)
    I guess this indicates that some pulse noise happens when the motor switch the direction too often.  But I just don't have any clue for irregular extra steps.

  • Hardware Selection Step-motor Control

    Hi
    I would like to control step-motors. I have a hardware driver for control but I need digital outputs for direction and start/stop of the hardware driver. May I use NI USB-6501 (24-ch, 8.5 mA) or myRIO?
    Regards

    With the LabJack U3, if you use software to command each digital output transition (output-high or output-low), consider that it takes roughly 600us for each command-response per Section 3.1 of the U3 User's Guide.
    There are a couple other ways to send pulses from the U3.  You can use the WAIT technique where you send a bunch of commands (high-wait-low-wait-high-wait-low ... and so on) to the device in 1 packet, or you can use a timer to generate output pulses via hardware timing.  The timer pulse output can be continuous, or you can use another timer to stop the output after a specified number of pulses.  See more in our Waveform Generation Application Note.

  • Step motor control

    I would like to buy a hardware and a step motor  for control with labview. Could you please offer any configuration . I have to push with this motor a load equal to 1 kg.
    Regards 

    I'm going to assume that you are familiar with National Instruments Offerings for Motion, and that it is not what you are looking for.
    Here is a link, just in case: http://www.ni.com/motion/
    The most basic stepper motor control system will look something like this:
    LabVIEW-compatible DAQ with Digital Outputs, and Counters.  These provide the Step and Direction signals.
    A Stepper motor.  NEMA 23 and NEMA 17 are common choices.  Larger (NEMA 34) and smaller (NEMA 11, NEMA 8) choices are also avaliable.
    A stepper driver with support for step and direction signals in the voltage range that your DAQ can supply.  This is typically going to be 24 VDC.
    The torque capability will depend on the driver, the motor, and the speed that you need to run at.
    Machine Vision, Robotics, Embedded Systems, Surveillance
    www.movimed.com - Custom Imaging Solutions

  • Step motor control with a time delay

    Hi all,
    I am trying to control a step motor to move in vertical direction by Labview2010. The specific Labview function blocks are created by the manufacturer of the step motor. Now the axis can move up/down properly but my question is that I want it to move with a time interval. For example, we set the desired position to 10mm and waiting time 1s. When I click on the start button once only the axis moves 1mm and wait 1s. Then axis moves another 1mm and wait 1s. This action will obviously repeat 10 times until the axis reaches 10mm position.
    I will be very thankful if someone could give me some hints.
    Best regards,
    Nicky
    Solved!
    Go to Solution.

    You're welcome
    You should some more to the code so that it's more reliable. There might be some miscalculation between the travel distance and the resolution, i.e. 5mm travel and 2mm resolution will give the forloop 2,5. This should be either 2 or 3. I'm not quite sure how the for loop handles this. I think it will round to nearest. You should anyways check it out. Also avoid using 0mm.
    Good look with your project 
    Regards,
    Even
    Certified LabVIEW Associate Developer
    Automated Test Developer
    Topro AS
    Norway

  • Step motor control with a time interval

    Hi all,
    I am trying to control a step motor to move in vertical direction by Labview2010. The specific Labview function blocks are created by the manufacturer of the step motor. Now the axis can move properly but my question is that I want it to move with a time interval. For example, we set the desired position to 10mm and waiting time 1s. When I click on the start button once only the axis moves 1mm and wait 1s. Then axis moves another 1mm and wait 1s. This action will obviously repeat 10 times until the axis reaches 10mm position.
    I will be very thankful if someone could give me some hints.
    Best regards,
    Nicky

    You're welcome
    You should some more to the code so that it's more reliable. There might be some miscalculation between the travel distance and the resolution, i.e. 5mm travel and 2mm resolution will give the forloop 2,5. This should be either 2 or 3. I'm not quite sure how the for loop handles this. I think it will round to nearest. You should anyways check it out. Also avoid using 0mm.
    Good look with your project 
    Regards,
    Even
    Certified LabVIEW Associate Developer
    Automated Test Developer
    Topro AS
    Norway

  • CRio Steper Motor Control NI9512 step by step

    Hello,
    I have a project at University, and I need to design a LabView VI to controll a steper motor. Apparently all hardware is installed correctly: cRio-9074 and NI 9512. The motor only needs to turn for a start. Problem is, I am all new to Labview and I have no clue how to programme such a VI. I have completed all the basic tutorials on how Labview works, but I need help on how to direktly control the motor via a VI.
    Pls Help me!
    Solved!
    Go to Solution.

    Hey Thorsten ,
    there is already a post open regardin your topic.Please continue Discussion here:
    http://forums.ni.com/t5/Motion-Control-and-Motor-Drives/Controlling-a-Stepper-Motor-with-LabVIEW/td-...
    Regards
    Roman Imhoff
    National Instruments

  • Control Step Motor in LabVIEW via Step Motor Driver

    I am looking to control a Step Motor (P/N 4023-828) with a Si5580 Driver, both from Applied Motion Products, with a LabView VI.  Applied Motion provides a simple utility program which accepts SCL commands to drive the motor and recieve information about the motor from the driver via a serial connection.
    Preferably, the LabVIEW VI would have an input field, and a running list of output responses.  I am kind of a novice with LabVIEW, but I know how to create simple VIs.  Any reference to tutorials which explain setting up this type of control would also be appreciated.
    Thank you

    Hello Spike22283,
    From your description, if the driver you received from Applied Motion
    Products is a DLL and you know the API for the driver (the inputs and
    outputs for the functions defined in the DLL), then you can use a Call
    Library Function Node in LabVIEW to get the set up you desire.
    In particular, you would first configure the Call Library Function Node
    to call the particular function in the DLL.  Then wire a string
    control into the Call Library Function Node, which would be the input
    command to drive your motor. Then depending on the data type of the
    return value of your DLL function, you can wire an string indicator to
    the output of the Call Library Function Node and see the output
    responses.
    As a reference, I would suggest looking at the shipping example Call DLL.VI (Help >> Find Examples >> Search for "DLL"). 
    This example VI allows you to browse examples of external code (C and
    C++) data types and how they interface with LabVIEW. Each data type has
    an example VI that demonstates the use of the Call Library Function
    Node. To open the example VI for a particular data type, select that
    data type from the list on the left and then press the "Open Example VI
    for Current Data Type" button. The function prototype, the function's
    source code, and any specific details about this example will appear in
    the External Code Information cluster.
    Hope that helps.
    Wendy L
    LabWindows/CVI Developer Newsletter - ni.com/cvinews

  • Using Borland C++ in a vi to use a JR Kerr steper motor controler

    I am trying to develop a vi to move a pitot tube with a steper. The control hardware is a JR Kerr Pic-Step board. The software is borland C++
    Thanks!!

    vi...are you using LabView? "the software is C++" do you mean the drivers for the PIC-Step board? Have you established any kind of communication? What part of the process is fighting you right now?
    Grant M. Johnson
    Project Engineer
    LECO Corporation

  • How to control the step motor in this situation?

    I have a PHI TRIFT3 ToF-SIMS instrument. The instrument comes with a default
    software. However, the software don't offer fine step motor control. I want to control
    the step motor using Labview.
    I got some info from a Japanese engineer of the company.
    The step motor controller is connect to a card in ISA slot. In the default software, I
    can send command like D2000(distance 2000) and A100(acceleration 100) to "port 2"
    to control the motor. I have a manual of the commands.
    However, I don't know how to send command from Labview. Here is a joysticker
    connected to COM1, COM2 is used for other vacuum control. The joysticker can also
    control the motor..Here are some reply from the company about the control.
    "We do not use special driver for control the step motor.
    This is just sending the serial command via RS232C per command instruction I
    sent you before. The only difference is, to simplify the hardware, we just talk to data acq
    module(wave form card) via PAHOST card(installed in ISA bus slot of the PC)
    to passthru the RS232C command to stepper motor control unit.
    If you try to talk to step motor. just send the RS command from Labview
    platform. (of course need to connect the step motor controller from PC,
    default TRIFT PC does not have a spare COM channel, might be need to add
    serial etension card or add the computer for Labview control)
    "TRIFT PC passthru the RS232 command throught ISA bus to PHI data
    acquisition box to stepper motor control.
    Joystick handled by default software , convert to stage movement
    command X and Y then send thru to ISA. "
    I tried to use the Basic Serial Write and Read.vi to send command to COM1 but I always
    get an error"1073807246 ocurred at property node(arg 1) in VISA configure Serial prot(Instr).vi->
    Basic Serial Write and Read.vi  Possible reason: VISA: the resource is valid, but VISA cannot access
    it."   I think this happens because the default software is also open and trying to control COM1.
    What should I do to accomplish the step motor control? Thanks a lot

    Just to start from scratch, have you verified that you can do basic communication with your serial port, ie successfully perform a loopback test?  Please let me know, and we will go from there.
    Logan S.

  • How can I control stepping motor with PCI-7344 & UMI-7764? And I want to know the simplest circuit that I can do by myself?

    Now I don't want to by commercial stepping motor driver, I want to do it by myself. I want to know the simplest driver circuit to drive and control my stepping motor (+5V 4 phases).

    From the 7344's perspective, in open loop stepper mode, the only necessary outputs are the pulse train for steps and a TTL flag for direction. You can also set it for CW/CCW mode, which will output two separate pulse trains: one for clockwise motion, one for counter-clockwise motion.
    If you only need to decode the signals into four phases and not amplify them above 5V, then a small IC might work for you (as long as you don't need a lot of current). A reconfigurable FPGA could be programmed to decode the incoming signal and output the four phases pretty easily. However, I honestly believe your best bet is just to buy a recommended amplifier for the motors.
    Good Luck
    Kyle V
    Applications Engineer
    National Instruments

  • How can I control my step motor

    I am using a 6006-DB 3-mothor driver and a NEMA step motor model 405-SM, both from AMSI corp. I would like to control my step motor using LabVIEW. We use the LV. 5.1.1 version and we have a PCI-MIO-16E-40 as adquisition card.
    The sistem I want to built is to control my step motor and while turning detect the intesity variation on a photodetector which is conected to my adquisition card.
    I wonder if somebody has an idea how to do that.
    Thank you in advance
    Daniel Hernandez

    Ok I understood, I can use my PCI-MIO-16E card to control my steper motor driver, I will try to do that. But, if I use a DB-25 connector, how can I use my PCI card??
    I was thinking to use the parallel port, directly, to conect my steper motor driver.
    I attache some VI someone passed me. (It use a Setbit.vi and out port.vi)
    Attachments:
    MoteurGOTO6007-DB.vi ‏81 KB
    MoteurGOTO.vi ‏87 KB
    Commande_moteur.vi ‏10 KB

  • Using FieldPoint to control step motor

    I am having problem positioning a step motor. Here is what I am using.
    Step motor 200 stp/rev. with a 500 line quadrature encoder
    A SS2000D6 SLO-SYN Drive
    Field Point FP-Quad-510 for the encoder
    FP-PG-522 for the Pulse generator
    FP-DO-403 for signals for the SLO-SYN drive
    FP-DI-330 for digital input signal for switches
    I am able to drive and control the speed and direction of the step motor also display its position. But I am having problem when I want to move a position and stop. I can see the counter working when it reaches the number I want to stop it flys by. If I slow down the step motor way down the encoder moves so low it counts in batches of 2 or 4. Does any one have an idea what can I try or do.

    Hello Toro,
    It's good that you listed all of your FieldPoint hardware, but which of it is relevant for this issue. From what I can tell, and please do correct me if I'm wrong, is that the FP-Quad-510 and FP-PG-522 is of relevance. You determine the location you want it to move to, and you then start the pulse generation according to the reading from the FP-Quad-510. Is this correct? The problem isn't the quadrature encoder measurements, but the pulse generation.
    Does the position change ever stop? How do you currently have it programmed such that it knows to stop at a certain position. There is a command used for the FP-PG-522 which will stop it's pulse generation immediately or on its next pulse. Page 8 of the FP-PG-522 Operating Instructions read:
    The Control command supports two actions: Stop Immediately and
    Stop After Current Pulse. Both of these actions can stop a finite
    pulse train. Stop Immediately stops pulse generation immediately.
    The channel goes into the idle state, and, if the output for the target
    channel is on, it is turned off. Stop After Current Pulse ends the
    current pulse train after the current pulse is finished.
    =====
    Let me know your thoughts, questions, and comments.
    Jared A

  • Closed loop control of step motors possible with 7344?

    Hi All
    I have been looking around here for a while for an answer to this question.
    For me, a closed loop control system is correcting for following errors all the time, also when the move is complete.
    If the load on a system changes, there will often be a need for compensation in order to keep the position right. Then you need a closed loop control system.
    I have made a system using DC motors with a 7342 controller. We are in the process og getting a new similar system, where the manufacturer chosed stepmotors in the believe that it can be used in closed loop.
    Is it really true that the NI version of closed loop is only performing a what you call a "pull-in" at the end of the move in order to correct for lost steps or flexibility of the connection between motor and object/encoder?
    I would call this "backlash compensation" or something like that.
    Why dont you make a real closed loop option. The control voltage from your servo motor control, could be fed into a voltage-frequency converter with a matchin sign signal.
    This shouldn't be too complicated to accomplish.
    /b

    You are right. NI motion control boards don't apply a control algorithm
    during moves when configured in closed loop stepper mode. In this mode
    the board monitors the following error during the move and generates an
    error when the following error limit is exceeded and they start the
    pull-in moves at the end of the move if necessary.
    If you really want to do PID control with stepper motors you still
    could connect an external V/f converter to the DAC outputs of the board
    and control the axes like DC motor axes. Some vendors implement this
    feature on their board but NI has decided not to do that as we don't
    think that this approach provides a good solution. Here are some reasons:
    The most important issue is the fact that you could easily exceed
    the maximum rate of change of the motor frequency in the case that the
    following error increases during the move. For a DC motor this would mean that the
    voltage of the controller increases to compensate for this error and
    the motor will follow - probably with some delay, but it will follow. For
    the stepper this could mean that the acceleration becomes so high
    that the motor stops immediately as it can't follow with a delay like a DC motor. What
    should the controller do then? Restart the move automatically? Generate
    an error? There is a big chance that you end up with a system moving in a stop and go mode.
    The second issue is related to the control algorithm itself. The transfer function of a stepper motor is not really linear so it will be quite hard to find good tuning parameters. A DC motor can be tuned by analyzing the step response and the Bode plot. For the reasons that I have described in 1.) this won't work for a stepper so how should you tune it?
    I have talked to some  motion control engineers who have tried to control steppers with a PID algorithm and they all agree that this is a real pain and it's not recommended.
    So if your system requirements involve online following error compensation I strongly recommend using a DC motor.
    Best regards,
    Jochen Klier
    National Instruments Germany

  • Control step motor explanations

    Hello,
    I would like to control a step motor with computer through a cRio solution and a module: NI9512
    I already saw what can be requested for the experiment:
    A controller Ni cRio 9073, in order to plug the module
    A power supply 24VDC
    Step motor
    Nevertheless I noticed that I could also have needed a Step driver (like the P7000). What is its role? What the difference between the Step driver and the module NI9512?, Does I required the both ?
    Thanks you for your responses,
    Regards

    Hi,
    one 9512 provides connectivity for one stepper axis. The same is true for the P70530 drives.
    Using the drive interface modules is probably the most reasonable method to drive stepper motors with a cRIO system. It requires no FPGA programming and provides a very easy to use API (NI-SoftMotion). You may want to have a look at how to configure and program such a system in this short webcast.
    Of course you also could use digital I/O modules and FPGA programming, but this would result in significantly more work. With the drive interface modules you should be up and running in several hours (including cabling and configuration). With the manual approach the setup could easily take several days to weeks (consider extensive testing and recompiling of your code). If you need to meet very special requirements, this is still worth the efforts, but for standard stepper motion control tasks I strongly recommend to use the drive interface modules.
    Kind regards,
    Jochen Klier
    National Instruments

Maybe you are looking for

  • Field Exit is not working in ecc6.0

    hi all, i have upgraded my system from 4.7 to ecc6.0, there was a field exit 'FIELD_EXIT_QLGO_VM04_A'  in 4.7 for QA32, but problem is that it was working in 4.7 but not working in ECC6.0 while codes are the same. can anyone help me that what shud i

  • Not able to invalidate session

    I am storing an attritbute in a session as set.setAttribute and do sessionName.invalidate() when I hit logout. However, next time when I access the servlet, I am still able to retrieve the value of the attribute set last time which should be null. Pl

  • Since updating my IPhone 4 to IOS 6, I am unable to pull up the list of Purchased apps under the Apps/Updates.

    Since updating my IPhone 4 to IOS 6, I am unable to pull up the list of Purchased apps under the Apps/Updates.  I suspect I am too low on RAM to load the entire list of purchased apps.  Any solution?

  • Adobe no longer updates automatically

    I bought a new PC 4 months ago w/ Win 7: 64-bit.  On my old XP it used to inform me automatically of available updates, it doesn't appear to do that on my new PC and its wreaking havoc w/ my online games.  Can't seem to find any settings that allow m

  • User Exit After Saving in CO11N (After Get Confirmation counter AFRU-RMZHL)

    Hi All. I need a user exit for PP confirmation (T-code co11n) what I need is action after saving which gives me confirmation counter for table AFRU colum RMZHL. I need all data that will be inserted in table AFRU since I want to duplicate Afru wth Z-