基于Wi-Fi控制智能图像采集机器人

  • Alax
  • LV6工程师
  • |      2013-11-28 09:24:20
  • 浏览量 829
  • 回复:7

“基于WIFI控制图像采集机器人”致力于研究出能够实现自动寻迹、超声波及红外自动避障功能,可程控行驶速度、PC客户端和手机客户端(智能手机APP界面操控,同时支持苹果IOS及Android移动设备控制)通过TCP协议与PC机服务器建立连接控制机器人的运动。

“基于WIFI控制图像采集机器人”致力于研究出能够实现自动寻迹、超声波及红外自动避障功能,可程控行驶速度、PC客户端和手机客户端(智能手机APP界面操控,同时支持苹果IOS及Android移动设备控制)通过TCP协议与PC机服务器建立连接控制机器人的运动。

本设计以STC12C5A32S2单片机为下位机控制核心,主要负责控制摄像头云台舵机、机器人行走电机及避障模块和照明灯等。

通过无线路由器组建一个无线局域网,用于连接移动视频机器人与PC机服务器,而PC机客户端则通过无线局域网与PC机服务器进行连接。PC机服务器通过无线透传模块与STC12C5A32S2开发板进行通信,与TQ2440嵌入式开发板通过无线进行视频流传输。手机及电脑终端用于操控机器人及视频的显示。其中,手机客户端可用重感模式控制机器人的行走。

适应范围及推广前景的技术性说明

从机器人诞生至今,原先仅应用在航空军事项目中的智能机器人也开始逐渐进入到人们的日常生活之中。

本设计能够利用机器人采集实验室、仓库、军事场地、旅游景区等的视频参数。例如在危险地段进行施工作业时,在恶劣的环境下进行科学研究、排除危险品时等众 多场合都需要人们冒着极大的风险采集相关信息以便下一步的进行;而在智能化家居、家庭服务、电影拍摄等诸多场合中,对工作人员安全性和舒适性的要求也越来 越高,这就需要有一种能够代替人类完成各种类型任务的智能化机器人。XXX机器人是智能行走机器人的中一种,为人类突破各种局限创造了条件。

该研究成果可用于未来无人驾驶汽车的发展,视频监控,远程控制,无线控制,防爆,排爆等诸多应用场合,及该成果具有很高的使用价值,具有长久的和广泛的应用前景。

系统硬件结构图:


  • 0
  • 收藏
  • 举报
  • 分享
我来回复

登录后可评论,请 登录注册

所有回答 数量:11
茜茜哈哈 2015-04-15
顶一个!!
0   回复
举报
发布
Alax 2014-11-28
欢迎常来踩
0   回复
举报
发布
ANWCLM 2014-11-27
谢谢,学习学习
0   回复
举报
发布
原来你也在这里 2014-09-30
顶一个!!
0   回复
举报
发布
苦咖啡 2014-09-29
顶了,谢谢!!
0   回复
举报
发布
冰山一角 2014-05-29
顶起。。。。 洋哥
0   回复
举报
发布
Alax 2013-11-28

重力检测控制模块的流程图如图所示。



主要技术指标

遥控距离:500m(无穿越障碍物的情况下)
遥控方式:带WiFi的智能手机〔苹果IOS、谷歌Android〕遥控、电脑(PC端)
操作方式:APP界面操作、电脑界面操作
连接协议:WIFI、TCP协议

本方案作品整体流程操控图


技术关键

本设计的亮点、难点及关键点是无线局域网的组建及Android手机客户端、重感模式的开发。

无线局域网用于连接机器人与PC机服务器,而PC机客户端和Android手机客户端则通过无线局域网与PC机服务器进行连接。PC机服务器通过无线透传模块与STC12C5A32S2开发板进行通信,与TQ2440嵌入式开发板通过Wifi进行视频流传输。机器人的外设则通过STC12C5A32S2芯片的相应IO口进行连接与控制。

0   回复
举报
发布
Alax 2013-11-28
由于重力传感器会持续检测,并且只要手机状态发生改变就会触发检测模块,如果不进行优化,会造成大量的冗余请求。为解决此问题,本设计会记录手机上一次的控制指令,只有当检测到的新控制指令与上一次的不一致时,才向PC机服务器发送新的控制请求。

在进行实际编程时,需要对传感器管理模块SensorMangager和传感器事件监听器SensorEventListener有一定了解。其中SensorMangager是一个综合管理类,包括传感器的种类、采样率、精度等,可以通过getSystemService函数获取一个SensorMangager对象,尔后通过调用其getDefaultSensor成员函数

获取相应传感器。Android 4.0支持的传感器类别如下所示:



Sensor.TYPE_ACCELEROMETER:加速度传感器;
Sensor.TYPE_GYROSCOPE:陀螺仪传感器;
Sensor.TYPE_LIGHT:亮度传感器;
Sensor.TYPE_MAGNETIC_FIELD:地磁传感器;
Sensor.TYPE_ORIENTATION:方向传感器;
Sensor.TYPE_PRESSURE:压力传感器;
Sensor.TYPE_PROXIMITY:近程传感器;
Sensor.TYPE_TEMPERATURE:温度传感器。

本设计用到的传感器类别为Sensor.TYPE_ACCELEROMETER,即加速度传感器,在获取到相应传感器后,通过先前获取的SensorMangager对象注册其事件监听器,并在其中完成逻辑代码的编写。在程序退出或后台运行时,会触发onPause方法,程序要在此关闭对传感器的调用,否则手机的电量会很快被耗尽。

0   回复
举报
发布
Alax 2013-11-28

创建TCP客户端算法如图所示:



PC机客户端程序界面设计

程序界面设计的好坏,直接影响到用户的交互体验,一个好的界面设计需要满足以下原则:

(1)    以用户为中心的基本设计原则;
(2)    顺序原则;
(3)    功能原则;
(4)    一致性原则;
(5)    频率原则;
(6)    重要性原则;
(7)    面向对象原则。

0   回复
举报
发布
Alax 2013-11-28

创建TCP循环服务器的算法如下所示。


PC机客户端负责为用户提供与机器人交互的接口,其提供了控制机器人行动、摄像头旋转、现场实时视频等功能。

PC机客户端模型设计:PC机客户端通过TCP协议与PC机服务器建立连接,并在程序退出前始终保持连接。其工作模式为事件驱动,即只有当主动用户发出请求时,PC机客户端才向PC机服务器发送相应请求,并等待处理结果,尔后将结果展现给用户(注:现场环境参数信息的获取和实时视频的获取是通过定时器主动获取,其不依赖于事件驱动)。

PC机客户端命令处理模块工作步骤如下:

(1)    根据用户发出的指令,通过预先与PC机服务器协商好的命令协议格式,构造请求协议;
(2)    向PC机服务器发送构造好的请求;
(3)    等待PC机服务器的处理结果,除“获取全景图”指令外,其余指令均设置等待超时时间为1秒,超时则认为命令请求失败;
(4)    接收来自PC机服务器的指令处理结果;
(5)    判断PC机服务器是否还有额外资源需要发送,若有,则启动额外的处理模块进行接收(注:额外资源采用异步I/O进行接收,其不会阻塞PC机客户端主线程)。
(6)    根据命令处理结果,更改程序相应状态。

0   回复
举报
发布
查看更多
x
收藏成功!点击 我的收藏 查看收藏的全部帖子