A major challenge in learning circuit theory is the cognitive and intuitive understanding and comprehension of the behavior of electrical circuits. The new generation of students are experiential learners, whose understanding of fundamental engineering concepts is enhanced by hands-on learning, programming, simulation and the ability to break down complex problems. The traditional approach to teaching introductory circuit theory revolves around drawing circuit diagrams and identifying one of the two electrical quantities (voltage and current) in the circuit. Although the diagrams are visual, the analysis of circuits and hand calculations are not well-suited for programmers or developers. There is a need to create an interactive computer program JSim intended to lower the cognitive barrier to comprehension of circuit analysis techniques and enhance the interfacing capabilities of the program to the hardware. It merges the concepts covered in programming courses with the fundamentals of electrical circuits. It not only allows engineers to evaluate system requirements but also provides a platform to perform real-time analysis of the circuit to determine the power needs.
JSim is a novel real-time circuit simulation tool developed to enhance students' understanding of Nodal and Mesh analysis techniques within basic resistive circuits. Written exclusively in C++ and relying solely on the C++ standard libraries, JSim is highly efficient and uniquely capable of running on extremely limited hardware, such as 8-bit microcontrollers, due to its minimal resource requirements. The software dynamically constructs augmented matrices representing both Nodal and Mesh problems, offering a robust, interactive learning environment that closely aligns with fundamental programming and mathematical concepts covered in foundational engineering courses. This approach fosters a deeper and more effective learning experience by building on students’ pre-existing knowledge. This tool can be developed into a robust analytical tool for passive and active circuits employing a variety of analysis techniques. Additionally, JSim employs dynamic memory allocation for each circuit component and circuit, enhancing its space efficiency and ensuring optimal performance on constrained systems.
Adapting JSim in sophomore-level circuit courses will allow instructors to teach with a greater impact inducing the target concepts with ease while emphasizing the qualitative understanding of circuit behavior. Since the majority of the undergraduate engineering programs offer C, C++ or JAVA courses in the freshmen or sophomore year, incorporating tools such as JSim into circuits courses would help reinforce programming constructs. With an effective implementation of this tool, students will be prepared to design embedded applications which would be a win-win for the students and teachers.
The full paper will be available to logged in and registered conference attendees once the conference starts on June 22, 2025, and to all visitors after the conference ends on June 25, 2025