Talaan ng mga Nilalaman:
- Hakbang 1: Panimula
- Hakbang 2: Ihanda ang Aplikasyon ng Laravel
- Hakbang 3: Ihanda ang Nagpapadala ng Arduino
- Hakbang 4: Karagdagang Mga Hakbang
Video: Arduino to Laravel Communication: 4 Hakbang
2024 May -akda: John Day | [email protected]. Huling binago: 2024-01-30 13:13
Kumusta Lahat, Sa Instructable na ito, ipapakita ko sa iyo kung paano ka maaaring magpadala ng data mula sa isang Arduino patungo sa isang application ng Laravel.
Hakbang 1: Panimula
Tuwing mayroon kaming isang proyekto na nangangailangan ng ilang pagpapakita ng data at pag-log ito ay karaniwang kinakailangan na mayroon kaming magagamit na data sa web. Sa ganitong paraan maaari nating masubaybayan ang estado ng isang bagay mula sa malayuan o kahit na makontrol natin ang aming mga aparato mula sa kahit saan sa mundo.
Para sa proyektong ito, gagamit kami ng isang board na NodeMCU v1.0 na mayroong board na ESP8266 12e. Bilang karagdagan kakailanganin naming gumamit ng isang computer kung saan maaari naming ma-host ang aming application na Laravel. Kung nais mong malaman kung paano mo mai-set up ang nasabing kapaligiran suriin ang aking video doon.
Hakbang 2: Ihanda ang Aplikasyon ng Laravel
Ang aming unang hakbang ay i-install ang Laravel sa pamamagitan ng Composer. Hindi ko bibigyan ng mga detalye kung paano mo ito magagawa habang ipinapaliwanag ito ng dokumentasyon sa mga detalye at maaari mo itong makita dito.
Upang mapanatili ang demo na ito na simple, sa loob ng Laravel ay mai-log namin ang impormasyong ipadala mula sa Arduino sa isang text file upang masuri namin ang mga ito sa ibang pagkakataon. Para doon gagawa muna kami ng isang bagong ruta sa POST sa file na "api.php". Sa callback, ituturok namin ang mga detalye ng kahilingan upang maaari naming makuha muli ang mga parameter na ipinadala.
Upang sumulat sa isang file, gumagamit ako ng harapan ng Storage mula sa Laravel gamit ang madaling gamiting pamamaraan ng pagdugtong. Kapag tinawag ang pamamaraang ito ay tumatanggap ng isang pangalan ng file at data ng string kung saan idinadagdag nito ang data na ito sa tinukoy na file. Kung ang file ay wala, pagkatapos ito ay nilikha sa unang tawag.
Ang data na sinusulat namin sa bawat hilera ay binubuo ng kasalukuyang petsa at oras, na sinusundan ng mga halaga ng kahilingan para sa temperatura at halumigmig. Kung mayroon kang maraming mga nasabing halaga maaari mong ulitin ang parehong proseso ng pagkuha para sa lahat ng mga ito.
Hakbang 3: Ihanda ang Nagpapadala ng Arduino
Tingnan natin ngayon ang Arduino code at ang pagpapadala ng data.
Upang makakonekta ang board ng NodeMCU sa aming WiFi at magpadala ng isang kahilingan, kailangan muna naming isama ang maraming mga aklatan sa itaas. Susunod kailangan naming tukuyin ang SSID ng network na kumonekta kami at ang password nito. Kung gumagamit ka ng isang Uno na may isang kalasag ng Ethernet, magkakaiba ang iyong proseso.
Gayundin, nai-save namin dito ang root URL ng Laravel server na nilikha namin. Sa aking kaso ito ang IP address ng aking lokal na computer ngunit maaari kang magdagdag ng anumang host URL kung saan maa-access ang code.
Sa pag-andar ng pag-setup, sinisimulan namin ang serial na komunikasyon upang masubaybayan namin kung ano ang nangyayari. Bilang karagdagan kailangan naming i-setup ang board ng NodeMCU upang maaari itong kumonekta nang maayos sa WiFi. Kapag tapos na iyon, maaari na nating simulan ang koneksyon at maghintay hanggang sa makatanggap kami ng isang IP address mula sa router.
Para sa halimbawang ito, wala talaga akong anumang mga sensor na nakakonekta sa board. Sa halip ay bumubuo lang ako ng ilang random na data gamit ang random na pagpapaandar at ipinapadala ko na iyon.
Ang data na ito ay kailangang ihanda sa anyo ng isang query string at pagkatapos masimulan ang kahilingan sa HTTP, kailangan namin itong ipadala gamit ang POST na pamamaraan sa HTTP client. Ang header na idinagdag namin dati ay naroon upang ipaalam sa server na mayroong data sa kahilingan na kailangan nitong tipunin.
Bilang isang resulta, nakukuha muna namin ang code ng katayuan ng HTTP at pagkatapos ay ang payload ng tugon. Kung naging maayos ang lahat, dapat tayong makakuha ng 200 bilang code at dahil wala kaming naibalik na anupaman mula sa aming application na Laravel, walang bayad ang payload.
Kung sa ilang kadahilanan ang status code ay hindi 200, kung gayon ang payload ay karaniwang maglalaman ng mensahe ng error ng kung ano ang nangyari.
Sa pagtatapos, kailangan naming siguraduhin na isara ang kahilingan at maghintay ng isang tiyak na oras, 5 segundo sa aming halimbawa upang gawin muli ang parehong proseso.
Ang kinalabasan ay nakukuha natin ang mga halagang iyon na naka-save sa text file sa bawat pag-ulit upang magamit natin ito sa paglaon upang ipakita ito o mapa ito sa isang tsart.
Hakbang 4: Karagdagang Mga Hakbang
Tulad ng nakikita mo, ang proseso ay medyo simple at madaling mapalawak upang mabasa ang mga halaga mula sa iba't ibang mga sensor at marahil isulat ang mga ito sa isang database. Ang resulta ng kung ano ang maaari mong buuin sa ito ay limitado lamang ng iyong imahinasyon. Upang matulungan kang makapagsimula, sa ibaba ay isang link sa buong source code na ginamit sa halimbawa.
github.com/bkolicoski/arduino-laravel-comm…
Inaasahan kong nagawa mong matuto ng bago mula sa Instructable na ito at kung ginawa mo ito, mangyaring ipaalam sa akin sa mga komento, sundan ako sa Mga Instructable at huwag kalimutang mag-subscribe sa aking channel sa YouTube.
Salamat!
Inirerekumendang:
LoRa 3Km hanggang 8Km Wireless Communication Na May Mababang Gastos E32 (sx1278 / sx1276) Device para sa Arduino, Esp8266 o Esp32: 15 Hakbang
LoRa 3Km hanggang 8Km Wireless Communication Sa Mababang Gastos E32 (sx1278 / sx1276) Device para sa Arduino, Esp8266 o Esp32: Lumilikha ako ng isang library upang pamahalaan ang EBYTE E32 batay sa serye ng Semtech ng aparato ng LoRa, napakalakas, simple at murang aparato. Maaari mong makita Bersyon ng 3Km dito, bersyon 8Km dito. Maaari silang gumana sa layo na 3000m hanggang 8000m, at mayroon silang maraming mga tampok na
Arduino at Mobile Bluetooth Communication (messenger): 8 Hakbang
Arduino at Mobile Bluetooth Communication (messenger): Ang komunikasyon ay naglalaro ng isang mahalagang kadahilanan sa ating pang-araw-araw na buhay. Ngunit sa mga oras na ito ng lockdown na komunikasyon sa ating sariling pamilya o pakikipag-ugnay sa mga tao sa aming tahanan kung minsan ay nangangailangan ng mga mobile phone. Ngunit ang paggamit ng mga mobile phone para sa maikling r
Wireless Encrypted Communication Arduino: 5 Hakbang
Wireless Encrypted Communication Arduino: Kamusta sa lahat, Sa pangalawang artikulong ito, ipapaliwanag ko sa iyo kung paano gamitin ang chip Atecc608a upang ma-secure ang iyong wireless na komunikasyon. Para dito, gagamitin ko ang NRF24L01 + para sa Wireless na bahagi at ang Arduino UNO. Ang micro chip ATECC608A ay dinisenyo ng
Long Range, 1.8km, Arduino hanggang Arduino Wireless Communication Sa HC-12 .: 6 Mga Hakbang (na may Mga Larawan)
Long Range, 1.8km, Arduino to Arduino Wireless Communication Sa HC-12 .: Sa itinuturo na ito malalaman mo kung paano makipag-usap sa pagitan ng Arduinos sa isang mahabang distansya hanggang sa 1.8km sa bukas na hangin. Ang HC-12 ay isang wireless serial port module ng komunikasyon na napaka kapaki-pakinabang, napakalakas at madaling gamitin. Una kang
Mga Notification ng Realtime na Kaganapan Gamit ang NodeMCU (Arduino), Google Firebase at Laravel: 4 Hakbang (na may Mga Larawan)
Mga Abiso sa Realtime na Kaganapan Gamit ang NodeMCU (Arduino), Google Firebase at Laravel: Nais mo bang maabisuhan ka kapag may isang aksyon na ginawa sa iyong website ngunit ang email ay hindi tamang akma? Nais mo bang makarinig ng tunog o kampanilya sa tuwing nagbebenta? O mayroong pangangailangan para sa iyong agarang pansin dahil sa isang usbong