## Inspiration

``````      While taking Introduction to Circuits, we were struggling to solve the problems that our professor was assigning us each week. In order to check our work, we had to go through the tedious process of redrawing the circuit on some odd website or pay a large fee for higher end circuit simulation. Now with Circuit Master, students can simply take a picture of their homework and the answers will appear.
``````

## What does it do?

``````      Circuit Master takes a photograph and is able to read and identify the elements in the circuit. Then, Circuit Master utilizes Kirchhoff's Voltage Laws to find the voltage at each node. From this, the voltage drop and current across each element can be identified.
``````

## How we built it

``````       Circuit Master uses Java to calculate the node voltages after the elements of the circuits are identified. By using Kirchhoff's Voltage Laws, a series of linear of equations can be created that models the circuit. By using Cramer's Rules, this system of linear equations can be easily solved. After the voltage at each node is determined, finding the voltage drop and current across each element is trivial. In processing the image, we traced a path along the black wires and identified circuit elements as we traveled along the circuit.  Elements were determined by a change in the black and white pixels while traveling along the wire.
``````

## Challenges we ran into

Choosing the programming language to do our project in gave us problems due to the wide range of possibilities. In addition, developing an algorithm that is able to solve any circuit configuration proved to be more difficult than expected. We also struggled in combining our image processing functions together to create a comprehensive program that could automatically trace the circuit.

## Accomplishments that we're proud of

The final circuit analysis program is able to solve any circuit with a voltage source and resistors no matter how odd a configuration these elements may be arranged in.

## What we learned

We learned how to design a class hierarchy from scratch in addition to turning a mathematical formula into an algorithm that can be executed by a computer. In addition, we gained experience in image processing techniques through analyzing patterns of pixels within the image.

## What's next for Circuit Master

In the future, Circuit Master will become an app available in the app store for anybody to download. The circuits that can be analyzed will be expanded to include dependent and independent current and voltage sources, and the steady state response from capacitors and inductors.