The 6-Axis Robotic Arm used with the CTE Workcell is designed to replicate the functionality of industrial robotic arms used in automated manufacturing systems. The 6-Axis Arm contains six rotational joints that allow precise movement and positioning of the end effector. You may notice that the movements are not as you expected or notice an issue with the connections. If the 6-Axis Arm is not moving or behaving as expected, use the troubleshooting steps in this article to identify and resolve common issues.
First Checks
Before troubleshooting specific issues, verify the following:
- The 6-Axis Arm is powered on.
- The 6-Axis Arm is properly connected.
- Using a 6-Axis Arm without a Brain? Use the steps in the Direct Connection section below to learn more about checking connections.
- Using a CTE Workcell with an EXP Brain? Use the steps in the Connecting via an EXP Brain section to learn more about checking connections.
- All Smart Cables are securely connected.
- All firmware is up to date. Use the articles linked below to help verify that the firmware for both the 6-Axis Arm and Brain is up to date.
Direct Connection
Check that the power cable is inserted fully into the back of the 6-Axis Arm and plugged into a power source. View this article to learn more about powering the 6-Axis Arm.
Be sure that the USB-C cable is inserted fully into the USB-C port on the back of the 6-Axis Arm and connected to your computer. Once powered and connected to the computer, the green indicator light will show. View this article to learn more about connecting the 6-Axis Arm directly to your computer.
Note: After initial connection, if the USB-C cable is disconnected and the power cable remains plugged in, the green light may continue to show.
Connecting via an EXP Brain
When running projects with the EXP Brain, be sure that the USB-C cable and power cord are no longer connected to the 6-Axis Arm. The 6-Axis Arm should only be connected to the Brain via the Smart Cable as shown in this image here.
If the issue persists, locate your problem in the Potential Problems and Possible Solutions section below.
Quick Troubleshooting Guide
The table here summarizes some common situations. More details about each of the problems and possible solutions can be found below.
If this happens: |
Try this first: |
|---|---|
| 6-Axis Arm Does Not Move | Check USB-C connection or Smart Cable connections and device configuration in VEXcode. |
| 6-Axis Arm Moves Unexpectedly | Check that all joints move as expected with the Teach Pendant. |
| Lengthy Delays Between Movements of the 6-Axis Arm | Check coordinate values in the VEXcode project and verify with the Teach Pendant. |
| Short Delays Between Movements of the 6-Axis Arm | While it may seem like an error is occurring, the 6-Axis Arm is operating as intended. Learn more below. |
| Failed Communication Between EXP Brain and 6-Axis Arm | Disconnect the 6-Axis Arm from external power, then power cycle the 6-Axis Arm and Brain. |
| Error Messages in the Teach Pendant | Review the list of errors below to find troubleshooting steps. |
If you have an issue that falls outside of those listed here and have tried the other listed troubleshooting methods in this article, please contact VEX Support.
Potential Problems and Possible Solutions
The following section breaks down potential problems that have occurred with your 6-Axis Arm and explains possible causes of the problem and solutions to help you troubleshoot.
Problem: 6-Axis Arm Does Not Move
Symptoms:
- The 6-Axis Arm does not move when running a VEXcode project.
- The Teach Pendant cannot control the arm (when directly connected).
Possible Causes:
- USB or Smart Cable connections are loose or disconnected.
- The 6-Axis Arm was not configured, or improperly configured, in VEXcode.
- A joint error has occurred.
Solutions:
- Check all cable connections. Ensure all cables are fully inserted into the correct ports.
- Use the build instructions to ensure all Smart Cables are inserted into the correct port.
- If using a direct connection, ensure the USB-C cable is inserted into the correct port.
- Verify device configuration.
- If using the 6-Axis Arm with a direct connection, ensure the 6-Axis Arm is connected to VEXcode and firmware is up to date.
- If using the 6-Axis Arm connected to an EXP Brain, follow the steps in this article to configure a 6-Axis Arm in VEXcode EXP.
Pay special attention to the port number in the configuration. The port chosen while configuring the 6-Axis Arm will also be shown in the name of the device (shown here as Arm10).
- Verify each joint is working using the Teach Pendant. Follow the steps in the Using the Teach Pendant for Troubleshooting section below.
Problem: 6-Axis Arm Moves Unexpectedly
Symptoms:
- The 6-Axis Arm moves to an unexpected location.
- The 6-Axis Arm does not reach the intended coordinates.
Possible Causes:
- Build error while connecting to the tile.
- A joint error has occurred.
- Incorrect coordinate values.
Solutions:
- Verify that the 6-Axis Arm is connected to the tile in the correct location using the build instructions (also linked here).
Pay special attention to the orientation of the base of the 6-Axis Arm. The side with the Smart Port, area to connect to the power cord, and USB-C cable should be aligned over tile locations 1, 2, and 3.
- Verify that the end effector on the 6-Axis Arm matches the one chosen in the VEXcode project or in the Teach Pendant.
- Check all coordinates used in the project. You can do this in two ways:
- Plot out coordinates using the CTE Digital Notebook template.
- Use the Teach Pendant and manual movements to determine the x, y, z-coordinates of your desired location. Follow the steps in this lesson to enable manual movement with the Teach Pendant.
- Verify each joint is working using the Teach Pendant. Follow the steps in the Using the Teach Pendant for Troubleshooting section below.
Problem: Lengthy Delays Between Movements of the 6-Axis Arm
Symptoms:
- The 6-Axis Arm moves but has lengthy delays between movements.
- The 6-Axis Arm moves but appears to stop working mid-project.
Possible Cause:
- Incorrect coordinate values.
- The 6-Axis Arm will always move to the intended coordinate location. If it is stopped by an obstacle or collision, the movement will appear to pause while it attempts to reach that specific coordinate.
Solutions:
- Verify coordinate values to use with a project with all elements on the layout. This includes Cubes, Disks, Pallets, or any other objects that would be present on the tile when the project is run.
- A slight variation in the height of the object or obstacle can obstruct the arm from reaching the specified coordinate.
- Use the Teach Pendant and manual movements to determine the x, y, z-coordinates of your desired location. Follow the steps in this lesson to enable manual movement with the Teach Pendant.
- Verify those newly obtained coordinates using the Move To feature. With this, you can move the 6-Axis Arm to a precise position using the Teach Pendant. Simply type in the specific x, y, and z-values of the coordinate location you would like to move the 6-Axis Arm to.
- Verify that the end effector on the 6-Axis Arm matches the one chosen in the VEXcode project or in the Teach Pendant.
- Edit the VEXcode project to allow the project to continue.
- The Move to position block in VEXcode automatically will wait until the movement is completed before moving to the next command. Use the and don't wait option in the command to allow continued movements with the 6-Axis Arm.
- See the VEXcode API reference to learn more about the Move to position block. Information is also available in the API if you are working in Python or C++.
Problem: Short Delays Between Movements of the 6-Axis Arm
Symptom:
- The 6-Axis Arm moves but has short delays between movements.
Possible Cause:
- Small pauses may occur as each joint moves to be within the accepted margin of error.
- With each movement, the 6-Axis Arm is aiming to reach the intended coordinate within a margin of error (~1-2 millimeters). This ensures that the 6-Axis Arm can safely reach each coordinate and continue to safely operate as accurately as possible.
Solution:
- While it may seem like an error is occurring, the 6-Axis Arm is operating as intended. If you feel like the delays are becoming too long, see the problem above about "Lengthy Delays" and follow the recommended solutions.
Problem: Failed Communication Between EXP Brain and 6-Axis Arm
Symptoms:
- Brain will not turn off while 6-Axis Arm is on and powered.
- 6-Axis Arm does not move while connected to the EXP Brain and the code related to the 6-Axis Arm appears to be skipped.
- The 6-Axis Arm does not appear as a connected device in the Devices screen on the EXP Brain.
Possible Cause:
- A VEXcode project was run via a direct USB connection to the 6-Axis Arm while also connected to an EXP Brain.
Solution:
- Disconnect the Smart Cable from the 6-Axis Arm so it is no longer connected to the EXP Brain.
- Power cycle the 6-Axis Arm and EXP Brain.
- Remove the battery from the EXP Brain, re-insert the battery, and turn the Brain on.
- Disconnect the 6-Axis Arm from power, wait 10 seconds, then reconnect the power cable to the 6-Axis Arm.
- Only reconnect the 6-Axis Arm and EXP Brain when you want to run code via downloading a project to the Brain. It is not recommended or intended for the devices to have multiple connections at the same time, even when moving back and forth between methods for coding the 6-Axis Arm.
Problem: Error Message in the Teach Pendant
If an error appears in the Teach Pendant Status as you are moving the 6-Axis Arm, there are additional troubleshooting steps you can take to try to resolve the issue.
The Status in the Teach Pendant Dashboard will alert you to errors with your 6-Axis Arm. When there is an error, the Status bar will show red and the error will be displayed. The error will continue to display until it is resolved, and the 6-Axis Arm has successfully moved to a valid or safe position.
Depending on the error reported, there are different steps to take to try to solve the issue. Here are some of most common errors and steps to try to resolve the issue:
-
Invalid Position Requested - The position you are trying to reach is not within the bounds of the 6-Axis Arm.
- If you are jogging the Arm, you will notice that certain jogging buttons may now be disabled. Try moving the 6-Axis Arm in the opposite direction on the same axis until the error is resolved and all jogging buttons are enabled again.
- If you were moving to a position, the coordinates entered are not within the reachable position for the 6-Axis Arm. Select Move to Safe Position to return the 6-Axis Arm to a safe position, and adjust your coordinates to be within the bounds of the 6-Axis Arm.
- To learn more about the using the Teach Pendant to find the reachable positions of the 6-Axis Arm, view this Lesson in the Introduction to the 6-Axis Arm Course.
- An unexpected error occurred while moving to safe position - The 6-Axis Arm encountered an error while trying to move to the safe position.
- Try selecting Move to Safe Position again, to see if it will move successfully after a few moments.
- Try power cycling the 6-Axis Arm by disconnecting the power and USB-C cable from the back of the 6-Axis Arm. Wait about 10 seconds, then plug the cables back in. Close and reopen VEXcode, or refresh the page if using web-based VEXcode. Then reconnect to VEXcode and try to Move to Safe Position again.
-
Command execution failed due to... - An error occurred and the 6-Axis Arm could not complete the movement.
- Try selecting Move to Safe Position again, to see if it will move successfully after a few moments.
- Try power cycling the 6-Axis Arm by disconnecting the power and USB-C cable from the back of the 6-Axis Arm. Wait about 10 seconds, then plug the cables back in. Close and reopen VEXcode, or refresh the page if using web-based VEXcode. Then reconnect to VEXcode and try to Move to Safe Position again.
-
Failed to Move to Safe Position: controlled stop enabled - The 6-Axis Arm triggered a controlled stop while trying to move.
- Check to be sure that the 6-Axis Arm did not collide with an obstacle in its path, or that the Controlled Stop button on the Signal Tower was not pressed accidentally. Clear the obstacles and try selecting Move to Safe Position again.
- Try power cycling the 6-Axis Arm by disconnecting the power and USB-C cable from the back of the 6-Axis Arm. Wait about 10 seconds, then plug the cables back in. Close and reopen VEXcode, or refresh the page if using web-based VEXcode. Then reconnect to VEXcode and try to Move to Safe Position again.
Using the Teach Pendant for Troubleshooting
Once you have successfully powered and connected your 6-Axis Arm, and you know that the firmware is up to date, the next step is to directly connect the 6-Axis Arm and use the Teach Pendant to help diagnose the issue. When using the Teach Pendant, be sure that the 6-Axis Arm is not connected to the Brain. The 6-Axis Arm must be directly connected to VEXcode to use the Teach Pendant. View this article to learn more about Accessing the Teach Pendant with the 6-Axis Arm.
Move to Safe Position
Select the Move to Safe Position button at the top of the Teach Pendant to see if your 6-Axis Arm can successfully reach the safe position. View this article to learn more about Accessing the Teach Pendant with the 6-Axis Arm.
Jog the Arm
Next, use the Arm Jogging buttons to try to move the 6-Axis Arm along each axis. Be sure that the 6-Axis Arm is moving when the button is pressed, and look to see that the X, Y, and Z values in the Dashboard are changing as the 6-Axis Arm moves. Read this article to learn more about jogging with the Teach Pendant.
Test the Joints if Errors Persist
If the errors continues to persist, you can manually test each of the joints on the 6-Axis Arm, to ensure they are moving as expected, using the Teach Pendant. Be sure the 6-Axis Arm is powered on, directly connected to VEXcode, and not connected to the Brain, to use the Teach Pendant.
At the bottom of the Teach Pendant, select Show Advanced Data.
Manually move each joint of the 6-Axis Arm individually. As you move each joint, watch that the values for J1 through J5 are changing. (Note: Joint 6 will always report a value of 0.) If all joints move and the values change, try selecting Move to Safe Position again.
While showing Advanced Data and moving the 6-Axis Arm and the following happens, send Feedback through VEXcode and contact VEX Support. Be sure to include your contact information when submitting feedback. View this article to learn more about using the Feedback button.
- Any of the joints do not move or are not showing changing values
- The Joint Errors show values other than 0