Announcement

Collapse
No announcement yet.

Do More STREAMOUT Details

Collapse
X
  • Filter
  • Time
  • Show
Clear All
new posts


  • Do More STREAMOUT Details

    Hi everyone,

    I'm playing with a Do More processor by sending commands to STP-DRV-4850. I'm trying to decide whether or not to have my program process each ACK/NAK whenever I send a command out to the drive. One thought would be to work off the success bit for each STREAMOUT command sent.

    My question is, what signifies a successful STREAMOUT command (or any other serial comm. command, for that matter)? Is it telling me that it was successfully sent to a serial device on the other end, or that it merely completed the action of sending out a string of characters, even if those wires are not connected to anything?

    For reference, I've implemented sending ASCII strings to these drives using Click as well as DL06 via its CoProcessor. For the latter I implemented 2-way communication with the drive, checking for ACK/NAK responses, but I felt it made the program very cumbersome and inefficiently laid out. Now that it appears that I can do the serial 2-way comm. natively with the Do More, I'm wondering if I should go through extra coding to send each command individually and process the ACK/NAK, or if I should do batch commands and depend on the success bit for the STREAMOUT?

    Reference information: My application has four axes of motion (XYZ & rotation), but the linear axes are only for positioning a laser weld head. Once in position, only one axis will move after each weld for part swapping. I'm planning on using an Applied Motion SiNET Hub to communicate to each of the axes through Do More's one serial port. This system is already up and running using Applied Motion drives and their MMI interface. This was my first major automation application in-house, and without going into excessive detail, is cumbersome and not very user-friendly. So, I would like to streamline the system and incorporate more features and a touch screen interface for ease of use. The general automation sequence is as follows:

    Manually Load Part
    Clamp part with air solenoid
    Move weld head into position (Move X-Axis)
    Begin part rotation
    Signal laser to start weld routine
    Wait for laser to signal it is finished
    Stop rotation
    Move Weld head out of position
    Un-clamp part
    [repeat]

    Any insight on how STREAMOUT works as well as comm. suggestions would be most appreciative. Thanks in advance!


  • #2
    The STREAMOUT success, only means that the serial port has successfully sent the bits out the wire. It does not indicate that the device at the other end received them, that is what ACK/NAK is for.
    You should implement the protocol properly.
    Set up a program block for the communication with each drive, and then set up a series of stages for each transaction using the appropriate STREAMIN and STREAMOUT commands.

    There are several examples over here: http://forum.hosteng.com/index.php/board,20.0.html that you may find helpful for implementing a protocol.
    If you get stuck, just ask.
    Circumstances don't determine who we are, they only reveal it.
    Jason Wolthuis

    Comment



    • #3
      Originally posted by bgirouard View Post
      My question is, what signifies a successful STREAMOUT command (or any other serial comm. command, for that matter)? Is it telling me that it was successfully sent to a serial device on the other end, or that it merely completed the action of sending out a string of characters, even if those wires are not connected to anything?
      As 'nut mentioned, the Success and Error bits are referring to the send action only. Any handshaking must be implemented by the user.

      Do-more program blocks and stages provide a very nice way of crafting custom protocol state machines. I would agree with the suggestion that you look through some of the samples to better understand the best way to implement such. Feel free to post custom protocol questions over at the Do-more section of Host's forum.

      Comment



      • #4
        Thanks for the confirmation, guys! I'll take a look at the host forums and craft up something that will do what I want it to do. This will really pay off for my next project; that is when the blocks are made and I can use them lego-style!

        Comment

        Working...
        X