Teaching

Lectures offered by me

Click on each section to view the course outline and download the syllabus as well

This IoT and embedded system course typically covers the fundamental concepts of designing and developing smart devices and systems using microcontrollers, sensors, and wireless communication protocols. The course also include hands-on projects to help students gain practical experience in building and programming embedded systems for IoT applications. Overall, the course aims to equip students with the skills and knowledge necessary to develop innovative IoT solutions that can improve the efficiency and functionality of various industries.

Click Here to Download Course Details

This IoT and embedded system course typically covers the fundamental concepts of designing and developing smart devices and systems using microcontrollers, sensors, and wireless communication protocols. The course also include hands-on projects to help students gain practical experience in building and programming embedded systems for IoT applications. Overall, the course aims to equip students with the skills and knowledge necessary to develop innovative IoT solutions that can improve the efficiency and functionality of various industries.

Click Here to Download Course Details

This IoT and embedded system course typically covers the fundamental concepts of designing and developing smart devices and systems using microcontrollers, sensors, and wireless communication protocols. The course also include hands-on projects to help students gain practical experience in building and programming embedded systems for IoT applications. Overall, the course aims to equip students with the skills and knowledge necessary to develop innovative IoT solutions that can improve the efficiency and functionality of various industries.

Click to download syllabus 

An Introduction to Embedded Systems course teaches students about the fundamental principles of embedded systems, including hardware and software design, real-time operating systems, and programming languages such as C and assembly. The course prepares students for careers in a variety of fields, including automotive, aerospace, telecommunications, medical devices, and consumer electronics.

Click Here to Download Syllabus 

The course will give students hands-on experience in developing interesting Android applications. No previous experience in programming is needed, and the course is suitable for students with any level of computing experience. MIT App Inventor will be used in the course. It is a blocks-based programming tool that allows everyone, even novices, to start programming and build fully functional apps for Android devices. Students are encouraged to use their own Android devices for hands-on testing and exploitation.

Click Here to Download Syllabus  

In thisembedded systems course, virtual reality (VR) will be explored as a rapidly growing technology that relies heavily on embedded systems. Students can learn about the hardware and software components of VR systems, such as motion sensors, display systems, and graphics processors. They may also study the various types of VR systems, including head-mounted displays, immersive rooms, and projection-based systems. Additionally, students can gain experience with programming and optimizing embedded systems to deliver high-performance VR experiences. Overall, the integration of VR into an embedded systems course can provide students with a valuable understanding of this emerging technology and its applications.

Click Here to Download   

 

Discrete Mathematics and Its Applications

This course covers the basic principles of discrete mathematics with the objective of covering material needed in high-level computer science courses. Class topics include logic, sets, functions, mathematical induction and recursion, proof techniques, permutations and combinations counting techniques, and discrete probability

 

Discrete Mathematics Course Outline [Click to Download]   

This course provides a modern introduction to logic design and the basic building blocks used in digital systems, in particular digital computers. It starts with a discussion of combinational logic: logic gates, minimization techniques, arithmetic circuits, and modern logic devices such as field programmable logic gates. The second part of the course deals with sequential circuits: flip-flops, synthesis of sequential circuits, and case studies, including counters, registers, and random access memories. State machines will then be discussed and illustrated through case studies of more complex systems using programmable logic devices. Different representations including truth table, logic gate, timing diagram, switch representation, and state diagram will be discussed.A digital system is a combination of devices designed to manipulate logical information or physical quantities that are represented in digital form; that is, the quantities can take on only discrete values. These devices are most often electronic, but they can also be mechanical, magnetic, or pneumatic. Some of the more familiar digital systems include digital computers and calculators, digital audio and video equipment, and the telephone system—the world’s largest digital system.

DSD_syllabus [Click to Download]

Robotic Engineering is a course for the students who are interested in the design, engineering and programming of robots or another technical career. The Robotics Engineering course is designed to explore the past, current and future use of automation technology in industry and everyday use. Robotics is a labbased course that uses a hands-on approach to introduce the basic concepts of robotics, focusing on the construction and programming of autonomous mobile robots. Course information will be tied to lab experiments; students will work in groups to build and test increasingly more complex mobile robots, culminating in an end-of-semester robot contest. Students will be divided into groups and complete a variety of robot construction and programming activities within the confines of these groups. Students trace the history, development, and influence of automation and robotics. They learn about mechanical systems, energy transfer, machine automation and computer control systems. Students use a robust robotics platform to design, build, and program a solution to solve an existing problem.This course will introduce basic concepts and techniques used within the field of mobile robotics. analyze the fundamental challenges for autonomous intelligent systems and present the state of the art solutions. Among other topics, it  will discuss: 

  • Kinematics
  • Sensors
  • Vehicle localization
  • Map building
  • SLAM
  • Path planning
  • Exploration of unknown terrain

Robotics Engineering Course Outline [Click to Download]