Sisällysluettelo:
- Vaihe 1: Johdanto
- Vaihe 2: Ratkaisu
- Vaihe 3: Piiri
- Vaihe 4: Laitteen viimeistely
- Vaihe 5: Mobiilisovellus
- Vaihe 6: Blynk -kooditiedostot
- Vaihe 7: Toimivuus
- Vaihe 8: Arduino101 -kooditiedosto
Video: Pelasta henkesi rakennuksen romahtamismonitorilla: 8 vaihetta
2024 Kirjoittaja: John Day | [email protected]. Viimeksi muokattu: 2024-01-30 09:02
Analysoi betoni-, metalli-, puurakenteita mutkien ja kulmien varalta ja varoitukset, jos ne ovat poikkeaneet alkuperäisestä asennosta.
Vaihe 1: Johdanto
Rakennustekniikan kehityksen myötä voimme tunnistaa paljon rakenteita kaikkialla. Metallirakenteet, betonipalkit, monitasoiset rakennukset ovat joitakin niistä. Lisäksi useimmat meistä ovat tottuneet pysymään rakennuksessa tai kotona suurimman osan vuorokaudesta. Mutta miten voimme taata, että rakennus on riittävän turvallinen pysyäkseen? Entä jos rakennuksessa on pieni halkeama tai liian kalteva palkki? Se vaarantaisi satoja ihmisiä.
Maanjäristykset, maaperän kovuus, tornadot ja monet muut asiat voivat vaikuttaa sisäisiin halkeamiin ja rakenteiden tai palkkien poikkeamiseen neutraalista asennosta. Useimmiten emme ole tietoisia ympäröivien rakenteiden tilanteesta. Ehkä paikka, jossa kävelemme päivittäin, on halkeillut betonipalkit ja voi romahtaa milloin tahansa. Mutta tietämättämme menemme vapaasti sisälle. Ratkaisuna tähän tarvitsemme hyvän menetelmän betonin, puun ja metallipalkkien valvontaan rakenteissa, joihin emme pääse.
Vaihe 2: Ratkaisu
"Rakenneanalysaattori" on kannettava laite, joka voidaan asentaa betonipalkkiin, metallirakenteisiin, laattoihin jne. Tämä laite mittaa kulman ja analysoi mutkia, joissa se on asennettu, ja lähettää tiedot mobiilisovellukseen Bluetoothin kautta. Tämä laite käyttää kiihtyvyysanturia/ gyroskooppia kulman mittaamiseen x-, y-, z -tasoissa ja flex -anturia mutkien seurantaan. Kaikki raakatiedot käsitellään ja tiedot lähetetään mobiilisovellukseen.
Vaihe 3: Piiri
Kerää seuraavat komponentit.
- Arduino 101 Board
- 2 X Flex -anturia
- 2 x 10k vastukset
Komponenttien määrän vähentämiseksi tässä käytetään Arduino 101 -korttia, koska se sisältää kiihtyvyysmittarin ja BLE -moduulin. Flex -antureita käytetään taivutuksen mittaamiseen, koska se muuttaa sen vastusta taivutettaessa. Piiri on hyvin pieni, koska vain 2 vastusta ja 2 flex -anturia on liitettävä. Seuraavassa kaaviossa näytetään, kuinka flex -anturi liitetään Arduino -korttiin.
Yksi vastuksen nasta on kytketty Arduino -kortin A0 -nastaan. Liitä toinen flex -anturi samalla tavalla. Liitä vastus A1 -nastalla.
Kytke summeri suoraan D3- ja Gnd -nastaan.
Vaihe 4: Laitteen viimeistely
Piirin tekemisen jälkeen se on kiinnitettävä kotelon sisään. Yllä olevan 3D -mallin mukaan kaksi flex -anturia on sijoitettava kotelon vastakkaiselle puolelle. Jätä tilaa USB -portille kortin ohjelmoimiseksi ja virran saamiseksi. Koska tätä laitetta on käytettävä pitkään, paras tapa syöttää virtaa on käyttää kiinteää virtalähdettä.
Vaihe 5: Mobiilisovellus
Lataa ja asenna Blynk Android Play Kaupasta. Aloita uusi projekti Arduino 101: lle. Valitse viestintämenetelmäksi BLE. Lisää 1 pääte, 2 painiketta ja BLE käyttöliittymään. Seuraavat kuvat osoittavat käyttöliittymän tekemisen.
Vaihe 6: Blynk -kooditiedostot
Kun olet tehnyt käyttöliittymän Blynkissä, saat valtuutuskoodin. Kirjoita koodi seuraavaan kohtaan.
#include #include char auth = "**************"; // Blynk -valtuutuskoodi
WidgetTerminal -pääte (V2);
BLEPeripheral blePeripheral;
Kalibrointiprosessissa anturin nykyiset lukemat tallennetaan EEPROMiin.
arvot (); EEPROM.write (0, flx1);
EEPROM.write (1, flx2);
EEPROM.write (2, x);
EEPROM.write (3, y);
EEPROM.write (4, z);
terminal.print ("Kalibrointi onnistunut");
Kalibroinnin jälkeen laite vertaa poikkeamaa kynnysarvoihin ja antaa äänimerkin, jos ne ylittävät arvon.
arvot (); jos (abs (flex1-m_flx1)> 10 tai abs (flex2-m_flx2)> 10) {
terminal.println ("Over Bend");
ääni (summeri, 1000);
}
jos (abs (x-m_x)> 15 tai abs (y-m_y)> 15 tai abs (z-m_z)> 15) {
terminal.println ("Yli kalteva");
ääni (summeri, 1000);
}
Vaihe 7: Toimivuus
Kiinnitä laite kiinnitettävään rakenteeseen. Kiinnitä myös 2 flex -anturia. Syötä kortille virta USB -kaapelilla.
Avaa Blynk -käyttöliittymä. Muodosta yhteys laitteeseen koskettamalla Bluetooth -kuvaketta. Paina kalibrointipainiketta. Kalibroinnin jälkeen pääte näyttää viestin "Kalibroitu onnistuneesti". Nollaa laite. Nyt se seuraa rakennetta ja ilmoittaa summerin kautta, jos se poikkeaa muodonmuutoksista. Voit tarkistaa kulma- ja taivutusarvot milloin tahansa painamalla Tila -painiketta. Tämä saattaa näyttää pieneltä laitteelta. Mutta sen käyttö on korvaamatonta. Joskus unohdamme tarkistaa kotimme, toimistomme jne. Kunnon kiireisillä aikatauluillamme. Mutta jos on pieni ongelma, se saattaa päättyä kuten yllä oleva kuva.
Mutta tällä laitteella voidaan pelastaa satoja ihmishenkiä ilmoittamalla pienistä mutta vaarallisista ongelmista rakenteissa.
Vaihe 8: Arduino101 -kooditiedosto
#define BLYNK_PRINT -sarja
#define flex1 A0
#define flex2 A1 // Määritä flex -anturi ja summerin nastat
#määritä summeri 3
#Sisällytä "CurieIMU.h"#Sisällytä "BlynkSimpleCurieBLE.h"
#include "CurieBLE.h"
#sisältää "Wire.h"
#include "EEPROM.h"
#include "SPI.h"
char auth = "**************"; // Blynk Authorization Code WidgetTerminal terminal (V2);
BLEPeripheral blePeripheral;
int m_flx1, m_flx2, m_x, m_y, m_z; // muistiin tallennetut arvot
int flx1, flx2, x, y, z; // Nykyiset lukemat
void arvot () {for (int i = 0; i <100; i ++) {
flx1 = analoginen luku (flex1); // Hanki raakalukemat antureista
flx2 = analoginen luku (flex2);
x = CurieIMU.readAcecelerometer (X_AXIS)/100;
y = CurieIMU.readAcecelerometer (Y_AXIS)/100;
z = CurieIMU.readAcececelerometer (Z_AXIS)/100;
viive (2);
}
flx1 = flx1/100; flx2 = flx2/100;
x = x/100; // Saat lukemien keskiarvot
y = y/100;
z = z/100;
}
void setup () {// pinMode (3, OUTPUT);
pinMode (flex1, INPUT);
pinMode (flex2, INPUT); // Anturin nastatilojen asettaminen
Sarja.alku (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); // Lue valmiiksi tallennetut anturien arvot EEPROMista
m_y = EEPROM.read (3);
m_z = EEPROM.read (4);
}
tyhjä silmukka () {Blynk.run ();
blePeripheral.poll ();
arvot ();
if (abs (flex1-m_flx1)> 10 tai abs (flex2-m_flx2)> 10) {terminal.println ("Over Bend");
ääni (summeri, 1000);
}
jos (abs (x-m_x)> 15 tai abs (y-m_y)> 15 tai abs (z-m_z)> 15) {terminal.println ("Over Included");
ääni (summeri, 1000);
}
ääni (summeri, 0);
}
/*VO ilmaisee kalibrointitilan. Tässä tilassa anturien * arvot tallennetaan EEPROMiin
*/
BLYNK_WRITE (V0) {int pinValue = param.asInt ();
jos (pinValue == 1) {
arvot ();
EEPROM.write (0, flx1); EEPROM.write (1, flx2);
EEPROM.write (2, x);
EEPROM.write (3, y);
EEPROM.write (4, z);
terminal.print ("Kalibrointi onnistunut");
}
}
/ * Voimme pyytää nykyisiä poikkeama -arvoja * painamalla painiketta V1
*/
BLYNK_WRITE (V1) {
int pinValue = param.asInt ();
jos (pinValue == 1) {
arvot (); terminal.print ("X-kulmapoikkeama");
terminaali.print (abs (x-m_x));
terminaali.println ();
terminal.print ("Y-kulmapoikkeama");
terminaali.jälki (abs (y-m_y));
terminaali.println ();
terminal.print ("Z-kulmapoikkeama");
terminaali.print (abs (z-m_z));
terminaali.println ();
terminal.print ("Flex 1 poikkeama-");
terminaali.print (abs (flx1-m_flx1));
terminaali.println ();
terminal.print ("Flex 2 -poikkeama");
terminaali.print (abs (flx2-m_flx2));
terminaali.println ();
}
}
BLYNK_WRITE (V2) {
}
Suositeltava:
ArduBand - pelasta silmäsi!: 6 vaihetta (kuvilla)
ArduBand - Säästä silmäsi !: Hei, nykyisessä tilanteessa monet työskentelevät kotona, minkä vuoksi vietämme paljon enemmän aikaa tietokoneiden tai älypuhelimien edessä. Joskus voimme istua näytön edessä useita tunteja tuhoamalla silmämme ja kaarevat selkäämme. Voisimme käyttää de
Pelasta lapseni: älykäs istuin, joka lähettää tekstiviestejä, jos unohdat lapsen autoon: 8 vaihetta
Pelasta lapseni: älykäs istuin, joka lähettää tekstiviestejä, jos unohdat lapsen autoon: Se on asennettu autoihin ja turvaistuimelle sijoitetun ilmaisimen ansiosta se varoittaa meitä - tekstiviestillä tai puhelimella - jos saamme pois tuomatta lasta mukanamme
Pelasta näytön ulkopuoliset Windows-laitteet heti (Windows ja Linux): 4 vaihetta
Pelasta ulkopuoliset Windows -laitteet heti (Windows ja Linux): Kun ohjelma siirretään näytön ulkopuolelta - ehkä toiseen näyttöön, jota ei enää ole kytketty - tarvitset nopean ja helpon tavan siirtää se nykyiseen näyttöön. Tätä teen -HUOMAUTUS --- Olen sumentanut kuvat yksityisyyden suojaamiseksi
Pelasta 9 V: n akunpidikkeet tyhjistä akuista: 10 vaihetta
Pelasta 9 V: n akunpidikkeet tyhjiltä paristoilta: Voit käyttää vanhan 9 V: n akun yläosaa 9 V: n akkupidikkeenä erilaisiin elektroniikkaprojekteihin. "9 V: n leikettä" käytetään myös joissakin eri jännitteiden taikinapidikkeissä (esim. 4AA-paristo.) Näin voit tehdä mukavan lankajohtosarjan … (Tämä on
Pelasta planeetta ja taskusi. $$ Muunna halpa P&S -digitaalikamera ladattavaksi: 4 vaihetta (kuvilla)
Pelasta planeetta ja taskusi. $$ Muunna halpa P&S -digitaalikamerasi ladattavaksi: Vuosia sitten ostin Dolphin Jazz 2.0 megapikselin digitaalikameran, jossa oli hyvät ominaisuudet ja hinta. Sillä oli myös ruokahalu AAA Bateriesille. Ei kukaan kävelemään pois haasteesta, ajattelin modifioida sen käyttämään ladattavaa akkua lopettaakseni tuhlaamisen