This project implements manual control of a 3R-manipulator using LabVIEW, XBox & Arduino and then a fully autonomous varient, whose inverse kinematic solution is implemented using C++.
A friend of mine later designed this 3D 3R-manipulator for an automatic soil mapping project, which use the same skeleton as the first arm design in the club. So for easier understanding I am showing it here:
The arm has three revolute joints (excluding end-effector). So, three servo motors with adequate torque have been used as actuators.
Also the keys of XBox are as below:Here keys 14, 16 are analog keys whose output range from `- 32,000 to 32,000` and all the other keys are just boolean.
Because of all the wiring and absence of abstraction in blocks, it might seem a little clumsy, but the implementation is pretty straignt forward. For all the boolean inputs an `adder` or a `substracter` is connected and pressing a boolean input increases or decreases the servo angle. `if - else` containers have been used to clamp the variables from incrementing beyond joint angle limit. Whereas for analog inputs, use of a down-scaler has been made to map the analog input to range of joint angles. Also one servo we used has just a speed control, so double loop logic has been used in such case.
Content Loading !!



