网站大量收购闲置独家精品文档,联系QQ:2885784924

三部分 传感器.docVIP

  1. 1、本文档共28页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
三部分 传感器

第3章 传感器、微处理器与驱动器 3.1. 智能机器人的三大要素 人对周围环境的反应过程主要是感觉→大脑思考→作出反映,机器人的信息处理流程 也是如此。 能力风暴智能机器人的配有 5 种十几个传感器,另外还可以根据需要扩展其他传感器, 对环境的感知能力很强。感知环境的能力是产生智能行为的前提,因此能力风暴能产生许多 智能性行为。 能力风暴通过微控制器(microcontroller)来思维。我们采用的是 Motorola 公司 8 位单片机中功能最强、集成功能最全的高档机种。它的可靠性很高,有程序自下载功能。能 力风暴连上串口线就可自动下载程序。 计算机硬件决定了机器的极限潜能,去开发这种潜能是软件的工作。我们为用户提供 了交互式图形化编程 C 语言—VJC,它使开发能力风暴的高层行为充满了乐趣。有的低层的 驱动软件与硬件相关太紧密或实时要求很高,需要用汇编语言来处理。 能力风暴智能机器人的执行器有:二只高性能直流电机;一只喇叭;一只 2*16 字符的 液晶显示器。 4只碰撞传感器 2只红外传感器 稳压与低电 压复位系统  电机 2只直流电机 驱动 2只光敏传感器 2只光电编码器 外部存储器 单片机 BUS 喇叭 驱动  LCD  喇叭 1只麦克风 直流 1只直流电机 驱动 或伺服电机 各种外部 扩展卡 ASBUS 串口 总线 通讯 PC 图 3.1 能力风暴智能机器人的系统结构 3.2. 能力风暴的传感器及其处理电路 3.2.1. 碰撞传感器 碰撞传感器是使能力风暴智能机器人有感知碰撞环上的碰撞信息能力的传感器。在能力 风暴智能机器人的左前、右前、左后、右后设置有四个碰撞开关(常开),它们与碰撞环共 同构成了碰撞传感器(见图 3.2)。碰撞环与底盘柔性连接,在受力后与底盘产生相对位移, 触发固连在底盘上相应的碰撞开关,使之闭合。我们把来自四周的碰撞分为八个方向(见图 3.3)。 图 3.2 碰撞开关及碰撞环 图 3.3 碰撞传感器方位 应用 我们在 VJC 环境中,编写一个碰撞检测程序,来理解如何在程序中使用碰撞开关。VJC 图形编辑界面参见图 1-4: 1 进入 VJC 的图形化编程界面,将“控制模块库“中的“永远循环”模块拖入到流程图生 成区并与“主程序”相连; 2 将“传感器模块”库中 模块连接到循环内部,见图 3-6; 3 将“执行器模块”中的“显示模块”连接到程序中; 4 设置“显示”模块(见图 3-5),在“显示”模块上点击右键,在弹出“设置显示模块” 对话框选中“引用变量”,会出现“变量百宝箱”对话框,点击“碰撞检测”图标,在碰 撞变量引用中点击“碰撞变量一”,按确定键; 5 在“显示”模块正下方,连接“任务结束”模块,完成碰撞检测程序的编写。 图 3-5 VJC 碰撞显示变量设置图 图 3-6 碰撞检测程序流程 下载并运行此程序,观察 LCD 上的显示: bmp_1=0 (表示此时没有碰撞) 若前碰撞受到碰撞,LCD 上显示: bmp_1=4 (表示左后方受到碰撞) 在其它方向施加碰撞,LCD 显示的值将不同,四个方向发生碰撞时返回值的意义为:1= 左前方受碰,2=右前方受碰,4=左后方受碰,8=〉右后方受碰。 上面我们使用的是 VJC 的图形编程方式编的程序,我们再用 JC 语言编写下面的程序来 理解碰撞传感器是如何工作的。 在 JC 语言中,碰撞传感器的库函数是 bumper(),在程序运行过程中此库函数仅在被调 用到时执行一次,即采集数据一次。因此要连续查询碰撞传感器的状态就要在 VJC 交互式调 试窗口一行编辑框中输入如下程序块: {while(1) {printf(bump=%d\n,bumper());wait(0.1);}} 按回车,JC 能立即编译这一段程序并下载运行,LCD 上显示: bump=0 (表示此时没有碰撞) (VJC 的这种交互式能力特别便于调试、测试和学习) 按左前碰撞环,LCD 上显示:bump=5。在其他方向施加碰撞,显示的值将不同。各个方 向发生碰撞时返回值对应关系如下: 无 0,左前 1,右前 2,左后 4,右后 8 安装 以下是碰撞传感器的接线图 左后 右后 左前 右前 图 3.4 碰撞传感器的接线图 用户在使用时只需将碰撞开关的组合插针以正确的方向插入相应的位置即可。 碰撞开关 图 3.5 碰撞传感器的插针位置图 原理 到此,碰撞传感器已经能够被用户直接使用。但是,对应于每一个方向的碰撞,用户 是怎样得到一个二进制数值的呢? 在能力风暴智能机器人里,四个碰撞开关接在一个电阻网络里,通过采集模拟口 PE3 上电压值的变化,来识别出哪个或哪些碰撞开关闭合,从而判断出哪个

文档评论(0)

panguoxiang + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档