Skip to content

Szezi/KinematicsSolverWebApp

Repository files navigation


Dashboard

KinematicsSolverWebApp

KinematicsSolverWebApp is a web application that allows users to create multi-users robotic projects to calculate Forward and Inverse Kinematics. Application allows user to fill information about themselves in profile page and see stats on dashboard. App allows also user to calculate fk&ik kinematics using api by giving parameter in url
Explore the docs »

Table of Contents
  1. Getting Started
  2. About the project
  3. License
  4. Contact

Getting Started

To run this project, clone repo, run docker desktop and run server.

Installation

  1. Clone the repo

    $ git clone https://github.com/Szezi/KinematicsSolverWebApp
  2. Run Docker Desktop

  3. Build docker image

    $ docker-compose build
  4. Migrate

    $ docker-compose run web python manage.py migrate
  5. Create superuser

    $ docker-compose run web python manage.py createsuperuser
  6. Run server

    $ docker-compose up 

Technologies

(back to top)

About The Project

KinematicsSolverWebApp is a web application that allows users to create multi-users robotic projects. Application allows user to fill information about themselves in profile page and see stats on dashboard.
To see different pages of application user need to be logged in. If unauthorised user try to view other pages will be automatically redirect to Home page.

Frontend design is based on :https://www.creative-tim.com/product/soft-ui-dashboard

Home page

home

Application welcome user with home page. It allows user to log in or create new account. If user is already logged in it automatically redirect user to dashboard page. Moreover, if user is logged in it is forbidden to create new account.

Profile

user

User during registration add avatar, description and basic information about user. AbstractUser was used.

Dashboard

dashboard

Dashboard page allows user to keep track with basic information about users projects. On top there are stats with numer of projects, numer of calculated Forward and Inverse Kinematics and current date. On dashboard page user also can create new robotic project and add new robot, keep track on projects is administrator of and see last created robot parameters.

Robotic Project

project

User can create new project. During creation user can select admins and members of the project.

project

Project page contains buttons to edit and delete project on the project header bar. Only administrator can edit or delete project. Another members ae redirected to dashboard page.

User can also add robotic arms to the project and list them in the table.

Robotic Arm

robot

User can create new robotic arm for calculations. During creation user fill information about robot, add notes and select project.

robot

Robot page contains buttons to edit and delete robot on the robot header bar. Only member of the project can edit or delete robot. Another users are redirected to dashboard page.

On this page user can create/edit forward and inverse kinematics with parameters filled during robot creation.

Forward Kinematics

robot

Page use UpdateView and display information about calculation. User can calculate forward kinematics giving thetas values.

Inverse Kinematics

robot

Page use UpdateView and display information about calculation. User can calculate inverse kinematics giving xyz values.

(back to top)

API

api

API allows user to receive information at 3 endpoints. API does not use any model and serialization. Calculations are performed using parameters given by user in url path.

First (Overview) allows user to get 2 rest url paths to calculate fk & ik kinematics and get the result.

api
API for calculating forward kinematics allows user to receive calculation results by giving robots parameters and thetas values in url.
api
API for calculating inverse kinematics allows user to receive calculation results by giving robots parameters and xyz and alpha values in url.

(back to top)

License

Distributed under the GPL-3.0 license. See LICENSE.txt for more information.

(back to top)

Contact

Project Link: https://github.com/Szezi/KinematicsSolverWebApp

(back to top)

About

Robotics kinematic solver web app with API created with Django, DRF, Docker and PostgreSQL

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published