Open source robot control software
The designer puts up some Arduino sketches showing the arm wave back at you in a video, but rarely is there any model for a motion control system like ROS. I remember a class in college that taught the math involved for a robot arms movements. A lot of matrix multiplications. This has given me an idea. I am currently playing with ideas for adding additional axes to my ShopBot, to let me carve any side and orientation of something.
The usual solution beyond XYZ is some combination of rotary axes, or mounting the cutter on a robotic arm which has issues with stiffness, since it must move freely through all axes. But what if you had a really strong robotic arm that could withstand the cutting forces against something it held without moving, and had fingers that would allow it to reorient what it was holding into any position?
Then, use ordinary XYZ movement of the cutter. The programming effort would probably be stunning, but just imagine the flexibility! The addition of a rotary axis or two just works and isnt anywhere near the gargantuan task of motion flow control programming and everything that comes along with any type of articulating machinery.
Please be kind and respectful to help make the comments section excellent. Comment Policy. This site uses Akismet to reduce spam.
Learn how your comment data is processed. By using our website and services, you expressly agree to the placement of our performance, functionality and advertising cookies. Learn more. Report comment. I use the repetier firmware which works pretty well but any 3D printer firmware should work. Obviously this software is the host software but it's not the greatest tool to use to test your connections and pin assignments. For that I use the repetier host. To wire up the arm start by putting 3 jumpers across all 3 microstepping switches beneath each controller - this will set controllers to 16 times microstepping.
Then put the A stepper drivers into the slots shown in the image and connect the stepper cables. I used the one that came with the Dobot by chopping the jack off the end and wiring it in. Also put a jumper across the middle and inner pins next to the servo connectors to power join the VCC to the servo VCC.
For some reason the people who made the Dobot decided not to implement any kind of end stop on the arm. I assume they intended to use the 2 axis angle sensors that are mounted on each segment. I couldn't find any code that would allow me to hook into these sensors so I opted for the simple route and put some physical end stops in. I'm also not sure how they intended to get over the gyroscope drift issue. The X is mounted to the bottom plate and uses a small roller wheel micro switch. To run this project you'll need visual studio.
Set the start up project to "ConsoleArmControl". That is the main entry point at this stage. Currently set up with. The forward kinematics uses a series of Denavit-Hartenberg matricies with parameters specified by the arm being controlled.
You can even run Gazebo in the cloud and interact with the simulator using a simple web browser. This is perfect if you want to work on a laptop since you can rent an AWS instance to quickly test and design a robot. V-REP is free for educational purposes, or you can upgrade to the pro version if you plan on using it for commercial projects. It can accurately handle object interactions like collisions, contact points, and grasping. V-REP also supports particle physics to simulate air and water, so you can accurately model jet engines and propellers.
V-REP can also simulate a wide range of sensors, and you can even add new sensors to the simulator via a plugin. There is even support for Path and motion planning in V-REP and you can even calculate forward and inverse kinematics. It also has support for mesh editing so you can make small adjustments to your designs in the simulator, or you can easily import models in any one five different 3D model formats Obj, STL, URDF, etc. It also has better GPU support for more complex tasks like machine learning and data processing.
These modules will let you quickly add features to your robots like keyword detection, LIDAR, stereo vision, and pre-trained neural networks visual recognition systems. The ISAAC simulator also runs on an enhanced version of the Unreal Engine 4, which is an open-source game engine that powers some of the top video games on PCs and consoles.
It has a free trial version, or you can upgrade and pay for a full license if you want to get access to all the premium options. This simulator is primarily meant to be used as an educational platform to teach younger people about the fundamentals of robotics.