Obsah:

Zachraňte svůj život s monitorem zhroucení budovy: 8 kroků
Zachraňte svůj život s monitorem zhroucení budovy: 8 kroků

Video: Zachraňte svůj život s monitorem zhroucení budovy: 8 kroků

Video: Zachraňte svůj život s monitorem zhroucení budovy: 8 kroků
Video: Říkejte NE a zachraňte svoje životní štěstí 2024, Prosinec
Anonim
Zachraňte svůj život s monitorem zhroucení budovy
Zachraňte svůj život s monitorem zhroucení budovy

Analyzujte betonové, kovové a dřevěné konstrukce na ohyby a úhly a výstrahy, pokud se odchýlily od původní polohy.

Krok 1: Úvod

Úvod
Úvod

S rozvojem oboru inženýrského stavitelství můžeme všude identifikovat mnoho staveb. Kovové konstrukce, betonové nosníky, multiplatformní budovy jsou některé z nich. Navíc většina z nás je zvyklá zůstat po většinu dne v budově nebo doma. Jak ale můžeme zajistit, aby byla budova dostatečně bezpečná, aby zůstala? Co když je ve vaší budově malá prasklina nebo příliš nakloněný paprsek? Riskovalo by to stovky životů.

Zemětřesení, tvrdost půdy, tornáda a mnoho dalších věcí, mohou být faktory pro vnitřní trhliny a odchylku struktur nebo paprsků od neutrální polohy. Většinou si neuvědomujeme situaci okolních struktur. Možná místo, kde každý den chodíme, má prasklé betonové trámy a může se kdykoli zhroutit. Ale aniž bychom to věděli, volně vstupujeme dovnitř. Jako řešení toho potřebujeme dobrou metodu pro sledování betonových, dřevěných a kovových nosníků konstrukcí, kam se nedostaneme.

Krok 2: Řešení

Řešení
Řešení
Řešení
Řešení

„Structure Analyzer“je přenosné zařízení, které lze namontovat na betonový nosník, kovovou konstrukci, desky atd. Toto zařízení měří úhel a analyzuje ohyby, kde je namontováno, a odesílá data do mobilní aplikace prostřednictvím Bluetooth. Toto zařízení používá akcelerometr/ gyroskop k měření úhlu v rovinách x, y, z a flex senzor pro sledování ohybů. Všechna nezpracovaná data jsou zpracována a informace jsou odeslány do mobilní aplikace.

Krok 3: Okruh

Obvod
Obvod
Obvod
Obvod
Obvod
Obvod
Obvod
Obvod

Sbírejte následující součásti.

  • Deska Arduino 101
  • 2 X senzory Flex
  • 2 x 10k odpory

Ke snížení počtu komponent je zde použita deska Arduino 101, která obsahuje akcelerometr a modul BLE. Flex senzory se používají k měření velikosti ohybu, protože mění jeho odpor při ohýbání. Obvod je velmi malý, protože je třeba připojit pouze 2 odpory a 2 flex senzory. Následující diagram ukazuje, jak připojit flex senzor k desce Arduino.

Jeden pin rezistoru je připojen ke kolíku A0 desky Arduino. Stejným postupem připojte i druhý flex senzor. Pro připojení rezistoru použijte pin A1.

Připojte bzučák přímo k pinům D3 a Gnd.

Krok 4: Dokončení zařízení

Dokončení zařízení
Dokončení zařízení
Dokončení zařízení
Dokončení zařízení

Po vytvoření obvodu musí být upevněn uvnitř skříně. Podle výše uvedeného 3D modelu musí být 2 opačné senzory umístěny na opačné straně skříně. Uvolněte místo pro port USB pro programování desky a napájení. Vzhledem k tomu, že je nutné toto zařízení používat po dlouhou dobu, je nejlepším způsobem dodávky energie použití pevného napájecího zdroje.

Krok 5: Mobilní aplikace

Mobilní aplikace
Mobilní aplikace
Mobilní aplikace
Mobilní aplikace
Mobilní aplikace
Mobilní aplikace

Stáhněte si a nainstalujte Blynk z Obchodu Android Play. Spusťte nový projekt pro Arduino 101. Vyberte způsob komunikace jako BLE. Přidejte do rozhraní 1 terminál, 2 tlačítka a BLE. Následující obrázky ukazují, jak vytvořit rozhraní.

Krok 6: Soubory kódu Blynk

Po vytvoření rozhraní na Blynku obdržíte autorizační kód. Tento kód zadejte na následujícím místě.

#include #include char auth = "**************"; // Autorizační kód Blynk

WidgetTerminal terminál (V2);

BLEPeriferní blePeripheral;

V průběhu kalibrace jsou aktuální hodnoty snímačů ukládány do EEPROM.

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

EEPROM.write (1, flx2);

EEPROM.write (2, x);

EEPROM.write (3, y);

EEPROM.write (4, z);

terminal.print („Kalibrace úspěšná“);

Po kalibraci zařízení porovná odchylku s prahovými hodnotami a pípne bzučák, pokud tuto hodnotu překročí.

hodnoty (); if (abs (flex1-m_flx1)> 10 nebo abs (flex2-m_flx2)> 10) {

terminal.println („Over Bend“);

tón (bzučák, 1000);

}

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

terminal.println („Přehnutý“);

tón (bzučák, 1000);

}

Krok 7: Funkčnost

Funkčnost
Funkčnost

Přilepte zařízení na konstrukci, kterou je třeba monitorovat. Nalepte také 2 flex senzory. Napájejte desku pomocí kabelu USB.

Otevřete rozhraní Blynk. Připojte se k zařízení dotykem ikony Bluetooth. Stiskněte kalibrační tlačítko. Po kalibraci terminál zobrazí zprávu jako „úspěšně kalibrováno“. Resetujte zařízení. Nyní bude sledovat strukturu a upozorní vás prostřednictvím bzučáku, pokud se odchyluje od deformací. Hodnoty úhlu a ohybu můžete kdykoli zkontrolovat stisknutím tlačítka Stav. Může to vypadat jako malé zařízení. Ale jeho použití je k nezaplacení. Někdy zapomeneme zkontrolovat stav svého domova, kanceláře atd., Když jsme zaneprázdněni. Pokud však dojde k malému problému, může to skončit jako na obrázku výše.

Ale s tímto zařízením mohou být stovky životů zachráněny informováním o malých, ale nebezpečných problémech v konstrukcích.

Krok 8: Soubor kódu Arduino101

#define BLYNK_PRINT Sériové číslo

#define flex1 A0

#define flex2 A1 // Definujte ohybový senzor a kolíky bzučáku

#definovat bzučák 3

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

#include "CurieBLE.h"

#include "Wire.h"

#include "EEPROM.h"

#include "SPI.h"

char auth = "***************"; // Terminál WidgetTerminal autorizačního kódu Blynk (V2);

BLEPeriferní blePeripheral;

int m_flx1, m_flx2, m_x, m_y, m_z; // hodnoty uložené v paměti

int flx1, flx2, x, y, z; // Aktuální hodnoty

prázdné hodnoty () {for (int i = 0; i <100; i ++) {

flx1 = analogRead (flex1); // Získejte surové hodnoty ze senzorů

flx2 = analogRead (flex2);

x = CurieIMU.readAccelerometer (X_AXIS)/100;

y = CurieIMU.readAccelerometer (Y_AXIS)/100;

z = CurieIMU.readAccelerometer (Z_AXIS)/100;

zpoždění (2);

}

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

x = x/100; // Získejte průměrné hodnoty naměřených hodnot

y = y/100;

z = z/100;

}

void setup () {// pinMode (3, VÝSTUP);

pinMode (flex1, INPUT);

pinMode (flex2, INPUT); // Nastavení režimů pinů senzoru

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); // Přečíst předem uložené hodnoty senzorů z EEPROM

m_y = EEPROM.read (3);

m_z = EEPROM.read (4);

}

void loop () {Blynk.run ();

blePeripheral.poll ();

hodnoty ();

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

tón (bzučák, 1000);

}

if (abs (x-m_x)> 15 or abs (y-m_y)> 15 or abs (z-m_z)> 15) {terminal.println ("Over Inclined");

tón (bzučák, 1000);

}

tón (bzučák, 0);

}

/*VO označuje režim kalibrace. V tomto režimu jsou hodnoty senzorů * ukládány do EEPROM

*/

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

if (pinValue == 1) {

hodnoty ();

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

EEPROM.write (2, x);

EEPROM.write (3, y);

EEPROM.write (4, z);

terminal.print („Kalibrace úspěšná“);

}

}

/ * Aktuální hodnoty odchylek * si můžeme vyžádat stisknutím tlačítka V1

*/

BLYNK_WRITE (V1) {

int pinValue = param.asInt ();

if (pinValue == 1) {

hodnoty (); terminal.print ("Odchylka úhlu X-");

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

terminal.println ();

terminal.print ("Odchylka úhlu Y-");

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

terminal.println ();

terminal.print ("Odchylka úhlu Z-");

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

terminal.println ();

terminal.print („odchylka Flex 1-“);

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

terminal.println ();

terminal.print („Odchylka Flex 2-“);

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

terminal.println ();

}

}

BLYNK_WRITE (V2) {

}

Doporučuje: