In this blog post, we’ll delve into some of the new teaching content we’re releasing for Quanser’s Self-Driving Car Studio (SDCS). We will also discuss some unique features that make SDCS an ideal solution for teaching students about self-driving cars and related fields.

New Skills Activities

We’re beginning with five skills activities for SDCS, all written in Python. These hands-on activities take an experiential learning approach to keep students engaged and provide valuable real-world experiences, preparing them for future careers in industry.

Screenshot of the vehicle control skills activity running in Quanser virtual Labs

After mastering the basics of interpreting sensor and camera data, students apply their knowledge to vehicle state estimation. Once they have a reliable estimate of the car’s position in space, students explore how it can be controlled to drive autonomously. Finally, they put it all together using the QCar’s onboard Lidar to construct a 2D map of its surrounding environment.

Environment interpretation activity running on the QCar with mapping result on the right

Through this progression, students see themselves go from raw sensor data to performing a meaningful task autonomously.

Transitioning from MATLAB/Simulink to Python

Quanser has traditionally implemented teaching and research content in MATLAB/Simulink. However, in response to industry trends and demand, we’ve switched to Python for SDCS. To support this transition, we’ve been working diligently to develop a set of Python application libraries that simplify interactions with all Quanser products, allowing researchers to focus on innovation rather than reinventing the wheel.

Why Not ROS?

Although we support various software environments for QCar development (including ROS 1 and 2), we’ve opted to use pure Python for our teaching content. While ROS is advantageous for research, its complexity and difficulty in setting up the development environment make it less suitable for classroom settings. Arguably in courses focusing on ROS for teaching, students spend a significant amount of time learning ROS over other learning objectives. By choosing Python, we keep students focused on the targeted learning outcomes.

Integration With Quanser Interactive Labs

Screenshot of Quanser Interactive labs simulating a QCar and the SDCS cityscape

One of the standout features of SDCS is its integration with Quanser Interactive Labs (QLabs), our simulation environment that offers a digital twin of the physical QCar experience. This integration is especially beneficial for larger class sizes, where providing each student with their own device is not feasible. With QLabs, students can develop and test their code independently, making the most of their limited lab time to validate their results on real hardware. Another massive advantage of QLabs is its potential to create interactive, engaging demonstrations during lectures that students can continue interacting with outside the classroom. This feature fosters a deeper understanding of the subject matter and encourages students to take charge of their own learning experience.


Quanser’s Self-Driving Car Studio is poised to transform the way we teach autonomous vehicle engineering. With new skills activities, a focus on Python, and the integration of Quanser Interactive Labs, SDCS offers an unparalleled learning experience for students. We’re excited to see the incredible impact this platform will have on the future of education and research in autonomous vehicles and beyond. To learn more about the recent content additions for SDCS, check out our recent webinar on the subject.