Torque Control on componet at different temperatures

Greetings,
          I am in the process of building an application with Motion Control with change control modes from position control to Torque Control.  Here is my situation.  I am going to be twisting a rubber component from +- X Nm's at a particular frequency.  However the component will be under temperature extremes and as the component heats up and cools down the stiffness changes therefore it may take more or less angle to achieve programmed torque.  I still have to keep my frequency unchanged during the transition though.  Is there automatic error compensation for velocity to keep the frequency unchanged even though the distance required to achieve Torque setpoints will change?  I hope this is Clear enough to get a handle on what I am trying to achieve.  I have no problem with Position Control, it is essentially the Torque Control frequency compensation that is what I need advice on.
Regards,
        Wade

Wade,
for this purpose you will have to change the feedback for your motor to a signal that is proportional to torque. One option is to use a torque sensor with an analog output signal in the range of +/- 5 V or +/- 10 V. You can use an NI-Motion control device in analog feedback mode then and instead of defining a position profile you could define a torque profile then (e. g. by using contouring mode). With such a setup the motor will travel as far as it is needed to generate the torque profile, regardless of the travel distance.
To learn more about analog feedback, please have a look at this thread.
Regards,
Jochen

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.

  • How come the volume of other programs are lowered while one FaceTime? I exchange media with friends and colleagues and I can barely hear anything. There should be a way we can manually control the volume of different programs

    How come the volume of other programs are lowered while one FaceTime? I exchange media with friends and colleagues and I can barely hear anything. There should be a way we can manually control the volume of different programs

    I own the movies and I want them to stay in my iTunes library basically forever.
    But in both cases the file name no longer shows in the movie list, so I don't know how to re-download it from the Cloud.
    iTunes prefs > Store > Show iTunes in the Cloud purchases.
    This will show all your iTunes purchases in your library with a cloud icon down arrow. Click the icon to redownload or click on Play to stream without downloading.
    Also see this , -> Download past purchases
    and techncially, you don't "own" the movie, You simply have a license to use it.
    Yet the first thing iTunes does when you hit the delete key is tell you that it will remove the movie forever from all devices and the library.
    Actually, no it does not tell you that.
    FYI: You should keep copies of all yoru iTnue spurahses as the labels/movie studios/copyright owners can pull their product at anytime and it won't be available to redownload.
    Suggestions here -> http://www.apple.com/feedback/

  • Why does the Ni-Motion Torque-Control Program give me such an oscillation???

    Hello,
    I really hope to find somee help here...I have a UMI-7744 and I would like to do force control for a servo motor. I have tried the NI-Motion example "Torque Cntrl Using Monitoring Force"...it seems to be quite easy - it constantly measures the current force and compares the ADC-values with the target force. The difference between the two is then new relativ position...
    When I test it with an actuator that does not touch the workpiece (current force==>0N) and then tell it to apply 50N (ADC-value of ~1000) then of course it starts moving towards the workpiece, but then overshoots quite significantly when it touches it, then undershoots, then overshoots, then undershoots....etc....
     (1) Apart from the big overshoot, I would have assumed that the failure decreases over time and the force will be maintained at some point, but the actuator keeps on oscilating around the target force with quite high amplitudes.......does any body have an idea for the reason?????....How is it possible that the controller actually approaches the target force, ie. the over/undershoot should get smaller with every cycle...
     (2) I was assuming that the problem is because I load quite large relative positions (1000 - 0 = 1000) while the actuator is not yet in contact with the workpiece which then causes the overshoot when the actuator touches the workpiece. Hence, I tried limiting the relative positions to +/- 100, but it seems that it does not improve anything. The actuator still never maintains a steady force.Any idea, why limiting the relative positions does not have an effect on the oscillation??
    (3) I have seen that the use a delay of 50ms. Hence every 50ms a new target position is loaded. Is there any experience of what the BEST time delay is for motion control???? Is it better to decrease the delay to adjust the relative position more often OR would this have negative effects because the moves don;t have enough time to complete??????
    I am grateful for any reply...

    Hi Jochen,
    thanks for the clarification on the pros and cons of the two Torque control approaches...very enlightening......
    To clarify my previous question: I am using the S200VTS-Servo Drive from Danaher Motion. The drive is able to run in Torque-mode, Velocity-mode and Position-mode. In the latter case it needs a "step and direction" input, instead of an analog input. My idea was to setup the S200-drive in Position-mode because in the "Torque Control using monitoring Force"-example the inner PID loop is for the position...so I thought, why shall I setup the S200-drive in torque mode, when actually the PID-loop tries to control the Position.....you know what I mean? It appeared to me, that with setting up the drive in torque mode and running the example code with the positional PID-loop I am mixing force and position....
    Kind regards and thanks a lot for your efforts.
    Well, let's take it like that: The second approach is ok, if the dynamics of the torque are very low. The worst case scenario for this approach is a solid actuator pressing against a solid workpiece. When these two pieces meet, a force occurrs almost instantaneously. That means, that very short move distances result in high force differences. With your current approach this means that it's very hard to control the force, as in fact the only way to generate force is to move the axis a bit. If you control the force directly instead (analog feedback), you will get a much better control behavior.
    To clarify the idea behind that:
    Just think of two metal plates lying on each other on the floor. Now you step on the upper metal plate. Does the upper metal plate move? No. Is there a change of the force applied to the lower plate? Yes.
    To summarize: 'Torque Control using monitoring force' works best in systems with very low dynamics and a soft contact between actuator and workpiece. still all the limitations that I have mentioned in my first post are true, so I strongly recommend to use analog force feedback.
    Your last statement about running the motor in position or torque mode is not clear to me. Are you referring to operation modes of your drive (by the way, which drive are you using?). In this case the clear recommendation is to configure your drive always in torque mode, regardless of the type of control provided by the 73xx device that you are using. From a drive's point of view 'torque mode' means, that the analog input voltage (command input) is converted into a proportional current signal and that's in both modes the best option.
    Jochen

  • Different temperatures (?)

    I take the different temperatures using varied software and the values agree single in some.
    What´s happening? Who lies?. ??? ???
    My system is: E4300 @2700 Mhz + MSI P6N SLI-Fi + OCZ DDR2 800 Mhz
    Core Temp
    MSI PC ALERT
    EVEREST Ultimate Edition 2007  -  3.80.948
    TAT (INTEL Thermal Analisis Tool)
    Thanxs in advance.
    /EDIT: Temps from BIOS.

    Don't believe in any those programs except CoreTemp
    As I already explained (not sure if in this forum)
    E4300 it's the first Intel processor to implement a DTS internal sensor (inside CPU not external) = Digital Thermal Sensor.
    Also, because intel wants to standarize the format, they had taken out the external DTS sensor that is present on all the E6x00 family of processors in the E4300, so, basically, what you can read from the external DTS sensor in the E6x00 is no longer available in the E4300 hence, the majority of programs extrapolates the values and you have a mess of terrible proportions... this is intel's fault since they didn't specify this change openly and you have to figure it out for yourself.
    If you read the specs for E6x00 you will see something like "Digital Thermal Sensor included" and you will not see this in the E4300.
    The E4300 includes a DTS internal (that means INSIDE the core, not outside) this is part of the PECI specification, so, basically that means one thing.
    Unless you have a program that can READ the INTERNAL DTS Sensor on the E4300 you will get stuck with UNREAL numbers.
    Progrmas that FAKE the temp because they DO NOT read the internal DTS sensor on the E4300 correctly are:
    old versions of Speedfan, TAT (specially this one, DO NOT believe in this program for E4300, average 15 degress out of scale) and all Motherboard apps like MSI, Asus Suite, etc.
    The only ONLY program to my knoledge that can read the internal DTS sensor on the E4300 accurately is the CoreTemp, the rest is nightmare and chaos.
    Since PECI has been implemented, once the motherboards starts to use PECI, the programs will start to show correct values, I will explain.
    PECI checks for PECI capable processors, when PECI is enabled, all readings concerning CPU temp, be it, external, internal CPU external sensor or Internal DTS (real value) will be redirected to the internal DTS Sensor, so... basically, all programs will report the correct Internal DTS temp reading when PECI is enabled,  this will hopefully fix all the discrepancies..
    The beauty of CoreTemp is that it can actually read those internal DTS values regardless of the PECI status on the motherboard.
    Hope this clarify the issue once and for all.

  • PCI-7344 Servo Torque Control

    Hi,
    Is there any body to have controlled torque with PCI-7344?
    I have two servos to keep servo's torque constant as a target value. The target torque can be changed on cerain conditions.
    So the servo's torque reaches the target, it shoud be stopped at that postion unless any change in servo's torque happens. If the servo's torque is below the target, it shoud be move forward to get more torque and vise versa also.
    Now, I would like to know how to use PCI-7344 axis to control torque.

    Hi Choijs,
    It's really the motor amplifier that is doing the torque control rather than the motion controller.
    Most amplifiers today are current(torque) amplifiers. In addition, a lot of amplifiers can operate in either torque mode, or velocity mode.
    Now, the reason why torque amplifiers are also called current amplifiers is that torque is proportional to current. When the motion controller outputs a command voltage, it's up to the amplifier to convert that voltage into current, and it's up to the amplifiers internal control loop to hold that current. Essentially, the amplifier controls the torque via a current transformer. When there is a difference between the desired torque, and the actual torque from the current feedback, the amplifier will adjust the output vo
    ltage to accomdate for the difference.
    That's probably too much information, but you just need to know that the torque control is actually done at the amplifier level, and when you are using an amplifier in torque mode, all this control is done for you by the amplifier. So, there is nothing the 7344 needs to do.
    Another way to think about this is whenever you tell a motor to go to a specified position and stay there (using a torque amplifier). You are doing torque control automatically, since it takes effort to hold a motor at a specific position. The control loop on the amplifier is constantly doing what you have described, without the 7344 knowing what it's doing.
    Hope this helps.
    Ken Sun
    Applications Engineer
    National Instruments

  • Torque control and the dac function

    Hi,
    I would like to send a +- 10 V signal to a Parker servo drive. the drive is setup for torque control with +10 = 2800mA.
    I'm using Viusual C++ with the flexMotn library. How do I set up my application to to communicate my torque value in counts (+-32767) to the +- 10 Volt analogue signal required by the drive. I'm trying to acive this using the following commands:
    err =  flex_set_op_mode (boardID, axis, NIMC_ABSOLUTE_POSITION);
     CheckError;
     err = flex_load_torque_lim(boardID, axis,16383, -16383, 16383,-16383, 0xFF);
     CheckError;
     err = flex_load_dac(boardID, 0x31, 3280, 0xFF);
     CheckError;
     // Start the move
     err = flex_start(boardID, axis, 0);
    CheckError;
     Sleep(2000);
    The code compliles fine and excutes, but the motor doesnot move.
    I have also tried to perform a position move and read the DAC values during the move this also failed.
    err = flex_load_target_pos (boardID, axis, -10000, 0xFF); 
    err = flex_read_dac_rtn(boardID, 0x31, DACValue);
      CheckError;
    Does anybody have any ideas?
    Thanx
    Thivash

    Hello Thivash,
    Thank you for contacting National Instruments.  One thing to check for is if the DAC channel that you are trying to control programmatically isn't already reserved for a servo axis.  You can check for this in MAX by going to the axis number of the DAC channel that you wish to control, i.e. axis 1 for DAC channel 1, and check to see if it is set to servo as shown in the attached image.  If it is, switch the type to Stepper, save the settings, and re-initialize the motion card.  You should now be able to programmatically control the DAC channel.
    Regards,
    Mike T
    National Instruments
    Attachments:
    axis DAC settings.JPG ‏17 KB

  • How to control Object States of different objects with single button?

    I have a set of Images, stacked one on the other. I have selected all of them & created Object States for them. I also have a set of Text Objects, each containing a description of the images. These text objects are also stacked on top of each other & I've created object states for them too. I have two buttons which go to previous state & next state. When I do a mouse release operation on these buttons, only my images are moving from state to state.
    My question is how do I control the states of these different types of objects (images & type) so that they change states in sync with each other - I want to have an image 1 with its description, then image 2 with its description & so on. Thanks in advance.

    You just group your description with images

  • Control CPU usage at different levels

    Hello
    I have spent a lot of time trying to make the sleep(long milli, int nano) method to work. My main purpose is to try and control the CPU usage at different percentage levels.
    I got this information from the link below under Threads, �A new form of the sleep() method is provided which allows for sleep times smaller than one millisecond.�
    Link is:
    http://java.sun.com/j2se/1.5.0/docs/relnotes/features.html#threads
    Is it the same sleep method as above? I tried using sleep( 0, 1 ) where I am expecting a CPU usage at or near 100% but its going only at 2%. When I change to sleep( 0 , 0 ) the CPU usage is at 100%.
    I am using JBuilder Enterprise and Foundation with JDK 1.5.
    Thanks for your help.

    Is it the same sleep method as above? I tried using
    sleep( 0, 1 ) where I am expecting a CPU usage at or
    near 100% but its going only at 2%. Just a guess: the problem could be that Java might, depending on the environment, not be able to measure nanos, because the clock resolution is not "big" enough..
    When I change to
    sleep( 0 , 0 ) the CPU usage is at 100%.As it should.

  • Add a legend or control group to set different settings based on different user scenarios on a button click

    In the settings page of my application, I want to add a group of settings pertaining to a particular setting requirement. So when a user clicks an "Add" button, a legend type control should come up with required set of controls like text boxes
    and/or toggle buttons inside where the user can enter their custom settings and save it. Now if the user again click on "Add" button, again a set of controls should be displayed where a user can set up some settings for other user scenarios.
    So my question is how to implement this, and how to access the parent legend control, and access the values of the child element, to get the values of the setting values entered by the user.
    I hope my question is clear?.
    Any help or suggestions regarding this would be great.
    Thanks In Advance.

    Hi Siddy,
    >>So when a user clicks an "Add" button, a legend type control should come up with required set of controls like text boxes and/or toggle buttons inside where the user can enter their custom settings and save it. Now if the user
    again click on "Add" button, again a set of controls should be displayed where a user can set up some settings for other user scenarios.
    If I'm not misunderstanding, we can consider using Popup control to show the addition information or a set of controls:
    http://msdn.microsoft.com/en-us/library/windows/apps/windows.ui.xaml.controls.primitives.popup
    For example, in this sample:
    https://code.msdn.microsoft.com/How-to-render-html-to-6a9cabe5
    The author placed a WebBrowser control to Popup's child panel.
    We are trying to better understand customer views on social support experience, so your participation in this interview project would be greatly appreciated if you have time. Thanks for helping make community forums a great place.
    Click
    HERE to participate the survey.

  • We have several i componets with different users how does that work with the mac

    we only have one computer, so how does the cloud keep them seperate or does everyone know what everyoe is doing ?

    By different Apple IDs for data. For device it's the device names you've given them.

  • SQL Loader and control file changes for different users

    In the front end of my application I can select a data file and a control file, and load data to the table mentioned in .ctl file. Every user who logs in uses the same .ctl file and so loads onto the same table. Now I want the user to load data onto the table in his own schema. I can get the username of the user currently logged in and i want to insert it into that username.table. So can i copy the contents of the .ctl file into a variable, modify it into username.table in that string and pass that variable as a parameter to the sqlldr command instead of the .ctl file.
    Or is there a better way how I can modify the same control file everytime to change tablename to username.tablename in .ctl file and pass to sqlldr to load data to table in local user schema table.
    Thanks and Regards

    Thanks for the reply .. user do have their user credentials but only for the application ... but all users use a common loader and control file once they log into the application. So irrespective of which user is logged in he selects the same control file and loads to the same table mentioned in the control file .. i instead want user to be able to load to the table in control file but into his schema like username.tablename instead of just the tablename mentioned in .ctl file.

  • Can grid control monitor Databases on different operating systems?

    I have a GC on LINUX REDHAT AS 3/4. Can I use that to monitor and administer Databases created on a SUN OS?. Can agents running on different OS talk to GC that is running on a different OS?.
    If so, any limitations?. Pointers to a doc would be appreciated.
    Thanks

    Yes,

  • Different Temperatures - which one is right?

    I have started trying Core Temp as a replacement to CoreCenter. The thing is Core Temp gives temperatures 2-3C below what CoreCenter shows, which I dont't mind too much. Anyway, when I run Stress CPU the temp deference increases, as shown here.
    http://i90.photobucket.com/albums/k276/seven_of_nine13/temps.jpg
    Any ideas why this 7C difference (sometimes more) happens and which one is right? System temperature is showing right as I have other temp probes floating about. Spec below, except I now have a FX-55 (ClawHammer). Got it free :D

    Quote from: qyx on 28-November-06, 15:10:10
    I don't understand how core temps could drop 5 degrees c. while temp of surrounding area remains the same.  Same loads, volts etc. as before I changed case fans (4x80 mm now and 2x120 before) and case (aluminium now, steel before).
    That's what I'm wondering. I know my temps have been higher with the FX-55, but still doesn't explain how the core can be cooler. As for overall temps I'm planing on lapping the CPU and heatsink over the Christmas holidays (exams have to be done first     ), as I think the heat spreader on the CPU is a little higher around the edges.

Maybe you are looking for

  • Windows Data Error (cyclic redundancy check) on USBSTOR - Exclamation Point

    Hi, folks, hooking my friends' video iPod to a Windows XP PC that has all of the latest patches, and when I go into the Device Manager, the iPod is listed with an exclamation point...says there is an error with the device driver (USBSTOR)...and when

  • Changing frames within a symbol

    Can anyone tell me how to change frames within a symbol, by using a button in the actuall stage. Every time I try searching for it, I get lost in half compleated answers, action script 2, and things that throw a ton of code and words and stuff at me,

  • Could not retrieve Enterprise Global Template - Load balancer issue

    Hi, We have 4 Project Server 2010 servers. The 4 web servers are load balanced by networking team with sticky session configured. When we try to connect to the Project Server using MPP 2007 SP2, it fails saying 'Could not retrieve Enterprise Global t

  • Safari 6.0.4 crashing repeatedly!

    Updated yesterday, and now Safari is crashing about once every five minutes.  I've read in other threads, that SIMBL seems to be the problem.  I have n....(It just crashed again!!)  I have nothing SIMBL installed.  It happens no matter what I'm doing

  • How do i update my iPad without losing all the data?

    whenever i want to update my ipad, it tells me that in order to update to ios 5 i must delete all of the data and i dont want to.