In this course, I learned how intelligent systems interact with the physical world through inputs, such as sensors, and outputs, like actuators. I explored the development and implementation of intelligent algorithms to process inputs and control real systems. The hands-on experience included programming microcontrollers, such as Arduino, to work with various sensors and actuators. I gained a strong understanding of the basic principles of intelligent systems and the fundamentals of computing as applied to these systems. Additionally, I gained a thorough understanding of how data is processed within intelligent systems. The course also enhanced my algorithmic thinking, enabling me to design algorithms that convert inputs into outputs. I further deepened my knowledge of sensors, transducers, and how systems interact with the physical world through these components.
I collaborated with a team of four to design and build a small-scale autonomous foosball table, where I played a key role in various aspects of the project. I designed and implemented code for the kicking mechanisms, using an Intel D415i RGB-D camera, NEMA stepper motors, and optical encoders, all while leveraging ROS and OpenCV for seamless integration. I also engineered the frame to house all components, ensuring optimal integration and functionality. To improve precision, I designed and 3D printed encoder flags for accurate player position tracking. I also contributed to the wiring of the system, ensuring reliable connections. The project utilized a Raspberry Pi as the core processing unit for real-time control and operation.
My team, alongside our professor, is actively working on further improving the system, and we have had the opportunity to present it at several showcases at the school.