Fairino FAQ

Fairino FAQ

Q: How do I connect my DH gripper to my Fairino?

 

A: Follow the instructions linked here

____________________________________________________________________________________________________________________________________________________________________________

Q: My control box lights are on, but the lights on my robot arm are not on.

 

A: First, ensure that your E-Stop button is not depressed. Twist it clockwise to release the E-Stop and restart your control box.

____________________________________________________________________________________________________________________________________________________________________________

Q: When moving my robot, it will stop and say “Collision detected” when there was nothing in its way. How do I fix the collision detection?

A: If you are using the Web App:

  • Go to “Inital”->”Base”->”Joint”->”Collision Level” and ensure your collision level is about 10% of your speed coefficient. (ie. if global speed is 40%, set collision level to 4).

    If you are using the SDK:

  • After establishing a connection, use: robot.SetAnticollision(0, [j1_cl, j2_cl, j3_cl, j4_cl, j5_cl, j6_cl], 1)  where jx_cl is the desired collision level between 1 and 10.

____________________________________________________________________________________________________________________________________________________________________________

Q: After setting my global speed, my robot still moves slowly. How do I fix the speed?

 

A: Each motion command has its own argument for velocity which is defaulted at 20. For example, MoveJ(), this velocity argument is a scalar of the global speed meaning to use the full capacity of the global speed, you need to set the velocity argument to 100.

Ex: MoveJ(point1, tool=0, user=0, vel=100)

____________________________________________________________________________________________________________________________________________________________________________


Q: After changing the acceleration argument in my movements, it does not change the acceleration of the actual movement.

 

A: Not only do you have to change the acceleration argument for the movements, you also have to set the Global acceleration values in your program.



____________________________________________________________________________________________________________________________________________________________________________


Q: When in drag mode, why is my Robot is actively fighting against me or drifting upwards?

 

A: The Fairino has an “End Load” weight that it is expecting to compensate for. If that number mismatches the actual weight at the end of the robot, it will have abnormal behavior while in “drag mode.” To change the "End Load" weight, navigate to "Initial -> Base -> Payload -> End payload"

      The weight entered will be applied to whichever load number you set. You can then set this weight in your program using commands or set it manually through the web app.


____________________________________________________________________________________________________________________________________________________________________________


Q: I saved a point and was able to send the robot to it. After leaving my workspace and coming back to it, it is returning an error message “joint command point error” when it used to be able to travel there. Why is that?

 

A: This can happen for a few reasons. Check the following:

 1) Make sure you are using the same Tool number and coordinate system that you were using when you saved the point. Different tool IDs can have different values which make certain Cartesian positions impossible to reach even if the joint values are the same. You can view which toolID and coordinate system you used for each point under coding->point table. Towards the right, it’ll tell you the tool number, extended axis system, etc.

2) The point name was given an invalid character in the name. Make sure you're only using letters, numbers, and database friendly symbols (like underscores etc)

 

____________________________________________________________________________________________________________________________________________________________________________

 

Q: Why are my ServoCart/ServoJ commands jerky?


A: the following are requirements for Servo commands to work using the Python SDK:
ServoCart():
1) The only two arguments that need to be passed are: description position, extended axis position (epos), and velocity.
ServoJ():
1) The only arguments that should be passed are mode, description position, velocity, and acceleration.
 

These commands cannot be made at a frequency outside of 60hz -  1000 hz (1ms - 16ms between each command).
Command time is not needed for either and as long as there is a 1-16ms sleep after each command call, it will work. Below are examples of each.
 
ServoJ loop example:
epos = [0.0, 0.0, 0.0, 0.0]
er, joint_pos = robot.GetActualJointPosDegree()
for i in range(70):
        robot.ServoJ(joint_pos, epos, vel=20)
        joint_pos[0] -= 0.5
        time.sleep(0.008)
 
ServoCart example (using force sensor):
while(True):
                force = robot.FT_GetForceTorqueRCS()[1]
                fz = force[2]
                if(abs(fz) > 1):
                    break
                robot.ServoCart(1, [0,0, -0.1, 0, 0, 0], vel=20, acc=20)
                time.sleep(0.008)

 

____________________________________________________________________________________________________________________________________________________________________________

Q: How do I upgrade my Web Version/Robot software?

A:  Follow the steps HERE (https://support.devonics.com/portal/en/kb/articles/how-to-update-fairino-robot-software)


__________________________________________________________________________________________________________________________________________________________________________


Q: After updating my robot model, the WebApp preview is inconsistent with my robot and is having weird behavior (Shown below). How do I fix this?



A: This occurs when you use FR3 001 002. Go to systems settings and reset the robot model to FR3 001 001 to resolve this issue.


__________________________________________________________________________________________________________________________________________________________________________

Q: I am getting the following XML error from the Fairino SDK  *(numbers may vary, this is just an example)*

       xmlrpc.client.Fault: <Fault -502: "Format string requests exactly 6 items from array, but array has 8 items. (A '*' at the end would avoid this failure)">

A: This is due to an SDK-Robot version mismatch. Run and validate the following:

robot.GetSoftwareVersion() -- Returns:  (0, 'FR5-V1-002(V6.0)', 'v3.7.3', 'V3.7.8')

robot.GetSDKVersion() (0, ['SDK:V2.1.6', 'Robot:V3.8.6'])

 

Notice that the two robot version numbers (highlighted) are different.

 

In this case, the user needs to update their robot software to 3.8.6 to match their SDK or change their SDK to the 3.7.8 version.

__________________________________________________________________________________________________________________________________________________________________________

Q:


A:  

Two possible fixes:
1) Turn off the robot and clear the cache of your browser (this is also a step you can take for most unusual web app behavior)

2) Go to IP "192.168.57.2:8050" and it should take you to a maintenance level software upgrade screen. Here, you can try to re-upload the software.tar package

 

 

    • Related Articles

    • How to update Fairino Robot Software

      Step 1) - Navigate to the Fairino documentation page here - Use the version select button in the bottom right to select the target software version you wish to migrate to (please note the compatibility table below): Current Version Maximum Upgradable ...
    • Connecting an XJC Force/Torque Sensor to Fairino Cobot

      This article will cover the steps needed to connect your XJC force/torque sensor to the end of a Fairino Cobot arm Hardware required: - 1 XJC force sensor - 1 Fairino Cobot - 1 computer with ethernet connection to Control box/button box OR 1 teach ...
    • Fairino Servo Commands (SDK)

      Servo commands, while being intimidating and complex at first, are a low level way to control your robot while getting precise movements and are ideal for low level control and accuracy. When using these servo commands with the SDK, you may notice a ...
    • Setting Collision Level

      Fairino Collision detection sensitivity The Fairino robotic arms are Cobots, meaning they are meant to work around people safely. A key to accomplishing this is the "Collision detection" setting. This article will cover how to set the collision level ...
    • How to Set up your new Fairino

      This article will cover the steps needed to set up your Fairino from unboxing to your first program Step 0: What's in the box? Inside of the Fairino Box, there will be - A Robot (IP default is 192.168.58.2) - A control box - An E-Stop/button box - ...