Learning Robotic Concepts With A 3R Lego NXT Robotic Arm

2y ago
40 Views
2 Downloads
964.27 KB
7 Pages
Last View : 16d ago
Last Download : 3m ago
Upload by : Helen France
Transcription

Avestia PublishingJournal of Automation and Control ResearchVolume 1, Year 2014ISSN: 2368-6677DOI: 10.11159/jacr.2014.005Learning Robotic Concepts with a 3R Lego NXTRobotic ArmMichael Thompson1, Victoria M. Serrano R.1, Jordan E. Willem Noriega2, Vanessa Martinez31ArizonaState University, 1151 S. Forest Ave, Tempe, Arizonamjthomp3@asu.edu; vmserran@asu.edu2Arizona State University, School of Sustainable Engineering and the Built Environment,1151 S. Forest Ave, Tempe, Arizona, 85281jewillem@asu.edu3Arizona State University, School of Electrical, Computer, and Energy Engineering1151 S. Forest Ave, Tempe, Arizona, 85281vimartin@asu.eduAbstract- In this paper we present the use of a 3R Lego roboticarm for teaching basic robotic concepts. The Lego MindstormsNXT kit is an affordable equipment that can be used to bettervisualize robotic concepts usually taught in classes. The 3RLego Robot has 2 degrees of freedom and has been equipedwith an accelerometer located at the end-effector to collectacceleration data in the x, y and z axes. Additionally, agyroscope was placed at the joint for the up and downmovement. This allowed for obtaining a plant for the 3R LegoRobot in order to understand the inverse and forwardkinematics as well as the physical representation of DenavitHartenberg (DH) parameters, velocity manipulability ellipsoidsand trajectory planning. This is essential and key in the study ofplants that is relevant to everyday use in the industry andacademia. This will allow professors at the university to teachmore easily with hands-on approach. The Lego product is costefficient and new programmable blocks can be built andincorporated into Simulink models. Therefore, this can beextended to more complex analysis and feedback control. Thiswill lead to better analysis of the system and provide thestudents with higher education of what they have learned inclass. Furthermore, students will be more competitive to obtainjobs in industry by combining theoretical with experimentalapproach. Traditionally, industry core concepts are not taughtin the class and may be incorporated with the 3R Lego robotfor resume building and skill set application. Some papersindicate the use of different programming languages for theLego Robots; however, none of them have the capabilities andpotential of Matlab and Simulink. Additionally, some othershave presented simulation work to teach robotic-relatedconcepts, but they either lack the hands-on approach or thehardware utilized is expensive. The importance of this studylies on understanding and implementing basic robotic conceptsin Matlab and Simulink together with a 3R Lego robot.Therefore, a more complex Simulink model can be developedDate Received: 2014-05-21Date Accepted: 2014-09-04Date Published: 2014-10-2838for controller design purposes. This paper describes acomparison of a simulation model versus a real life system forhelping students to understand modeling system theoriesversus real world applications.Keywords: 3R lego robot, Simulink, Matlab, Forward andinverse kinematics,planning.DHparameters,Trajectory Copyright 2014 Authors - This is an Open Access articlepublished under the Creative Commons Attribution Licenseterms tricted use, distribution, and reproduction in any mediumare permitted, provided the original work is properly cited.1. IntroductionAs technology advances, engineers have alwaysbeen interested in mimicking animal or human-likebehaviors using robots. A great motivation to studyrobotics is how often they are used in industrialapplications. Someone would be hard-pressed to findany factory that does not heavily depend on robots tofunction. They are faster, more precise, and lessexpensive in the long run when compared to theirhuman counterparts. Robots are capable of performinga variety of different tasks. In addition, they do not needcommon safety and comfort requirements that humansneed in order to continuously perform them.Furthermore, as long as the robots are intuitivelydesigned, they can be adapted and used in the future fordifferent maneuvers as well. However, understandinghow these apparatus work in real life constitute an

important component in robotics-related classes.Although robotics concepts are often taught in manybooks [1], [2], [3], they become hard to visualize in athree-dimensional space. To cope with this problem,some simulating programs have been proposed in therecent years. RoboAnalyzer [4] emerged as an attemptto perform forward kinematics and show animationsbased on the DH parameters of a KUKA KR5 robot [5].In a later version, features such as transformations,import of a 3D CAD model and inverse kinematics werealso included [6]. Other platforms such as ROBOMOSP[7], RoboWorks [8] and Easy-Rob [9] have been createdwith the same purpose. In the same matter, a MatlabGUI was developed to simulate and learn the basicconcepts of robot dynamics [10]. They include theselection of well-known manipulators like Puma,Stanford and Scara by changing the link masses, inertiasand the Denavit-Hartenberg (DH) parameters. Theimportance on the latter lies on the fact that they aretypically used to represent the architecture of a roboticarm and are usually provided by its manufacturer [11].The DH parameters were used to define differentconfigurations of a FANUC LR Mate 200iB robot andcompared to the results provided by an open softwarefor the synthesis, analysis, simulation and control of thesame robot [12]. Nonetheless, although they allow tohave a better understanding of real physical systems,they become expensive for educational purposes.Recent studies demonstrate the extended use ofLego NXT kits for educational purposes [13], [14]. Whilemost of them have been used for controller design [15],[16], [17] and signal processing manipulation [18], thenumber of articles found for teaching basic roboticconcepts is lacking. In this matter, a 3 degrees offreedom (DOF) drawing robot has been proposed [19]using Lego NXT and LejOS [20], a program that allowedto have a better resolution for the position of the motoraxle compared to the NXT default operating system.Additionally, a robotic arm through the use of LegoMindstorms NXT kits and the Not Quite C (NQC)language have been developed [21]. Yet, none of themuse Matlab and Simulink to study and control therobotic arm; therefore, they limit the research scopethat can be developed with the use of Lego NXT kits.Matlab and Simulink constitute a powerful environmentthat allows the use of toolboxes such as robotics [22],system identification [23], control system tuning [24]and optimization [25] that leads to a betterunderstanding of control systems and robotics.Our goal is to build and program a robotic armusing critical robotic concepts. This includes forwardand inverse kinematic equations, DH parameters, forceand velocity manipulability ellipsoids with the use ofSimulink and Matlab. The Lego Mindstorms NXT kitallows for a comparison between simulation and realdata. This will allow a future integration of moreadvanced control-related concepts through the use ofexistent Matlab toolboxes.2. MethodsIn order to control the robot arm to accomplishthe task, several analyses were needed including theforward and inverse kinematics, the workspace,trajectory planning and the force and velocitymanipulability ellipsoids at the end-effector throughoutall the configurations. The manipulator constituted by 4links (including the base) connected by 3 joints. The aimof forward kinematics is to determine the end-effectorposition and the orientation as a function of the jointangles. It was illustrated in class that the position andorientation of a body with respect to a reference frameare described by the position vector of the origin andthe unit vectors of the frame attached to the body.Hence, with respect to the base frame, the forwardkinematics function can be expressed by thehomogeneous transformation matrix.2.1. DH ConventionFigure 1. The kinematic model of the Lego robot armSince the manipulator structure is an openkinematic chain, each joint connects two and only twoconsecutive links. Therefore, it is reasonable to firstdescribe the kinematic relationship betweenconsecutive links and then to obtain the overalldescription of the manipulator kinematics in a recursivefashion [1]. To this purpose, the Denavit-Hartenberg39

(DH) convention was used to construct the directkinematics function by composition of the individualcoordinate transformations expressed by Eq. 1.kinematics equation can be written in the form of Eq. 4which is obtained from Eq. 3.(4)(1)This expression shows three joint space variablesthat allow specifications of at most three independentoperational space variables. On the other hand, theorientation is not a concern, thus all joint angles can befully defined given a position of the end-effector.The frame for each link was defined as shown inFig. 1. Therefore, the coordinate transformation describing the position and orientation of the end-effectorframe with respect to the base frame is given by Eq.2.2.3. Inverse KinematicsThe inverse kinematics problem consists of thedetermination of the joint variables corresponding to agiven end-effector position. The solution to thisproblem is of fundamental importance in order totransform the motion specifications, assigned to theend-effector in the operational space, into thecorresponding joint space motions that allow executionof the desired motion. As mentioned above, themanipulator is not a redundant structure, it is easy tocompute the closed-form solution for the inversekinematics based on Eq. 3. Therefore, the solution forthe inverse kinematics can be obtained as:(2)Therefore, the homogeneous transformationmatrix for this manipulator is shown below.(3)Consider the arm in Fig. 1, where the base and thelink frames have been illustrated. The axes xi werechosen to minimize the calculation. The DH parametersare specified in the table 1. It is worth pointing out thatthe frame 3 does not coincide with the end-effectorframe and the end-effector frame can differ due to thedifferent tasks.(5)(6)(7)Table 1. Lego arm D-H parametersi1234αi0-90 00ai0L1 95.32mmL2 201.75mmL3 61.05mmdi0d 24.7mm002.4. WorkspaceThe workspace is the region described by theorigin of the end-effector frame when all themanipulator joints execute all possible motions [3].Since the manipulator has less than 6 degrees offreedom (DOFs), it cannot take any arbitrary positionand orientation in space. Therefore, it is necessary tocompute its workspace to guarantee all the positionsalong the path are reachable for the manipulator. Inorder to simplify the calculation, we chose the endeffector as the center of the third joint and theworkspace is shown as Fig. 2a.Given a set of joint variables, the values of theoperational space variables deviate from thoseθi0Θ1Θ2 - 90 Θ3 - 180 2.2. Forward KinematicsIf the task is to be specified for the end-effector, itis necessary to assign the end-effector position as afunction of time. On the other hand, the joint spacedenoted the space in the vector of the joint variables(θ1, θ2 and θ3). Accounting for the dependence ofposition from the joint variables, the forward40

computed via direct kinematics and the directkinematics equation is dependent on the DHparameters by Eq. 4.Figure 2. Workspace and velocity manipulability ellipsoids2.5. Computation of the Jacobian MatrixAfter establishing the relationship between thejoint variables and the end-effector position, we areable to compute the differential kinematics to map thejoint angle velocities and the end-effector velocities.Therefore, if the end-effector location is expressed withthe reference to a minimal representation in theoperational space, the Jacobian matrix can be computedvia differentiation of the forward kinematics functionwith respect to the joint variables [1]:(8)Therefore, we are able to compute the generalversion of the Jacobian matrix for our Lego arm and theresult shows as below:(9)2.6. Velocity Manipulability EllipsoidsThe evaluation of the manipulator is very helpfulfor determining suitable manipulator postures toexecute a given task in the current configuration.Therefore, it is necessary to compute the velocitymanipulability ellipsoids for all the configurationsduring the task. This allows us to make sure that thereare no singular configurations, and more importantly, itcan help us to obtain an idea of the capability at theend-effector for all configurations. Consider the set ofjoint velocities of unit norm [3]:this equation describes the points on the surface of asphere in the joint velocity space. Through the differential kinematics equation 4 solved for the jointvelocities, we can obtain that:(11)(10)41

Figure 3. Motion of the robotic arm2.8. Trajectory PlanningGiven an initial configuration and a final assignedposture, we selected a path for the end-effector in theoperating space based on workspace and manipulabilityellipsoids analysis. We divided the motions into severalparts, including (1) reach an object, (2) pick up theobject, (3) lift the object, (4) avoid an obstacle, (5) placethe object back down and for each part, it lastsapproximately 2 seconds. By Eqs. 5, 6, 7, we are able tosolve the inverse kinematics for all configurations. Thecubic spline trajectory was chosen to plan the point topoint motion for each part of the motion. Based on theinverse kinematics, each part of the motion only needsone joint to move which simplifies the calculation. Fig.3b shows the result for Part 1 of the motion, reachingthe object.The position curve shows that the initial jointangle is 90 degrees and the final joint angle is 0 degrees.The arm starts from rest and end at rest.For our Lego arm, since it is a nonredundantmanipulator, the points on the surface of the sphere inthe joint velocity space are mapped into the points onthe surface of the ellipsoid in the end-effector velocityspace as shown in Fig. 2b.2.7. Simulink ProgrammingThe Simulink model encompasses three motorsand six time signals. The motors are connected up andwork together in a time sequence in order for the 3RLego robot to work properly within the desired designspecifications. The entire robot ran for approximately10 seconds allowing each motor to work independentlyof each other. The motors were actuated at specific timesegments so that a smooth path trajectory wasaccomplished. Three simulated signals of each motorworking independent of each other. Three blue signalsworks together in time to actuate the arm motor. Onegreen signal is actuated to avoid an object during itspath. Two red signals are actuated to allow the endeffector to grasp an object and set it back down. Thedifficult part of programming the motors was to get themotors to work in sequence. After one motor wouldstart the other motor would stop and start. To correctthis the global configuration of the motors had to belooked at so that the motors functioned in sequence yetindependent of one another as shown in Fig 3a.2.9. Data CollectionAn acceleration sensor was placed at the endeffector and connected to port 1. The sampling rate weset was 0.01 seconds. This allowed the sensor to collectas much information as possible within the ten secondsof running the actual program. This sensor providesacceleration data within the x, y and z axes. The sensorhas an orientation so that the axis perpendicular to the42

floor always shows the Earth’s gravitationalacceleration. When the sensor is at rest and in thenormal horizontal position, the x and y axis will beapproximately zero and the z axis will be about 200counts. This corresponds to a value of 1 g. It wasactual acceleration in each axis when the sensor is beingrotated.An advantage of having an accelerometer is that ithas high accuracy with our applications and is moreefficient to calculate the angular position of the endeffector. A big disadvantage is that the sensor may notbe sufficient to obtain angular velocity and acceleration.2necessary to convert counts to m/s in order for thedata to coincide with the rest of our calculations.Additionaly, the acceleration in the x, y and z axes wasused to calculate the tilt angle with respect to each axis.Then, it was compared to the simulation results fromMatlab.Additionaly, we used a gyroscope to collect theangular velocity of the link of the robotic arm every 0.01seconds. This gyroscope is capable of measuring theangular velocity with respect to one axis at a timewithin a range of -360 to 360 degrees. We set it up withwith an offset value of 588 to compensate for thediscrepancy from the zero degree/sec value when it wasat rest. The sensor was placed at the joint that controlsthe up and down movement of the link. However, sincethe robotic arm is not very sturdy and the sensor is verysensitive, a post-processing step of the signal wasrequired to smooth it out. Yet, it shows the valuescollected when the link was even vibrating. Adifferentiation of the smoothed angular velocity wasperformed to calculate the angular acceleration of therobotic arm for the first 2 seconds of its trajectory.4. ConclusionWe have shown that a 3R Lego robotic arm can beused to understand basic robotic concepts. A hands-onapproach was compared to theoretical results throughthe use of Matlab and Simulink. An acceleration sensorand a gyroscope were required to obtain the angulardistance, and the angular velocity and acceleration,respectively. The use of each sensor have pros and consthat were described in this paper. One way to obtaincleaner velocity and acceleration data would be by theintegration of another acceleration sensor along the linkto use a differential acceleration process. Having moreaccurate data is important for the calculation of forwardand inverse kinematics that will allow a better controlof the robotic arm.AcknowledgmentsThe authors of this paper would like thank the IraA. Fulton Schools of Engineering at Arizona StateUniversity for their support and funding of SHPE(Society of Hispanic Professional Engineers) de ASURobotics. Without their funding, purchasing the LegoRobotics kits that were used would not have beenpossible and much of the research done could not havebeen completed.3. ResultsAfter a myriad of attempts, we successfullyprogrammed and discovered a worthy process for the3R Lego robot. The path planned trajectory wasdesigned to specification and allowed for 5 basic stepsof the trajectory. This process was tested many times sothat the repeatability of the system could beaccomplished. The process required that the number ofdegrees of freedom of the 3R Lego robot be fully utilizedin order to pick up an object, avoid an obstacle, andplace it back down. Outlined below is a successfulprocess of an iteration of the 3R Lego robot.The acceleration sensor was used to measure theactual acceleration at the end-effector. The sensor datathat was collected shows a linear acceleration at theend-effector for 10 seconds of data collection. As themotors are switching to perform different tasks, theacceleration produces peaks and valleys in acceleration.However, the sensor shows the acceleration due togravity for the z axis combined with the linearacceleration of the object. One cannot distinguish theReferences[1] Niku, S. B. (2001). An Introduction to RoboticsAnalysis, Systems, Applications. NJ: Prentice Hall[2] Spong, M., Hutchinson, S. and Vidyasagar, M. (2006).Robot modeling and control. NY: John Wiley &Sons.[3] Sciavicco, L. and Siciliano, B. (2000). Modelling andcontrol of robot manipulators. NY: Springer.[4] Rajeevlochana, C.G., and Saha, S.K. (2011).RoboAnalyzer: 3D Model Based Robotic LearningSoftware. International Conference on Multi BodyDynamics, 3-13.[5] Rajeevlochana, C. G., Jain, A., Shah, S. V., and Saha, S.K. (2011). Recursive Robot Dynamics in RoboAnalyzer. 15th National Conference on Machines andMechanisms (NaCoMM), 482-490.39

nceonIntelligentEngineering Systems (INES), 293-295.[20] Moral, J. A. B. (2009). Develop lejos programs stepby step. Retrieved fromwww.juanantonio.info[21] Nee, Y. Y. (2007). ROBOTIC ARM SYSTEM BY USINGLEGO MINDSTORMS (Unpublished dissertation).Universiti Teknikal Malaysia Melaka, Malaysia.[22] Corke, P.I. (2011). Robotics, Vision & Control.Springer.[23] Ljung, L. (1999). System Identification, Theory forthe User. NJ: Prentice Hall.[24] Golnaraghi, F., Kuo, B. C. (2009). Automatic ControlSystems. NY: WILEY.[25] Nocedal, J., Wrigth, S. (2006). NumericalOptimization. NY: Springer.[6] Bahuguna J., Chittawadigi R. G., and Saha, S. K.(2013.) Teaching and Learning of RobotKinematics Using RoboAnalyzer Software.Advances in Robotics.[7] Jaramillo-Botero, A., Matta-Gomez, A., CorreaCaicedo, J. F. and Perea-Castro, W. (2006).ROBOMOSP. Robotics & Automation Magazine,IEEE, 13(4), 62-73.[8] RoboWorks Software. Newtonium Web site.Retrieved fromhttp://www.newtonium.com/[9] Easy-ROB3D Software. Easy-ROB Web site. Retrievedfromhttp://www.easy-rob.com/[10] Toz, M., Kucuk, S. (2010). Dynamics SimulationToolbox for Industrial Robot Manipulators.Computer Applications in Engineering Education,18(2), 319-330.[11] Hayat, A. A., Chittawadigi, R. G., Udai, A. D., andSaha, S. K. (2013). Identification of DenavitHartenberg Parameters of an Industrial Robot.AIR’13 Proceedings of Conference on Advances InRobotics, 1-6.[12] Gonzalez-Palacios M. A., Gonzalez-Barbosa, E. A.,Aguilera-Cortes, L. A. (2013). SnAM: a simulationsoftware on serial manipulators. Engineering withComputers, 29, 87-94.[13] Behrens et al. (2010). MATLAB Meets LEGOMindstorms-A Freshman Introduction CourseInto Practical Engineering. IEEE Trans. onEducation, 53(2), 306-317.[14] Green, A. (2013). LEGO Robotics in STEMEducation. D&T Practice, 1, 22-24.[15] A. Cruz-Martin et al. (2012). A LEGO MindstormsNXT approach for teaching at Data Acquisition,Control Systems Engineering and Real-TimeSystems undergraduate courses. Computers andEducation, 59, 974-988.[16] Y. Kim. (2011). Control Systems Lab Using a LEGOMindstorms NXT Motor System. IEEE Trans. onEducation, 54(3), 452-461.[17] A. Valera et al. (2011). Design and Implementationof Kalman Filters applied to Lego NXT basedRobots. Preprints of the 18th IFAC World Congress,9830-9835.[18] Ferri, B. H. et al. (2009). Signal ProcessingExperiments with the LEGO MINDSTORMS NXTKit for Use in Signal and Systems Courses.American Control Conference, 3787-3792.[19] Hamori, A., Lengyel, J. and Resko, B. (2011). 3DOF40

Abstract- In this paper we present the use of a 3R Lego robotic arm for teaching basic robotic concepts. The Lego Mindstorms NXT kit is an affordable equipment that can be used to better visualize robotic concepts usually taught in classes. The 3R Lego

Related Documents:

Figure 2. Design of Space craft with robotic arm space in the launching vehicle compared to the traditional rigid, fixed geometry robotic arm. Figure 3. Morphing robotic arm section 3. DYNAMIC MODEL OF ROBOTIC ARM In this section, dynamic model of the morphing arm based on telescopic type morphing beam is derived. The robotic arm is assumed to .

What is Robotic Vision? This is where robotic vision differs from computer vision. For robotic vision, perception is only one part of a more complex, embodied, active, and goal-driven system. Robotic vision therefore has to take into account that its immediate outputs (object detection, segmentation, depth estimates, 3D reconstruction,

4. Robotic Arm Writing Analysis using Neural Network Two-link robotic arm is designed in order to write any letter or word or many words in english language. Constraint workspace of motion the real two-link robotic arm is presented. in Figure 2. Robotic arm is writing using the parametric cartesian space trajectory planning analysis equations (7,

robotic arm. The Simulation City engineers use forward kinetics, the process of using angles of deflection of the joints to determine the location of the arm's tip, and compare it to the object location the robotic arm is trying to capture. By changing only the angles of deflection of the robotic arm, the astronaut can determine the position of

As of 2017, over 750,000 robotic procedures are performed each year in the United States including over 125,000 urologic robotic procedures. Despite the rapid adoption of the approach, there is a growing body of literature questioning the utility of robotic surgery compared

Robotic technology for use in surgery has advanced considerably in the past 10 years. This has become particularly apparent in urology where robotic-assisted radical prostatectomy using the da Vinci surgical system (Intuitive Surgical, CA) has become very popular. The use of robotic

The robotic Whipple procedure is a minimally invasive approach for select patients as part of multidisciplinary . management of periampullary lesions in tertiary centers where clinicians have developed robotic surgical programs. Prospective trials are needed to define the short- and long-term benefits of the robotic Whipple procedure. IntroductionCited by: 11Page Count: 12File Size: 1MBAuthor: Omar M Rashid, John E Mullinax, Jose M Pimiento, Kenneth L Meredith, Mokenge P Malafa

Welcome to the Southern Trust's Annual Volunteer Report for 2015//2016. This report provides an up-date on the progress made by the Trust against the action plan under the six key themes of the draft HSC Regional Plan for Volunteering in Health and Social Care 2015-2018: Provide leadership to ensure recognition and value for volunteering in health and social care Enable volunteering in health .