𝗫𝗶𝗟𝗶𝗥 𝗧𝗲𝗰𝗵𝗻𝗼𝗹𝗼𝗴𝗶𝗲𝘀™ is India’s 🔖Top rated & Leading R&D Company. It's an ISO 9001:2008 Certified Company & Govt Approved under MCA & it was Established in 2013.
👨🏻🎓 For Science/ Engineering Students
𝗣𝗵.𝗗. | 𝗠.𝗧𝗲𝗰𝗵 | 𝗕.𝗧𝗲𝗰𝗵 | 𝗦𝗰𝗶𝗲𝗻𝗰𝗲 | 𝗛𝗼𝗯𝗯𝘆𝗶𝘀𝘁
All Branches of Projects Available - CSE, IT, ECE, EE, ME, Civil, Bio, Aerospace, Medical, etc. Students can build their own projects in our lab in one-day training with our experts.
@@XiLiRTechnologies Is it? Please make a prototype with an RC car that can still drive and then show us the stats with charging speed that could be interesting
you'll need a few components: Arduino Board (e.g., Arduino Uno) RFID Reader Module (e.g., RC522) RFID Tags/Cards 16x2 LCD Display Jumper Wires Breadboard (optional, for connections) Required Libraries Before starting with the code, you need to install the following libraries in the Arduino IDE: MFRC522 - for interfacing with the RFID reader. LiquidCrystal - for the LCD display. You can install these libraries via the Arduino Library Manager: Go to Sketch -> Include Library -> Manage Libraries. Search for "MFRC522" and "LiquidCrystal", then install them. Wiring RFID Reader to Arduino: SDA to Pin 10 SCK to Pin 13 MOSI to Pin 11 MISO to Pin 12 RST to Pin 9 GND to GND VCC to 5V LCD to Arduino: VSS to GND VDD to 5V VO to a potentiometer (for contrast control) RS to Pin 7 RW to GND E to Pin 6 D0-D3 to GND (not used) D4 to Pin 5 D5 to Pin 4 D6 to Pin 3 D7 to Pin 2 A to 5V (for backlight, if available) K to GND (for backlight, if available) Arduino Code Here’s a basic example code to get you started: cpp #include <Wire.h> #include <LiquidCrystal.h> #include <MFRC522.h> #define SS_PIN 10 #define RST_PIN 9 MFRC522 mfrc522(SS_PIN, RST_PIN); // Create MFRC522 instance LiquidCrystal lcd(7, 6, 5, 4, 3, 2); // Create LCD instance void setup() { // Initialize serial communications Serial.begin(9600); // Initialize the LCD lcd.begin(16, 2); lcd.print("Scan your RFID"); // Initialize the MFRC522 SPI.begin(); mfrc522.PCD_Init(); Serial.println("Scan a card"); } void loop() { // Look for new cards if (!mfrc522.PICC_IsNewCardPresent()) { return; } // Select one of the cards if (!mfrc522.PICC_ReadCardSerial()) { return; } // Print UID to serial monitor Serial.print("UID:"); for (byte i = 0; i < mfrc522.uid.size; i++) { Serial.print(mfrc522.uid.uidByte[i] < 0x10 ? " 0" : " "); Serial.print(mfrc522.uid.uidByte[i], HEX); } Serial.println(); // Display UID on LCD lcd.clear(); lcd.print("UID: "); for (byte i = 0; i < mfrc522.uid.size; i++) { lcd.print(mfrc522.uid.uidByte[i] < 0x10 ? "0" : ""); lcd.print(mfrc522.uid.uidByte[i], HEX); } // Optional: Add a small delay delay(2000); } Explanation Initialization: The setup() function initializes the LCD and RFID reader. The RFID reader is set up to use SPI communication. Card Detection: The loop() function continuously checks for RFID cards. If a card is detected, its UID is read and printed to the serial monitor and displayed on the LCD. Notes Ensure you have the correct library versions. The RFID UID printed on the serial monitor is in hexadecimal format. Adjust the code and wiring according to your specific hardware setup if necessary. Feel free to customize the code according to your project requirements!
@@XiLiRTechnologies i have never seen anything like this before, I want to use it in my final year project.. where can I buy it from?..give me the link
Circuit Connections: Flame Sensor: VCC to 5V on Arduino GND to GND on Arduino A0 (Analog Output) or D0 (Digital Output) to A0 or any digital pin on Arduino (e.g., D2) ESP8266: VCC to 3.3V on Arduino GND to GND on Arduino RX to TX on Arduino (use a voltage divider to drop 5V to 3.3V) TX to RX on Arduino CH_PD to 3.3V on Arduino Buzzer (Optional): Positive leg to any digital pin (e.g., D3) on Arduino Negative leg to GND LED (Optional): Positive leg (longer) to any digital pin (e.g., D4) on Arduino with a 220-ohm resistor Negative leg to GND Arduino Code: cpp #include <SoftwareSerial.h> SoftwareSerial esp8266(2, 3); // RX and TX pins for ESP8266 const int flameSensorPin = A0; // Analog pin for flame sensor const int buzzerPin = 4; // Digital pin for buzzer const int ledPin = 5; // Digital pin for LED void setup() { Serial.begin(9600); esp8266.begin(115200); // Set ESP8266 baud rate to 115200 pinMode(flameSensorPin, INPUT); pinMode(buzzerPin, OUTPUT); pinMode(ledPin, OUTPUT); // Initialize ESP8266 sendCommand("AT", 1000, "OK"); sendCommand("AT+CWMODE=1", 1000, "OK"); sendCommand("AT+CWJAP=\"Your_SSID\",\"Your_PASSWORD\"", 5000, "OK"); Serial.println("Setup complete."); } void loop() { int flameValue = analogRead(flameSensorPin); if (flameValue < 300) { // Adjust threshold based on your flame sensor digitalWrite(buzzerPin, HIGH); digitalWrite(ledPin, HIGH); // Send alert sendData("Flame Detected!"); Serial.println("Flame detected, alert sent."); } else { digitalWrite(buzzerPin, LOW); digitalWrite(ledPin, LOW); } delay(1000); } void sendData(String message) { esp8266.println("AT+CIPMUX=1"); delay(1000); esp8266.println("AT+CIPSTART=0,\"TCP\",\"api.thingspeak.com\",80"); delay(2000); String cmd = "GET /update?api_key=YOUR_API_KEY&field1=" + message + " "; esp8266.print("AT+CIPSEND=0,"); esp8266.println(cmd.length()); delay(1000); esp8266.print(cmd); delay(1000); esp8266.println("AT+CIPCLOSE=0"); delay(1000); } void sendCommand(String command, int maxTime, char readReplay[]) { int countTimeCommand = 0; while (countTimeCommand < (maxTime * 1)) { esp8266.println(command); if (esp8266.find(readReplay)) { break; } countTimeCommand++; } delay(50); }
Hello, Yes sure you can order from xilirprojects.com rightnow upgraded one u will get with voltmeter on car , see shorts in description. You will get code, training, reports , circuits, block diagram, ppt etc
Arduino Code: cpp #include <Wire.h> #include <LiquidCrystal_I2C.h> #include "MAX30100_PulseOximeter.h" #define REPORTING_PERIOD_MS 1000 // Report every 1 second PulseOximeter pox; LiquidCrystal_I2C lcd(0x27, 16, 2); // Change 0x27 if your I2C address is different uint32_t tsLastReport = 0; void onBeatDetected() { Serial.println("Beat detected!"); } void setup() { Serial.begin(115200); // Initialize the LCD lcd.init(); lcd.backlight(); lcd.setCursor(0, 0); lcd.print("Heart Rate & SpO2"); // Initialize the PulseOximeter instance Serial.print("Initializing pulse oximeter.."); if (!pox.begin()) { Serial.println("FAILED"); lcd.setCursor(0, 1); lcd.print("Sensor Failed"); for(;;); // Stay in this loop forever if sensor fails } else { Serial.println("SUCCESS"); lcd.setCursor(0, 1); lcd.print("Initializing..."); } // Register a callback for the beat detection pox.setOnBeatDetectedCallback(onBeatDetected); } void loop() { // Make sure to call update as fast as possible pox.update(); // Report values every REPORTING_PERIOD_MS milliseconds if (millis() - tsLastReport > REPORTING_PERIOD_MS) { tsLastReport = millis(); // Get the heart rate and SpO2 values float heartRate = pox.getHeartRate(); float SpO2 = pox.getSpO2(); // Display on Serial Monitor Serial.print("Heart rate:"); Serial.print(heartRate); Serial.print(" bpm / SpO2:"); Serial.print(SpO2); Serial.println(" %"); // Display on LCD lcd.clear(); lcd.setCursor(0, 0); lcd.print("Heart Rate:"); lcd.setCursor(11, 0); lcd.print(heartRate); lcd.setCursor(0, 1); lcd.print("SpO2:"); lcd.setCursor(6, 1); lcd.print(SpO2); lcd.print("%"); } } Explanation: PulseOximeter pox: Manages the communication with the MAX30100 sensor. LiquidCrystal_I2C lcd: Manages the I2C 16x2 LCD display. The program reads heart rate and SpO2 from the MAX30100 sensor and displays the values on both the serial monitor and the LCD every second. Connections: MAX30100 to Arduino: VIN -> 3.3V GND -> GND SCL -> A5 (SCL) SDA -> A4 (SDA) 16x2 I2C LCD to Arduino: VCC -> 5V GND -> GND SCL -> A5 (SCL) SDA -> A4 (SDA) This setup will show live updates of heart rate and SpO2 on the LCD screen and serial monitor.
To create a drowsiness detection system using a Raspberry Pi and GSM module, you can use a camera module (such as the Pi Camera) to detect drowsiness (by monitoring eye closure) and a GSM module (e.g., SIM800L) to send an alert SMS if drowsiness is detected. ### Components: - Raspberry Pi (e.g., Raspberry Pi 3/4) - Pi Camera Module or USB webcam - GSM Module (e.g., SIM800L or SIM900A) - Jumper wires ### Libraries: - **OpenCV**: To detect drowsiness by monitoring eye closure. - **dlib**: For facial landmarks detection. - **serial**: To communicate with the GSM module. - **time**: For managing time intervals. ### Step-by-Step Setup: 1. **Install Required Libraries on Raspberry Pi**: - Install OpenCV: ```bash sudo apt-get update sudo apt-get install python3-opencv ``` - Install dlib: ```bash sudo apt-get install cmake sudo apt-get install python3-dev sudo apt-get install python3-pip sudo pip3 install dlib ``` - Install `imutils` for easier image manipulation: ```bash pip3 install imutils ``` 2. **Connect the GSM Module**: - **SIM800L to Raspberry Pi**: - VCC -> 5V - GND -> GND - TX -> GPIO 15 (RXD) - RX -> GPIO 14 (TXD) - Enable serial on Raspberry Pi by using `raspi-config`: ```bash sudo raspi-config ``` Then enable the serial interface under the "Interfacing Options". ### Python Code for Drowsiness Detection with SMS Alert: ```python import cv2 import dlib import serial import time from imutils import face_utils from scipy.spatial import distance as dist # Thresholds for drowsiness detection EYE_AR_THRESH = 0.25 EYE_AR_CONSEC_FRAMES = 48 # Initialize GSM module connection (adjust port if needed) gsm = serial.Serial("/dev/ttyS0", baudrate=9600, timeout=1) # Initialize dlib face detector and facial landmark predictor detector = dlib.get_frontal_face_detector() predictor = dlib.shape_predictor("shape_predictor_68_face_landmarks.dat") (lStart, lEnd) = face_utils.FACIAL_LANDMARKS_IDXS["left_eye"] (rStart, rEnd) = face_utils.FACIAL_LANDMARKS_IDXS["right_eye"] # Initialize variables eye_counter = 0 sms_sent = False # Function to calculate the eye aspect ratio (EAR) def eye_aspect_ratio(eye): A = dist.euclidean(eye[1], eye[5]) B = dist.euclidean(eye[2], eye[4]) C = dist.euclidean(eye[0], eye[3]) ear = (A + B) / (2.0 * C) return ear # Function to send SMS using the GSM module def send_sms(phone_number, message): gsm.write(b'AT+CMGF=1 ') # Set text mode time.sleep(1) gsm.write(b'AT+CMGS="' + phone_number.encode() + b'" ') time.sleep(1) gsm.write(message.encode() + b" ") time.sleep(1) gsm.write(b'\x1A') # End of message time.sleep(3) # Start video stream cap = cv2.VideoCapture(0) while True: ret, frame = cap.read() gray = cv2.cvtColor(frame, cv2.COLOR_BGR2GRAY) # Detect faces in the frame faces = detector(gray) for face in faces: # Predict facial landmarks shape = predictor(gray, face) shape = face_utils.shape_to_np(shape) # Extract the left and right eye coordinates leftEye = shape[lStart:lEnd] rightEye = shape[rStart:rEnd] # Calculate the EAR for both eyes leftEAR = eye_aspect_ratio(leftEye) rightEAR = eye_aspect_ratio(rightEye) ear = (leftEAR + rightEAR) / 2.0 # Visualize the eyes with polygons on the video feed leftEyeHull = cv2.convexHull(leftEye) rightEyeHull = cv2.convexHull(rightEye) cv2.drawContours(frame, [leftEyeHull], -1, (0, 255, 0), 1) cv2.drawContours(frame, [rightEyeHull], -1, (0, 255, 0), 1) # Check if the EAR is below the threshold for drowsiness if ear < EYE_AR_THRESH: eye_counter += 1 else: eye_counter = 0 sms_sent = False # If drowsiness is detected for a sustained period, send an SMS if eye_counter >= EYE_AR_CONSEC_FRAMES and not sms_sent: cv2.putText(frame, "DROWSINESS ALERT!", (10, 30), cv2.FONT_HERSHEY_SIMPLEX, 0.7, (0, 0, 255), 2) print("Drowsiness detected. Sending SMS...") send_sms("+1234567890", "Drowsiness detected. Please take a break!") # Change to your phone number sms_sent = True # Show the video feed cv2.imshow("Frame", frame) # Exit on 'q' key press if cv2.waitKey(1) & 0xFF == ord('q'): break # Release the camera and close all windows cap.release() cv2.destroyAllWindows() ``` ### Explanation: - **Eye Aspect Ratio (EAR)**: Measures the distance between eye landmarks to determine if the eyes are closed. If the EAR falls below a threshold for a set number of frames, drowsiness is detected. - **SMS Alert**: Once drowsiness is detected, the Raspberry Pi sends an SMS alert using the GSM module. - **GSM Commands**: The GSM module is controlled via AT commands to send SMS. ### Connection of GSM Module: - **VCC** -> 5V - **GND** -> GND - **TX** -> GPIO 15 (RXD) - **RX** -> GPIO 14 (TXD) ### Notes: - You'll need the `shape_predictor_68_face_landmarks.dat` file for facial landmark detection, which you can download [here](dlib.net/files/shape_predictor_68_face_landmarks.dat.bz2). - Replace the phone number in the `send_sms` function with your own phone number. This project will detect drowsiness and send an SMS alert when drowsiness is detected.
Sir while implementing in real life adding checkponints every 1km could be more costlier, how we can get an exact location if the fault is detected more than 6 or 7 km. how we can get the exact location , by which process. can u explain please? it's our viva question in the presentation .
Honestly I am not convinced. There is no spike in electricity when loud noise is being produced. Do you have a version where batteries are not present?