基于arduino平台的智能遥控小车设计

更新时间:2024-01-13 作者:用户投稿原创标记本站原创 点赞:28656 浏览:131875

【摘 要】本文是基于arduino平台的智能遥控小车设计,采用前桥转向,后轮驱动的布置方式,两轮各用一个直流电机配合齿轮减速机构实现,实现软、硬件系统的设计,搭建了智能小车平台,取得了良好的实验效果.

【关 键 词】arduino平台;智能小车;实时监控

Abstract:Arduinoisasensorthatcanbeusedtocontroltherealphysicalworldandasetoftools,isamicrocontroller-basedandopensourcehardwareplatformArduinoboardprogramminganddevelopmentenvironmentponents.Arduinocanbeusedtodevelopinteractiveproducts,suchasitcanreadalargenumberofswitchesandthesensorsignal,andmaycontrolarietyoflamps,motorsandotherphysicaldevices.arduinoapplicationisveryextensive,intelligentremotecontrolcarisoneoferytypicalapplications.AndanewSmartcarasamoderninvention,inanenvironmentwhereyoucanautomaticallyoperateinaccordancewithapresetmode,withouthumanmanagement,etc.canbeappliedtoscientificexplorationpurposes.

Keywords:arduinoplatform;Smartcar;Real-timemonitoring

Arduino是一个能够用来感应和控制现实物理世界的一套工具,是一个基于单片机并且开放源码的硬件平台和Arduino板编写程序的开发环境组成.Arduino可以用来开发交互产品,比如它可以读取大量的开关和传感器信号,并且可以控制各式各样的电灯、电机和其他物理设备.arduino的应用很广泛,智能遥控小车就是其中一个很有代表性的应用.并且智能小车作为现代的新发明,可以按照预先设定的模式在一个环境里自动的运作,不需要人为的管理,可应用于科学勘探等等的用途.

1.系统设计

1.1框架设计

该智能遥控小车基于Arduino平台.但和通常的Arduino小车不同,Arduino系统在这里只是为了能让小车动起来.真正遥控小车,并透过小车来观察这个世界的,是安装在小车上的摄像头和作为遥控器的手机,框架设计如图1所示.

图1智能遥控框架设计

1.2接收装置

接收装置由小车、Arduino主板、云台、WiFi模块和摄像头组成,是一个被控制的对象,具体内容:(1)动力部分采用了4个电机来驱动轮子;(2)照明部分采用LED灯来实现小车的照明问题,使其更加美观炫目;(3)云台部分使用2自由度云台,2自由度的意思就是可以同时上下和左右转动,用以支撑小车;(4)底盘部分的设计采用设计好电路及设计图,完成各模块的放置及安装问题;(5)手机通过WiFi来接收数据并控制小车.

1.3控制装置

主要实现对小车的控制,完成相应的动作,具体由手机B实现.WIFI板上运行着一款程序,叫做mjpg-streamer,这个程序可以把USB摄像头的视频进行编码,然后通过WIFI返回给上位机,这样,我们就可以看到来自机器人的视频了.

同时路由一般都预留有TTL串口,TTL串口是用来调试或者刷机用的,通过TTL串口引出来,然后通过安装在路由里面的Ser2软件,就能把来自WIFI信道的指令转到串口输出,而串口在这里的作用就是与单片机芯片MCU通信,让单片机知道用户要让他做什么动作.WiFi模块如图2所示.

图2WiFi模块

2.小车的组装

2.1硬件方面

硬件使用Arduino的MotorShield来驱动小车的马达和摄像头的云台舵机.同时完成:(1)工具的准备,斜口钳、尖嘴钳、3毫米套筒、2毫米一字螺丝刀、3毫米十字螺丝刀、5毫米十字螺丝刀、万用表电烙铁、焊锡、胶带、镊子、壁纸刀等;(2)配件的认识,pcDuino作为智能控制板和控制核心,主要实现视频传输以及控制小车上所有的模块和机械部分,发挥小车大脑的作用.

云台摄像头是由2个舵机组成,进行上下180度和左右180度旋转控制,USB摄像头线直接插在pcDuino上.

小车底盘(固定小车配件),电机,电机驱动板motorshield,电机固定支架,万象轮(支撑小车后面的底盘),T-board(连接pcDuino和motorshield),WIFIDongle和车轮等部件.

2.2软件方面

采用Ubuntu操作系统,所有Arduino扩展引脚可以通过API访问,包括UART、ADC、PWM、GPIO、SPI、I2C;编程语言能支持C,C++withGNUtoolchain,Python,Ja等各种流行编程语言.

使用pcDuino的Linux系统实现了WiFi路由器,视频怎么写作器和TCP/IP通讯.把pcDuino作为一个WiFi路由器,视频怎么写作器,可以传输实时视频并接受客户端的控制命令,实现从客户端控制小车的移动和摄像头的旋转.具体步骤为:(1)完成安装并配置好pcDuino的iptables,下载然后编译hostapd,安装并配置dhcp怎么写作器,设置NAT等步骤;(2)安装视频流传输怎么写作器.用开源软件包mjpg-streamer来实现视频流传输怎么写作器,客户端可以是浏览器或者是专门的APP;(3)安装小车控制程序;(4)用手机端控制智能小车.安卓应用软件通过Wi-Fi与机器车实现通信,可控制机器车的前后左右移动、车上舵机的水平方向和垂直方向的转动以及车上照明灯的开关,同时,安卓应用还可以接受机器车上的摄像头拍摄视屏并实现同步实时播放.

2.3控制的细节

在机器车操控方式上,安卓客户端控制机器车的运动的方式有两种.一是通过按键的方式,另外一种是通过安卓手机上的重力感应传感器的方式,具体方式可通过勾选框进行选择.

同样在舵机的控制方式上,安卓操控方式也有两种.一种是通过按键的方式,另外一种是通过进度条的方式,具体的选择方式可以通过勾选框进行选择.

通过对硬件和软件的设计,组装和实验的小车如图3所示.

图3组装完成后的小车

3.结束语

本文提出了一种经济实用的智能小车系统设计方法,完成了智能小车硬件设计及软件开发,在工业智能机器人领域具有一定的实用价值.此设计通过智能小车监测周围环境,系统设计简单、成本低、实时性好,取得预期的实验结果.但是该智能小车还存在只能对正前方一定角度内进行探测,存在盲区,这些都有待进一步发展和提高.