-
Notifications
You must be signed in to change notification settings - Fork 85
End Effectors
Table of contents:
The end point of the standard Dexter robot hardware is a replaceable "tool interface" It has a shape which makes it easy for other tools to be clicked on and off. There are spring loaded connectors, sometimes called "pogo pins" at the end for electrical connection, and space for a Tinyduino if additional processing of the signals is needed.
The signals available to the end effector include power, ground, and whatever signals the main board has been configured to produce. Early versions were wired to USB connection. Later version bring out the AUX1 and AUX2 GPIO pins from the FPGA via J20 and J21. These pins can be configured to produce different signals.
- There is a digital IO pin on the white connectors in the upper right on the back of the motor board
Dexter.move_all_joints(0, 0, 0, 0, 0)
make_ins("S", "GripperMotor", 1), //Digital output pin. 0 = off 1 = 5v
TODO: Verify this? - Another pin on that same connector is the PWM output pin.
Dexter.move_all_joints(0, 0, 0, 0, 0)
make_ins("S", "EERoll", 512), //PWN pin. Integer range of 0-512
TODO: Verify this?
W oplet 64: LSB bit 0: 0 is output, 1 in input for the blue wire, bit 1 is high / low for blue wire when it's an output. Bit 2 and 3 do the same for the green wire. Bit 4 and 5 selects between modes for green wire (top). Bits 6 and 7 select modes for blue wire (bottom).
Bit6=1 Bit7=0 = RC PWM on blue (needs bit 0 low, blue wire is output). Bit6=0 Bit7=0 = blue is GPIO Bit6=0 Bit7=1 = blue is high speed PWM value set via BIT 8 to 16s. Bit6=1 Bit7=1 = Dynamixel on blue wire.
Bit 4=1 Bit 5=0 = RC PWM on green (needs bit 2 low, green wire is output). Bit 4=0 Bit 5=0 green is GPIO. Bit 4=0 Bit 5=1 green is high speed PWM value set via BIT 8 to 16s.
Instead of EESpan and EERoll, it's W oplets 65 and 66.
The standard going forward will be a new tool interface which incorporates 2 Dynamixel XL-320 servos and a Tinyscreen+ (ARM based, small OLED screen, 4 buttons, lots of IO). One FPGA IO pin will be configured to send and receive data via the Dynamixel protocol 2.0. This requires an update to the FPGA image.
Dexter.move_all_joints(0, 0, 0, 0, 0)
make_ins("S", "ServoSet2X", 2, char1 + char2<<8, char3+char4<<8)
The Tinyscreen+ will listen on the servo bus and may return data there or via the dedicated return data line.
Signals from the Dexter Motor Control PCB to the Tool Interface:
- Ground (J25 pin 1, top pin)
- Logic power +5 Volts (J25 pin 2, the bottom pin). Note: Although out of spec, this actually appears to work very well as a power supply for the servos, making the next signal unnecessary.
- Supply power (18V DC from AC adapter J25?), regulated to Servo power voltage (6 - 8.75V) at the interface by the servo power supply board See: Parts, source, Schematic and PCB design. Note: The +5 supply line appears to work fine.
- Servo data bus, bidirectional. AUX1 via J20 (bottom pin, on bottom connector left side of motor board)
- Return serial data. AUX2 via J21?
- The Dexter HD has 1 additional wire which could be used for the servo power (6 - 8.75V) if we want to route that separately from the main supply power.
Note: J20 and J21 accept TE Connectivity part 2-179694-2 ^ ^ ^ . A 2 position, 2mm, IDC, AMP CT connector. While this is an IDC part, the crimp head cost is insain even without the crimp handle so manually pressing it in with round nose tweezers or just soldering the wire on maybe the practical choice.
Multiple signals are available from the Tinyscreen+ for many different purposes. A PCB to breakout those signals and make them accessible to end effectors via "spring loaded contacts" (pogos) is being designed. Schematic and PCB
- http://hdrobotic.com/dexter-community/#!/grippers:marker-holder Simple Marker / Pen holder used to write or draw via DDE's DXF.init_drawing and txt.string_to_line functions. Hint: This functionality should allow Dexter to 3D print in the future.
- http://www.appropedia.org/User:Zsarnold#Enterprise See "Semester 2" A Mantis gripper was adapted to Dexter for a great demo of removing parts from a 3D printer. Mantis Gripper Design and Dexter adapter files. Demo setup: Video, Images, and DDE code.
- n/a
- Current Tool Interface CAD files (note: this will be replaced): OnShape, STL There is room in the body for wiring and a Tinyduino interface device which can be attached with slightly longer bolts.
- http://hdrobotic.com/dexter-community/#!/grippers Our forum section for grippers.
- https://www.eng.yale.edu/grablab/openhand/ These are good designs for open source grippers. They do NOT have the exact tool interface for Dexter, but could be adapted, or the tool interface part can be replace.
To search the Wiki, use the main search box in the black bar at the top, then select WiKi to filter the results or go to https://github.com/HaddingtonDynamics/Dexter/search?type=Wikis&q= and then add your search terms to the end of the URL.
To report errors, or request additional data, please chat with us on discord and/or raise a new issue