Wednesday, April 18, 2012

Information for the robot presentation on Tuesday, April 24th


1) Introduction to our task (Needle surgery for liver cancer using Radio Frequency Ablation)
[HOI INTRODUCES THE PRESENTATION AND TEAM. Once we introduce ourselves individually and Chris is the last one to introduce himself, CHRIS STARTS PRESENTING HERE]
 - Overview of the task and main things to consider (Slide of key tasks and provided figure in the assignment)
 - Minimum # of DOF's needed to complete the task (Slide: Minimal 3 DOF (RRP) robot)

[BELAYE STARTS PRESENTING HERE]
2) Robot proposal and design.  
 - Robots considered (PUMA vs SCARA) (Slide: PUMA and SCARA robot)
 - Why we went with our 5 DOF robot (Slide to show robot kinematics and DH parameters)
 - Chosen joints and what they are meant to do
 - Workspace of 5 DOF robot (Slide: heart-shaped workspace)

[HOI STARTS PRESENTING HERE]
3) Specification of the robot and Motor sizing criteria
 - First: chose aluminum alloy material (Slide: Al alloy properties and link lengths)
 - Second: Determined link lengths relative to size of the task
 - Third: Determined motors & gearheads with beam deflection analysis
(Slide: Show beam deflection figure, equation, Second moment of area equation)

[CHRIS STARTS PRESENTING HERE and finishes the presentation]
 - Last: Sensors to consider (Slide: Lengths, Outer Radius, and thickness of links) 

4) Conclusion
 - Overview of our robot and the task
 - Show how the robot joints can be manipulated with Mathematica
[Belaye will show & control it in mathematica]

Note: write our name at the bottom left corner or right corner of the slides as a reference for the class as to who is presenting?

Comment away about anything we would like to add or take away from this list. If this is more or less what we want to talk about, we'll figure out who gets to talk about what in the later part of the coming weekend.


Tuesday, April 17, 2012

laptop adapter



My iphone camera sucks at closeups so its kinda blurry, but the connects from left to right are:
1) ethernet
2) firewiire
3) usb
4) usb (wireless key)
5) mini DVI

will ur adapter work for this Chris?

Final Report DONE!!

Amazing job guys.  I went through the report and it was honestly impressed.  It wasn't until everything came together in a final document that I realized how detailed we were in our explanations and calculations.  I thought it was very thorough  and covered everything that was required and more.

I made some edits, changed the wording and added a few things to some of the sections.  One of the things I tried to fix was keeping the voice uniform from section to section.  However, I tend to write in past tense and a lot of the report was written in present tense so I tried my best to write any changes in present tense....didn't always work but I doubt she'll care (its not an english course haha).  Excellent job on documenting thought processes for calculations and design objectives.

Take a look if any changes still need to be made we have an hour and a half

Chris

Monday, April 16, 2012

Final Report

I had to separate the Appendix and References from the final report in word because it started crashing. I nearly cried the first time it was crashing, but thankfully all hope was not lost. I did manage to make the page numbers line up so once it's ready to be made into a pdf, we won't have to deal with playing with the page numbers.

Short list before we submit the final report (from what I can remember, please remind me if either of you guys catch something I completely missed):

1. Missing Inverse Kinematics in the Appendix (App # 2) - DONE
2. Missing Page numbers for the table of contents - DONE
3. Missing table for the material (I'll get to that tomorrow morning) - DONE
4. Missing references (I'll get to this too in the morning) - DONE
5. Need to correctly label the appendix numbers and figures and tables in the report

Read it through once to check spelling sometime and let me know what you guys think. Another hour or two and it will be all good to go.

Sunday, April 15, 2012

Inverse Kinematics so far

Ok guys heres what I have for the equations.  If I plug in known values for the simplified phi1 and phi2 equations it gets really big but can be done.  I'll leave them as is and write the comments.  Let me know if you want me to plug values in for my placeholders.  If not I think I'll leave them as is because it doesn't look as intimidating.









Inverse Kinematics dead end

So as I discussed with Hoi, Mathematica was unable to reduce my equations to solve for phi1 and phi2.  I also tried doing it by hand but got equations such as cos(phi1) as a function of sin^3(phi1)+bsin^2(phi1)+csin(phi1)/.... needless to say it got really ugly and I was still nowhere near separating phi1 and phi2.  I will try again tomorrow using a reduced form and will also try my original method one more time. I'm pretty exhausted now so I'll post everything tomorrow.

Saturday, April 14, 2012

Work Space Dimensions

Here are the dimensions of the work space I have so far.  Is this enough detail?
Workspace (dotted interior) relevant dimensions

Work Space Model Almost Complete

I made some finishing touches on the mathematica workspace model.  These include:
  1. included human patient (with liver) (fig 1)
  2. made sure scale of patient and liver match scale used for link length and dimensions
  3. corrected end effector location Px, Py, Pz readout
  4. modified code so link length can be modified by changing one parameter value.
  5. included end effector orientation (theta_pith, theta_yaw) readout
Few things to note:
  1. Hoi, looking at the model in scale, i changed the first link length (L1) from 75 cm to 50 cm. Try changing the lenght in the mathematica file, tell me what u think. 
  2. Chris, may be u can take a look at the theta_pitch, theta_yaw part b/c I don't think they are correct even though I used the method u used in your inverse kinematics calc.  Pls take a look at the mathematicaa file titled "workspaceLATEST" Any thoughts?

Fig 1

Fig 2


Fig 3

Fig 4
Fig 5



Friday, April 13, 2012

Problem with Mathematica!!!!!!

Hey guys so I tried doing the inverse kinematics in Mathematica but I got a weird result.  I will post the code in dropbox so if you have time to look at it could you help me figure out what went wrong.  If I don't hear back by tomorrow 2pm I'll just do the inverse kinematics by hand.

Below is a screenshot of the problem.  As you can see in the output matrix there is a line that says Matrices Transformation + Matrices Transformation ....  Anyway take a look and let me know if you figure out what went wrong.


Wednesday, April 11, 2012

Inverse Kinematics

Heres the inverse kinematics.  It started off pretty nice but blew up when trying to solve for thi1.





I put the MATLAB code in dropbox that I used to calculate T1e.  The matrix was really big and I couldn't figure out how to print a proper copy so take a look on dropbox if you want to see the entire matrix.

Chris

Monday, April 9, 2012

Work left to do as of April 9th

First, let me start by saying I think we are in great shape. We do need to double check each others work but it's a good problem, if there was such a thing. We got a great amount of work done, thank you to everyone.

Now going by the guidelines for our report, we still have the following items left to work on:

1c. What is the estimated speed of each joint?

3b. Direct / Inverse kinematics of the robot? (I glanced at the mathematica file but didn't study it yet. I think the forward kinematics are done but not the inverse?)

4b. Propose a material you want to use for the links.
4c. Compute all dynamic equations for the robot.
4d. Estimate the requirements for motors.
4e. What kind of sensors would you add to your robot? Where? Why?

After we are done addressing these items and write out the report, we will be DONE! Well, technically after we edit the report a couple times and re-evaluate our calculations one last time, we will be done. Go Team D!!

Well some of the questions left to answer are simple and would mainly take time and thinking (like 1c, 4e, and 4b). The rest are all tied together, so we would probably have to do them sequentially.

What do you guys think? Where should we go from here??

Sunday, April 8, 2012

RFRobot joint specifications


Joint
Cross-Section Shape
Length
Radius / Diameter
L1
Circle
0.75 m
0.05 m / 10 cm
L2
Circle
0.50 m
0.04 m / 8 cm
L4
Circle
0.40 m
0.025 m / 5 cm
D5
Circle
0.20 d5 0.50 m
0.02 m / 4 cm

Why these specifications?

The two conditions for our assignment are given in SI units so I am trying to analyze our robots lengths and arm specifications accordingly. The liver is a sphere with a 10 cm diameter, and the robot needs to exert a force of 10 N to push through the liver.

The robot shouldn't be too big since our task is in a closed environment. The arms should increase in radius to account for increases in torques and forces as we analyze from the gripper to the first joint. Similarly the lengths should too. The biggest range of motion should happen in the first two joints (L1 & L2) so I gave them longer lengths. Precision is important in the last prismatic joint so it should be the shortest. I wrote a range for the prismatic since the gripper/needle would sit at a short distance away from the prismatic motor and move from there.

The professor said Nickel-Titanium is a good alloy for medical robotic applications. Since our robot arm is used as a tool for medical needles and isn't physically going to run inside of a person, we can consider a range of materials to use besides Ni-Ti.

What do you guys think?

Saturday, April 7, 2012

Workspace


This is the workspace for the 3 DOF configuration

Workspace for our 5 DOF robot: Left (ideal case) Right (case limiting the rotation of joint 1)

Here's the diagram of the workspace and also equations for calculating it's dimensions.  We need to decide lengths to calculate the real workspace.  Also I would like to know your thoughts on L4 and D5 which is longer?

Also note that our robot does not have a dexterous workspace.

Thursday, April 5, 2012

Radio-Freq Robot so far

So we got a model of our robot in Matlab running using the robotics toolkit. There was a problem with modeling the original robot in Matlab. Specifically, the value assigned to 'a' (a_i) must run along the defined x-axis (x_i). So for the x_4 axis Chris wrote up for the 'DH 6 joint' pdf file, the Matlab robotics toolkit will not model that correctly.

The solution to this problem is simple, use the toolkit's axes definition and re-draw our robotic configuration accordingly. In theory it works the same way as our defined robot except it is configured in a different manner. The Denavit-Hartenberg Parameters for our current robot now:

θ
d
a
α
θ1
0
L1
0
θ2
0
L2
-Ï€/2
θ3
0
0
Ï€/2
θ4
0
L4
Ï€
0
d5
0
0




Here is what it looks like in Matlab (see file RFRobot.m):


Matlab plot of the robot with the DH Parameters provided above.
Note: the first prismatic is not illustrated here because it is not so important.


This is the Matlab output code of RFRobot.m
Figure 2: Matlab output of the link definitions and DH table.
Forward Kinematics is also provided for all theta values zero and d5 = 2.
We definitely need to double and triple check the code and these results. For now, consider what the code provides for the Forward Kinematics as reference only because it could be wrong.

So, here is where we are at and please correct me if I am wrong.

Belaye will deal with the direct kinematics for now. The inverse kinematics in Matlab is a pain to use to say the least, and it'll be a group effort to figure that out. I'm expecting it won't be that bad once we do have the forward kinematics figured out, but we'll see.

Hoi will create a blog about a good set of lengths and thickness to consider for all the links. I'll try my best to be reasonable so that we can consider decent motor sizes, but more importantly for the dynamic equations or force propagation for the robot.

Chris, catch up to speed and give Hoi a call. Me and Belaye think you could do the workspace related stuff. In a little more detail, we probably need to define joint limits to find the reachable workspace (note differences between workspace, reachable workspace, and dexterous workspaces). Blog about it and we'll help you out as best we can.


Please stay in contact with each other and check the blog a couple times throughout the day. When you read about something, I am sure you have an opinion on the material in the blog so any commenting, either an affirmation or a suggestion is helpful.


Saturday, March 31, 2012

I've drawn up two possible configurations that have focal points.  I believe something like the first design was shown in class (the Arc). The second one is another idea I had where I have fixed the probe at a specific point, forcing it to have a focal point.  Thoughts?


Monday, March 26, 2012

SCARA vs PUMA Config

So we've decided 5-DOFs is appropriate.

BUT, what about the Config?

There are two basic categories most applicable to our task:
  1. SCARA - Selectively Compliant Articulated Robot Arm
  2. PUMA - Programmable Universal Machine for Assembly
SCARA

  • PROs
    1. compliant (not rigid) in X-Y plane BUT not Z direction.
    2. accurate and precise due to rigidity
    3. adept at pick-and-insert operations
  • CONs
    1. less flexibility in potential operations
    2. smaller workspace 

 PUMA (similar to 2 Wrist + Prismatic config proposed earlier)

  • PROs
    1. more flexibility in potential operations
    2. larger workspace
  • CONs
    1. compliant in X, Y and Z directions. 
    2. less accurate and precise due to less rigidity
    3. adept at operations that do NOT require high precision, ie welding and stacking, etc.

Sunday, March 25, 2012

Robot # of DOFs and Configurations

The project prompt states the following:
"In liver radiofrequency ablation, a surgeon places a needle into a lesion (e.g. cancer) located in the liver, starts radiofrequency ablation, removes that needle, after which he places another needle and repeats the procedure as many times as needed (sometimes, over 10 times).
The goal of this project is to develop a robotic device to consecutively place series of needle in a lesion and allow for surgeon to perform radio frequency ablation."

I highlighted the text to show that we need more that 2 DOF to perform the task for the following reasons.
  1. 2-DOFs (of the RP & PP type shown below) allows for only a 2D work-space.  We need a 3D work-space to ensure accurate needle placement.
  2. Since we are required to perform multiple ablations per lesion, Yaw and Pitch of the needle should be considered if we would like to keep the procedure as minimally invasive as possible.  Depending on the size and number of lesions in the liver, it would be ideal to be able to completely ablate these lesions from the least number of incision points. (See fig 1).
Fig 1: Yaw and pitch of ablation needle

 So, how many DOFs do we need?

I think a 5-DOF design would be the best option. This allows the needle to reach any place in the workspace at any yaw or pitch angle.

What are some configuration options?

Hoi's suggestion of 2 Wrist + Prismatic Joint configuration would work.  We may also want to consider the SCARA configuration which from some prelim research seems popular in robotic surgical systems (Figure 2 and 3).


Fig 2: SCARA + Wrist (5 DOF) Robot CAD model

Fig 3: Coordinate Frame

Friday, March 23, 2012

Robot Design: Draft ver. 1.0

Overview of the Design Requirements:
- The robot can be placed on a manually wheeled cart or in some other way we find suitable.
- Assume that the liver is a sphere with a 10 cm diameter.
- Assume that the force needed to push through the liver is 10 N.
- Orientation of the needle around its own axis is not important.


In other words, points of interest of the robot (an in no particular priority order):
i)  An interchangeable end-effector. A gripper should suffice for this condition.
ii) A proximity/distance sensor to keep track and navigate the needle inside the liver.
iii) A force sensor to puncture the liver wall.

Conditions that are of little importance to our robot:
iv)  Robot base/stand. The robot can sit on a rolling platform with brakes for all we care so we'll begin by designing it as a robot generally sitting from the ground.
v) Orientation of the needle (i.e. the roll, pitch, and yaw angles of the needle tip). Therefore, only the insertion of the needle is the necessary factor to consider for the end-effector.


The minimalist robot with the lowest degree-of-freedoms could be a planar robot that is Revolute-Prismatic (RP) or a Prismatic-Prismatic (PP) robot (I was thinking it would only be a prismatic robot but there has to be some sort of height adjustment). The last degree of freedom should be a prismatic joint, because only a prismatic joint allows the needle to insert into and out of the liver.
From the Project Guidelines in section 1:
a. What is the minimal required number of DOFs to complete the task?
2 DOFs

b. What is the required workspace? Needs to be addressed.
c. What is the estimated speed of each joint (very difficult to do, just guess something that sounds reasonable). Needs to be addressed.

Figure 1: Examples of an RP (left) and PP (right) robot. This would be the most basic robots that will meet the design requirements

The most complex robot that should be considered would be a 5 DOF (degree-of-freedom) robot. Structurally, it would consist of two wrists (a wrist is a couple R-R joint) and a prismatic joint and would work in 3-D.


Figure 2: Examples of the 5 DOF robot (Very poorly drawn, sorry, but it was the quickest way I could get a picture of it up on the blog). The bottom picture is the same as the top, but with GREEN highlights that are links, and RED highlights of the z-direction of each link.

Even though it might be redundant, if time permits we should draw everything in MATLAB using the robotics toolkit. Those figures and illustrations in MATLAB would be great for the slides in our presentation, as well as for our report.

Project Guidelines, section 2: Propose a robot kinematics for the task.
We should probably consider a robot between 2 to 5 DOFs.
What do you guys think?

Project Assignment: Radio-frequency Ablation Robot

Radio-frequency ablation is a procedure in which radio waves are generated on a tip of a needle. The radio waves cause the exposed tissue to heat up causing cell death. This method is used to destroy cancer cells in various organs. In this project, we will focus on liver cancer.

In liver radio-frequency ablation, a surgeon:
i)  places a needle into a lesion (e.g. cancer) located in the liver,
ii) starts radio-frequency ablation,
iii) removes that needle,
iv) after which he places another needle, and
v) repeats the procedure as many times as needed (sometimes, over 10 times).


The goal of this project is to develop a robotic device to consecutively place series of needles in a lesion and allow for surgeon to perform radio frequency ablation.

Design Requirements:
- The robot can be placed on a manually wheeled cart or on the patents table or in some other way we find suitable.
- Assume that the liver is a sphere with a 10 cm diameter.
- Assume that the force needed to push through the liver is 10 N.
- Orientation of the needle around its own axis is not important.