สารบัญ:
- ขั้นตอนที่ 1: บทนำ
- ขั้นตอนที่ 2: วิธีแก้ปัญหา
- ขั้นตอนที่ 3: วงจร
- ขั้นตอนที่ 4: การตกแต่งอุปกรณ์
- ขั้นตอนที่ 5: แอพมือถือ
- ขั้นตอนที่ 6: ไฟล์รหัส Blynk
- ขั้นตอนที่ 7: ฟังก์ชันการทำงาน
- ขั้นตอนที่ 8: ไฟล์โค้ด Arduino101
วีดีโอ: ช่วยชีวิตคุณด้วยตัวตรวจสอบการยุบตัวอาคาร: 8 ขั้นตอน
2024 ผู้เขียน: John Day | [email protected]. แก้ไขล่าสุด: 2024-01-30 13:06
วิเคราะห์โครงสร้างคอนกรีต โลหะ ไม้สำหรับการโค้งงอและมุม และการแจ้งเตือนหากมีการเบี่ยงเบนจากตำแหน่งเดิม
ขั้นตอนที่ 1: บทนำ
ด้วยการพัฒนาสาขาวิศวกรรมโยธา เราสามารถระบุสิ่งปลูกสร้างจำนวนมากได้ทุกที่ โครงสร้างโลหะ คานคอนกรีต อาคารหลายแพลตฟอร์ม ยิ่งไปกว่านั้น พวกเราส่วนใหญ่เคยชินกับการอยู่ในอาคารหรือบ้านในช่วงเวลาส่วนใหญ่ของวัน แต่เราจะมั่นใจได้อย่างไรว่าอาคารนั้นปลอดภัยพอที่จะอยู่ได้? จะเกิดอะไรขึ้นถ้ามีรอยแตกขนาดเล็กหรือคานเอียงมากเกินไปในอาคารของคุณ มันจะเสี่ยงชีวิตหลายร้อยชีวิต
แผ่นดินไหว ความกระด้างของดิน พายุทอร์นาโด และอื่นๆ อีกมากมาย อาจเป็นปัจจัยสำหรับรอยแตกภายในและการเบี่ยงเบนของโครงสร้างหรือคานจากตำแหน่งที่เป็นกลาง ส่วนมากเราจะไม่รู้ถึงสถานการณ์ของโครงสร้างโดยรอบ บางทีที่ที่เราเดินทุกวันอาจมีคานคอนกรีตร้าวและพังได้ตลอดเวลา แต่เราเข้าไปข้างในได้โดยไม่รู้ตัว เพื่อเป็นการแก้ปัญหานี้ เราจำเป็นต้องมีวิธีการที่ดีในการตรวจสอบการก่อสร้างคอนกรีต ไม้ ไม้ คานโลหะ ซึ่งเราไม่สามารถเอื้อมถึงได้
ขั้นตอนที่ 2: วิธีแก้ปัญหา
“เครื่องวิเคราะห์โครงสร้าง” เป็นอุปกรณ์พกพาที่สามารถติดตั้งบนคานคอนกรีต โครงสร้างโลหะ แผ่นคอนกรีต ฯลฯ อุปกรณ์นี้วัดมุมและวิเคราะห์ส่วนโค้งที่ติดตั้งและส่งข้อมูลไปยังแอพมือถือผ่านบลูทูธ อุปกรณ์นี้ใช้มาตรความเร่ง/ไจโรสโคปเพื่อวัดมุมในระนาบ x, y, z และเซ็นเซอร์เฟล็กซ์เพื่อตรวจสอบส่วนโค้ง ข้อมูลดิบทั้งหมดได้รับการประมวลผลและส่งข้อมูลไปยังแอพมือถือ
ขั้นตอนที่ 3: วงจร
รวบรวมส่วนประกอบต่อไปนี้
- บอร์ด Arduino 101
- เซ็นเซอร์แบบยืดหยุ่น 2 X
- ตัวต้านทาน 2 X 10k
เพื่อลดจำนวนส่วนประกอบบอร์ด Arduino 101 จะใช้ที่นี่เนื่องจากมีมาตรความเร่งและโมดูล BLE เซ็นเซอร์แบบยืดหยุ่นใช้ในการวัดปริมาณการดัดงอเนื่องจากการเปลี่ยนแปลงของความต้านทานเมื่อดัดงอ วงจรมีขนาดเล็กมากเนื่องจากจำเป็นต้องเชื่อมต่อตัวต้านทานเพียง 2 ตัวและเซ็นเซอร์แบบยืดหยุ่น 2 ตัว แผนภาพต่อไปนี้แสดงวิธีเชื่อมต่อเซ็นเซอร์แบบยืดหยุ่นกับบอร์ด Arduino
ตัวต้านทานหนึ่งพินเชื่อมต่อกับพิน A0 ของบอร์ด Arduino ทำตามขั้นตอนเดียวกันเพื่อเชื่อมต่อเซ็นเซอร์แบบยืดหยุ่นตัวที่สอง ใช้พิน A1 เพื่อเชื่อมต่อตัวต้านทาน
เชื่อมต่อออดเข้ากับพิน D3 และพิน Gnd โดยตรง
ขั้นตอนที่ 4: การตกแต่งอุปกรณ์
หลังจากสร้างวงจรแล้วจะต้องทำการซ่อมภายในตู้ ตามแบบจำลอง 3 มิติข้างต้น ต้องวางเซ็นเซอร์แบบยืดหยุ่น 2 ตัวที่ด้านตรงข้ามของกล่องหุ้ม สร้างพื้นที่สำหรับพอร์ต USB เพื่อตั้งโปรแกรมบอร์ดและจ่ายไฟ เนื่องจากต้องใช้อุปกรณ์นี้เป็นเวลานาน วิธีที่ดีที่สุดในการจ่ายไฟคือการใช้ชุดจ่ายไฟแบบตายตัว
ขั้นตอนที่ 5: แอพมือถือ
ดาวน์โหลดและติดตั้ง Blynk จาก Android Play Store เริ่มโครงการใหม่สำหรับ Arduino 101 เลือกวิธีการสื่อสารเป็น BLE เพิ่ม 1 เทอร์มินัล 2 ปุ่มและ BLE ให้กับอินเทอร์เฟซ รูปภาพต่อไปนี้แสดงวิธีการสร้างอินเทอร์เฟซ
ขั้นตอนที่ 6: ไฟล์รหัส Blynk
หลังจากสร้างอินเทอร์เฟซบน Blynk แล้ว คุณจะได้รับรหัสอนุญาต ใส่รหัสที่สถานที่ต่อไปนี้
#include #include char auth = "****************"; //Blynk รหัสการให้สิทธิ์
วิดเจ็ตเทอร์มินัลเทอร์มินัล (V2);
BLEอุปกรณ์ต่อพ่วง blePeripheral;
ในกระบวนการสอบเทียบ การอ่านเซ็นเซอร์ปัจจุบันจะถูกบันทึกไว้ใน EEPROM
ค่า (); EEPROM.write(0, flx1);
EEPROM.write(1, flx2);
EEPROM.write(2, x);
EEPROM.write(3, y);
EEPROM.write(4, z);
terminal.print("สอบเทียบสำเร็จ");
หลังจากปรับเทียบแล้ว อุปกรณ์จะเปรียบเทียบค่าเบี่ยงเบนกับค่าเกณฑ์และส่งเสียงบี๊บหากค่านั้นเกินค่า
ค่า (); if(abs(flex1-m_flx1)>10 หรือ abs(flex2-m_flx2)>10){
terminal.println("โอเวอร์เบนด์");
โทนเสียง(ออด, 1,000);
}
if(abs(x-m_x)>15 หรือ abs(y-m_y)>15 หรือ abs(z-m_z)>15){
terminal.println("เอียงมาก");
โทนเสียง(ออด, 1,000);
}
ขั้นตอนที่ 7: ฟังก์ชันการทำงาน
ติดอุปกรณ์บนโครงสร้างที่จำเป็นในการตรวจสอบ ติดเซ็นเซอร์เฟล็กซ์ 2 ตัวเช่นกัน จ่ายไฟให้กับบอร์ดโดยใช้สาย USB
เปิดอินเทอร์เฟซ Blynk เชื่อมต่อกับอุปกรณ์โดยแตะที่ไอคอน Bluetooth กดปุ่มปรับเทียบ หลังจากปรับเทียบแล้ว หน้าจอแสดงค่าน้ำหนักจะแสดงข้อความว่า "สอบเทียบสำเร็จ" รีเซ็ตอุปกรณ์ ตอนนี้มันจะตรวจสอบโครงสร้างและแจ้งให้คุณทราบผ่านออดหากมีการผิดรูป คุณสามารถตรวจสอบค่ามุมและส่วนโค้งได้ตลอดเวลาโดยกดปุ่มสถานะ นี่อาจดูเหมือนอุปกรณ์ขนาดเล็ก แต่การใช้งานนั้นประเมินค่าไม่ได้ บางครั้งเราลืมตรวจสอบสภาพบ้าน ที่ทำงาน ฯลฯ ด้วยตารางงานที่ยุ่งของเรา แต่ถ้ามีปัญหาเล็กๆ น้อยๆ ก็อาจจะจบแบบรูปข้างบนครับ
แต่ด้วยอุปกรณ์นี้ ช่วยชีวิตหลายร้อยชีวิตได้ด้วยการแจ้งปัญหาเล็กๆ น้อยๆ ที่อันตรายในการก่อสร้าง
ขั้นตอนที่ 8: ไฟล์โค้ด Arduino101
#define BLYNK_PRINT ซีเรียล
#define flex1 A0
#define flex2 A1 //กำหนดเซ็นเซอร์แบบยืดหยุ่นและหมุดกริ่ง
#กำหนดออด3
#include "CurieIMU.h"#include "BlynkSimpleCurieBLE.h"
#include "CurieBLE.h"
#รวม "Wire.h"
#รวม "EEPROM.h"
#รวม "SPI.h"
char auth = "****************"; //Blynk รหัสอนุญาต WidgetTerminal เทอร์มินัล (V2);
BLEอุปกรณ์ต่อพ่วง blePeripheral;
int m_flx1, m_flx2, m_x, m_y, m_z; //ค่าที่บันทึกไว้ในหน่วยความจำ
int flx1, flx2, x, y, z; //ค่าที่อ่านอยู่
ค่าเป็นโมฆะ(){ สำหรับ(int i=0;i<100;i++){
flx1 = analogRead (flex1); //รับค่าการอ่านข้อมูลดิบจากเซ็นเซอร์
flx2 = analogRead (flex2);
x = CurieIMU.readAccelerometer(X_AXIS)/100;
y = CurieIMU.readAccelerometer(Y_AXIS)/100;
z = CurieIMU.readAccelerometer(Z_AXIS)/100;
ล่าช้า(2);
}
flx1=flx1/100; flx2=flx2/100;
x = x/100; //รับค่าเฉลี่ยของค่าที่อ่านได้
y = y/100;
z = z/100;
}
การตั้งค่าเป็นโมฆะ () { //pinMode (3, OUTPUT);
โหมดพิน (flex1, INPUT);
โหมดพิน (flex2, INPUT); //การตั้งค่าโหมดพินเซ็นเซอร์
Serial.begin(9600);
blePeripheral.setLocalName("Arduino101Blynk"); blePeripheral.setDeviceName("Arduino101Blynk");
blePeripheral.setAppearance(384);
Blynk.begin(รับรองความถูกต้อง blePeripheral);
blePeripheral.begin();
m_flx1 = EEPROM.read(0); m_flx2 = EEPROM.read(1);
m_x = EEPROM อ่าน (2); // อ่านค่าเซ็นเซอร์ที่บันทึกไว้ล่วงหน้าจาก EEPROM
m_y = EEPROM อ่าน (3);
m_z = EEPROM อ่าน (4);
}
วงเป็นโมฆะ () { Blynk.run ();
blePeripheral.poll();
ค่า ();
if(abs(flex1-m_flx1)>10 หรือ abs(flex2-m_flx2)>10){ terminal.println("Over Bend");
โทนเสียง(ออด, 1,000);
}
if(abs(x-m_x)>15 หรือ abs(y-m_y)>15 หรือ abs(z-m_z)>15){ terminal.println("Over Inclined");
โทนเสียง(ออด, 1,000);
}
เสียง(ออด, 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 มุมเบี่ยงเบน- ");
terminal.print(abs(x-m_x));
terminal.println();
terminal.print("ค่าเบี่ยงเบนมุม Y- ");
terminal.print(abs(ym_y));
terminal.println();
terminal.print("มุม Z ส่วนเบี่ยงเบน - ");
terminal.print(abs(z-m_z));
terminal.println();
terminal.print("Flex 1 ส่วนเบี่ยงเบน- ");
terminal.print(abs(flx1-m_flx1));
terminal.println();
terminal.print("Flex 2 ส่วนเบี่ยงเบน- ");
terminal.print(abs(flx2-m_flx2));
terminal.println();
}
}
BLYNK_WRITE(V2){
}
แนะนำ:
การออกแบบเกมในการสะบัดใน 5 ขั้นตอน: 5 ขั้นตอน
การออกแบบเกมในการสะบัดใน 5 ขั้นตอน: การตวัดเป็นวิธีง่ายๆ ในการสร้างเกม โดยเฉพาะอย่างยิ่งเกมปริศนา นิยายภาพ หรือเกมผจญภัย
การตรวจจับใบหน้าบน Raspberry Pi 4B ใน 3 ขั้นตอน: 3 ขั้นตอน
การตรวจจับใบหน้าบน Raspberry Pi 4B ใน 3 ขั้นตอน: ในคำแนะนำนี้ เราจะทำการตรวจจับใบหน้าบน Raspberry Pi 4 ด้วย Shunya O/S โดยใช้ Shunyaface Library Shunyaface เป็นห้องสมุดจดจำใบหน้า/ตรวจจับใบหน้า โปรเจ็กต์นี้มีจุดมุ่งหมายเพื่อให้เกิดความเร็วในการตรวจจับและจดจำได้เร็วที่สุดด้วย
วิธีการติดตั้งปลั๊กอินใน WordPress ใน 3 ขั้นตอน: 3 ขั้นตอน
วิธีการติดตั้งปลั๊กอินใน WordPress ใน 3 ขั้นตอน: ในบทช่วยสอนนี้ ฉันจะแสดงขั้นตอนสำคัญในการติดตั้งปลั๊กอิน WordPress ให้กับเว็บไซต์ของคุณ โดยทั่วไป คุณสามารถติดตั้งปลั๊กอินได้สองวิธี วิธีแรกคือผ่าน ftp หรือผ่าน cpanel แต่ฉันจะไม่แสดงมันเพราะมันสอดคล้องกับ
การลอยแบบอะคูสติกด้วย Arduino Uno ทีละขั้นตอน (8 ขั้นตอน): 8 ขั้นตอน
การลอยแบบอะคูสติกด้วย Arduino Uno ทีละขั้นตอน (8 ขั้นตอน): ตัวแปลงสัญญาณเสียงล้ำเสียง L298N Dc ตัวเมียอะแดปเตอร์จ่ายไฟพร้อมขา DC ตัวผู้ Arduino UNOBreadboardวิธีการทำงาน: ก่อนอื่น คุณอัปโหลดรหัสไปยัง Arduino Uno (เป็นไมโครคอนโทรลเลอร์ที่ติดตั้งดิจิตอล และพอร์ตแอนะล็อกเพื่อแปลงรหัส (C++)
เครื่อง Rube Goldberg 11 ขั้นตอน: 8 ขั้นตอน
เครื่อง 11 Step Rube Goldberg: โครงการนี้เป็นเครื่อง 11 Step Rube Goldberg ซึ่งออกแบบมาเพื่อสร้างงานง่ายๆ ในรูปแบบที่ซับซ้อน งานของโครงการนี้คือการจับสบู่ก้อนหนึ่ง