关于伺服电机和步进电机与伺服电机运转距离怎么控制?与三菱FX2NPLC之间进行通讯,对这方面不是很懂,在自学。

PLC论坛-论坛 2004年3月 主题列表-中华工控网-
中华工控网
论坛 2004年3月主题列表  
您可以使用 Ctrl+F 键来在本页搜索您需要的主题,。
(43/-12-12 |
(25/-1-28 |
(38/-3-2 |
(53/-3-2 |
(68/-3-3 |
(32/-3-27 |您的位置:
&昆山三菱plc培训班招生 昆山学习三菱plc编程
昆山三菱plc培训班招生 昆山学习三菱plc编程
&昆山市捷梯职业培训学校
&昆山市震川西路111号名仕大厦9楼909室(农工商超市旁)
&&&&志趣认证
&日(距今2177天)
很多人对三菱PLC和西门子PLC不是很清楚到底是什么东西,到底有什么区别。是只是品牌的不同还是其他的都不同,下面简单的说下。
首先它们的编程理念不同,三菱plc是日系品牌,编程直观易懂,学习起来会比较轻松,而西门子plc是德国品牌,指令比较抽象,学习难度较大,但指令较少,而三菱的指令较多,所以学习三菱和学习西门子的周期是一样的;
三菱的优势在于离散控制和运动控制,三菱的指令丰富,有专用的定位指令,控制伺服和步进容易实现,要实现某些复杂的动作控制也是三菱的强项,而西门子在这块就较弱,没有专用的指令,做伺服或步进定位控制不是不能实现,而是程序复杂,控制精度不高。
过程控制与通信控制西门子是强项,西门子的模拟量模块价格便宜,程序简单,而三菱的模拟量模块价格昂贵,程序复杂,西门子做通信也容易,程序简单,三菱在这块功能较弱。
所以针对不同的设备不同的控制方式,我们要合理的选用PLC,用其长处,避其短处。
例如某设备只是些动作控制,如机械手,可选择三菱的PLC,某设备有伺服或步进要进行定位控制,也选三菱的PLC;像中央空调,污水处理,温度控制等这类有很多模拟量要处理的就要选西门子的PLC比较合适,某设备现场有很多仪表的数据要用通信进行采集,选西门子的好控制。
昆山PLC培训学校,职业培训的领航者。 在昆山捷梯学习PLC,可以获得昆山政府补贴哦。
& &上元教育昆山捷梯培训学校PLC教育中心是全国较早从事PLC技能培训的学校之一,学校实验设备齐全、先进,有三菱PLC、西门子PLC、伺服电机、步进电机、变频器、触摸屏及各种传感器供学员实验。师资力量雄厚,所有老师都是20多年自动化高级工程师,只有20多年工控经验的老师才俱备这方面知识和技术全面性。教师团队拥有在钢铁、化工、电力、机械制造、汽车、轻纺、物流、等各个行业现场自动化改造及设计经验。能为学员解决学习PLC和所在企业技术疑难问题,是学员工作中的强大技术后盾。
1.PLC的概述:
& & 三菱FX2N系列PLC的选型、扩展模块的功能介绍;
& & 进制与编码的讲解;
& & 三菱FX系列PLC接线及扩展模块接线
& & GX Developer编程软件使用,程序上传下载、备份、故障诊断
& & GX Developer软件使用技巧和快捷方式有效增加您工作效率
& & PLC\硬件故障外围判读方法
2.PLC软元件学习:
& & PLC常用软元件使用方法及数据类型,数据格式
& & 工程案例中软元件的使用方法及技巧及案例分析
& & 工程常用程序段分析及其使用
3.PLC编程指令讲解:
& & 基本指令、步进顺控指令、应用指令、特殊指令使用技巧及案例分析
& & 流程指令、传送比较指令、数据运算指令、移位指令、数据处理指令等
4.PLC编程实战:
& & PLC编程方法和程序结构、常用PLC编程方法介绍
& & 总结PLC在工厂中常见故障,如何解决
5.人机界面的工程应用及设计:
& & 触摸屏项目组态及画面制作
& & 报警、用户管理、数据记录、趋势图等功能制作过程
& & 人机界面画面传输及与PLC的通讯方式
& & 触摸屏与三菱FX系列PLC综合实例讲解及实验
6.模拟量AD\DA模块采集和应用:
& & FX-2AD、FX-4AD、FX-4AD-PT等模拟量输入模块的应用及案例分析
& & FX-2DA、4DA等模拟量输出模块的应用及案例分析
& & 变频器通过模拟量模块控制及监控系统实例
& & PLC与变频器通信案例分析、MODBUS通信读与写变频器状态及监控。
7.运动控制步进电机:
& & 步进及伺服电机的原理的控制方式
& & 步进电机的及伺服电机的参数及端子意义
& & 2轴自动打孔机的步进控制编程及实例分析
8.运动控制伺服马达、1PG控制模块:
& & 伺服电机的原理的控制方式&
& & 伺服电机的参数及端子意义
& & 伺服手动控制模式编写
& & 伺服电机回原点控制方法及编程模式&
& & 2轴自动仓储系统伺服电机的编程及实例分析
& & 伺服马达故障分析
9.综合编程实战:
& & 顺控程序编程
& & PLC程序结构的规划(流程图画法讲解)
& & PLC 内部软元件的使用及规划
& & PLC 顺序控制梯形图编程方法讲解及分析。
& & PLC顺序控制步进指令(STL)编程方法讲解及分析。
& & 人机界面画面制作模式技巧及画面在工程中的规划。
联系人:岳老师
联系电话:;3;
咨询报名:岳老师
QQ咨询:;
昆山学校地址:昆山市震川西路111号名仕大厦9楼909室(农工商超市旁)
&凡报名学习的学员获赠相关学习软件,内容如下:
触摸屏编程软件 &西门子S7/200编程软件 &FX系列选型手册 三菱PLC的编程软件 三菱PLC仿真软件
注:这些资料非常宝贵,网上没有下载的,价值300元。
昆山捷梯教育PLC培训&&考试通过可获得昆山政府补助!
昆山唯一可申请政府补贴的正规办学单位!昆山市高技能人才定点培训机构!
补贴条件:经我校正规培训,取得证书后,在 我市就业满6个月(以社保为准),即可申请。
联系我时请说明来自志趣网,谢谢!
关键字:&&
给我留言,我会立即联系您,谢谢!
(格式:区号-号码(分机) 如 010-8))
(强烈建议填写,可跟踪信息!)
(1000字内)
免责申明:志趣网所展示的信息由用户自行提供,其真实性、合法性、准确性由信息发布人负责。使用本网站的所有用户须接受并遵守法律法规。志趣网不提供任何保证,并不承担任何法律责任。 志趣网建议您交易小心谨慎。||
Copyright &
志趣网 版权所有用plc控制两台伺服做两轴控制&用PLSY指令控制步进电机
实际上德国人有更好的办法,就是用真正的光学绝对值码盘的绝对值编码器,并同时输出正余弦信号,其绝对值信号也是用通讯形式输出,例如海德汉的EnDat,或STEGMANN的Hipeface,其时钟频率可在1MHz以上,虽然绝对值信号输出,仍然要编码-解码,速度快了,响应一样跟不上,但是不要忘了,其是真正光学刻线的绝对值,其响应不上并不丢脉冲。并不影响精度,而只是滞后,这时,其同时输出的正余弦信号就有用了,既可以作为速度反馈(即时的),也可以作为高速定位的冗余,此高速定位是减速,等速度下来,仍然由高精度绝对信号定位停车,从而做到高速高精度。用这种方法,编码器是贵了,但运动控制卡的成本就可以下来,这的确是种好方法,可惜,国内做运动控制的,基本是跟着日本人走,还很少有人认识到这种方法。
三菱PLC的PLSY指令 我想实现步进电机旋转60° 我这样写对不对 PLSY k y3
步进电机的步距角是0.9不对的
首先对脉冲输出仅限于y000或y001 也就是说不能指定y003
一个脉冲是赚一个步距角吗
&&& plsy k3000
&&&&步距0.9的
Y0和Y1同时输出PLSY指令是可以的(其实也不是同时,因为你得分别写两条这个指令,所以只能说是在同一扫描周期内执行而已.姑且认为是同时吧)
Y0和Y1的高速输出标志各是各的,不会互相影响.
不可以同时执行同一个输出点的两条PLSY指令.
首先用MT晶体管系列的,
其次,最好不用PLSY指令,使用DIVR指令,可重复使用.
对于脉冲输出来控制伺服电机,台达PLC完全可以胜任,而且已经有很多实际应用,PLSY/PLSR指令是脉冲输出控制指令,DRVI/DRVA/ZRN是专门定位指令,还有PWM脉宽调制指令都可以使用,其中PLSY是直接脉冲输出,PLSR是可以设置加减速时间脉冲输出指令.
前几日改造设备,原设备用的PLC是三菱FX1N的,运动机构用的是安川的伺服电机。
原程序中控制电机发脉冲的指令为PLSY,起初我没有在意,就没有换用别的指令,但是当我在触摸屏上加上显示伺服当前位置时,发现了问题。
显示伺服电机通过丝杠带动的工作台的当前位置,我用了PLC自带的D8140寄存器中的数值除以变比得到,但当我实际调试时,才发现,电机正转,该值增加,没有错,但当电机反转,工作台往回走时,显示值还是增加,这时我的头就大了,这样根本就不能真实的显示工作台的位置了呀。但是我以前做过类似的系统,显示的没有错啊!我冷静的思考比较了一下,想到应该是PLSY这条指令的问题。想到这,我换用了DRVA指令,结果一调试,这回没有错了。
后来我想到,D8140中存放的是PLC发送的脉冲数,而PLSY指令发送脉冲只有正值,没有负值,电机旋转方向是靠控制电机正反转来决定的。而DRVA指令控制电机的正反转不是人为定义的,而是靠给定的脉冲值,这时脉冲值是有正负的,所以D8140中的脉冲数会相应的增加或减少,这时想在屏幕上监视的结果才出来了。
用PLSY指令控制步进电机
经常看到有的工控朋友问起用PLC控制步进马达的问题,在这里我举个最简单的例子,只能提供思路,更深入的研究就靠大家自己了。
<img src="/blog7style/images/common/sg_trans.gif" real_src ="/forum/pic/.jpg"
ALT="用plc控制两台伺服做两轴控制&用PLSY指令控制步进电机"
TITLE="用plc控制两台伺服做两轴控制&用PLSY指令控制步进电机" />
&如图所示:1、2为步进电机驱动器的电源&
3为控制电源正极& 4为脉冲输入& 5为方向控制
步进电机的步距角为1.8度,驱动器有细分的功能,考虑到精度和速度的问题,我们选用了半步运行的方式。丝杆的螺距为5mm,即步进电机旋转一周,它所拖动的工件移动5个mm,PLC则输出400个脉冲,即每毫米需要输出80个脉冲。5号脚高电平则电机正转,反之亦反。
设计的要求是这样的:在人机界面上输入工件要到的位置(以mm为单位),输入完成后工件自动运行到指定位置停下。如果设定的位置大于实际的位置,则工件正向运转到位,反之亦反。
D200:人机界面输入的工件要求位置
D202:工件的实际位置
D204:实际位置与设定位置之差值
程序如下:
DSUBP D200 D202
D204&&&&&&&&&&&
;将差值送到D204
Y2&&&&&&&&&&&&&&&&&&&&&&&
;如果设定值大于实际值则正转
LDD&= D200 D202
DSUBP D202 D200
D204&&&&&&&&&&&
;将差值送到D204
Y2&&&&&&&&&&&&&&&&&&&&&&&
;如果设定值小于实际值则反转
LDD&& D200
D202&&&&&&&&&&&&&&&
;设定值与实际值不等
;以1000赫兹的频率输出脉冲所需的脉冲数
DMUL D204 K80
;所需输出的脉冲数
DADDP D202 D204
D202&&&&&&&
;脉冲输出完成后实际位置与设定位置一样
这是最简单的控制了,希望对大家有一定的启发,没有上机调试,应该是没什么问题了。看在同行的份上,大家不要扔臭鸡蛋哦。
楼主应该没有考虑进PLC的刷新速度吧
由PLC直接产生脉冲来控制步进电机可以有效地简化系统的硬件电路,进一步提高可靠性。由于PLC是以循环扫描方式工作,其扫描周期一般在几毫秒至几十毫秒之间,因此受到PLC工作方式的限制以及扫描周期的影响,步进电机不能在高频下工作。例如,若控制步进电机的脉冲频率为4000HZ,则脉冲周期为0.25毫秒,这样脉冲周期的数量级就比扫描周期小很多,如采用此频率来控制步进电机。则PLC在还未完成输出刷新任务时就已经发出许多个控制脉冲,但步进电机仍一动不动,出现了严重的失步现象。若控制步进电机的脉冲频率为100HZ,则脉冲周期为10毫秒,与PLC的扫描周期约处于同一数量级,步进电机运行时亦可能会产生较大的误差。因此用PLC驱动步进电机时,为防止步进电机运行时出现失步与误差,步进电机应在低频下运行,脉冲信号频率选为十至几十赫兹左右,这可以利用程序设计加以实现。
TO&myrandge:
&&&&你的考虑是正确的,很多时候我们都要考虑到PLC的扫描周期对程序的影响,但是这个程序不是你想象的那样的,因为这段程序执行的时候是以中断的方式执行的,就是说脉冲的处理与PLC的扫描周期并没有关系,以这种方式输出脉冲时,FX2N最高可以到20KHz,好象FX1S的可以更高。
&&&&希望大家多交流。
发脉冲可以达到20KHZ是没错的,三菱PLC上的说明书也确实是这样写的,但是,就那个文章中所说,你发的脉冲并不全用在控制步进电机了,会产生失步的.
PLSY指令发连续脉冲是不受扫描速度的影响的,但是如果发出的脉冲去控制步进电机,就如文章中所说,是要受扫描速度的影响的,文章不是我写的,我对这方面也不懂,所以,请问,楼主如果你有现在有条件的话,去试验下,因为我没有这方面的条件.
另外,请教楼主的是,你刚才说的中断方式是否是指PLSY的自身的发脉冲方式?还是楼主你编写的程序是用到了中断指令?多谢指教,谢谢!还请问楼主,
DPLSY K Y0 ;以1000赫兹的频率输出脉冲所需的脉冲数 LD DMUL D204 K80 D206
;所需输出的脉冲数 LD M8029
你这里的M8029在程序里起了什么作用呢?为什么这里你加了M8029而不是其他呢?请楼主指点,谢谢!
TO:myrandge
PLSY指令发送脉冲去控制步进电机,不会有失步,因为使用PLSY指令,当扫描到PLSY指令时,输出端子会立刻输出脉冲信号,而并不是等到程序扫描到END时,才会输出脉冲信号。
其实这段程序是我以前做过的一个项目里面的一段,刚开始的时候不是用的脉冲指令,而是用的一个计时器指令产生脉冲:
out&t246&k0
&&&&刚开始程序不长的时候,效果和PLSY差不多,后来程序不断的完善,也越来越长,这段指令就不行了,因为扫描周期变大,使得脉冲输出周期也越来越大,对步进电机的速度影响很大,所以就改成PLSY了。
M1026和M1029只是一个标志信号而已,编写程序时,根据自己的需要,如果需要用到M1026和M1029作为条件时,就可以将M1026或者M1029作为条件编写到PLC程序中,如果不需要就不用便写到程序中。
正如lesing.du所说的那样,就看你的需要了。
作为我的这段程序来说,因为我要在屏子上显示实际的位置所以,就需要在脉冲输出完成后马上将数据处理好并将数据传到触摸屏上,因此就用了M8029。
正如你所说的那样,定时器发脉冲是要受到PLC扫描周期的影响的,我记得当时我做这个程序的时候,刚开始是单轴的,工艺也比较简单,所以就用了定时器。后来到了双轴了,工艺也复杂了,这种方式就不行了。尽管T246的时基是1ms的,但是这种方式发脉冲时,他是要程序处理后才发脉冲,就是说程序每扫描一次就执行一次,这样的话,步数多了速度就不行了。当然,也可以做定时中断处理。但这样也有误差,累积误差还很大。
这段程序其实有个缺点:当工作台移动的时候,屏幕上的工作实际位置值(D202)并没有随着工作台的移动而改变,它只是在工作台移动完成后才变为实际位置值。好比现在工作台的实际位置为200,要求位置是300,当工作台移动的时候,实际值(200)并没有随着工作台的移动而201,202……的增加,而是工作台移动到300的位置后直接变为300,因此这段程序不能实时的反映工作台的移动情况。
为了克服这种情况,我将程序做了部分的修改,更新如下:
D200:人机界面输入的工件要求位置
D202:工件的实际位置
D204:工件的实际位置(做转换用)
D206:实际位置变化值
程序如下:
LDD&&D200&D202&&&&
DSUBP&D200&D202&D204&&&&&&&&&&&&&;将差值送到D204
SET&Y2&&&&&&&&&&&&&&&&&&&&&&&&
&;如果设定值大于实际值则正转
LDD&=&D200&D202
DSUBP&D202&D200&D204&&&&&&&&&&&&;将差值送到D204
RST&Y2&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&;如果设定值小于实际值则反转
OR&M11&&&&&&&&&&&&&&&&&&&&&&&&&&&&&;设定值与实际值不等
DPLSY&K1000&K0&Y0&&&&&&&&&&&&&&;以1000赫兹的频率不间断输出脉冲
DDIV&D8140&K80&D206&&&&&&&&&;脉冲数折算成毫米
MOV&D202&D204&&&&&&&&&&&&&&&&;实际位置值送到D204
ADD&D204&D206&D202&&&&&&&&&&;增加的毫米数实时传到D202(工作台实际位置)
SUB&D204&D206&D202&&&&&&&&&&;减少的毫米数实时传到D202(工作台实际位置)
DMOV&K0&D8140&&&&&&&&&&&;脉冲输出完成后给脉冲计数器清零
FX2N发脉冲时有一个最大的缺点,那就是脉冲计数器D8140,不论电机是正转还是反转,始终处于增加的状态,也就是说你无法知道电机的当前位置,如果单纯用于控制步进电机或伺服建议还是选用FX1S或FX1N而且价格也要比FX2N便宜。但FX1S和FX1N没有浮点运算功能,在精密计算时,很可能会丢步。
步进电机产生丢步的原因不是因为PLC的PLSY指令或DDIVR等脉冲指令本身所引起的,其实PLC都有把脉冲发完,只是因为步进电机采用的是开环控制,当马达在运转过程中遇到阻挡的时候,步进马达会出现“打滑”的现象,也就是所谓的“丢步”,大家用同样的指令去驱动伺服电机就可以看出,如果马达运转过程中有阻挡,伺服还会一直的往前冲,甚至会出现异常的响声,直到达到所设定位置才肯真正的停止下来,如果伺服所带负载的弹性过高的话,甚至都有可能出现“共振”的现象,这也是所有初学伺服时容易产生的“盲区”,建议大家初学时一定要注意,如果是步进的话就无所谓了,顶多走不到位罢了,不至于出现什么事故!
FX2N PLC没有定位指令,
只能有PLSY,PLSR脉冲输出指令,如何实现搜寻原点呢
我是这样做的ld m10 andi x0 plsr k k50 y0
x0原点信号
还有其它好的方法吗?
哈哈。搞的差不多了
我是这样用的
ld m10 andi x0 plsr k k50 y0
ldp x0 mov k0 d8140
&求助:FX1S脉冲Y0输出控制伺服,停止问题!
arden 建议删除该贴!! | 收藏 | 回复
16:09:07 楼主
PLC型号为FX1S-10MT;伺服系统为MR-J2S-40A+HC-KFS43;用X0启动发脉冲给伺服控制器PLSY K25000
Y0,寄存器D0中的值是K10000,要求在伺服电机转动过程中(脉冲没有发完)遇到一传感器信号X1时,伺服电机再转一个设定的角度后停止,要求伺服电机从启动到停止中途不能有停顿,请各位高手帮忙参考,谢谢!
请教三菱变成高手,帮忙看看一下程序,谢谢!接线方法如下:
X0:脉冲启动信号
X1:检测目标传感器信号
X2:接Y0输出信号,用C237作高速计数器
Y0:接伺服电机
&& 下面的程序我在低速时可以运行,但是在PLSY K25000
K1时却不行,定时器T0根本就做不到,请高手指教,
PLSY K Y000
OUT T0 K10
OUT C237 K400
引用 | 回复
| 设为最佳回复
13:29:00 4楼 流逝泉 检测目标传感器信号接通后将D8140
清零,然后当d8140等于设定脉冲后断开PLSY指令
就发脉冲给伺服就可以了,伺服可以设置多少个脉冲转一圈。
步进电机才有步距角,伺服一般叫脉冲当量。
控制步进电机,一般的用晶体管输出的就可以,三菱的fx2n
能控制两台,fx3u能控制3台步进电机,如果不够,或要求稍微高一点,可一追加fx2n-1pg脉冲输出模块,成本稍高,最准确最好的定位单元是fx2n-10GM,fx2n-20GM后者可实现直线插补.但定位单元也是最贵的 
在编程时,按份脉冲数减500个左右,或者说在快到位置的时间停下来。然后以极低的速度爬行到光电开关处停止。相当于回原点方式。
&这个问题不是没有写,可能是大家觉没有必要写吧!用过几次步进电机的人都知道步进电机是靠脉冲控制进行角位移的,大家的想法都差不多,如果你使用步进电机带动丝杆使滑块来回移动,你应该在滑块的前后终点位置安装感应器。
感应器一般用光电的吧带槽的那种。
你可以写段程序确认步进电机是否在原点上,没有的话让步进电机做回走的动作,速度可以慢点,如果你用三菱的话用这个指令plsy。
具体是这样的 plsy k500 k0 y0
因为参数中用了 k0所以马达会一直走下去,除非前面的条件不导通。
你必须在前面加一个感应器导通的条件。感应器导通的时候让它停下来。
具体做的时候可能比我说的要复杂些。
已投稿到:
以上网友发言只代表其个人观点,不代表新浪网的观点或立场。

我要回帖

更多关于 步进电机与伺服电机 的文章

 

随机推荐