Encoder Feedback with a Servo Motor

I want to use Encoder oder Position feedback with my servo motor in MAX or VIs. How do I do it?
Thanks
Solved!
Go to Solution.

Hi Fregue
what LV Version and HW is in use?
I have seen in your other posts you are using a  NI UMI-7774,NI PCI 7550, and Labview 2010 is this correct?
If the encoder is connected to the UMI you should be able to see the signals in MAX.
You can select the closed loop step
then the encoder is used to control the positon.
Please check if the microsteps from the motion devcive and the encoder steps per revolution are correct
Then you should able to use the encoder.
You can also use the MAX to check if the encoder is connected correct in the interactive tab.
I hope this helps.
best regards
Alexander Glasner
AE NIE

Similar Messages

  • From where in the UMI flex 6c I should give enable to servo motor amplifier/​driver.

    I am using ADS 50/5 maxon amplifier to run the maxon servo motors with Flex 6C. The problem I am facing is that, How to enable the amplifier so that it works only when desired. I have tried by connecting the enable to the inhibit output but it is not working. before connecting to enable Inhibit output is showing 5v but as soon as I connect it , it drops to 1.5V. I am giving encoder feedback to 6C. Motor runs when I directly connect enable to the power supply, but then it runs continuously. Can anybody suggest me about the correct connections.
    regards
    vkmehta

    If the output voltage of the inhibit output drops to around 1.5V as soon as you connect it to the enable input of your servo amplifier you should check the specifications for the enable input of the amplifier. It seems that an optocoupler is used, and if you apply 5V without any series resistance to the input led of an optocoupler the input voltage will be clamped between 1.5 and 2V. Also, the optocoupler may get damaged due to excessive current on the input led.
    Check the manufacturers specifications for correct input wiring. In most cases a series (current limiting) resistor is needed, somewhere around 470 ohms.
    You should also check whether you are applying the correct logic level to the enable input. Some servo amplifiers need a logic 1 (= 5V) on t
    he input, some require a logic 0 (= 0V) to shut down the amplifier.

  • Servo motor encoder pulses/counter data erroneous

    First off, I am very new to using labview.  I am trying to complete a project a former employee was working on.
    For a quick background on what I am working with, I am using a NI DAQCard-6036E connected to a SC-2345.  The SC-2345 is then connected to a load sensor, Omron R88D servo driver, and an omron servo motor.  The servo motor has a incremental encoder with a resolution of around 2048 pulses per revolution.  My labview program includes a counter that records the data from the encoder on the servo motor.  I have been able to get accurate data when testing through the measurement and automation program by manually turning the motor.  Also when running through the specific DAQ assistant I am using for my counter, I am getting correct readings when manually turning motor.  Once I run my complete program, instead of getting 2048 pulses per revolution, I am getting between 34000-36000 pulses per revolution.  The most logical assumption is that I am getting vibration in the motor itself or some sort of noise is interfering with my signal.  I first attempted to change any possible settings through the omron servo driver that might reduce any vibration in the motor.  I attempting changing the rigidity settings, turning on and off the auto-tuning function, and a few other settings specified by the user manual that might cause vibration.  If I turn the rigidity settings as low as possible, I am able to get around 2000 pulses per revolution, but the data is very sporadic. Also, my equipment needs to be very rigid, and with the lowest rigidity setting for the servo driver, I am able to almost stop the motor with minimal force.  My equipment needs to be able to travel at a near constant speed with fluctuations of up to 200 N of force.  Any suggestions on which direction I should go in finding a countermeasure? 
    Thanks
    Solved!
    Go to Solution.

    The model number of the servo motor is R88M-W10030L.  The servo motor rotates at a constant speed.  The program is designed to drive the servo motor connected to a ball screw in one direction.  Once the load sensor reaches a desired load, it will reverse at a constant speed until no load is on the sensor. Throughout, it records load vs. displacement.   I have found a few things that will alter the pulses counts.  If you apply resistive pressure on the servo motor while it is rotating, the pulse output will vary.  Also when you apply pressure to the casing of the servo motor itself, the pulses will often jump around. I was almost certain my false pulses were caused by vibration.  After have no success adjusting settings to reduce vibration(according to the user manual), I ran the program while moving around several wires to see if any were loose, etc... After applying force to the power lines and encoder cable, the program ran several times with an average of 2000 pulses per revolution and would actually subract pulses while going in reverse(what I want it to do); Although the average was around 2000 pulses per revoltion, i saw positive and negative jumps in pulse counts while traveling forward at constant speed.  Today I re-wired the equipment, seperating as many wires as possible.  After the re-wire, the equipment/program is back to sending 34000+ pulses per revolution, and does not subract pulses while reversing.  I have read the 'Using Quadrature Encoders with E Series DAQ Boards' article.  Referring to the article, I am running similar to "method 1".  I am already using a signal conditioning box, but have the counter data run directly through. Do you believe running the signals through a SCC-CTR01 might solve the problems? 

  • Using serial port to communicate with servo motor drive

    I wish to use Labview 7.1 to control a brushless servo motor with encoder (from MCG) and digital drive (from AMC) via the serial port. The application simply involves progressively loading the shaft on the motor in 180 degree increments, and reading the torque. Is this possible? If so, how complicated is this approach? Thanks!

    Communicating with your AMC drive via LabVIEW is no problem. There is an example in the Example Finder (Help >> Find Examples . . ) called Basic Serial Write and Read.vi which will show how to send and receive serial commands. You will have to find out what serial commands your drive responds to by looking at the AMC drive user manual. Certainly there are commands to position your servo motor at various increments and at various speeds.
    As for reading torque, however, I would be surprised if the drive would directly output a torque value. One possibility might be to read the current being sent to the servo and then interpret that into a torque reading - provided that the drive has a serial command to read the current output (normally servo motors have a fairly linear current to torque conversion). Current to Torque conversions are motor specific and the accuracy using such a method might not be to good.
    A more accurate method would be to use a torque sensor (Transducer Techniques sells these along with many other sensor companies) - or to use a strain gauge. Both types of sensors would need to be read in with a DAQ board (see link for National Instruments DAQ boards).
    Hopefully this gives you some ideas - good luck with your project!

  • Accelerometer sense tilt then interface with USB-6008 and generate PWM to control M995 servo motor

    hi everyone,
    currently im doing a final year project in LabVIEW using USB6008. my project involve of sensing the tilt from accelerometer and convert the tilt into PWM to control the turning of servo motor.
    accelerometer that im using is ADXL322 which has Dual axis ±2g sense range
    servo motor that im using is M995. when the servo motor in neutral position it required 1500microseconds, while it turns 90degree it requires 2200microseconds and whilw it turns -90degree, it requires 800 microseconds.
    currently im facing problem in generating the PWM signal to control the operation of servo motor.
    attachment is my VI design that i have done to date.
    the program is about attracting tilt range from accelerometer using USB NI 6008 and then convert the tilt into angle in degree, and after that generate PWM to control two servo motor.
    hopefully there is somebody can help me on this. thanks.
    Attachments:
    FYP.vi ‏253 KB

    currently i need to generate PWM to control servo motor model MG995. but i am facing problem in generating the PWM in between 800usec to 2200usec to control the rotation of the servo motor. is there any example for me to refer.
    below is my VI that i have done to date.
    hopefully somebody can identify my mistake because my VI is not able to turn the servo motor.
    Attachments:
    pwm.vi ‏128 KB

  • Dual encoder feedback on single axis implementation

    I have reel-to-reel transport system connected to a NI 9516 module in one axis. It has two servo motors and two encoders. One encoder is on the motor, while the other is on the linear portion of the reel. Both encoders and the feeder motor are connected to the 9516. The Take-up motor is just set to contant torque. Since I want the ribbon to travel at a constant linear velocity, I have set the primary feedback to the encoder on linear portion, with dual encoder feedback enabled. Is this a proper utilization of the dual feedback mode, with one encoder monitoring linear velocity, while the other is monitoring rotational velocity?
    Linus

    Hello Linus,
    I think the setup that you've shown would work, generally the secondary feedback is used for backlash but you should be able to use the secondary encoder to monitor rotational velocity.
    Dual Loop Feedback Information and Configuration
    Regards,
    Isaac S.
    Applications Engineer
    National Instruments

  • Tuning servo motor problems

    I have a PCI 7344 connected to a UMI and a Ecodrive amplifier, with a linear modul and servo. Feedback is a incremental encoder 16404counts/rev (400counts/mm). When i try to autotune, the servo motor goes berserk, so I have to manually tune it with "Step response".
    I am able to get a nice response curve according to "Understanding servotune" but the problem is, curve starts at -50mS? and at 50mS it seems stable, but settling time is indicated to be 500 - 600 mS, and when i use "wait for move complete.vi" it waits about the same period before it returns "move complete". I was expecting/hoping for 50 - 100mS settling time. How to tune this? I run position mode and there is no problem regarding velocity, acceleration and position feedback, the only
    thing is that settling time is to long. I have no following error. Is there any other way to get a signal exactly when a position is reached.

    Hi, thank you for your answer.
    I still have problems with this, so here is some more questions.
    1. I am getting a perfect curve on the step response, similar to attached picture (1), only with shorter time scale. The step response report under the chart that settling time is 500-600mS, which is settling time (<100mS) and steady state (>400-500mS) together. This period seems to be the same that i am experience with "move complete.vi".
    I have Kp=7 Kd=14 and Ki=1, and i have tried to adjust these values but this is the best i get.
    Does the loop need that time to determine that move is complete?
    2. The move i want to do in my application is a movement about 20000 counts (50mm) in 130mS, wait 100mS and return to start in 130mS, this is possible if I use
    software delay and start return move before first move is settled according to "move complete.vi" But this generate a increasing stop position error each move if I loop this sequense with 100mS rest time. These timings should be possible with the hardware I am using. Any suggestions?
    3. I have set the driver/amplifier in velocity mode (incremental encoder feedback), how is that compared to torque mode in the driver in this case?
    4. It is possible to get a second feedback from the drive (torque, velocity or position from an analog output) but this is 8 bit and less accurate than encoder. I also have a second external encoder for precision measurement and a force cell, but they are only active parts of the range to the servo (under the desired move) is there any other way i could set this up?
    Regards
    Attachments:
    153.gif ‏29 KB

  • Servo motor for shaft oscillation

    I am looking for a servo motor to oscillate shaft periodiaclly at some angle.
    We have quoted one company but the price they are charging for control box I would prefer to build something myself.
    Their servo motor
    Motor rated torque 8.6 Nm
    Rpm 2000
    Continuous stall torque 10.2 Nm
    Continuous stall current 7.29A
    Insulation Class H
    Protection IP65
    Electrical connection Full Connector
    Motor Brake Not Fitted
    Feedback device Sin/Cos encoder
    Cooling Natural
    I have taken a look at NI  webpage and found similar motor AKM52H.
    What sort od drive for it is necessary and what are other components required to Program/Control it.
    What for and where in general should I start looking for this sort of applications?
    In our application we need to oscillate the shaft of the motor to some angle up to probably 20 degree at frequency up to 50 Hz.
    Ideally the motion should be smooth(Sine) and average shaft position should not change(no drift of the shaft position over time).

    Hello 
    If you wish to control a servo motor this can be done quite easily. I'm not sure about the specifics of what servo motor you should get but in terms of the controlling the device this could be done with a wide range of PCI cards or any multifunction DAQ device. I assume for this kind of application you would want D I/O to control the stepper motor and an Ai for the feedback. 
    I suggest calling the office (click the contact NI button for details how) and speaking to an inside sales engineer. They can help you configure your device for your application. 
    Many thanks 
    Dan
    Applications Engineer
    Nation Instruments UK

  • Why does not my servo motor work?

    Hello all,
    I can work my servo motors, so I have two questions.
    Firstly, I'm using PXI-7340 & UMI 7764 to control AC motor on servo motor (TAMAGAWA SEIKI co.),
    But in MAX, motor doesn't work with servo type.And there is no signal between AnalogOutput and AnalogOutputGround.
    Can I connect UMI to the motor correctly?
    Now, I connect encorder signals with changing differential line driver (motor driver) to TTL (UMI) using quadruple differential line receiver.
    Is it right?
    If it is right, why does the motor work?
    Secondarily, when I use stepper type in MAX, the motor work with open-loop. But when I use stepper type in MAX, the motor doesn't work with cloosed-loop.Why?
    Polarities of encorders(A, B, Index) make matches my servo motors by setting in MAX.
    Why?
    Thanks,
    megumi
    Attachments:
    TAMAGAWA SEIKI motor&driver.pdf ‏3063 KB

    Thank you for your reply.
    The "does not work" means that the motor doesn't move with servo type.
    In MAX, there is no error when a target position is less than 999 in 1-D Interactive, but doesn't move. When the target position is more than 1000 and I click "Apply" and "Start", error ramps of "Motor off" and "Following error occurred" are red. And the motor doesn't move.
    I thought that firstly signals of encorder have been wrong because the motor have not moved with stepper mode of closed-loop and feedback of encorder.
    So I would connect correctly wiring of encorders, but the motor doesn't move.
    Wiring of all is "STEP", "DIR", "AO", "ENC A, B and Index bar" respectively. In MAX, type is servo mode, feedback is encorder, kinds of limit switch are not used.
    I supply it if you need the other setup of wiring or information.
    Regards,
    Megumi

  • CompactRIO restart when run VI of NI 9505 and servo motor

    I plan to use NI 9505 to control a servo motor, and the cables are connected according to the manual of NI 9505 (The M+  and M- ports are connected with servo motor directly). I can read the the encoder value from VI, but when I try to control the servo motor by even a very simple VI, the error happens, and the compactRIO restart. When I disconnect the motor and 9505 module, the voltage between the M+ and M- port can be measured, and it  is 24 V. I think maybe the current of motor through the 9505 module is too high, but why and how to solve it. Is there anybody can help me? Thank you very much. 

    If you believe that your motor pulls more than 5A, take a look at this from the NI 9505 product page. It's the first bullet point.
    Continuous current of up to 5 A at 40 °C (or 1 A at 70 °C) at 30 V - for higher power add NI 9931
    The NI 9931 will allow the 9505 to supply up to 7.3A.
    www.movimed.com - Custom Imaging Solutions

  • Servo motors, rpm measuremen​ts and accelerome​ters

    Hello reader,
    Please excuse my question if it seems trivial but I am an undergrad trying to make LabVIEW work! We are running LabVIEW 8 and plan to use USB-6009 to make the measurements. I have read that this device isn't the best for control tasks. Any suggestions?
    For our experiment, we wish to have six controllable spinning cylinders attached to servo motors or stepper motors, which ever works the best. Each cylinder will be spinning at a set rpm which we wish to measure the desired rpm versus actual at all times. If possible, we would like to have an accelerometer functioning as well.
    I was wondering if this is possible with LabVIEW. If so, does anyone have any suggestions on how one might do this?
    Thank you very much for your time!
    -I. Fritz

    ifritz,
    there are several  considerations for choosing a servo or a stepper:
    Inertia of the cylinders
    maximum rpm values
    maximum acceleration and deceleration values 
    The maximum velocity for stepper motors is typically 3000 rpm. At this velocity the torque that the motor can provide has decreased to a small fraction of the specified maximum torque.Stepper motors have very limited capabilities to compensate following errors, so you need to calculate carefully the required torque at a given velocity and compare these values with the motor specs. Additionally you need to make sure, that the ratio between the motor's inertia and the inertia of the load is not too low. To avoid torque reflections this value should be somewhere in the range of 1:1 and 1:5.
    If you find a stepper, that is a good match for your application, the difference between commanded speed and measured speed should be very close to zero (except potentially some micro-oscillations).
    If you need higher torque and/or velocities and dynamic following error compensation, a servo motor should be a better choice, but you will have to tune the system which makes it a bit harder to configure the system.
    In any case the USB-6008 is the wrong choice for the control task, as it's not fast enough and can't be used in real-time control applications.
    Depending on the type of your feedback signal, it might be used for your measurements, but I also doubt, that this is a good choice. According to your post, you need to compare commanded velocity and real velocity. This implies, that you have access to the data of the trajectory generator and that you can acquire these data at the same rate as your feedback signal. This requirement conflicts with most of the available motion control units in the market. The minimum system that could meet this requirement is a real-time system with one ore more PCI or PXI multifunction DAQ  plugin boards (depending on the number and type of output channels that you need to control the motors) and optionally (recommended) the NI SoftMotion Development Module.
    Depending on your accuracy and speed requirments there might be also other solutions, but with the USB-6008 you are definitely on the wrong track.
    Kind regards,
    Jochen Klier
    National Instruments

  • Controllin​g a servo motor to generate constant force

    Hi,
    I have a machine which interacts with foot and I would like to control the motor so that it generates a constant load at the end effector (applied on the foot). I am able to read force and position information. What kind of control algorithm should I use to control a constant force generated by the servo motor? A force feedback controller which feeds back the force information to the controller and update the command signal seems to be ideal but my force sensors could be noisy and I don't know what filters and what cut off frequency I should choose. Can I assume a linear relationship between the currnet command to the motor and the amount of force generated at the output or it could be wrong due to the back emf, friction, etc...
    I appreciate if you could advice.
    I use compactRIO and labview fpga 8.6.
    Thanks

    I think it can be done with a simple force sensor and a DC motor provided you have a means to control the voltage from Analog output.
    The only problem you might encounter is it may oscilate around your force setpoint but you can find some simple ways to smooth that out.
    It really depends (quite a bit) on what control precision your design is willing to tolerate.

  • Difference between BLDC motors and Brushless Servo Motors

    Hi
       I am new to the concept of motors and motor control. I dont know if I have come to the right place but it would be great if anyone can help me in finding out the differences between Brushless DC motors and Brushless Servo motors. Can I use NI motion controllers to control a Brushless DC motor?
    Regards,
    Suman.

    Suman,
    Brushless DC motors and Brushless Servo motors mean typically the same thing. The word "servo" implies that a position feedback resource (e. g. a quadrature encoder) is used for closed loop control.
    You can use NI motion controllers to control brushless motors. Please refer to this thread in the forums for more information.
    Best regards,
    Jochen Klier
    National Instruments Germany

  • Encoder Feedback for Stepper

    Hi !
    I have UMI-4A ( Universal Motion Interfaces) and one steppermotor.
    I have trouble finding a encoder to use with UMI-4A.
    The UMI-4A user guide page 9 :
    The Index puls must occur when both Phase A and Phase B signals are logic
    low.
    Please help me to find a suitable encoder.
    Geir Kåre Refstie
    Scanmar AS
    http:\www.scanmar.no
    [email protected]

    Hi, no worries cheers for the reply! 
    I've managed to get movement to my desired location using NI motion, but my lecturer has requested that I use an incremental optical encoder for feedback, so that for every 2 steps a pulse would be registered or else the program would cease. 
    To achieve this I have written a program from scratch with all the limitations in place that I believe (from what I've read online) should generate the appropriate signals to the stepper motor, and count the steps, though at this point the encoder feedback is not included as the encoder has yet to arrive.  
    My hardware arrived at the beginning of this week and after being set up I have managed to get movement using the NI motion method, but nothing has happened with my pulse creation method. The pulse generation method runs in labview without errors when tested, so I believe the issue im having is with the output to the hardware. I have attached my VI bellow (sorry if its a little hard to follow) but im unsure as to why this isnt working! 
    Cheers 
    Ben  
    Attachments:
    Stepper motor Vi built for feedback no encoder.vi ‏31 KB

  • Can some body help me to develop labview code for generating pulse to drive ac servo motor

    can some body help me to develop labview code for generating pulse to drive ac servo motor... i am using NI 9401 card ....tnx

    Driving an AC servo motor would (I missed AC on the previous msg) requires some complex hardware. This is generally done by drivers specifically designed for this purpose. I doubt you will be able to accomplish this with the hardware you currently have and it might be cheaper to just buy a driver for it and control the speed through the driver.

Maybe you are looking for

  • Motion crashes on startup

    Hello, I'm new to a Mac and Final Cut Studio but I'm willing to learn. I'm using Motion 4.0.0 and it was starting up and working great for the first couple of months. All of the sudden one day it does't want to open. I've tried reinstalling the progr

  • Sending IDoc Batches to SAP: Issue with Header Mapping for SNDPRN

    We are sending batched IDocs from XI to SAP. We need the individual IDocs to reflect different SNDPRN values. Our mapping creates the different IDoc EDI_DC40 record correctly with different SNDPRN values. However, XI wipes out the SNDPRN values in th

  • Can you use a formula field as the default value of a parameter?

    I'm wondering if you can use a formula field as the default value of a parameter. I have an date parameter that is being pulled from a stored procedure. When I run the report, it defaults to the current date and time. I would like it to default to he

  • Compat-wireless

    Ok, I was gonna try and update this seemingly simple AUR package and adopt it. I wanted to make it a daily snapshot for kernels >= 2.6.27. But it seems I am in over my head. First problem is I can't for the life of me figure out how this diff -u *.pa

  • How to get the new dependency SCA's related to  7.4 version with out upgrading NWDI server

    Hi We are in process of upgrading the custom webdynpro and portal components to SAP Portal  7.4. I saw in some discussions that, we don't need to upgrade NWDI , we need to install new JDK version(1.6) to map that jdk to the new track for migrating th