一、实验

  1.光电反射理论是经过码盘的window时,电压变低,经过bar时,电压为高,这样可以通过检测到的脉冲数,来进行速度的获取。但是实际并不是这样,

反馈回来的信号是周期性的,经过试验发现,可以通过周期的时间间隔来进行速度的转换,周期越短,速度越快。

下图是逻辑分析仪采集到的波形:

码盘为25线,25mm直径。

第一行为A相   第二行为B相。

二、构思:

   编码器两个window的时间 = 第二个有效时间点 - 第一个有效时间点;

   现已知两个window的间距大概在1.37mm。由经过两个的时间,可算出当前的速度。

  1.有上图可以看出脉冲是周期性的出现的,上图比较紧凑的脉冲段定义为一个有效区域。两个有效区域的时间间隔大概在有效区域内的两个脉冲间隔时间的5倍以上。

  2.有效时间点在一个有效区域内选取。

三、有效时间点的怎么选择?

  根据电压由0.5V到13V的测试发现,A相一个有效区域内都在3个脉冲以上,而B相大多数为2个左右,故速度选择以A相为准。B相作为判断电机正反转的标准。

  1.计算出一个有效区域内,所有相邻脉冲的时间间隔。

  2.将所有脉冲的时间间隔与上次最优解对比,选择误差最小的一个时间间隔。

  3.最优解的初始化:第一次任选一个脉冲时间间隔。后面选择与上次误差最小的时间间隔。等到一个有效区域内B相出现2个以上的脉冲,而同时A相的脉冲低电平都在B相的低电平中。如上图中间的一个有效区域:B相有两个脉冲,而A相的两个脉冲都在B相中。此时第一个最优解为A相这两个脉冲的时间间隔。后续选择与上次最优解误差最小的时间间隔。

四、电机正反转:

  视角:电机在底层,芯片在中层,码盘在上层。从上往下看。

  当A相的低电平脉冲在B相低电平的后半个周期的时候,为逆时针。

  A相的低电平脉冲在A相的前半个周期的时候,为顺时针。

  在数据处理的时候,只有当电机速度为低速时,才会切换正反转标志位。具体低速阀值为多少,根据实际调试时决定。

AEDR8300:光电编码程序构思的更多相关文章

  1. 架构设计:一种远程调用服务的设计构思(zookeeper的一种应用实践)

    在深入学习zookeeper我想先给大家介绍一个和zookeeper相关的应用实例,我把这个实例命名为远程调用服务.通过对这种应用实例的描述,我们会对zookeeper应用场景会有深入的了解. 远程调 ...

  2. 深圳电信光纤用户必备:简单破解中兴ZXA10 F460光电猫,实现WIFI和自动拨号功能

    最近搬家,ADSL转成光纤宽带,下载速度非常给力.原来的ADSL路由器派不上用场,电信的安装人员也给开通了wifi功能,只是wifi无法上网,而且拨号一定需要用电脑连网线进行拨号.以前是直接把拨号账户 ...

  3. [课程设计]Scrum 3.6 多鱼点餐系统开发进度(用户测试反馈页面构思&留言板设计)

    Scrum 3.6 多鱼点餐系统开发进度(用户测试反馈页面构思&留言板设计) 1.团队名称:重案组 2.团队目标:长期经营,积累客户充分准备,伺机而行 3.团队口号:矢志不渝,追求完美 4.团 ...

  4. [课程设计]Scrum 2.0 多鱼点餐系统开发进度(第二阶段项目构思与任务规划)

    [课程设计]Scrum 2.0 多鱼点餐系统开发进度 1.团队名称:重案组 2.团队目标:长期经营,积累客户充分准备,伺机而行 3.团队口号:矢志不渝,追求完美 4.团队选题:餐厅到店点餐系统WEB ...

  5. [课程设计]Scrum 3.1 多鱼点餐系统开发进度(第三阶段项目构思与任务规划)

    Scrum 3.1 多鱼点餐系统开发进度(第三阶段项目构思与任务规划) 1.团队名称:重案组 2.团队目标:长期经营,积累客户充分准备,伺机而行 3.团队口号:矢志不渝,追求完美 4.团队选题:餐厅到 ...

  6. Scrum 3.1 多鱼点餐系统开发进度(第三阶段项目构思与任务规划)

    Scrum 3.1 多鱼点餐系统开发进度(第三阶段项目构思与任务规划) 1.团队名称:重案组 2.团队目标:长期经营,积累客户充分准备,伺机而行 3.团队口号:矢志不渝,追求完美 4.团队选题:餐厅到 ...

  7. 论文的构思!姚小白的html5游戏设计开发与构思----给审核我论文的导师看的

    此处只为笔记 游戏么基本上确定是用canvas做个能一只手玩的游戏!基本打飞机之类的.毕竟手机也就上下班玩玩的.上下班么基本就是一只手拉着扶手一只手撸啊撸! 当然啦,如果能搞出超级牛逼的游戏,比如刺客 ...

  8. 伪Base16的构思和实现

    最近看见了一个迅雷地址,发现将其转换为普通链接的工具后,发现所谓专用地址地址就是原地址前加一个表示迅雷的前缀,后进行Base64编码.查阅Base64编码过程后,突发奇想:能否做一个Base16算法? ...

  9. OSS.Core基于Dapper封装(表达式解析+Emit)仓储层的构思及实现

    最近趁着不忙,在构思一个搭建一个开源的完整项目,至于原因以及整个项目框架后边文章我再说明.既然要起一个完整的项目,那么数据仓储访问就必不可少,这篇文章我主要介绍这个新项目(OSS.Core)中我对仓储 ...

  10. Spring初始化ApplicationContext线程托管实际运用架构构思

    今天我分享一个技术点,利用Spring初始化+线程接管进行程序启动后保持会话状态. 先来一段@test单元测试注解,后台开发的很熟悉,这是测试局部代码用的: @RunWith(SpringJUnit4 ...

随机推荐

  1. Ubuntu 20.04 开启root权限登陆、网卡配置

    个人名片: 对人间的热爱与歌颂,可抵岁月冗长 Github‍:念舒_C.ying CSDN主页️:念舒_C.ying 个人博客 :念舒_C.ying Ubuntu 20.04 开启root权限登陆.网 ...

  2. 基于python的数学建模---多模糊评价

    权重 ak的确定--频数统计法 选取正整数p的方法 画箱形图   取1/4与3/4的距离(IQR)  ceil()取整 代码: import numpy as np def frequency(mat ...

  3. go操作Kfaka

    目录 1. Kafka介绍 1.1.1. Kafka是什么 1.1.2. Kafka的特点 1.1.3. 常用的场景 1.1.4. Kafka中包含以下基础概念 1.1.5. 消息 1.1.6. 消息 ...

  4. python安装清华源

    pip install pip -Upip config set global.index-url https://pypi.tuna.tsinghua.edu.cn/simple# "pi ...

  5. SQL语句使用

    目录 一:sql语句 1.什么是SQL语句? 二:基本SQL语句之库操作 三:基本SQL语句之表操作 1.查看当前所在库名称 2.切换数据库 四:基本SQL语句之记录操作 五:创建表的完整语法 六:操 ...

  6. python基础re模块与正则

    正则表达式前戏 正则表达式是用来匹配与查找字符串的,从网上爬取数据自然或多或少会用到正则表达式,python的正则表达式要先引入re模块,正则表达式以r引导 案例:手机号校验 基本要求:手机号必须是1 ...

  7. java的饿汉和懒汉设计模式

    本文主要讲述java的饿汉和懒汉设计模式 饿汉和懒汉设计模式的目的:使得该类的对象,只能有一个,不允许其他类,创建该类的对象. 饿汉设计模式 示例代码如下: 1 public class Hunger ...

  8. [R语言] ggplot2入门笔记3—通用教程如何自定义ggplot2

    通用教程简介(Introduction To ggplot2) 代码下载地址 以前,我们看到了使用ggplot2软件包制作图表的简短教程.它很快涉及制作ggplot的各个方面.现在,这是一个完整而完整 ...

  9. ArcGIS工具 - 按字段分割图层

    天下大势,合久必分,分久必合.合并.分割在GIS数据处理和管理中也十分常见,例如按行政区划名称导出多个区县行政图层.按地类名称导出多个地类图层. 功能说明 其实,在ArcGIS中除了按属性导出外,最接 ...

  10. Java程序员用代码,计算最大公约数和最小公倍数

    作者:小傅哥 博客:https://bugstack.cn 源码:https://github.com/fuzhengwei/java-algorithms 沉淀.分享.成长,让自己和他人都能有所收获 ...