0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

【插针机PLC开发】用AWBlock开发运动逻辑

ZLG致远电子 2024-04-20 08:24 次阅读

上期我们介绍了HMI开发过程,这期将介绍PLC运动逻辑开发。致远电子的ZMC600E和AWStudio提供了ST语言和AWBlock 积木式中文编程环境,可快速开发插针机或其他设备的PLC逻辑。

5a993f40-feac-11ee-9118-92fbcf53809c.jpg  AWStudio介绍AWStudio是工业自动化All In One可视化集成开发环境,可以用于开发HMI和PLC程序。针对PLC开发目前提供了多种解决方案:一种是符合IEC61131-3标准的ST开发环境,另一种是AWBlock积木式中文编程环境,未来还将提供梯形图和功能块图编程。用AWBlock写PLC逻辑像搭积木一样直观容易上手,不需要敲代码也避免了出错,AWBlock提供了运动控制块,特别适合做机器人和运动控制等应用,所以本次PLC使用AWBlock编程方案。
5a953f58-feac-11ee-9118-92fbcf53809c.jpg  插针机系统介绍

本次使用 ZMC600E 作为插针机的PLC设备,中间使用Modbus协议与HMI通信,使用EtherCAT协议与电机伺服器通信。ZMC600E中内置的AWPLC(含AWBlock)运行时引擎,可以运行用户编写的运动逻辑,实现插针机的多轴协同运动控制。

5aaabc8e-feac-11ee-9118-92fbcf53809c.png图1插针机系统介绍

5a953f58-feac-11ee-9118-92fbcf53809c.jpg  插针机PLC开发流程

只需要四步:

一、配置EtherCAT总线;二、配置Modbus从机;三、编写AWBlock控制电机运动逻辑;四、最后把工程下载到ZMC600E运行。1. 创建AWBlock解决方案在AWStudio创建一个新AWBlock编程解决方案工程,如下图:

5ace29a8-feac-11ee-9118-92fbcf53809c.png

图2创建解决方案

2. EtherCAT总线配置

插针机系统中,PLC作为EtherCAT主站,电机伺服器作为EtherCAT从站,所以要在PLC总线协议中添加EtherCAT主站功能。在总线协议节点上面添加总线,选择EtherCAT主站,如下图:5addeb9a-feac-11ee-9118-92fbcf53809c.png图3 添加EtherCAT主站协议

在EtherCAT主站节点上添加所有轴的电机伺服器,分别是托盘X轴、托盘Y轴、主轴Z轴。再配置EtherCAT的分布时钟,如下图:

5aeb5b68-feac-11ee-9118-92fbcf53809c.png图4 配置参考时钟

配置参考时钟有利于运动控制的时候所有电机的同步移动,AWStudio也提供了完整的EtherCAT的配置参数,用户可以根据实际情况来配置自己的EtherCAT通信。

3. Modbus从机配置插针机系统中,PLC作为Modbus从站,HMI作为Modbus主站,所以要在PLC总线协议中添加Modbus从站功能。然后根据主从机约定好的Modbus寄存器点表来配置寄存器地址和个数,PLC运行过程中实时更新这些寄存器供HMI访问,如下图:5afbbad0-feac-11ee-9118-92fbcf53809c.png

图5 配置Modbus从机寄存器

4. AWBlock运动逻辑开发插针机最基础的功能是控制托盘和主轴(Z轴)移动,所以要创建move_plane和move_main_axis两个函数。编辑move_main_axis函数文件,分别拖入MC_Power和MC_MoveAbsolute功能块来控制电机运动,如下图:5b0e8534-feac-11ee-9118-92fbcf53809c.png图6 拖入运动控制块上面已经在EtherCAT主站下添加了电机了,这里会自动识别出电机并且会自动给每一个电机生成一个轴对象,因此轴参数便可以选择需要控制的电机,如下图:5b19895c-feac-11ee-9118-92fbcf53809c.png图7 选择控制轴5b2321ba-feac-11ee-9118-92fbcf53809c.png图8 设置参数接着基于上面写好的基础运动功能块,编写控制托盘和主轴运动顺序和逻辑(主轴归0--移动托盘--主轴插针--主轴归0),比如控制自动插针的auto_move函数,如下图:5b27c88c-feac-11ee-9118-92fbcf53809c.png图9 用AWBlock写运动逻辑最后把PLC的运行参数和状态对接到Modbus从站寄存器,例如:MainAxisSpeed是主轴速度变量,对应到PLC的地址是%IW52,%IW52映射到Modbus从站地址为40005,如下图。这样,就可以让HMI通过Modbus控制和获取PLC运行状态。5b3694fc-feac-11ee-9118-92fbcf53809c.png图10 关系映射表5b466f76-feac-11ee-9118-92fbcf53809c.png

图11 变量绑定地址

5. AWBlock工程下载运行

上面的工程开发完成后,在设备列表中选择目标设备ZMC600E,点击启动(调试)按钮,就会进入调试模式,可以进行单步调试程序;点击下载即可发布固件,ZMC600E重启后就会自动运行该工程。如下图:

5b566890-feac-11ee-9118-92fbcf53809c.png

图12 设备选择界面

5a953f58-feac-11ee-9118-92fbcf53809c.jpg  ZMC600E产品介绍

ZMC600E是ZLG致远电子开发的最新一代智能总线型运动控制器,是面向工厂智能化时代的机器控制器。其采用工业领域内先进的嵌入式 ARM 方案,集实时操作系统、智能算法于一身,配套工业图形化编程软件开发环境。

ZMC600E采用TI的双核64位Arm-Corte-A53,四核Cortex-R5F的AM6442应用处理器为核心,主频1GHz,内置1GB DDR4、4GB eMMC以及32KB FRAM,预留有多路以太网CAN、IO、USB硬件接口。同时ZMC600E支持点位运动、连续轨迹、直线圆弧插补、连续插补、螺旋线等运动功能,可以自由设定运行速度、停止速度、加、减速时间可以独立设置,S型曲线平滑等参数,支持在线改变速度和在线改变位置,用户可以轻松构智能化控制系统,快速实现和部署现场各种工艺的应用。

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • plc
    plc
    +关注

    关注

    5010

    文章

    13262

    浏览量

    462903
  • HMI
    HMI
    +关注

    关注

    9

    文章

    587

    浏览量

    48533
  • 工业自动化
    +关注

    关注

    17

    文章

    2362

    浏览量

    67206
收藏 人收藏

    评论

    相关推荐

    为什么fpga开发板好像都没有外引

    之前学的是单片,51,stm32,msp430等等。这些开发板都会外引io口。但淘宝上的许多开发板好像都没有外引啊,难道fpga不需要
    发表于 04-24 06:35

    【EG4S20-MINI-DEV 申请】AGV运动逻辑控制器开发

    项目名称:AGV运动逻辑控制器开发试用计划:1.新项目开发,AGV运动逻辑控制器项目
    发表于 06-24 19:55

    单片+运动控制芯片HMC8033开发运动控制器流程

    控制器,相对于单纯使用微处理器开发运动控制器来说,更加方便快捷、更稳定。系统结构框图:专用运动控制芯片HMC80x系列内部结构图:其中外部接口CS、RD、WR、RST、A0-7、D0-7是读写控制总线
    发表于 04-15 14:35

    基于u***总线与dsp2812开发运动控制卡如何设计?

    您好!我现在要设计基于u***总线与dsp2812开发运动控制卡,但u***专用芯片cy7c68013A是16位的,dsp2812是32位的,需不需要一个协议什么的东西,或者相关的一些资料,谢谢!
    发表于 06-10 16:56

    高价寻求基于STM32运动手表屏幕开发

    本人需求基于STM32单片开发运动手表中屏幕中的虚拟指针开发(分针,时针与秒针),同时指针可通过STM32单片进行调节。指针样式参照图示,有意向的朋友请联系(有偿)
    发表于 03-08 21:21

    关于开发运维必备的20款工具,你知道哪些?

    开发运维工具与软件开发领域的最佳实践密切相关,也与必要的规范密切相关。
    的头像 发表于 09-23 09:50 1.4w次阅读

    敏捷开发和DevOps开发运维有哪些相连之处?

    敏捷开发和DevOps开发运维有哪些相连之处?这个问题一直困扰着很多人! 下面由深圳青蓝咨询的小编给大家来讲解! 一、敏捷开发 敏捷开发(Agile)是一种以人为核心、迭代、循序渐进的
    发表于 02-12 15:44 746次阅读

    如何使用python开发运维友好的程序

    本文档的主要内容详细介绍的是如何使用python开发运维友好的程序。
    发表于 02-01 11:08 8次下载

    【产品应用】 AWTK 和 AWPLC 快速开发嵌入式应用程序 (8)- AWBlock

    AWBlock是ZLG开发的可视化编程语言,具有功能块图的易用性和结构文本语言的灵活性,支持AWBlock是AWPLC的一个重要特色,充分利用AWBlock,可以大大提高
    的头像 发表于 12-02 11:45 654次阅读

    【产品应用】 AWTK 和 AWPLC 快速开发嵌入式应用程序 (8)- AWBlock

    AWBlock是ZLG开发的可视化编程语言,具有功能块图的易用性和结构文本语言的灵活性,支持AWBlock是AWPLC的一个重要特色,充分利用AWBlock,可以大大提高
    的头像 发表于 12-05 15:26 489次阅读
    【产品应用】<b class='flag-5'>用</b> AWTK 和 AWPLC 快速<b class='flag-5'>开发</b>嵌入式应用程序 (8)- <b class='flag-5'>AWBlock</b>

    【产品应用】如何使用AWBlock开发一个流水灯程序

    AWBlock是致远电子开发的一款非常易于使用的可视化编程工具,您只需要通过拖曳模块来构建代码逻辑,过程就像搭积木一样简单。ZTP800-B是广州致远电子股份有限公司开发的最新一代智能
    的头像 发表于 04-19 09:59 500次阅读
    【产品应用】如何使用<b class='flag-5'>AWBlock</b><b class='flag-5'>开发</b>一个流水灯程序

    PLC运动控制到底是什么?plc补与同步补区别

    PLC运动控制是指PLC系统通过控制运动设备的运动轴,实现精确、稳定和可编程的运动控制功能。它
    发表于 10-20 10:20 1816次阅读

    PLC运动控制到底是什么?plc补与同步补区别

    PLC运动控制是指PLC系统通过控制运动设备的运动轴,实现精确、稳定和可编程的运动控制功能。它
    的头像 发表于 10-23 08:08 1948次阅读
    <b class='flag-5'>PLC</b>的<b class='flag-5'>运动</b>控制到底是什么?<b class='flag-5'>plc</b><b class='flag-5'>插</b>补与同步<b class='flag-5'>插</b>补区别

    “脱胎换骨”--运动控制

    随着PCB板及接插件装配行业的快速发展,作为其核心设备的应用范围也越来越广泛。面对行业需求的迅速增长,致远电子推出了
    的头像 发表于 03-15 08:23 857次阅读
    “脱胎换骨”--<b class='flag-5'>插</b><b class='flag-5'>针</b>机<b class='flag-5'>运动</b>控制

    HMI开发AWTK开发人机界面

    中有两个重要的部件HMI和PLC,HMI提供用户操作和界面显示,而PLC则控制电机的运动
    的头像 发表于 04-19 08:23 559次阅读
    【<b class='flag-5'>插</b><b class='flag-5'>针</b><b class='flag-5'>机</b>HMI<b class='flag-5'>开发</b>】<b class='flag-5'>用</b>AWTK<b class='flag-5'>开发</b>人机界面