4

I am designing a new mechanism similar to robot arm. It would be a 6 or 7 axis with arms but not the same with traditional articulated arms. As a result, new DH matrix,and inverse kinematics involve. I would like to consult the robot professionals in this forum that do you suggest any simulation tool of this mechanism?

I plan to start with start and end points. Then I will do a trapezoid velocity plan and take sample points with sampling time along the path. After that, I would like to transfer these sampling points to motor joints by DH matrix and inverse kinematics. Finally I would do some basic 3D animation to visualize the movement temporally. I do not plan to simulate controller behavior because in my application motor drivers deal with it. I only need to focus on sending reasonable commands to motor drivers.

In my opinion, Matlab, octave, VC++, and some third-party tools are candidates. Starting from ground zero would be a time-consuming work. I would appreciate if any experts can share a tool or open source code from his or her experience. I did some search on Matlab robotics toolbox but I am not sure if it fits my need because it is expensive and optimized for ROS. In Octave there are also some robotics toolbox but I am not sure about what it can do and what it cannot.

Ben
  • 5,855
  • 3
  • 28
  • 48
Superuser
  • 185
  • 5
  • 2
    what questions are you trying to answer with the simulation? Do you only want to visualize the mechanism or are you trying to predict something? – hauptmech Feb 25 '16 at 03:13
  • I try to optimize the arm length and volecity of each axis. If the design has some problem, I would like to find it out before I make it. – Superuser Feb 25 '16 at 05:27
  • If there movement is not reasonable, then I have to fix it. That's why I need to visualize the movement with animation. Thank you! – Superuser Feb 25 '16 at 05:37
  • I've seen a video on the net doing a robotic arm from scratch for his PhD. He used a program called Rhinoceros to simulate his work with animations. I tried to look up the video but could no longer find it. He machined the parts himself using Arduino Due as the controller board with I think a PC for image processing – user123456098 Feb 25 '16 at 05:52
  • I found it! XD https://www.youtube.com/watch?v=cod_SNq-d6c – user123456098 Feb 25 '16 at 05:56
  • I created a video where I show how to get the moving graphics of a mechanical arm https://youtu.be/crJXUlzJ918 – LCarvalho Feb 14 '18 at 23:27

1 Answers1

2

For visualization and kinematics, Gazebo works fine. You can use C++ or Python to work with it. There is lots of integration with ROS as well if you like that sort of thing.

If you want a clean and simple rigid body dynamics library, I really like RBDL, but you'll need to add your own integrator for simulation and graphics for visualization. odeint works well. For visualization, OSG has a really clean and nice design, and OGRE is what the Gazebo/ROS guys use.

If you are familiar with a CAD software such as Creo, Solidworks, Onshape, etc then it can be quick to set up your links and joints and move them around by hand to get a feel for things. Onshape is from the guys that created Solidworks and it's free github style (private data costs money).

A physical mockup, using cardboard, posterboard, particle board and tape, glue, brads, nails, screws and whatever else you need can be a quick way to understand a new mechanism. You can print out 2D sections from your favorite CAD software to scale as a template to help get complex shapes right.

The last open source automated mechanism synthesis software I kept track of and liked was Darwin2K, but that might be more hardcore optimization than you are looking for.

If you are comfortable with C++ I'd favor that over Octave. You're more likely to find C++ libraries that help you than Matlab/octave ones. (I know lots of guys that really like matlab/simulink for robotics work, but you mentioned the cost as an issue). If you are comfortable with Linux, I'd also favor that over windows; lots of open source code has a Posix base and can be a little clunky to work with on windows.

hauptmech
  • 4,425
  • 15
  • 20