当前位置:论文网 > 论文宝库 > 信息科技类 > 智能科学技术论文 > 正文

无线视觉智能机器人

来源:UC论文网2019-04-07 09:34

摘要:

  摘要:随着物联网、大数据和云计算等技术的快速发展,人们对智能电子产品的要求也越来越高。针对一般的智能机器人只能巡线循迹、躲避障碍物和超声波测量距离等,并且其实时性、可靠性并不高。本文设计开发了一种高可靠性、高实时性的无线视觉智能机器人。小车采用STM32f103芯片,采集了多种高性能传感器的数据信息,高效率地实现了上述功能。用户可以利用AndroidAPP或PC应用软件来控制小车的各种功能。实...

  摘要:随着物联网、大数据和云计算等技术的快速发展,人们对智能电子产品的要求也越来越高。针对一般的智能机器人只能巡线循迹、躲避障碍物和超声波测量距离等,并且其实时性、可靠性并不高。本文设计开发了一种高可靠性、高实时性的无线视觉智能机器人。小车采用STM32f103芯片,采集了多种高性能传感器的数据信息,高效率地实现了上述功能。用户可以利用AndroidAPP或PC应用软件来控制小车的各种功能。实验结果表明,小车的各种功能均能有效地实现;通过客户端可以实时控制小车的各种运动以及摄像头的全方位转动。


  关键词:智能机器人;WIFI;视频监控;STM32


  作者:杜静;黄秀艳;周琪栋;王晓安;周立萍


  课题名称:wifi视觉智能小车设计课题编号:AF201504课题级别:院级课题类型:科研项目


  1引言


  智能小车是一个集自动控制、环境监测、无线遥控等多种功能于一体的综合系统,目前以高级单片机为核心的移动机器人还存在处理数据局限、控制不稳定等不足之处,国内市场暂时还没有出现具有真正意义的跟随性智能载物小车[1-3]。本文提出了一种基于STM32f103系列芯片的无线视觉智能机器人设计方案。STM32F1X系列芯片采用了Cortex-M3内核,性价比高于ARM7;系统采用两个电源稳压模块,一路给主控制器供电,另一路给电机驱动芯片和其他外部设备供电。系统将动力部分的电源和逻辑部分的电源分开,保证了主控制器的稳定性。电机驱动芯片采用的是微型集成电路电机驱动芯片L298N,其稳定性较好[4]。


  2硬件设计


  2.1系统整体设计


  系统的整体设计分成软件程序与硬件电路设计。软件程序方面,PC应用程序采用VS2010开发环境,采用C#编程语言实现;AndroidAPP采用Eclipse+AndroidADT开发环境,采用Java编程语言实现。硬件电路方面,包括伺服电机的驱动设计、摄像头视频的采集并传输设计、各种传感器电路的设计等。图1为系统的整体设计图。


  2.2超声波测距模块


  超声波是指频率高于20kHZ的声波,超声波在介质中传播时遇到不同的界面将产生反射、绕射、折射等原理在各行各业得到了广泛应用[5-6]。该系统所使用的测距模块为HC-SRO4超声波模块,该模块测量范围为3-400cm,精度最高可达3mm,由超声波发射探头、控制电路和驱动电路组成[7-8]。测距模块对外引出4个引脚分别为VCC、TRIG、ECHO和GND。超声波测距要先设置定时器。超声波模块的工作原理为:


  (1)采用IO口TRIG触发测距,给控制端TRIG至少10us的高电平信号;


  (2)模块自动发送8个40khz的方波,自动检测ECHO端是否有信号返回;


  (3)有信号返回,通过IO口TRIG输出一个高电平,同时开定时器计时,当此口变为低电平时就可以读定时器的值,高电平持续的时间就是超声波从发射到返回的时间。测试距离=(高电平时间*声速(340m/s))/2。超声波测距原理图如图2所示。


  如果发射脉冲和回波接受时间相差t,则可以算出超声波传感器与阻挡物体反射点之间的距离,测量距离。图2为超声波测距原理图。


  3软件设计


  3.1下位机程序


  主控板和WIFI模块通过串口连接,当串口初始化之后,WIFI模块可能会向主控板传输大量数据,此时延迟函数保护主控板不被卡死。接着进行串口的初始化(设置串口通信的波特率等),初始化完成后,串口就可以接收WIFI模块的数据了。最后,程序进入循环,判断机器人的当前模式,若为无线控制模式,就通过客户端的操作来控制小车的各种运动以及摄像头的转动;若为全功能模式,则相应执行红外循迹、红外避障、自动跟随、边缘检测以及超声波测距等功能。下位机程序结构图如图3所示。


  3.2PC控制端程序


  PC应用程序采用VS2010开发环境,采用C#编程实现。当一直按住“前进”按钮时,上位机发送数据速度较快,主控芯片接收数据速度较慢,主控芯片将会卡死。为避免上述情况,上位机程序为每个动作按钮设置一个标志位,当按钮按下时,标志位为FALSE,将不会继续发送控制命令。


  3.3Android控制端程序


  AndroidAPP采用Eclipse+AndroidADT开发环境,采用Java编程语言实现。用户在AndroidAPP主界面上输入视频的控制地址和控制端口,界面将会跳转到显示摄像头拍摄到视频的界面;Android程序对“前”、“后”、“左”、“右”、“停止”五个按钮分别设置一个监听对象,并通过Socket对象发送控制小车电机的相关命令。BgPictureShowActivity.java是AndroidAPP查看摄像头拍摄到照片的程序。


  4系统测试


  在温度为22℃的环境下测试机器人的“自动跟踪”功能,改变机器人与被跟踪目标的距离,分别测出机器人的响应时间和准确率,如表1所示。


  5结论


  本文采用STM32f103芯片,采集了多种高性能传感器的数据信息,高效率地实现了巡线循迹、躲避障碍物、超声波测量距离等多种功能。用户可以采用全功能方式或无线控制方式来控制机器人的运动。全功能方式可以准确实现巡线循迹、躲避障碍物、超声波测量距离、自动跟踪等功能。其中,自动跟踪功能的可跟踪距离较长、跟踪准确率较高。无线控制方式可以通过AndroidAPP和PC应用软件实时地改变机器人的运动状态以及摄像头云台的角度。近期的研究方向是将摄像头采集到的视频进行人脸识别、火焰识别等,进一步提高小车的智能化。


核心期刊推荐