Skip to content

LTU-RAI/summer_school_controller

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

38 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

AEROTRAIN SUMMER SCHOOL - Human-Robot Interaction Day: Controller with Delay Compensation

This work is a part of the AERO-TRAIN Summer School 2024. It was presented during Day 3 - Human-Robot Interaction Day, and it is part of Tutorial 1.

Repository Description

  • This repository is designed to run within a docker container as a part of the Tutorial 1, howerver it can also run locally.
  • The repository includes:
    • The velocity controller for the pelican UAV from the rotors_simulator.
    • The keyboard interface to enable keyboard desired positions for the UAV.
    • The position predictor to estimate the actual position of the UAV by compensating for the average measured delays.
    • UDP tunnels to transmit the ROS messages (odometry and command messages) to any machine without communication constrains. In order for the UDP tunnels to work correctly, you should specify:

NOTE: The main branch includes unfinished codes where you can try to include your own solutions. indicative solutions are included in the solutions branch

Dependencies

  • mav_comm
    git clone https://github.com/ethz-asl/mav_comm.git
    

Clone the repository

git clone https://github.com/achilleas2942/summer_school_controller.git

Run the Gazebo world locally

  • Follow the description of summer_school_world to run the Gazebo world.
  • After building, e.g.
    catkin build summer_school_controller
    
    or
    catkin_make summer_school_controller
    
  • And sourcing your workspace, e.g.
    source <your_workspace_name>/devel/setup.bash
    
  • Execute the launch file to run the UDP tunnels
    roslaunch summer_school_controller udp_tunnels.launch
    
  • Develop your code for the velocity controller or use the script from the solutions branch and run it
    python3 velocity_controller.py
    
  • Develop your code for the position prediction or use the script from the solutions branch and run it
    python3 position_prediction.py
    
  • Develop your code for the keyboard teleoperation or use the script from the solutions branch and run it
    python3 keyboard_teleoperation.py
    

Troubleshooting

Consider opening an Issue if you have troubles with the exercises of the repo.
Feel free to use the Discussions tab to exchange ideas and ask questions.

About

R7022E - lecture 10

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Python 36.6%
  • CMake 29.5%
  • C 11.7%
  • C++ 11.6%
  • Shell 9.5%
  • Dockerfile 1.1%