how to do communication with MOTOMAN dx100 controller and PC via "free" way?

  • Hello,


    I have a camera which give me position and orientation information of object in PC using vision software. As I have seen we can use motocom sdk to do communication with controller ex. DX100. but this options are not free. How can I transfer this variable(pose) data to controller for pick without using paid software ?


    can anyone guide me little bit?


    thanks.

    Edited once, last by npd ().

  • Hello
    You have two other option, use MotoGSI software or use High speed Ethernet function and send the position into the variables and after that send those to position variables.
    For both of functions contact yaskawa. They can help you for use.

  • The only "free" way is to have the pc send the data to an I/O board (I'm not a computer guy so I assume the pc would be sending out 5 Vdc). The pc signal would energize a coil on this I/O board. The I/O board would then have a set of contacts that would have the robot input passing through it, essentially turning on the input. Typically, I use 16 inputs for the X, 16 inputs for the Y, and 8 for the Rz. Plus an input for each if a value can be negative.


    Downside of all this is that's 43 inputs just for the camera. Standard I/O board doesn't have that much. You would need an additional I/O board in the controller, if not already there.



    There are plenty of options that require money, depending on how the camera talks, and require no pc. E I/P, DeviceNet, Profi, really any communication card. MotoSight 2D, MotoSight 3D, or Visual DCI.

    I know a thing or two, because I’ve seen a thing or two. Don't even ask about a third thing. I won't know it.

  • Greetings,


    If timing issues can be resolved (see below), one may be able to multiplex several 16 bit wide variables through 16 digital input pins by having your JBI program signal request and receipt of each variable through digital output pins. For example, there would be a communication loop in your JBI program requesting two 16 bit variables to be sent through a single set of 16 digital input pins, using two digital output pins: 01b requests variable 1, 10b variable 2, 11b indicates a comm error and 00b indicates all variables received. If a more than bare-bones protocol is required, then more input and more output pins would be used, but less that in the case of dedicated variable pins mentioned previously by forum colleague 95devils.


    As in 95devils suggestion, this approach would still require a DAQ board with a sufficient number of digital outputs and inputs (suitably protected through optical isolation).


    If you have the multiplexing ADC board on the DX controller, you may alternatively use an analog output of your DAQ board to send appropriately scaled analog signals to your DX (i.e. your variable range would be fit into the analog voltage range of the ADC board, with the corresponding precision limitations of the ADC resolution), one variable per ADC input. Continued use of the DX output pins for communication signalling would be suggested.


    Furthermore, with more DX digital pins freed up for use as outputs, you may use the available digital input pins on the DAQ board attached to your PC, to enhance your communication protocol to cover more states (e.g. 5 bits/pins = 32 states).


    However, this loop may require more time than is available in your application, e.g. the robot would only receive a position update when that loop is executed successfully, which may take a variable amount of time, depending on the reliability of your PC-DAQ-DX connection.


    Please keep us updated as to your efforts in this regard.

  • As due to time limit and not knowing much on communication side I ended up using ROS-I motoman_driver to control the robot.

Advertising from our partners