Giter Club home page Giter Club logo

utra-robosoccer / soccerbot Goto Github PK

View Code? Open in Web Editor NEW
136.0 136.0 8.0 70.09 MB

Soccer playing robot representing Canada from University of Toronto

Home Page: https://utra-robosoccer.github.io/

License: BSD 3-Clause "New" or "Revised" License

Python 11.26% CMake 0.24% Shell 0.03% Dockerfile 0.08% C 87.44% Assembly 0.51% C++ 0.44%
artificial-intelligence control-systems distributed-systems embedded-systems humanoid-robot neural-networks odometry robocup robocup-humanoid robocup-humanoid-league robot ros simulation soccer-playing-robot

soccerbot's People

Contributors

acrylic-origami avatar ahhmed-e avatar alex-alexiev avatar alexanderhollauf avatar anthonyjlem avatar cdalizadeh avatar danielcampoverde avatar dchen2438 avatar dependabot[bot] avatar ericdywang avatar ggu2000 avatar gokuldharan avatar han210 avatar hg2120223 avatar hprickettmorgan avatar izaakniksan avatar jenny3210 avatar joannet8 avatar jonesywolf avatar ljagodz avatar lkunelk avatar manx52 avatar programmingduh avatar rfairley avatar shah-rajab avatar sherrychen127 avatar sumiyuan avatar tygamvrelis avatar vuwij avatar zhan4512 avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

soccerbot's Issues

Build a Demo Program for Connecting to Dynamixel Motors

The goal is to build a simple test program for the L4 microcontroller that can connect to a Dynamixel AX-12 motor and control it. The first objective is to command the motor to move to different positions. Once you can do that, try experimenting with the other functionality that the motor provides. Reading motor positions, reading joint torques values, temperature readings, etc.

http://www.trossenrobotics.com/images/productdownloads/AX-12(English).pdf

Create Map file for localization

Replace the current map soccerfield.png, which is not actually a soccerfield, and get information for the actual soccerfield dimensions from the latest rulebook
https://www.robocuphumanoid.org/materials/rules/

The map is a 2D grid of the world, where every pixel is 5cm. The map should contain the field lines as dark spots. You should be able to test the map by using map_server. Create a launch file that only launches the map in soccerbot/launch/modules

Ensure the map file is a pgm file, you can use online converters

Once you are done creating a test map. Send a pull request for review

NEW

Instead of the soccerfield map, create a map the same size as the small test grass field I created before. Upload that map in the same directory as the new map

The 3D représentation of the smaller test field can be found within soccerbot/soccer-gazebo and the dimensions are written in I think some .sdf file

Joint variable velocity calculations.

Difficulty; Advanced

Think of the robot as a serial link (Treat the head and arm joints as non-moving)
Given a fixed trajectory for walking. Calculate the velocity of each of the trajectory

Calculate Mass Matrix for humanoid robot walking step

Difficulty Level: Advanced

Visualize the Humanoid robot as a serial link where one of the foot is the base of the matrix and the other foot is the endpoint of the matrix. Using this, calculate the mass matrix D(q)*qdot in the Robotics Equation. The mass matrix will be a function of the joint variables q qdot. First the velocity values need to be calculated qdot. See task

Automated Start Position Script

Create an automated script for the robot to start in a certain position. Basically pass in the simulation parameter the start_position:=lying_down or something

Record video data on omnibot

We need to record some video data to test localization.

SIMULATION ONLY
Step 1: Setup your ROS environment
Step 2: I merged omnibot workspace and soccer workspace in soccer_ws. Create a branch of soccer_ws called your initials underscore project. (Etc ap_omnibot_description) Add a launch file here to launch the omnibot instead of the soccer bot.
https://github.com/utra-robosoccer/soccer_ws/tree/master/soccerbot/soccer_gazebo/launch
Step 3: Fix the formatting on omnibot model.xacro
Step 4: Run rviz and usb_cam and install on omnibot
Step 5: Create a package that uses http://wiki.ros.org/teleop_twist_keyboard and control the omnibot with the keyboard
Step 6: Run rosbag and record the robot moving around, keep the video for future purposes

REAL ROBOT
Step 1: Setup the communication between the arduino and the robot to be able publish twist messages to the robot
Step 2: Record video data with rosbag

DEADLINE: October 14th. See the status for added milestone

Create new sh script for running soccer_rl

Instead of running soccer build and soccer gazebo.sh in the scripts folder. We have some desktop shortcuts to make things easier for us. Simply create a copy of the old soccer script and modify the names so that it runs the default soccer_rl script

Automatically ignore darknet_ros when the computer doesn't have CUDA

Since some of our development computers don't have GPU and no CUDA as a result, and some others have CUDA, I need to be able to build the environment smoothly without having to create. CATKIN_IGNORE file every time we are pulling the git repository back into the workspace. Should edit the darknet_ros/darknet_ros/CMakeList.txt to not interrupt build when cuda is not found and instead skip the package

Starting Logic for the robot AI - Robot Movement

Sure just make a python node that upon seeing a ball where the latest transform to the ball is fairly new. Send a ros message of the position you want to move the robot to

And then upon the robot is close enough. Kick the ball

The python node should also keep track of the current state of the robot. (Fallen, standing, walking)

All of these debugged as a ros message

As in the state of the robot is a string that is published every second

For now, actually, one person can just work on the get back up logic in simulation

Get Myhal 580 room for the team

  • Any new memebr list updates should be sent to Hailey
  • We can look into setting up fob access for users as soon as the following is complete:
    • You confirm the space still works for UTRA
    • UTRA sends us an updated contract, which includes a statement the safety training requirements (can be in the Code of Conduct section)
    • UTRA sends an updated list of users, including confirmation of safety training for each
    • Final contract is approved by Space and Equipment Committee

Starting Logic for the robot AI - getting back up loop

Sure just make a python node that upon seeing a ball where the latest transform to the ball is fairly new. Send a ros message of the position you want to move the robot to

And then upon the robot is close enough. Kick the ball

The python node should also keep track of the current state of the robot. (Fallen, standing, walking)

All of these debugged as a ros message

As in the state of the robot is a string that is published every second

For now, actually, one person can just work on the get back up logic in simulation

Fix soccer_hardware

  • When not plugged in, wait for plugged in
  • When plugged in, when unplugged, go back to wait for plugged in
  • When Ctrl-C pressed, should not exit with SIGTERM or SIGKILL

Allow the shell script for robot connection to try multiple interfaces

In scripts/gazebo.sh.

The line $MY_IP only tests wlp4s0 interface to find the IP address, we need to modify this so that it will try a number of different interfaces such as wlan0 in a try catch statement. This will make it so that we don't have to change the interface line everytime we install the simulator on a new robot

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.