Critical Design Review
Team E - Surgical Robot for Orthopedics
ParaDocs
The ParaDocs are
With Branko, Parker, Sundaram, Kaushik
Paramjit
Shivangi
Li-Wei
Kimi
Abhishek
Project Description
1
Osteoarthritis
Tekkneeca: Robotic Assistant for Knee Replacement
Replace IR Tracking
User’s need | Our solution |
IR trackers are invasive and bulky when drilled into patient’s bone | Use RGBD cameras to locate desired drilling site; thus not requiring an IR tracker |
Unobstructive system
User’s need | Our solution |
IR Camera needs constant Line of Sight; surgeons need to be mindful and work around it. | Design and mount RGBD cameras on the manipulator to avoid interference |
Autonomous
User’s need | Our solution |
Automate drilling holes on the desired locations on bone | Autonomously plan a trajectory to sites sent by camera, and autonomously drill holes safely |
Movement & Obstacles
User’s need | Our solution |
There may be movement in the patient’s position, or obstacles in the environment | Dynamic compensation for any motion in the patient, avoid any obstacles in the site |
Use Case
2
Shivaknee is suffering from severe pain in her right knee due to osteoarthritis.
Dr. Knee-Wei decides to perform a total right knee arthroplasty, with assistance from Tekkneeca
Use Case
System Requirements
3
Mandatory Functional & Performance Requirements
Functional Requirement | Performance Requirement | |
M.F.1 The system shall sense the femur and tibia as a point cloud through a vision-based solution | M.P.1 The system should captured the bones’ point cloud with a density of 0.5 point/mm^3 | |
M.F.2 The system shall sense the surgical workspace as a point cloud | M.P.2.1 The system should captured the surgical workspace point cloud with a density of 1 point/cm^3 | |
M.P.2.2 The point cloud capture shall focus specifically on the area encompassing the surgical site | ||
M.F.3 The system shall register surgical site with the preoperative bone model continuously in real time | M.P.3.1 The system shall demonstrated a registration accuracy of 1.00 ± 0.5 mm (SOTA:0.68 ± 0.22 mm) | |
M.P.3.2 The system shall demonstrated a registration frequency of 5 Hz | ||
M.F.4 The system shall obtain desired drilling pose accurately | M.P.4 The system shall decide the drilling position with 1 mm accuracy and orientation with 1.5° | |
M.F.5 The system shall obtain desired drilling depth accurately | M.P.5 The system shall decide the appropriate depth for the drilling with 1mm accuracy | |
Mandatory Functional & Performance Requirements
Functional Requirement | Performance Requirement | |
M.F.6 The system shall generate a trajectory to direct the end effector to drilling position | M.P.6 The system shall generate a trajectory insures that the end effector approaches the drill position with an accuracy of 2 mm and an orientation error of less than 2° | |
M.F.7 The system shall track surgical site in real time throughout the surgical procedure | M.P.7.1 The system shall track bone movement with a latency of less than a second | |
M.P.7.2 The system shall track bone movement when displacement exceed 2 mm and orientation exceed 2° | ||
M.F.8 The system shall compensate for any bone motion | M.P.8.1 The system shall compensate motion within 250 milliseconds | |
M.P.8.2 The system shall ensure the tooltip remains within 2 ± 0.50 mm of the desired surgical position | ||
Mandatory Functional & Performance Requirements
Functional Requirement | Performance Requirement | |
M.F.9 The system shall drill holes in the bone | M.P.9 The system shall drill the bones according to the plan with positional accuracy of 2 mm and orientation accuracy of 2° | |
M.F.10 The system shall visualize the plan | M.P.10 The system shall visualize the surgical plan with latency less or equal to 100 ms | |
M.F.11 The system shall give basic commands from UI | M.P.11.1 The system's user interface shall respond to command inputs with a latency of less than 100 milliseconds | |
M.P.11.2 The system's user interface shall include at least following functions: (1) Start (2) Pause (3) Home | ||
M.F.12 The system shall avoid obstructions in the surgical site | M.P.12 The system shall detect and recognize any obstructions in the surgical site with a reliability of 80% | |
M.F.13 The system shall stop procedure in-case of emergency | M.P.13 The system shall halt all motions within 100 milliseconds, in the event of an emergency or irregularities | |
Mandatory Non-Functional Requirements
The system will:
Functional Architecture
4
Cyber-physical Architecture
5
Current System Status
System/Subsystem
Descriptions
6
Overall System
Aim: To precisely and robustly register the drilling site, navigate to site and drill holes sufficient to slide in a surgical pin
The subsystems
Perception Subsystem : Overall
Perception Subsystem : SVD Focus
D405 Raw* Point Cloud
And an input image that looks like …
Perception Subsystem: Current Registration Pipeline
Refinement
Local Registration
Methods
Extraction
Femur Extraction
Pipeline
Estimation
Global Registration
Methods
I. Manual Crop
III. DBSCAN Clustering
IV. Extracted Bone
II. RANSAC Plane Seg
Registration with ICP
Registration Priors
Assumptions we make.
•Femur is always on the left
•Orientation < ~45 deg
•Located within crop region
Perception Subsystem: New Registration Pipeline
Refinement
Local Registration
Methods
Combined Extraction +
Global Registration
Use state-of-the-art foundation models.
Perception Subsystem: New Registration Pipeline
Perception Subsystem: New Registration Pipeline
Red - STL File (Source)
Dark Blue - Projected SAM Mask (Target)
Perception Subsystem: New Registration Pipeline
Perception Subsystem: New Registration Pipeline
We know where the surgical plan is in 3D space
Perception Subsystem: New Registration Pipeline
Perception Subsystem: New Registration Pipeline
*Detection model fails 50% of the time
Registration Priors
Assumptions we make.
•Femur is always on the left
•Orientation < ~45 deg
•Located within crop region
•Femur is always on the left
•Orientation < ~45 deg
•Anatomically, femur is located above tibia
Assumptions we make in the new pipeline.
Progress Review 1
SVD Encore
Manipulation Subsystem
Description: This subsystem refers to the planning and control stack of the robot. It encompasses everything that goes into getting the end effector to the position designated by the perception pipeline.
Desired state: Drill bit can reach desired global coordinates and execute drilling operations.
We start off with a Surgical Plan
Manipulation subsystem: Testing
Planning and Manipulation: SVD
Drilling Subsystem
Aim: To have an autonomous drill powerful and accurate enough to drill 3mm wide hole(s) at desired location(s) to place surgical pin
Refers to ROS compatible end effector, including drill machine, PCB interface,
camera mount, and drill mount
Drill Choice: Dremel 9100
Drilling subsystem: Models
Drilling subsystem: Electronic Interface
Drilling subsystem: Primary Interim Test on bulb
To prevent inadvertent damage to the (expensive) drill, we tested on light bulb, with simple wiring.
Sent command to Arduino Serial Monitor.
‘Drill’ turned on the drill successfully
‘Stop’ stopped the drill successfully
Drilling subsystem: SVD & SVD Encore Results
Spring Validation Demo
Targeted System Requirements
M.F.1 The system shall sense the femur and tibia as a point cloud through a vision-based solution |
M.F.2 The system shall sense the surgical workspace as a point cloud |
M.F.3 The system shall register surgical site with the preoperative bone model continuously in real time |
M.F.4 The system shall obtain desired drilling pose accurately |
M.F.5 The system shall obtain desired drilling depth accurately |
M.F.6 The system shall generate a trajectory to direct the end effector to drilling position |
M.F.7 The system shall track surgical site in real time throughout the surgical procedure |
M.F.8 The system shall compensate for any bone motion |
M.F.9 The system shall drill holes in the bone |
M.F.10 The system shall visualize the plan |
M.F.11 The system shall give basic commands from UI |
M.F.12 The system shall avoid obstructions in the surgical site |
M.F.13 The system shall stop procedure in-case of emergency |
Perception
Planning
Actuation
Surgeon I/O
ParaDocs
Verification Criteria
Did we do it right?
8mm
ParaDocs
Verification Criteria
Did we do it right?
< 8mm
The Results
ParaDocs
Pre-SVD Runs + SVD
Pre-SVD Runs
ParaDocs
Median 4mm | Average 3.9mm
Bone Mount | With Correction | April 17 | |||
Trial | Result | Error Approx | Arm Speed |
1 | S | 1mm | M |
2 | S | 2mm | M |
3 | S | 4mm | M |
4 | S | 2mm | M |
5 | S | 5mm | M |
6 | S | 3mm | M |
7 | S | 8mm | M |
8 | S | 5mm | M |
9 | S | 4mm | M |
10 | S | 5mm | M |
SVD Runs (April 18 2024)
ParaDocs
Spring Validation Demo | April 18 | ||
Trial | Result | Error Approx |
1 | S | <= 4mm |
2 | S | <= 4mm |
3 | Connection Err | - |
4 | S | <= 4mm |
SVD Encore Runs (April 18 2024)
ParaDocs
Encore| April 25 | ||
Trial | Result | Error Approx |
1 | S | <= 2mm |
2 | Third Hole Failed | First two holes <=2mm |
3 | S | All holes within 8mm |
ParaDocs
Strengths
ParaDocs
Challenges
and our next steps
Current Mitigation Strategy
Liberal use of Emergency Stop
Project
Management
7
Updated Work Breakdown Structure
Schedule from PDR
Schedule
Schedule
High-level Test Plan (Spring)
Identifier | Date | Capabilities | Test(s) | Requirement(s) |
PR #3 | 21st Mar. |
| T5, T6, T7, T8, T9 | M.F.3 M.F.10 |
PR #4 | 4th Apr. |
| T10, T11, T12 | M.F.4 M.F.5 M.F.6 |
PR #5 (SVD) | 18th Apr. |
| T13 | M.F.9 M.F.13 |
PR #6 �(SVD Encore) | 25th Apr. |
| X | X |
High-level Test Plan (Fall)
Identifier | Date | Capabilities | Validation | ||
PR #7 | Early September |
|
| ||
PR #8 | Mid-September |
|
| ||
PR #9 | Early October |
|
| ||
PR #10 | Mid-October |
|
| ||
High-level Test Plan (Fall)
Identifier | Date | Capabilities | Validation | ||
PR #11 | Mid-November |
|
| ||
PR #12 �(FVD) | Late November |
|
| ||
PR #13 �(FVD Encore) | Late November |
|
| ||
FVD
Scope:
Both cameras
Multiple holes
Tibia Registration
Dynamic Comp
FVD
FVD
Test Location: B512
Sequence of Events:
Quantitative Metrics:
Budget
Risk Management Table
Risk ID | Risk | Requirement | Type* | Likelihood | Consequence | Mitigation |
R1 | Cameras are not accurate | M.F.1, M.F.2, M.F.3, M.F.7 | T | 1 | 4 | - Test cameras immediately upon receiving - Calibrate cameras - Adjust camera mounts - Brainstorm alternate vision solutions |
R2 | MRSD 3D Printer unavailable | M.F.1, M.F.2, M.F.9 | T+S | 4 | 2 | - Talk to Tim in the RI shop - Use TechSpark printer - Get a personal 3D printer |
R3 | Manipulator is damaged | M.F.8, M.F.9, M.F.12 | T | 1 | 5 | - Follow user manual for safely operating and transporting the arm - Store arm in a secure area away from liquids, weather conditions |
R4 | Drilling mechanism insufficient | M.F.9 | T | 2 | 4 | - Purchase drill as soon as semester begins - Test drill on bone model to confirm drill bit and strength - Design a custom drill (a basic literature review has been done for alternatives) |
*T: Technical, S: Schedule
Risk Management Table
*T: Technical, S: Schedule
Risk ID | Risk | Requirement | Type* | Likelihood | Consequence | Mitigation |
R5 | Drill injures a person | M.F.13 | T | 1 | 4 | - Design and build and test our E-Stop - Follow drill user manual for safe operation - Keep people a safe distance away - Have a first-aid kit ready |
R6 | A group member is absent | X | S | 3 | 3 | - Have a primary and secondary assignee for each task - Check member mental/physical status during stand-up meetings |
R7 | Version conflicts or data loss | X | T | 4 | 3 | - Set up version control software (Git & GitHub) - Backed up blob on Google Drive |
R8 | Lost connection to the manipulator | M.F.9 | T | 2 | 5 | - Keep cable taped to the ground - Modify FRI client behavior, override the state |
Risk Management Table
*T: Technical, S: Schedule
Risk ID | Risk | Requirement | Type* | Likelihood | Consequence | Mitigation |
R9 | PCB not functioning | M.F.9 | T | 3 | 3 | - Prepare backup circuit with same function - Run ERC/DRC to make sure the PCB works |
R10 | Planning fails | M.F.6 | T | 3 | 5 | - Replan after planning fail - Define pre-drill pose to avoid singularities |
Risk Likelihood-Consequence Table
Before Mitigation
After Mitigation
R1, R2, R4
R2
R3
R3
R4
R5,
R10
R1, R5, R10
R6, R9
R7
R7, R8
R6
R9
R8
Conclusion
8
Conclusions
Thank you and Break a Leg!
Appendix
9
Risk 1 (Inactive)
Risk Title | R1: Cameras are not accurate | Date Submitted | 12/03/23 |
Risk Owner | Kimi | Date Updated | 01/31/24 |
Description | Risk Type | ||
The Realsense D435 / D405 are not providing data accurate enough for registration and compensation | Technical | ||
Consequence | Metrics | ||
We can’t properly register the patient’s bone and guide the manipulator. | Likelihood | Consequence | |
1 | 4 | ||
Mitigation Plan | |||
Action | Outcome | ||
- Test cameras immediately upon receiving - Calibrate cameras - Adjust camera mounts - Brainstorm alternate vision solutions | Ensure better registration and reduce likelihood of camera failure. | ||
R1
R1
Risk 2 (Inactive)
Risk Title | R2: MRSD 3D Printer unavailable | Date Submitted | 12/03/23 |
Risk Owner | Li-Wei | Date Updated | 01/31/24 |
Description | Risk Type | ||
The 3D printer in the MRSD room does not function, or is not available due to high demand | Technical + Schedule | ||
Consequence | Metrics | ||
We can’t print the parts for camera mount, end effector, drill mount, test bones | Likelihood | Consequence | |
4 | 2 | ||
Mitigation Plan | |||
Action | Outcome | ||
- Talk to Tim in the RI shop - Use TechSpark printer - Get a personal 3D printer | Ensures we have alternative options in case of unavailability | ||
R2
R2
Risk 3 (Mitigated)
Risk Title | R3: Manipulator is damaged | Date Submitted | 12/03/23 |
Risk Owner | Shivangi | Date Updated | 04/01/24 |
Description | Risk Type | ||
The manipulator sustains physical damage during transportation or usage | Technical | ||
Consequence | Metrics | ||
Manipulator does not function properly | Likelihood | Consequence | |
1 | 5 | ||
Mitigation Plan | |||
Action | Outcome | ||
- Follow user manual for safely operating and transporting the arm - Store arm in a secure area away from liquids, weather conditions | Reduces likelihood of the manipulator getting damaged | ||
R3
R3
Risk 4 (Inactive)
R4
Risk Title | R4: Drilling mechanism insufficient | Date Submitted | 12/03/23 |
Risk Owner | Param | Date Updated | 04/05/24 |
Description | Risk Type | ||
Off-the-shelf dremel may not be able to interface with our system/ may not meet our requirements | Technical | ||
Consequence | Metrics | ||
Unable to drill holes in the bone | Likelihood | Consequence | |
2 | 4 | ||
Mitigation Plan | |||
Action | Outcome | ||
- Purchase drill as soon as semester begins - Test drill on bone model to confirm drill bit and strength - Design a custom drill (a basic literature review has been done for alternatives) | Holes will be drilled in the bones | ||
R4
Risk 5 (Mitigated)
Risk Title | R5: Drill injures a person | Date Submitted | 12/03/23 |
Risk Owner | Abhishek | Date Updated | 04/29/23 |
Description | Risk Type | ||
Accidentally, control to the drill is lost and it injures a person | Technical | ||
Consequence | Metrics | ||
The medical robot does the opposite of its job | Likelihood | Consequence | |
1 | 4 | ||
Mitigation Plan | |||
Action | Outcome | ||
- Design and build and test our E-Stop - Follow drill user manual for safe operation - Keep people a safe distance away - Have a first-aid kit ready | Reduces likelihood of injury, and lessens the severity | ||
R5
R5
Risk 6 (Mitigated)
Risk Title | R6: A group member is absent | Date Submitted | 02/29/24 |
Risk Owner | Li-Wei | Date Updated | 04/29/24 |
Description | Risk Type | ||
Team members fall sick, lose motivation to work or have arrangement (e.g. Interview) | Schedule | ||
Consequence | Metrics | ||
Team productivity drops | Likelihood | Consequence | |
3 | 3 | ||
Mitigation Plan | |||
Action | Outcome | ||
- Have a primary and secondary assignee for each task - Check member mental/physical status during stand-up meetings | Reduces consequence of team member absent | ||
R6
R6
Risk 7 (Mitigated)
Risk Title | R7: Version conflicts or data loss | Date Submitted | 02/29/24 |
Risk Owner | Li-Wei | Date Updated | 03/15/24 |
Description | Risk Type | ||
Different code modification conflicts, or have no back-up, causing data lost | Technical | ||
Consequence | Metrics | ||
Team progress reduced | Likelihood | Consequence | |
4 | 3 | ||
Mitigation Plan | |||
Action | Outcome | ||
- Set up version control software (Git & GitHub) - Backed up blob on Google Drive | Reduces likelihood of version conflict. Although consequence remains serious, the risk is effectively managed | ||
R7
R7
Risk 8 (Active)
Risk Title | R8: Lost connection to the manipulator | Date Submitted | 04/01/24 |
Risk Owner | Li-Wei | Date Updated | 04/18/24 |
Description | Risk Type | ||
FRI connection quality drops below Good, Kuka arm would enter state that only allows monitor but not allows actuation | Technical | ||
Consequence | Metrics | ||
Kuka arm stop moving, FRI client crashes | Likelihood | Consequence | |
2 | 5 | ||
Mitigation Plan | |||
Action | Outcome | ||
- Keep cable taped to the ground - Modify FRI client behavior, override the state | Even if the connection drops below Good, the system would wait until the connection is Good and reconnect | ||
R8
R8
Risk 9 (Inactive)
Risk Title | R9: PCB not functioning | Date Submitted | 04/08/24 |
Risk Owner | Shivangi | Date Updated | 04/12/24 |
Description | Risk Type | ||
PCB not able to switch on/off the drill. | Technical | ||
Consequence | Metrics | ||
PCB not able to switch on/off the drill. | Likelihood | Consequence | |
3 | 3 | ||
Mitigation Plan | |||
Action | Outcome | ||
- Prepare backup circuit with same function - Run ERC/DRC to make sure the PCB works | The drill can be switched on/off using the PCB | ||
R9
R9
Risk 10 (Active)
Risk Title | R10: Planning fails | Date Submitted | 04/25/24 |
Risk Owner | Paramjit | Date Updated | 04/28/24 |
Description | Risk Type | ||
Planned path exceed joint limits | Technical | ||
Consequence | Metrics | ||
Kuka arm stop moving | Likelihood | Consequence | |
3 | 5 | ||
Mitigation Plan | |||
Action | Outcome | ||
- Replan after planning fail - Define pre-drill pose to avoid singularities | Kuka arm can execute the plan successfully | ||
R10
R10