nthaxhb
级别: 探索解密
精华主题: 0
发帖数量: 19 个
工控威望: 121 点
下载积分: 565 分
在线时间: 42(小时)
注册时间: 2011-01-02
最后登录: 2024-02-27
查看nthaxhb的 主题 / 回贴
楼主  发表于: 2011-07-03 13:25
编码器编好程序  显示的数值和实际数值不一样  怎么改啊
yamqq
雅马哈,爱普生,电装机器人。
级别: 网络英雄

精华主题: 0
发帖数量: 1717 个
工控威望: 5539 点
下载积分: 24528 分
在线时间: 297(小时)
注册时间: 2008-05-05
最后登录: 2024-04-01
查看yamqq的 主题 / 回贴
1楼  发表于: 2011-07-05 15:27
说清楚,是发出去的还是收回来的脉冲?
这个人很懒,什么也没有留下!
yamqq
雅马哈,爱普生,电装机器人。
级别: 网络英雄

精华主题: 0
发帖数量: 1717 个
工控威望: 5539 点
下载积分: 24528 分
在线时间: 297(小时)
注册时间: 2008-05-05
最后登录: 2024-04-01
查看yamqq的 主题 / 回贴
2楼  发表于: 2011-07-05 15:29
下面说两个程序样例吧
LD W0.00

@PRV(881) #0010 #0000 D100/读计数器当前值

@CTBL(882) #0000 #0000 D0产生比较表并登录比较

MOV(021) &2 D0比较数量设为2个

MOV(021) &3000 D1第一个目标值

MOV(021) &0 D2

MOV(021) &8 D3产生的中断程序号,要写相应的中断程序

MOV(021) &5000 D4第二个目标值

MOV(021) &0 D5

MOV(021) &9 D6产生的中断程序号,

LD A531.00计数器复位,并停止表比较,表比较停止后,由表比较产生的中断也停止了!

RSET 100.00

RSET 100.01






ctbl指令,分两种,一种是目标值,一种是范围,输出有两个方式,0000和0001直接就开始了,0002和0003要配合ini指令输出,数值跟表数据对应达到的时候,然后通过中断输出,停止比较用ini指令!中断任务另行了解!

prv是读出当前值,用A270也可以!

A531.00设为1的时候如果外部硬件信号Z相为1,计数器清零(Z相加软件复位),直接将A531.01置1也可以清零(软件复位)如果加了重启比较,就是把ctbl指令重新启动一次!,当然用ini也可以清零。

掉电存储的思路是实时将A270的数据保存到一个掉电H区,上电第一个瞬间用ini变更一下。

硬件方面有(AB相,脉冲加方向)(差分信号为5V就是正负信号同时关断,集电极开路为关断正极pnp或关断负极npn)他们可以用高速光藕来转换,也可以用AM26ls31(32)来转换下面就是搜索网址http://www.baidu.com/s?tn=max2_cb&bs=Am26ls32&f=8&wd=Am26ls31&inputT=1265


以上内容来自本人原创,且通过实际工程验证!
本帖最近评分记录:
  • 下载积分:+3(dl2006) 热心助人
  • 这个人很懒,什么也没有留下!
    nthaxhb
    级别: 探索解密
    精华主题: 0
    发帖数量: 19 个
    工控威望: 121 点
    下载积分: 565 分
    在线时间: 42(小时)
    注册时间: 2011-01-02
    最后登录: 2024-02-27
    查看nthaxhb的 主题 / 回贴
    3楼  发表于: 2011-07-05 23:21
    学习了