Satura rādītājs:

Glābiet dzīvību, izmantojot ēku sabrukšanas monitoru: 8 soļi
Glābiet dzīvību, izmantojot ēku sabrukšanas monitoru: 8 soļi

Video: Glābiet dzīvību, izmantojot ēku sabrukšanas monitoru: 8 soļi

Video: Glābiet dzīvību, izmantojot ēku sabrukšanas monitoru: 8 soļi
Video: Часть 8 — Аудиокнига «Джейн Эйр» Шарлотты Бронте (гл. 34–38) 2024, Novembris
Anonim
Glābiet dzīvību, izmantojot ēku sabrukšanas monitoru
Glābiet dzīvību, izmantojot ēku sabrukšanas monitoru

Analizējiet betona, metāla, koka konstrukcijas līkumiem un leņķiem un brīdinājumus, ja tie ir novirzījušies no sākotnējās pozīcijas.

1. darbība. Ievads

Ievads
Ievads

Attīstoties inženierbūvniecības nozarei, mēs visur varam identificēt daudzas konstrukcijas. Dažas no tām ir metāla konstrukcijas, betona sijas, daudzplatformu ēkas. Turklāt lielākā daļa no mums ir pieraduši uzturēties ēkā vai mājās lielākajā daļā dienas. Bet kā mēs varam pārliecināties, ka ēka ir pietiekami droša, lai paliktu? Ko darīt, ja jūsu ēkā ir neliela plaisa vai pārāk slīpa gaisma? Tas apdraudētu simtiem dzīvību.

Zemestrīces, augsnes cietība, tornado un daudzas citas lietas var izraisīt iekšējās plaisas un konstrukciju vai siju novirzes no neitrālā stāvokļa. Lielākoties mēs neapzināmies apkārtējo struktūru stāvokli. Varbūt vietā, kur ikdienā ejam, ir saplaisājušas betona sijas un tā var sabrukt jebkurā laikā. Bet, to nezinot, mēs brīvi ejam iekšā. Kā risinājums tam mums ir nepieciešama laba metode, lai uzraudzītu konstrukciju betona, koka un metāla sijas, kur mēs nevaram sasniegt.

2. solis: risinājums

Risinājums
Risinājums
Risinājums
Risinājums

“Struktūras analizators” ir pārnēsājama ierīce, ko var uzstādīt uz betona sijas, metāla konstrukcijas, plātnēm utt. Šī ierīce mēra leņķi un analizē līkumus, kur tā ir uzstādīta, un nosūta datus uz mobilo lietotni, izmantojot Bluetooth. Šī ierīce izmanto akselerometru/ žiroskopu, lai izmērītu leņķi x, y, z plaknēs un elastības sensoru, lai uzraudzītu līkumus. Visi neapstrādātie dati tiek apstrādāti un informācija tiek nosūtīta uz mobilo lietotni.

3. solis: ķēde

Ķēde
Ķēde
Ķēde
Ķēde
Ķēde
Ķēde
Ķēde
Ķēde

Savāc šādas sastāvdaļas.

  • Arduino 101 dēlis
  • 2 X Flex sensori
  • 2 X 10k rezistori

Lai samazinātu komponentu skaitu, šeit tiek izmantota Arduino 101 plāksne, jo tajā ir akselerometrs un BLE modulis. Flex sensori tiek izmantoti, lai izmērītu lieces apjomu, jo tas maina pretestību saliekšanas laikā. Ķēde ir ļoti maza, jo bija jāpievieno tikai 2 rezistori un 2 elastīgie sensori. Sekojošā diagramma parāda, kā savienot elastīgo sensoru ar Arduino plati.

Viena rezistora tapa ir savienota ar Arduino plates A0 tapu. Izpildiet to pašu procedūru, lai pievienotu otro elastības sensoru. Lai pievienotu rezistoru, izmantojiet A1 tapu.

Pievienojiet skaņas signālu tieši D3 un Gnd tapai.

4. solis: ierīces pabeigšana

Ierīces apdare
Ierīces apdare
Ierīces apdare
Ierīces apdare

Pēc ķēdes izveidošanas tā ir jānostiprina korpusa iekšpusē. Saskaņā ar iepriekš minēto 3D modeli, 2 elastīgie sensori ir jāievieto korpusa pretējā pusē. Atbrīvojiet vietu USB portam, lai ieprogrammētu plati un piegādātu barošanu. Tā kā šī ierīce ir jāizmanto ilgu laiku, labākā barošanas metode ir fiksēta barošanas bloka izmantošana.

5. darbība. Mobilā lietotne

Mobilā lietotne
Mobilā lietotne
Mobilā lietotne
Mobilā lietotne
Mobilā lietotne
Mobilā lietotne

Lejupielādējiet un instalējiet Blynk no Android Play veikala. Sāciet jaunu projektu Arduino 101. Izvēlieties saziņas metodi kā BLE. Pievienojiet interfeisam 1 termināli, 2 pogas un BLE. Turpmākajos attēlos parādīts, kā izveidot saskarni.

6. darbība: Blynk koda faili

Pēc saskarnes izveidošanas vietnē Blynk jūs saņemsiet autorizācijas kodu. Ievadiet šo kodu tālāk norādītajā vietā.

#include #include char auth = "**************"; // Blynk autorizācijas kods

Logrīks Termināla terminālis (V2);

BLEPeripheral blePeripheral;

Kalibrēšanas procesā pašreizējie sensora rādījumi tiek saglabāti EEPROM.

vērtības (); EEPROM.write (0, flx1);

EEPROM.write (1, flx2);

EEPROM.write (2, x);

EEPROM.write (3, y);

EEPROM.write (4, z);

terminal.print ("Kalibrēšana veiksmīga");

Pēc kalibrēšanas ierīce salīdzinās novirzi ar sliekšņa vērtībām un skaņas signālu, ja tie pārsniedz vērtību.

vērtības (); ja (abs (flex1-m_flx1)> 10 vai abs (flex2-m_flx2)> 10) {

terminal.println ("Over Bend");

tonis (skaņas signāls, 1000);

}

ja (abs (x-m_x)> 15 vai abs (y-m_y)> 15 vai abs (z-m_z)> 15) {

terminal.println ("Virs slīpa");

tonis (skaņas signāls, 1000);

}

7. solis: funkcionalitāte

Funkcionalitāte
Funkcionalitāte

Piestipriniet ierīci pie struktūras, kas jāuzrauga. Piestipriniet arī 2 elastīgos sensorus. Piegādājiet strāvas padevi, izmantojot USB kabeli.

Atveriet Blynk saskarni. Izveidojiet savienojumu ar ierīci, pieskaroties Bluetooth ikonai. Nospiediet kalibrēšanas pogu. Pēc kalibrēšanas terminālis parādīs ziņojumu kā "Veiksmīgi kalibrēts". Atiestatiet ierīci. Tagad tas uzraudzīs struktūru un paziņos jums, izmantojot skaņas signālu, ja tā novirzīsies no deformācijām. Leņķa un līkuma vērtības varat pārbaudīt jebkurā laikā, nospiežot pogu Statuss. Tas varētu izskatīties kā maza ierīce. Bet tā izmantošana ir nenovērtējama. Dažreiz mēs aizmirstam pārbaudīt mūsu mājas, biroja uc stāvokli ar mūsu aizņemto grafiku. Bet, ja ir neliela problēma, tā var beigties tāpat kā attēlā iepriekš.

Bet, izmantojot šo ierīci, var izglābt simtiem dzīvību, informējot par mazajām, tomēr bīstamajām problēmām būvniecībā.

8. darbība: Arduino101 koda fails

#define BLYNK_PRINT Seriāls

#define flex1 A0

#define flex2 A1 // Definējiet elastības sensoru un skaņas signāla tapas

#definēt skaņas signālu 3

#iekļaut "CurieIMU.h"#iekļaut "BlynkSimpleCurieBLE.h"

#include "CurieBLE.h"

#ietver "Wire.h"

#include "EEPROM.h"

#ietver "SPI.h"

char auth = "**************"; // Blynk Authorization Code WidgetTerminal terminal (V2);

BLEPeripheral blePeripheral;

int m_flx1, m_flx2, m_x, m_y, m_z; // atmiņā saglabātās vērtības

int flx1, flx2, x, y, z; // Pašreizējie rādījumi

tukšas vērtības () {par (int i = 0; i <100; i ++) {

flx1 = analogRead (flex1); // Iegūstiet neapstrādātus rādījumus no sensoriem

flx2 = analogRead (flex2);

x = CurieIMU.readAkscelerometrs (X_AXIS)/100;

y = CurieIMU.readAkscelerometrs (Y_AXIS)/100;

z = CurieIMU.readAkscelerometrs (Z_AXIS)/100;

kavēšanās (2);

}

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

x = x/100; // Iegūstiet vidējās rādījumu vērtības

y = y/100;

z = z/100;

}

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

pinMode (flex1, INPUT);

pinMode (flex2, INPUT); // Sensora tapu režīmu iestatīšana

Sērijas sākums (9600);

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

blePeripheral.setAppearance (384);

Blynk.begin (auth, blePeripheral);

blePeripheral.begin ();

m_flx1 = EEPROM.lasījums (0); m_flx2 = EEPROM.lasījums (1);

m_x = EEPROM.lasījums (2); // Lasīt iepriekš saglabātās sensora vērtības no EEPROM

m_y = EEPROM.lasījums (3);

m_z = EEPROM.lasījums (4);

}

void loop () {Blynk.run ();

blePeripheral.poll ();

vērtības ();

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

tonis (skaņas signāls, 1000);

}

ja (abs (x-m_x)> 15 vai abs (y-m_y)> 15 vai abs (z-m_z)> 15) {terminal.println ("Virs slīpa");

tonis (skaņas signāls, 1000);

}

tonis (skaņas signāls, 0);

}

/*VO norāda kalibrēšanas režīmu. Šajā režīmā sensoru * vērtības tiek saglabātas EEPROM

*/

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

ja (pinValue == 1) {

vērtības ();

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

EEPROM.write (2, x);

EEPROM.write (3, y);

EEPROM.write (4, z);

terminal.print ("Kalibrēšana veiksmīga");

}

}

/ * Mēs varam pieprasīt pašreizējās novirzes vērtības *, nospiežot pogu V1

*/

BLYNK_WRITE (V1) {

int pinValue = param.asInt ();

ja (pinValue == 1) {

vērtības (); terminal.print ("X leņķa novirze-");

terminālis.druka (abs (x-m_x));

terminālis.println ();

terminal.print ("Y leņķa novirze-");

terminālis.druka (abs (y-m_y));

terminālis.println ();

terminal.print ("Z leņķa novirze-");

terminālis.druka (abs (z-m_z));

terminālis.println ();

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

terminālis.druka (abs (flx1-m_flx1));

terminālis.println ();

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

terminālis.druka (abs (flx2-m_flx2));

terminālis.println ();

}

}

BLYNK_WRITE (V2) {

}

Ieteicams: