Clearing the 7344 commands buffer ?

Problem Statement:
If an e-stop or other condition occurs while one of my axes is in motion, the hardware-hardwiring will disable the servo drive(s).
After recovering from an e-stop or another fault condition, if I re-enable the servo drive the servo axis will "jump" or "lurch".
Question:
How do I programmatically flush the 7344's command buffers when recovering from an E-stop condition before enabling the servo drives in LAbVIEW with the Flex motion VI's ?
I am using LabVIEW 6.02, NI Flex Motion 5.1.1 and a PCI-7344 card to control 2 servo axes (linear stages).

There is a Knowledge Base that describes how to impliment and e-stop. KB 264AFAOA The solution is to enable the controller card to be 'killed' on the hardware signal. Then in order to use it again you must reinitialize it just as you would at beginning of the program. Otherwise, the drive is killed but the controller is still trying to keep the trajectory. When the drive is reenabled then the controller tries to catch up because it didn't know that anything happened. Setting up the controller to shutdown is a much better way to implement an e-stop.
Cheers,
JR A.
Application Engineering
National Instruments

Similar Messages

  • Hello,  I want to know how to clear the memory or buffer cash from my mac book?

    Hello,  I want to know how to clear the memory or buffer cash from my mac book? When I look at the series, it puts more and more time to load. Thank you.
    Sorry for my english, i talk french.

    Ok ce n'est pas le problème alors.
    Boot à partir de votre disque d'installation et de lancerl'utilitaire de disque. Le disque de démarrage peut être nécessaire de réparation.
    Using Disk Utility to verify or repair disks
    Ok that's not the problem then.
    Boot from your install disc and run Disk Utility. The startup disk may need repairing.

  • How do I clear the option-command-c shortcut?

    I've been using Photoshop forever. Recently upon buying a new laptop with Lion on it I have not been able to use the Photoshop hotkey combo of option-command-c.  I've gone though the prefs -> keyboard -> keyboard shortcuts pane and removed everything and that's not helping. Is there a command I can run in terminal to unbind this so that I can use it in Photoshop again?
    Note: I'm posting here because from the Photoshop side of things, the hotkey is setup and should be working fine (it is a default thing).

    Had the same problem. In my case the conflict was not with an identical os x system shortcut, but with the same hotkey-combo iin an application called "Clipboard History", which was constantly running in the background.
    See app store:
    http://tinyurl.com/chyyj9b
    After I disabled this clipboard app, I could use option-command-c again in Photoshop to change the canvas size.
    Hope this helps!

  • J2ME: can you clear the key pressed buffer on a cell?

    I am having trouble with keypressed.
    I am writing a cell phone game in MIDP 2.0. Basically its the standard GameCanvas setup, where you have a main game loop and it calls your input function. The input function then does:
    int keyStates = getKeyStates();
    keyprocessing
    to get the states.
    When I demo it on the color phone in WTK2.0, and tap the right arrow, and my input loop processes the right multiple times. My initial thought was that the loop ran too fast perhaps and it read the press several times, so I put in a delay before keyprocessing:
    int keyStates = getKeyStates();
    long time = System.currentTimeMillis();
    if ((time - timeOfLastInput) < MIN_TIME_INPUT)
    return;
    keyprocessing
    timeOfLastInput = System.currentTimeMillis();
    Now, I have cut it down to only going in a direction once. However, if I press up, down, left, right, (in honor of Konami) My input goes as follow Up (delays MIN_TIME_INPUT) then Down, delays again, left, delays, right.
    And so I am out of ideas.

    haha, this is interesting... a month ago, i had the same problem, until i flash of intellect put me out of my misery...
    rule 1: dont use the time delay. with the processor speed of the cell phones, with your delay, it will take a decade before the app runs...
    heres how to do the coding to keep it to only 1 step at a time: ( i do it in the run method of the thread)
    int originalKey = 0; // keeps the keystates once the execution completes once
    int key = 0; // keeps the keystates for comparision
    while(isRunning) {
        key = getKeyStates();
        if(key == originalKey) {
            originalKey = 0;
            continue;
        if( (key & LEFT_PRESSED) != 0) {
            // do what you want to do, or who you want to do
            originalKey = key;
    // do the same for right pressed and etc etc... this will keep your code from executing too many timesheheh... i think i deserve a few dukes...

  • Clear the text buffer in Terminal.app

    I have searched and can't find a solution to this. Here's what I want to do in a single terminal window:
    * run command1
    * Shell > Export Text As . . . file1.txt
    * run command2
    * Shell > Export Text As . . . file2.txt
    But I want file2.txt to have ONLY the output of command2.
    As it is, the Export Text As function seems to be infinitely cumulative. But I want to separate out the output into different files without having to close my Terminal window and start a new session.
    Please don't respond with suggestions of piping output to a file or other such. I'm working with proprietary tools that prevent me from doing things like that. The only way I have to collect the data I need is thru Export Text As . . .
    I'm running OSX 10.5.4, Terminal 2.0.1(240).
    Thanks very much

    I think you'll find that 'Export Text As' saves the entire window contents. Therefore it isn't the case that it is appending data to the file, but that what you're writing out includes both the first and second commands.
    As previously mentioned you could clear the scrollback buffer between commands, but I don't know a way to do that programmatically in the shell (other than via osascript, maybe. The only other way I can see around this is to use separate windows for each command but you said you don't want to do that.

  • How do you clear the buffer of excess key presses, in Java?

    Right now, in the game I am working on, if the user presses a key multiple times the actions will be performed as many times as it registers, even though I disallow key presses during the time that the action is taking place.
    For example, a move of 1 space can be carried out with a key press. While the character is moving, key presses are not allowed. However, if you just press the key 5 or 25 times, the character will just keep moving, once he's done with the first one.
    What I need to do is clear the buffer of key presses after an action has taken place, so that the excess keys are not registered. I know the commands to do so in C++, but not in Java.

    Well, I think you've got what I was saying backwards, or I'm not understanding what you are asking correctly.
    it is suppposed to return if isMoving is true, not false. If isMoving is true, it means that the moving animation, and actions are taking place, Which is a process that take about a second, for the player to move one space.
    Here's the code where I process the keypresses
    private void processKey(KeyEvent e) {
        if (isMoving) {return;}
        int keyCode = e.getKeyCode();
        if (!isPaused && !gameOver) {
            isMoving = true;
          if (keyCode == KeyEvent.VK_UP) {
            player.move(player.NE);
          else if (keyCode == KeyEvent.VK_DOWN) {
            player.move(player.SW);
          else if (keyCode == KeyEvent.VK_LEFT) {
            player.move(player.NW);
          else if (keyCode == KeyEvent.VK_RIGHT) {
            player.move(player.SE);
            isMoving = false;
    }And in case I need to clear up what I want to happen, and the results I'm seeing. The player, in this case, moves one space in a direction, with a single press of an arrow key. That functionality is working fine, as intended. However, I don't want you to press the key twice quickly and move two spaces. I don't want you to hold down an arrow key and move continually.
    That part of the functionality is what is not working.
    As I understand my code, pressing the key once should set isMoving to true and, therefore further presses shouldn't register until isMoving is false again, which shouldn't happen until the player moves have finished.
    But, the way that it is working now is that if I press the key 2, 3 or 20 times, as soon as one move is finished another begins. Are the key presses just sitting in the buffer somewhere waiting for isMoving to become false again? And if so, is there a function I can call to clear that buffer after a move is finished?

  • How to clear the screen in the command prompt?

    Hello Everyone,
    I was wondering how we can clear the screen in the command prompt in Java. I remember we can do this in C by writing system("cls");
    What is the best IDE for writing Java programs. Is the NetBeans IDE good? Thank you very much.

    I was wondering how we can clear the screen in the
    command prompt in Java. I remember we can do this in
    C by writing system("cls");I guess there's no Java way of doing that because it's a function of the shell you're calling. If you try to use Runtime.exec on cls, it starts yet another shell, clears that, and closes it again, so it has no effect on your output.
    You could try using the '\b' backspace character, if that helps.
    What is the best IDE for writing Java programs. Is
    the NetBeans IDE good? Thank you very much.By the way you're asking this question, the answer will be almost certainly "none". If you want to, you can search this board for the few million times this question was asked before, pick all IDEs suggested there and use the one you're most comfortable with.

  • Clearing the buffer when reading a 'few' samples

    Hello,
    I am looking to develop a system that samples a number of data channels at ~50KS/s, reading the data into a buffer.  Every 10ms I want to read just a few samples to check if a condition threshold has been passed - eg the pressure has gone above 10kPa.
    If the condition has occured, I want to read all the contents of the buffer so I then have the condition of the system for the last ~5seconds leading up to the event.
    - I have set a Task up to read a finite number of samples at 50Ks/s into a buffer which works out to be 5s long.
    - Every few milliseconds I use the Read command to just read the most recent bit of data, so I set the 'read number of samples'  to 100 or so.
    If the process routine detects an error it creates an event which issues a Read command with teh 'read number of samples' set to -1, ie all.
    The problem is though, will the Read All command then sit there for 5seconds gathering a buffer full of data when what I want it to do is give me the last 5 seconds of data?
    I hope this makes sense, I would appreciate any thoughts.
    Best regards,
    Martin

    Is all of this happeing in one loop? Sounds like you need (at least) two separate loops, in a producer/consumer structure. With queues, you can peek at data without stopping it or pausing. One queue could hold hold all the data while you skim off the top with your current method. When you want to see all the data, just read the queue. Look up Producer/Consumer and/or queues and notifiers.
    Good luck with your project!
    Richard

  • How do i clear the receiver and send buffer?

    I am trying to communicate with the Votsch 3050 thermal chamber, with LabVIEW as the control software via serial RS232. In sending the required ASCII strings, there was no response from the chamber, yet no error.
    The manufacturers indicate clearing the receive and send buffer using the the "PurgeComm(HANDLE hFile, DWORD dwFlags)" function in C, but offer no LabVIEW support.
    Does any one have any ideas on how i can do this using LabVIEW? Any Information or VIs would be greatly appreciated.

     @dsbuxi I have worked with many patient monitors. They often work in a client server setup. Data is not sent before you request it. And the communication has to follow a certain protocol. Your job will be to implement this protocol in Labview.  This is not too hard, but it requires some reading to understand the protocol. I am not able to send you any code, but feel free to ask if you need some help regarding the protocol 
    And you may have to order or make a custom cable. But you will also find this information in the protocol description. Good luck
    Message Edited by t06afre on 01-07-2009 09:03 PM
    Besides which, my opinion is that Express VIs Carthage must be destroyed deleted
    (Sorry no Labview "brag list" so far)

  • [uzbl] how do I clear the command bar after following a link? [SOLVED]

    It's ridiculous that I've done this again, but I've forgotten how to have uzbl automagically clear the command bar after I fl something. Yes, I know at some point it was on uzbl's wiki page; yes, I did compare my old and new configs; yes, I'm a dork and I'm just not finding the answer.

    The only part of diff that has anything to do with this is:
    < @on_event LOAD_START chain '@set_status <span foreground="khaki">wait</span>' 'event KEYCMD_STRIP_WORD'
    > @on_event LOAD_START @set_status <span foreground="khaki">wait</span>
    The rest is either stuff that I've commented out for now or key bindings, personal settings, etc.
    The follow link code is working now the way that it was before with the above changes. With the old way (as posted above) it wreaks all sorts of havoc with uzbl. By that I mean that the command bar would seem to clear but the data would reappear as soon as another command would start to be entered. As well, backspacing to the beginning of the command line would send uzbl to follow URLs that I didn't specify.
    By the way, no matter if the above is hackish or not, it's close to what I want. The only thing left would be for ESC to clear the numbers if I chose not to do go somewhere. Is there a way to set this up without breaking other functionality?

  • How to clear file cache (or buffer cache?) in the system

    i found that after copying a large file, say >200M the system's memory drop 200M exactly until i delete the file. it is suspected that the memory is used for file cache.
    After installing memtool, the prtmem command shows the following:
    Total memory: 983 Megabytes
    Kernel Memory: 106 Megabytes
    Application: 193 Megabytes
    Executable & libs: 40 Megabytes
    File Cache: 495 Megabytes
    Free, file cache: 60 Megabytes
    Free, free: 87 Megabytes
    It shows that nearly 500M of system's memory is used for file cache.
    The temporary solution i use now is to copy a large file, say 300M, and delete that file.
    eg
    cp temp1.txt temp2.txt
    rm temp2.txtAnd then most of the file cache will be freed out.
    is there any way to release this file cache?
    I've checked the system use the default value for the bufhwm parameter. ie, about 20M. however, as i know, this bufhwm parameter is related to buffer cache. is it really related to file cache?

    To answer your question directly - delete the file or unmount the file system.
    To answer your question indirectly - You are worrying about the wrong thing here. Also the buffer cache is slightly different the file system page cache. The file system page cache is behaving exactly as it should as is the virtual memory subsystem. When a system is operating for some period of time, the amount of free memory will always drop towards LOTSFREE and, if allowed, stay right above LOTSFREE - forever - if the work behavior of the machine stays about the same. This is usually because of the file system page cache.
    Its nothing to worry about. Actually you want that to happen. Otherwise your disks would be getting the crap kicked out of them all the time.

  • Command to clear the bgp vrf table.

    Hi,
    I want to clear the bgp table on this vrf. Here is how it looks like :-
    address-family ipv4 vrf mj
    redistribute connected
    neighbor 12.12.12.12 remote-as 1111
    neighbor 12.12.12.12 activate
    neighbor 12.12.12.12 send-community
    neighbor 12.12.12.12 as-override
    neighbor 12.12.12.12 soft-reconfiguration inbound
    neighbor 12.12.12.12 route-map customer in
    neighbor 12.12.12.12 route-map vpn-routes out
    neighbor 12.12.12.12 maximum-prefix 1000
    neighbor 13.13.13.13 remote-as 65222
    neighbor 13.13.13.13 activate
    neighbor 13.13.13.13 send-community
    neighbor 13.13.13.13 remove-private-as
    neighbor 13.13.13.13 soft-reconfiguration inbound
    neighbor 13.13.13.13 route-map a-in in
    neighbor 13.13.13.13 route-map a-out out
    neighbor 13.13.13.13 maximum-prefix 1000
    no auto-summary
    no synchronization
    exit-address-family
    I would like to confirm that the command to clear this vrf is whereby the ASN is 1110 :-
    clear ip bgp vrf mj ipv4 unicast 1110 soft.
    Pls advice,
    InternetB.

    Hi Shivlu,
    To confirm, since my ASN is 1110, the 200 should be replaced with my ASN number of 1110 right ?
    Thank you,
    InternetB.

  • Execute (or re-execute) commands in the SQL*Plus buffer

    I feel confused about sql plus / command. by defination, it Execute (or re-execute) commands in the SQL*Plus buffer. how do I know whether it execete or re-execute a command?
    for example, I run a select statement, seems I have to type / to get result. when I run a create table statement, it seems run twice with / and I got table exists error.
    Could someone clearify when should / be used and when not to use it.

    jz2 wrote:
    I feel confused about sql plus / command. by defination, it Execute (or re-execute) commands in the SQL*Plus buffer. how do I know whether it execete or re-execute a command?
    for example, I run a select statement, seems I have to type / to get result. when I run a create table statement, it seems run twice with / and I got table exists error.
    Could someone clearify when should / be used and when not to use it.I guess you are looking at things in the other way round. The / does what it says, it executes the command in the buffer. Don't think it "reexecutes". It simply executes the command. Be it already run or for the first time. For example,
    Running the code for 1st time.
    SQL> begin
      2  dbms_output.put_line('hi');
      3  end;
      4  .
    SQL> set serveroutput on
    SQL> /
    hi
    PL/SQL procedure successfully completed.
    Running again....
    SQL> l
      1  begin
      2  dbms_output.put_line('hi');
      3* end;
    SQL> /
    hi
    PL/SQL procedure successfully completed.
    SQL>So / simply executes. Now when you should use it and when not, that depends upon the kind of command you are trying to execute. Like you mentioned, for a select, it works by again giving the output. But for a DDL, its not the / which gives error but its the very nature of DDL that once issued, its committed so surely enough , next execution would throw an error only.
    HTH
    Aman....

  • Clearing the data buffer from the input fields

    Hi,
    I am using an user exit CONFPP02 for the Tcode: co11n. I have written a program such that the confirmation numbers having the status CNF will not be allowed to be processed. The whole confirmation is terminated when the system checks the confirmation number and its status as CNF. If the status of the confirmation number is PCNF, the program allows the further processing of the Tcode Co11n.
    The problem starts when the user enters the PCNF status confirmation number and enters, the system stores the values in the various input fields. Now without exiting the initial confirmation screen, if the user replaces the Confirmation number of the PCNF status to the Confirmation number of the CNF status , the system issues a warning message:"  Confirmation no. or order/sequence/operation has been changed
    However, the input fields still contain default values from thepreceding confirmation". if the user says yes, the program written is bypassed , thus allowing the reconfirmation of the CNF confirmation number  into PCNF confirmation number .
    Can anybody suggest a suitable method to clear the data stored defultly in the input fields so that the program can be made to work.
    With regards,
    Avinash.S
    Mobile no:09996192456

    Hi Gilad,
    I never use Preview and did not use Preview at all before sending the document over to my most recent client either.
    I only opened Preview up this morning after I discovered that all of the form data had disappeared on his end! And the only reason I opened up Preview was because I already knew it looked fine in Acrobat so wanted so wanted to view the form in a different application.
    My client would not even have notified me about it had he not sent the signed form back to me and I saw there was no data there! I then called him and asked him about the missing data and he said that he thought I had simply sent over the form purposely with blank fields:(
    I have just emailed him to ask him what application he opened it up in. My understanding is that he is on Windows because ne mentioned to me his company was using Windows when we last spoke. Perhaps he has a personal Macbook where he opened it? I just don't know and can hopefully soon find out:)
    But THANK YOU for letting me know about that script! I appreciate it:) I have now downloaded and installed it and will just have to use it on ALL of my forms before sending them out:)

  • How i can clear the screen in JAVA?, in c++ is  command that called .......

    system("cls")
    but in JAVA??
    thx
    gicio1

    system("cls") is the silly way to do it. For a start, "cls" isn't on most computers, because most computers call it "clear". You could run this from Java using Runtime.exec("clear"), Runtime.exec("cls"), etc .. but the best way to clear the screen is still to print out N newlines, where N is the height of the screen.
    The only problem with this way is, you don't know the height of the screen. You could pass an environment variable in as a system property, from whatever launches your program, and if it's not there "assume" it's 200 or something. Then just build up a string with "\n\n\n\n\n\n\n\n"... and print it out. Blam, blank screen. :-)

Maybe you are looking for