Pid on constant torque on axis 2 of 7344

I am currently driving a servo on axis 1 of the 7344 in velocity mode that is attached to a spool of line. I want to take the Quadrature encoder of spool and feed it to axis 2 with no servo and pid on tensison for torque that feeds back to axis 1 Possible?

Yes, it is possible to do this in the follwoing way. On axis 1 you will use the Axis Configuration panel in MAX for Axis 1 to set the primary feedback of the axis to ADC 1. Use the ADC Settings panel to set the range of ADC 1 to the range of your tension sensor (bear in mind you might need to apply conditioning to the sesnor if it is not within the 0-5, +/-5, 0/10 or +/-10v range). Once done, make sure that the encoder input you have connected the spool encoder to is configured a the feedback for axis 2. All that you will be left to do is tune your system and be up and running. Please refer to the following documents for more information:
http://zone.ni.com/devzone/conceptd.nsf/webmain/081957EE013C7A4586256B92007818E0?opendocument
http://zone.ni.com/devzone/con
ceptd.nsf/webmain/4B7775373E4AE64986256B6000691505?opendocument

Similar Messages

  • Torque control is not working for my system using analog feedback

    In the test bed, we are testing a brushless DC motor and a load motor generates torque to the test motor. The test motor is running with torque control scheme. They were connected together and I measured the torque signal to feedback the signal and control it. However, I just realized it only control when the torque was static. If I commanded a certain torque value (in this case, counts command), it kept generating that value. However, it did not generate the same torque in different position. I heard NI motion controller could develop torque values by mapping the torque signal with encoder signal. If it's true, the torque generation based on analog feedback, also, needs constraint by rotor position, right? W
    hen I turned on the load machine with constant speed (50 RPM), the torque from the test motor did not provide the constant torque that I commanded. It generated the fluctuated torque values. This means the max torque was generated at one point and decreasing by rotating the shaft and increasing the torque. Keep going in this way. Could you please tell me if this is the correct response when we are using analog torque feedback?
    Thank you.

    Try the following:
    1.-Set your test motor to encoder feedback instead of analog feedback.
    2.-Load a velocity move on the axis for the test motor.
    3.-Set the following error limit on you axis to 0 (disable following error).
    4.-Use the load torque limit function to limit the amount of torque the 73xx PID loop will generate,this value is in volts, so you will need to do a correlation between the voltage output from the controller and the torque reported by your torque cell.
    5.- Start the load motor.
    6.-Engage the cluch.
    7.-Start the velocity move on the test motor, you will see the torque ramp up to the torque limit.
    8.-Call the load torque limit function on the fly to vary the torque setpoint to where you want it.

  • Is it possible to do torque control using Flex Motion?

    I am trying to control the output torque to a motor?
    I know you can do velocity control using FlexMotion, how about torque control?

    To hold a servo motor at constant torque, all you need to do is provide a constant voltage. You can accomplish this using the analog output (DAC) of a FlexMotion board. To gain access to the DAC, configure the axis as an open loop stepper, then use the Load DAC.flx VI to output an analog voltage. The downside to this is that you won't have feedback, so you'll have no way to determine your position.

  • PID - comportements bizarres

    Bonjour,
    Nous venons d'intégrer une installation industrielle dont le controle commande est assuré par un poste de travail Labview2010 et un compactRio Real Time.
    Cette installation régule entre autre 2 chauffes thermiques par resistances (effet joule)...
    Nous rencontrons des difficultés concernant les boucles de régulation PID que nous avons intégrées dans le diagramme du CompactRio Real Time (voir fichier Pid_RTCrio.jpg ci joint pour + de détails) :
    - vous trouverez ci joint (fichier Pid_GraphPBPID.jpg), reportant le comportement de notre régulation; il apparait nettement des pics 0% ou 100% qui nous semblent inopportuns; nous avons tout vérifié et nous pouvons dire qu'il ne s'agit pas d'un problème d'affichage puisque la sortie electrique associée à la sortie PID se comportent comme ce que l'on voit apparaitre sur le graphe.
    - comment éliminer ces pics ? nous avons essayé plusieurs jeux de paramètres PID, rien n'y fait...
    - pour info, nous avons cablé sur l'entrée dt de chaque bloque PID la constante '10'; cela a semble t-il résolu le problème des pics, mais nous ne comprenons pas pourquoi; pouvez nous dire à quoi sert ce paramètre dt du PID ? ; l'aide Labview et le document PID_User_Manual.pdf ne nous permettent pas de trouver l'explication...
    - enfin, nous avons réussi à réguler au 1/10 de degré (ce qui nous satisfait) mais encore une fois nous avons du mettre le paramètre I (intégration) à 5000 minutes !!! le P est à 20 et le D à 1; malgré le document PID_User_Manual.pdf, nous ne comprenons à quoi correspondent ces 5000 minutes ?
    Nous sommes conscients de nos limites en développement Labview et en régulation PID,
    N'hésitez pas s'il vous manque des précisions,
    Nous vous remercions par avance de vos réponses qui nous aideraient vraiment à apprécier votre produit,
    Cordialement.
    Attachments:
    Pid_RTCrio.jpg ‏252 KB
    Pid_GraphPBPID.jpg ‏1097 KB

    Bonjour et merci d'être venu sur le forum de discussions de National Instruments.
    Après une étude du graphe de signal en sortie de votre application, La fréquence d'apparition des pics de tension ( 0% ou 100%) semble constante (en moyenne 18 pics par intervalles de 30 minutes). Une solution enisageable serait de mettre en place une solution de filtrage, de type passe-bas, afin d'éliminer ces pics.
    Concernant le paramètre dt du vi PID, je vous invite à consulter le vi d'exemple de l'aide LabVIEW, intitulé "General PID Simulator" que vous pouvez atteindre depuis l'aide détaillée de la fonction PID ou depuis la recherche d'exemple. Je vous joins une capture du diagramme de cet exemple.
    Ce paramètre s'avère être celui définissant la fréquence d'appel des cycles d'execution, il est donc important de le définir, que ce soit en cablant une constante (ou une commande) sur cette entrée, ou en incluant une fonction d'attente dans votre boucle while (méthode montrée dans l'exemple).
    En éspérant vous avoir aidé avec ces élements de réponse,
    Cordialement,
    Vincent.O
    National Instruments France
    #adMrkt{text-align: center;font-size:11px; font-weight: bold;} #adMrkt a {text-decoration: none;} #adMrkt a:hover{font-size: 9px;} #adMrkt a span{display: none;} #adMrkt a:hover span{display: block;}
    Été de LabVIEW 2014
    12 présentations en ligne, du 30 juin au 18 juillet
    Attachments:
    exemplePID.png ‏21 KB

  • Best way to communicate with IEEE device

    Hi everyone;
    I'm using a Magtrol DSP6001 Dynamometer Controller to control a
    dyno.  It's GPIB, and I'm able to communicate with it swimmingly,
    and I've used it it a number of other apps that I've written.
    My problem now is, that I need to be reading the device as fast as
    possible, but at the same time, setting the torque at regular
    intervals.  Here's a better explaination:
    I'm controlling a stepper motor (which is the main problem, as all the
    other motors I have written apps for using this equipment have been
    brushless servos) for an acceptance test, and part of the test requires
    that the torque be ramped up gradually until the motor starts missing
    steps, and the torque at which this happens is recorded.  The
    problem is, in order to accurately record the torque value, I need to
    be reading the device constantly (not a problem, as the controller is
    capable of providing 100 samples/second), but at the same time
    gradually increasing the torque.
    You can see where the problem arises...  if I were to multi-thread
    this vi, then I would get randomly occurring IEEE errors, but if I have
    the data acquisition in the same loop as the torque increase, then I
    don't get nearly enough accuracy.  Is this something that a
    semephore would be useful for?  I have heard something about the
    IEEE bus being able to handle some sort of syncronization, but I don't
    know much about that...does anyone else?
    Has anyone else had this sort of problem before?
    Thanks, Geoff
    Notes: I'm running the controller in open loop mode... for two
    reasons.  One, it's easier to have a smoother ramp in open loop by
    the nature of the commands used to communicate with it, and two, trying
    to obtain the PID settings for this motor was getting to be an absolute
    nightmare, and I don't think it worth the time, as it's just a ramp,
    not a constant torque.  Or am I wrong in thinking that?

    Thanks for the reply, but I suppose I should have been more clear...  it doesn't exactly answer my question.
    I have two loops, both of which need to communicate with the
    controller.  One loop (top in the image) I need to run several
    times faster than the bottom loop, as I need greater accuracy in the
    readings (more samples).
    The bottom loop will run not as fast as possible - as the top loop will
    - but will run every say, 20 milliseconds.  You might be asking
    why that's not in the image, but that's just the bare bones of what I'm
    trying to do. 
    I can't leave them to their own devices as is, since I'll get random
    GPIB errors because both might be trying to write at the same time, or
    one might write before the top has read, and then the read will return
    an error. 
    I was just wondering what the best way to go about doing this
    is...  I'll try using queues to do this type of operation, sorta
    like you suggested.
    Has anyone ever heard of GPIB being able to do synchronized
    communication?  (as in, is there a way to have two pieces of data,
    one being written and one being read, from the GPIB bus at the same
    time?  Like, being able to read what's been returned by the
    controller, but at the same time writing a new command to the bus?)
    Message Edited by Novatron on 07-28-2005 03:49 PM
    Attachments:
    Example.jpg ‏89 KB

  • TS2948 13" New Air with a Loose Screen

    I have a brand new 13" air that moves on its own past 100 degrees of tilt.  This is very annoying and the machine is two weeks old. Does anyone else have a new 13" Air with a loose screen?  Is this a repairable problem?

    Is it in your lap when it moves? If so then normal
    moves on its own on a flat solid surface?   not normal
    As per Apple.com, the video above doesnt fall within this parameter:
    Learn what you can do if you experience one or more of these issues with the hinges on your MacBook Air.
    Unable to close lid completely.
    Broken or cracked plastic near one or both of the hinges.
    More than one inch (2.54cm) of free play while opening or closing the lid.
    Lid falls freely into closed position from a 30-degree open position. (From a closed position, open the lid approximately 30 degrees and let go.)
    END from Apple.com
    The hinge  in the macbook AIR hinge, a friction hinge.
    Due to the thin nature of the LCD backlit LED monitor on the Air, you would NOT WANT a very tight hinge.
    Why? Excessive hinge resistance would cause the screen to BOW (and possibly crack), especially on a longer fulcrum from the hinge in the case of the 13" screen...... Ergo it is designed logically to be “looser than” a traditional macbook Pro's hinges for a very good reason.
    Friction Hinge: A device with torque between two parts on a common axis.
    A friction hinge is also commonly known as a:
    Constant Torque Hinge, Position Hinge, Clutch, Torque Hinge, or Detent Hinge.
    Common Applications include:
    Laptop computers; lids, doors and enclosures; positioning device for controls, monitors, arms, seat rests
    Contact Apple for in shop diagnostic
    Ive owned 3 Airs, some of the friction hinges are a hair tighter than others, but nearly all (never seen one that wouldnt) WILL IF you lift them up when at a 90 degree angle, ....if you lift up quickly, or tilt it back a bit,...the screen will flop open.
    Friction hinge in the AIR see pic below  (there are NO SPRINGS in these kind of hinges)

  • Is it possible to query Google finance using Flex?

    Google Finance has an open API for programmers. Is it possible to query Google Finance using Flex?
    Regards,
    Pooja Gupta

    To hold a servo motor at constant torque, all you need to do is provide a constant voltage. You can accomplish this using the analog output (DAC) of a FlexMotion board. To gain access to the DAC, configure the axis as an open loop stepper, then use the Load DAC.flx VI to output an analog voltage. The downside to this is that you won't have feedback, so you'll have no way to determine your position.

  • Is it possible to maintain a position while resisting force without burning out a stepper motor?

    I am stretching a sheet of plastic to a certain distance, and need to maintain that distance under constant torque and without movement.

    As long as you don't overload the stepper you will not burn it, usually drives like NI MID's have current limitation, so you set how much current is the maximum to source to the motor.
    Nestor.
    Nestor
    National Instruments

  • Alternative to DMA transfers from Host to FPGA in cRIO 9004

    Hi,
    We are using a cRIO 9004 + 9104 FPGA Chassis + 8x NI 9505 modules to replace an 8 axis Scorbot educational robot controller by a cRIO, but we found some troubles:
    - We are using FPGA IPs for Encoder reading, PWM signal generation and PID control, for the 8 axis. This is done using 3 SCTLs for each axis: one SCTL for encoder reading, one for PWM generation and one for NI Softmotion Splines and PID position control.
    The FPGA VI is successfully deployed.
    - We are using the NI Soft motion in the Real Time controller for trajectory generation and user interface. We are not using another VI on the Windows PC for user interface, just the Real Time processor.
    Here we get the R-T error -63001 (NI RIO FPGA Communications) when deploy the Real Time VI. It seems that our controller doesn't support DMA transfers from the Host to the FPGA.
    Questions:
    - If we cannot use DMA transfers from Host to FPGA, is there any other way to communicate the Host to the FPGA avoiding the R-T error -63001?
    - Is a good idea to use indexed IPs to reduce the amount of SCTLs in the FPGA to just 3 (instead of 24 SCTLs)?
    - Do you have any suggestion?
    Regards,
    Manuel

    Hey there.
    Indeed cRIO 900x series does not support DMA transfers from the Host to the FPGA; that is the reason you are getting an error 63001.
    However it does support data transfer from the FPGA to the Host You can find that information in this KB.
    To transfer information from the host to the rt and to the fpga you can use:
    Host <--> RT
    Network shared variables
    TCP
    UDP
    Data socket
    RT --> FPGA
    Front panel communication
    FPGA -->RT
    User defined variables
    Direct memory access
    DMA FIFOs
    I added some links with examples of each type of communication
    Hope this info helps
    Good luck

  • Target position error

    Hello,
    I have some problem using an analog feedback PID to control a servo axis, both in MAX and in LabVIEW environment, on 7344 controller. The actual steady state axis position is at least 15-20% less than the target position. I have changed PID control loop parameters, but 15-20% difference is the best result. Do you have any idea how can this problem be resolved?
    Thanks.

    Attached you can find a typical example of the system step response
    Attachments:
    step response.pdf ‏290 KB

  • Tuning servo motor to withstand external force of another servo motor

    Hi,
    I have two brushless DC servo motors connected to their own third-party amplifier operating in torque mode. These motors control a reel-to-reel system, where a metal ribbon travels from one reel to the other. One amplifier is connected to the NI 9516, where I am using Softmotion to control its velocity. The other amplifier is set at a constant torque to take up the ribbon.
    The problem I am having is with tuning the velocity-controlled motor to withstand the torque caused by the take-up motor. I need the motor to operate at a constant velocity while able to withstand the forces cause by the pull of the other motor. So far I have been unsuccessful at tuning it to counteract that external force. I was hoping to have Softmotion control the motor's velocity while the motor itself is set in torque mode, but it seems I have to set the motor to velocity mode to solve my problem. Is that the only answer, or is there another way?
    Linus

    Just to let you know, I already solved the problem. It seems that my initial settings for the servo amplifier was incorrect, and that I was providing too little power to the motor. It was set to a low power because it was making a noise when it was set to a normal value. I learned eventually that the source of the noise was not because of the power, but because the initial gain tuning parameters were not set correctly. When I changed the tuning parameters, I was able to supply more power to the motors, which gave it enough torque to withstand external forces.
    I initially used the gain tuning values recommended by the Getting Started the AKD EtherCat Drives guide, even though I was not using the same brand of motor. I though the suggested uning parameters would apply to my brushless servo motor, but it turns out that's not the case.

  • Configuring Oracle Portal to Work with a Reverse Proxy Server

    Hi,
    I have an Oracle Portal 11g instance that works fine but I need to put behind a reverse proxy server.
    I follow the instructions of chapter 6.6 of this link http://download.oracle.com/docs/cd/E15523_01/portal.1111/e10239/cg_advnc.htm#i1051122 with any problem, but when I tried to access to the portal/pls/portal page I get the following error:~
    (WWC-00000)
    ;i=pls%2Forasso%2Forasso.wwsso_app_admin.fapp_process_login%3Fp_app_id%3D; Accept=text/html Accept-Charset=ISO-8859-1,utf-8;q=0.7,*;q=0.7 User-Agent=Mozilla/5.0 (Windows; U; Windows NT 6.0; en-US; rv:1.9.2) Gecko/20100115 Firefox/3.6 Oracle HTTPClient Version 10h X-Oracle-Device.Class=pcbrowser X-Oracle-Device.Name=HTML40 X-Oracle-Device.Orientation=landscape X-Oracle-Device.MaxDocSize=0 X-Oracle-Device.Secure=false PROVIDER=90163575;i=2;n=PORTAL%20CONTENT%20AREA;o=0;R=0; PROVIDER=641081930;i=2;n=DESIGN_TIME_PG;o=0;R=0; PORTLET=6,2237;v=641081930;b=2214;t=700;T=;D=Portal%20Builder%20banner;]=2;A=521_2214_641081930;p=6_2237_6_1_1;i=0;Y=0;e=0;d=0;h=0;a=0;^=0;R=0;c=0;C=0;Z=0;I=5;q=http://hostname:7777/portal/page/portal?_mode=10&_cpage_id=1&_csite_id=6&_cstyle_id=1&_cstyle_site_id=6&_ccalledfrom=1&_cmode=3&_ctabstring=Welcome&_cdisplay_name=Portal%20Builder;V=0; PORTLET=606;v=90163575;b=20;t=15;T=;D=Welcome;]=3;A=606_tabset_90163575;p=606_tabset_90163575;i=0;Y=0;e=1;d=1;h=1;a=1;^=1;R=0;c=0;C=0;Z=0;V=11;n=_ts.rid;t=constant;v=606; n=_ts.tid;t=constant;v=13; n=_ts.pid;t=constant;v=1; n=_ts.sid;t=constant;v=6; n=_ts.tp;t=constant;v=; n=_ts.ts;t=constant;v=Welcome; n=_ts.stid;t=constant;v=1; n=_ts.ssid;t=constant;v=6; n=_ts.m;t=constant;v=3; n=_ts.pr;t=constant;v=; n=_ts.sc;t=constant;v=; TEMPLATE=1;c=text/html;
    #portal-rewrite?a=2;i=6,2237/portal-rewrite#
    #portal-rewrite?a=2;i=606/portal-rewrite#
    Could anyone help me solving this problem.
    This is a very critical situation.
    Thanks,
    Regards,
    rjc

    The solution for this problema was put the proxy server name and IP in the database hosts.
    In Oracle portal it's essencial that database could resolve the name of all componentes, like portal mid-tier, web cache, sso, proxy server, etc.
    Regards,
    rjc

  • DC motor locked rotor condition simulation.

    Hi there.
    Is it possible for multisim, to simulate a locked rotor condition for this motor?
    How?
    Solved!
    Go to Solution.
    Attachments:
    dc motor locked rotor.ms13 ‏208 KB

    Hi there,
    The shaft pin of all motor models in Multisim represents the shaft of the motor in the mechanical domain. The voltage on this pin represents shaft speed in rad/s. The current coming from/going into this pin represents the torque, in Nm, going into/coming from the load that you attach to this shaft.
    Note that because the shaft pin is part of the mechanical network that is modeling the mechanical system, you can (and probably should) apply some sort of load to it to simulate a more practical use-case. 
    Attached is a circuit that shows you how to use the shaft pin to 1)fix the speed (locked rotor) and 2)to apply a constant torque. Ofcourse you can also apply completely arbitrary loads and load profiles. For example you can apply a linear friction load or time varying loads (e.g step change in constant torque). There are many interesting things you can do to study the behavior of electric motors in Multisim.
    I hope that helps. Let me know if you have more questions.
    Max
    National Instruments
    Attachments:
    dc motor locked rotor_loads.ms13 ‏136 KB

  • Following error

    Hi,
    I have a perculiar error.
    Im using a UMI-7774 and a PCI-7344 motion controller with a Compax C3 servo drive. the drive feeds back a simulated encoder signal (digital RS422 5V level differential).
    I have a problem with the Axis 1 on the UMI. The encoder feedback does not update in the 1-D interactive on MAX. On the 3 other axes the feedback works fine with the same drive and motor setup. The settings for all four axes are identical. On axis 1 I keep getting a following error. The problem is the feedback does not update the position.
    The only noticible difference between Axis 1 and the other three is the PWM settings option. I have disabled this option.
    Any suggestions as to why Im not getting feedback on Axis-1?  

    As the other axes work fine this could be either a problem with the drive (encoder emulation), the 7344 or the UMI.
    Here are some things to check:
    Have you monitored the emulated encoder signals with an oscilloscope? Are they ok?
    Please wire one of the working axes to the connector of axis one and the one that is not working to another axis on the UMI. Does the error stick with the motor/drive or with the axis on the UMI? This should tell you where to look for the error.
    If the error sticks with the motor/drive please check the settings, cabling and so on. If it sticks with the axis of the 7344/7774 please double check your MAX settings first. If you really can't find a significant difference (e. g. disabled axis, wrong feedback type,...) there is a chance that either the 7344, the 7774 or the cable are defective. In this case please contact your local NI branch for an RMA.
    Best regards,
    Jochen Klier
    National Instruments Germany

  • Can I use 7344 card to control other dynamic system

    Excuse me
    I want to control a piezoelectric stripe actuator, I just want to input a step function to the actuator and use the 7344 PID controller to control the actuator.
    step input | 7344 | | | step response
    --->o--->| PID |--->|actuator|--------->
    ^ |controller | ---------- |
    | ------------ |
    |___________________________________|
    feedback
    Dose 7344 controller satisfy my request?
    Thank you

    In fact the control algorithm on the 7344 can be used for a variety of control tasks. I have dealt with customers who use the board for controlling force, pressure, piezo stack actuators and piezo ultrasonic motors. As long as your drive provides an analog control input and an appropriate feedback signal (quadrature encoder or analog output) I don't see a reason why the 7344 shouldn't be able to control a piezo stripe actuator.
    I don't know much about the characteristics of a piezo stripe actuator but maybe you will have to consider setting the parameters for a static friction deadzone in the 7344 configuration in addition to the normal PID parameters. You need to set these parameters whenever there is a deadzone around the zero voltage output. Refer to this link for further information about deadzone compensation.
    Best regards,
    Jochen Klier
    National Instruments Germany

Maybe you are looking for

  • Adding a visio diagram "on the fly" to my publishing wiki page

    I am working on an enterprise wiki site collection. and i want to add a view diagram to my wiki pages, to allow users to read them. so i did the following :- I edit the page. Under Web part, I select "Business Data", then "Visio web access". I click

  • How to created an cost element group structure from P&L FSV

    Hi All, My client has changed his financial statement version and I have to change the cost element group structure according to the new profit and lost structure of this new FSV. Do you know any transaction to do this automatically?. For example the

  • Iweb pictures faded

    this problem just started happening in the last week or so for me.  i usually create an album in iphoto then use that to build the photo page in iweb.  everything looks fine until i hit save in iweb.  when i do that all my photos get lighter as if th

  • IMovie 9 can't Sony Camcorder (DSR-370) or deck (DSR-11)

    iMovie 9 not able to recognize a Professional Sony Camcorder (DSR-370) or deck (DSR-1). I just bought an iMac for video editing because of all the great things I heard about the Mac family. Well, I starting to feel sorry I did. Just to see if the iMa

  • More ink = lighter image ?

    A question to those who are familiar with ICC Profile Inspector: Open for instance EuropeISOCoatedFOGRA27.icc Choose A2B1, which means A-to-B1: Input 4 channels CMYK and output Lab. Rendering Intent Media-Relative Colorimetric (RelCol). Choose CLUT A