Sommario:

Salva la tua vita con il monitoraggio del crollo dell'edificio: 8 passaggi
Salva la tua vita con il monitoraggio del crollo dell'edificio: 8 passaggi

Video: Salva la tua vita con il monitoraggio del crollo dell'edificio: 8 passaggi

Video: Salva la tua vita con il monitoraggio del crollo dell'edificio: 8 passaggi
Video: Le 7 MORTI più AGGHIACCIANTI nei PARCHI divertimento italiani PT 4v 2024, Dicembre
Anonim
Salva la tua vita con il monitoraggio del collasso dell'edificio
Salva la tua vita con il monitoraggio del collasso dell'edificio

Analizza le strutture in cemento, metallo, legno per curve e angoli e avvisa se hanno deviato dalla posizione originale.

Passaggio 1: Introduzione

introduzione
introduzione

Con lo sviluppo del campo dell'ingegneria civile, possiamo identificare molte costruzioni ovunque. Strutture metalliche, travi in calcestruzzo, edifici multipiattaforma sono alcuni di questi. Inoltre, la maggior parte di noi è abituata a stare in un edificio o in una casa durante la maggior parte delle ore della giornata. Ma come possiamo assicurarci che l'edificio sia abbastanza sicuro da restare? Cosa succede se c'è una piccola crepa o una trave troppo inclinata nel tuo edificio? Rischierebbe centinaia di vite.

Terremoti, durezza del suolo, tornado e molte altre cose, potrebbero essere fattori di crepe interne e la deviazione delle strutture o delle travi dalla posizione neutra. Il più delle volte non siamo a conoscenza della situazione delle strutture circostanti. Forse il posto in cui entriamo ogni giorno ha travi di cemento rotte e può crollare in qualsiasi momento. Ma senza saperlo entriamo liberamente all'interno. Come soluzione per questo, abbiamo bisogno di un buon metodo per monitorare cemento, legno, travi metalliche di costruzioni dove non possiamo raggiungere.

Passaggio 2: soluzione

Soluzione
Soluzione
Soluzione
Soluzione

"Structure Analyzer" è un dispositivo portatile che può essere montato su una trave di cemento, una struttura metallica, lastre, ecc. Questo dispositivo misura l'angolo e analizza le curve in cui è montato e invia i dati all'app mobile tramite Bluetooth. Questo dispositivo utilizza un accelerometro/giroscopio per misurare l'angolo nei piani x, y, z e un sensore di flessione per monitorare le curve. Tutti i dati grezzi vengono elaborati e le informazioni vengono inviate all'app mobile.

Passaggio 3: circuito

Circuito
Circuito
Circuito
Circuito
Circuito
Circuito
Circuito
Circuito

Raccogli i seguenti componenti.

  • Scheda Arduino 101
  • 2 X sensori Flex
  • 2 resistenze da 10k

Per ridurre il numero di componenti viene utilizzata la scheda Arduino 101 in quanto contiene un accelerometro e un modulo BLE. I sensori Flex vengono utilizzati per misurare la quantità di piegatura poiché cambia la sua resistenza durante la piegatura. Il circuito è molto piccolo in quanto è necessario collegare solo 2 resistori e 2 sensori flessibili. Il diagramma seguente mostra come collegare un sensore flessibile alla scheda Arduino.

Un pin del resistore è collegato al pin A0 della scheda Arduino. Seguire la stessa procedura per collegare il secondo sensore flessibile. Utilizzare il pin A1 per collegare il resistore.

Collegare il cicalino direttamente al pin D3 e al pin Gnd.

Passaggio 4: Finire il dispositivo

Finire il dispositivo
Finire il dispositivo
Finire il dispositivo
Finire il dispositivo

Dopo aver realizzato il circuito, deve essere fissato all'interno di un involucro. Secondo il modello 3D di cui sopra, 2 sensori flessibili devono essere posizionati sul lato opposto dell'involucro. Fare spazio alla porta USB per programmare la scheda e fornire l'alimentazione. Poiché questo dispositivo deve essere utilizzato per un lungo periodo, il metodo migliore per fornire alimentazione è utilizzare un alimentatore fisso.

Passaggio 5: App per dispositivi mobili

App per dispositivi mobili
App per dispositivi mobili
App per dispositivi mobili
App per dispositivi mobili
App per dispositivi mobili
App per dispositivi mobili

Scarica e installa Blynk dal Play Store di Android. Avvia un nuovo progetto per Arduino 101. Seleziona il metodo di comunicazione come BLE. Aggiungi 1 terminale, 2 pulsanti e BLE all'interfaccia. Le immagini seguenti mostrano come realizzare l'interfaccia.

Passaggio 6: file di codice Blynk

Dopo aver effettuato l'interfaccia su Blynk riceverai un codice di autorizzazione. Inserisci quel codice al seguente posto.

#include #include char auth = "***************"; //Codice di autorizzazione Blynk

WidgetTerminale terminale (V2);

BLPeriferica blePeriferica;

Nel processo di calibrazione, le letture correnti del sensore vengono salvate nella EEPROM.

valori(); EEPROM.write(0, flx1);

EEPROM.write(1, flx2);

EEPROM.write(2, x);

EEPROM.write(3, y);

EEPROM.write(4, z);

terminal.print("Calibrazione riuscita");

Dopo la calibrazione, il dispositivo confronterà la deviazione con i valori di soglia e emetterà un segnale acustico se superano il valore.

valori(); if(abs(flex1-m_flx1)>10 o abs(flex2-m_flx2)>10){

terminal.println("Piegatura");

tono (cicalino, 1000);

}

if(abs(x-m_x)>15 o abs(y-m_y)>15 o abs(z-m_z)>15){

terminal.println("Inclinato troppo");

tono (cicalino, 1000);

}

Passaggio 7: funzionalità

Funzionalità
Funzionalità

Attaccare il dispositivo alla struttura da monitorare. Attacca anche i 2 sensori di flessione. Alimentare la scheda tramite il cavo USB.

Apri l'interfaccia di Blynk. Connettiti con il dispositivo toccando l'icona Bluetooth. Premere il pulsante di calibrazione. Dopo la calibrazione, il terminale mostrerà un messaggio come "Calibrato con successo". Ripristina il dispositivo. Ora controllerà la struttura e ti avviserà tramite il cicalino se devia o si deforma. È possibile controllare i valori dell'angolo e della piega in qualsiasi momento premendo il pulsante Stato. Questo potrebbe sembrare un piccolo dispositivo. Ma i suoi usi non hanno prezzo. A volte ci dimentichiamo di controllare le condizioni della nostra casa, dell'ufficio, ecc., con i nostri impegni. Ma se c'è un piccolo problema, potrebbe finire come nella figura sopra.

Ma con questo dispositivo è possibile salvare centinaia di vite informando i piccoli ma pericolosi problemi nelle costruzioni.

Passaggio 8: file di codice Arduino101

#define BLYNK_PRINT seriale

#define flex1 A0

#define flex2 A1 //Definisci sensore flex e pin del cicalino

#define buzzer 3

#include "CurieIMU.h"#include "BlynkSimpleCurieBLE.h"

#include "CurieBLE.h"

#include "Wire.h"

#include "EEPROM.h"

#include "SPI.h"

char auth = "***************"; //Blynk Codice di autorizzazione WidgetTerminal terminal(V2);

BLPeriferica blePeriferica;

int m_flx1, m_flx2, m_x, m_y, m_z; //valori salvati in memoria

int flx1, flx2, x, y, z; //Letture attuali

valori vuoti(){ for(int i=0;i<100;i++){

flx1 = analogRead(flex1); //Ottieni letture grezze dai sensori

flx2 = analogRead(flex2);

x = CurieIMU.readAccelerometer(X_AXIS)/100;

y = CurieIMU.readAccelerometer(Y_AXIS)/100;

z = CurieIMU.readAccelerometer(Z_AXIS)/100;

ritardo(2);

}

flx1=flx1/100; flx2=flx2/100;

x = x/100; //Ottieni i valori medi delle letture

y = y/100;

z = z/100;

}

void setup(){ //pinMode(3, OUTPUT);

pinMode(flex1, INPUT);

pinMode(flex2, INPUT); //Impostazione delle modalità dei pin del sensore

Serial.begin(9600);

blePeripheral.setLocalName("Arduino101Blynk"); blePeripheral.setDeviceName("Arduino101Blynk");

blePeripheral.setAppearance(384);

Blynk.begin(auth, blePeripheral);

blePeripheral.begin();

m_flx1 = EEPROM.read(0); m_flx2 = EEPROM.read(1);

m_x = EEPROM.read(2); //Leggi i valori del sensore pre-salvati dalla EEPROM

m_y = EEPROM.read(3);

m_z = EEPROM.read(4);

}

void loop(){ Blynk.run();

blePeripheral.poll();

valori();

if(abs(flex1-m_flx1)>10 or abs(flex2-m_flx2)>10){ terminal.println("Over Bend");

tono (cicalino, 1000);

}

if(abs(x-m_x)>15 o abs(y-m_y)>15 o abs(z-m_z)>15){ terminal.println("Inclinato oltre");

tono (cicalino, 1000);

}

tono(cicalino, 0);

}

/*VO indica la modalità di calibrazione. In questa modalità i valori dei sensori * vengono salvati in EEPROM

*/

BLYNK_WRITE(V0){ int pinValue = param.asInt();

if (pinValue == 1){

valori();

EEPROM.write(0, flx1); EEPROM.write(1, flx2);

EEPROM.write(2, x);

EEPROM.write(3, y);

EEPROM.write(4, z);

terminal.print("Calibrazione riuscita");

}

}

/*Possiamo richiedere i valori di deviazione correnti * premendo il pulsante V1

*/

BLYNK_WRITE(V1){

int pinValue = param.asInt();

if (pinValue == 1){

valori(); terminal.print("Deviazione angolo X- ");

terminale.print(abs(x-m_x));

terminale.println();

terminal.print("Deviazione angolo Y- ");

terminal.print(abs(y-m_y));

terminale.println();

terminal.print("Deviazione angolo Z- ");

terminal.print(abs(z-m_z));

terminale.println();

terminal.print("Deviazione Flex 1- ");

terminal.print(abs(flx1-m_flx1));

terminale.println();

terminal.print("Deviazione Flex 2- ");

terminal.print(abs(flx2-m_flx2));

terminale.println();

}

}

BLYNK_WRITE(V2){

}

Consigliato: