Агуулгын хүснэгт:

Барилга нурах дэлгэцээр амьдралаа авраарай: 8 алхам
Барилга нурах дэлгэцээр амьдралаа авраарай: 8 алхам

Видео: Барилга нурах дэлгэцээр амьдралаа авраарай: 8 алхам

Видео: Барилга нурах дэлгэцээр амьдралаа авраарай: 8 алхам
Видео: Как сделать стяжку с шумоизоляцией в квартире. #18 2024, Долдугаар сарын
Anonim
Барилга нурах монитор ашиглан амьдралаа авраарай
Барилга нурах монитор ашиглан амьдралаа авраарай

Бетон, металл, модон бүтцэд анхны байрлалаасаа хазайсан тохиолдолд гулзайлт, өнцөг, дохиоллын шинжилгээ хий.

Алхам 1: Танилцуулга

Танилцуулга
Танилцуулга

Барилгын инженерчлэлийн салбар хөгжихийн хэрээр бид хаа сайгүй маш олон барилга байгууламжийг тодорхойлж чадна. Металл хийц, Бетон дам нуруу, Олон платформтой барилга бол тэдгээрийн зарим нь юм. Цаашилбал, бидний ихэнх нь өдрийн ихэнх цагаар барилга эсвэл гэртээ үлддэг. Гэхдээ барилга нь оршин тогтноход аюулгүй гэдгийг бид яаж батлах вэ? Танай барилгад жижиг хагарал эсвэл хэт налуу туяа байвал яах вэ? Энэ нь хэдэн зуун хүний амь насыг эрсдэлд оруулах болно.

Газар хөдлөлт, хөрсний хатуулаг, хар салхи болон бусад олон зүйл нь дотоод хагарал, барилга байгууламж эсвэл цацрагийг төвийг сахисан байрлалаас хазайлгах хүчин зүйл болдог. Ихэнх тохиолдолд бид хүрээлэн буй орчны нөхцөл байдлын талаар мэддэггүй. Магадгүй бидний өдөр тутам явдаг газар нь бетонон туяанд цууралт үүсч, хэзээ ч нурж магадгүй юм. Гэхдээ үүнийг мэдэхгүйгээр бид чөлөөтэй дотогшоо орж байна, үүний шийдэл болохын тулд бид хүрч чадахгүй байгаа барилгын бетон, мод, төмөр дам нурууг хянах сайн арга хэрэгтэй болно.

Алхам 2: Шийдэл

Шийдэл
Шийдэл
Шийдэл
Шийдэл

"Бүтцийн анализатор" нь бетонон туяа, металл хийц, хавтан гэх мэт дээр суурилуулж болох зөөврийн төхөөрөмж бөгөөд энэ төхөөрөмж нь өнцгийг нь хэмжиж, нугалж буй газарт дүн шинжилгээ хийж, өгөгдлийг Bluetooth ашиглан гар утасны апп руу илгээдэг. Энэ төхөөрөмж нь акселерометр/ гироскоп ашиглан x, y, z хавтгай дахь өнцгийг хэмжиж, нугалалтыг хянах уян мэдрэгчийг ашигладаг. Бүх түүхий өгөгдлийг боловсруулж, мэдээллийг гар утасны апп руу илгээдэг.

Алхам 3: Хэлхээ

Хэлхээ
Хэлхээ
Хэлхээ
Хэлхээ
Хэлхээ
Хэлхээ
Хэлхээ
Хэлхээ

Дараах бүрэлдэхүүн хэсгүүдийг цуглуул.

  • Arduino 101 самбар
  • 2 X Flex мэдрэгч
  • 2 X 10k резистор

Бүрэлдэхүүн хэсгүүдийн тоог багасгахын тулд хурдатгал хэмжигч болон BLE модулийг агуулсан тул Arduino 101 хавтанг энд ашигладаг. Гулзайлтын эсэргүүцэл өөрчлөгдөхөд гулзайлтын хэмжээг хэмжихэд уян мэдрэгчийг ашигладаг. Зөвхөн 2 резистор ба 2 уян мэдрэгчийг холбох шаардлагатай тул хэлхээ нь маш жижиг юм. Дараах диаграм нь уян хатан мэдрэгчийг Arduino самбар дээр хэрхэн холбохыг харуулав.

Резисторын нэг зүү нь Arduino хавтангийн A0 зүүтэй холбогдсон байна. Хоёрдахь уян мэдрэгчийг холбохын тулд ижил процедурыг дагана уу. А1 зүү ашиглан резисторыг холбоно уу.

Дуу чимээг D3 зүү ба Gnd зүү рүү шууд холбоно уу.

Алхам 4: Төхөөрөмжийг дуусгах

Төхөөрөмжийг дуусгах
Төхөөрөмжийг дуусгах
Төхөөрөмжийг дуусгах
Төхөөрөмжийг дуусгах

Цахилгаан хэлхээг хийсний дараа хашлага дотор бэхлэх ёстой. Дээрх 3D загварын дагуу 2 уян мэдрэгчийг хашлагын эсрэг талд байрлуулах ёстой. Самбарыг програмчилж, тэжээл өгөх USB портод зай гаргаарай. Энэ төхөөрөмжийг удаан хугацаанд ашиглах шаардлагатай байдаг тул тогтмол тэжээлийн багцыг ашиглах нь цахилгаан хангамжийг хангах хамгийн сайн арга юм.

Алхам 5: Мобайл апп

Мобайл апп
Мобайл апп
Мобайл апп
Мобайл апп
Мобайл апп
Мобайл апп

Blynk -ийг Android Play Store -оос татаж аваад суулгаарай. Arduino 101 -д зориулж шинэ төсөл эхлүүлээрэй. Харилцааны аргыг BLE гэж сонгоно уу. Интерфэйс дээр 1 терминал, 2 товчлуур, BLE нэмнэ үү. Дараах зургууд интерфэйсийг хэрхэн яаж хийхийг танд харуулав.

Алхам 6: Blynk кодын файлууд

Blynk дээр интерфэйс хийсний дараа танд зөвшөөрлийн код ирэх болно. Энэ кодыг дараах газарт оруулна уу.

#include #include char auth = "**************"; // Блинкийн зөвшөөрлийн код

WidgetTerminal терминал (V2);

BLEPeripheral blePeripheral;

Тохируулах явцад одоогийн мэдрэгчийн уншилтыг EEPROM -д хадгалдаг.

утга (); EEPROM.write (0, flx1);

EEPROM.write (1, flx2);

EEPROM.write (2, x);

EEPROM.write (3, y);

EEPROM.write (4, z);

terminal.print ("шалгалт тохируулга амжилттай");

Тохируулсны дараа төхөөрөмж хазайлтыг босго утгуудтай харьцуулж, хэрэв утгаас хэтэрсэн бол дуугардаг.

утга (); хэрэв (abs (flex1-m_flx1)> 10 эсвэл abs (flex2-m_flx2)> 10) {

terminal.println ("Over Bend");

ая (дуугаралт, 1000);

}

хэрэв (abs (x-m_x)> 15 эсвэл abs (y-m_y)> 15 эсвэл abs (z-m_z)> 15) {

terminal.println ("Хэт налуу");

ая (дуугаралт, 1000);

}

Алхам 7: Функциональ байдал

Функциональ байдал
Функциональ байдал

Төхөөрөмжийг хянах шаардлагатай бүтцэд наалдана. 2 уян мэдрэгчийг бас наалдана уу. USB кабель ашиглан самбарыг тэжээлээр хангах.

Blynk интерфэйсийг нээнэ үү. Bluetooth дүрс дээр дарж төхөөрөмжтэй холбогдоно уу. Калибровк товчийг дарна уу. Терминалийг тохируулсны дараа "Амжилттай тохируулагдсан" гэсэн мессеж гарч ирнэ. Төхөөрөмжийг дахин тохируулах. Одоо энэ нь бүтцийг хянаж, хэв гажилтаас хазайсан тохиолдолд дуут дохиогоор дамжуулан танд мэдэгдэх болно. Та Status товчлуурыг дарж өнцөг, гулзайлтын утгыг хүссэн үедээ шалгаж болно. Энэ нь жижиг төхөөрөмж шиг харагдаж магадгүй юм. Гэхдээ түүний хэрэглээ нь үнэлж баршгүй юм. Заримдаа бид завгүй хуваарьтай байхдаа гэр, оффис гэх мэт нөхцөл байдлыг шалгахаа мартдаг. Гэхдээ жижиг асуудал байвал дээрх зураг шиг дуусч магадгүй юм.

Гэхдээ энэхүү төхөөрөмжөөр барилга байгууламжийн өчүүхэн боловч аюултай асуудлуудыг мэдээлснээр олон зуун хүний амийг аврах боломжтой юм.

Алхам 8: Arduino101 кодын файл

BLYNK_PRINT цувралыг #тодорхойлох

#тодорхойлох flex1 A0

#define flex2 A1 // Уян хатан мэдрэгч ба дуугаралтын хавчаарыг тодорхойлно уу

#дуут дохио тодорхойлох 3

#"CurieIMU.h" оруулах#"BlynkSimpleCurieBLE.h" -ийг оруулах

#"CurieBLE.h" -ийг оруулна уу

#"Wire.h" -ийг оруулна уу

#"EEPROM.h" оруулах

#"SPI.h" -ийг оруулна уу

char auth = "**************"; // Blynk Authorization Code WidgetTerminal терминал (V2);

BLEPeripheral blePeripheral;

int m_flx1, m_flx2, m_x, m_y, m_z; // санах ойд хадгалагдсан утгууд

int flx1, flx2, x, y, z; // Одоогийн уншилт

void утга () {for (int i = 0; i <100; i ++) {

flx1 = analogRead (flex1); // Мэдрэгчээс түүхий уншилт авах

flx2 = analogRead (flex2);

x = CurieIMU.readAccelerometer (X_AXIS)/100;

y = CurieIMU.readAxelerometer (Y_AXIS)/100;

z = CurieIMU.readAxelerometer (Z_AXIS)/100;

саатал (2);

}

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

x = x/100; // Уншлагын дундаж утгыг авах

y = y/100;

z = z/100;

}

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

pinMode (flex1, INPUT);

pinMode (flex2, INPUT); // Мэдрэгчийн зүү горимыг тохируулах

Цуваа эхлэх (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); // EEPROM -ээс урьдчилан хадгалагдсан мэдрэгчийн утгыг уншина уу

m_y = EEPROM.read (3);

m_z = EEPROM.read (4);

}

void loop () {Blynk.run ();

blePeripheral.poll ();

утга ();

if (abs (flex1-m_flx1)> 10 эсвэл abs (flex2-m_flx2)> 10) {terminal.println ("Over Bend");

ая (дуугаралт, 1000);

}

if (abs (x-m_x)> 15 or abs (y-m_y)> 15 or abs (z-m_z)> 15) {terminal.println ("Хэт налуу");

ая (дуугаралт, 1000);

}

ая (дуугаралт, 0);

}

/*VO нь шалгалт тохируулгын горимыг заана. Энэ горимд мэдрэгч * -ийн утгыг EEPROM -д хадгална

*/

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

хэрэв (pinValue == 1) {

утга ();

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

EEPROM.write (2, x);

EEPROM.write (3, y);

EEPROM.write (4, z);

terminal.print ("шалгалт тохируулга амжилттай");

}

}

/ * Бид V1 товчлуурыг дарж одоогийн хазайлтын утгыг шаардаж болно

*/

BLYNK_WRITE (V1) {

int pinValue = param.asInt ();

хэрэв (pinValue == 1) {

утга (); terminal.print ("X өнцгийн хазайлт-");

терминал.хэвлэх (abs (x-m_x));

терминал.println ();

terminal.print ("Y өнцгийн хазайлт-");

терминал. хэвлэх (abs (y-m_y));

терминал.println ();

terminal.print ("Z өнцгийн хазайлт-");

терминал. хэвлэх (abs (z-m_z));

терминал.println ();

terminal.print ("Flex 1 хазайлт-");

терминал хэвлэх (abs (flx1-m_flx1));

терминал.println ();

terminal.print ("Flex 2 хазайлт-");

терминал хэвлэх (abs (flx2-m_flx2));

терминал.println ();

}

}

BLYNK_WRITE (V2) {

}

Зөвлөмж болгож буй: