Mobile Robots

1. Course Syllabus

Introduction to Mobile Robotics: Defining mobile robots, exploring their diverse types, drawing inspiration from biology, understanding locomotion mechanisms, and examining their real-world applications.

Legged Robots: Analyzing various gaits like biped, quadruped, and hexapod locomotion, and understanding their unique advantages and challenges.

Wheeled Mobile Robots (WMR): Different wheel types, their kinematic constraints, and how these factors influence robot design and movement.

Wheeled Robot Structures: Mobile base structures, their impact on robot mobility, and the trade-offs involved in choosing the right configuration for specific tasks.

State-Space Models of WMRs: State-space models, a powerful mathematical tool for representing and analyzing the kinematics of wheeled mobile robots, including posture and configuration kinematic models.

Motion Control of WMRs: Motion control strategies for wheeled mobile robots, including path following, trajectory stabilization, and posture stabilization, and how feedback control systems play a crucial role.

Sensors for Mobile Robots: Different sensor types, understanding their performance characteristics, and how they enable robots to perceive and interact with their environment.

Simultaneous Localization and Mapping (SLAM): Definition of SLAM, its taxonomy.

Collision Avoidance: Obstacle avoidance techniques like Bug algorithms, Vector Field Histogram methods, and the Dynamic Window Approach.

Path Planning: Sampling-based algorithms (PRM, RRT, A*) and Artificial Potential Fields, enabling robots to navigate efficiently and autonomously.

2. Course Objectives

Fundamental Concepts: Students will gain a solid understanding of the basic concepts in mobile robotics, different types of mobile robots, their unique properties, and their diverse applications across various domains.

Locomotion Mechanisms: Students will learn about the diverse locomotion mechanisms employed by mobile robots, with a particular focus on wheeled mobile bases, walking machines, and flying vehicles. They will understand how to describe their kinematics and motion constraints, crucial for designing and controlling these robots effectively.

Control Systems and Programming: The course will introduce students to the fundamental approaches and structures of control systems used in mobile robots. They will also gain insights into programming these robots, enabling them to execute desired behaviors and tasks.

Perception and Sensors: Students will delve into the world of robot perception, understanding how robots gather information about their environment. They will learn about the classification and properties of various sensors used in mobile robots, enabling them to make informed decisions about sensor selection and integration.

Autonomous Navigation: The course will introduce the challenges and solutions associated with autonomous navigation. Students will explore selected methods and techniques used to achieve various functions of a navigation system, including robot localization, map building, simultaneous localization and mapping (SLAM), collision avoidance, and path planning.

Modeling and Control of Manipulators

1. Course Syllabus
  • Introduction to Robot Manipulators: Fundamental components of a robot, including effectors, receptors, and control systems, different perspectives on robots, from joint-level control to task-level programming.
  • Geometric Foundations: Coordinate frames, transformations (translation, rotation), representations of orientation, homogeneous transformations, and the composition of transformations in both 2D and 3D space.
  • Manipulator Kinematics: Kinematics of manipulators, pose (position and orientation) and velocity, assignment of coordinate frames to manipulator links, Denavit-Hartenberg parameters, direct and inverse kinematic problems.
  • Manipulator Statics: Static analysis of manipulators, the relationship between forces and torques acting on the manipulator and its joint variables, and the concept of virtual work.
  • Manipulator Dynamics: Dynamic behavior of manipulators using the Newton-Euler approach, mechanics, kinematics in non-inertial frames, mass distribution, angular momentum, and the application of Newton's and Euler's equations to formulate manipulator dynamics models.
  • Actuation and Control: Ideal and non-ideal gear models and DC motor models, the concept of trajectory generation, cubic and quintic polynomials, LSPB, and bang-bang trajectories.
  • Advanced Dynamics and Control: The Euler-Lagrange approach as an alternative method for formulating manipulator dynamics models, work, energy (potential and kinetic), constraints, virtual displacements, generalized coordinates, and generalized forces, general structure of equations of motion for manipulators.
2. Course Objectives
  • Kinematic Modeling: Students will develop the ability to model the kinematic relationships of robot manipulators, enabling them to analyze and predict the position, orientation, and velocity of the end-effector based on joint variables.
  • Dynamic Modeling: Students will learn how to model the dynamic behaviour of manipulators, considering factors like inertia, forces, and torques. This understanding is crucial for designing control systems that can accurately and efficiently control manipulator motion.
  • Control System Design: The course will equip students with the knowledge and skills to design and implement control systems for robot manipulators. They will learn about various control strategies, trajectory generation techniques, and how to address challenges like singularities and actuator dynamics.
  • Simulation and Analysis: Students will gain experience in simulating and analyzing the behaviour of manipulator systems using computational tools. This allows them to test and validate control algorithms, optimize manipulator designs, and explore the impact of different parameters on system performance.
  • Practical Applications: The course will emphasize the practical applications of manipulator modelling and control in various domains, such as industrial automation, robotics research, and emerging fields like healthcare and service robotics.

Task Priority Control

1. Course Syllabus

Introduction to Task-Based Control: Concept of tasks and priorities in robot control, advantages of task-based control over traditional methods, applications in various robotic domains (e.g., industrial manipulators, mobile robots, humanoid robots).

Mathematical Foundations: Review of linear algebra and matrix operations, geometric and kinematic fundamentals of robots, transformation matrices, Jacobians, and null spaces.

Task Specification and Prioritization: Defining tasks in terms of desired robot behavior, assigning priorities to tasks based on importance, handling equality and inequality constraints.

Task-Priority Inverse Kinematics: Solving the inverse kinematics problem with task priorities, classic and modern task-priority algorithms, handling underactuated systems and redundancy.

Control Architectures: Centralized vs. decentralized control for multi-robot systems, kinematic and dynamic control layers, integration of task-based control with mission planning.

Applications and Case Studies: Underwater floating manipulator systems (UVMS), cooperative transportation and manipulation, obstacle avoidance and navigation, teleoperation, and human-robot interaction.

Advanced Topics: Optimization techniques for task-based control, learning and adaptation in task-based frameworks, challenges and future directions in task-based control.

2. Course Objectives

Understand the principles and advantages of task-based control for robotic systems: Students will understand the core concept of task-based control, where robot actions are defined in terms of tasks with assigned priorities. Students will learn how this approach differs from traditional control methods and the benefits it offers, such as flexibility, adaptability, and the ability to handle complex, multi-objective scenarios.

Formulate and prioritize control tasks for various robotic applications: Students will learn how to translate desired robot behaviours into specific control tasks and how to assign priorities to these tasks based on their relative importance and potential conflicts. This skill is crucial for designing effective control strategies for real-world robotic systems.

Implement task-priority inverse kinematics algorithms: Students will learn how to implement algorithms that solve the inverse kinematics problem, determining the required joint movements to achieve desired task objectives while respecting task priorities. This involves understanding both classic and modern task-priority algorithms and their trade-offs.

Design control architectures for single and multi-robot systems: Students will learn how to integrate task-based control into the overall control architecture of robotic systems, considering both single-robot and multi-robot scenarios. This includes understanding the interaction between kinematic and dynamic control layers and how task-based control can be combined with mission planning.

Analyze and evaluate the performance of task-based control systems: Students will learn how to analyze the performance of task-based control systems, identify potential issues or limitations, and propose solutions or improvements. This involves understanding the trade-offs between different control strategies and how to evaluate their effectiveness in achieving desired robot behaviours.

Robot Intelligence Course

1. Course Syllabus

Introduction to Cognitive Robotics: Definition of cognitive robotics and the challenges of creating robots with intelligent, context-aware behaviors. Key characteristics of a robot's cognitive architecture, including reactive execution, knowledge representation, reasoning, learning, memory models, predictive models, and interaction models.

Architectural Families: Three primary architectural families for robot cognition: sense-plan-act, reactive/behavior-based, and hybrid reactive-deliberative. Exploration of strengths and weaknesses of each approach and their suitability for different robotic tasks.

Unified Modeling Language (UML): UML as a tool for designing and visualizing robot cognitive architectures. Various UML diagrams, including class diagrams, object diagrams, component diagrams, state machine diagrams, activity diagrams, use case diagrams, and sequence diagrams.

Design Patterns: Design patterns as reusable solutions to common problems in robot architecture design. Various design patterns, including adapter, computational, publish-subscribe, request-process-reply, and sensor-device patterns.

Bio-Inspired Architectures: Bio-inspired architectures for robot cognition, reflexes, taxes, fixed-action patterns, schemas, and innate releasing mechanisms. The subsumption architecture as a prominent example of a bio-inspired approach.

Human-Robot Collaboration: Challenges and opportunities in human-robot collaboration (HRC), the need for robots to adapt to human variability, exhibit intelligibility and naturalness in their interactions, and make decisions in partially well-defined tasks. The concept of AND/OR graphs as a tool for representing and reasoning about cooperative tasks.

Planning with Discrete and Continuous Quantities: Classical planning concepts to handle both discrete and continuous quantities, enabling robots to reason about the physical world more effectively. PDDL+ as an extension of PDDL to model continuous processes, events, and durative actions.

Task-Motion Planning (TMP): Challenges of integrating task planning and motion planning, considering uncertainties in perception, modelling, and execution. Approaches to TMP that leverage belief space planning and probabilistic reasoning.

Search-Based Algorithms: Various search-based algorithms for robot planning and decision-making: explicit search algorithms, SAT procedures, and hierarchical task networks (HTNs). The trade-offs between satisficing and optimal planning approaches.

AND/OR Graphs, HTNs, and Behavior Trees: Advanced planning and execution frameworks, including AND/OR graphs, HTNs, and behavior trees, and their applications in various robotic scenarios such as human-robot collaboration, task decomposition, and reactive behaviors.

Foundational Models & End-to-End Learning Architectures: The role of foundational models and end-to-end learning architectures in robot intelligence. Discussion on how these approaches can enable robots to learn from large-scale datasets and generalize to new tasks and environments.

2. Course Objectives

Understanding Robot Cognition: Students will develop a deep understanding of the fundamental concepts and challenges in robot cognition, including knowledge representation, reasoning, planning, learning, and interaction.

Designing Cognitive Architectures: The course will equip students with the skills to design and implement cognitive architectures for robots using various approaches, including symbolic planning, reactive behaviors, and hybrid methods.

Applying AI Techniques: Students will learn how to apply various artificial intelligence techniques, such as search algorithms, probabilistic reasoning, and machine learning, to solve problems in robot cognition and behavior generation.

Analyzing and Evaluating Architectures: Students will develop the ability to critically analyze and evaluate existing robot cognitive architectures. They will learn how to identify strengths and weaknesses, compare different approaches, and make informed decisions about the most suitable architecture for a given robotic task.

Addressing Real-World Challenges: The course will emphasize the practical challenges of deploying robot intelligence in real-world scenarios, such as human-robot collaboration, task-motion planning, and handling uncertainties in perception and action.

Visual Perception

1. Course Description

This course explores the fascinating world of visual perception, examining how we see and interpret the world around us. We will delve into the biological, psychological, and computational mechanisms that underlie our ability to perceive shape, color, motion, depth, and objects. Through lectures, readings, discussions, and demonstrations, students will gain a comprehensive understanding of the perceptual processes that shape our visual experience.

2. Course Objectives

Upon successful completion of this course, students will be able to:

  • Understand the basic anatomy and physiology of the visual system, from the eye to the brain.
  • Explain the fundamental principles of visual perception, including Gestalt principles, perceptual constancies, and depth cues.
  • Describe the psychological processes involved in object recognition, scene perception, and attention.
  • Analyze the computational models and theories that attempt to explain visual perception.
  • Critically evaluate research findings in the field of visual perception.
  • Apply knowledge of visual perception to real-world situations, such as art, design, and human-computer interaction.
3. Topics Covered

Introduction to Visual Perception:

  • What is visual perception?
  • The importance of vision
  • Historical perspectives on visual perception

The Visual System:

  • The eye and its components
  • The visual pathway from retina to cortex
  • Receptive fields and neural coding

Early Visual Processing:

  • Light and color perception
  • Edge detection and feature extraction
  • Motion perception

Object Recognition:

  • Gestalt principles of perceptual organization
  • Object constancy and viewpoint invariance
  • Models of object recognition

Scene Perception:

  • Depth perception and binocular vision
  • Monocular cues for depth
  • Spatial cognition and navigation

Attention and Awareness:

  • Selective attention and visual search
  • Inattentional blindness and change blindness
  • The relationship between attention and consciousness

Visual Illusions:

  • Types of visual illusions
  • Explanations for visual illusions
  • The role of illusions in understanding perception

Applications of Visual Perception:

  • Art and design
  • Human-computer interaction
  • Visual impairment and rehabilitation

Perception and Manipulation

1. Course Description

This course explores the intertwined processes of perception and manipulation, focusing on how robots and intelligent systems perceive their environment and interact with it. We will delve into the fundamental principles of computer vision, tactile sensing, and robot kinematics, dynamics, and control. Through lectures, readings, discussions, and hands-on projects, students will gain a comprehensive understanding of the challenges and solutions in building robots that can perceive and manipulate objects in the real world.

2. Course Objectives

Upon successful completion of this course, students will be able to:

  • Understand the basic principles of visual perception, including image formation, feature extraction, and object recognition.
  • Explain the different types of tactile sensors and their applications in robotics.
  • Describe the kinematics and dynamics of robot manipulators.
  • Develop algorithms for robot motion planning and control.
  • Design and implement perception-based manipulation systems for various tasks.
  • Analyze and evaluate the performance of perception and manipulation systems.
  • Apply knowledge of perception and manipulation to real-world problems in robotics and automation.
3. Topics Covered

Introduction to Perception and Manipulation:

  • What is perception and manipulation?
  • The role of perception in manipulation
  • Applications of perception and manipulation in robotics

Computer Vision for Robotics:

  • Image formation and camera models
  • Feature extraction and image segmentation
  • Object recognition and pose estimation
  • 3D vision and depth perception

Tactile Sensing and Haptics:

  • Types of tactile sensors and their working principles
  • Tactile data processing and feature extraction
  • Haptic exploration and object recognition
  • Force control and manipulation with tactile feedback

Robot Kinematics and Dynamics:

  • Forward and inverse kinematics of robot manipulators
  • Velocity and acceleration analysis
  • Dynamics of robot motion and force control

Motion Planning and Control:

  • Path planning algorithms for robot manipulators
  • Trajectory generation and optimization
  • Motion control techniques for accurate manipulation

Grasping and Manipulation:

  • Grasp planning and stability analysis
  • Manipulation of objects with different properties
  • Advanced manipulation skills like pushing, pulling, and regrasping

Perception-Based Manipulation:

  • Integrating perception and manipulation for autonomous tasks
  • Visual servoing and force-based control
  • Learning-based approaches for perception and manipulation

Applications and Case Studies:

  • Industrial automation and manufacturing
  • Service robotics and human-robot interaction
  • Medical robotics and assistive technologies

Computer-Aided Design

1. Course Description

This course provides a comprehensive introduction to Computer-Aided Design (CAD) with a focus on both theoretical concepts and practical applications. Students will learn to use industry-standard CAD software to create 2D drawings and 3D models, applying these skills to solve design problems in various engineering and design disciplines. The course will cover fundamental concepts such as geometric modeling, projections, dimensioning, and tolerancing, while also exploring advanced topics like assemblies, simulations, and manufacturing processes.

2. Course Objectives

Upon successful completion of this course, students will be able to:

  • Understand the fundamental principles of CAD and its role in the design process.
  • Master the use of a major commercial CAD software package (e.g., AutoCAD, SolidWorks, Fusion 360) for 2D and 3D design.
  • Apply geometric construction techniques to create accurate and detailed drawings.
  • Utilize CAD tools for sketching, dimensioning, and annotating designs.
  • Create and modify 3D models using various modeling techniques (e.g., solid, surface, wireframe).
  • Generate technical drawings and documentation from 3D models.
  • Understand and apply design standards and conventions.
  • Analyze and evaluate design solutions using CAD tools.
  • Communicate design ideas effectively using CAD visualizations and presentations.
3. Topics Covered

Introduction to CAD:

  • History and evolution of CAD
  • Benefits and applications of CAD in various industries
  • Hardware and software components of a CAD system
  • User interface and basic operations of chosen CAD software

2D Design Fundamentals:

  • Sketching and drawing tools
  • Geometric constructions and transformations
  • Layers, linetypes, and colors
  • Dimensioning and annotation
  • Creating and editing 2D drawings (e.g., orthographic projections, sections, auxiliary views)

3D Modeling:

  • Introduction to 3D modeling concepts
  • Solid modeling techniques (e.g., extrusion, revolution, sweeping)
  • Surface modeling and freeform design
  • Creating and modifying 3D features
  • Working with assemblies and constraints

Advanced CAD Techniques:

  • Parametric modeling and design automation
  • Creating and managing complex assemblies
  • Generating technical drawings from 3D models
  • Introduction to finite element analysis (FEA) and simulations

Design for Manufacturing:

  • Understanding manufacturing processes and constraints
  • Design considerations for different manufacturing methods (e.g., CNC machining, 3D printing)
  • Creating manufacturing drawings and documentation

Applications and Case Studies:

  • Exploring CAD applications in various fields (e.g., mechanical engineering, architecture, product design)
  • Analyzing real-world design examples and case studies

Product Design and Development

1. Course Description

This course provides a comprehensive overview of the product design and development process, from initial concept to market launch. Students will learn about the integration of user needs, market trends, engineering principles, and business considerations in creating successful products. The course will cover a range of topics including design thinking, user research, ideation, prototyping, manufacturing, and product lifecycle management. Through lectures, case studies, and hands-on projects, students will gain practical experience in developing innovative and marketable products.

2. Course Objectives

Upon successful completion of this course, students will be able to:

  • Understand the fundamental principles of product design and development.
  • Apply design thinking methodologies to identify user needs and generate creative solutions.
  • Conduct user research and analyze market trends to inform product development decisions.
  • Develop product concepts and create prototypes for testing and evaluation.
  • Consider manufacturing processes and materials in the design process.
  • Understand the importance of sustainability and ethical considerations in product development.
  • Effectively communicate design ideas and present product proposals.
  • Work collaboratively in a team environment to develop and launch a new product.
3. Topics Covered

Introduction to Product Design and Development:

  • What is product design and development?
  • The product development process and its phases
  • Types of products and design considerations
  • Role of design in business and society

Design Thinking and User-Centered Design:

  • Empathize: Understanding user needs and motivations
  • Define: Problem definition and framing
  • Ideate: Generating creative solutions
  • Prototype: Building and testing tangible representations
  • Test: Evaluating and iterating on designs

User Research and Market Analysis:

  • Conducting user interviews and surveys
  • Observing user behavior and needs
  • Analyzing market trends and competitive landscapes
  • Identifying opportunities and unmet needs

Concept Generation and Selection:

  • Brainstorming and ideation techniques
  • Sketching and visualizing concepts
  • Evaluating and selecting promising ideas
  • Developing product specifications

Prototyping and Testing:

  • Types of prototypes and their purposes
  • Rapid prototyping techniques and tools
  • Conducting user testing and gathering feedback
  • Iterating on designs based on user feedback

Manufacturing and Materials:

  • Overview of manufacturing processes
  • Material selection and its impact on design
  • Design for manufacturing (DFM) principles
  • Sustainability and environmental considerations

Product Lifecycle Management:

  • Product launch and marketing strategies
  • Product adoption and user experience
  • Product maintenance and support
  • End-of-life considerations and product disposal

Case Studies and Industry Examples:

  • Analyzing successful product launches
  • Learning from design failures
  • Exploring innovative design solutions
  • Guest lectures from industry professionals