├── Antirape-watch.ino └── README.md /Antirape-watch.ino: -------------------------------------------------------------------------------- 1 | #include 2 | #include 3 | #include 4 | #include 5 | SoftwareSerial mySerial(12,13); 6 | LiquidCrystal lcd(9, 8, 5, 4, 3, 2); 7 | String textForSMS; 8 | RH_ASK driver; 9 | char i; 10 | int light = 6; 11 | char b; 12 | char msg; 13 | char call; 14 | 15 | String f1001 = "+9779811111111"; 16 | String f1002 = "+97798222222222"; //Registered Numbers 17 | String f1003 = "+97798333333333"; 18 | String f1004 = "+9779810366707"; 19 | String f1005 = "+9779817448555"; 20 | 21 | void setup() 22 | { 23 | pinMode(light , OUTPUT); 24 | 25 | lcd.begin(16, 2); 26 | Serial.begin(9600); 27 | mySerial.begin(9600); 28 | 29 | // original 19200. while enter 9600 for sim900A 30 | Serial.println(" logging time completed!"); 31 | if (!driver.init()) 32 | Serial.println("init failed"); 33 | 34 | } 35 | void loop() 36 | { 37 | 38 | uint8_t buf[1]; 39 | uint8_t buflen = sizeof(buf); 40 | if (driver.recv(buf, &buflen)) // Non-blocking 41 | { 42 | char i; 43 | for (i = 0; i < buflen; i++) 44 | { 45 | b=buf[i]; 46 | Serial.println(b); 47 | if ( b == 'a') // 48 | { 49 | // readdata(); 50 | send1(); 51 | sendcall(); 52 | output(); 53 | 54 | 55 | } 56 | } 57 | } 58 | } 59 | 60 | void send1() 61 | { 62 | textForSMS = "\nPLEASE RESCUE ME , I AM IN PROBLEM . '\n' MY CURRENT LOCATION IS : https://goo.gl/maps/search/query?=lat,lon"; 63 | //sendSMS(textForSMS); 64 | sendsms(textForSMS, f1001); // you can use a variable of the type String 65 | Serial.println(textForSMS); 66 | Serial.println("message1 sent."); 67 | delay(2000); 68 | 69 | sendsms(textForSMS, f1002); // you can also write any message that you want to send. 70 | Serial.println(textForSMS); 71 | Serial.println("message2 sent."); 72 | delay(2000); 73 | 74 | sendsms(textForSMS, f1003); // you can also write any message that you want to send. 75 | Serial.println(textForSMS); 76 | Serial.println("message3 sent."); 77 | delay(2000); 78 | 79 | sendsms(textForSMS, f1004); // you can also write any message that you want to send. 80 | Serial.println(textForSMS); 81 | Serial.println("message4 sent."); 82 | delay(2000); 83 | 84 | 85 | sendsms(textForSMS, f1005); // you can also write any message that you want to send. 86 | Serial.println(textForSMS); 87 | Serial.println("message5 sent."); 88 | delay(2000); 89 | 90 | //sendsms(textForSMS, f1006); // you can also write any message that you want to send. 91 | // Serial.println(textForSMS); 92 | // Serial.println("message5 sent."); 93 | //delay(3000); 94 | } 95 | void sendsms(String message, String number) 96 | { 97 | String mnumber = "AT + CMGS = \""+number+"\""; 98 | mySerial.print("AT+CMGF=1\r"); 99 | delay(1000); 100 | mySerial.println(mnumber); // recipient's mobile number, in international format 101 | 102 | delay(1000); 103 | mySerial.println(message); // message to send 104 | delay(1000); 105 | mySerial.println((char)26); // End AT command with a ^Z, ASCII code 26 106 | delay(1000); 107 | mySerial.println(); 108 | delay(100); // give module time to send SMS 109 | // SIM900power(); 110 | } 111 | void output() 112 | { 113 | 114 | lcd.setCursor(0,0); //sets the cursor at row 0 column 0 115 | lcd.print("WOMAN IS "); // prints 16x2 LCD MODULE 116 | lcd.setCursor(2,1); //sets the cursor at row 1 column 2 117 | lcd.print(" IN DANGER"); 118 | for(i=0;i<100;i++) 119 | { 120 | digitalWrite(light , HIGH); 121 | delay(250); 122 | digitalWrite(light , LOW); 123 | delay(250); 124 | 125 | } 126 | } 127 | void sendcall() 128 | { 129 | mySerial.println("ATD+9779817448555;"); //Calling Numbers 130 | Serial.println("Calling "); // print response over serial port 131 | delay(1000); 132 | Serial.println("called"); 133 | 134 | } 135 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | **SAY NO TO RAPE !** 2 | 3 | *An effort from high schooler to minimize rape, harassment and provide the protection to all the victims from misfortune events.* 4 | 5 | **Project Introduction:** 6 | Antirape Watch is a wearable technology with motto of providing the security especially for women from misfortune events and make them confident when they step out from their home. The project consists of two components: Watch and Server Box. 7 | 8 | **Watch :** This is similar to the normal watch that are available in market with additional security features such as sending rescue message, tracking live location, generating 3 micro ampere electric shock. It is rechargeable and works more than 8 hours once it is fully charged. 9 | 10 | **Server Box:** This is extra step taken to ensure the rescue message gets notified to the rescue team (cops, family members, and volunteers) even if they missed their phone messages. The server consists of LCD display panel where the rescue message is displayed in bold text, and alerting systems which includes buffers and continuously blinking bulbs. The server Box contains the power cable which can work with AC source and even with battery. 11 | 12 | **LCD panel displaying rescue message** 13 | 14 | ![image](https://user-images.githubusercontent.com/35656849/141984349-a4469b38-23c7-42d5-addf-5513143755c8.png) 15 | 16 | 17 | **Function:** 18 | 19 | When a victim feels unsafe, she/he needs to press a button present in the watch. When the victim presses the button, a message is generated saying "I am in danger. Please rescue me. My Location is ..... ." And also the location of victim is stated in the message and the message is delivered to local authorities and their family members . 20 | ![image](https://user-images.githubusercontent.com/35656849/141984534-8acd53f8-9ca6-451d-8a42-a62e640447aa.png) 21 | 22 | 23 | **Working mechanism:** 24 | 25 | There will be two systems watch and server. The watch consists of arduino, GSM module ,GPS sensor ,transmitter. When a button is pressed, the signals get triggered and GPS sensor generates the location in the form of latitude and longitude. The values of latitude and longitude are stored in two different variables. The sample message is created saying "I am in danger. Please rescue me ." The link is also created using latitude and longitude variables that redirect to Google maps url. Then the message is sent to the local authorities phone number which will be set by the programmer during watch construction. 26 | 27 | In addition there will be a local server which can be kept to local police station. The server consists of receiver ,LCD display panel and a buffer. The LCD panel will also display the same message with location of victim. The beeping sound will be produced in the server to make sure that police should be ready to rescue the victim . 28 | 29 | Transmission of signal between watch and server will be in the form of electromagnetic waves that travels serially. 30 | 31 | The message can be sent to the police personal number of station number anywhere in the world but the transmission between watch and the server should be within the range of 1 km in omni-direction. 32 | 33 | The watch is rechargeable. The charger is given to victim. The watch works well more than 8 hours once it is fully charged.The server box can work on both AC as well as DC. 34 | ![image](https://user-images.githubusercontent.com/35656849/134703432-3509239e-83d7-4616-b5bb-1c2278a23e03.png) 35 | 36 | 37 | 38 | **Instruments Used:** 39 | 40 | 1 arduino nano in watch and 1 arduino Mega in server box. 41 | 42 | Transmitter and receiver 43 | 44 | GSM module to send messages to mobile number. 45 | 46 | GPS module to locate victim location. 47 | 48 | LCD panel to display messages 49 | 50 | Buffer to produce beeping sound 51 | 52 | 53 | **Circuit Connection:** 54 | 55 | ![image](https://user-images.githubusercontent.com/35656849/134703662-1cf6a169-5360-4128-a70e-aa8872521724.png) 56 | 57 | **Demo Video** 58 | 59 | 60 | ![Anti-Rape Watch Demo](https://github.com/sajanpoudel/Antirape-System/blob/sajanpoudel-demovideo/antirape-watch-demo.gif) 61 | 62 | 63 | --------------------------------------------------------------------------------