GithubHelp home page GithubHelp logo

sichitong / robot_final_pj Goto Github PK

View Code? Open in Web Editor NEW

This project forked from avmm9898/robot_final_pj

0.0 0.0 0.0 125.53 MB

機器人學期末專題,結合深度學習、機器人視覺與機械手臂**學

Python 75.01% C++ 24.70% Makefile 0.28%

robot_final_pj's Introduction

2020 Final Project of Robotics

Target

Insert the object into hole using robot(wheel and arm) with RGBD camera.

Result

Final

Approach

Insert

Files

  • arduino_worker An arduino script that allow to communicate with PC
  • arduino_connector.py A python script that allow to communicate with arduino. The document of how to send command to arduino written here.
  • control.py Some utility
  • playYOLO.py Yolo related codes, using openCV-dnn module to load darknet and detect object.
  • realsense_basic.py Camera Object for reading colored image and depth image
  • arm_inverse_kinematic.py Calculate inverse kinematic
  • arm_move.py
    1. Moving arm by xyz position or by specific angle
    2. Calculate the transform from camera
  • arm_move_with_visual.py Detect object from image and move the arm
  • car_move_with_visual.py Read image and move the car
  • main.py The main function that move the car to platform and move the arm to it
  • config.py The config file. e.g. serial port
  • /data Put non-code data here
  • /doc Put documents here

Requirement

  • Arduino(Uno)

    • PWM library
    • arduino-cli lib install "Adafruit PWM Servo Driver Library"
    • TimerOne
    • arduino-cli lib install "TimerOne"
  • Python3 and it's package

    • Python3.7+
    • numpy
    • pyserial
  • opencv-python

  • Realsense https://github.com/IntelRealSense/librealsense

Unknown script

  • InputControlDistance
  • encoderSpeedDetection

Test

  • test each joint of the arms test_arm/test_arm.ino

  • test the arms repeatedly test_arm_repetitive.py

  • test the car with encoding test_encoder_car_control/test_encoder_car_control.ino

Data

Document

State:

  1. YOLO偵測平台目標物,回傳XYZ,車子朝目標逼近
  2. 當行駛至70cm內,精準度增加,可以偵測深度(深度值700以內還算精準)
  3. 距離平台目標50cmcm左右,切換至洞偵測模型,開始辨識洞
  4. 辨識到3個洞,回傳3組XYZ
  5. 手臂根據XYZ移動

robot_final_pj's People

Contributors

avmm9898 avatar hardness1020 avatar iam107 avatar linnil1 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.