2. Purpose: Xác định chỗ trống trong bãi đậu xe ô tô bằng cảm biến hồng ngoại và biết được còn bao nhiêu chỗ trống trong bãi đậu xe. 3. Input & output: Input: Tín hiệu từ cảm biến hồng ngoại. Output: Trạng thái của các ô đỗ xe (có xe hoặc không) xuất lên web server. 4. Use cases: + Người vào đỗ xe: biết được còn bao nhiêu chỗ trống thông qua màn hình hiển thị trên LED. + Người quản trị: sẽ biết được còn bao nhiêu chỗ trống trong bãi đậu xe thông qua việc truy cập vào trang web quản lý bãi đậu xe. Từ đó điều phối người đậu xe vào khu vực A, B hay C. Bên cạnh đó, có thể điều khiển khu vực A, B hay C hoạt động hay không khi có sự cố trong bãi đậu xe. Ngoài ra thông qua dự liệu lưu trữ trong web server, người quản trị có thể biết được công suất sử dụng của bãi đổ xe theo tuần/tháng/năm để quyết định việc tăng giảm sức chứa của bãi đậu xe. 5. Functions: - Arduino nano nhận dữ liệu từ cảm biến hồng ngoại (có xe hay không) sau đó gửi cho Raspberry bằng truyền tín hiệu theo chuẩn Lora; rồi đưa dữ liệu lên server. - Web server sẽ mô phỏng lại sơ đồ của bãi đậu xe. - Giúp người dùng biết được các vị trí còn trống, giúp người quản lý theo dõi được mật độ và những khung giờ cao điểm để đưa ra những giải pháp (sẽ có người trực tiếp hướng dẫn xe lưu thông đến các vị trí thích hợp). 6. Performance: Sử dụng Lora để truyền nhận dữ liệu với tần số 434Mhz, tốc độ baud 9600bps, cập nhật dữ liệu mỗi 2s lên server. Với khoảng cách truyền trong khoảng 120m thì tỉ lệ lỗi bit thấp, xấp xỉ bằng 0. Yêu cầu hệ thống hoạt động ổn định. 7. Manufacturing cost: Giá không vượt quá 2tr VNĐ. 8. Power: sử dụng nguồn pin từ cục sạc dự phòng 5V có thể tái sử dụng được. 9. Physical size/weight: kích thước nhỏ gọn, khoảng 50cmx50cm 10. Installation: sản phẩm được tích hợp bởi các module có sẵn trên thị trường. B. Engineering specification: Nguyên lý hoạt động: Phía Node: Cảm biến hồng ngoại sẽ phát hiện rằng ô có xe hay là không dựa vào ánh sáng hồng ngoại. Tín hiệu digital sẽ được truyền từ module cảm biến hồng ngoại về Arduino Nano và chuyển thành 0 hoặc 1 tương ứng với 0 là không có xe và 1 là có xe. Trong chương trình Arduino, ta thêm 1 kí tự vào gói tin gửi đi để phân biệt vị trí các ô giữ xe với nhau. Arduino kết nối với module Ra-02 với chuẩn giao tiếp SPI, sau đó truyền gói tin bằng cho Raspberry Pi đã kết nối với module Ra-02 khác cũng với chuẩn giao tiếp SPI bằng công nghệ Lora. Phía Gateway Raspberry Pi nhận gói tin và tách ra làm 2 phần, thông tin cần hiển thị và kí tự phân biệt, sau đó gửi lên web server bằng giao thức MQTT, ở đây nhóm sử dụng platform tên là Cayenne. Một màn hình lớn đã được đặt ở chỗ ra vào sẽ mở web Cayenne lên cho người vào đỗ xe có thể biết được vị trí nào còn trống. Người quản trị cũng có thể thông qua web Cayenne biết được công suất sử dụng của bãi đổ xe theo tuần/tháng/năm để quyết định việc tăng giảm sức chứa của bãi đậu xe. Môi trường hoạt động: Hoạt động trong điều kiện ngoài trời, cảm biến hồng ngoại được gắn phía trên và chính giữa của mỗi ô giữ xe, các tín hiệu được truyền trong mộ trường không khí bình thường. Sơ đồ khối hệ thống:
Mô tả các khối chính:
Module cảm biến hồng ngoại: sử dụng nguyên lý ánh sáng hồng ngoại để nhận diện xe. Arduino nano: sử dụng vi điều khiển ATmega328, nhận tín hiệu digital từ cảm biến hồng ngoại sau đó kết nối với Ra-02 để gửi tín hiệu đi. Module Ra-02: sử dụng chip SX1278 của nhà sản xuất SEMTECH, chuẩn giao tiếp Lora, hoạt động ở tần số 434MHz, dùng để truyền nhận tín hiệu từ Arduino sang Raspberry. Raspberry Pi: máy tính nhúng với chức năng là trung tâm xử lí, nhận tín hiệu từ Arduino qua Module Ra-02 với chuẩn giao tiếp SPI bằng công nghệ Lora, sau đó gửi dữ liệu lên web server. Web Server: sử dụng platform Cayenne và kết nối với Raspberry qua giao thức MQTT. Phân chia phần cứng phần mềm: Phần cứng: chia làm khối Node với khối Gateway. Khối Node gồm module cảm biến hồng ngoại, Arduino nano, module Ra-02 cùng với nguồn pin 5V. Khối Gateway gồm máy tính nhúng Raspberry Pi model 3B+ kết nối với module Ra-02. Phần mềm: viết chương trình cho Arduino sử dụng môi trường Arduino IDE, máy tính nhúng Raspberry sử dụng hệ điều hành Raspbian và viết chương trình với ngôn ngữ lập trình Python.