Code Monkey home page Code Monkey logo

kinematics's Introduction

Fruit Fly Optimization Algorithm (FOA) & Robot Kinematics Application ๐Ÿค–

This repository contains Python implementations of the Fruit Fly Optimization Algorithm (FOA) for solving the inverse kinematics of a robot. Additionally, it includes a GUI application for forward and inverse kinematics calculations for various robot models.

Table of Contents

FOA for Inverse Kinematics ๐ŸŽ

The FOA is a nature-inspired optimization algorithm that emulates the foraging behavior of fruit flies. The algorithm is applied to find the best joint angles that will position the robot's end-effector closest to a desired position.

The basic structure of a fruit fly is defined in the FruitFly class. Each fruit fly has a position (joint angles) and a smell (distance from the desired position). The optimization process guides the fruit flies towards the best solution.

The main steps are:

  1. Initialize a population of fruit flies.
  2. Evaluate their smells based on their positions.
  3. Guide them towards the best position found so far.
  4. Repeat for a set number of iterations.

Robot Kinematics Application โš™๏ธ

A GUI-based application is provided that helps in calculating the forward and inverse kinematics of various robot models. The application allows users to:

  • Select the robot model.
  • Input the number of links and joints.
  • Provide dimensions and types for each link and joint.
  • Compute the Degrees of Freedom (DOF) based on the provided parameters.
  • Calculate forward and inverse kinematics.

The application is built using the Tkinter library. image

Usage ๐Ÿ’ป

  1. To run the FOA for inverse kinematics, execute the script containing the FOA implementation.
  2. To run the Robot Kinematics Application, execute the script with the Tkinter GUI application.

'python foa_script.py' 'python robot_kinematics_app.py'

Author ๐Ÿ“

Fadi Helal

License โš–๏ธ

This project is licensed under the BSD3 License.

References ๐Ÿ“š

kinematics's People

Contributors

saiprone 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.