一、前言
本系列是我围绕 《西门子S7-1200PLC 控制步进电机 MD-4240-PN》为主题,按照时间顺序从拿到这一款步进电机到使用的这一个过程的记录,系列预计作六篇文章,分别为:电机开箱、硬件搭建、软件组态、抓包分析、报文分析、触摸屏项目搭建。
本文作为本系列 《西门子S7-1200PLC 控制步进电机 MD-4240-PN》第二篇文章——硬件搭建,重点在于介绍如何使用西门子S7-1200 CPU1212C PLC 与 MD-4240-PN进行硬件搭建。
二、硬件介绍
1、S7-1200 CPU1212C AC/DC/RLY
西门子CPU1212C AC/DC/RLY 是一款功能强大的小型可编程逻辑控制器(PLC),广泛应用于工业自动化控制领域。它适合初学者和专业人士使用,具备易用性和灵活性的特点。
CPU 型号中的后缀 AC/DC/RLY 是指此PLC需要外接AC 120V/230V 电源供电,DC指的是需要直流24V来接收信号。RLY指的是输出端使用继电器来控制外部设备。
下图为CPU1212C AC/DC/RLY 的实物图
2、MD-4240-PN
MD-4240-PN是一款驱控一体的42闭环步进电机,它支持PROFINET协议。它的硬件接口已在上一篇文章中简述,还没有看的小伙伴可以翻阅这一系列的前一篇文章——电机开箱。里面有电机的接口及初步的使用,这里不再赘述。
三、硬件搭建
1、硬件列表
1、S7-1200 CPU1212C AC/DC/RLY
2、MD-4240-PN (图中红色的是联轴器,用来连接滑台模组)
3、路由器(手头没有交换机,拿极路由当交换机来组网)
4、可调电源(24V供电)
5、滑台模组
2、线缆连接示意图
(1)电源连接
(2)网络连接
3、电机装配图
这里我使用了4个带弹片垫片的M3的螺丝将电机与滑台模组进行固定,轴的连接使用的是联轴器。
需要注意的是,电机的4个安装孔为 螺纹深度为4个毫米的M3孔。安装时需确定好螺丝的长度,避免过长的螺丝造成安装孔滑丝。
4、滑块模块改造
为了直观展示位置,我将一个钢板尺用胶带和螺丝大致固定在了滑块模组上,如下图所示:
四、根据机械结构设置每圈LU
1、设置过程
我的同步轮周长为54mm,机械结构是同步带,没有减速机构。
为了实际长度单位和 lu 相互关联起来, 我需要首先确定实际长度(mm)和lu的对应关系。
我想要1000lu 对应到实际长度1mm 便于我控制。 即1000lu = 1mm; 1lu = 0.001mm。
那么我的负载轴每转lu 为 : 54mm / 0.001(mm/lu) = 54000 lu
由于我没有减速机构,齿轮比就为1 :1 。
配置完成后,理论上 1000lu 就与 1mm 对应起来了。
但是!! 理论不一定等于实际!! 由于生产公差的存在,还需经过我们的验证。
接下来我们进行验证环节。
2、验证机械参数
(1)主动回零
验证环节需要使用绝对位置模式,所以要给绝对位置模式设置一个零点。
这里我使用主动回零模式,电机出厂的主动回零设置如下图:
使用扭矩回零+编码器Z信号的组合方式往负方向搜索零点,零点搜索完成后不偏移。
搜索分为三个阶段,1:搜索零点。2:搜索编码器Z信号。3:零点偏移。表现形式为
阶段1 滑块往负方向搜索原点直到碰到防撞胶垫。
阶段2 往相反的方向搜索编码器Z信号零点。
阶段3 根据参数120的偏移值进行偏移。
这样的组合能够极大的提升零点的准确性。以下是我启动主动回零点的GIF:
软件操作:
回零状态:我们可以看到有 搜索零点阶段、搜索编码器Z信号、移动到零点位置(由于偏移位置是0,所以状态时间非常短)。
(2)对齐刻度
如下图主动回零完成后我们发现滑块的位置大致在3.5mm的地方,这时候我们可以使用参数120来进行一个原点偏移。
前面提到我们可以在参数表120号参数内填入一个偏移值,对主动回零完成后进行一个偏移。
前面我们在设置每圈lu 时,将1000lu 与1mm 所关联了起来,要往负方向偏移3.5mm,换算成lu的话就是 -3500 lu。(通过上传按钮的设置是易失的,保存按钮才能够将设置值保存到设备存储器中)
如下GIF图,起始滑块是在3.5mm处,经过第一阶段 滑块往负方向搜索碰到防撞胶垫。再到第二阶段 往相反的方向搜索编码器Z信号零点,(3.5mm处是编码器Z轴零点位置)。最后到第三阶段 根据参数120的偏移值 -3500lu 进行3.5mm偏移,定位到钢板尺0刻度的位置。
顺便来个闭环演示,手动改变滑块的位置,松开手后,电机回到之前的位置。
(3)移动验证
现在我们切换到相对运动模式,分别让它走到1cm,2cm,3cm,4cm,5cm。
首先要设定速度,如果我想要300rpm的速度,每次走1cm。需要按照如下换算:
300rpm = 5rps ,现设定的一圈54000lu
300rpm = 5rps = 5(转/秒) * 54000 (lu/转) = 270000 lu/s。
其次是设置相对位置 lu, 每次1cm = 10mm = 10000 lu
下面是滑块移动的gif,由于上传的gif大小只能在5M以内,只能牺牲帧数和清晰度了。
可以看到每次移动的距离大致是1cm。
直到我在跑到20cm的时候,发现了误差偏差。
造成偏差的原因是同步带轮有一定的生产公差,所选用的同步带轮(S3M-18齿)节距是18.19mm,实际节距是17.268mm,换算成周长即54.249mm,将参数“每圈负载LU数”从54000更改为54249即可解决这个问题。
修改每圈LU数后,再次定位到20cm位置处,可以看到没有误差。
五、结尾
硬件搭建主要的目的是为了给PLC和电机都供电,并且将它们连接在同一个局域网内,并且将电机安装在了滑台模组上,以及设置了每圈lu,将lu和毫米所关联了起来。下一篇章节我会使用TIA Portal 来进行软件的组态。