Բովանդակություն:
- Քայլ 1: Ներածություն
- Քայլ 2. Պատրաստեք Laravel հավելվածը
- Քայլ 3. Պատրաստեք Arduino ուղարկողը
- Քայլ 4: Հետագա քայլեր
Video: Arduino- ից Laravel- ի հաղորդակցություն. 4 քայլ
2024 Հեղինակ: John Day | [email protected]. Վերջին փոփոխված: 2024-01-30 09:48
Բարեւ բոլորին, Այս Ուղեցույցում ես ձեզ ցույց կտամ, թե ինչպես կարող եք տվյալներ ուղարկել Arduino- ից Laravel ծրագրին:
Քայլ 1: Ներածություն
Ամեն անգամ, երբ մենք ունենք նախագիծ, որը պահանջում է որոշ տվյալների ցուցադրում և գրանցում, սովորաբար պահանջվում է, որ մենք ունենանք տվյալներ համացանցում: Այս կերպ մենք, հնարավոր է, կարող ենք հեռակա կարգով վերահսկել օբյեկտի վիճակը կամ նույնիսկ վերահսկել մեր սարքերը աշխարհի ցանկացած կետից:
Այս նախագծի համար մենք կօգտագործենք NodeMCU v1.0 տախտակ, որի վրա կա ESP8266 12e մոդուլ: Բացի այդ, մենք պետք է օգտագործենք համակարգիչ, որտեղ կարող ենք տեղակայել մեր Laravel ծրագիրը: Եթե ցանկանում եք պարզել, թե ինչպես կարող եք կարգավորել նման միջավայրը, ստուգեք դրա մասին իմ տեսանյութը:
Քայլ 2. Պատրաստեք Laravel հավելվածը
Մեր առաջին քայլը Laravel- ի տեղադրումն է Composer- ի միջոցով: Չեմ մանրամասնի, թե ինչպես կարող եք դա անել, քանի որ փաստաթղթերը դա մանրամասն բացատրում են, և դուք կարող եք գտնել այստեղ:
Այս ցուցադրական ցուցադրումը պարզ պահելու համար Laravel- ում մենք մուտք կգործենք Arduino- ից ուղարկվող տեղեկատվությունը տեքստային ֆայլ, որպեսզի հետագայում դրանք վերանայենք: Դրա համար մենք նախ կստեղծենք նոր POST երթուղի «api.php» ֆայլում: Հետադարձ կապում մենք ներարկելու ենք հարցման մանրամասները, որպեսզի հետագայում կարողանանք ստանալ ուղարկվող պարամետրերը:
Ֆայլին գրելու համար ես օգտագործում եմ Laravel- ի Storage ֆասադը `դրա հարմար հավելվածի մեթոդով: Երբ կոչվում է, այս մեթոդը ստանում է ֆայլի անուն և տողային տվյալներ, որտեղ այն ավելացնում է նշված ֆայլը: Եթե ֆայլը ներկա չէ, ապա այն ստեղծվում է առաջին զանգի ժամանակ:
Տվյալները, որոնք մենք գրում ենք յուրաքանչյուր տողում, բաղկացած են ընթացիկ ամսաթվից և ժամից, որին հաջորդում են ջերմաստիճանի և խոնավության պահանջների արժեքները: Եթե ունեք բազմաթիվ այդպիսի արժեքներ, կարող եք կրկնել նույն որոնման գործընթացը բոլորի համար:
Քայլ 3. Պատրաստեք Arduino ուղարկողը
Եկեք հիմա նայենք Arduino ծածկագրին և տվյալների ուղարկմանը:
Որպեսզի NodeMCU- ի խորհուրդը կարողանա միանալ մեր WiFi- ին և հարցում ուղարկել, նախ պետք է մի քանի գրադարան ներառել վերևում: Հաջորդը մենք պետք է նշենք այն ցանցի SSID- ը, որին միանում ենք և դրա գաղտնաբառը: Եթե դուք օգտագործում եք Uno Ethernet վահանով, ապա ձեր ընթացքը այլ կլինի:
Բացի այդ, մենք այստեղ պահում ենք նոր ստեղծած Laravel սերվերի արմատային URL- ը: Իմ դեպքում սա իմ տեղական համակարգչի IP հասցեն է, բայց դուք կարող եք ավելացնել ցանկացած տանտիրոջ URL, որտեղ կոդը հասանելի է:
Կարգավորման գործառույթում մենք սկսում ենք սերիական հաղորդակցությունը, որպեսզի կարողանանք վերահսկել, թե ինչ է կատարվում: Բացի այդ, մենք պետք է կարգավորենք NodeMCU խորհուրդը, որպեսզի այն կարողանա պատշաճ կերպով միանալ WiFi- ին: Երբ դա արվի, մենք կարող ենք սկսել կապը և սպասել, մինչև երթուղիչից IP հասցե ստանալը:
Այս օրինակի համար ես իրականում տախտակին միացված տվիչներ չունեմ: Փոխարենը, ես պարզապես ստեղծում եմ որոշ պատահական տվյալներ ՝ օգտագործելով պատահական գործառույթը, և ես դրանք ուղարկում եմ:
Այս տվյալները պետք է պատրաստվեն հարցման տողի տեսքով և HTTP հարցումը սկսելուց հետո մենք պետք է այն ուղարկենք HTTP հաճախորդի վրա POST մեթոդով: Վերնագիրը, որը մենք ավելացրել էինք նախկինում, կա սերվերին տեղեկացնելու համար, որ պահանջի մեջ կան տվյալներ, որոնք անհրաժեշտ է հավաքել:
Արդյունքում, մենք նախ ստանում ենք HTTP կարգավիճակի կոդը, այնուհետև արձագանքման բեռնվածությունը: Եթե ամեն ինչ հարթ ընթանա, մենք պետք է ստանանք 200 ՝ որպես ծածկագիր, և քանի որ մենք ոչինչ չենք վերադարձել մեր Laravel հավելվածից, բեռնվածությունը դատարկ կլինի:
Եթե ինչ -ինչ պատճառներով կարգավիճակի կոդը 200 չէ, ապա բեռնվածությունը սովորաբար պարունակում է տեղի ունեցածի սխալի հաղորդագրություն:
Վերջում, մենք պետք է անպայման փակենք հարցումը և սպասենք որոշակի ժամանակ ՝ 5 վայրկյան մեր օրինակում ՝ նույն գործընթացը նորից կատարելու համար:
Արդյունքն այն է, որ մենք ստանում ենք այդ արժեքները, որոնք պահվում են տեքստային ֆայլում յուրաքանչյուր կրկնության վրա, որպեսզի հետագայում կարողանանք օգտագործել այն ՝ այն ցուցադրելու կամ գծապատկերում քարտեզագրելու համար:
Քայլ 4: Հետագա քայլեր
Ինչպես տեսնում եք, գործընթացը բավականին պարզ է և կարող է հեշտությամբ ընդլայնվել `տարբեր սենսորների արժեքները կարդալու և գուցե դրանք տվյալների բազայում գրի առնելու համար: Այն, ինչ կարող եք կառուցել դրանով, սահմանափակվում է ձեր երևակայությամբ: Սկսելու համար ՝ ստորև բերված է օրինակում օգտագործված ամբողջական աղբյուրի հղումը:
github.com/bkolicoski/arduino-laravel-comm…
Հուսով եմ, որ դուք կարողացաք ինչ -որ նոր բան սովորել այս Instructable- ից, և եթե դա արեցիք, ապա խնդրում եմ ինձ տեղյակ պահեք մեկնաբանություններում, հետևեք ինձ Instructables- ին և մի մոռացեք բաժանորդագրվել իմ YouTube ալիքին:
Շնորհակալություն
Խորհուրդ ենք տալիս:
LoRa 3 կմ -ից 8 կմ անլար հաղորդակցություն ցածր գնով E32 (sx1278/sx1276) սարք Arduino- ի, Esp8266- ի կամ Esp32- ի համար ՝ 15 քայլ
LoRa 3Km- ից 8Km անլար հաղորդակցություն ցածր գնով E32 (sx1278/sx1276) Սարք Arduino- ի, Esp8266- ի կամ Esp32- ի համար. Ես ստեղծում եմ գրադարան ՝ EBYTE E32- ը կառավարելու համար ՝ LoRa սարքի Semtech շարքի հիման վրա, շատ հզոր, պարզ և էժան սարք: Դուք կարող եք գտնել 3Km տարբերակ այստեղ, 8Km տարբերակ այստեղ Նրանք կարող են աշխատել 3000 մ -ից 8000 մ հեռավորության վրա, և նրանք ունեն բազմաթիվ հնարավորություններ
Անլար կոդավորված հաղորդակցություն Arduino. 5 քայլ
Անլար կոդավորված հաղորդակցություն Arduino. Բարև բոլորին, այս երկրորդ հոդվածում ես ձեզ կբացատրեմ, թե ինչպես օգտագործել Atecc608a չիպը `ձեր անլար հաղորդակցությունն ապահովելու համար: Դրա համար ես կօգտագործեմ NRF24L01+ անլար մասի և Arduino UNO- ի համար: ATECC608A միկրո չիպը նախագծվել է
Arduino սերիական հաղորդակցություն. 5 քայլ
Arduino սերիական հաղորդակցություն. Arduino- ի շատ նախագծեր հիմնված են մի քանի Arduinos- ի միջև տվյալների փոխանցման վրա: Անկախ նրանից, թե դուք հոբբիստ եք, ով կառուցում է RC մեքենա, RC ինքնաթիռ, կամ հեռակառավարվող էկրանով եղանակային կայան է նախագծում, դուք պետք է իմանաք, թե ինչպես կարելի է հուսալիորեն: սերիայի փոխանցում
Modbus TCP հաղորդակցություն Arduino- ի և արդյունաբերական սարքերի միջև. 3 քայլ
Modbus TCP հաղորդակցություն Arduino- ի և արդյունաբերական սարքերի միջև. Արդյունաբերական միջոց ՝ արդյունաբերական HMI- ով Arduino տախտակը կառավարելու և այն Modbus TCP հաղորդակցությամբ արդյունաբերական ցանցին կապելու համար:
Երկար հեռավորություն, 1.8 կմ, Arduino- ից Arduino անլար հաղորդակցություն HC-12- ով. 6 քայլ (նկարներով)
Երկար հեռավորություն, 1.8 կմ, Arduino- ից Arduino անլար հաղորդակցություն HC-12- ի հետ. կապի մոդուլ, որը շատ օգտակար է, չափազանց հզոր և հեշտ օգտագործման համար: Նախ կթողնեք