Giter Club home page Giter Club logo

jaco2-stroke-rehab-sim's Introduction

jaco2-stroke-rehab-sim

About this project

This project was made by second semester students from Aalborg University, studying robotics engineering. The project subject was 'robotic manipulator programming & simulation', which includes and requires the project to do all the math and programming for inverse, and forward kinematics as well as trajectory planning without the usage of libraries. The bare necessity libraries are excused.

Introduction

In our approach to the subject we were given, we agreed upon coding and simulating inverse, and forward kinematics as well as trajectory planning for the Kinova Jaco2. This is done without the usage of external libraries, per guidelines by Aalborg University. The necessary libraries for simulating a Kinova Jaco2 accurately was excused. In this project a lot of the library code used is from (Peter Corke's Robotics Toolbox).

The project focuses on rehabilitation for stroke patients with motoric defects as a consequence of damage to the motoric parts of their brains. Activation of neuroplasticity stimulates the brain to rebuild the dead cells and thereby regain function, rehabilitation exercises target the disability by moving the disabled body part. Rehabilitation exercises are repetitive to stimulate the area of the damage and the surrounding brain cells to regain the disabled/ damaged function. Rehabilitation consists of body movements that the patient actively or inactively completes, thereby improving muscles and neuron connectivity to the area.

This is essentially what the final product that this project simulates is supposed to do!

Features

The code found in this repository is not only restricted to usage relevant to rehabilitation for stroke patients. It can generally be used to simulate inverse, and forward kinematics in any way, alongside features like trajectory planning, where this thing comes with plotting and data outputs during runtime. The code can generate animations of the simulation and can save animations in formats like .GIF and .MP4, .PNG & more. (Note that .PNG, and .JPG as two examples, will make the code export every frame as an individual .PNG/.JPG file).

Examples / Demos

This repository comes with a few examples in the examples folder, but let's go through it while you are here.

Trajectory Movement Simulation

Exported .GIF animations of the simulation (Please note this only shows blue lines for manipulator links) in different directions:
Moving from left to right Moving from right to left

The jitter that happens when on the second GIF showing movement from right to left, is not caused by the code per say, but rather the simulation, due to the inverse, and forward kinematics as well as trajectory being calculated in cartesian space.

Trajectory Planning & Rendering

Trajectory Frames
Two different trajectory configurations. Left image: Linear 3-point trajectory. Right image: 5-point circular bow trajectory.

Trajectory Frames 2
The same two trajectories from figure: 10.8, with blue trajectory frames indicating where the end-effector will move on the trajectory

Trajectory Frames 3
A zoomed in view of a early development trajectory, highlighting one of the via points with red color as well as the orientation towards XYZ.

Joint Angle Plotting Over Time

The code can generate plotting over time that displays the angle in degrees to a specific joint at a specific time in space. left to right velocity
Shows the Joint angles over time for the Rightwards motion

right to left velocity
Shows the Joint angles over time for the Leftwards motion

What the robot actually looks like

The Kinova Jaco2 that is being simulated looks like this: real jaco2

The Kinova Jaco2 rendered in MATLAB:
real jaco2

jaco2-stroke-rehab-sim's People

Contributors

nikobk avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.