搜索
bottom↓
回复: 22

拆了个加油机的编码器

[复制链接]

出0入0汤圆

发表于 2015-7-8 08:54:25 | 显示全部楼层 |阅读模式
拆了个加油机的编码器,一不小心码盘搞弯了回不回不去了,看来要下次再找个拆

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x

阿莫论坛20周年了!感谢大家的支持与爱护!!

一只鸟敢站在脆弱的枝条上歇脚,它依仗的不是枝条不会断,而是自己有翅膀,会飞。

出0入0汤圆

发表于 2015-7-8 09:08:21 | 显示全部楼层
看得眼花花的,120栅一圈?
那问题来了,在这个设备上,这一栅格对应多少油?

出0入0汤圆

 楼主| 发表于 2015-7-8 09:30:50 | 显示全部楼层
LearningASM 发表于 2015-7-8 09:08
看得眼花花的,120栅一圈?
那问题来了,在这个设备上,这一栅格对应多少油? ...

问我也不懂

出0入0汤圆

发表于 2015-7-8 09:32:33 | 显示全部楼层
LearningASM 发表于 2015-7-8 09:08
看得眼花花的,120栅一圈?
那问题来了,在这个设备上,这一栅格对应多少油? ...

要看齿轮一圈对应多少没了,应该是椭圆齿轮作传感器

出0入0汤圆

发表于 2015-7-8 09:51:01 | 显示全部楼层
mcu5i51 发表于 2015-7-8 09:32
要看齿轮一圈对应多少没了,应该是椭圆齿轮作传感器

所以我问,
在这个设备上,这一栅格对应多少油

出0入0汤圆

发表于 2015-7-8 09:56:33 | 显示全部楼层
怎么感觉这个编码器有问题啊,接个单片机接到光耦的发射端是什么意思啊?是不是加油的过程中闪两下,多给你记点油进去?

这个9701c 只能在这个直径的码盘上上180度的格子,再精细了做不了。但是经典应用上是不要单片机的啊。

标准论坛尾巴。当你看到这个尾巴的时候就知道你的回复是正常的。

出0入84汤圆

发表于 2015-7-8 10:47:23 | 显示全部楼层
码盘有单独卖的,你这能搞弯啥材料的?不是不锈钢吧?

出0入0汤圆

 楼主| 发表于 2015-7-8 11:06:53 | 显示全部楼层
ahuang227 发表于 2015-7-8 09:56
怎么感觉这个编码器有问题啊,接个单片机接到光耦的发射端是什么意思啊?是不是加油的过程中闪两下,多给你 ...

不懂是啥意思,不过感觉是处理好的数据送主板去吧

出0入0汤圆

发表于 2015-7-8 11:07:03 | 显示全部楼层
脉冲是多少的?1000的吗?

出0入0汤圆

 楼主| 发表于 2015-7-8 11:08:11 | 显示全部楼层
ahuang227 发表于 2015-7-8 09:56
怎么感觉这个编码器有问题啊,接个单片机接到光耦的发射端是什么意思啊?是不是加油的过程中闪两下,多给你 ...

不懂是啥意思,不过感觉是处理好的数据送主板去吧

出0入0汤圆

发表于 2015-7-8 11:10:25 | 显示全部楼层
看起来很是高大上的

出0入0汤圆

发表于 2015-7-8 14:00:52 | 显示全部楼层
这种编码器,可以用JLC钢网直接做出来

出0入0汤圆

发表于 2017-7-26 16:32:40 | 显示全部楼层
本帖最后由 yufanyufan77 于 2017-7-27 09:03 编辑

刚刚写了个加油机编码器程序不知道能用不
#include "Encode.h"


#define T1_PORT        GPIOI
#define T0_PORT        GPIOI
#define T1_PIN        GPIO_Pin_2
#define T0_PIN        GPIO_Pin_3
#define T1_READ()  ((T1_PORT->IDR & T1_PIN)?1:0)       
#define T0_READ()  ((T0_PORT->IDR & T0_PIN)?1:0)       

static unsigned long EncodeCounts = 0;//正转脉冲数
static unsigned long EncodePluseErrorCounts = 0;//非加油状态正转脉冲数
static unsigned long DropEncodeCounts = 0;//丢失脉冲数
static unsigned long RbackEncodeCounts = 0;//反转脉冲数
static unsigned char EncodeError = 0;//编码器异常标志



//设置编码器故障代码
void SetEncodeError(unsigned char EncodeErrors)
{
  EncodeError = EncodeErrors;
}
//获取编码器错误代码 0:正常  1:反转  2:脉冲丢失  3:T0或T1故障 4:停机还出油 5:脉冲停止
unsigned char GetEncodeError(void)
{
  return EncodeError;
}


//设置编码器脉冲数
void SetEncodeCounts(unsigned long EncodeCount)
{
  EncodeCounts = EncodeCount;
}
//获取编码器脉冲数
unsigned long GetEncodeCounts(void)
{
  return EncodeCounts;
}


void EncodeParmInit(void)
{
  SetEncodeCounts(0);
}

//Beep端口初始化
void EncodeInterfaceInit(void)
{
  //定义一个接口配置结构
  GPIO_InitTypeDef GPIO_InitStruct_Encode;
  RCC_AHB1PeriphClockCmd( RCC_AHB1Periph_GPIOI, ENABLE);//初始化时钟
  
  GPIO_InitStruct_Encode.GPIO_Pin = GPIO_Pin_2|GPIO_Pin_3;//对应管脚
  GPIO_InitStruct_Encode.GPIO_Mode = GPIO_Mode_IN;//输出模式
  GPIO_InitStruct_Encode.GPIO_OType = GPIO_OType_PP; //推挽
  GPIO_InitStruct_Encode.GPIO_Speed = GPIO_High_Speed;
  GPIO_Init(GPIOI, &GPIO_InitStruct_Encode);
  EncodeParmInit();
}

//相位判断
//返回值:0:正常 1:脉冲丢失 2:编码器反转
static unsigned char JudgeEncodeRound(unsigned char T0_val ,unsigned char T1_val)
{
  unsigned short temp = 0;
  temp = T0_val;
  temp = (temp<<2) | T1_val;
  switch(temp)
  {
  //正转  
  case 0:
  case 7:
  case 14:
  case 8:
  return 0;
  //反转  
  case 11:
  case 13:
  case 4:
  case 2:
  return 2;
  }
  //丢脉冲
  return 1;
}


//读取编码器
//00 01 11 10
void EncodeProcess(void)
{
  unsigned char temp = 0;
  unsigned char T0_val = 0;
  unsigned char T1_val = 0;
  unsigned char EncodeTemp_val = 0;
  static unsigned char Encode_val = 0;
  static unsigned long EncodeStopCountsTime = 0;//正转脉冲停止时间
  
  T0_val = T0_READ();
  T1_val = T1_READ();
  
  EncodeTemp_val = (T0_val<<1) | T1_val;
  
  if(Encode_val == EncodeTemp_val)//此时间段内没有转动
  {
    //开始计时
    EncodeStopCountsTime++;
    if(EncodeStopCountsTime>10000)
    {
      SetEncodeError(5);
      EncodeStopCountsTime = 0;
    }
    return ;
  }
  else
    EncodeStopCountsTime = 0;
  
  
  temp = JudgeEncodeRound(Encode_val ,EncodeTemp_val);
  
  switch(temp)
  {
  //正转  
  case 0:
    Encode_val = EncodeTemp_val;
    EncodeCounts++;
    if(!GetnozzleNumFuelState())//非加油状态
      EncodePluseErrorCounts++;
    if(EncodePluseErrorCounts>100)
      SetEncodeError(4);//停机状态还出油
    break;
  case 1:
    //脉冲丢失需修正
    DropEncodeCounts++;
    if(DropEncodeCounts>10&&DropEncodeCounts<20)
    {
      SetEncodeError(2);//丢脉冲
      return;
    }
    if(DropEncodeCounts>20)
    {
      SetEncodeError(3);//T0或T1故障
      return;
    }
    break;
  case 2://反转
    Encode_val = EncodeTemp_val;
    RbackEncodeCounts++;
    if(RbackEncodeCounts>20)
    {
      SetEncodeError(1);
      return;
    }
    break;
  }
}

出0入0汤圆

发表于 2017-7-27 13:28:42 | 显示全部楼层
楼主你是做加油机的吗

出0入0汤圆

发表于 2019-12-4 10:35:09 | 显示全部楼层
yufanyufan77 发表于 2017-7-26 16:32
刚刚写了个加油机编码器程序不知道能用不
#include "Encode.h"

坛友,你做加油机系统?

出0入4汤圆

发表于 2019-12-4 11:11:43 | 显示全部楼层
这个加油机编码器是双脉冲输出的,一般是开漏输出,不带防作弊功能。带防作弊功能的还带有出口TTL输出,接税控口。

出0入0汤圆

发表于 2019-12-4 11:30:58 | 显示全部楼层
类似鼠标的原理

出0入0汤圆

发表于 2019-12-4 11:35:19 | 显示全部楼层
换个齿密点的盘是不是可以作弊了

出0入0汤圆

发表于 2019-12-20 09:25:22 | 显示全部楼层
ffbiao 发表于 2019-12-4 10:35
坛友,你做加油机系统?

是的一直在加油设备行业干

出0入0汤圆

发表于 2019-12-20 09:30:30 | 显示全部楼层
newselect 发表于 2019-12-4 11:35
换个齿密点的盘是不是可以作弊了

嗯  可以少出油  但是流量过快加油机会锁死

出0入36汤圆

发表于 2023-3-27 15:40:44 | 显示全部楼层
我最近也在倒腾这个编码器。

出5入157汤圆

发表于 2023-3-27 15:47:38 | 显示全部楼层
redworlf007 发表于 2023-3-27 15:40
我最近也在倒腾这个编码器。
(引用自21楼)

1000线以内的码盘 14元包邮,某宝一大堆,卷的飞起,内孔各种各样,

9700   9731的光电编码器读头也是几块钱,自己修不如买新的。

出0入36汤圆

发表于 2023-3-27 17:07:18 | 显示全部楼层
网络攻城师 发表于 2023-3-27 15:47
1000线以内的码盘 14元包邮,某宝一大堆,卷的飞起,内孔各种各样,

9700   9731的光电编码器读头也是几 ...
(引用自22楼)

我做的是监听加油机每次加油数据的设备,就是反向获取数据,我从屏幕 站控 税控取到数据,现在在想从编码器脉冲拿出数据来。

出0入36汤圆

发表于 2023-4-18 11:52:52 | 显示全部楼层
LearningASM 发表于 2015-7-8 09:08
看得眼花花的,120栅一圈?
那问题来了,在这个设备上,这一栅格对应多少油? ...
(引用自2楼)

转一圈,0.5L的油。
回帖提示: 反政府言论将被立即封锁ID 在按“提交”前,请自问一下:我这样表达会给举报吗,会给自己惹麻烦吗? 另外:尽量不要使用Mark、顶等没有意义的回复。不得大量使用大字体和彩色字。【本论坛不允许直接上传手机拍摄图片,浪费大家下载带宽和论坛服务器空间,请压缩后(图片小于1兆)才上传。压缩方法可以在微信里面发给自己(不要勾选“原图),然后下载,就能得到压缩后的图片】。另外,手机版只能上传图片,要上传附件需要切换到电脑版(不需要使用电脑,手机上切换到电脑版就行,页面底部)。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

手机版|Archiver|amobbs.com 阿莫电子技术论坛 ( 粤ICP备2022115958号, 版权所有:东莞阿莫电子贸易商行 创办于2004年 (公安交互式论坛备案:44190002001997 ) )

GMT+8, 2024-5-21 00:01

© Since 2004 www.amobbs.com, 原www.ourdev.cn, 原www.ouravr.com

快速回复 返回顶部 返回列表