项目简介
本项目是基于Django和Angular构建的车辆数据同步系统,用于收集、处理、存储和同步车辆的遥测数据(如车速、发动机转速、行驶距离等)以及媒体数据(如视频、图片等)。系统涵盖Web服务和硬件层面,Web服务后端基于Django,前端基于Angular,硬件层面包含为NanoPi NEO微计算机和AT90CAN128微控制器编写的程序,可实现车辆数据的全方位管理。
项目的主要特性和功能
- 数据收集与处理:通过OBD - II接口和GPS定位模块实时收集车辆运行数据和位置信息并处理。
- 数据存储:使用PostgreSQL数据库存储车辆数据和媒体数据,保障数据持久安全。
- 数据同步:借助网络请求(如HTTP)将车辆数据和媒体数据同步到服务器,便于后续分析和展示。
- 视频处理:支持视频数据的捕获、编码和同步上传。
- API接口:提供API接口供外部系统调用,方便获取车辆数据和媒体数据。
- 可扩展性:采用模块化设计,能根据不同需求进行扩展和定制。
安装使用步骤
部署后端(Backend)
- 把
beacon - server
文件夹内容复制到服务器。 - 安装docker和docker - compose。
- 运行
bash build - docker.sh
。 - 用
docker - compose - prod.yml
替换docker - compose.yml
文件,或把docker - compose - prod.yml
移到后续运行应用的文件夹。 - 仅启动数据库服务:
docker - compose up -d postgres
。 - 执行数据库迁移:
docker - compose run backend python manage.py makemigrations docker - compose run backend python manage.py migrate
- 创建超级用户:
docker - compose run backend python manage.py createsuperuser
。 - 启动应用:
docker - compose up -d backend
。
部署前端(Frontend)
- 本地安装nodejs。
- 安装Angular:
sudo npm i -g @angular/cli
。 - 在
beacon - web - demo
文件夹执行项目构建:bash build.sh
。 - 将
docker
文件夹内容复制到服务器。 - 服务器应已安装docker和docker - compose。
- 运行
bash build - docker.sh
。 - 启动前端(在后端文件夹或
docker - compose - prod.yml
文件所在文件夹):docker - compose up -d frontend
。
编程微控制器
- 安装编译所需软件包:
sudo apt update && sudo apt install build - essential gcc - avr avr - libc avrdude
。 - 执行应用编译:
make all
。 - 对微控制器进行编程,项目使用
AVR JTAG ICE Version 2.0
编程器,若使用其他编程器,需在Makefile
文件中修改programmer
和port
的值:make flash
。
配置NanoPi NEO微计算机
- 下载NanoPI NEO的Armbian操作系统。
- 按照说明进行安装和配置。
- 为ARM处理器安装docker和docker - compose。
- 通过Ethernet或Wi - Fi(需USB - WiFi适配器)连接,获取IP地址(Wi - Fi应为172.24.1.1),以用户
dkotlyar
、密码nanopineo
登录。
部署微计算机应用
- 将
beacon - python
和local_django
文件夹内容复制到微计算机。 - 从项目根目录在微计算机上编译
docker - compose.yml
文件。 - 在微计算机的
beacon - python
文件夹构建Docker容器:docker build -t beacon/main .
。 - 在微计算机的
local_django
文件夹构建Docker容器:bash build - docker.sh
。 - 在复制了
docker - compose.yml
文件的文件夹中,像在服务器上启动后端一样进行初始Web服务启动:docker - compose up -d postgres docker - compose run backend python manage.py makemigrations docker - compose run backend python manage.py migrate docker - compose run backend python manage.py createsuperuser
- 完整启动应用:
docker - compose up -d
。
下载地址
点击下载 【提取码: 4003】【解压密码: www.makuang.net】