基于rt-thread+springboot+uniapp+mssql的IOT小车

项目地址https://github.com/123Dafu123/IotCar

一、系统概览

1.1系统简介

本系统是使用stm32l475vet6正点原子潘多拉物联网开发板+rt-thread嵌入式实时操作系统开发嵌入式小车,springboot开发后台服务端,uniapp开发前端手机APP以及mssql作为数据库系统的IOT(物联网)系统

1.2系统框图

1.3系统整体框架概要

本系统以后台服务端+数据库为核心,将手机APP与嵌入式小车都作为了前端部分。其运行的大体过程如下:

小车上线后,向服务端发送请求,服务端注册该小车信息到数据库。用户通过手机APP注册、登录、更改个人信息、绑定小车、操控小车时,手机APP也会向服务端发送请求,而后服务端对数据库进行相应的操作。后端服务端会进行自动检测,若小车没有定时发送过数据(心跳包)到服务端,则判断小车离线。

所有端与端的通信,都是通过响应式的http api实现的,从而实现了前后端分离,并达到数据高效组织,信息高效率传输的目的。

二、手机APP部分

2.1手机APP展示

  (1)用户登录注册功能。

可实现不同用户的登录以及注册,以方便不同用户控制不同的小车。成功登录后便可进入控制页面。

(2)用户扫码绑定功能

在控制界面,初始情况下,右上角绑定状态栏会显示未绑定,则此时无法控制小车。点击右上角去绑定按键则可进行扫码绑定。扫描小车上lcd屏幕二维码即可绑定对应小车。绑定完成后会显示绑定成功图标,并显示已绑定的小车id,去绑定也变为了改绑。稍微等待几秒后,屏幕中间信号图标由红变绿,则可开始控制小车。

同时支持多用户绑定不同的小车,以便不同用户控制各自不同的小车。也支持用户绑定小车后改变绑定的小车。

 

(3)用户信息更改功能

 点击左上角!按键,可显示用户信息,点击可更改。

(4)小车操控功能

 支持对左右履带的加减速操作,以实现各种运动。支持刹车功能,刹车时制动灯会亮起。同时左右履带速度会实时反馈到仪表盘上。

 

(5)小车在线离线状态显示

     小车在线则信号图标为绿色,小车离线则信号图标为红色

2.2手机APP技术概要

前端手机APP使用了uniapp开发,实现了可在ios、android、web、小程序等多端运行的目的。

使用了单文件组件的开发方法,使开发过程更加清晰。通过组件与组件的相互协调通信,最后实现了这样一个ui精美的前端可跨端的手机APP

三、嵌入式小车部分

3.1嵌入式小车展示

(1)开机载入

屏幕会显示loading

(2)网络连接

若已经成功连接过wifi热点,则会自动连接,显示wifi connected。若wifi连接未成功,或没有连接过wifi,则会提示使用串口进行网络配置(串口波特率115200),使用set_wifi <ssid> <password> 命令进行网络连接。

(3)app绑定

会显示一个二维码,通过手机app扫描该二维码,即可与此小车绑定,进行操控。

(4)小车运行

在配置网络以及绑定app完成后,用户便可以通过手机app操控小车的

运动。

3.2嵌入式小车技术概要

使用了rt-thread嵌入式实时操作系统,并使用了以stm32l475vet6为主控的潘多拉物联网开发板。该开发板资源丰富,尤其搭载了ap6181 SDIO Wifi芯片,在rt-thread提供的bsp加持下,使得开发过程十分轻松。小车的难点主要集中在连接网络以及使用http api上。而通过rt-thread的网络组件以及wlan框架,这些困难便迎刃而解。

四、后台服务端部分

4.1服务端概览

4.2服务端技术概要

服务端使用了springboot进行开发,从而构建了一套响应式的http api系统。由于所有api都是响应式的,因此不会出现服务端卡死而影响操控的是实时性的情况。同时也构建出了一套前后端分离的系统,方便后续进行系统的维护以及升级。

五、数据库部分

5.1数据库概览

5.2数据库技术概要

数据库部分使用了mssql作为数据库系统,通过jdbc与后台服务端进行相互通信。

实体ER图如下:

  • 5
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值