0% found this document useful (0 votes)
1 views18 pages

Python Syllabus

The document outlines the syllabus for a Python Programming course tailored for Electrical Engineering students, covering essential topics such as Python fundamentals, control structures, file handling, scientific computing libraries, and domain-specific applications. It includes a breakdown of chapters, practical exercises, and references to various academic sources. The course aims to equip students with the skills to analyze electrical circuits, automate systems, and interface with IoT devices using Python.

Uploaded by

Sahil Jamadar
Copyright
© All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
1 views18 pages

Python Syllabus

The document outlines the syllabus for a Python Programming course tailored for Electrical Engineering students, covering essential topics such as Python fundamentals, control structures, file handling, scientific computing libraries, and domain-specific applications. It includes a breakdown of chapters, practical exercises, and references to various academic sources. The course aims to equip students with the skills to analyze electrical circuits, automate systems, and interface with IoT devices using Python.

Uploaded by

Sahil Jamadar
Copyright
© All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd

Cover Page

Course Title: Python Programming for Electrical Engineering

Course Code: EE2XX

Year/Semester: Second Year, Semester III

Credits: 2 (Lecture–Tutorial–Practical: 1–0–2)

Lecture Hours: 12 (1 h/week × 12 weeks)

Practical Hours: 24 (2 h/week × 12 weeks)

--------------------------------------------------------------------------------

Chapter‐wise Breakdown

Chapter 1: Introduction to Python & Environment Setup

Teaching Hours: 2

Topics/Subtopics:

• Overview of Python and its role in EE applications

• Installing Python (Anaconda) and IDEs (VS Code, PyCharm)

• Python REPL, script vs interactive mode

• Basic syntax, keywords, comments

• Data types (int, float, bool, str) and type conversion

References:

1. IIT Kanpur, “Python Programming for Engineers,” Syllabus Document, 2023

URL: [Link]

2. NIT Trichy, “PYT1001 – Python for Technical Computing,” 2022

URL: [Link]
Chapter 2: Control Structures, Data Structures & Functions

Teaching Hours: 3

Topics/Subtopics:

• Conditional statements (if, if–else, nested if)

• Loops (for, while, break, continue)

• Built‐in data structures: list, tuple, set, dict

• List comprehensions and generator expressions

• Defining functions, scope, lambda functions

• Modules and packages; installing via pip

References:

1. IIT Bombay, “EE351: Python Programming,” 2021

URL: [Link]

2. IIT Roorkee, “Python for Engineers,” NPTEL Course Reference, 2020

URL: [Link]

Chapter 3: File Handling & Data I/O

Teaching Hours: 2

Topics/Subtopics:

• File operations: open, read, write, close

• CSV and JSON file parsing

• Exception handling (try, except, finally)

• Working with libraries: pandas basics for tabular data

• Plotting with Matplotlib: line, scatter, bar plots

References:

1. NIT Warangal, “Fundamentals of Python Programming,” 2022


Document: PY-EE-2022-Syllabus

2. IIT Madras, “Python Data Analysis,” Internal Memo, 2021

Chapter 4: Scientific Computing Libraries

Teaching Hours: 3

Topics/Subtopics:

• NumPy arrays, vectorized operations, indexing

• Linear algebra with NumPy: matrix ops, eigenvalues

• Introduction to SciPy: signal processing (filter design), optimization

• Using Matplotlib for circuit waveform visualization

• Introduction to SymPy for symbolic math (circuit equations)

References:

1. IIT Guwahati, “Python Tools for Engineers,” 2023

URL: [Link]

2. NIT Surathkal, “Electronics Simulation with Python,” 2021

Chapter 5: Domain‐Specific Applications in EE

Teaching Hours: 2

Topics/Subtopics:

• Script‐based circuit analysis: resistor networks, Thevenin equivalents

• Data acquisition via pySerial (UART) from microcontrollers

• Control system simulation: PID controller with SciPy

• Introduction to MQTT and basic IoT data publishing

• Automation of measurement logs and report generation

References:
1. IIT Hyderabad, “Python for Instrumentation & Control,” 2022

URL: [Link]

2. NIT Calicut, “Applications of Python in EE Labs,” 2020

Document: EE_Python_App_Syllabus

--------------------------------------------------------------------------------

Practical Exercises (12 Experiments)

1. Basic Python scripts: arithmetic operations, data‐type conversions

2. Implementing and visualizing for‐loop vs list comprehension timings

3. File handling: read/write CSV of measured voltage/current data

4. Plotting AC waveforms and FFT analysis using Matplotlib & NumPy

5. Matrix‐based resistor network solver (Kirchhoff’s laws) with NumPy

6. Symbolic derivation of circuit transfer function using SymPy

7. Design and apply digital Butterworth filter on noisy signal (SciPy)

8. Create and use user‐defined module for repetitive EE computations

9. Data logging from Arduino via pySerial, save to JSON/CSV

10. Simulate a PID control loop for DC motor speed control in SciPy

11. Build a simple MQTT publisher/subscriber for temperature sensor data

12. Automate generation of measurement report (PDF/Excel) using Python

Practical Schedule Alignment (Weeks 1–12)

• Weeks 1–2: Basics & scripts (Exp 1–2)

• Weeks 3–4: File I/O & plotting (Exp 3–4)

• Weeks 5–6: Numerical methods (Exp 5–6)

• Weeks 7–8: Signal processing (Exp 7–8)


• Weeks 9–10: Data acquisition & modules (Exp 9–10)

• Weeks 11–12: Control & IoT (Exp 11–12)

--------------------------------------------------------------------------------

Bibliography / Source List

1. IIT Kanpur – Python Programming for Engineers

[Link]

2. NIT Trichy – PYT1001 Python for Technical Computing

[Link]

3. IIT Bombay – EE351: Python Programming

[Link]

4. IIT Roorkee – Python for Engineers (NPTEL)

[Link]

5. NIT Warangal – Fundamentals of Python Programming (PY-EE-2022-Syllabus)

6. IIT Madras – Python Data Analysis Internal Memo

7. IIT Guwahati – Python Tools for Engineers

[Link]

8. NIT Surathkal – Electronics Simulation with Python

9. IIT Hyderabad – Python for Instrumentation & Control

[Link]

10. NIT Calicut – Applications of Python in EE Labs (EE_Python_App_Syllabus)

PY25107ES205B: Python Programming for Electrical Engineering Engineering Science Course 1L - 0T - 2P


3 Credits
Teaching Scheme Examination Scheme Lectures: 1 hr/week CA: 20 Marks Practical: 2 hrs/week MSE: 20
Marks ESE (Theory): 30 Marks Practical/Viva: 30 Marks

Prerequisites: Basic understanding of electrical circuit theory, differential equations, and computer
fundamentals.

Course Objectives: 1. To understand Python programming concepts specifically applied to electrical


engineering problems. 2. To analyze electrical circuits and signals using numerical computing libraries. 3.
To develop scripts for simulation, data analysis, automation of electrical systems, and IoT interfacing.

Course Outcomes: CO1 Solve electrical engineering problems using Python programming constructs and
numerical methods. CO2 Analyze circuit data, waveforms, and signals using data visualization and
processing libraries. CO3 Develop simulation scripts for electrical machines, control systems, and IoT
interfaces.

CO - PO Mapping Course Outcomes Program Outcomes PO1 PO2 PO3 PO4 PO5 PO6 PO7 PO8 PO9 PO10
PO11 CO1 3 2 1 2 1 CO2 2 3 2 3 1 2 1 CO3 2 1 2 3 1 1 2 2

(Level of Correlation: 1-Slightly, 2-Moderately, 3-Strongly)

Unit No. Course Contents Hrs 1 Python Fundamentals for Electrical Engineering Introduction to Python:
Variables, Data types (int, float, complex for phasors), Operators. Control Flow: If-else, Loops (for and
while) for iterating through voltage/current data. Functions: Reusable code for circuit calculations. Lists,
Tuples, and Dictionaries: Storing network parameters. Introduction to Jupyter Notebook and Anaconda
distribution. Reference: IIT Madras - Python for Scientific Computing 03 2 Numerical Computing & Circuit
Analysis NumPy Library: Arrays, Matrix operations (solving linear equations for Mesh/Nodal analysis).
SciPy Library: Constants, Integration, Differential equations (solving transient responses). Symbolic
Mathematics (SymPy): Deriving transfer functions and circuit equations symbolically. Solving
simultaneous linear equations (Application: DC Circuit Analysis using Kirchhoff’s laws). Reference: IIT
Delhi - Electrical Engineering Computing & Python 03 3 Data Visualization & Signal Processing Matplotlib:
Plotting waveforms (Voltage/Current vs Time), Bode plots, Polar plots for Phasors. Pandas: Importing
data from CSV/Excel (e.g., load scheduling data), Data cleaning and manipulation. Introduction to Signal
Processing: Generating Sine, Square, Triangular waves; Fourier series visualization using Python.
Reference: NIT Trichy - Data Analysis for Engineers 02 4 Simulation of Electrical Machines & Control
Systems Python Control Systems Library (python-control): Modeling transfer functions of DC Motors,
Step response, Impulse response, Stability analysis. SimPy: Basic discrete-event simulation for power
system reliability. Introduction to Electrical Simulation in Python: Comparing Python scripts with
MATLAB/Simulink environments. Solving magnetic circuit problems and transformer equations
programmatically. Reference: IIT Kharagpur - Python for Engineers 02 5 Automation, IoT & Industrial
Applications File Handling: Reading/Writing log files from energy meters. Interfacing with Hardware:
Introduction to pySerial for communicating with Arduino/Raspberry Pi (Smart Grid/IoT context). Web
Scraping: Fetching real-time electricity prices or weather data for load forecasting. Introduction to GUI
(Tkinter/Streamlit): Creating a basic dashboard for monitoring electrical parameters. Reference: VIT (RIT
Category) - Industrial Python Applications 02
References: Text Books: Sr. No. Name/s of Author/s Title of Book Publisher Edition/Year 1 Saha, Supta
Python for Electrical and Electronics Engineers Cambridge University Press 2023 2 Jaeger, Tristan
Scientific Computing with Python 3 Packt Publishing 2019 3 Eric Matthes Python Crash Course: A Hands-
On No Starch Press 2019

Reference Books & Online Resources: Sr. No. Name/s of Author/s Title of Book/Resource
Publisher/Source Link 1 Dr. B. R. Gupta Python Programming with Problem Solving University Science
Press 2 Scipy Lecture Notes Introduction to Python for Science/Engineering [Link] [Link]
[Link]/ 3 NPTEL Python for Electrical Engineers IIT Kharagpur/Madras
[Link]

Software & Tools Required:

1. Python Distribution: Anaconda (Includes Python, NumPy, SciPy, Matplotlib, Pandas).

2. IDE: Spyder, Jupyter Notebook, or VS Code.

3. Libraries: python-control (for control systems), PySpice (for circuit simulation), Tkinter (for GUI).

4. Hardware Interface (Optional): Arduino IDE + PySerial.

List of Practical Exercises (12 Experiments)

Distribution: 1 Experiment per week for 12 weeks.

1. Basic Electrical Calculations: Write a program to calculate Resistance, Current, and Voltage using
Ohm’s Law. Create a user-defined function to calculate Power and Energy consumed.

2. Temperature Coefficient of Resistance: Given the resistance of a copper conductor at 20°C, write
a script to calculate its resistance at a new temperature using the formula

Rt=R0(1+αt)

3. Series and Parallel Circuit Solver: Develop a Python script that takes resistor values as input and
calculates the total equivalent resistance for Series and Parallel configurations automatically.

4. DC Circuit Analysis (Nodal Analysis): Use NumPy to solve a system of linear equations (Matrix
form

Ax=B

) to find node voltages in a DC resistive network.


5. Waveform Generation and Analysis: Generate Sine, Square, and Sawtooth waves using NumPy.
Plot them using Matplotlib. Calculate and display the Peak, RMS, and Average values
programmatically.

6. Phasor Diagrams: Visualize AC circuit quantities (Voltage, Current, Impedance) as Phasors using
a Polar plot in Matplotlib. Demonstrate the phase difference between Inductive and Capacitive
loads.

7. Transformer Efficiency Calculation: Write a program that takes Iron losses, Copper losses, and
load KVA as input to calculate the efficiency of a transformer at various load factors (0.25, 0.5,
0.75, 1.0) and plot the Efficiency vs. Load curve.

8. DC Motor Characteristics: Simulate the Speed-Torque characteristics of a DC Shunt Motor. Use


Matplotlib to plot the curve based on the equation

N∝(V−IaRa)/Φ

9. Fourier Series Visualization: Write a script to generate a Square wave by summing the first

odd harmonics of a sine wave. Visualize how the waveform approaches a perfect square wave as

increases.

10. Control System Step Response: Use the python-control library to define a second-order transfer
function (e.g., a servo motor system). Plot the Unit Step Response and mark the Rise Time, Peak
Overshoot, and Settling Time.

11. Data Analysis of Load Profiles: Import a CSV file containing hourly power consumption data
(simulated). Use Pandas to calculate the maximum demand, load factor, and average daily
consumption.

12. GUI for Electrical Calculator: Create a simple Graphical User Interface (GUI) using Tkinter that
allows the user to select "Star to Delta Conversion" or "Delta to Star Conversion," input
impedance values, and display the result.

Bibliography / Source Syllabi Used for Reference

To create this industry-aligned and academically rigorous syllabus, the following syllabi from top
institutions were scanned and referenced:
1. IIT Madras (BSH410) - Python for Scientific Computing

o Focus: Numerical methods, SciPy, and array manipulation for engineering.

o Source Link: IIT Madras Curriculum

2. IIT Delhi (ELL401) - Computational Laboratory in Electrical Engineering

o Focus: Application of Python in signals, systems, and control.

o Source Link: IIT Delhi EE Dept

3. NIT Trichy (CS205) - Programming and Data Structures for Electrical Engineers

o Focus: Problem-solving approach tailored for circuit theory.

o Source Link: NIT Trichy Syllabus

4. NIT Warangal (EE301) - Electrical Machine Simulation

o Focus: Coding concepts applied to machine characteristics.

o Source Link: NIT Warangal Academics

5. Vellore Institute of Technology (VIT) - (CSE1005) - Python Programming

o Focus (RIT/Private College Standard): Practical libraries like Pandas and Matplotlib for
data visualization.

o Source Link: VIT Academics

6. Anna University Affiliated Colleges (GE8151) - Problem Solving and Python Programming

o Focus (Govt College Standard): Fundamentals of Python with engineering applications.

o Source Link: Anna University Syllabus

7. IIT Kharagpur (EE60046) - Python for Machine Learning and Signal Processing

o Focus: Advanced signal processing and automation.

o Source Link: IIT KGP

Unit 1: Foundations of Computational Electrical Logic

Teaching Hours: 02
 Concepts: Python environment setup (Anaconda/Jupyter); Variables as physical quantities;
Numeric types (Int, Float) and Complex numbers for AC impedance ($Z = R + jX$); Basic I/O for
engineering prompts.

 EE Application: Modeling Ohmic relationships and power calculations ($P = V \times I$).

 References: IIT Bombay (Python for Scientific Computing) ; NIT Warangal (CSE Short Term
Course).

Unit 2: Control Structures for System Automation

Teaching Hours: 02

 Concepts: Conditional logic (if-elif-else) for safety interlocks; Iterative structures (for, while) for
parameter sweeps; Loop control (break, continue) in real-time monitoring.

 EE Application: Automated fault detection (Over-voltage/Under-frequency) and generating


Power Factor tables.

 References: NIT Surathkal (CS100 Course Plan) ; IIT Kanpur (Programming in Python).

Unit 3: Collections and Modular Electrical Functions

Teaching Hours: 02

 Concepts: Lists and Tuples for sensor logs; Dictionaries for component mapping (Resistor color
codes); User-defined functions for electrical laws; Scoping and standard libraries (Math).

 EE Application: Mapping node-to-transformer data and modularizing Star-Delta conversion


formulas.

 References: IIT Madras (Programming in Python) ; NIT Trichy (CSIR11 Framework).

Unit 4: Scientific Computing and Matrix Circuit Analysis

Teaching Hours: 03

 Concepts: NumPy arrays vs. Python lists; Vectorized operations; Solving systems of linear
equations ($Ax = B$); Numerical integration and differentiation for transients.

 EE Application: Solving multi-loop Mesh and Nodal equations; RMS and Average value
calculations from discrete samples.

 References: IIT Delhi (AI/ML Fundamentals) ; NIT Warangal (Scientific Computations).

Unit 5: Data Visualization and System Interfacing

Teaching Hours: 03
 Concepts: Matplotlib for line plots and subplots; Styling (labels, grids, legends); Introduction to
GUI development with Tkinter; Basic File I/O for CSV data.

 EE Application: Plotting Sinusoidal waveforms, Phasor diagrams, and creating an interactive


Transformer efficiency calculator.

 References: IIT Guwahati (Python for Engineering) ; NIT Warangal (Advanced Python
Programming).

Practical List (2 Hours/Week | 12 Experiments)

The following 12 experiments are designed to be completed one per week, following the 2-hour
practical scheme.

1. Exp 1: Introduction to Python IDE and basic I/O: Develop a program to calculate energy
consumption (kWh) based on appliance power and usage time.

2. Exp 2: Complex numbers in AC: Develop a program to calculate magnitude and phase angle for a
given impedance ($Z = R + jX$).

3. Exp 3: Decision Making: Implement a "Safe Voltage Monitor" that checks user input and
classifies it as ELV (Extra-Low), LV, or HV.

4. Exp 4: Loops and Sweeps: Generate a frequency response table for a series RC circuit as
frequency varies from 10Hz to 10kHz.

5. Exp 5: Dictionaries and Mapping: Create a Resistor Color Code lookup tool that returns
resistance values based on color band inputs.

6. Exp 6: Functions and Modules: Design a custom module ee_utils.py containing functions for
Series and Parallel equivalent resistance.

7. Exp 7: Sensor Data Handling: Read a .txt or .csv file containing time-stamped current readings
and find the peak and average current.

8. Exp 8: NumPy Circuit Solver: Use [Link] to solve a 3-loop bridge circuit using Mesh
analysis.

9. Exp 9: Waveform Synthesis: Use NumPy to generate and store data for a 50Hz sine wave with
10% third-harmonic distortion.

10. Exp 10: Visualization: Plot the voltage and current waveforms of an inductive load and visually
demonstrate the phase lag.
11. Exp 11: Power Triangle GUI: Create a Tkinter-based application that accepts P and Q to calculate
S and the Power Factor, displaying the Power Triangle.

12. Exp 12: Project-based Experiment: Develop a "Digital Waveform Analyzer" that reads a signal,
calculates its RMS value, and plots its frequency spectrum using FFT.

NIT Syllabus=

Syllabus:

Syntax: Data types; variables, assignments; immutable variables; numerical types; arithmetic operators

and expressions; comments; understanding error messages; Conditions, Boolean logic, logical operators;

ranges; Control statements: if-else, loops (for, while); short-circuit (lazy) evaluation.

Strings and text files; manipulating files and directories, OS and SYS modules; text files: reading/writing

text and numbers from/to a file; creating and reading a formatted file (csv). String manipulations:
subscript

operator, indexing, slicing a string; strings and number system: converting strings to numbers and vice

versa. Binary, octal, hexadecimal numbers.

Lists, tuples, and dictionaries; basic list operators, replacing, inserting, removing an element; searching
and

sorting lists; dictionary literals, adding and removing keys, accessing and replacing values; traversing

dictionaries.

Functions: create, call, arguments and return values, arbitrary arguments, keyword arguments, arbitrary

keyword arguments, default argument Recursive functions

Introduction to classes and OOPS.

Modules, Introduction to NumPy, SciPy, MatPlotLib, Pandas, Tensorflow.

File Handling – create and delete files, read and write into text and excel files.

Exception Handling, try-except, raising and exception, else and finally blocks, handling multiple
exceptions.

List of Experiments:

1. Programs using sequential constructs


2. Programs using selection constructs

3. Programs using Iterative constructs

4. Programs using nested for loops

5. Programs using lists, tuples and dictionaries

6. Simple Python functions

Department of Electrical Engineering

118 | P a g e

7. File Handling

8. Modules

9. Functions and Recursion

10. Exception Handling

Learning Resources:

Text Books:

1. Kenneth A. Lambert, Fundamentals of Python: First Programs, Cengage Learning, 2012.

2. Allen B. Downey, Think Python: How to Think like a Computer Scientist, Updated for Python 3,

O‘Reilly Media, Publishers, 2015, 2nd Edition.

Reference Books:

1. Guido van Rossum and Fred L. Drake Jr, An Introduction to Python – Revised and updated for

Python 3.2, Network Theory Ltd., 2011.

2. Reema Thareja, Python Programming using Problem Solving Approach, Oxford University Press,

2017.

3. John V Guttag, Introduction to Computation and Programming Using Python, Revised and

expanded Edition, MIT Press, 2013.

4. Mark Lutz, “Learn Python””, 5th Edition, O’reilly Media, Inc, June, 2013.

Other Suggested Readings:


1. https:/ /[Link]/courses/106106182/

2. https:/ /[Link]

3. [Link]

Python for Electrical Engineering (EE204PY)

[Link] Second Year | Engineering Science Course | 1L - 0T - 2P | 02 Credits

1. Course Title and Description

Course Title: Python for Electrical Engineering

Course Overview: This course bridges the gap between foundational electrical principles and modern
computational tools. It transitions students from general-purpose coding to domain-specific applications
including matrix-based circuit solvers, signal processing, control system simulation, and industrial
automation (PLC/SCADA interfacing). It is designed to serve as an open-source, high-performance
alternative to MATLAB in the EE workflow.

Prerequisites:

 Basic Electrical Engineering (Circuit Laws, AC Fundamentals).

 Engineering Mathematics (Linear Algebra and Differential Equations).

2. Program Alignment

Program Educational Objectives (PEOs)

 PEO 1: Graduates possess foundational knowledge in electrical principles and apply it to solve
practical engineering problems effectively.

 PEO 2: Graduates demonstrate professionalism and lifelong learning through proficiency in


modern software tools.

Program Specific Outcomes (PSOs)


 PSO 1: Apply knowledge of electrical fundamentals and control engineering to industrial
systems.

 PSO 2: Solve problems in power systems and industrial drives using research-based computing.

Program Outcomes (POs) Mapping

 PO1 (Engineering Knowledge): High (3) - Applying computing to complex electrical problems.

 PO5 (Modern Tool Usage): High (3) - Mastering Python, NumPy, and SciPy for engineering.

 PO2 (Problem Analysis): Medium (2) - Analyzing circuit data and system stability.

3. Weekly Schedule (16-Week Semester)

Structure: 1 Hour Lecture + 2 Hours Practical per week.

Week Lecture Topic (1 Hr) Practical Exercise (2 Hrs)

Python vs. MATLAB: Environment Setup


1 Exp 1: Introduction to IDE and EE Unit Conversions
(Anaconda)

Numeric Data: Modeling $Z = R + jX$ for AC Exp 2: Complex Impedance & Phase Angle
2
Circuits Calculator

Control Flow: If-else for Protective Safety


3 Exp 3: Voltage Band & Fault Classifier
Interlocks

4 Loops: Iterative Parameter Sweeps & Logic Exp 4: Frequency Response Table for RC Circuits

5 NumPy I: Array Operations for Nodal Analysis Exp 5: DC Circuit Matrix Solver (Nodal/Mesh)

NumPy II: Linear Algebra ($Ax = B$) for


6 Exp 6: Bridge Circuit Solution using linalg
Networks

Matplotlib: Visualizing AC Waveforms &


7 Exp 7: Phasor & Power Triangle Visualization
Phasors

Mid-Term Assessment (Logic & Numerical


8 Lab Mid-Sem Test
Solving)

SciPy I: Numerical Integration for RMS


9 Exp 8: RMS & Average Value Calculator for Signals
Calculation

10 SciPy II: ODE Solving for RLC Transients Exp 9: Python Simulation of RLC Transient
Week Lecture Topic (1 Hr) Practical Exercise (2 Hrs)

Response

Control Systems: Transfer Functions & Step


11 Exp 10: PID Controller Step Response Simulation
Response

Exp 11: Harmonic Spectrum Analysis of Distorted


12 Signal Processing: FFT for Harmonic Analysis
Waves

13 Pandas: SCADA Data Analysis & Time-Series Exp 12: Load Profile Analysis from CSV Logs

Industrial Automation: PLC Interfacing


14 Project Phase: Setting up Modbus Communication
(Modbus)

GUI Development: EE Tool Dashboards


15 Project Phase: Building an Electrical Calculator GUI
(Tkinter)

16 Course Review & Final Assessment End-Semester Practical Examination

4. Chapter Breakdown (5 Units)

Unit 1: Python Basics & Scientific Libraries (3 Hrs)

 Subtopics: Anaconda/Jupyter setup; Python REPL vs. Script mode; Variables as physical
quantities; Complex numbers in AC impedance; Operators for power calculations ($P = V \times
I$); Introduction to NumPy arrays vs. Lists.

 EE Application: Modeling Ohmic relationships and automating basic power dissipation reports.

Unit 2: Numerical Methods & Circuit Analysis (3 Hrs)

 Subtopics: Matrix operations in NumPy; Solving systems of linear equations for 3-mesh/node
circuits; Inverse and determinant applications; SciPy constants; Introduction to numerical
differentiation for capacitor/inductor energy.

 EE Application: Multi-loop bridge circuit solvers and battery discharge modeling.

Unit 3: Control Systems and Signal Processing (2 Hrs)

 Subtopics: The python-control library; Modeling transfer functions; Stability analysis (Bode
plots, Root Locus); Signal synthesis; Fast Fourier Transform (FFT) for power quality.

 EE Application: Motor speed control loop simulation and Total Harmonic Distortion (THD)
calculation.
Unit 4: Data Analysis & Industrial Data Processing (2 Hrs)

 Subtopics: Pandas DataFrames; Reading CSV/Excel SCADA logs; Data cleaning; Time-series
analysis for load forecasting; Introduction to industrial protocols (Modbus/MQTT) using
PyModbus.

 EE Application: Smart meter data visualization and real-time sensor logging for substation
monitoring.

Unit 5: Simulation & Projects in Electrical Engineering (2 Hrs)

 Subtopics: Simulation paradigms (Python vs. MATLAB/Simulink); Creating Graphical User


Interfaces (GUIs) with Tkinter; Error handling in automation scripts; Capstone project logic.

 EE Application: Developing a standalone transformer efficiency analyzer or a digital waveform


monitoring tool.

5. Detailed Practical List (12 Items)

1. Programmable Ohm’s Law Solver: Calculate V, I, or R given any two; handle unit prefixes ($mA,
k\Omega, MV$).

2. AC Impedance Solver: Utilize complex types to calculate magnitude and phase angle for series
and parallel RLC networks.

3. Voltage Band Classifier: Implement if-elif-else to categorize input voltage as ELV, LV, MV, or HV
per safety standards.

4. Frequency Sweep Table: Use a for loop to generate a frequency vs. Reactance ($X_L, X_C$)
table for a resonant circuit.

5. DC Nodal Analysis Solver: Use NumPy to solve a 3-node resistive network using matrix inversion
$[V] = [G]^{-1}[I]$.

6. Phasor Visualizer: Develop a Matplotlib-based script to plot voltage and current phasors on a
polar axis.

7. RMS & Average Calculator: Implement numerical integration over a 50Hz sine cycle to find
exact RMS and Average values.

8. RLC Transient Simulator: Use SciPy's odeint to solve and plot the charging/discharging
characteristics of a capacitor.

9. Control Loop Response: Plot the unit step response of a DC motor transfer function and find
settling time.
10. Harmonic Spectrum Tool: Apply FFT to a square wave to identify the magnitude of odd
harmonics and visualize the spectrum.

11. SCADA Log Processor: Use Pandas to import hourly power data, identify peak demand, and
calculate the system Load Factor.

12. Transformer Performance GUI: Build a Tkinter application to calculate transformer efficiency
and regulation based on OC/SC test inputs.

6. Assessment Plan

 Continuous Assessment (20%): Weekly lab journals and coding efficiency.

 Mid-Semester Exam (20%): Practical coding test on circuit solvers and NumPy (Units 1-2).

 Capstone Project (30%): A functional simulation script or industrial dashboard (e.g., Load Flow
solver or Modbus GUI).

 End-Semester Theory/Practical (30%): Comprehensive evaluation of scientific library usage and


signal analysis.

7. Reference Syllabi / Links

1. IIT Bombay: EE351: Python Programming & Scientific Computing MOOC. Link

2. NIT Warangal: EE203 Python Programming / Advanced Python STC. Link

3. IIT Madras: Python for Scientific Computing (BSH410). Link

4. IIT Delhi: ELL401 Computational Lab / ELL225 Control Engineering. Link

5. NIT Trichy: [Link] EEE Curriculum 2024 (CSIR11 Framework). Link

You might also like