
COURSEWORK
| Pratham Chougule | AUTHOR | ACTIVE |

15 / 3 / 2026
To understand the basic working of a 3D printer and the process of preparing a model for printing.
3D printing is a process of creating objects layer by layer using materials like PLA filament.
STL (Stereolithography) is a file format used for 3D models in printing. It contains the shape of the object.
The STL file is converted into G-code using slicing software like Ultimaker Cura or Creality Slicer. The G-code gives instructions to the printer.
Learned about STL files, slicing, and basic 3D printer settings, and prepared a model for printing under coordinator supervision.
An API (Application Programming Interface) allows different applications to communicate and share data with each other over the internet.
For this task, a Weather App was created using the OpenWeather API.
The app allows the user to enter a city name and it displays the current weather information such as temperature and weather condition.
This task helped to understand how APIs work and how real-time data can be fetched and displayed in a web application.

https://github.com/PrathamC0732/API-Weather-app.git
To learn GitHub workflows including GitHub Actions, Issues, and Pull Requests.
Forked the given repository to my GitHub account.
Cloned the repository to my local system.
Created a new issue in the Issues tab to report or discuss a task.
Edited the required file as mentioned in the README.
Pushed the changes to the GitHub repository.
Opened a Pull Request to submit the changes for review.
Observed the workflow in:
GitHub Actions automatically runs workflows for tasks like testing and building the project.
This task helped understand the GitHub workflow including Issues, Pull Requests, and GitHub Actions used for collaborative software development.

https://github.com/PrathamC0732/git-task.git
The goal of this task is to understand Linear Regression by implementing it from scratch using Python and comparing it with the scikit-learn implementation.
The California Housing dataset was used to train and test the model.
Linear Regression was implemented manually using Gradient Descent to minimize prediction error. Then the same dataset was trained using sklearn.linear_model.LinearRegression.
Both models were evaluated using:
A graph was also plotted showing the data points and the line of best fit.
The custom model worked correctly but the scikit-learn model performed slightly better because it uses optimized algorithms.
This task helped in understanding how Linear Regression and Gradient Descent work internally in machine learning.

To decode a scrambled matrix and reveal a hidden image using NumPy and visualize it with Matplotlib.
Python, NumPy, Matplotlib
Loaded the scrambled matrix, applied NumPy operations like reshaping and rearranging the values, and then displayed the matrix as an image using Matplotlib.
The scrambled data was successfully decoded and the hidden image was revealed.
This task helped in learning matrix manipulation using NumPy and visualizing data as images using Matplotlib.

To create a responsive personal portfolio website that showcases personal details, interests, projects, and social media profiles, and upload it to a Git repository.
A responsive portfolio website was successfully created and pushed to a GitHub repository.
This task helped in understanding web design, responsive layouts, and version control using Git and GitHub.

https://github.com/PrathamC0732/Pratham_portfolio.git
To simulate a circuit in Tinkercad using an ultrasonic sensor to measure distance and display it on the Serial Monitor, and create a simple radar system using a servo motor.
Tinkercad is an online tool used to design and simulate electronic circuits.
An ultrasonic sensor measures distance by sending sound waves and receiving the echo.
A servo motor rotates to specific angles.
In this project, the servo rotates the sensor to scan an area like a simple radar system.

https://github.com/PrathamC0732/-Arduino-code-for-ultrasonic-senser.git
To control the speed of a 5V BO DC motor using an Arduino UNO and L298N motor driver using PWM technique.
DC motor speed can be controlled by varying the voltage supplied to the motor. In Arduino, this is commonly done using PWM (Pulse Width Modulation). PWM changes the duty cycle of the signal, which effectively changes the average voltage supplied to the motor.
The L298N Motor Driver is used to control the motor because Arduino cannot directly supply enough current to drive a motor. The driver acts as an interface between the Arduino and the motor.

https://github.com/PrathamC0732/DC-Motor-arduino-Code.git
To learn the working of the ESP32 microcontroller and create a standalone web server that can control an LED connected to the ESP32 GPIOs using the Arduino IDE.
Install Arduino IDE (latest version)
Open Arduino IDE
→ Go to File > Preferences
Find Additional Board Manager URLs”
Go to Tools > Board > Boards Manager
Search ESP32
→ Click Install
After installing
→ Go to Tools > Board
→ Select ESP32 Dev Module

https://github.com/PrathamC0732/LED-Toggle-ardunio-code.git
To learn the basic soldering tools and perform simple soldering on a perf board.
Successfully soldered a simple LED circuit on a perf board under the supervision of a coordinator.

To design a 555 astable multivibrator with 60% duty cycle, build the circuit on a breadboard, and observe the output using a DSO.
A continuous square wave was observed on the DSO with approximately 60% duty cycle.
The 555 astable multivibrator circuit was successfully built and its output waveform was observed using the DSO.

Design a simple burglar alarm using logic gates and Karnaugh Map. The alarm should turn ON when the door is opened without pressing the key button.
| D | K | A |
|---|---|---|
| 0 | 0 | 0 |
| 0 | 1 | 0 |
| 1 | 0 | 1 |
| 1 | 1 | 0 |
| D\K | 0 | 1 |
|---|---|---|
| 0 | 0 | 0 |
| 1 | 1 | 0 |
Simplified Boolean Expression:
A = D · K'
Use:
When the door opens and the key is not pressed, the LED/Buzzer turns ON.
Karnaugh Map helps simplify the logic. The burglar alarm works using the expression A = D · K'.
.jpeg?raw=true)
.jpeg?raw=true)
.jpeg?raw=true)
.jpeg?raw=true)
The L293D is a motor driver IC used to control DC motors using microcontrollers. It allows control of motor direction and speed because microcontrollers cannot directly drive motors.
L293D is a 16-pin dual H-bridge IC that can control two DC motors.
The IC works using the H-bridge circuit, which allows the motor to rotate in forward and reverse directions by changing the input signals.
PWM (Pulse Width Modulation) is used to control motor speed. By changing the duty cycle of the signal applied to the enable pin, the motor speed can be increased or decreased.
L293D is commonly used in robotics and motor control circuits to control the direction and speed of DC motors using H-bridge and PWM techniques.