Modifying Motion ON-THE-FLY

Hello
How can I modify the motion (acceleration, velocity) on the fly using PCI 7344.
Some thing like this:
http://www.motioneng.com/trajectory_mod.html
Thank you

Hi,
there are several ways to accomplish this:
Load new values for acceleration and velocity while your motor is moving. To commit these values call the flex_start() command again. The axis will accelerate/decelerate to the new velocity immediately. The move doesn't get interrupted by these commands.
If you don't need to vary the acceleration you could also use the flex_load_velocity_override() function. This function allows you to scale the velocity that you have loaded previously between 0 and 100 %. When you call this function, the velocity of an ongoing move changes with the previously loaded accel/decel values.
Method one is a bit more flexible as it allows you to adjust all move constraints on the fly, while the second method executes much faster (lower execution delay).
I have provided the C function names. If you are using LabVIEW you will find VIs with very similar names.
I hope this helps,
Jochen Klier
National Instruments Germany

Similar Messages

  • Modifying playlists on the fly

    Picture the scene...
    I have an apple TV hooked up to my TV in the livingroom and have a party going on - is there any way to modify a playlist (eg. to add a requested song or adjust the playlist to suit the mood) on my mac that is streaming the music without exiting the apple tv screen on the tv?

    If you're streaming the audio, just modifying the playlist on the mac should get the job done.
    Otherwise, welcome to the world of professional DJ, music starts at 6pm, 3 hours of one kind, 90 minutes of modern, 30 minutes of something for the oldies mixed with dance for the young 'uns. Then 2 hours of classics and a few slow ones, before 3 hours of second wind.
    It's hard work, planning by timing, and then everyone stays 6 hours later than you planned (so plan the music for that, repeats are ok then).

  • I want to use the Function Generator VI to send command signals through the NI 7344 motion controller. This will be a closed loop servo valve system. I want to be able to change from say a square wave to a sine wave on the fly. Idea's?

    I am going to run tests that require an actuator to move using various types of arbitrary waveforms such as sine or square. The NI 7344 is hooked to the UMI that is going through a driver for a servo valve. The loop is analog and it is closed. I have played with some of the examples but can't get it to work. I have used the function generator VI to generate a signal but I think I am using the wrong input VI to the motion control board. When I use what I have it moves the servo and then stops. It doesn't continually generate the signal.
    I would love to use the controls on the function generator vi to control frequency and amplitude ect. Any help or pointer would be helpful. Thank you in advance.

    Hello,
    I'm not clear on exactly how you want to use the generated data but I'm assuming they will be used as your target points.
    There's a built-in example for motion called 'One-Axis Contour Move.vi'. This example demonstrates how to provide your target points as 1-D array. All you need to do is to replace the input array with the output of the function generator. In order to have it run continuously, use a while loop. You can further program your application so that it'll change the waveform on the fly by monitoring the user interface but this might be little little tricky as you will need to reset the move and load the new generated points while keeping track of your current position.
    I hope this helps. Let me know if you have further questions regarding this
    application.
    Best regards,
    Yusuf C.
    Applications Engineering
    National Instruments

  • Modifying Test Report with on-the-fly reporting

    Hello,
    I am using teststand3.0 and trying to use on-the-fly reporting. The problem I am getting is report is adding begin sequence and end sequence tags to the report. Is there any way that I can remove these tags. The sample report looks like this
    Begin Sequence: MainSequence
    (Unsaved Sequence File)
    Message Popup: Failed
    Button Index: 0
    End Sequence: MainSequence
    End UUT Report
    I want to remove the text in italics. I have removed this one by editing AddSequenceResultToReport sequence, when I didn't used the on-the-fly option. But now the tags with on-the-fly option were inrtoduced by "Process Step Result" step of "ProcessOTFStepResult" sequence. And my sequence stack is upto 5 sub sequences. So when a step fails, it report prints 5 sets of begin and end tags, which I wan to avoid. Any help???
    Thanks
    mama007

    Hi,
    You need to modify the InitializeOFT sequence found in the reportgen_html.seq or reportgen_txt.seq. You will see two steps. One the template for the Sequence Header and the other for the Sequence Footer.
    For example:
    Locals.SequenceHeaderTemplate = "<H5>" + ResStr("MODEL", "RPT_BEGIN_SEQUENCE") + "%Sequence%\n<BR>(%SequenceFile%)<BR></H5>\n"
    The SequenceHeaderTemplate is a string built up to create "Begin Sequence: MainSequence". You probably can spot the various parts.
    Hope this helps.
    Regards
    Ray Farmer
    Regards
    Ray Farmer

  • JAVA 3D: How to animate "on-the-fly"?

    Hy guys,
    I'm new to Java 3D and I've read a whole bunch of tutorials as well as Selman's book.
    However, as great as Java 3D seems, it seems like I can't get Interpolators to work the way I want them to! Here is my goal:
    Create a simulation where the View is FIXED and the main ANIMATED character (comibnation of objects) MOVE AROUND the universe through the user's keyboard commands.
    I've managed the above by creating all my objects, adding them to a branchgroup, adding that branchgroup to a transformgroup, adding a few interpolator animations to the transformgroup and finally adding a cutom keyboard navigator behavior to the transformgroup.
    The following problem has occurred:
    I can't NICELY move the transformgroup around because I use Transform3D objects to calculate the next position of the transformgroup and I then apply it to the transformgroup by calling the "setTransform" method on that group with the Transform3D object. The result is an instantaneous leap x locale units away with no animation in between the original and final position. :o( This is the only way I got this working. The Java runtime keeps yelling at me that I can't add or remove Interpolators or transformgroups from other transformgroups or branchgroups, so I can't change interpolators on-the-fly (say, when the user wants to move in a different direction)... Can it possibly be that we can only declare and use interpolators at prior to executing a universe?!
    The IDEAL solution I'm looking for (!INSERT YOUR HELP HERE! ;o) ):
    Replace the ugly "setTransform" call by adding a PositionInterpolator or something to the transformgroup object in order to generate a SMOOTH ANIMATION from the original position to the final position. The end result will be must nicer and more professional.

    Ok, I've modified the simple behavior class in order to extend the PositionInterpolator class and be able to get a translation that always begins from the last target position. Eventually, I'd also like to be able to modify the AXIS so I can change direction... Anyway, right now I just want what IWON managed to do in one direction.
    Here's what I got that DOESN'T WORK, can someone please help me, IWON?:
    // Allows an object or group of objects to be moved around SMOOTHLY by the keyboard.
    public class KeyboardControlBehavior extends PositionInterpolator {
    private TransformGroup source;
    public static final float distance = 0.1f;
    public static final long time = 200;
    // create SimpleBehavior
    KeyboardControlBehavior(TransformGroup source, TransformGroup target){
    super(new Alpha(1, Alpha.INCREASING_ENABLE, 0000, 0, time, 0, time, 0, 0, 0), target);
    // initialize the Behavior
    // set initial wakeup condition
    // called when behavior beacomes live
    public void initialize(){
    // set initial wakeup condition
    this.wakeupOn(new WakeupOnAWTEvent(KeyEvent.KEY_PRESSED));
    // behave
    // called by Java 3D when appropriate stimulus occures
    public void processStimulus(Enumeration criteria){
    // Check which direction we're going and adjust the AXIS and endPosition
    // in consequence.
    KeyEvent event = (KeyEvent) ((WakeupOnAWTEvent) criteria.nextElement()).getAWTEvent()[0];
    int c = event.getKeyCode();
    System.out.println("KEY PRESSED = "+c);
    if ( c != KeyEvent.CHAR_UNDEFINED ) {
    if(c == KeyEvent.VK_UP) {
    System.out.println("UP");
    if(c == KeyEvent.VK_DOWN) {
    System.out.println("DOWN");
    if(c == KeyEvent.VK_LEFT) {
    System.out.println("LEFT");
    if(c == KeyEvent.VK_RIGHT) {
    System.out.println("RIGHT");
    // Let the PositionInterpolator animate the translation.
    super.processStimulus(criteria);
    // Adjust the source's position to be at the end position of the
    // animation (same as target).
    Transform3D newPosition = new Transform3D();
    Transform3D oldPosition = new Transform3D();
    source.getTransform(oldPosition);
    target.getTransform(newPosition);
    newPosition.mul(oldPosition);
    source.setTransform(newPosition);
    // Reset the Alpha class since it only executes once.
    super.getAlpha().setStartTime(0);
    // Consume the event.
    event.consume();
    // do what is necessary
    this.wakeupOn(new WakeupOnAWTEvent(KeyEvent.KEY_PRESSED));
    } // end of class SimpleBehavior

  • Database logging on-the-fly or not?

    Hi,
    I'm not sure which option of data logging to choose and what is the advantage/disadvantage of each one.
    1) Which option to choose and why?
    2) For not on-the-fly option, I noticed that the step 'Log To Database Callback' is activated. I could not figured out what happend when the on-the-fly is selected. The Help indicates that in this case 'Post Result callbacks' is called. Where do I find it?
    3) I have a specific requirent that in 'Run Selected Step Using Single Pass' I like to insert the SN both in the report and in the database. Since the preUUT callback is not called in this mode I overcome it by getting the last UUT SN from within the code of my mainSequence (I read it from a file and have the operator approve it). Th
    en, I added a statment step (in the sequentialModel) right after the MainSequence where I set 'Locals.UUT.SerialNumber'. With this mechanism, the SN is get into the database only if I don't use on-the-fly!!
    My question is: Is it OK to do it the way I described it? Is there a better way?
    Thanks
    Rafi
    TS 3.0

    Hey Rafi,
    I wouldn't suggest adding a parameter to main sequence. Is this something you want to do with every sequence that runs with the single pass entry point (Meaning everytime you select Run Single Pass you want to get the serial number)? If so, then I would suggest modifying the single pass entry point to include this code before the main sequence callback.
    If this change is something you want to make just for a specific sequence then adding it to the client sequence is one way to do it. Another way would be to add an addition callback to the single pass entry point - like the preUUT callback in Test UUTs. You would pass as a parameter to this callback Locals.UUT (just like preUUT). This callback could be empty by default but you could add the callback to your client sequence file and set the serial number from there: Parameters.UUT.SerialNumber = Locals.SerialNumber. You could use the preUUT callback in Test UUTs as a guide.
    If you can't modify the process model then you should be able to set the serial number from the client sequence file. Use the expression RunState.Root.Locals.UUT.SerialNumber to reference the serial number. For example I added a statement step to my main sequence that has the expression: RunState.Root.Locals.UUT.SerialNumber = "myserialnumber". This set the serial number from the client sequence.
    I hope this helps!! Please let me know if you have any additional questions on any of these approaches.
    Regards,
    Sarah Miracle
    National Instruments

  • On the fly modification of an updated file

    Good Day,
    I have a SharePoint library which keeps word documents (docx) in document sets. These word documents can be co-authored which means that more than one user can use Word application and work with the file at the same time. Each time user saves the file (i.e.
    using Ctrl-S shortcut) the document is updated on the SharePoint.
    1)
    Is there any way of "on the fly" modification of updated file on server side and save such an altered version of the document?
    (FYI - the file modification I'm talking about should remove all edition rights inside docx file)
    I have tried with ItemUpdating but I cant figure out how to access new version of the file (the content which actually is going to be put on the server) alter and make sure it going to be stored on the server. I can easily access current version of the file
    (which of doesn't have any modifications) - but it is not the case here - I need access to version which is going to be put on the server and alter it.
    Is it possible to do something like that?
    2)
    I also went for other possibilities (although much less convenient) and experimented with ItemUpdated event. This time I was able to access the file and the content was updated but any alterations of the content failed with the exception saying:
    {"The file "XXX" is locked for shared use by YYY."}
    Why am I getting this exception? Of course the file is locked because is it still open by user in the Word app (who actually manually triggered document save operation) and this is a normal use case here. I can get more users to open that document and let
    them edit it simultaneously and that is fine. Then, why I cannot modify the file in event receiver because of this exception?
    I hope you'll come up with some ideas.
    Thanks.

    Hi,
    We can use SystemUpdate() instead of Update()
    to update the file in Event Receiver.
    Here is a blog for your reference:
    http://www.novolocus.com/2012/07/25/sharepoint-check-out-vs-lock/
    Best Regards
    Dennis Guo
    TechNet Community Support

  • Is there a way the user can change the equation in the formular node from the front panel on the fly, dynamically?

    Is there a way the user can change the equation in the formular node from the front panel on the fly, dynamically?

    Sorry, I don't think so. That would be pretty cool if you could create a property node for a formula node and then enter a formula on the front panel and use it to update the formula. But you can't create a property node for a formula node and the only way of modifying the formula is by typing it into the formula node on the diagram. And you can't modify a diagram of a running VI.
    You could create a VI which is only a formula node with the maximum number of inputs and outputs you expect. Have a button on the calling VI to Edit Formula. When the button is pressed, use a VI server to display the front panel on the formula VI, display a dialog box telling the user how to display the diagram of the formula VI, then stop the calling VI. (You can't edit a sub-VI while t
    he calling VI is running). The user will then need to rerun the calling VI to use the new formula.
    You might be able to do something by calling MatLab or something like that to get an interactive formula window.

  • Reading MS Project column names and data on the fly from a selected View

    Hi guys,
    I have several views on my project file (MSPROJECT 2010) and I want to build a macro so that;
    1. User can select any view ( Views can have diffrent columns and the user may add new columns as well)
    2. User runs the Macro and all the coulmns along with the tasks displayed in the view will be written to a excel file. ( I don't want to build several macro's for each view, I'm thinking of a common method which would work for any selected view)
    The problem I'm facing is that how will i read the column names and data for a particular view on the fly without hard coding them inside the vba code ?
    The solution needs to work on a master schedule as well.
    Appreciate your feedback.

    Just to get you started the following code writes the field name and data for the active task to the Immediate window.
    Sub CopyData()
    Dim fld As TableField
    For Each fld In ActiveProject.TaskTables(ActiveProject.CurrentTable).TableFields
    If fld.Field >= 0 Then
    Debug.Print Application.FieldConstantToFieldName(fld.Field), ActiveCell.Task.GetField(fld.Field)
    End If
    Next fld
    End Sub
    Rod Gill
    Author of the one and only Project VBA Book
    www.project-systems.co.nz

  • Inserting into a table which is created "on the fly" from a trigger

    Hello all,
    I am trying to insert into a table from a trigger in Oracle form. The table name however, is inputted by the user in am item form.
    here is what the insert looks like:
    insert into :table_name
    values (:value1, :value2);
    the problem is that forms does not recognize ::table_name. If I replace :table_name with an actual database table, it works fine. However, I need to insert to a table_name based from oracle form item.
    By the way, the table|_name is built on the fly using a procedure before I try to insert into it.
    Any suggestion on how can I do that? My code in the trigger is:
    declare
    dm_drop_tbl(:table_name,'table) // a call to an external procedure to drop the table
    dm_create_tbl(:table_name,'att1','att2');
    insert into :table_name
    values (:value1, :value2);
    this give me an error:
    encounter "" when the symbol expecting one.....

    Hi ,
    You should use the FORMS_DDL built_in procedure. Read the on-line documentation of forms ...
    Simon

  • Table Creation on the fly

    Hi,
    I have to run 50 reports last day of every month. Each query will do lot of dynamic calculations which are a time consuming. The whole point is to create excels for each of the report. But since the Application will throw request time out error if time exceeds more than minutes. So we decided to generate the data for each of those 50 reports and store in a temporary table... so that the application will not throw time out error...
    Details:
    Oracle 10g.
    .NET
    # of records in each table: > 700k
    In order to accomplish the above task we have to create temporary tables.. but the question is for every report do we have to create a table on the fly OR create a base table which will have 100 columns which will be a cross product of all the columns selected in all the 50 queries and every row will have a report id..
    OR Is there a better way to accomplish the above?
    thanks in advance

    Thank you.. the only reason i wasnt going for view is i wont be able to have indexes if i want to add some filter while exporting to excel..
    other wise we should be good with materialized views..

  • Print Module templates layouts do not update on the fly

    Print layouts do not update on the fly when attempting to choose between various Print Module>Template Browser> Lightroom or User templates. This occurs in all three Layout Styles. The very first layout chosen in Single Image/Contact Sheet, Picture Package, or Custom Package is the permanent 'default' and cannot be changed. The Preview will show as expected however any image stays stuck in the very first layout I chose after installing LR4 beta.
    For example, I first chose Template Browser>Lightroom Templates>Maximum Size, and Layout Style>Single Image/Contact Sheet. Clicking through any other Templates (Lightroom or User defined) will alter the preview but not the layout display in the Print window. Same problem in either of the other Layout styles. I have been trying for days to rectify this, but it seems somehow more difficult than LR3. and not what I expect.
    As a comparison, using the same steps in LR3 works perfectly as all print template/layouts can be changed on the fly as expected. I have no problems generating different layouts in LR3 and have been using LR print module since version 1 without this issue.
    Is this a bug or are there any extra steps or workarounds I have not discovered? Any other testers seen this?

    Update with more info. What am I doing wrong, if anything?
    Print layouts do not update on the fly when attempting to choose between various Print Module>Template Browser> Lightroom or User templates. This is not a hang since the layouts do not change after the initial choice no matter how much time elapsed.
    iMac OS 10.6.8. 8GB RAM.Processor Intel Core 2 Duo. NVIDIA GeForce 8800 GS.
    The steps as follows:
    1) Lightroom 3.6 & LR4Beta exist side by side.
    2) LR4 Beta> Print Module;
    3) From filmstrip choose image;
    4) Template Browser> Lightroom4Beta Templates>Maximum Size;
    5) Preview displays as expected;
    6) Layout Styles>Single Image/Contact Sheets
    7) Template Browser> Lightroom4Beta Templates>click through any other templates (Lightroom or User defined);
    8) Image layout in main window does not update;
    9) Previews update;
    10) Layout Style>Picture Package;
    11) Template Browser>Maximum size is then automatically shown, however the template in the main window is actually (1) 7x5, (2) 2.5x3.5;
    12) Any further attempts to change the layouts regardless of Style Layout choices are not successful.
    13) Close LR4Beta>re-open LR4Beta;
    14) Repeat test;
    15) Print Module layouts do not update on the fly as expected;
    16) Close LR4Beta and all applications;
    17) Reboot iMac.
    18) Open LR4Beta only;
    19) LR4Beta>Print Module>Template Browser >Lightroom Templates>Maximum Size;
    20) Image displays in main layout window with Template and Preview display as expected;
    21) Choose different image>Template Browser>Lightroom Templates>Maximum Size;
    22) Click through templates, layouts DO NOT update in main window although previews do automatically update.
    23) CONCLUSION - In Lightroom 4 Beta>Print Module>Template Browser, image layouts do not change after initial choice as expected.
    I posted this on Photoshop.com as a problem.

  • Import animated GIF on the fly

    All the answers I've seen for this one are old so I'm hoping
    it has changed. If not ... GET WITH IT ADOBE! :)
    Can I load an animated GIF into a SWF on the fly (loadMovie)
    and get it to be animated? I know it seems to load just the first
    frame in but is there anyway of programming or anything in AS to
    make it put each frame into a Flash Frame?

    Dinghus wrote:
    > All the answers I've seen for this one are old so I'm
    hoping it has changed. If
    > not ... GET WITH IT ADOBE! :)
    >
    > Can I load an animated GIF into a SWF on the fly
    (loadMovie) and get it to be
    > animated?
    no you can't
    Best Regards
    Urami
    Beauty is in the eye of the beer holder...
    <urami>
    If you want to mail me - DO NOT LAUGH AT MY ADDRESS
    </urami>

  • Generate & Export PDF on the fly without holding entire pdf contents memory

    Hello Everyone,
    We are using Crystal Reports JRC (in our server side application. In a typical use-case the generated report is exported into the pdf format and streamed to the client/browser.
    My question is with regards to the current interface/implementation of the JRC export api(s), which returns an InputStream which is basically a ByteArrayInputStream?, Why ByteArrayInputStream ? why not a custom InputStream imeplementation which really benefits from the streaming approach, and give you the option to stream the contents as they are generated on the fly, instead of it holding the entire report contents in a byte-array, as is the case with using ByteArrayInputStream. Since, this often seems to choke our system with regards to memory footprint, when the generated report contains huge dataset.
    Please comment? Is that not possible ? Is there any reason why ByteArrayInputStream is the only way to retrieve the report contents ?
    Thanks,
    Farhan.

    We have new place called Idea Place, look up on the right hand side. Great place to add enhancement requests.
    Or the link: http://www.sdn.sap.com/irj/scn/idea-place

  • Generate & Export PDF/CSV on the fly without holding entire contents in mem

    Hello Everyone,
    We are using Crystal Reports JRC (in our server side application. In a typical use-case the generated report is exported into the pdf/csv format and streamed to the client/browser.
    My question is with regards to the current interface/implementation of the JRC export api(s), which returns an InputStream which is basically a ByteArrayInputStream?, Why ByteArrayInputStream ? why not a custom InputStream imeplementation which really benefits from the streaming approach, and give you the option to stream the contents as they are generated on the fly, instead of it holding the entire report contents in a byte-array, as is the case with using ByteArrayInputStream. Since, this often seems to choke our system with regards to memory footprint, when the generated report contains huge dataset.
    Please comment? Is that not possible ? Is there any reason why ByteArrayInputStream is the only way to retrieve the report contents ?
    Thanks,
    Farhan.
    Edited by: mfarhans on Feb 26, 2010 12:40 AM

    We have new place called Idea Place, look up on the right hand side. Great place to add enhancement requests.
    Or the link: http://www.sdn.sap.com/irj/scn/idea-place

Maybe you are looking for

  • What are the main differences between  3 three important class types

    PP members What are the main differences between class type 300(variants) , class type 200 (configurable objects) & 001 ( material class) Please elucidate on the above Thanks Suren R

  • Change shipping dates/times for confirmed schedule line

    Hi, I am having a problem changing the confirmed schedule line in a Sales Order VA01. I have added my code into the user-exit *       FORM USEREXIT_MOVE_FIELD_TO_VBEP                              * *       This userexit can be used to move some field

  • Camera Process 2010 not working in Lightroom 3

    i can not use noise reduction in Camera Process 2010 on scanned images in lightroom 3 but camera process 2003 working fine. I am using scanned tiff images and converting them to adobe DNG. also camera process 2010 and 2003 work with camera raw iamges

  • Just a reminder - this forum is for the 3S connectors.

    This forum is for questions and/or issues with the 3S connectors (SugarCRM connector, SharePoint Connector and Salesforce Connector). Mobility Pack questions should be posted in the DS-Mobility-Pack forum. The Mobility Pack forum can be found here: D

  • How to use drawLine not in Applet

    I need your help. I am new in Java programming. I use bean to display 3 photos on a web page. One is very big and the two last are like labels. I would like to draw a line from these labels to that big photo. And I did not succeed to use the drawLine