找回密码
 注册
关于网站域名变更的通知
查看: 1450|回复: 10
打印 上一主题 下一主题

关于旋转编码开关

[复制链接]

该用户从未签到

跳转到指定楼层
1#
发表于 2012-12-29 10:42 | 只看该作者 |只看大图 回帖奖励 |倒序浏览 |阅读模式

EDA365欢迎您登录!

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

x
本帖最后由 bluskly 于 2012-12-29 10:44 编辑 9 k5 @+ p6 w7 ?- Q* v
% K3 x& I' P2 z' E+ {
    之前我在该论坛已经发过帖子了,知道器件为旋转编码开关,但是刚刚拿到规格书,发现更加迷糊了。. r" _( I4 S6 K
    之前我的理解是,在A信号的高电平期间,只要检测到B信号来了上升沿就表明顺时针旋转。在A信号的高电平器件,只要检测到B信号来了下降沿就表明是逆时针旋转。2 U  k+ ]2 f$ t: J: S; b& ^+ a
    于是连接电路如下所示:
& \  n: ~0 c+ k1 T' f/ K
( K' i. D# m) E4 m# M  E! V8 X: j* n  m& V, ?& |
        后来参考别人电路,采用AD采样的办法,连接电路如下图:  T' ]- t+ P7 o

+ M* J( C0 G# o% D- Y
! h* @/ y  C& S# f; x, M! SPS:该处所有器件都是需要的,而且A,B网络连接到上图中的A,B处。6 A' d/ E2 j2 ~; Q
$ l2 d4 s6 M4 Y7 l
     今天看了一下规格书,发现此处很迷糊。
, V6 x( w4 s  u/ G5 c6 [
这个编码怎么出来的?怎么来判断旋转方向,怎么知道旋转速度?+ e- a" a, U; K) J+ f
) ^( |' }# m7 U! ~
附件为该器件的datasheet。
( a$ \& [! [$ W* Z EC12D1524403K.pdf (632.59 KB, 下载次数: 20) , @$ |, I8 @( b% m: R- G1 K
9 `( a; ~) g2 M) c2 c' S% x9 U

5 k  k( D: R8 R; U( R$ v% G' Q希望能够遇到高手指点一二。。  小弟不胜感激。。' I  ^5 @; [) d

1 ?" D/ i& Z5 |7 I* RQQ:460381988   方便交流的可以加Q

该用户从未签到

2#
发表于 2012-12-29 11:07 | 只看该作者
本帖最后由 jacklee_47pn 于 2012-12-29 11:31 编辑 / j! r6 Y& ~! I8 u1 s& [* ~7 L: B. g

% ~7 l; V8 _' C( JA 接到 CPU (或單晶片)的 INT,B 接到 CPU (或單晶片)的輸入端。A 當產生正沿的時候(就是有箭頭的地方)產生中斷,去看 B 的輸入是高電平或是低電平,就可以知道是正轉或是反轉,有幾個 A (或是 INT )就是被旋轉的幾步(或是格數)。
& ~. ^9 u7 C9 s1 l. H' y1 N$ |
8 _. F' ^& n; V6 M' q, w每個 A 的間隔時間就可以算出轉速。例如:每個 A 間隔 0.125 秒,旋转编码开关一圈會產生 8 個 A 正沿信號,所以轉速是 0.125*8 等於每秒走一圈。  o, u' C# B# g- O5 o

该用户从未签到

3#
发表于 2012-12-29 11:38 | 只看该作者
本帖最后由 jacklee_47pn 于 2012-12-29 11:40 编辑 - v2 U, b, g$ n1 w, B) R

0 s& s: ^6 D. E2 l6 T上面之前我遇過的是SW走一格,剛好會在A的地方產生一個週期脈波。(SW走一格產生一個正沿和負沿信號)
- P; @- t# @. D/ S2 P$ W, ~
, O* q2 P7 d) `& ~3 r如果你的SW不是這樣,單只有半個週期(一個正沿或負沿信號),那就辛苦了,只要 A 狀態改變,就要去看 B的狀態。
  • TA的每日心情
    开心
    2024-5-2 15:45
  • 签到天数: 1 天

    [LV.1]初来乍到

    4#
    发表于 2012-12-29 11:47 | 只看该作者
    了解一下!!!

    该用户从未签到

    5#
     楼主| 发表于 2012-12-29 15:13 | 只看该作者
    jacklee_47pn 发表于 2012-12-29 11:07
    & d3 V# b1 s* ?7 r0 {/ IA 接到 CPU (或單晶片)的 INT,B 接到 CPU (或單晶片)的輸入端。A 當產生正沿的時候(就是有箭頭的地方)產生 ...
    / o' A9 D  @9 h; g6 B9 ]- b
           关于怎么判断顺时针还是逆时针旋转 我已经基本了解。就是在A信号的上升沿去读取B信号的电平值。若B为低电平,表明是顺时针旋转,若B为高电平,表明是逆时针旋转。
    ' _- I& v) Z. N0 r* k    刚也数了一下,旋转360°,会走30格,也就是需要15个周期,也就是会产生15个上升沿。
    6 ?% E  S6 ^- e8 c$ R) d, P    但是我转动的时候 不会是匀速转动呀,那么此时每一个周期 或者没一个电平持续的时间就会不一样。那我怎么知道我该变化多少?难道是我顺时针走一格 我就增加某个值,逆时针走一格,我就减去某个值?

    该用户从未签到

    6#
    发表于 2012-12-29 19:58 | 只看该作者
    难道是我顺时针走一格 我就增加某个值,逆时针走一格,我就减去某个值?  ===> 是的就是這樣。
    $ B- D5 G: A5 [. a( B/ q; @
    / E. @# U. A( Z( W  y但是我转动的时候 不会是匀速转动呀,那么此时每一个周期 或者没一个电平持续的时间就会不一样。那我怎么知道我该变化多少?   ===> 所以要用 Interrupt +  Timer 功能,用 Interrupt 去啟動Timer去計算每次間隔的時間,1/(時間*15)就是當下瞬間轉速(每秒多少圈) 。多取幾次(或是一段時間)然後加起來平均,就是單位時間內的平均轉速。如果這 Timer 超過某個設定時間值,就可以忽略不計算轉速。

    该用户从未签到

    7#
     楼主| 发表于 2012-12-31 22:50 | 只看该作者
    jacklee_47pn 发表于 2012-12-29 11:38 & I# N( I. {1 l3 y+ n
    上面之前我遇過的是SW走一格,剛好會在A的地方產生一個週期脈波。(SW走一格產生一個正沿和負沿信號)
    ) X, @2 [- g+ ~4 a" J0 ^; b( `& H- v/ u, f4 g$ U
    如果 ...

    2 s& W! C' C. j8 r我找了一个单片机 内部带有正交解码的接口的。

    该用户从未签到

    8#
    发表于 2013-1-1 21:56 | 只看该作者
    本帖最后由 luo7678094 于 2013-1-1 21:57 编辑 * B  e* C8 W; T2 L6 [
    4 e: j3 H  R& Q# T# _5 ?5 Y
    你要是有需要的话我给你参考程序,我自己前段时间还特意写了个程序,AVR单片机的;作为硬件工程师,我写完这个程序之后格外更清晰的认识这个东西了;我用了4种方法,最后还是发现我目前这种方式最有效!!无论转动多快,无论怎么转,都能100%识别,我用的是ALPS的和你这个一样的结构,只不过我的带了轻触按键

    该用户从未签到

    9#
     楼主| 发表于 2013-1-2 00:42 | 只看该作者
    luo7678094 发表于 2013-1-1 21:56 / D$ I5 _0 C' n, m% c
    你要是有需要的话我给你参考程序,我自己前段时间还特意写了个程序,AVR单片机的;作为硬件工程师,我写完这 ...

    . t( J2 S. z' j' ~' ]/ t好的 邮箱:huangjinyi@leader-intl.com.cn  QQ:460381988

    该用户从未签到

    10#
    发表于 2013-1-3 13:49 | 只看该作者
    bluskly 发表于 2013-1-2 00:42 7 }/ t! O. ~+ ^
    好的 邮箱:  QQ:460381988
    : N. D6 M8 U3 \" s+ ~
    刚刚发往你QQ邮件

    该用户从未签到

    11#
     楼主| 发表于 2013-1-4 10:32 | 只看该作者
    luo7678094 发表于 2013-1-3 13:49
    ( c; P$ N3 {* P' g6 E- D% _9 b9 Y刚刚发往你QQ邮件

    % Z+ f3 X$ l: c3 l$ T: \邮件已经查收,就是看不懂。看你里面貌似还有什么数字电位器,屏幕什么的。有没有简单点的,我没搞过AVR,更加迷糊了点。

    点评

    哎!哥们你的C语言要提高啊。  发表于 2013-1-5 16:45
    您需要登录后才可以回帖 登录 | 注册

    本版积分规则

    关闭

    推荐内容上一条 /1 下一条

    EDA365公众号

    关于我们|手机版|EDA365电子论坛网 ( 粤ICP备18020198号-1 )

    GMT+8, 2025-7-26 09:52 , Processed in 0.140625 second(s), 31 queries , Gzip On.

    深圳市墨知创新科技有限公司

    地址:深圳市南山区科技生态园2栋A座805 电话:19926409050

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