机器人红外避障程序的编写

上传人:油条 文档编号:54837043 上传时间:2018-09-20 格式:PPT 页数:25 大小:337KB
返回 下载 相关 举报
机器人红外避障程序的编写_第1页
第1页 / 共25页
机器人红外避障程序的编写_第2页
第2页 / 共25页
机器人红外避障程序的编写_第3页
第3页 / 共25页
机器人红外避障程序的编写_第4页
第4页 / 共25页
机器人红外避障程序的编写_第5页
第5页 / 共25页
点击查看更多>>
资源描述

《机器人红外避障程序的编写》由会员分享,可在线阅读,更多相关《机器人红外避障程序的编写(25页珍藏版)》请在金锄头文库上搜索。

1、机器人红外避障程序的编写与实现,桂坤,提纲,系统基本架构 机器人SDK包含内容 具体实现,1.系统基本架构,ASR抽象出几个重要的概念:系统,设备,流程系统 :系统主要用来部署设备与流程,管理系统状态,管理系统的配置与追踪系统的错误。设备 :机器人本体所有的物理设备以及定制的重要逻辑组件都用设备来描述,它是系统的基本组成部分。流程 :流程是设备的容器,它由设备与其他辅助节点共同组成,管理流程内设备的生命周期,设备的资源,设备的配置,设备运行时的控制与响应等。,1.1 系统,系统代表机器人实体,它是设备的组合体,一个机器人只能拥有一个系统。 正如我们看到机器人通常会想到它们能做什么一样,ASR也

2、是站在较高的层次来理解系统,它关心的是系统的部署和运行时管理。,1.1 系统,系统的创建 CASRSystem: GetInstance () 系统的退出 DestroyInstance (); 系统状态管理 Init,Pause,Run,End来统一管理系统中设备与流程状态。 系统的部署 创建设备:CreateDevice;创建流程:CreateProccess,将设备加入流程:AddToProccess。 系统错误处理,1.2 设备,该部分是ASR最重要的部分,也是用户使用最多的部分。由该部分提供的接口,来实现对整个ASR系统的操作、控制。按功能这些模块细分为以下4个部分: 传感器模块 包

3、括视频采集及播放、音频采集及播放、红外线测距、超声波测距、GPS定位系统。 图像处理模块 包括图像的加载保存、图像的各种算法、图 像色彩体系的转换、图像的编码。 通讯模块 运动控制模块,1.2 设备,1.2.1 设备的状态轮转,用户通过Init,Pause,Start,End来变更设备的状态。每一设备都被抽象为四种状态: DEVICE_RAW:原始状态,参数与数据流等未初始化; DEVICE_INIT:设备已经初始化; DEVICE_PAUSE:设备暂停状态; DEVICE_RUNNING:设备运行状态。 状态的变更如下图:,1.2 设备,1.2.2 设备的状态变更图,1.2 设备,1.2.3

4、 IASRDevice成员列表,1.3 运动控制模块概述,基于RTX 函数名 描述IASRMotion 开环运动控制接口IMotionControl 闭环运动控制接口IMotionDiagnose 闭环运动控制诊断接口,1.3.1 RTX,Windows实时内核包(ASRRTCore)即是RTX。Windows XP、XPe、2000、NT和NTe是目前用于关键任务控制和应用、需要时间敏感处理的强大自动控制平台。但是,开发者希望在应用Windows优点的同时,又拥有传统RTOS特征(包括高性能、高可靠性和高确定性)的开发和执行环境,许多传递这种需求的选择通常有两种解决方案: 一是连接一个基于W

5、indows的能处理复杂GUI的处理器或卡; 二是连接一个能进行关键处理的协处理器或DSP卡。 这两种解决方案都涉及硬件的设计和改造。,1.3.1 RTX,Windows实时内核包(ASRRTCore)是一套软件,可将Windows XP、XPe、2000、NT 和NTe扩展到关键时间控制领域的解决方案,ASRRTCore产品通过对Windows XP、XPe、2000、NT 和NTe的扩展,使这些基于Windows的操作系统成为实时操作系统(RTOS),基于这样的实时操作系统,用户既可以开发实时性的应用,也可以开发非实时性的应用。同时,通过从硬件设计的方案转移到以软件为中心的解决方案,ASR

6、RTCore增强了Windows的控制性能,其优势为:减少了系统的成本; 提高了系统性能; 保证了持续的技术发展能力;,1.3.1 RTX,1.3.2 开环运动控制,IASRMotion接口用于开环运动控制,直接控制电机作业,获取编码器采样周期内的变换数据。函数名 功能 SetWorkPeriod 设置编码器采样周期 SetCallback 设置回调函数 Init 初始化设备 Start 启动编码器采样 DO 设置板卡输出 DI 获取板卡的输入 SetSpeed 设置速度 End 结束设备,1.3.3 闭环运动控制,IMotionControl接口是采用RTX实时内核完成高精度定时采样并建立运

7、动伺服的,默认的采样周期定为1毫秒,能较好的完成运动控制。 注意使用闭环运动控制前首先应检查闭环是否可以工作正常 基于PID(比例-积分-微分)比例+积分(PI)控制器,可以使系统在进入稳态后无稳态误差。比例+微分(PD)控制器能改善系统在调节过程中的动态特性。,1.3.3 闭环运动控制,函数名 功能 SetDiameter 设置轮子的直径 GetDiameter 获取轮子的直径 SetACC 设置加速度,建议在0.52之间 GetACC 获取加速度 SetDCC 设置减速度,建议在0.52之间 GetDCC 获取减速度 SetPIDParam 设置PID参数 GetPIDParam 获取PI

8、D参数 SetServo 调整编码器计数的方向:0(正),1(负) GetV 获取当前运行速度 GetS 获取当前运行位移 DO 设置板卡上的数据输出 Move 以当前设定速度运行(速度环) Pos 以当前设定位移、速度运行(位环) Stop 停止运行,但仍伺服 Abort 紧急停止运行,取消伺服,1.3.4 闭环诊断控制,用于诊断运动控制的接口,正常使用时不需要使用诊断接口,一毫秒调用回调函数一次。函数名 功能 SetCallback 设置回调函数 InitDiagnose 初始化诊断上下文 EndDiagnose 结束诊断上下文,1.4 传感器,1.4.1 图像传感器; IASRImage

9、Capture、IASRImageCaptureToFile、 IASRImageRender 1.4.2 红外传感器; IASRSensorPsd 1.4.3 超声传感器; IASRSensorSonar 1.4.4 声音传感器; IASRSoundCapture、IASRSoundRender 、IASRSoundSpeaker 1.4.5 GPS IASRPeripheryGps,1.4.1 图像传感器,函数名 功能 BindGUIWnd 绑定视频来指定窗口 BindIndex 绑定指定的设备 SetParam 设置设备参数 GetParam 获取设备参数 Init 初始化设备环境 St

10、art 开始视频采集 End 停止视频采集,1.4.1 图像传感器-采集实例,void CImageTestDlg:OnStart() /开始采集视频 CWnd* pWnd1 = (CWnd*)GetDlgItem(IDC_SHOW_ONE); HERROR hError; /绑定视频到指定的窗口 if(ASRFAIL(m_pImageCap-BindGUIWnd(pWnd1-GetSafeHwnd() return FALSE;m_pImageCap-BindIndex(0); /绑定指定的设备来采集视频hError = m_pImageCap-Init(); /初始化设备if(m_pIma

11、geCap)m_pImageCap-Start(); /开始采集 void CImageTestDlg:OnEnd() /结束视频采集 m_pImageCap-End(); ,1.4.2 红外传感器,IASRSensorPsd接口,用来操作红外传感器。该设备主要用来测量距离。它最重要的函数是GetDistance(),即用来获取传感器测量的距离。 函数名 功能 SetParam 设置设备参数 GetParam 获取设备参数 SetCallback 设置函数回调 GetDistance 获取距离 Init 初始化设备环境 Start 开始探测 End 停止探测,1.4.3 超声传感器,IASRS

12、ensorSonar接口,是用来操作超声波传感器的。该设备主要用来测量距离。采用回调机制或GetDistance方法来获取距离值。 函数名 功能 SetParam 设置设备参数 GetParam 获取设备参数 SetCallback 设置函数回调 GetDistance 获取距离 Init 初始化设备环境 Start 开始探测 End 停止探测,1.4.4 声音传感器,IASRSoundCapture接口,用来采集音频。调用CASRSystem:CreateDevice函数来创建音频采集设备。 函数名 功能 SetParam 设置设备参数 Init 初始化设备环境 Start 开始音频采集 E

13、nd 停止音频采集 Pause 暂停音频采集,2 具体实现,实现一个可以自由避障的应用程序,包括如下几个功能:接受键盘输入,可通过键盘控制其前后左右运动; 使用红外传感器测距进行避障; 使用闭环控制; 无键盘输入时,可自由漫游; 采集图像;,2 准备工作,安装AS-R开发函数库;建立基于对话框的MFC应用程序; 配置工程属性: Tools-Options-Derectories 选项卡下选择“Include files” “C: Grandar ASRProjectCommonInclude” “C: Grandar ASRProjectCommonInterface” Tools-Options-Derectories 选项卡下选择“Library files”“C: Grandar ASRProjectCommonLib”。 Project-Settings-Link 选项卡下选择“Object/library modules”,加入ASRSystem.lib,

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 行业资料 > 其它行业文档

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号