您现在所在的是:

PLC论坛

回帖:0个,阅读:25 [上一页] [1] [下一页]
22519
bnnyygy
文章数:6398
年度积分:1415
历史总积分:22519
注册时间:2012/3/15
发站内信
2018论坛分享达人
发表于:2025/12/2 9:48:44
#0楼
以前就玩过散了3U,感觉一般般后来很少用三菱的PLC,这几天没事找了一个5U试着玩;


现在程序都讲究可以复用,所以封装FB,使用的ST,方便以后项目使用;


来个流程吧,

1,设置高速IO,把轴参数设置好<回原点我一般自己写,所以不用系统自带的回原点>

附件 01.jpg



2,FB程序编写,

<因为要封装FB,外面只需要输入轴号就可以控制不同的轴,所以要用到变址寄存器Z>

Z的用法简单说明:Z0:=K100;  MOV K666 D0Z0,那么就是MOV K666 D100, Z0M0:=TRUE,那么就是M100:=TRUE;意思就是这么个意思把;

使用手册:MELSEC iQ-F FX5 用户手册 (定位篇- CPU模块内置, 高速脉冲输入输出模块)


手册还有个简单的示例程序:




附件 04.jpg


系统SM,SD具体情况,我需要使用的框出来了:


附件 02.jpg

附件 03.jpg





~~~~~~~~~~~~~
I/O信号的交互:




附件 05.jpg


~~~~~




手动,相对,绝对 程序:

手动JOG:

*** PLSY 用于发生脉冲信号的指令。仅发生正转脉冲,增加当前地址的内容。只支持CPU模块。***

如果有扩展轴,用PLSY就不能用了。

所以,我用DDRVI。相对定位指令,把定位位置设置很大,JOG+是正数,JOG-是负数,断驱动就停止,一样的JOG功能


绝对移动:DDRVI;


绝对移动:DDRVA,但是需要注意,当前位置=定位位置,标志位不会动作,所以,驱动条件要加 当前位置<.定位位置



附件 06.jpg



DDRVI/ DDRVA   (EN, S1, S2, D1, D2);

EN=驱动使能,S1=速度,S2=位置,D1是轴,1~12<根据硬件来>,D2是输出结果,bit0=异常结束,bit1=正常结束。

~~~~~~~~~~


以上,轴可以正反转点动,相对定位,绝对定位了;


以下是复位程序,我用AI补充的,然后自己改的;PS:AI也只能弄个大概框架,后期还是得改;

图我就不贴了,程序逻辑入下:

前限位,原点感应,后限位

轴回到原点感应,然后正传离开原点感应位置=0点。


启动回原点,轴反转,等待检测反转极限或者原点,

如果碰到反极限,那么就正传,速度=给定速度的0.3倍;

如果碰到原点,那么还是正传,速度=给定的0.1倍率,这样精准一些,如果要很精准,请使用伺服的Z脉冲;

当离开原点感应的时候,判断是0点。


以上:


~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
总结一下自己的使用感受:

1:在线修改,即使增加减少了FB引脚,可以在线写入,感觉挺好的。

2:F1帮助是在线更新的,这个也还好<虽然很多都很简易,但是能用>

3:有些功能ST 和梯形图不一样,比如定时器,梯形图是OUT T1 K50,ST是 OUT_T(EN,定时器,SV),定时器是变量类型。

4:试用了其他功能,比如简易CPU通讯,可以和其它日系PLC直接读写寄存器,包括常用的modbus-tcp,我试用了一下,挺好的。


5:有时候莫名奇妙的报错,关闭再次打开Gx Work3 就好了,


6:本来想用结构体的,全局变量定义结构体不能绑定实际地址,这样使用有些不方便,比如要和上位机组态,所以FB没用使用结构体。


7:远程在线修改,有时候PLC如果远程STOP以后,远程也不能RUN,<这个时候RUN在闪烁>,
我也懒得去研究了,其它品牌的PLC好像远程停止以后点确认可以RUN。

总结:功能挺多,该有的都有,就是感觉还是差点意思的感觉;


附件如下:

PLC:


附件:
[本地下载]


HMI:
附件:
[本地下载]
[此贴子已经被jint于2025/12/2 9:58:18编辑过]

关于我们 | 联系我们 | 广告服务 | 本站动态 | 友情链接 | 法律声明 | 非法和不良信息举报

工控网客服热线:0755-86369299
版权所有 工控网 Copyright©2025 Gkong.com, All Rights Reserved

31.2002