فهرست مطالب:
- مرحله 1: مقدمه
- مرحله 2: راه حل
- مرحله 3: مدار
- مرحله 4: اتمام دستگاه
- مرحله 5: برنامه تلفن همراه
- مرحله 6: فایل های کد Blynk
- مرحله 7: عملکرد
- مرحله 8: فایل کد Arduino101
تصویری: با مانیتور سقوط ساختمان جان خود را نجات دهید: 8 مرحله
2024 نویسنده: John Day | [email protected]. آخرین اصلاح شده: 2024-01-30 08:55
سازه های بتنی ، فلزی ، چوبی را از نظر خم و زاویه و هشدارها در صورت انحراف از موقعیت اصلی تجزیه و تحلیل کنید.
مرحله 1: مقدمه
با توسعه رشته مهندسی عمران ، می توانیم بسیاری از سازه ها را در همه جا شناسایی کنیم. سازه های فلزی ، تیرهای بتنی ، ساختمانهای چند سکو برخی از آنها هستند. علاوه بر این ، اکثر ما عادت داریم در بیشتر ساعات روز در یک ساختمان یا خانه بمانیم. اما چگونه می توانیم اطمینان دهیم که ساختمان به اندازه کافی ایمن است تا بتواند بماند؟ اگر یک شکاف کوچک یا تیر بیش از حد در ساختمان شما وجود داشته باشد ، چطور؟ جان صدها نفر را به خطر خواهد انداخت.
زمین لرزه ها ، سختی خاک ، گردبادها و موارد دیگر ، می توانند عواملی برای ترک های داخلی و انحراف ساختارها یا تیرها از موقعیت خنثی باشند. اغلب ما از وضعیت سازه های اطراف آگاه نیستیم. شاید جایی که هر روز در آن قدم می زنیم تیرهای بتنی ترک خورده و در هر زمان ممکن است فرو ریزد. اما بدون اطلاع از آن ، ما آزادانه به داخل می رویم. به عنوان راه حلی برای این امر ، ما نیاز به یک روش خوب برای نظارت بر بتن ، چوب ، تیرهای فلزی سازه هایی داریم که نمی توانیم به آنها برسیم.
مرحله 2: راه حل
"تجزیه و تحلیل ساختار" یک دستگاه قابل حمل است که می تواند بر روی تیر بتنی ، سازه فلزی ، اسلب و غیره نصب شود. این دستگاه زاویه را اندازه گیری کرده و خم های محل نصب را تجزیه و تحلیل کرده و داده ها را از طریق بلوتوث به برنامه تلفن همراه ارسال می کند. این دستگاه از شتاب سنج/ ژیروسکوپ برای اندازه گیری زاویه در سطوح x ، y ، z و سنسور فلکس برای نظارت بر خم ها استفاده می کند. همه داده های خام پردازش می شوند و اطلاعات به برنامه تلفن همراه ارسال می شود.
مرحله 3: مدار
اجزای زیر را جمع آوری کنید.
- برد آردوینو 101
- 2 سنسور Flex
- 2 مقاومت 10k 10k
برای کاهش تعداد قطعات از برد Arduino 101 در اینجا استفاده می شود زیرا حاوی شتاب سنج و ماژول BLE است. سنسورهای فلکس برای اندازه گیری میزان خم شدن استفاده می شود زیرا مقاومت آن را در هنگام خم شدن تغییر می دهد. این مدار بسیار کوچک است زیرا فقط 2 مقاومت و 2 سنسور فلکس برای اتصال نیاز دارند. نمودار زیر نحوه اتصال سنسور فلکس به برد آردوینو را نشان می دهد.
یک پین مقاومت به پین A0 برد آردوینو وصل شده است. برای اتصال دومین سنسور فلکس ، همین روش را دنبال کنید. برای اتصال مقاومت از پین A1 استفاده کنید.
زنگ را مستقیماً به پایه D3 و پایه Gnd وصل کنید.
مرحله 4: اتمام دستگاه
پس از ایجاد مدار ، باید در داخل یک محفظه ثابت شود. با توجه به مدل سه بعدی فوق ، 2 سنسور فلکس باید در طرف مقابل محفظه قرار گیرد. برای درگاه USB فضایی برای برنامه ریزی برد و تامین برق ایجاد کنید. از آنجایی که این دستگاه برای استفاده طولانی مدت مورد نیاز است ، بهترین روش برای تأمین برق استفاده از یک پک برق ثابت است.
مرحله 5: برنامه تلفن همراه
Blynk را از Android Play Store بارگیری و نصب کنید. یک پروژه جدید برای Arduino 101 شروع کنید. روش ارتباطی را به عنوان BLE انتخاب کنید. 1 ترمینال ، 2 دکمه و BLE به رابط اضافه کنید. تصاویر زیر نحوه ایجاد رابط را نشان می دهد.
مرحله 6: فایل های کد Blynk
پس از ایجاد رابط کاربری در Blynk ، یک کد مجوز دریافت خواهید کرد. آن کد را در محل زیر وارد کنید.
#include #incar char char = "**************"؛ // کد مجوز Blynk
پایانه ویجت ترمینال (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 ("Calibration Succesful") ؛
پس از کالیبراسیون ، دستگاه انحراف را با مقادیر آستانه مقایسه می کند و در صورت فراتر رفتن از مقدار ، زنگ می زند.
ارزش های()؛ if (abs (flex1-m_flx1)> 10 یا abs (flex2-m_flx2)> 10) {
terminal.println ("Over Bend") ؛
تن (زنگ ، 1000) ؛
}
if (abs (x-m_x)> 15 یا abs (y-m_y)> 15 یا abs (z-m_z)> 15) {
terminal.println ("بیش از حد شیب دار") ؛
تن (زنگ ، 1000) ؛
}
مرحله 7: عملکرد
دستگاه را به ساختار مورد نیاز برای نظارت بچسبانید. 2 سنسور فلکس را نیز بچسبانید. برق را با استفاده از کابل USB به برد وصل کنید.
رابط Blynk را باز کنید. با لمس نماد بلوتوث با دستگاه ارتباط برقرار کنید. دکمه کالیبراسیون را فشار دهید. پس از کالیبراسیون ترمینال ، پیامی با عنوان "با موفقیت کالیبراسیون" نشان داده می شود. دستگاه را ریست کنید. اکنون ساختار را زیر نظر دارد و در صورت انحراف از تغییر شکل ، از طریق زنگ به شما اطلاع می دهد. با فشار دادن دکمه وضعیت می توانید مقادیر زاویه و خم را در هر زمان بررسی کنید. این ممکن است شبیه یک دستگاه کوچک به نظر برسد. اما استفاده از آن بی ارزش است. گاهی اوقات فراموش می کنیم که وضعیت خانه ، دفتر و غیره را با برنامه های شلوغ خود بررسی کنیم. اما اگر مشکل کوچکی وجود داشته باشد ، ممکن است مانند شکل بالا پایان یابد.
اما با استفاده از این دستگاه می توان صدها نفر را با اطلاع از مشکلات کوچک و در عین حال خطرناک ساختمان ها نجات داد.
مرحله 8: فایل کد Arduino101
#تعریف BLYNK_PRINT سریال
#تعریف flex1 A0
#تعریف flex2 A1 // سنسور فلکس و پین های زنگ را تعریف کنید
#زنگ را تعریف کنید 3
#شامل "CurieIMU.h"#شامل "BlynkSimpleCurieBLE.h"
#شامل "CurieBLE.h"
#شامل "Wire.h"
#شامل "EEPROM.h"
#شامل "SPI.h"
char auth = "**************"؛ // ترمینال ویجت ترمینال کد مجوز Blynk (V2) ؛
BLEPeripheral blePeripheral؛
int m_flx1 ، m_flx2 ، m_x ، m_y ، m_z ؛ // مقادیر ذخیره شده در حافظه
int flx1 ، flx2 ، x ، y ، z ؛ // قرائت های کنونی
void values () {for (int i = 0؛ i <100؛ i ++) {
flx1 = analogRead (flex1) ؛ // خواندن خام از حسگرها را دریافت کنید
flx2 = analogRead (flex2) ؛
x = CurieIMU.readAcuslerometer (X_AXIS)/100؛
y = CurieIMU.readAcuslerometer (Y_AXIS)/100 ؛
z = CurieIMU.readAcuslerometer (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) ؛ // تنظیم حالت های پین سنسور
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) ؛ // مقادیر سنسور پیش ذخیره شده را از EEPROM بخوانید
m_y = EEPROM.read (3) ؛
m_z = EEPROM.read (4) ؛
}
حلقه خالی () {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 یا abs (y-m_y)> 15 یا abs (z-m_z)> 15) {terminal.println ("بیش از حد شیب دار") ؛
تن (زنگ ، 1000) ؛
}
لحن (زنگ ، 0) ؛
}
/*VO حالت کالیبراسیون را نشان می دهد. در این حالت مقادیر حسگرها * در EEPROM ذخیره می شوند
*/
BLYNK_WRITE (V0) {int pinValue = param.asInt ()؛
if (pinValue == 1) {
ارزش های()؛
EEPROM.write (0 ، flx1) ؛ EEPROM.write (1 ، flx2) ؛
EEPROM.write (2 ، x) ؛
EEPROM.write (3 ، y) ؛
EEPROM.write (4 ، z) ؛
terminal.print ("Calibration Succesful") ؛
}
}
/ * ما می توانیم با فشار دادن دکمه V1 مقادیر انحراف فعلی * را درخواست کنیم
*/
BLYNK_WRITE (V1) {
int pinValue = param.asInt ()؛
if (pinValue == 1) {
ارزش های()؛ terminal.print ("انحراف زاویه X-") ؛
terminal.print (abs (x-m_x)) ؛
terminal.println ()؛
terminal.print ("انحراف زاویه Y-") ؛
terminal.print (abs (y-m_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) {
}
توصیه شده:
نقطه DIY مانند ربات چهارپا (ساختمان ساختمان V2): 9 مرحله
DIY Spot Like Quadruped Robot (ساختمان ساختمان V2): این یک ساختمان ساختمان با دستورالعمل های دقیق در مورد نحوه ساخت است https://www.instructables.com/DIY-Spot-Like-Quadru…robot dog v2. YouTube Robolab را دنبال کنید سایت برای اطلاعات بیشتر https://www.youtube.com/robolab19 این اولین ربات من است و من
کودک من را نجات دهید: صندلی هوشمند که در صورت فراموش کردن کودک در ماشین پیام های متنی ارسال می کند: 8 مرحله
کودک من را ذخیره کنید: صندلی هوشمند که کودک را در ماشین فراموش می کند پیام های متنی می فرستد: این ماشین در اتومبیل نصب شده است و به لطف آشکارساز روی صندلی کودک ، در صورت دریافت ، به ما هشدار می دهد - از طریق پیام کوتاه یا تماس تلفنی - بدون آوردن کودک با ما
یک شارژر خودرو را نجات دهید؟: 6 مرحله
شارژر خودرو را نجات می دهید؟: این شارژر اتومبیل برای iPhone من است. چرخش های زرد هنگام کار روشن می شوند. این فقط به صورت متناوب اتفاق می افتد. تصمیم گرفتم ببینم چه کاری می توان انجام داد
کلیپ های باتری 9V را از باتری های مرده نجات دهید: 10 مرحله
گیره های باتری 9V را از باتری های مرده نجات دهید: می توانید از بالای باتری قدیمی 9V به عنوان گیره باتری 9V برای پروژه های الکترونیکی مختلف استفاده کنید. "گیره 9V" همچنین در برخی از نگهدارنده های خمیر ولتاژهای مختلف استفاده می شود (یعنی یک بسته باتری 4AA.) در اینجا نحوه ساخت یک نسخه سیم دار خوب … (این من
از یک دوربین یکبار مصرف مجدد استفاده کنید و سیاره را نجات دهید! و صرفه جویی در هزینه: 4 مرحله
استفاده مجدد از یک دوربین یکبار مصرف و ذخیره سیاره! و اندکی پول ذخیره کنید: اخیراً در فروشگاه عکاسی محلی خود (jessops) برای خرید چند دوربین یکبار مصرف استفاده کردم زیرا مطمئن هستم که می دانید آنها برای افراد شوکه کننده سرگرم کننده هستند. فقط بپرسید و آنها را هدیه می کنند. من همچنین فکر کردم ، این شرکت ها دوربین ها را پس می گیرند ،