KTU-S6-Robotics-Lab-AIL332

🤖 Robotics Laboratory (AIL332)

Robotics Lab Academic Credits Arduino ROS MIT License

Welcome to the Robotics Laboratory (AIL332) repository! This comprehensive collection contains implementations and documentation for experiments conducted as part of the BTech Robotics Laboratory course. Designed to provide a hands-on experience with robotics systems, this lab covers everything from basic Arduino interfacing to advanced ROS-based navigation.

📚 Course Information

Detail Description
Course Code AIL332
Department Computer Science and Engineering (Artificial Intelligence)
Category PCC (Professional Core Course)
Credits 2 (0-0-3)
Year of Introduction 2022
Syllabus Click Here
Semester S6 (Sixth Semester)

🎯 Course Outcomes

After completing this course, students will be able to:

  1. CO1: Interface various peripherals to Arduino boards for robotics applications
  2. CO2: Assemble mobile robots with different sensors and actuators
  3. CO3: Understand and implement mobile robot localization techniques
  4. CO4: Apply standard algorithms to enhance robot intelligence and functionality
  5. CO5: Master robot navigation principles and implement autonomous navigation systems

🔧 Prerequisites

🌐 ROS Essentials

This laboratory introduces the Robot Operating System (ROS) as a framework for robot software development:

🧪 Laboratory Experiments

Part A: Interfacing Sensors and Actuators

1. Arduino Basics

2. Sensor Interfacing

3. DC Motor Control

4. Servo Motor Control

5. Sensor Calibration

6. Mobile Robot Assembly

7. Arduino Networking (Coming Soon)

Part B: Intelligent Systems

8. ROS Programming Basics

9. Mobile Robot Localization (Coming Soon)

10. Touch Sensing (Coming Soon)

11. Line Following Robot

12. Obstacle Avoidance

13. Object Detection

14. ROS Navigation

Additional Programs and Resources

Extra Materials for Exam

Study Materials

Experiment Questions

  1. Clone the repository:
    git clone https://github.com/venkideshVenu/KTU-S6-Robotics-Lab-AIL332
    cd KTU-S6-Robotics-Lab-AIL332
    
  2. Install prerequisites:
    # Arduino IDE
    sudo apt-get install arduino
    
    # ROS Installation (Ubuntu 20.04 - ROS Noetic example)
    sudo sh -c 'echo "deb http://packages.ros.org/ros/ubuntu $(lsb_release -sc) main" > /etc/apt/sources.list.d/ros-latest.list'
    sudo apt-key adv --keyserver 'hkp://keyserver.ubuntu.com:80' --recv-key C1CF6E31E6BADE8868B172B4F42ED6FBAB17C654
    sudo apt-get update
    sudo apt-get install ros-noetic-desktop-full
    
    # Python packages
    pip install numpy matplotlib pandas
    
  3. Navigate to specific experiment directory
    cd "01 Familiarisation of Arduino IDE, microcontroller & IO interfacing"
    
  4. Follow instructions in individual experiment READMEs

🛠️ Tools and Technologies


Arduino

ROS

Python

C++

Gazebo
🤖
Moveit
🔍
Rviz
🔌
Sensors & Motors

📊 Assessment Pattern

Component Marks Details
Continuous Internal Evaluation (CIE) 75 Lab performance, records & viva voce
End Semester Examination (ESE) 75 Practical exam (2.5 hours)
Total 150  

Grading Criteria

📚 References

  1. Siegwart, Roland, “Introduction to Autonomous Mobile Robots”, MIT Press
  2. Peter Corke, “Robotics, Vision and Control: Fundamental Algorithms in MATLAB”, Springer
  3. John. J. Craig, “Introduction to Robotics (Mechanics and control)”, Pearson
  4. S K Saha, “Introduction to Robotics”, McGraw Hill
  5. R K Mittal and I J Nagrath, “Robotics and Control”, Tata McGraw Hill
  6. Dahiya, Ravinder S., Valle, Maurizio, “Robotic Tactile Sensing”, Springer
  7. TurtleBot3 e-Manual
  8. ROS Wiki
  9. Arduino Documentation

🔄 Contributing

Contributions to improve this repository are welcome! Please follow these steps:

  1. Fork the repository
  2. Create a feature branch (git checkout -b feature/amazing-feature)
  3. Commit your changes (git commit -m 'Add amazing feature')
  4. Push to the branch (git push origin feature/amazing-feature)
  5. Open a Pull Request

📝 License

This project is licensed under the MIT License - see the LICENSE file for details.


Made with ❤️ for Robotics Students

Report Bug · Request Feature · Ask Question