计算走过的距离

项目内容:计算机器人走过的距离。
相关模块:直行、转向、转角检测、显示。
程序设计
在本例中,我们让机器人先走一段直线,接着走一段弧线,然后再走一段直线。最后,调用两个转角检测模块,分别检测左轮和右轮的转角,并显示出来,例程如图所示。

参数设置
“转角检测”模块:打开“转角检测”模块的对话框,如图

在下图对话框中选择“左轮、编码器检测”,就会弹出如下对话框:

在其中选择“转角变量一”,确定。
用同样的方法,将第二个“转角检测”模块的参数设置为“右轮、编码器检测、转角变量二”。
“显示”模块:选择“引用变量”,在两行中分别显示“转角变量一”和“转角变量二”。
仿真运行
仿真运行时,显示轨迹,可以看到机器人走过一条曲线,最后在右上角的显示屏上显示出左右轮的转角数。
机器人的轮子转一圈,机器人的光电编码器接收到33个脉冲,转角计数为33。真实的能力风暴机器人轮子的直径d=64mm。您可以根据检测到的左右轮平均转角数,用如下公式计算出机器人走过的平均距离:

您还可以在以上例程中添加一段程序,计算机器人走过的距离,并将计算结果显示出来。不过,用上述公式计算出的结果适用于真实的机器人,与仿真界面上的标尺不一定吻合。
小知识:光电编码器
光电编码器是靠发射与接收红外光来工作的,由码盘和光电编码模块组成。码盘安装在机器人的轮子上,随轮子一起转动。光电编码模块则装在轮子的支架上。码盘上共有66个辐条,黑白相间。光电编码模块同时具有发射与接收红外线的功能,参见下图

无信号返回 有信号返回
从图中可以看出:红外线照射在黑色辐条上时没有反射信号,因为红外光大部分已经被黑色辐条吸收;当红外线照射在白色辐条上时有反射信号,因为红外光在白色辐条上反射强烈。于是,当机器人运动时,光电编码器就能接收到脉冲信号。轮子每转一圈,共产生33个脉冲。光电编码器有计数功能,能累加接收到的脉冲数。

VJC案例-计算走过的距离相关推荐

  1. CLLocation的distanceFromLocation方法计算地图上距离 (汇总)

    准备两个CLLocation的对象,比如要计算某个位置与使用者当前位置的距离, 则其 中一个CLLocation是userLocation = [locationManager location],l ...

  2. 小车,测走过的距离,计算走过的时间,stc8a8k

    1.实验目的 测试小车的运行距离,从启动开始,到停止,小车的运动距离: 用的是stc8a8k增强型51单片机: 用OLED显示出距离. 2.实验思路 (1)用外部中断P32,接上单片机的测速模块,就是 ...

  3. 利用最小二乘法,用直线拟合点时,为什么计算竖直距离而非垂直距离?为什么在线性回归分析中,求的是距离平方和最小,而不是距离之和最小?

    我的理解是,直接求距离之和可能导致多个解存在的情况,而求距离平方和可以保证唯一解,参考: 当且仅当a=b时,不等式等号成立 参考文章:利用最小二乘法,用直线拟合5点时,为什么计算竖直距离而非垂直距离?

  4. mysql 计算gps坐标距离_mysql、sqlserver和php计算GPS经纬度坐标距离

    摘要:mysql.sqlserver.oracle和php计算GPS经纬度坐标距离 mysql计算GPS经纬度距离DELIMITER $$ CREATEDEFINER=`root`@`localhos ...

  5. 如何用python计算levenshteindistance_Levenshtein计算相似度距离

    使用Levenshtein计算相似度距离,装下模块,调用下函数就好. 拿idf还得自己去算权重,而且不一定准确度高,一般做idf还得做词性归一化,把动词形容词什么全部转成名词,很麻烦. Levensh ...

  6. 多个点 最远距离 java_Java实现的计算最大下标距离算法示例

    本文实例讲述了Java实现的计算最大下标距离算法.分享给大家供大家参考,具体如下: 题目描述 给定一个整形数组,找出最大下标距离j−i, 当且A[i] < A[j] 和 i < j 解法 ...

  7. Python 根据百度 API 获得经纬度,根据经纬度计算城市间距离

    百度提供的查询经纬度的 api 为: http://api.map.baidu.com/geocoder?address=您要查询的地址&output=xml&key=您要输入的key ...

  8. python计算点到面的距离

    python计算点到面的距离 已知M个点,记P∈R^(M*3),目的是求M个点到平面Z= aX + bY + c的距离解法1: 使用平面的法向量来求解 平面Z= aX + bY + c的法向量为[a, ...

  9. 计算字符串的距离(编辑距离)

    计算字符串的距离 描述 Levenshtein 距离,又称编辑距离,指的是两个字符串之间,由一个转换成另一个所需的最少编辑操作次数.许可的编辑操作包括将一个字符替换成另一个字符,插入一个字符,删除一个 ...

最新文章

  1. Oracle PL/SQL Developer集成TFS进行团队脚本文件版本管理
  2. OpenCV方向梯度直方图HOG的实例(附完整代码)
  3. [系统安全] 四.OllyDbg动态分析工具基础用法及Crakeme逆向破解
  4. 传感与检测技术,Pt100热电阻测温实验报告,江南大学物联网
  5. LeetCode每日打卡 - 汉明距离
  6. linux 系统让服务后台运行
  7. 实验吧-杂项-WTF?(python 01代码转图片)
  8. python-基础学习篇(一)
  9. 发布Drools Workbench到Tomcat on Linux
  10. SystemCenter2012SP1实践(12)服务器、网络和存储配置
  11. 别让自己成为一名废弃的程序员
  12. python django做网页论文_Python Web程序-Django框架搭建网站的简单介绍
  13. java编程规范(chinasoft内部考试),答案并非全部正确。仅供参考
  14. TOOLFK工具-在线二维码解码工具
  15. 诛仙服务器状态查询,《诛仙3》部分服务器数据互通公告
  16. Vue打包出现Browserslist: caniuse-lite is outdated
  17. 论文阅读_Show, Attend and Tell: Netural Image Caption Generation with Visual Attention
  18. iphone麦克风_如何从iPhone或iPad上的蓝牙麦克风录制音频
  19. 通过ffmpeg把图片转换成视频
  20. 学计算机未来的规划,未来学习计划范本

热门文章

  1. Linux和UNIX“新手”们必备的与Linux系统编程相关的基本概念
  2. 阿空实训日记——永别牢笼计划第一天 6月29日
  3. Scratch魔术表演开花 电子学会图形化编程scratch等级考试三级真题答案2020-9
  4. 大数据架构-使用HBase和Solr配置存储与索引
  5. python-turtle
  6. oracle 建立外键 引用条件约束 不能添加,Oracle外键约束
  7. HTML5粉色气球飘过动画js特效
  8. Assembly与Modules详解
  9. 甘超波:目标管理该学习什么
  10. 如何招聘程序员-梁山好汉式or科举考试型