对智能小车项目做一个整体的功能设计

汽车电子

2323人已加入

描述

一、车体

小车的车体是整个项目中最前端的部分,也就是说,我们整个项目会从小车的制作开始。而且小车是一个真正软硬结合的智能硬件设备,其中包含了小车的外观结构、动力系统、传感器系统、数据采集系统、自动化控制系统。

1.结构:我们采用上一节中所描述的两个电动机做为主动轮,一个万向轮做为辅助轮的方案。这个方案其实是一辆三轮车,但这个好处是我们可以通过控制两个车轮的运动方向直接作出小车的前进、后退、原地左转、原地右转的动作。

智能小车

2.动力:动力系统我们采用3节18650锂电池,也就是12V电源电压。电机我们采用带有编码计数器的N20减速电机。其减速比为1:210,也就是说电机主轴转动210周,车轮转动1周。采用大减速比的电机优点是电机力矩大、小车的载重大、行进稳定,对小车的异常反应时间足够。缺点是小车的运行速度较低。

3.传感器:关于小车航向控制方面,我们需要使用一个MPU6050电子陀螺仪,MPU6050是一款6轴传感器,包括3轴陀螺仪和3轴加速度计。此外,我们还需要一个超声波测距传感器HC-SR04,这个传感器可以通过计算超声波发出之后,遇到障碍物返回后的时间间隔来计算前方物体到小车的距离。最后我们还需要使用一个摄像头用于小车的视觉,以便我们实际小车对人像的识别与跟踪。

智能小车

4.控制系统:实际上我们的控制系统分为三个子系统:电源子系统、控制子系统、业务子系统。

严格来说,电源应该包含在动力系统当中,但我们需要自行制作一个电源模块接入12V电源,并为电机和控制电路板供电。所以就将电源子系统归为控制系统当中。

控制子系统主要有三个功能:传感器的数据采集,自动化控制和驱动电机转动。

由于我们的业务系统采用的是NanoPi平台的Arm Linux系统,其处理器、内存、接口等资源更丰富一些,因此我们将其作为业务处理器,并接入一个USB摄像头,作为小车的眼睛,并将摄像头的视频数据实时传入到上位机,再经由上位机进行人像的识别和响应,最后生成相应的响应指令传回业务系统,并进行控制指令化回传给控制系统。当然,我们也可以直接在NanoPi上完成一些比较复杂的业务功能,例如路径规划,自动航线等等。

智能小车

二、上位机

上位机程序我们准备使用Qt开发框架来完成图形化的界面程序,通过友好的用户界面(User Interface简称UI)。基本功能大致分为:前进、后退、左转、右转、转身、语音输入、人像跟踪等。

智能小车

除用户界面之外的,我们需要为上位机完成对下位机数据的接收和控制,以及向云服务器发送小车的相关数据,例如视频数据、音频数据、指令数据、传感器数据等等,以便云服务器将这些数据保存到大数据平台或关系数据库当中。

三、云服务

云服务我们需要搭建一个JavaWeb服务器并集成一个MySQL数据库用于为上位机程序提供Web服务,接收并保存小车的相关数据。

此外,我们还需要搭建一个大数据平台,保存小车的视频和音频数据。

有了这两个云服务,我们就可以将小车的所有数据上传到云端,并根据这些数据对小车进行有效的监控和分析,对小车以往的数据进行回显,甚至可以在异地远程控制小车。

四、第三方云服务

我们需要使用两个第三方云服务,一个是语音识别服务,另一个是基于图片的人像识别服务。这两个服务都是基于现在比较流行的深度学习框架下的应用服务。

打开APP阅读更多精彩内容
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉

全部0条评论

快来发表一下你的评论吧 !

×
20
完善资料,
赚取积分