Basic语言如何开发控制器程序

电子说

1.3w人已加入

描述

XPLC006E功能介绍


 

XPLC006E是正运动运动控制器推出的一款多轴经济型EtherCAT总线运动控制器,XPLC系列运动控制器可应用于各种需要脱机或联机运行的场合。

运动控制器

 

XPLC006E自带6个电机轴,最多12轴运动控制(含虚拟轴数),支持12轴直线插补、电子凸轮、电子齿轮、同步跟随、虚拟轴设置等功能。

 

XPLC006E支持多任务同时运行,同时可以在PC上直接仿真运行,编程方式多种可选,支持ZDevelop软件的Basic/PLC梯形图/HMI组态和常用上位机软件编程。

 

XPLC006E只支持EtherCAT总线轴,不支持脉冲轴和编码器轴。采用EtherCAT总线与驱动器通讯,1ms的刷新周期。

 

XPLC006E支持PLC、Basic、HMI组态三种编程方式。PC上位机API编程支持C#、C++、LabVIEW、VB、matlab、Qt、Linux、.Net、iMAC、Python、 ROS等接口。

运动控制器

→此款产品有XPLC004E、XPLC006E、XPLC008E三个不同轴数的型号可选。

 

XPLC864E2功能介绍


 

XPLC864E2在XPLC006E的功能基础上做了升级(即上节介绍的XPLC006E的功能都支持),部分资源空间优于XPLC006E,使用方法基本一致,不同之处在于XPLC864E2,硬件支持32点输入、32点输出、2个ADC、2个DAC,支持脉冲轴和总线轴混合使用,总实轴轴数为8,除了带EtherCAT接口之外,输出口硬件上可配置为8个轴的脉冲方向信号输出,另带两路编码器输入,可由输入口配置。

 

XPLC864E2支持PLC、Basic、HMI组态三种编程方式。PC上位机API编程支持C#、C++、LabVIEW、VB、matlab、Qt、Linux、.Net、iMAC、Python、 ROS等接口。

 

运动控制器

 

运动控制器

XPLC系列经济型EtherCAT总线运动控制器支持多种编程方式,支持使用正运动技术自主研发的ZDevelop开发环境的basic语言和PLC梯形图,同时还支持市面上常用的上位机开发环境与操作系统,包括不限于C、C++、C#、LabView、Matlab、Linux、ROS等。

 

本节内容主要讲解Basic语言如何开发控制器程序。



 

一 前期准备工作

 

在正运动技术官网下载新版编程软件ZDevelop V3.10.06,准备一台XPLC系列经济型EtherCAT总线运动控制器,按照上方的XPLC006E参考架构完成接线。

 

没有控制器的场合也可完成ZBasic的开发,程序下载到仿真器运行即可,仿真器是ZDevelop软件安装包自带的。

 

运动控制器

 

 

二 下载Basic程序到控制器


 

 

1. 新建工程项目,并下载程序文件到控制器运动的流程如下图。

 

运动控制器

打开已有的项目文件运行,需要打开“.zpj”文件,再连接控制器,下载程序运动。
 

2. 详细操作流程说明。

 

(1)新建项目:菜单栏“文件”--“新建项目”。
 

 

点击“新建项目”后弹出“另存为”界面,选择一个文件夹打开,输入文件名后保存项目,后缀为“.zpj”。(2)新建文件:菜单栏“文件”--“新建文件”。

运动控制器

 

点击“新建文件”后,出现下图弹窗,选择新建的文件类型为Basic后点击确认。支持Basic/Plc/Hmi混合编程。

 

运动控制器

(3)设置文件自动运行:双击文件右边自动运行的位置,输入任务号“0”。

 

运动控制器

 

(4)编辑程序:程序编写完成,点击保存文件,防止编辑好的代码丢失,新建的Basic文件会自动保存到项目“.zpj”所在的文件下。

运动控制器

(5)连接到控制器:在程序输入窗口编辑好程序,点击“控制器”--“连接”,没有控制器是可选择连接到仿真器仿真运行,点击“连接”--“连接到仿真器”。

运动控制器

 

点击“连接”弹出“连接到控制器”窗口,可选择串口连接或网口连接,选择匹配的串口参数或网口IP地址后,点击连接即可。下图为网口连接,控制器IP:192.168.0.36。

 

连接成功命令与输出窗口打印信息:Connected to Controller:ZMC432 Version:4.93-20190128.若是新购买的XPLC006E系列控制器,连接IP填192.168.0.11(出厂默认IP地址),无论哪款控制器,基本操作都是相同的。

 

运动控制器

(6)下载程序:点击菜单栏按钮“下载到RAM”或按钮“下载到ROM”,下载成功命令和输出窗口会有提示,同时程序下载到控制器并自动运行。

运动控制器

 

成功下载到RAM和成功下载到ROM的提示信息:

 

运动控制器

 

RAM下载掉电后程序不保存,ROM下载掉电后程序保存。下载到ROM的程序下次连接上控制器之后程序会自动按照任务号运行。

 

注意:当打印窗口提示红色报警信息error时,程序无法正常运行,如下图,指令错误报错。

运动控制器

 

 

三 程序运行查看

 

 

1.启动调试:点击菜单栏“调试”-“启动/停止调试”调用任务与监视窗口。

运动控制器

 

任务窗口用于查看多任务的运行状态以及任务行号,监视窗口用于监控轴参数、自定义变量、输入输出状态等信息。

 

2.轴参数查看:轴参数窗口是个非常重要的工具,能帮助用户快速获知大量轴参数的当前数据,观察程序运行是否异常。详情参见ZDevelop帮助手册轴参数窗口的描述。

运动控制器

3.示波器采样:在菜单栏“视图”

--

“示波器”打开示波器窗口,或快捷按钮,如下图。

运动控制器运动控制器

 

打开“设置”选择要采集的通道数、深度、间隔等参数后确认,这里选择采样三个通道,分别为轴0轴1轴2的DPOS,设置完成点击“启动”按钮。

 

程序中写入TRIGGER指令触发示波器采样(或者点击手动触发按钮),执行运动程序后,采样出如下波形数据。

 

(1)波形显示有三种模式可选

 

A.XT模式:各个数据源的值随时间变化的曲线。

B.XY模式(2D模式):两轴的合成插补轨迹。

C.XYZ模式(3D模式):三轴在空间的合成插补轨迹。

 

(2)插补功能说明

 

XPLC006E控制器自带6个轴,支持2-6轴联合插补,相对应的需要设置2-6个轴的轴参数,运动前先选择轴号,再发送插补命令,这样操作插补命令不会发错轴。

 

(3)六轴直线插补

 

BASE(0,1,2,3,4,5)              '选择轴号,需要哪几个轴运动就选择哪几个

MOVE(200,200,100,80,75,100)    '发送直线插补命令

 

4.进行三轴直线插补运动和监控示波器多种运行模式的轨迹。

 

(1)编写三轴直线插补运动程序

 

'急停,清空运动缓冲区,等待轴0运动空闲

RAPIDSTOP(2)

WAIT IDLE(0)


 

GLOBAL CONST AxesNum=3    '定义总轴数

AxesInit                  '轴参数初始化

Motion1_job               '运动程序

END                       '主程序结束


 

GLOBAL SUB AxesInit()       '轴参数的初始化子函数

   FOR i=0 TO AxesNum-1     '批量初始化轴参数

      BASE(i)

      DPOS(i)=0

      ATYPE(i)=1

      UNITS(i)=500  

      SPEED(i)=100

      ACCEL(i)=1000

      DECEL(i)=1000

      SRAMP(i)=100

   NEXT  

END SUB


 

GLOBAL SUB Motion1_job()

   TRIGGER             ' 触发示波器采样

   BASE(0,1,2)

   MOVE(200,200,100)   '三轴直线插补

END SUB


 

 

(2)示波器XT模式下的运行轨迹

运动控制器

(3)示波器XY模式下的运行轨迹

 

运动控制器

 

(4)示波器XYZ模式下的运行轨迹

 

运动控制器

 


 

本次,正运动技术经济型EtherCAT运动控制器(二):ZBasic实现多轴直线插补运动,就分享到这里。

 

  审核编辑:汤梓红

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

全部0条评论

快来发表一下你的评论吧 !

×
20
完善资料,
赚取积分