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
To run this project, clone repo, run docker desktop and run server.
-
Clone the repo
$ git clone https://github.com/Szezi/KinematicsSolverWebApp
-
Run Docker Desktop
-
Build docker image
$ docker-compose build
-
Migrate
$ docker-compose run web python manage.py migrate
-
Create superuser
$ docker-compose run web python manage.py createsuperuser
-
Run server
$ docker-compose up
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
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.
User during registration add avatar, description and basic information about user. AbstractUser was used.
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.
User can create new project. During creation user can select admins and members of the 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.
User can create new robotic arm for calculations. During creation user fill information about robot, add notes and select project.
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.
Page use UpdateView and display information about calculation. User can calculate forward kinematics giving thetas values.
Page use UpdateView and display information about calculation. User can calculate inverse kinematics giving xyz values.
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 for calculating forward kinematics allows user to receive calculation results by giving robots parameters and thetas values in url. API for calculating inverse kinematics allows user to receive calculation results by giving robots parameters and xyz and alpha values in url.Distributed under the GPL-3.0 license. See LICENSE.txt for more information.
Project Link: https://github.com/Szezi/KinematicsSolverWebApp










