杨康
学海无崖
级别: 家园常客
精华主题: 0
发帖数量: 703 个
工控威望: 637 点
下载积分: 1947 分
在线时间: 90(小时)
注册时间: 2006-11-23
最后登录: 2023-12-20
查看杨康的 主题 / 回贴
楼主  发表于: 2009-09-21 12:07
各位大虾,求教你们,怎样用西门子200的PLC驱动步进电机带动丝杆啊?要求第1段移动距离是用开关控制步进电机启动和停止,第2段移动距离是给固定的脉冲数,走完脉冲数自动停止,看资料好像比比三菱复杂很多哦。弄不明白啊
sky072154
级别: 略有小成
精华主题: 0
发帖数量: 96 个
工控威望: 235 点
下载积分: 1136 分
在线时间: 118(小时)
注册时间: 2009-06-29
最后登录: 2024-12-13
查看sky072154的 主题 / 回贴
1楼  发表于: 2009-09-21 12:45
最近在学这个,不过也没有弄明白 这个是书上的范例程序
主程序:
LD     SM0.0
R      Q0.0, 1                     //复位输出映像寄存器位Q0.0
CALL   SBR_0:SBR0                  //调用子程序

子程序SBR_0

LD     SM0.0                       //
MOVB   16#A0, SMB67                //设定PTO控制字节
MOVW   +500, SMW168                //制定包络表的起始地址为V500
MOVB   3, VB500                    //制定包络表的总段数为3
MOVW   +500, VW501                 //设定第一段的初始周期为500
MOVW   -2, VW503                   //设定第一段的周期增量为-2
MOVD   +200, VD505                 //设定第一段的脉冲数为200
MOVW   +100, VW509                 //设定第二段的初始周期为100
MOVW   +0, VW511                   //设定第二段的周期增量为0
MOVD   3400, VD513                 //设定第二段的脉冲数为3400
MOVW   +100, VW517                 //设定第三段的初始周期为100
MOVW   +1, VW519                   //设定第三段的周期增量为1
MOVD   +400, VD521                 //设定第三段的脉冲数为400
ATCH   INT_2:INT0, 19              //建立PTO输出完成中断事件19于中断程序2的连接
ENI                                //允许中断
PLS    0                           //执行PLS指令


中断程序:int_2
LD     SM0.0
=      Q0.5                        //当PTO输出完成时接通Q0.5
杨康
学海无崖
级别: 家园常客
精华主题: 0
发帖数量: 703 个
工控威望: 637 点
下载积分: 1947 分
在线时间: 90(小时)
注册时间: 2006-11-23
最后登录: 2023-12-20
查看杨康的 主题 / 回贴
2楼  发表于: 2009-09-21 15:01
多谢了,不过这个是多段脉冲输出,我要的是单段操作的。书上也是有例子,不过不详细,也是看不懂。