Create complete point-to-point reaching behavior

Assignment Help Computer Engineering
Reference no: EM131929734

Assignment - Introduction to Robotics

In the following problems, you will need the NAO simulator and Matlab for CLMCPLOT for other visualizations.

IMPORTANT: In your solutions of the homework, also provide intermediate steps how you de- rived the solution to a problem.

1. In this homework, you are supposed to create a complete point-to-point reaching behavior for the NAO robot. First, you will need to create a planning system for point-to- point movements for the endeffector (left hand) of the robot. Second, you will need to im- plement the plan on the robot simulator and visualize the outcome to confirm that it works.

a) For planning, you are to create a 3th order spline system (a "cubic spline"). The general 3th order spline equation is:

x (t) = c0 + c1t + c2t2 + c3t3

Assume the movement duration is τ , and the movement starts at t = 0. Assume that at start the movement is at x0, and it is supposed to reach xf at time t = τ. Determine all the constants c0 to c3 as a function of x0, xf, and their derivatives, and τ . At start and end velocities are x·(0) = x·0, x·(τ) = x·f.

b) Using matlab, implement a planning system that creates a trajectory of 2 seconds duration, starting at position x=0 and going to a target at x=2, with zero velocity boundary conditions. Use a time step of 0.01s to compute the movement plan. Provide a print-out of your matlab code, and plots of position, velocity, and acceleration for the entire trajectory.

c) A useful way to implement the cubic spline planning system is by creating a function that takes as input variables the current state x(t), x·(t), the remaining time to go τtogo, and the target state xf, x·f. The output of the function would be x(t + Δt), x·(t + Δt), i.e., the planned
state one time increment ahead. This function can be used to plan the next desired state given the current desired state, which is useful in a control loop of a robot. Note that the time-to-go τtogo needs to be decreased at every iteration of the control loop by Δt . Implement this function in matlab, and create the results of b) using this incremental planning system. Compare the results of b) and c) and comment on the differences and similarities.

d) The webpage has a file cubic_spline_task.cpp. Modify this file to implement your cubic spline function from matlab. Run the task using the "setTask" command in the blue task_servo window. You will automatically collect a data file, and you should save it to disk with "saveData". Visualize the trajectories of all 5 left arm DOFs in CLMCPLOT in matlab, i.e., print the data traces L_SFE_th and L_SFE_des_th in the top most chart of clmcplot, and then the data traces for L_SAA, L_HR, L_EB, and L_WR in the next 4 charts. Create a print- out of your visualization and include it in your homework. Comment on the quality of tracking for the 5 DOFs. Repeat the same for the plot, this time using joint velocities, and then an- other plot using joint accelerations.

e) Add three additional targets to you C-program such that the left arm creates approximately a square in Cartesian space. Note that due to the joint-space movements, the hand movement in Cartesian space is curved. Your square should end at the same point where it started. Collect data of your movement and save it such that it can be visualized with CLMCPLOT. In clm- cplot, click the "PhasePlot" button, and then click LEFT_HAND_x and then LEFT_HAND_y. This creates a window that plot LEFT_HAND_x in the horizontal axis, and LEFT _HAND_y in the vertical axis. Provide this plot in your homework and comment on what is good or bad about your realization of the square. Repeat this plot for LEFT_HAND_x and LEFT_HAND_z and provide this print-out as well. Comment on the quality of your square from this view.

2) Consider the dynamical system:

x·1 = bx1 + kx2 + x3

x·2 = x1

x·3 = α (u - x2) - βx3               (2)

a) Show a physical system that corresponds to the equations in (2) and explain what the parameters mean.

b) Transform the system into the frequency domain and give the individual transfer functions and the transfer function of the complete system. Provide a block diagram that shows how the individual transfer functions are connected.

c) Assume b=-1, k=-1, α=1, ß=10. Use Simulink to build a PD controller for the system, assuming that the system should track a sinusoidal desired trajectory with 1Hz fre- quency. Use the "Transfer Function" building block in Simulink for this implementation. At- tach a "Scope" to the simulation that simultaneously shows the true output of the system, and the desired output (note that "Scopes" accept vector inputs to display multiple trajectories superimposed). Also create a scope that shows the tracking error. Tune the gains of the PD controller to get as good as possible tracking performance. Give plots of i) your Simulink system, and ii) position and desired position as well as the tracking error of the best tracking performance (over 10 seconds simulation time). (Note, all Simulink windows allow copy/paste or direct printing of their contents). Make sure that all your plots are scaled such that they have maximal resolution in the vertical axis!

d) In real physical systems, the state of the controlled systems needs to be measured, usually by means of sensors that add some noise to the measurement. Additionally, the sen- sory feedback can only be measured at a certain frequency. In order to simulate such a senso- ry processing, add a "zero order hold" block (from the "Discrete" library) in the feedback path way of your system (i.e., the pathway leading back from the output of the system's transfer function to the negative feedback controller). Set the "sample time" parameter of this block to 0.005 (i.e., 200Hz). To simulate the noise in the sensory, take the "Random Num- ber" block from the "Sources" library and sum it into the feedback pathway after the "zero order hold". Set the "sample time" parameter of this block also to 0.005, and the variance parameter to 0.01. Now tune your PD gains to get the best performance for this more realistic control system and provide plots of the best tracking performance and tracking error as in point b-ii above. Briefly describe the difference in performance between the system in b) and the current one, and why this difference exists.

e) In order to deal with sensory noise, signal filtering is usually employed. A very simple filter is of the form:

x· = λ (u - x) where λ is the time constant of this filter and regulates the amount of filtering: the smaller λ , the more filtering is achieved. The danger of too much filtering, however, is that the filtered signal becomes delayed. Convert the filtering equation into a transfer function, and add it in the feedback pathway after the point where the noise was added. Adjust λ to improve the performance of you control system, and provide the same plots as in c). Briefly comment on the success of your filtering. Note that you may have to re-tune the PD controller for the filtering.

Reference no: EM131929734

Questions Cloud

Ordering of inventory quantities : An agency has a goal to prevent the ordering of inventory quantities in excess of its needs.
How rogerss diffusion of innovations related to change : How is Everett M. Rogers's Diffusion of Innovations related to change? Everett M. Rogers's Diffusion of Innovations can be found on internet.
Calculate the average values for the measures : Simulate 52 weeks of operation to calculate the total semiannual cost and the percentage of stockouts for the period. Replicate these calculations N times.
Describe impact had on nurse engagement and patient outcomes : Describe the impact this had on nurse engagement and patient outcomes. Identify a specific instance from your own professional experience.
Create complete point-to-point reaching behavior : CS545–Introduction to Robotics - create a complete point-to-point reaching behavior for the NAO robot. First, you will need to create a planning system
Computing the percentage of stockouts for the quarter : Mattress Heaven orders a certain brand of mattress from its supplier and sells the mattresses at its retail location. The store currently orders 400 mattresses.
Which order quantity would you recommend in given problem : Mattress Heaven would like to evaluate ordering 350, 400, 450, and 500 mattresses when the reorder point of 200 is reached.
Explore the actual and potential health problem in childhood : In this assignment, you will be exploring actual and potential health problems in the childhood years using a functional health assessment.
Calculate the percentage of stockouts for the quarter : Simulate this inventory policy for a quarter (90 days) and calculate the total quarterly cost. Also calculate the percentage of stockouts for the quarter.

Reviews

Write a Review

Computer Engineering Questions & Answers

  Mathematics in computing

Binary search tree, and postorder and preorder traversal Determine the shortest path in Graph

  Ict governance

ICT is defined as the term of Information and communication technologies, it is diverse set of technical tools and resources used by the government agencies to communicate and produce, circulate, store, and manage all information.

  Implementation of memory management

Assignment covers the following eight topics and explore the implementation of memory management, processes and threads.

  Realize business and organizational data storage

Realize business and organizational data storage and fast access times are much more important than they have ever been. Compare and contrast magnetic tapes, magnetic disks, optical discs

  What is the protocol overhead

What are the advantages of using a compiled language over an interpreted one? Under what circumstances would you select to use an interpreted language?

  Implementation of memory management

Paper describes about memory management. How memory is used in executing programs and its critical support for applications.

  Define open and closed loop control systems

Define open and closed loop cotrol systems.Explain difference between time varying and time invariant control system wth suitable example.

  Prepare a proposal to deploy windows server

Prepare a proposal to deploy Windows Server onto an existing network based on the provided scenario.

  Security policy document project

Analyze security requirements and develop a security policy

  Write a procedure that produces independent stack objects

Write a procedure (make-stack) that produces independent stack objects, using a message-passing style, e.g.

  Define a suitable functional unit

Define a suitable functional unit for a comparative study between two different types of paint.

  Calculate yield to maturity and bond prices

Calculate yield to maturity (YTM) and bond prices

Free Assignment Quote

Assured A++ Grade

Get guaranteed satisfaction & time on delivery in every assignment order you paid with us! We ensure premium quality solution document along with free turntin report!

All rights reserved! Copyrights ©2019-2020 ExpertsMind IT Educational Pvt Ltd