Arm 3 Connection Error

Home Forum Sixi Robot Arm Arm 3 Connection Error

  • This topic is empty.
Viewing 11 posts - 1 through 11 (of 11 total)
  • Author
    Posts
  • #6081
    AvatarAnonymous
    Inactive

    Hello,
    I just assembled my Arm3 kit and I’m trying to connect to it run some sample code, however I’m unable to get the arm to move. Here is what I have done so far…
    1. Installed Rumba firmware (prior to installing the rumba firmware the robot arm was moving back and forth, I assume for default code similar to the Makelangelo, however since uploading the firmware, the motors have stopped working).
    2. Connected via the serial port, but the robot arm did not recognize any commands.
    3. Tried connecting via the software (via the correct port), but it just froze anytime I tried to input any gcode commands. Also tried the r,f, etc. movements but no response.
    4. I tried to upload the firmware_ams2 to board, but there was an error because FORWARD was not declared.

    Here is an image of the wiring:

    Received this error in arduino after triggering the limit switches:
    java.io.IOException: Input/output error in writeArray
    at gnu.io.RXTXPort.writeArray(Native Method)
    at gnu.io.RXTXPort$SerialOutputStream.write(RXTXPort.java:1124)
    at processing.app.Serial.write(Serial.java:517)
    at processing.app.Serial.write(Serial.java:540)
    at processing.app.SerialMonitor.send(SerialMonitor.java:200)
    at processing.app.SerialMonitor.access$100(SerialMonitor.java:32)
    at processing.app.SerialMonitor$3.actionPerformed(SerialMonitor.java:89)
    at javax.swing.JTextField.fireActionPerformed(JTextField.java:492)
    at javax.swing.JTextField.postActionEvent(JTextField.java:705)
    at javax.swing.JTextField$NotifyAction.actionPerformed(JTextField.java:820)
    at javax.swing.SwingUtilities.notifyAction(SwingUtilities.java:1636)
    at javax.swing.JComponent.processKeyBinding(JComponent.java:2851)
    at javax.swing.JComponent.processKeyBindings(JComponent.java:2886)
    at javax.swing.JComponent.processKeyEvent(JComponent.java:2814)
    at java.awt.Component.processEvent(Component.java:6040)
    at java.awt.Container.processEvent(Container.java:2041)
    at java.awt.Component.dispatchEventImpl(Component.java:4630)
    at java.awt.Container.dispatchEventImpl(Container.java:2099)
    at java.awt.Component.dispatchEvent(Component.java:4460)
    at java.awt.KeyboardFocusManager.redispatchEvent(KeyboardFocusManager.java:1848)
    at java.awt.DefaultKeyboardFocusManager.dispatchKeyEvent(DefaultKeyboardFocusManager.java:704)
    at java.awt.DefaultKeyboardFocusManager.preDispatchKeyEvent(DefaultKeyboardFocusManager.java:969)
    at java.awt.DefaultKeyboardFocusManager.typeAheadAssertions(DefaultKeyboardFocusManager.java:841)
    at java.awt.DefaultKeyboardFocusManager.dispatchEvent(DefaultKeyboardFocusManager.java:668)
    at java.awt.Component.dispatchEventImpl(Component.java:4502)
    at java.awt.Container.dispatchEventImpl(Container.java:2099)
    at java.awt.Window.dispatchEventImpl(Window.java:2475)
    at java.awt.Component.dispatchEvent(Component.java:4460)
    at java.awt.EventQueue.dispatchEvent(EventQueue.java:599)
    at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:269)
    at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:184)
    at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:174)
    at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:169)
    at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:161)
    at java.awt.EventDispatchThread.run(EventDispatchThread.java:122)

    I’m not sure what I should try next. Any feedback would be great!

    #6951
    AvatarAnonymous
    Inactive

    I just noticed the limit switches were installed backwards, so I just flipped them but it is still not working…

    #6952
    AvatarAnonymous
    Inactive

    Also, the motors are engaged when I power the robot arm, but I’m not able to activate them either through the serial port (the serial port does show Arm3 .3 at the top and the gcode options), or the software.

    #6953
    AvatarAnonymous
    Inactive

    _AMS2 is for Adafruit Motor Shield v2, it won’t work on your board.

    I turned on my Arm3 and immediately experienced the same problems you’re seeing.

    It seems that in Arm3firmwarefirmware_rumbamotor.ino there are a few #define mistakes that are causing the board to reboot over and over again. in motor_setup() the following code should be…

    #if NUM_AXIES > 3 // new, caused out of bounds problem.
    motors[3].step_pin=MOTOR_3_STEP_PIN;
    motors[3].dir_pin=MOTOR_3_DIR_PIN;
    motors[3].enable_pin=MOTOR_3_ENABLE_PIN;
    motors[3].limit_switch_pin=MOTOR_3_LIMIT_PIN;
    motors[3].flip=-1;
    #endif
    #if NUM_AXIES > 4 // was >3
    motors[4].step_pin=MOTOR_4_STEP_PIN;
    motors[4].dir_pin=MOTOR_4_DIR_PIN;
    motors[4].enable_pin=MOTOR_4_ENABLE_PIN;
    motors[4].limit_switch_pin=MOTOR_4_LIMIT_PIN;
    motors[4].flip=1;
    #endif
    #if NUM_AXIES > 5 // was >4
    motors[5].step_pin=MOTOR_5_STEP_PIN;
    motors[5].dir_pin=MOTOR_5_DIR_PIN;
    motors[5].enable_pin=MOTOR_5_ENABLE_PIN;
    motors[5].limit_switch_pin=MOTOR_5_LIMIT_PIN;
    motors[5].flip=1;
    #endif

    So… my bad 🙁 Github GUI for windows is being dumb, so it’s going to be a moment before I can check this in.

    I really really want to get OpenGL and swing components playing nicely together so that I can combine Arm3, Makelangelo, delta robot, and all future robots under one app roof.

    #6954
    AvatarAnonymous
    Inactive

    Hello,
    I just uploaded the new code…but still no success. Can you offer any other suggestions?

    #6955
    AvatarAnonymous
    Inactive

    Here is what the serial port is outputting…a series of >>>>>>? Is this typical?

    Arm3:0:3
    Commands:
    M18; – disable motors
    M100; – this help message
    M114; – report position and feedrate
    M1000; – set GUID
    F, G00, G01, G04, G17, G18, G28, G54-G59, G90-G92, M06 as described by http://en.wikipedia.org/wiki/G-code
    >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>g28>>>>G28>>>>M100>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>

    #6956
    AvatarAnonymous
    Inactive

    Yes. the board sends > to indicate it is ready for new commands. Some very rare occasions the > is never delivered. The easiest solution was to send > about once a second. It’s kind of like a ping/keepalive?

    #6957
    AvatarAnonymous
    Inactive

    Thanks for your replies! I’m not sure what else to do…like I said before, when I initially turned on the arm, all the motors were working, until I uploaded the firmware. The motors are now enabled, but locked. Is it a wiring issue? Any additional advice would be helpful!

    #6958
    AvatarAnonymous
    Inactive

    G28; will make the robot home.

    The normal gcode commands will move the arm.

    The Arm3 github project has an app has more good stuff.

    #6959
    AvatarAnonymous
    Inactive

    Thanks for the reply. I’ve tried inputting the code (G28, etc.) via the serial port, but no response. The arm does not move. As I mentioned earlier, I tried the software as well (using the r,f,etc. keys), and the same result. I’m stuck, and desperate to get this guy running.

    #6960
    AvatarAnonymous
    Inactive

    Please email me directly, I am on the road another 40 minutes and then I can do a gchat with video to try and help.

Viewing 11 posts - 1 through 11 (of 11 total)
  • You must be logged in to reply to this topic.