
สารบัญ:
2025 ผู้เขียน: John Day | [email protected]. แก้ไขล่าสุด: 2025-01-23 15:12



สวัสดีทุกคน, ในคำแนะนำนี้ ฉันจะแสดงให้คุณเห็นว่าคุณสามารถส่งข้อมูลจาก Arduino ไปยังแอปพลิเคชัน Laravel ได้อย่างไร
ขั้นตอนที่ 1: บทนำ


เมื่อใดก็ตามที่เรามีโครงการที่ต้องการการแสดงข้อมูลและการบันทึก โดยปกติแล้วเราต้องมีข้อมูลอยู่บนเว็บ วิธีนี้ทำให้เราสามารถตรวจสอบสถานะของวัตถุจากระยะไกลหรือควบคุมอุปกรณ์ของเราได้จากทุกที่ในโลก
สำหรับโครงการนี้ เราจะใช้บอร์ด NodeMCU v1.0 ที่มีโมดูล ESP8266 12e บนบอร์ด นอกจากนี้ เราจะต้องใช้คอมพิวเตอร์ที่เราสามารถโฮสต์แอปพลิเคชัน Laravel ของเราได้ หากคุณต้องการทราบวิธีตั้งค่าสภาพแวดล้อมดังกล่าว ให้ตรวจสอบวิดีโอของฉัน
ขั้นตอนที่ 2: เตรียมแอปพลิเคชัน Laravel


ขั้นตอนแรกของเราคือการติดตั้ง Laravel ผ่าน Composer ฉันจะไม่ลงรายละเอียดเกี่ยวกับวิธีการทำเช่นนี้เนื่องจากเอกสารอธิบายรายละเอียดและคุณสามารถค้นหาได้ที่นี่
เพื่อให้การสาธิตนี้ง่ายขึ้น ภายใน Laravel เราจะบันทึกข้อมูลที่ส่งจาก Arduino ไปยังไฟล์ข้อความเพื่อให้เราตรวจสอบได้ในภายหลัง สำหรับสิ่งนั้น เราจะสร้างเส้นทาง POST ใหม่ในไฟล์ " api.php " ก่อน ในการเรียกกลับ เราจะใส่รายละเอียดคำขอเพื่อให้เราสามารถเรียกข้อมูลพารามิเตอร์ที่ส่งไปในภายหลัง
ในการเขียนลงไฟล์ ฉันกำลังใช้ส่วนหน้าการจัดเก็บจาก Laravel ด้วยวิธีผนวกที่สะดวก เมื่อเรียกวิธีนี้จะได้รับชื่อไฟล์และข้อมูลสตริงซึ่งจะเพิ่มข้อมูลนี้ลงในไฟล์ที่ระบุ หากไม่มีไฟล์ แสดงว่ากำลังสร้างไฟล์ในการโทรครั้งแรก
ข้อมูลที่เราเขียนในแต่ละแถวประกอบด้วยวันที่และเวลาปัจจุบัน ตามด้วยค่าที่ต้องการสำหรับอุณหภูมิและความชื้น หากคุณมีค่าดังกล่าวหลายค่า คุณสามารถทำซ้ำขั้นตอนการดึงข้อมูลเดียวกันทั้งหมดได้
ขั้นตอนที่ 3: เตรียม Arduino Sender


ทีนี้มาดูโค้ด Arduino และการส่งข้อมูลกัน
เพื่อให้บอร์ด NodeMCU สามารถเชื่อมต่อกับ WiFi ของเราและส่งคำขอได้ ก่อนอื่นเราต้องรวมไลบรารีหลายตัวไว้ด้านบน ต่อไปเราต้องระบุ SSID ของเครือข่ายที่เราเชื่อมต่อและรหัสผ่าน หากคุณกำลังใช้ Uno กับอีเทอร์เน็ตชิลด์ กระบวนการของคุณจะแตกต่างออกไป
นอกจากนี้เรายังบันทึก URL รูทของเซิร์ฟเวอร์ Laravel ที่เราเพิ่งสร้างขึ้นที่นี่ ในกรณีของฉัน นี่คือที่อยู่ IP ของคอมพิวเตอร์ในพื้นที่ของฉัน แต่คุณสามารถเพิ่ม URL โฮสต์ใดก็ได้ที่สามารถเข้าถึงรหัสได้
ในฟังก์ชันการตั้งค่า เราเริ่มต้นการสื่อสารแบบอนุกรมเพื่อให้เราสามารถตรวจสอบสิ่งที่เกิดขึ้นได้ นอกจากนี้ เราจำเป็นต้องตั้งค่าบอร์ด NodeMCU เพื่อให้สามารถเชื่อมต่อกับ WiFi ได้อย่างเหมาะสม เมื่อเสร็จแล้ว เราสามารถเริ่มต้นการเชื่อมต่อและรอจนกว่าเราได้รับที่อยู่ IP จากเราเตอร์
สำหรับตัวอย่างนี้ จริงๆ แล้ว ฉันไม่มีเซ็นเซอร์ใดๆ ที่เชื่อมต่อกับบอร์ด แต่ฉันแค่สร้างข้อมูลสุ่มโดยใช้ฟังก์ชันสุ่มและฉันกำลังส่งข้อมูลนั้นไป
ข้อมูลนี้จำเป็นต้องจัดเตรียมในรูปแบบของสตริงการสืบค้น และหลังจากเริ่มคำขอ HTTP เราจำเป็นต้องส่งข้อมูลโดยใช้วิธีการ POST บนไคลเอนต์ HTTP ส่วนหัวที่เราเพิ่มก่อนหน้านี้มีไว้เพื่อให้เซิร์ฟเวอร์ทราบว่ามีข้อมูลในคำขอที่ต้องรวบรวม
ด้วยเหตุนี้ เราจึงได้รับรหัสสถานะ HTTP ก่อนแล้วจึงรับส่วนข้อมูลการตอบกลับ หากทุกอย่างราบรื่น เราควรได้ 200 เป็นรหัส และเนื่องจากเราไม่ได้ส่งคืนสิ่งใดจากแอปพลิเคชัน Laravel ของเรา เพย์โหลดจะว่างเปล่า
หากรหัสสถานะไม่ใช่ 200 ด้วยเหตุผลบางประการ เพย์โหลดมักจะมีข้อความแสดงข้อผิดพลาดของสิ่งที่เกิดขึ้น
ในตอนท้าย เราต้องตรวจสอบให้แน่ใจว่าได้ปิดคำขอและรอสักครู่ในตัวอย่างของเรา 5 วินาทีเพื่อทำขั้นตอนเดิมอีกครั้ง
ผลลัพธ์คือเราได้รับค่าเหล่านั้นที่บันทึกไว้ในไฟล์ข้อความในการวนซ้ำทุกครั้ง เพื่อที่เราจะสามารถใช้ค่านี้เพื่อแสดงหรือแมปบนแผนภูมิได้ในภายหลัง
ขั้นตอนที่ 4: ขั้นตอนต่อไป

อย่างที่คุณเห็น กระบวนการนี้ค่อนข้างง่ายและสามารถขยายได้อย่างง่ายดายเพื่ออ่านค่าจากเซ็นเซอร์ต่างๆ และอาจเขียนลงในฐานข้อมูล ผลลัพธ์ของสิ่งที่คุณสามารถสร้างได้นั้นถูกจำกัดด้วยจินตนาการของคุณ เพื่อช่วยให้คุณเริ่มต้นได้ ด้านล่างนี้คือลิงก์ไปยังซอร์สโค้ดแบบเต็มที่ใช้ในตัวอย่าง
github.com/bkolicoski/arduino-laravel-comm…
ฉันหวังว่าคุณจะได้เรียนรู้สิ่งใหม่จาก Instructable นี้ และถ้าคุณทำ โปรดแจ้งให้เราทราบในความคิดเห็น ติดตามฉันใน Instructables และอย่าลืมสมัครรับข้อมูลจากช่อง YouTube ของฉัน
ขอบคุณ!
แนะนำ:
การสื่อสาร Arduino LoRa อย่างง่าย (มากกว่า 5 กม.): 9 ขั้นตอน

การสื่อสาร Arduino LoRa อย่างง่าย (มากกว่า 5 กม.): เราจะทดสอบ E32-TTL-100 กับห้องสมุดของฉัน เป็นโมดูลตัวรับส่งสัญญาณไร้สาย ทำงานที่ 410 441 MHz (หรือ 868MHz หรือ 915MHz) ตาม RFIC SX1278 ดั้งเดิมจาก SEMTECH มีการส่งแบบโปร่งใส ระดับ TTL โมดูลนี้ใช้ LORA
การสื่อสาร Modbus TCP ระหว่าง Arduino และอุปกรณ์อุตสาหกรรม: 3 ขั้นตอน

การสื่อสาร Modbus TCP ระหว่าง Arduino และอุปกรณ์อุตสาหกรรม: วิธีอุตสาหกรรมในการควบคุมบอร์ด Arduino ด้วย HMI อุตสาหกรรมและเชื่อมโยงไปยังเครือข่ายอุตสาหกรรมด้วยการสื่อสาร Modbus TCP
การสื่อสาร Arduino กับโหนด: 4 ขั้นตอน

Arduino to Node Communication: คำแนะนำนี้มีไว้เพื่อการสาธิตขั้นพื้นฐานเกี่ยวกับวิธีส่งและรับข้อมูลผ่าน UART (Serial) ระหว่างบอร์ดที่เข้ากันได้กับ Arduino สองบอร์ด
การสื่อสาร ESP-NOW Control Remoto De Vehículo, Joystick, Arduino Wemos.: 28 ขั้นตอน

การสื่อสาร ESP-NOW Control Remoto De Vehículo, Joystick, Arduino Wemos.: Todo parte de la idea de poder mover una silla de ruedas para personal discapacitado ผ่านทาง remota y poder acompañarlos sin necesidad de empujar la misma. ตัวอย่างจาก funcionamiento เขาสร้าง este proyecto เบื้องหลัง se pueden cambiar los cir
การสื่อสาร Python3 และ Arduino: 5 ขั้นตอน

การสื่อสาร Python3 และ Arduino: คำอธิบายโครงการในโครงการนี้ เราจะส่งคำสั่งจาก Python3 ไปยังบอร์ด Arduino ซึ่งจะทำให้สิ่งต่างๆ เข้าใจได้ง่ายขึ้นเมื่อทำการสื่อสารระหว่าง Python3 และ Arduino เราจะสร้าง "สวัสดีชาวโลก" ของแพลตฟอร์ม Arduino