cover photo

COURSEWORK

Tharun's EV-RE-001 course work. Lv 1

Tharun BAUTHORACTIVE
This Report is yet to be approved by a Coordinator.

Tharun's Level-0 Tasks Report Marvel

28 / 12 / 2024


MARVEL TASKS

API-MARVEL-Task-1

Project Overview

It is the project to create a dynamic web interface using an API. An API (Application Programming Interface) allows two software components to communicate using specific protocols and definitions. It typically works with a client-server model, where the client sends requests and the server provides responses. For this task, I created a weather app by using the OpenWeather API, along with HTML and JavaScript. The app fetches weather data from the API and displays it to the user based on their input, such as the city name. The development was guided by a tutorial video provided in the task. Weather App Image Source code of the web application-API-MARVEL-task-2 GitHub Repository

GitHub task-2

Github task from Marvel

GitHub is a platform that helps developers store, manage, and share their code. To complete this task, I learned how to use various GitHub actions. The goal was to fix an issue in the main file, and here's how I did it:

  1. Forked the repository to have my own copy.
  2. Created a new branch to work on the changes.
  3. Fixed the error by removing the ‘+1’ from the code.
  4. Committed the changes to save them.
  5. Finally, created a pull request to suggest my changes to the original repository. GitHub task 1 image Github task 2 image

TASK 3: Familiarize Yourself with the Ubuntu Command Line and Complete the Following Subtasks

I gained a better understanding of how the Ubuntu command line functions and completed the following tasks:

  • Created a folder named test using the command mkdir test
  • Navigated into the test folder using cd test
  • Created an empty file named blankfile.txt using touch blankfile.txt
  • Listed all the files in the folder with the ls command
  • Generated 2600 directories with specific naming conventions using the loop:
    for i in {1..1300}; do mkdir "M$i" "B$i"; done
  • Combined the contents of two text files and displayed them in the terminal using cat file1.txt file2.txt Ubuntu list image

Codes for the task-Ubuntutask-Marvel-github Repository

TASK 4: Working with Pandas and Matplotlib

Pandas is a powerful Python library primarily used for data manipulation and analysis. It provides data structures like DataFrames and Series, which allow for easy handling and transformation of data. With its extensive functionality, Pandas makes it simple to clean, filter, and process datasets, making it a popular choice for data scientists and analysts.

Matplotlib, on the other hand, is a low-level plotting library in Python, mainly used for creating static, animated, and interactive visualizations. It serves as an essential tool for data visualization, allowing users to generate a wide variety of plots such as line graphs, bar charts, scatter plots, and more. As part of this task, I worked with a randomly generated dataset and used both Pandas and Matplotlib to create various types of plots. Specifically, I:

  • Used Pandas to load and manipulate the dataset.
  • Used Matplotlib to visualize the data by plotting a line graph, bar graph, and scatter plot. These visualizations help in understanding trends, distributions, and relationships within the data. By using Pandas for data manipulation and Matplotlib for plotting, I gained valuable experience in analyzing and visualizing datasets efficiently. image for the task image of task 2 image of task 3 image of task 3

Source Code of this task--Code for pandas task in Github

TASK 5: Create a Portfolio Webpage

In this task, I gained hands-on experience in building a portfolio webpage using HTML and CSS. I learned how to structure a webpage with HTML by creating various elements such as headers, paragraphs, images, and links. I then applied CSS to style the webpage, making it visually appealing and aligning the content according to design principles.

By the end of the task, I created a fully functional and attractive portfolio that not only showcases my skills but also adapts seamlessly to different devices. Below is an image of my portfolio webpage, which demonstrates the web development techniques I have learnt so far. image of this task 1 image22

source code--Github Repository--Webpage portfolio

TASK 6: Writing Resource Article Using Markdown

In this task, I learned how to use Markdown, a lightweight and easy-to-use markup language designed to format plain text. Markdown enables users to add formatting elements such as headings, lists, links, and more, without the need for a formal text editor or complex HTML tags.

I applied my knowledge of Markdown by writing a technical resource article about the FLOAT. In the article, I used various Markdown elements to structure the content, including headings for different sections, bullet points for key details, and links to external resources. This task helped me understand the power and simplicity of Markdown, especially when creating clean, readable, and well-organized documents without requiring specialized software. image of markdown 1 image markdown2 Source code of the report--GitHub Repository Markdownreport

TASK 7: Tinkercad

Tinkercad is an online, easy-to-use computer-aided design (CAD) tool that allows users to create, modify, and print 3D objects, design circuits, and even learn basic coding through a block-based interface. In this task, I learned the fundamentals of using Tinkercad, particularly how to add and connect components, wires, and simulate the functioning of circuits.

I applied this knowledge by designing a radar system. The system featured an Ultrasonic sensor that measures the distance between the sensor and any obstacle in its range. A servo motor was used to rotate the sensor, allowing it to scan a broader area and measure distances at different angles. This project helped me understand how to build simple interactive systems, simulate their behavior, and visualize the circuit's functionality. Below is the image of the Tinkercad simulation that shows the working model of the radar system I created. Link for the tinkercad task image of the task

TASK 8: LED Toggle Using ESP32

ESP32 is a versatile microcontroller that supports both Wi-Fi and Bluetooth connectivity, making it ideal for various IoT projects. In this task, I connected the ESP32, LED lights, and resistors on a breadboard to set up a simple circuit. The goal was to control the LED's state (on/off) remotely via a mobile device.

I copied a program and uploaded it to the ESP32 using the Arduino IDE. The code included my mobile hotspot details to enable the ESP32 to connect to the internet. Once the program was uploaded, the ESP32 displayed an IP address on the serial monitor. I then entered this IP address in the browser on my phone, which allowed me to remotely toggle the LED on and off. This task helped me understand how to interface the ESP32 with wireless networks and control hardware via a mobile device.

toggle task img-1 toggle task img2

Source code --Github Repository Ledtoggle Code

TASK 9: Soldering Prerequisites

Soldering is a fundamental skill in electronics, allowing for the connection of components by joining metal surfaces with a material called solder. It is both a mechanical and electrical connection, essential for creating durable, reliable circuits. The soldering iron provides the necessary heat to melt the solder, enabling it to flow into the joint between two workpieces.

In addition to the soldering process, wick (a pre-fluxed copper braid) is used to remove excess solder, while soldering flux is a chemical substance that prepares metal surfaces by cleaning them and removing any oxides and impurities, ensuring a strong bond.

For this task, I practiced soldering by connecting a resistor and an LED light to a perf board. I powered the circuit with a battery, successfully lighting the LED. I also learned the technique of desoldering, which involves removing solder from connections when needed to fix or modify circuits.

Soldering img1 Soldering img2

TASK 10: 555 Timer IC

The 555 Timer IC is a versatile and widely used integrated circuit in electronics, commonly employed in timer, delay, pulse generation, and oscillator applications. It can be configured in different modes, and for this task, I used the Astable mode, where the 555 Timer continuously oscillates between high and low states.

To design the circuit, I selected resistors in a 2:1 ratio and paired them with capacitors to achieve the desired frequency and duty cycle. The goal was to create a circuit with a duty cycle of 59.68%, which determines the proportion of time the output stays high compared to when it is low.

Once the circuit was set up, I used an oscilloscope to visualize the waveform produced by the 555 Timer. The displayed waveform confirmed the expected timing characteristics, showcasing the function of the IC in generating periodic pulses. Below is the circuit picture and the oscilloscope output. 555 timer pic-1 555 timer pic-2

TASK 11: K-Map & Deriving Logic Gates

Objective: The goal of this task was to determine the Karnaugh map (K-map) and design a Burglar Alarm system using basic logic gates. The alarm should trigger a buzzing sound when certain conditions are met, ensuring security when the door and key are in specific states.

Outcome and Learning: In this task, we defined two variables:

  • D (Door):
    • 1 denotes the door is open.
    • 0 denotes the door is closed.
  • K (Key):
    • 1 denotes the key is inserted.
    • 0 denotes the key is not inserted. Using these variables, we derived the logical expression for activating the alarm. The condition for the alarm to trigger was represented as A = D' + K', where the output A determines whether the alarm should be triggered. The K-map was used to simplify the logic, allowing the design of a simple circuit that buzzes when the conditions are satisfied. kmap pic1 kmap pic 2

TASK 12: Active Participation

I participated in the securathon event held in the college certificate

TASK 13: Datasheet Report Writing - MQ135 Gas Sensor

Objective: In this task, I learned how to create a datasheet report for an electronic component, specifically focusing on the MQ135 Gas Sensor. The MQ135 is a versatile sensor used for detecting gases like ammonia, carbon dioxide, benzene, and others. It is widely used in air quality monitoring applications.

Outcome and Learning: I researched and compiled essential details about the MQ135 Gas Sensor, including its specifications, features, and applications. The datasheet provided information such as the operating voltage, sensitivity, and response time of the sensor. It also highlighted the conditions for accurate detection, including optimal operating temperature and humidity levels.

In this report, I also explained how the sensor can be used in circuits and integrated into projects for monitoring environmental conditions. This task enhanced my understanding of sensor specifications and their real-world applications in electronic systems. images of the report--report report2

UVCE,
K. R Circle,
Bengaluru 01