Forum Posts

Dexter Ong
Mar 09, 2021
In General Discussion
Thought I'd share one of my recent experiments - a capacitive proximity sensor built into the arm. I've been wanting to try this out for a while and it works pretty well as a proof-of-concept. There have been small projects on proximity sensing here and there but I haven't seen it actually used in an arm. It makes for a simple and cheap alternative to actual torque or force sensing. The concept itself is pretty simple and can be easily implemented with https://playground.arduino.cc/Main/CapacitiveSensor/. For the capacitive plate, I used alternating layers of copper tape and aluminium foil, about 3 to 4 layers of each, along with a 40MOhm resistor. Unfortunately, I wasn't to get much working beyond this due to the EMI from the motor cables (this is with only J1 powered). I'm not really up for re-wiring the arm so I'm putting this idea aside for now. Still, I think it's a really cool concept. If anyone else gets to properly shielding their wiring and takes this further, I'll be interested to see the results! Cheers, Dexter
Capacitive Proximity Sensor content media
0
3
217
Dexter Ong
Jan 31, 2021
In General Discussion
I'll be documenting my modifications here and updating it as I work through the changes. You can find the designs and assembly instructions here: https://github.com/ongdexter/ar3_hardware_mods Joint Position Encoders I've recently got my AR3 integrated with ROS (more details here) and as part of the process had to shift the J2 and J5 encoders to read joint positions directly. I have a significant amount of backlash and slip in J2, J3 and J5. J3 is not as big an issue as it is calibrated under tension. However, getting more accurate joint position measurements for J2 and J5 was necessary for planning in MoveIt. I've designed adapters for mounting the J2 and J5 encoders directly on the joints. They are both designed to be added on with almost no disassembly required - just removing a few screws. The re-wiring of the encoder cables may be a little more tedious depending on how neat you want it to be. These were done up to the best of my very limited CAD skills, and I understand that Chris is also working on a proper design, but I hope that they will be useful for anyone who wants an interim solution. Inductive Limit Switches I'm done repositioning the J5 limit switch to calibrate directly against the J6 bearing cap, which should be more accurate than using the belt carrier. I also took the opportunity to try out an inductive sensor, which I thought would be easier to position for the calibration angle than the mechanical switches. Having inductive limit switches will also help avoid cases of damaged or bent limit switches. It seems to have worked well so I'll eventually redesign and replace the other limit switches as well.
AR3 Hardware Mods content media
0
5
627
Dexter Ong
Jan 31, 2021
In Robot Builds
Hi all, I would like to share my work on integrating the AR3 with ROS and MoveIt. I've released a baseline version of my code with the necessary packages to get you started with controlling your own arm. I hope that it will be helpful for those looking to explore ROS and MoveIt. The project is available at: https://github.com/ongdexter/ar3_core I have implemented a joint position trajectory controller in the ros_control framework coupled with a simple position control on the Teensy. Tracking trajectories generated by MoveIt enables more complex behaviours like moving around obstacles. I have included a basic implementation of the move group API which should be sufficient for simple tasks. However, I don't intend to develop a full GUI for teaching tasks as that falls outside of my intended use case and especially since Chris has already developed a very efficient tool for that in ARCS. Everything is in C++, though the MoveIt Commander Python scripting interface can used to interface with the core software. I'll likely use it for a simple jogging tool, for instance. You may have also noticed from the video that I've made some changes to the encoders as well. I've shifted the J2 and J5 encoders to the joints to ensure correspondence between the actual joint position and the model in MoveIt for motion planning. I'll detail those changes in a separate thread. I intend to explore some vision-based planning and I'll be happy share my progress. I hope that some will find my work useful and I welcome any suggestions and contributions. Cheers, Dexter
AR3 with ROS and MoveIt content media
5
11
2k

Dexter Ong

More actions