Mục lục:
- Quân nhu
- Bước 1: Đơn vị phần cứng
- Bước 2: Mạch
- Bước 3: Giới thiệu về Firebase
- Bước 4: Cơ sở dữ liệu thời gian thực
- Bước 5: Thiết lập các chức năng của Firebase
- Bước 6: Mã
- Bước 7: Bước tùy chọn (Xây dựng bao vây)
- Bước 8: Đang thực hiện…
- Bước 9: Tiến xa hơn…
Video: The Mappifier - Hệ thống lập bản đồ + thông báo: 9 bước
2024 Tác giả: John Day | [email protected]. Sửa đổi lần cuối: 2024-01-30 13:31
Lái xe ban đêm khá nhiều niềm vui. Nhưng thông thường, nó trở thành một cơn ác mộng, dưới dạng những con vật băng qua đường (đặc biệt là những con chó và mèo hoang, những người chờ bạn lái xe đến gần chúng để chúng có thể băng qua !!). Vì vậy, tôi đã nghĩ đến việc làm một cái gì đó cảnh báo bạn khi bạn đến gần những vị trí dễ bị tổn thương này, để bạn có thể lái xe cẩn thận hơn.
Hệ thống có hai phần: Thu thập dữ liệu & Truy xuất dữ liệu. Phần đầu tiên lấy dữ liệu vị trí, đó là những vị trí có nhiều xác suất động vật đi qua hơn. Dữ liệu này phải được thêm theo cách thủ công và được cập nhật trên bản đồ. Phần sau lấy vị trí hiện tại của chúng tôi và sau đó so sánh nó với dữ liệu đã thu thập và các thông báo hoặc cảnh báo thích hợp được cung cấp.
Quân nhu
Phần cứng được sử dụng
Bảng phát triển WiFi ESP8266
Mô-đun GPS Ublox NEO-6M
Đèn LED
Nút nhấn tạm thời
Phần mềm được sử dụng
Arduino IDE
Bất kỳ trình soạn thảo JavaScript nào
Firebase (để lưu trữ và truy xuất dữ liệu)
Bước 1: Đơn vị phần cứng
Phần cứng được yêu cầu hoạt động theo hai cách (chế độ): 1) Lưu trữ vị trí vào Cơ sở dữ liệu: Đây là một phần chính trong quá trình thu thập dữ liệu; vị trí được mô-đun GPS truy xuất được gửi đến cơ sở dữ liệu firebase thông qua bảng phát triển WiFi ESP8266.
2) Cung cấp thông báo trong quá trình điều hướng: Trong quá trình điều hướng, vị trí hiện tại được truy xuất và được gửi đến cơ sở dữ liệu. Sau mỗi lần cập nhật vị trí, khoảng cách giữa vị trí hiện tại và những vị trí đó (đã được lưu trữ trong quá trình thu thập dữ liệu) được tính toán và được khôi phục bởi mô-đun ESP8266, sau đó sẽ cảnh báo người dùng theo khoảng cách của người dùng từ những vị trí được lưu trữ đó.
Tôi đã thêm ba đèn LED để thông báo sự thay đổi trong các chế độ, cũng như cập nhật thành công vào cơ sở dữ liệu và một đèn cảnh báo để thông báo sự gần gũi của người dùng với vị trí được lưu trữ.
Nút nhấn được sử dụng để lưu trữ vị trí chỉ trong một cú nhấp chuột (trong chế độ lưu trữ / thu thập dữ liệu) và cũng để thay đổi giữa các chế độ này.
Cung cấp năng lượng
Ban đầu, pin Lipo 3,7V 300mAh được sử dụng, nhưng nó đã gây ra một số vấn đề. Vấn đề chính là đặt lại ESP8266 (có thể do mức tăng đột biến hiện tại). Ngoài ra, pin không kéo dài nhiều. Cuối cùng một ngân hàng điện đã đến giải cứu tôi.
Bước 2: Mạch
Bước 3: Giới thiệu về Firebase
Firebase là một nền tảng phát triển ứng dụng web và di động, thuộc sở hữu của Google. Nó có nhiều tính năng, nhưng ở đây tôi chỉ sử dụng hai trong số chúng, Cơ sở dữ liệu thời gian thực và Chức năng đám mây.
Để bắt đầu trên Firebase, 1. Đầu tiên hãy truy cập trang web firebase.
2. Bây giờ điều hướng đến bảng điều khiển và nhấp vào tạo một dự án mới.
3. Bạn cần cung cấp tên dự án cùng với các chi tiết khác để tạo dự án.
4. Sau khi dự án được tạo, nhấp vào tùy chọn cơ sở dữ liệu từ ngăn bên để tạo cơ sở dữ liệu mới.
5. Làm tương tự cho các chức năng.
Đây là các bước chung để tạo một dự án, firebase được ghi chép đầy đủ và có nhiều loạt video youtube dành cho người mới bắt đầu, vui lòng xem qua để hiểu thêm.
Bước 4: Cơ sở dữ liệu thời gian thực
Sau khi bạn tạo cơ sở dữ liệu, bước tiếp theo là xem cách dữ liệu trong cơ sở dữ liệu được lưu trữ và có thể được truy cập. Để ghi hoặc đọc vào / từ cơ sở dữ liệu, bạn cần phải cấu hình các quy tắc cơ sở dữ liệu. Đối với mục đích phát triển, chúng tôi có thể sử dụng một quy tắc mở để bất kỳ ai có tham chiếu cơ sở dữ liệu đều có thể đọc / ghi nhưng hãy cẩn thận trong khi định cấu hình các quy tắc. Cơ sở dữ liệu lưu trữ dữ liệu ở định dạng JSON và được đồng bộ hóa với tất cả các thiết bị được kết nối với Bạn có thể thêm các nút con bằng cách sử dụng dấu '+' nhưng các nút cũng có thể được tạo theo chương trình. Tất cả dữ liệu mà chúng tôi tải lên cơ sở dữ liệu ở chế độ 'lưu trữ' (lưu trữ vị trí được thu thập) sẽ được lưu trữ ở đây dưới dạng các nút riêng biệt trong khi dữ liệu ở chế độ 'thông báo' (truy xuất dữ liệu khi điều hướng) được cập nhật mọi lúc (kiểm tra hình ảnh).
Bước 5: Thiết lập các chức năng của Firebase
Chúng tôi cần một cái gì đó để tính toán mức độ gần gũi của vị trí hiện tại với các vị trí được lưu trữ và các chức năng được kích hoạt cơ sở dữ liệu nền sẽ thực hiện công việc của chúng tôi. Các hàm được viết bằng javascript và cần được triển khai trên firebase.
Bạn cần cài đặt node.js trên máy tính của mình.
1) Bây giờ tải xuống giao diện dòng lệnh firebase bằng cách sử dụng lệnh "npm install -g firebase-tools" trên dấu nhắc lệnh của bạn
2) Bây giờ bạn cần đăng nhập vào firebase bằng lệnh "firebase login" (Bạn cần cung cấp mật khẩu đăng nhập gmail nếu bạn chưa đăng nhập)
3) Sau đó, điều hướng đến thư mục dự án của bạn và bắt đầu chức năng bằng lệnh "firebase init". Bạn sẽ cần phải chọn tùy chọn 'chức năng' để bắt đầu các chức năng firebase cho dự án của mình.
4) Bây giờ bạn cần đi đến thư mục 'functions' trong thư mục dự án của bạn và tìm tệp 'index.js'.
5) Chỉnh sửa tệp bằng trình soạn thảo văn bản và chỉnh sửa tệp / thay thế tệp bằng mappifier_ Chức năng.txt. (Đây thực sự là chức năng của chúng tôi)
6) Cuối cùng triển khai chức năng của bạn bằng cách sử dụng "triển khai firebase" trên dấu nhắc lệnh.
Bạn có thể kiểm tra xem chức năng có được triển khai trong menu chức năng trên bảng điều khiển firebase của mình hay không
Bước 6: Mã
Đối với ESP8266:
Bo mạch kết nối với WiFi và Firebase bằng thông tin đăng nhập và chờ một lần nhấn nút. Theo khoảng thời gian nhấn nút, các chế độ khác nhau được bắt đầu. Trong chế độ thu thập dữ liệu (chúng ta hãy gọi đây là chế độ "lưu trữ"), mỗi lần nhấn nút sẽ dẫn đến vị trí hiện tại được gửi đến cơ sở dữ liệu trong khi ở chế độ truy xuất dữ liệu ("chế độ thông báo"), vị trí hiện tại được gửi đến cơ sở dữ liệu và khoảng cách được truy xuất từ cơ sở dữ liệu tự động. Tôi đã thêm đèn LED để cảnh báo (gần vị trí được đánh dấu) và thông báo (như sửa lỗi GPS, kết nối WiFi, ghi cơ sở dữ liệu thành công, thay đổi chế độ, v.v.).
Đối với chức năng Firebase:
Hàm này kiểm tra việc ghi vào nút 'vị trí hiện tại' trên cơ sở dữ liệu và tính toán khoảng cách giữa các vị trí trên cơ sở dữ liệu và vị trí hiện tại, sau đó tìm khoảng cách nhỏ nhất sau đó được ghi vào nút 'khoảng cách' trên cơ sở dữ liệu.
Hãy nhớ thêm thông tin đăng nhập wifi và thông tin xác thực firebase trước khi bạn tải lên chương trình của mình. (Vui lòng xem hình ảnh). Ngoài ra, nếu bạn chưa quen với ESP8266 và để viết mã chúng trên Arduino IDE, hãy tham khảo những điều này.
Bước 7: Bước tùy chọn (Xây dựng bao vây)
Để làm cho phần cứng nhỏ gọn để có thể gắn nó vào, tôi đã làm một vỏ bọc nhỏ để lắp chúng vào bên trong. Một vài lỗ đã được tạo để gắn đèn LED và kết nối cáp USB. Nhưng sự bao vây cuối cùng đã nằm ngoài sự mong đợi của tôi !! Nó vừa vặn bên trong lòng bàn tay của tôi một cách hoàn hảo, và nó rất dễ dàng lắp vào tay cầm chu kỳ và trên vô lăng.
Bước 8: Đang thực hiện…
Đây là một video nhỏ trình diễn cả hai chế độ (lưu trữ và thông báo) với đèn LED cảnh báo và thông báo.
Bước 9: Tiến xa hơn…
Hệ thống này có thể được sử dụng cho nhiều mục đích khác nhau, ví dụ, xem xét kịch bản hiện tại, nếu bạn có thể lấy các vị trí lây lan của dịch bệnh và lưu trữ nó trong cơ sở dữ liệu, hệ thống này sẽ cung cấp cảnh báo khi bạn ở gần các vị trí đó hơn. Nhưng tôi đang suy nghĩ nghiêm túc về việc lấy dữ liệu qua đường của động vật từ khắp nơi trên thế giới để khiến người lái xe thận trọng và cứu nhiều động vật khỏi tai nạn. Tôi đã tạo một trang web đơn giản (nhưng chưa được lưu trữ) có tất cả dữ liệu mà tôi đã thu thập. Đây là những dữ liệu mà tôi đã thu thập trong quá trình đi bộ hoặc đi xe đạp (bất cứ khi nào tôi tìm thấy một con mèo hoặc con chó bên đường vì chúng dễ bị băng qua) nhưng chúng tôi cần nhiều dữ liệu hơn để thực hiện điều này.
Tôi còn khá mới với việc tạo các trang web (chủ yếu là javascript) và các nội dung khác và rất muốn nhận được đề xuất và kiến thức chuyên môn của bạn:)
Đề xuất:
Đồng hồ báo thức thông minh: Đồng hồ báo thức thông minh được làm bằng Raspberry Pi: 10 bước (có hình ảnh)
Đồng hồ báo thức thông minh: Đồng hồ báo thức thông minh được làm bằng Raspberry Pi: Bạn đã bao giờ muốn có một chiếc đồng hồ thông minh chưa? Nếu vậy, đây là giải pháp cho bạn! Tôi đã làm Đồng hồ báo thức thông minh, đây là đồng hồ mà bạn có thể thay đổi thời gian báo thức theo trang web. Khi chuông báo thức kêu, sẽ có một âm thanh (còi) và 2 đèn sẽ
Hệ thống thông báo mã thông báo: 5 bước
Hệ thống thông báo mã thông báo: Trong phần hướng dẫn trước, chúng ta đã biết cách làm cho Arduino của bạn có thể nói. Hôm nay chúng ta sẽ khám phá thêm một chút về chủ đề tương tự. Tất cả chúng ta đều phải có một lúc nào đó trong đời bắt gặp hệ thống Thông báo có thể là trong ngân hàng hoặc nhà ga xe lửa. Bạn đã bao giờ chiến thắng
Nhận thông báo qua email từ hệ thống an ninh gia đình của bạn bằng Arduino: 3 bước
Nhận thông báo qua email từ hệ thống an ninh gia đình của bạn bằng Arduino: Sử dụng Arduino, chúng tôi có thể dễ dàng trang bị thêm chức năng email cơ bản vào hầu hết mọi cài đặt hệ thống bảo mật hiện có. Điều này đặc biệt thích hợp cho các hệ thống cũ hơn mà rất có thể đã bị ngắt kết nối khỏi dịch vụ giám sát từ lâu
Có thể đeo thông minh và thẻ ID Xem nhịp tim của bạn Cảm nhận nó: 5 bước
Có thể đeo thông minh và thẻ nhận dạng Xem nhịp tim của bạn Cảm nhận: CÓ THỂ TIỆN DỤNG THÔNG MINH Đây là thiết bị đeo thông minh dựa trên O.LED được trang bị các cảm biến hiển thị trực tiếp nhịp tim của bạn và một đèn LED phát sáng theo nhịp tim của bạn, mang lại trải nghiệm thoát mới cho bạn mà bạn thực sự có thể thay đổi nhịp tim của bạn và xem
Làm thế nào để tải nhạc từ trang web ALMOST BẤT KỲ (Haha) (Miễn là bạn có thể nghe được thì bạn có thể nhận được nó Được thôi nếu nó được nhúng vào Flash mà bạn có thể không có khả năng) EDITED !!!!! Thông tin thêm: 4 bước
Làm thế nào để tải nhạc từ trang web ALMOST BẤT KỲ (Haha) (Miễn là bạn có thể nghe nó thì bạn có thể nhận được nó … Được thôi nếu nó được nhúng vào Flash mà bạn có thể không có khả năng) EDITED !!!!! Thông tin bổ sung: nếu bạn đã từng truy cập vào một trang web và nó phát một bài hát mà bạn thích và muốn nó thì đây là hướng dẫn cho bạn, không phải lỗi của tôi nếu bạn làm hỏng thứ gì đó (chỉ có cách là nếu bạn bắt đầu xóa nội dung mà không có lý do ) tôi đã có thể tải nhạc cho