Simple way to Read Force

  • Hi fastfingers,
    Thank you for your reply!


    I have a 6 axis force sensor mounted on the end of the robot.
    I am doing endurance testing on a part: I press down on the part, then repeat many times. This works. I am not doing any Force Control instructions at this time.
    In addition, I simply would like to have the force the sensor is experiencing copied to a register, regularly, e.g every 1 second.
    I have a program that can read registers and display the value on my PC.
    The issue I am having is: How do I copy the force value to a register? Once I am able to do this, I will then be able to datalog, analyze and display the value on my PC.

  • It looks like the system variable $FORCE_SENSE.$force_data[1-6] has what you need. You can write a program with an instruction to write the value from the variable to a register.


    The instruction would look like this:
    R[1]=$FORCE_SENSE.$force_data[1]
    R[2]=$FORCE_SENSE.$force_data[2]
    and so on....


    You would also need to figure out a way make this data constantly update when you want it to. A RUN statement with a looping program and a means of stopping that program would be one option.

  • [quote='fastfingers','https://www.robot-forum.com/forum/index.php?thread/&postID=129227#post129227']
    It looks like the system variable $FORCE_SENSE.$force_data[1-6] has what you need. You can write a program with an instruction to write the value from the variable to a register.


    The instruction would look like this:
    R[1]=$FORCE_SENSE.$force_data[1]
    R[2]=$FORCE_SENSE.$force_data[2]
    and so on....


    Checked my R-30iB / R-2000iC 210F (with Force Sensor) and the system variables you mention dont exist ??


  • I got the info from the software reference manual where it says the variable isn't directly accessible by menu. I have never tried the method I suggested and am not sure if it works.

  • Hi pdl.


    Thank you for your input!
    Here are some of the options I have installed:


    KAREL Cmd. Language (J650)
    KAREL Run-Time Env (J539)
    Force Control Basic (J876)
    Force Control Fitting (J877)
    Force Ctl. Contouring (J835)


    The next step would be for me to write a simple Karel program: I don't know how to write a Karel program. I have the documentation, but do I need a special editor? If I use notepad can I just ftp the file to the controller? Can I use the Teach Pendant to edit a Karel program?


    I tried writing this in a teach pendant program:
    R [23] = ($FORCE_SENSE.$force_data[1]) but it displays "Invalid parameter name", so I guess it belongs in a Karel program.


    I am using LabVIEW and a third-party LabVIEW toolkit that gives me an API to use to communicate with the robot. So far so good, except the API to read system variables has worked for common variables, but not for the force variables in our particular setup.


    e.g. I am able to read from the common System Variables:
    $FAST_CLOCK i.e. integer,
    $ANGTOL[1] i.e. real,
    $APPLICATION[1] i.e. string,
    $BACK_EDIT[1].$backup_name) i.e. string,


    but not from
    $FORCE_SENSE.$force_data[1] -- Real
    $FORCE_SENSE.$force. -- Vector


    Tried to read system variables related to Force, of Integer type, without success: *SYSTEM* : Integer: $FORCE_SENSE.$sensor_type, $FORCE_SENSE.$sensor_port[6], $FORCE_SENSE.$sensor_port[1], $FORCE_SENSE.$sensor_data[1].
    * Tried to read system variables related to Force, of Real type, without success: *SYSTEM* : Real: $FORCE_SENSE.$force, $FORCE_SENSE.$force[1], $FORCE_SENSE.$force.X, $FORCE_SENSE.$force.x.


    At this point I am waiting for our local Fanuc distributor to come in and take a look.


    Rollin

  • Here is the variable I used on a previous application. I remember there being a couple of diffrent sets of values, but that's the one that gave the raw forces from the sensor, and not some "auto calculated" values.


    R[81:Start Force X]-$CCC_GRP[1].$FS_FORCE[1]

Advertising from our partners