(332879175) PC Based Robotic Arm - Mohd Farid Mizan - TJ211.M45 2008

Embed Size (px)

DESCRIPTION

ha

Citation preview

UNIVERSITI TEKNIKAL MALAYSIA MELAKA (UTeM)

PC BASED ROBOTIC ARM

Thesis submitted in accordance with the partial requirements of theUniversiti Teknikal Malaysia Melaka for theBachelor of Manufacturing Engineering (Robotics and Automation) with Honours

By

MOHD FARID BIN MIZAN

Faculty of Manufacturing Engineering

May 2008

ABSTRACT

Robotic arm has been widely use in manufacturing industry as part of automation system. Typical applications of robots in industry include welding, painting, assembly pick and place, packaging and palletizing, product inspection, and testing. PC based robotic arm has the same mechanism as the robots in industry. The pc based robotic arm is fully controlled by a computer, where the user has to control the movement of robot using the serial servo controller software. The serial servo controller circuit is serially connected to the pc, thus provide communication between the pc and the circuit. The signal from the computer will be received by the PIC at the circuit. The justified signal will then be use to execute the output to the servo motor, thus provide the necessary movement of the robotic arm. This project is to fabricate the robotic arm that can be directly controlled by computer. The special attributes of the project is the robotic arm is pc based. Its mean that the robot is fully controlled by the computer, makes it different than typical automatic and manual control robot. The project is very useful in gaining new experience and knowledge on robot arm fabrication and programming.

ABSTRAK

Robot lengan telah digunakan secara meluas di dalam sektor industri dan pembuatan sebagai sebahagian daripada sistem automasi. Di dalam industri, robot lengan sering diaplikasikan dalam proses kimpalan, semburan cat, pemasangan, pengangkutan dan pemindahan barang, kawalan produk, dan sebagainya. Robot lengan berasaskan komputer ini mempunyai ciri ciri dan mekanisma yang sama dengan robot robot lengan yang digunakan di dalam industri. Robot jenis ini dikawal sepenuhnya, pergerakkannya dengan menggunakan komputer. Pengguna mengawal pergerakan robot melalui pemuka yang telah dibangunkan khas di komputer. Litar pengawal motor servo bersiri disambungkan secara bersiri ke komputer, seterusnya memberi laluan komunikasi di antara komputer dan litar. Signal dari komputer diterima oleh PIC yang dipasang di litar. Signal yang telah diproses akan menggerakkan motor servo yang dikehendaki oleh pengguna dan seterusnya memberi gerakan robot yang dikehendaki. Secara mudahnya, projek ini mengkehendaki pelajar membina sebuah robot yang mampu berfungsi dengan sempurna. Kelainan robot ini berbanding robot automatik dan kawalan manual ialah pergerakkannya dikawal sepenunhya mengunakan komputer. Projek ini sangat bermanfaat dalam memperolehi pengetahuan dan pengalaman baru kepada pelajar.

CHAPTER 1

INTRODUCTION

1.1 Introduction

A robot is a reprogrammable, multi-functional, manipulator designed to move material, parts, tools, or specialized devices through variable programmed motions for the performance of a variety of task. - Robot Institute of America. The word robot has many different definitions, if it is refer to dictionaries and many encyclopedias. According to Robot Institute of America:

A robot is a re-programmable multifunctional manipulator designed to move material, parts, tools, or specialized devices through variable programmed motions for performance of a variety of tasks.

In a robot system, the number of independent Joint variables can be used to determine the number of degrees of freedom .The term degrees of freedom are the set of independent displacements that specify completely the displaced or deformed position of the body or system.In the simplest way, its describe the number of ways a robot can move. In general, there are four different geometric configurations of robots. They are Cartesian Robots, Cylindrical Robots, Spherical Robots, and Articulated Robots. The base rotations simulate the twisting of a human torso. The shoulder and elbow pivots on axis each. A robot can be actuate by three kind of means, which are hydraulic actuating system, electrical actuating system, and pneumatic actuating systemA robot manipulator can be divided into three sections, which are the arm, that consisting of one or more segments and joints; the wrist, that usually consisting of one to three segments and joints, and a gripper or other means of attaching and grasping.

A particle that moves in three dimensional space has three translational displacement components as DOFs, while a rigid body would have at most six DOFs including three rotations. Translation is the ability to move without rotating, while rotation is angular motion about some axis.

In three dimensions, the six DOFs of a rigid body are sometimes described using these nautical names:1. Moving up and down (heaving);

2. Moving left and right (swaying);

3. Moving forward and backward (surging);

4. Tilting up and down (pitching);

5. Turning left and right (yawing);

6. Tilting side to side (rolling).

The robotic arm to be construct in this project is only have 5 degerees of freedom, where it doesnt have the Part of Yaw. It means that the wrist cannot turn to left or right, depending to base rotation and shoulder movement to pick material that beyond the picking area of the wrist part.Most of the robot developed is a computer controlled robot.In a computer controlled robot system, the robot software consist of the control software and the application software.The control software or operating system of the robotis was designed to controlling the basic operations of robot, processing data measurements from the sensor, planning the path for the motions, and communicating with internal and external devices.The operating system is written using the high level computer programming such as FOTRAN, COBOL, PROLOG and LISP.The application software is the program written by user for applications.The robot can perform the task specified in the users written program.

1.1 Background of problem

The major problem will be occurred in the most critical part, which is constructing the serial servo controller circuit.Using the concept of learn from the basic, there is lack of knowledge in constructing the circuit, and there will be some difficulties too, in applying the electrical and electronic knowledge in this project.Huge effort and full guidance from mr.wise suprevisor is crucial in order to completing the project.The software used is also fresh in project executors thought.It will need an extra effort to finally understand the concept and how to applicate it in this project.When constructing the mechanical part, the main consideration will be time, and machine availibility.at the lab.The competition will be between all the final year students who are constructing their projects prototype. Instead, the available machine will not be in a good condition too.The students will have too wait and queu for their turn.

1.2 Objective

The main objective of this project is to build a pc based Robotic arm that are capable of picking and placing an object. During the completion of this project, the objectives to be achieved is to:

Understand the basic Configuration of Robot

To understand and apply the Microsoft Visual Basic 6.0 for robot programming. To construct the electrical DiagramFabricate and run the robot

1.3 Scope

In this project, the scope is to build a pc based robotic arm that are capable of picking and re- placing and object. Although the task is looked like simple, its actually consumed a hard work and time in applying the knowledge in electrical, mechanical and computer programming. The physical of the robot is manually constructed using the skills gained in Manufacturing Process Subject. The mechanical job involved in this project including fabricating the aluminum body of the robot using MagnaBend machine, drilling holes using the drilling machine,cutting the material using horizontal bandsaw machine and other machine that are appropriate to be used in this project. Knowledge in electrical and electronic is also compulsory to build this robotic arm, because the most critical part in this project is to build the serial servo controller which cost a lot of knowledge and deep understanding in electrical and electronic field. Instead, the PIC to be used in this project is also need to be programmed and build. The software to control the robotic arm is also an essential part.in this project. The software will be build by using the Microsoft Visual Basic 6.0. The position and sequence of the servo motor will be controlled using the software.

1.4 Significance of Study

The study of robotic is a very broad topic because the study consisits of three main field of engineering, which is electrical, mechanical and electronics. Firm knowledge on this three diciplines is compulsory in order to develop the fully functioning basic robotic system. Reference from the previous researcher may offer good input to the new comers in building a succesful functioning robot.

The completion of this project is very useful especially to undergraduate robotic major students. It can be very helpful to them, in which, a clear view about the concept of robotics can be obtained through the hands-on activity, using the existing completed robot. Cost can also be reduced by using the existing prototype robot rather than to purchase a brand new robot. The low initial cost compared to the readily available robot and low cost of maintainance can help in gaining more money to develop the more sophisticated equipment for instructional purposes.A project like this should be encouraged to all students, because it can help to build self confidence, to challenge themselves to build something that is beyond their capability.

1.5 Conclusion

During the completion of this chapter, a brief understanding about the robotic arm should be achieved. An adequate knowledge in three diciplines of engineering is essential in order to built a succesful functioning robot.The main goal of this project should always being highlighted each time the project is being undergoes.

CHAPTER 2

LITERATURE REVIEW

2.0 Introduction

This chapter will discuss and describe about the robotic arm. Nowadays, the robotic arm is widely used as part of automation system in a manufacturing field. The robotic arm is assigned for many tasks that are described as repetitive, continuous and cumbersome for human operators to accomplish. Although the initial cost is high, the company will not sigh to pay the bill because of its effectiveness and its undoubtedly efficiency. This project is about to build a smaller scale pc based robotic arm. The concept used is similar to the larger scale but the capability is different. The safety measurement for the robot will be lower as it is not sophisticated as industrial robot, which was equipped with many sensors to detect the presence of human as a maximum safety precaution. However, the project will benefit to the new comers and can be a platform for next further understanding to robotics. In this chapter, it will discuss the previous research made by the researchers and universitys lecturer. The researches were stressed on about the advance control of the robot and safety precautions for the robot in human environment.

2.1 General Operation of the Machine

The Pc based robotic arm is a robotic arm controlled by a computer or a pc. The user will operate the robot arm by deciding the parameter needed, at the built serial servo controller interface. The interface is designed and built using the Microsoft Visual Basic 6.0.The parameters to be computed is the angle of rotation of the servo motor. The servo motor provides the movement of the robotic arm. The serial servo controller need to control 8 servo motors that will needed to move this 6-axis robotic arm. The major task to be completed by this robot is to do the pick and place a material. The task is similar to robotic arm for part transfer that is available at the industry.

Personal Computer (User interface)

Serial servo controller

8 channels of Servo motor (attached at mechanical Construction

Fig 2.1: General Operation of the Pc based robotic arm

2.2 Previous Researches

2.2.1Human-like behavior of robot arms: general considerations and the handwriting task. Part I: mathematical description of human-like motion: distributed positioning and virtual fatigue

This two-part paper is concerned with the analysis and achievement of human-like behavior by robot arms (manipulators). The analysis involves three issues:

(i) The resolution of the inverse kinematics problem of redundant robots,

(ii) The separation of the end-effector's motion into two components- the smooth (low accelerated) component and the fast (accelerated) component

(iii) The fatigue of the motors (actuators) of the robot joints.

This paper deals with the problem of how to control a robot to make it move like a human and thus use the advantages of this behavior. From a mechanical point of view, a robot resembling the human should be kinematically redundant. Its mechanism should possess a higher degree of mobility than that required for a given motion task define operational space. The kinematics redundancy contributes to robot dexterity and flexible coping with unpredictable changes in its environment. It makes possible the avoidance of mechanical limits in robot joints, the avoidance of obstacles, the avoidance of singularities, a fault tolerant operation, the optimization of robot kinematics and dynamics, the distribution of joint motions in a human-like manner, and so on.

.

2.2.1.1Robot Arm Kinematics and Dynamics

Fig 2.2: Robot arm internal position

The Distributed Positioning concept is formulated in analogy to human behavior and is intended to model a robot arm employed for fast manipulation .Redundancy is added to a basic nonredundant con in order to allow the execution. The idea is to separate the required motion of the end-e into two components, a smooth component and a highly accelerated one. At the same time, the robot joints are separated into two groups, one group of joints representing the high-inertia nonredundant part of the robot, and the other group containing the low-inertia redundancy. The distribution of the original end-e motion is made such that the high-inertia nonredundant part implements the smooth component, while the low-inertia redundancy is responsible for the accelerated component.

The virtual fatigue concept resembles the behavior of the human arm in the presence of fatigue. For example, the redistribution of motion when some joint ` feels a fatigue. The virtual fatigue model method is suggested that can be used in robots to emulate the effect of biological fatigue in human muscles. The expectation is that such a method will provide human-like movements in the robot joints.

In the absence of the fatigue, the human-like performance is achieved by using the partitioning of the robot joints into smooth and accelerated ones (called distributed positioningDP). The actuator fatigue is represented by the so-called virtual fatigue (VF) concept. When fatigue starts, the human-like performance is achieved by engaging more the joints (motors) that are less fatigued, as does the human arm.

(Potkonjak V., Tzafestas S., Djordjevic G., 2001)

2.2.2 Present and Future Robot Control Development an Industrial

Perspective

By applying and developing advanced control, it is possible to continuously improve the robot performance, which is necessary in order to increase performance and lower cost of industrial robot automation. Moreover, it has been necessary to adapt the robot control to the plant automation systems with respect to application protocols, communication systems, I/O- interfaces, PLC-equipment, user interfaces, process equipment, etc., for optimal use of the robots and for short change-over times between different products (RIA & NIST, 2000). In the automotive industry, which will be the starting point for this presentation, full robot automation is usually found for car body assembly, press tending, painting and coating and to some extent for engine and power train assembly (ABB-1, 2003).

2.2.2.1 Present Industrial Robot Control Development

One example of a present popular development is about multi robot control. Different solutions are now presented by several robot manufacturers, though a couple of manufacturers already have offered this as a product for some years (Bredin, 2005). The main reason for adopting multi robot control in industry is the possibility to reduce production cost by having robots working in parallel, especially for low speed processes as arc welding. Other benefits are that several robots can be controlled from one controller, floor space is saved, collision avoidance performance can be improved and cycle times can be reduced.

Related to the need of multi robot control are the requirements to develop robots with very high load capacity (ABB-2, 2001). Robots handling loads up to 500 kg have been developed to handle, for example, parts of car bodies. Another popular development direction is towards new safety arrangements in robot installations (ESALAN Systems, 2006).

One short term motivation for this is the possibility to replace electrical and mechanical working range limits with safe software limits, which makes it cheaper and faster to configure a robot cell .Still another ongoing development direction can be found in using wireless communication in robot systems (Katzel, 2004).

The biggest interest for wireless is with respect to the communication between the teach pendant and the controller, but there is also an interest in wireless communication between the robot controller and sensors and process equipment (Frey, Endresen, Kreitz, & Scheibe,2005). Other ongoing improvements of the robot technology are related to the user- and application interfaces of the robot controller with the purpose to make robot programming, operation and maintenance simpler even though the complexity

2.2.2.2 Scenarios about Future Industrial Robot Control Development

A robot that is able to work automatically according to a program generated, supervised, edited and recovered by direct physical interaction between human and robot will of course also solve many of the problems encountered when introducing robots in small and medium size enterprises (SMErobot, 2005). Developing robot control for such human robot collaboration and Industrial robot development has for sure not reached its limits and there is still a lot of work to be done to bridge the gap between academic research and industrial development and to intensify academic research in directions that target new applications and new flexible automation concepts.

Robot control is a key competence for robot manufacturers and a lot of development is made to increase robot performance, reduce robot cost and introduce new functionalities. Examples of development areas that get big attention today are multi robot control, safe control, force control, 3D vision, remote robot supervision and wireless communication. The application benefits from these developments are discussed as well as the technical challenges that the robot manufacturers meet.Model-based control is now a key technology for the control of industrial robots and models and control schemes are continuously refined to meet the requirements on higher performance even when the cost pressure leads to the design of robot mechanics that is more difficult to control. Driving forces for the future development of robots can be found in, for example, new robot applications in the automotive industry, especially for the final assembly, in small and medium size enterprises, in foundries, in food industry and in the processing and assembly of large structures. Some scenarios on future robot control development are proposed. One scenario is that light-weight robot concepts could have an impact on future car manufacturing and on future automation of small and medium size enterprises (SMEs).

Such a development could result in modular robots and in control schemes using sensors in the robot arm structure, sensors that could also be used for the implementation of redundant safe control. Introducing highly modular robots will increase the need of robot installation support, making Plug and Play functionality even more important. One possibility to obtain a highly modular robot program could be to use a recently developed new type of parallel kinematics robot structure with large work space in relation to the robot foot print. For further efficient use of robots, the scenario of adaptive robot performance is introduced. This means that the robot control is optimized with respect to the thermal and fatigue load on the robot for the specific program that the robot performs. The main conclusion of the presentation is that industrial robot development is far away from its limits and that a lot of research and development is needed to obtain a more widely use of robot automation in industry. (Torgny Brogrdh, 2006)

2.2.3 An Adaptive Output Feedback Controller for Robot Arms: Stability and Experiments

An adaptive output feedback controller for robot arms is developed in this paper. To estimate the joint velocities, a simple nonlinear observer based on the desired velocity and bounded position tracking error is proposed. The closed-loop system formed by the adaptive controller, observer and the robot system is shown to be semi-global asymptotically stable. Extensive experiments conducted on a two link robot manipulator confirm the effectiveness of the proposed controllerobserver structure. To highlight the performance of the proposed scheme, it is compared via experiments with a well-known passivity based control algorithm.

The experimental platform consists of a two-link direct drive planar manipulator shown in Fig. 1. Each axis is driven by an NSK-Mega torque direct drive servo-motor which is capable of up to 3 revolutions per second maximum velocity and position feedback resolution of up to 156,400 counts per revolution. The base motor is rated to deliver up to 245 N move torque output, and the elbow motor produces torque output up to 40 N m. The NSK Mega torque motor system consists of motor and its driver unit. This is a stand-alone system that contains all the elements needed for complete closed-loop servo motor control.

The NSK motor consists of a high torque direct drive brush-less actuator, a high resolution brush-less resolver, and a high precision bearing. The Mega torque motor is capable of producing extremely high torque at low speeds suitable for direct drive applications. The heavy-duty bearing eliminates the need for separate mechanical support since the motor case can often support the load directly. The direct drive actuator eliminates the need for gear reduction, so repeatability is limited only by the resolution of the position feedback.

Fig 2.3:Two-link robot manipulator

Also, direct coupling of the motor and load permits tighter and more direct control of the load. Real-time control is performed with a host computer (Pentium PC) and a servo DSP (TMS320C30). The integer and floating-point arithmetic units equipped on the TMS320C30DSP can obtain a peak arithmetic performance of 33.3 million floating point computations per second. This allows complex algorithms to be executed using very small sampling periods. (Pagilla R., Tomizuka M., 2001)

2.2.4 An Experimental Study on Compliance Control for a Redundant Personal

Robot Arm

The paper introduces the concept of adaptable functional compliance, and describes the main features of the robotic arm used for the experimental research work. In order to satisfy the requirements of increasing the safety in the interaction and the robot functionality in tasks performed in cooperation with humans, three solutions are developed and tested for the considered personal robot. In this paper, it is shown how a compliant behavior for a robot manipulator used in personal assistance.

When designing the control of a personal robot manipulator, at least three aspects need to be considered:

Safety: The control system has to guarantee that robot movements are not dangerous for possible injuries to humans, nor to the environment or the robot itself.Human-Robot interaction. : Personal care and assistance tasks require that the robotic assistant is able to get in touch with the user move things in contact or around him/her, in accordance with his/her own movements.Functionality. Personal robots are also meant to accomplish service tasks for humans.

2.2.4.1 Adaptable Functional Compliance

The research work presented in this paper focuses on the realization of an adaptable functional compliance for a personal robot aimed at helping disabled users in housekeeping and personal care. Three different control schemes have been formulated:

the compliance control with self-regulating compliance in the Cartesian space;

the compliance control with self-regulating compliance in the joint space;

the impedance Compliance controlAll the three control strategies are enriched by self-regulated compliance in order to increase the robot functionality in the interaction with objects and persons. The Dexter, shown in Fig.1, is an 8 degree-of freedom (d.o.f.) anthropomorphic robot arm designed for applications of

assistance to disabled and elderly people:

Fig2. 4:Dexter Mechanical Arm

Dexter has an 8-revolute-joint kinematic structure, composed of shoulder, elbow and wrist. The kinematic design was influenced by the reachable workspace and, thus, by typical dimensions and localization of the furniture and objects in a house. A minimum safety level in interaction is guaranteed by the low operating velocity (under 0.2 m/s) and by the light and flexible mechanical structure. Robot structure has eight joints, J0 J7. The eight joints are not actuated singularly by a motor located on each link, which are actuated by motors and driving gear-boxes directly connected to the articulation axis. The motors for the actuation of joints J2 . . . J7, instead, are all installed on one side of link 1 and for them the mechanical transmission system is realized with pulleys and steel cables.

The on-board architecture is based on an AT platform and two PC104 racks located in the back of the mobile base on which the arm is mounted, in the MOVAID system. The low-level arm controller, realized by means of two MEI 104/DSP-400 board controllers, runs on one of the two PCs. The control actions are described in C language, using a specific function library, and the communication among CPU, DSP and peripheral units is in binary code on a Data Bus.

Both the sections dedicated to the implementation of the on-board PID controllers, acting on the eight axes of the robot, and the I/O coordination functions are realized on the DSP. The axis control boards send 16-bit analog command signals to the DC or brushless servo-motors and high resolution step and direction signals to the steppers. All the three implemented control strategies reveal comparable performance as regards the regulation of interaction forces, only the compliance control scheme in the joint space and the impedance compliance controller can effectively manage the coupling and the anthropomorphism of the robotic structure. (Zollo L, Siciliano B., Laschi C.2003)

2.2.5 Experimental Evaluation of Model-based Controllers on a Direct-drive

Robot Arm

In this paper, the experimental evaluations of four model-based control algorithms were discussed. It was tested on a 2-dof vertical direct-drive robot arm. A direct-drive arm is a mechanical arm in which the shafts of articulated joints are directly coupled to the rotors of motors with high torque. Model-based controllers refer to those control algorithms requiring explicit knowledge of the closed-form robot dynamics for effective implementation. Because of the direct drive nature of the arm, the robot nonlinear dynamics cannot be neglected for controller design purposes.

2.2.5.1 Experimental System Description

The experimental set-up consists of a direct drive vertical robot arm with 2 d.o.f, whose rigid links were joined with revolute joints. It is equipped with joint position sensors, motor drivers, a Digital Signal Processor (DSP) motion control board, a host computer 486 PC and software environment which generates a user-friendly interface.

Both links were made of 6061 aluminum, 0.45 m long. They are actuated by brushless direct- drive servo actuator to drive the joints without gear reduction. The servos are operated in torque mode, so that the motors will act as torque source and accept an analog voltage as a reference of torque signal. Position information is obtained from incremental encoders located on the motors which have a resolution of 1,024,000 p/rev for the first motor and655,360 p/rev for the second one.

Fig 2.5: Experimental Arm

Fig.2.6: Robot Arm

In this paper, the experimental evaluations of 4 types of controllers were focused: PD control, Computed-Torque control, PD+ control, and PD control with computed feed forward. These controllers include Coulomb and viscous friction compensation as well as cancellation of gravitational torques.2.2.5.2 PD Control

It is the simplest and popular control scheme used to solve the point-to-point robot control. However, this controller does not provide exact tracking for time-varying desired joint position, but it does guarantee a bounded position error.

2.2.5.3 Computed-torque Control

Its also called ``inverse dynamics control''. This control scheme uses the robot dynamics in the feedback loop for linearization and decoupling. If the manipulator and friction dynamic models are exact, then the computed torque controller achieves dynamic decoupling of all the joints using nonlinear feedback, resulting in an asymptotically stable linear time-invariant error dynamics, and thus asymptotically exact tracking.

2.2.5.4 PD+ Control

The first two terms on the right-hand side represent a PD controller, while the remaining depends on the robot dynamics. It provides asymptotically exact tracking without exact linearization.2.2.5.5 PD Control with Computed Feed Forward

This controller consists of a linear PD controller plus a feed forward of the nominal dynamics computed along the desired trajectory. The advantage of this controller is that once the desired trajectory for a given task has been specified, and then the feed forward can be computed off-line, which can eventually reduce the computer burden.

The tests of four control algorithms were presented on a direct-drive robot arm. The performance of these controllers was compared with the linear PD control. As expected, the observation shows that those controllers compensating in some way for the robot dynamics attained better tracking accuracy. This is particularly true when fast motions were requested to the arm. Under the root-mean-square average performance index, the best controller was the PD control with computed feed forward followed by the PD+ control and the computed torque control (Reyes F., Kelly R,. 2000)2.3 CONCLUSION

At the end of this chapter, deep comprehension about the robotic through the past researches should be achieved. Lesson from previous research should be taken as a step stone, to build a successful and functioning robotic arm. Even the approach stressed on the research was not best comprehended; the information obtained should be kept as a treasure that will be used in future for specific purposes.

CHAPTER 3

METHODOLOGY

3.0 INTRODUCTION

The aim of this project is to bulid a robotic arm that is revolute type and closely resembles the human arm.It is a robotic arm that has the same features as the most industrial robot used in industry, such as ABB robot and KUKA robot, but it is to be build in smaller scale and not as sophisticated as this two kind of robots.

Basically, it has 6-Degrees of Freedom, which mean the rotation or the moving part of the robot is consist of the rotation of robot base, robot shoulder, robot elbow , robot wrist and the movement of the end effector or the gripper. This project includes a controller board to interface the arm to a personal computer (pc), and give the details to the Visual Basic software that used to control the arm.The arm controller board is designed to receive serial input commands, so that it can be interfaced to any microcontroller or computer system.

The arms rotatting base is powered by a single servo that will rotates the rest of the arm in a maximum angle of 180 degrees.arc.The shoulder part is the part mounted on the robot base.It is an elevation joint that can move the arm through 180 degrees from horizontal to vertical on each side.In the shoulder part, is uses 2 servos.The purpose of using a couple of servos is to gain more torque to lift the rest of the arm, as well as the object that it may be grasping.Attached to the shoulder part is an elbow.The elbow use a single servo that will enable it to move through 180 degrees.The final part is wrist part, attached with the gripper.It use single servo motor, that will provide movement for the gripper.