张翔宇
【摘要】 一种基于WiFi通信网络的智能小车,智能小车由WiFi模块控制器、电机驱动器、减速电机、电池组、开关、上位机控制界面所组成。智能小车通过上位机的操纵界面利用无线网络任意的控制小车的行走路线。
【关键词】 智能小车 WiFi通信 Arduino 智能控制
一、引言
随着时代的发展,无线网络得到了迅速的发展,利用无线技术所制造的无线终端产品也越来越多。由于本人对于电子产品有着非常浓厚的兴趣,所以利用课余时间通过学习制作了一个基于WiFi通信网络的智能小车,能够实现通过上位机界面控制智能小车的运动。
二、智能小车工作过程
一种基于WiFi通信网络的智能小车,智能小车由WiFi模块控制器、电机驱动器、减速电机、电池组、开关、上位机控制界面所组成,当智能小车上电后,WiFi模块会自动寻找在控制器程序中所设定要连接的无线网络名称,当WiFi模块连接到上位机控制界面时,控制界面会显示当前所连接到主机的WiFi模块的IP地址,建立起通信连接之后,就可以通过上位机界面控制WiFi小车任意的运动了,智能小车的控制器我选择的是基于Arduino的wido控制器,其本身自带WiFi模块,并带有AVR单片机,具有6路数字可控IO口,4路模拟IO口,最大限度的满足了控制系统的需要,同时Arduino有大量封装好的类库,语言也不像C语言不易理解,它非常适合初级电子玩家制作一些电子产品。
三、系统数据的处理
上位机和智能小车之间的通信利用的是TCP/IP协议,TCP/IP是一种网络通信协议,它规范了网络上的所有通信设备,尤其是一个主机与另一个主机之间的数据往来格式以及传送方式。TCP/IP是INTERNET的基础协议,也是一种电脑数据打包和寻址的标准方法。在数据传输中,可以形象地理解为有两个信封,TCP和IP就像是信封,要传递的信息被划分成若干段,每一段塞入一个TCP信封,并在该信封面上记录有分段号的信息,再将 TCP信封塞入IP大信封,发送上网。在接受端,一个TCP软件包收集信封,抽出数据,按发送前的顺序还原,并加以校验,若发现差错,TCP将会要求重发。因此,TCP/IP在INTERNET中几乎可以无差错地传送数据,当上位机给智能小车发送命令时,会将控制命令封装在数据包中,智能小车通过WiFi模块接收数据,并将数据发送给单片机,单片机通过内部程序解析数据包。
智能小车的控制:当解析完上位机所发来的数据包后,控制器会将命令与程序内部命令做比较,从而智能的通过控制电机驱动器控制小车运动,通过控制器可以实现智能小车加速、减速、左转、右转、自动行驶等多种功能,同时由于智能小车每个轮子之间都有细微的差别,导致当发送前进命令时小车并不走直线,故此采用了PID的控制方式,我选择的电机驱动器内部自带PID参数的自整定功能,这样就大大简化了代码的复杂性,四个电机的编码器将四个轮子实时的速度反馈给驱动器,若反馈回来的速度值有偏差,驱动器将调整PWM脉冲的占空比,保证四个轮子速度的一致性,从而保证小车的直线行驶。
四、实物图
图1。
五、结束语
本项目创新的使用了当前流行的WiFi控制方式,成功的实现了对智能小车的控制,通过此次项目的实现,极大的激发了个人的创新意识,使自己爱上了制作电子产品,爱上了科技创新,并为成为一名创客奠定了良好的基础。
参 考 文 献
[1]龚建伟,熊光明.Visual C++/Turbo C串口通信编程实践[M].北京:电子工业出版,2007.
[2]白瑞林,吴广霖.嵌入式TCP/IP协议栈多线程应用的实现[J].计算机应用研究,32(18):84.
[3]周立功.ARM微控制器基础与实战(第二板)[M].北京:北京航空航天大学出版社,2005.