Мазмұны:
- 1 -қадам: Кіріспе
- 2 -қадам: Шешім
- 3 -қадам: Схема
- 4 -қадам: құрылғыны аяқтау
- 5 -қадам: мобильді қосымша
- 6 -қадам: Blynk код файлдары
- 7 -қадам: Функционалдылық
- 8 -қадам: Arduino101 код файлы
2024 Автор: John Day | [email protected]. Соңғы өзгертілген: 2024-01-30 10:26
Бетоннан, металдан, ағаштан жасалған конструкцияларды иілу мен бұрыштар мен ескертулер бойынша талдаңыз, егер олар бастапқы қалыптан ауытқып кетсе.
1 -қадам: Кіріспе
Құрылыс саласының дамуымен біз барлық жерде көптеген құрылыстарды анықтай аламыз. Металл конструкциялар, бетон арқалықтар, көп платформалы ғимараттар-олардың кейбіреулері. Сонымен қатар, көпшілігіміз тәуліктің көп уақытында ғимаратта немесе үйде болуға дағдыланғанбыз. Бірақ бұл ғимарат қауіпсіз қалуға қалай кепілдік бере аламыз? Егер сіздің ғимаратта кішкене жарықшақ немесе көлбеу сәуле болса ше? Бұл жүздеген адамдардың өміріне қауіп төндіруі мүмкін.
Жер сілкінісі, топырақтың қаттылығы, торнадо және басқа да көптеген факторлар ішкі жарықтар мен құрылымдардың немесе сәулелердің бейтарап позициядан ауытқуына әсер етуі мүмкін. Көбінесе біз қоршаған құрылымдардың жағдайын білмейміз. Мүмкін, біз күн сайын кіретін жерде бетон арқалықтар жарылған және кез келген уақытта құлап кетуі мүмкін. Бірақ біз білместен ішке емін -еркін енеміз. Бұл үшін бізге қол жетпейтін конструкциялардың бетон, ағаш, металл арқалықтарын бақылаудың жақсы әдісі қажет.
2 -қадам: Шешім
«Құрылым анализаторы» - бұл бетон арқалыққа, металл конструкцияға, плиталарға және т.б. орнатуға болатын портативті құрылғы. Бұл құрылғы бұрышты өлшейді және иілген жерлерді талдайды және Bluetooth арқылы деректерді мобильді қосымшаға жібереді. Бұл құрылғы x, y, z жазықтықтарындағы бұрышты өлшеу үшін акселерометр/ гироскоп пен иілуді бақылау үшін иілгіш сенсорды қолданады. Барлық бастапқы деректер өңделеді және мобильді қосымшаға ақпарат жіберіледі.
3 -қадам: Схема
Келесі компоненттерді жинаңыз.
- Arduino 101 тақтасы
- 2 X Flex сенсорлары
- 2 X 10 к резисторлар
Компоненттер санын азайту үшін мұнда Arduino 101 тақтасы қолданылады, себебі оның құрамында акселерометр мен BLE модулі бар. Иілу сенсорлары иілу мөлшерін өлшеу үшін қолданылады, себебі ол иілу кезінде оның қарсылығын өзгертеді. Схема өте кішкентай, тек 2 резистор мен 2 иілгіш сенсорды қосу қажет. Келесі диаграмма икемді сенсорды Arduino тақтасына қалай қосу керектігін көрсетеді.
Резистордың бір штыры Arduino тақтасының A0 түйреуішіне қосылады. Екінші иілгіш сенсорды қосу үшін сол процедураны орындаңыз. Резисторды қосу үшін A1 түйреуішін қолданыңыз.
Дыбыстық сигналды тікелей D3 және Gnd түйреуішіне қосыңыз.
4 -қадам: құрылғыны аяқтау
Схеманы жасағаннан кейін оны корпустың ішіне бекіту керек. Жоғарыда келтірілген 3D үлгісіне сәйкес, 2 икемді сенсорды корпустың қарама -қарсы жағына қою керек. USB портына тақтаны бағдарламалау және қуат беру үшін орын жасаңыз. Бұл құрылғыны ұзақ уақыт пайдалану қажет болғандықтан, электрмен жабдықтаудың ең жақсы әдісі - тұрақты қуат жинағын пайдалану.
5 -қадам: мобильді қосымша
Android Play дүкенінен Blynk жүктеп алыңыз және орнатыңыз. Arduino 101 үшін жаңа жобаны бастаңыз. BLE ретінде байланыс әдісін таңдаңыз. Интерфейске 1 терминал, 2 түйме және BLE қосыңыз. Келесі суреттер интерфейсті қалай жасау керектігін көрсетеді.
6 -қадам: Blynk код файлдары
Blynk интерфейсін жасағаннан кейін сізге авторизация коды келеді. Бұл кодты келесі жерге енгізіңіз.
#include #include char auth = «**************»; // Blynk авторизация коды
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 («Бұрылу»);
дыбыс (дыбыстық сигнал, 1000);
}
егер (abs (x-m_x)> 15 немесе abs (y-m_y)> 15 немесе abs (z-m_z)> 15) {
terminal.println («Шамадан тыс бейім»);
дыбыс (дыбыстық сигнал, 1000);
}
7 -қадам: Функционалдылық
Құрылғыны бақылау қажет құрылымға жабыстырыңыз. Сондай -ақ, 2 иілгіш сенсорды бекітіңіз. USB кабелінің көмегімен тақтаға қуат беріңіз.
Blynk интерфейсін ашыңыз. Bluetooth белгішесін түрту арқылы құрылғыға қосылыңыз. Калибрлеу түймесін басыңыз. Терминал калибрленгеннен кейін «Сәтті калибрленген» деген хабарлама пайда болады. Құрылғыны қалпына келтіріңіз. Енді ол құрылымды бақылайды және егер деформациядан ауытқып кетсе, дыбыстық сигнал арқылы хабарлайды. Кез келген уақытта Статус түймесін басу арқылы бұрышты және иілу мәндерін тексеруге болады. Бұл кішкентай құрылғыға ұқсауы мүмкін. Бірақ оның қолданылуы баға жетпес. Кейде біз үйдің, кеңсенің жағдайын, бос емес кестемізбен тексеруді ұмытып кетеміз. Бірақ егер кішкене мәселе болса, ол жоғарыдағы суреттегідей аяқталуы мүмкін.
Бірақ бұл құрылғы арқылы құрылыстардағы кішігірім, бірақ қауіпті мәселелерді хабарлау арқылы жүздеген адамдардың өмірін сақтауға болады.
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 авторизация коды 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.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;
}
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 (авторизация, 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.оқу (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 немесе abs (y-m_y)> 15 немесе 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 бұрышының ауытқуы-»);
terminal.print (abs (x-m_x));
terminal.println ();
terminal.print («Y бұрышының ауытқуы-»);
terminal.print (abs (y-m_y));
terminal.println ();
terminal.print («Z бұрышының ауытқуы-»);
терминал.баспа (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) {
}
Ұсынылған:
Жүрек соғу жиілігінің мониторымен жеңіл мазасыздану құрылғысы: 18 қадам (суреттермен)
Жүрек соғу жиілігінің мониторымен жеңіл алаңдаушылықты тудыратын құрылғыны демалыңыз: әлем толқып бара жатқанда, бәрі жоғары стресстік ортада. Колледж студенттері күйзеліс пен мазасыздану қаупіне жоғары. Емтихандар әсіресе студенттер үшін стресстің жоғары кезеңі және тыныс алу жаттығулары бар ақылды сағаттар
Үлкен Arduino СК сағаты екі дабылмен және температура мониторымен басқарылады, IR теледидар пульті: 5 қадам
Екі дабыл мен температура мониторы бар IR Arduino үлкен LCD сағаты қашықтан басқару пульті арқылы басқарылады: IR теледидарының қашықтан басқару пультімен басқарылатын екі дабыл мен температура мониторы бар Arduino негізіндегі СКД сағатын қалай құруға болады
ESP32 құлау детекторы: 5 қадам
ESP32 құлау детекторы: Мен DFRobot-ке осы жобаға демеушілік көрсеткені үшін алғыс айтамын. Мұнда пайдаланылған бөліктердің тізімі берілген: DFRobot ESP32 ESP-WROOM Module × 1-https://www.dfrobot.com/product-1559.htmlSilicon Labs CP2102 USB UART көпіріне × 1MCP73831 Li-Ion зарядтау құрылғысы IC × 1LM317BD2T A
Есік және есік мониторымен қосылған автоматты шамдар: 5 қадам
Есік пен есіктің мониторингі қосылған автоматты шамдар. Қараңғыда коммутатор тақтасын табу өте қиын сияқты, бірақ бұл жоба бұл мәселені шешуге өте пайдалы. Мұның шешімін білу үшін төмендегі қадамдарды орындаңыз
Stm32 -ге құлау: үй медиа орталығының қашықтан басқару құралы: 4 қадам (суреттермен)
Stm32 құлады: үй медиа орталығына арналған қашықтан басқару құралы: Бұл smt32 микро контроллеріне негізделген stm32f103c8t6 үй медиа орталығының қашықтан басқару пультінің толық прототипі. Сіз үй медиа орталығына арналған компьютерді қолдандыңыз делік. Бұл өте икемді шешім, ол сізге