湖工大实验教材交互式程序设计

上传人:mg****85 文档编号:33619794 上传时间:2018-02-16 格式:DOC 页数:20 大小:1.02MB
返回 下载 相关 举报
湖工大实验教材交互式程序设计_第1页
第1页 / 共20页
湖工大实验教材交互式程序设计_第2页
第2页 / 共20页
湖工大实验教材交互式程序设计_第3页
第3页 / 共20页
湖工大实验教材交互式程序设计_第4页
第4页 / 共20页
湖工大实验教材交互式程序设计_第5页
第5页 / 共20页
点击查看更多>>
资源描述

《湖工大实验教材交互式程序设计》由会员分享,可在线阅读,更多相关《湖工大实验教材交互式程序设计(20页珍藏版)》请在金锄头文库上搜索。

1、实验一、机器人认识实验实验目的:认识能力风暴机器人的基本结构。学会能力风暴机器人的连接、检测和程序下载等操作。实验要求:可以明确能力风暴机器人的各个组成部分。指出主要组成部分的结构和功能。学会程序的调试和下载。实验内容、步骤:ASUII 的结构(1)外观结构(2)AS-UII 控制部分控制部分主要是指我们在和 AS-UII 机器人进行交流时,对它进行直接操作的部件,AS-UII 的控制部分主要由以下两个部分组成:主板和控制面板。主板主板是 AS-UII 的大脑 ,它由很多电子元器件组成。它完成接收信息、处理信息、发出指令等一系列过程。AS-UII 的大脑有记忆功能,这主要由主板上的内存来实现。

2、至于“大脑”的分析、判断、决策功能则由主板上的众多芯片共同完成。控制面板位于 AS-UII 背部的控制面板,是 AS-UII 机器人 的按钮和接口集中的地方,它的组成和功能。如下: 开关开关顾名思义就是控制 AS-UII 电源的按钮,按此按钮可以开机或关机,也就是打开或关闭机器人。电源指示灯电源指示灯的颜色是绿色。开机时,这个灯会发光,告诉你机器人已经进入工作状态了。关机时,电源指示灯熄灭。充电指示灯AS-UII 由电池供电(在机器底部) ,电量不足的时候,需要及时地补充能源。给机器人充电时,充电指示的红灯发光。充电口要给 AS-UII 充电,将充电器的直流输出端插在充电口上,再将另一端接到

3、220V 电源上即可。下载口下载口用于下载程序到机器人主板上,使用时只需将串口通信线的一端接下载口,另一端连接在电脑机箱后面的一个九针串口上,机器人与计算机就连接起来了。 (关闭计算机电源连接/取下九针串口连接线)“复位/ASOS”按钮这是个复合按钮,用于下载操作系统和复位。复位功能:在机器人运行程序的过程中(拔下串口通信线) ,按下此按钮,机器人就会中断程序的运行。这时,如果要重新运行程序,须按运行键,或关机再按运行键。下载操作系统功能:连接好串口通信线,打开机器人电源开关,在 VJC1.0 流程图编辑界面中选择“工具(T)-更新操作系统”命令,然后按下此按钮,即可下载操作系统。“运行”键机

4、器人开机后,按击“运行”键,就可以运行最近下载的程序。通信指示灯通信指示灯位于机器人主板的前方,是一个黄色的小灯。在给机器人下载程序时,这个黄灯闪烁,表明下载正常,程序正在进入机器人主板的内存中。(3)感官部分传感器感官部分是 AS-UII 机器人采集环境信息的一组传感器。用到的传感器有以下 5 种:碰撞传感器,红外传感器,光敏传感器,话筒,光电编码器。1、碰撞传感器碰撞传感器是感知碰撞信息的传感器,能够检测到 360范围内的碰撞,使 AS-UII 机器人遭遇到碰撞之后,能够转弯避开,或作出其它反应。在 AS-UII 机器人的左前、右前、左后、右后设置有四个碰撞开关(常开),它们与碰撞环共同构

5、成了碰撞传感器。碰撞环与底盘柔性连接(通过小弹簧) ,在受力后与底盘产生相对位移,触发固连在底盘上的碰撞开关,使之闭合。在 JC 语言中,碰撞传感器的库函数是 bumper(),在程序运行过程中此库函数仅在被调用到时执行一次,即采集数据一次。因此要连续查询碰撞传感器的状态就要在 JC 代码编辑界面中间一行编辑框(JC 对话窗口)中输入如下程序块(while(1)表示永远循环):void main() int bump;while(1) printf(bump=%dn,bumper();wait(0.1);LCD 显示的值为 0 意为没有碰撞。八个方向发生碰撞时返回值的意义为:1 左前,2 右前

6、,4 左后,8 右后,3 前,12 后,5 左,10 右。2、红外传感器红外传感器能够和人眼一样“看见”前方的障碍物,然后通知“大脑”作出反应。红外传感器共包含两种器件:红外发射管和红外接收模块。红外接收模块位于 AS-UII 机器人的正前方,两只红外发射管紧靠在红外接收模块的两侧,它们共同组成了 AS-UII 机器人的“眼睛” 。红外发射管可以发出红外线,红外线在遇到障碍后反射回来,红外接收模块接收到被反射回来的红外线以后,发出电信号给机器人主板,这样机器人就“看见”东西了。AS-UII 的“可视范围前方 10cm80cm ,90范围内的障碍物,障碍物面积须在 210mmx150mm 以上。

7、如果障碍物太小太细(或颜色太深) 、或者在可视范围以外,它可就没法看到了。用户可以通过调节两个电位器(主板上靠近红外传感器接口的黄色旋钮)来调节左右两个红外的检测距离,顺时针红外发射强,检测距离远,逆时针红外发射弱,检测距离近。逆时针将电位器旋转到底,将关闭红外发射管。红外传感器检测障碍的过程如下:1首先,左右发射管均关闭,红外探测器探测一次当前信号,并保存下来,以跟后面采集到的数据比较。2当程序中调用库函数 ir_detector()时,红外探测系统启动。 左红外发射管先发射一次,延时 1ms 后红外接收模块探测一次信号;然后,右红外发射管发射一次,延时 1ms 后红外接收模块探测一次信号。

8、红外接收模块采样一次信号的时间为 0.064ms。红外接收模块通过 PE4 口采样当前值,并保存下来。由于先后时间的不同,就可以分别探测左右两边的红外信号。3每调用一次 ir_detector()函数,红外探测系统开启一次。完成后,左右红外发射管关闭。根据采集的数据可以判断是否有反射。 在初始探测无反射而第二次探测有反射时,左反射管才是有反射的,这样系统认为左方有障碍。同理,初始探测无反射而第三次探测有反射时,右反射管才是有反射的,右方被认为有障碍。采用这种方法可以抑制许多环境红外噪音。在 JC 语言中,红外传感器的库函数是 ir_detector(),void main()int ir;wh

9、ile(1) printf(ir=%dn, ir_detector();wait(0.5);用一张白纸分别挡在能力风暴智能机器人的前方、左方和右方,液晶显示屏上显示的ir 的值都不一样,可总结如下: 无障碍 左方 右方 前方十进制表示: 0 1 2 43、光敏传感器能力风暴智能机器人上有 2 只光敏传感器,在机器人左前和右前方,可以检测到光线的强弱。光敏传感器是一个光敏电阻,它的阻值随光线强弱而变化。能力风暴智能机器人所用的光敏电阻的阻值在很暗的环境下为几百,室内照度下几,阳光或强光下几十。在 JC 语言中,光敏传感器的库函数是:左光敏 photo(1),右光敏 photo(2)。void m

10、ain()int photoleft;while(1) printf(photoleft=%dn,photo(1);wait(0.5);(程序中仅采集了左光敏的读数)编译这一段程序并下载运行,LCD 上会有如下显示:photoleft=180 (表示此时照射在左光敏上的光强值是 180)返回值从 0 到 255,光越暗,数字越大,光越强,数字越小。4、麦克风(话筒) 。能力风暴智能机器人上的麦克风(microphone)是能够检测声强大小的声音传感器,麦克风的安装位置在主板上喇叭的内侧,液晶显示屏的下方。它听见声音频率范围跟人能听到的范围大致相同为 16Hz 到 20KHz。在 JC 语言中,

11、声音传感器的库函数是 microphone( ), void main()int mic;while(1) printf(mic=%dn, microphone();wait(0.5);编译这一段程序并下载运行,如果周围的环境很静 LCD 上显示:mic = 12 (表示此时很安静)对着麦克风发出声音,可以看到显示值不断变化。它的变化范围是 0255。5、光电编码器光电编码器是一种能够传递位置信息的传感器,它由码盘和光电编码模块组成,分别安装在主动轮内侧和轮子支架内侧。光电编码模块运用反射式红外发射接收模块。反射器(即码盘)是黑白相间的铝合金圆片,黑白条纹把圆分成 66 等分。当码盘随轮子旋转

12、时,光电编码模块发出的红外线照射在码盘上,黑条和白条反射回来的信号状态不同,从而产生一个脉冲。轮子转一圈共产生 33 个脉冲,每个脉冲对应角度约为 10.91 度。库函数rotation(1)、rotation(2)可以读出左右光电编码器脉冲累计值。脉冲数值除以 33 即得旋转圈数检测左右光电编码器当前状态的库函数为:encoder(1) ,encoder(2) 。在 JC 对话窗口中输入如下程序块:void main()int encoder_1;while(1)printf(encoder_1=%dn,encoder(1);wait(1.0);编译这一段程序并下载运行,LCD 上会显示 0

13、 或 1。0 表示当前无反射信号,码盘片的黑格正对编码器;1 表示当前有反射信号,码盘片的白格正对编码器。然后缓慢转动左轮,看转一圈是否有 33 个脉冲。(4)执行部分AS-UII 机器人的执行部分是执行具体功能时所要用到的部件,机器人的执行部分共有以下五种:喇叭,液晶显示屏,主动轮,从动轮,电机。1. 喇叭(扬声器)喇叭按照输入的频率和时间来发声。2. LCD 液晶显示屏LCD 显示屏可以显示英文、数字等字符,在你调试程序时它们有用。3. 主动轮及其驱动机构主动轮有两只,电机输出的动力通过齿轮箱传给主动轮,带动整个机器人运动 。AS-UII 是平面移动机器人,它能够完成直行、走弧线、左转、右

14、转、原地打转这些技术动作 。机器人采用的是差动驱动方式,即每只主动轮由独立的电机驱动,这使得机器人有较高的灵活性。4. 从动轮如果 AS-UII 机器人只靠两个主动轮,难以保持平衡。有了从动轮作为支撑,就能实现动态和静态的平衡了。从动轮共 2 只,与机身弹性连接,可以在垂直于地面的方向上下移动,以保持机器人动态平衡,并能实现一定的越障功能。5. 直流电机AS-UII 机器人上有两个直流电机,可以将电池提供的电能转化为动能,让机器人动起来。机器人的运动速度是通过电机来调节的。控制电机的库函数有两个:motor(a,b)控制单个电机。a,b 为整数,a 取值 1 表示左轮,取值 2 表示右轮,b代

15、表转速,取值-100 到 100。drive(a,b)控制两个电机。a,b 为整数,a 代表平移速度,b 代表旋转速度。VL=a-b。VR=a+b。二、ASUII 的打开、连接和检测打开:打开开关键,见到电源指使灯发光说明电池有电,通电正常。LCD 显示正常,右下角有太极状的图标在跳。太极图跳动表示 AS-UII 的系统运行正常,若没有说明操作系统没有正常运行,按下复位键重启系统,若还是不正常则需要重新下载操作系统。连接:连接串口通信线是一项基本操作,取出串口通信线。一 端接 AS-MII 的下载口 ,另一 端接电脑机箱后的 9 针串口。 (连接/取下串口连接时,关闭计算机电源)打开开关键,即

16、可进行通讯。检测:配置机器人型号VJC1.0 是能力风暴机器人专用的编程软件。VJC1.0 安装好之后,需要配置机器人型号,也就是使编程软件与机器人相匹配。配置机器人型号是编写程序之前必须要做的工作,否则程序就不能正确地下载运行。操作步骤如下:(1)打开流程图界面(参见图 22) 。(2)单击菜单栏中的“工具(T) ”选项卡,在下拉菜单中单击“设置选项” ,随之会弹出一个设置对话框(参见图 23) 。(3)在设置对话框中,单击“机器人型号”下的箭头,会弹出一串型号,单击“ASU” 。如图 23 所示:图 23(4)单击“确定”按钮,退出设置。(5)关闭窗口,回到桌面,重新打开流程图界面,为机器人配置的型号“ASU”就生效了。运行自检程序双击 VJC1.0 图标,在打开的对话框中选择“新建 流程图程序

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

当前位置:首页 > 建筑/环境 > 建筑资料

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