『7x24小时有问必答』
下面只讲解主要是伺服控制程序,其他程序,设置、HMI请参考完整案例
案例说明
PLC 本身没有直接和伺服做 MODBUS 通讯,依靠触摸屏中转读取伺服编码器脉冲Modbus‑RTU 协议
触摸屏的COM2 口对接三菱 FX‑PLC;COM1 口对接伺服驱动器;两个通讯的波特率、校验格式不能混淆

I O分配
X0
Y0

X1
启动
Y1
端子分料
X2
停止
Y2
端子上料
X3
急停
Y3
端子护压
X4
端子分料原位
Y4
托快抽取
X5
端子分料到位
Y5

X6
端子上料到位
Y6
螺丝分料
X7
端子护压到位
Y7
吸嘴上下
X10
托快抽取原位
Y10
真空吸料
X11
托快抽取到位
Y11
电批上下
X12
螺丝分料原位
Y12
拧丝前后
X13
螺丝分料到位
Y13
次品回收
X14
吸嘴上下原位
Y14

X15
吸嘴上下到位
Y15
拧螺丝正转信号
X16
电批上下原位
Y16
拧螺丝反转信号
X17
拧丝前后原位
Y17

X20
拧丝前后到位
Y20

X21
端子有料检查
Y21

X22
螺丝有料检测
Y22

X23
端子上料原位
Y23

X24
打螺丝检测OK
Y24

X25
伺服报警
Y25

X26
扭矩限制
Y26

伺服接线

打螺丝伺服

(CN1)I/O头接线

驱动器端
PLC端
ZSPD+
5
X26
ZSPD-
4
0V
ALRM+
28
X25
ALRM-
27
0V
COM-
14
0V
SON
9
0V
TCM0
34
Y15
TCM1
8
Y16
COM+
11
"+24V

伺服参数设置
模式选择  P1-01:5                              电子齿轮比分子  P1-44 :1600        
电子齿轮比分母  P1-45 :10            逆向运转禁止 P2-15 :0

正向运转禁止 P2-16 :0                  紧急停止   P2-17 :0
通讯站号 P3-00 :1                           通讯波特率  P3-01 :波特率19200
通讯协议  P3-02 :8位偶校验1
其他需要设置参数关注完整案例
数据变量

程序编写
▼ ①  只有设备整体切换到手动模式(手动允许 GL 接通),并且操作人员在触摸屏按住,拧螺丝手动按钮
拧螺丝手动going接通,按住按钮伺服就转,松开按钮就断开
▼ ②  当设备气缸退回原点复位的时候,强制把手动、自动两个运行标志全部清零,伺服立刻停止转动。防止气缸在复位的同时伺服还在工作,发生机械碰撞,属于安全保护逻辑
自动模式和手动模式互锁,两个模式不能同时生效。只要自动模式启动,或者手动按钮按下,PLC 输出 Y15 高电平,伺服收到信号,电机开始正转拧螺丝

▼ ③  操作人员触发自动启动信号,拧螺丝自动going自锁保持接通,Y15 输出,伺服电机开始转动
扭矩限制中 = ON:伺服检测到扭矩达标,螺丝已经压紧,X26 接通,扭矩限制中自锁开启;扭矩限制中的常闭触点断开,自动自锁回路断开,伺服立刻停止
扭矩超时无信号 = ON:伺服启动之后,超过设定时间螺丝始终没有顶紧,没有扭矩反馈,计时超时,自动模式强制停止,判定拧紧失败

▼ ④  实际转动圈数在设定上下限区间之内,输出 K2,判定 OK 合格
上限 5 圈,下限 3 圈;实际 4 圈,判定 OK
实际圈数超过上限或者低于下限,输出 K1,判定 NG 不合格

▼ ⑤  输出圈数计算完成pls:产生一个单扫描周期脉冲,给到主程序,通知整套系统本次拧螺丝已经结束并且给出判定结果
▼ ⑥  Y15 断开,伺服电机已经停转,并且上一轮的圈数计算已经完成的标志位没有接通,开启圈数计算;PLC 准备读取伺服编码器脉冲,换算电机转动圈数
▼ ⑦  DMOVP K0 脉冲差值:32 位脉冲差值寄存器清零,清除上一次的数据,防止干扰本次计算
MOVP K0 OK或NGout:OK‑NG 判定结果清零
伺服电机停止瞬间,伺服编码器脉冲数值会短暂抖动,不能立刻读取,等 T_ON_1 延时结束之后,脉冲数据稳定再采集,避免计算出错
▼ ⑧  32 位减法指令;(拧紧结束之后的脉冲数值 −拧紧启动前脉冲数值 = 脉冲差值)
▼ ⑨  伺服启动之前脉冲数值是 20000,拧紧结束之后脉冲 20500;脉冲差值 = 500;代表伺服编码器一共发出 500 个脉冲
▼ ⑩  DDIV 脉冲差值 K100 圈数:32 位除法;脉冲数值 ÷100 = 电机转动圈数;前面电子齿轮比已经设定好,伺服电机每转 1 圈反馈 100 个脉冲;接上例:500÷100=5,电机实际转动 5 圈
▼  ⑪  脉冲变化大于 50 个脉冲,代表伺服确实有转动,计算结束接通,进入 OK‑NG 判定流程
▼    脉冲几乎没有变化,换算之后不到 0.5 圈,螺丝根本没有拧进去,触发圈数超时报错
▼    DMOVP 拧后反馈脉冲 拧前反馈脉冲:把本次拧紧结束的脉冲值赋值给下一次启动的初始脉冲;作为下一次拧螺丝的计算基准
▼    DMOVP 圈数 实际圈数out:把本次计算得到的实际圈数输出到 D230 寄存器,触摸屏实时显示圈数

调用FB块

制作HMI画面
Modbus 协议规则:4X 代表保持寄存器,40001 对应 4x1,寄存器地址编号从 40001 开始,威纶触摸屏填写的时候省略前面 40,只写后两位数字

▼ ①  4x281:实际寄存器地址就是 40281,伺服内部第 40281 号寄存器,用来存放实时扭力数据
▼ ②  4x367:实际寄存器地址 40367,伺服转速寄存器
▼ ③  4x19:实际寄存器地址 40019,伺服编码器脉冲寄存器
▼ ④  触摸屏把脉冲数据转发给 PLC 的 D422 寄存器
▼ ⑤  操作人员在威纶触摸屏设置参数:圈数上限 5,下限 3,拧紧超时时间 5s,开启判定开关 M453;参数写入 PLC 的 D232、D234、D236 寄存器;同时触摸屏开启 Modbus 通讯,持续读取伺服的 3 个寄存器

好文分享:以下是所有文章合集,大家需要学习哪方面的内容可以参照学习,后续一直都为大家持续更新
完整PLC程序+HMI+IO 清单 不同网盘链接如下,大家需要的可以转存查看,之前在评论区分享人太多分享不过来,所以直接分享给大家
百度网盘案例链接:
夸克网盘案例链接:

免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!

本帖子中包含更多资源

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

x
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

上一主题上一主题         下一主题下一主题
QQ手机版小黑屋粤ICP备17165530号

关于我们·投诉举报· 用户帮助· 联系我们 · 本站服务 · 版权声明· 隐私政策 · 投搞指南

法律保护:PLC技术网,plcjs.com,plcjs.net等字样
Copyright 2010-2030. All rights reserved. 


微信公众号二维码 抖音二维码 百家号二维码 今日头条二维码哔哩哔哩二维码