快速入门 | 正运动技术运动控制器U盘接口的使用

2025-05-29 06:22:37

1、材料准备与控制器接线参考

1)材料准备

电脑1台,安装ZDevelop3.01以上版本软件。
控制器1个,U盘1个。
24V直流电源1个。
总线驱动器+电机(或步进驱动器+电机)若干。
控制器接线端子若干。
网线若干。
连接线若干。
输入输出设备、扩展模块、人机界面等根据实际需求选择。

2)控制器接线参考

快速入门 | 正运动技术运动控制器U盘接口的使用

5、PILE指令U盘相关操作

1)U盘zar文件操作。


FILE “LOAD_ZAR”,”main” ‘下载U盘中的mian.zar包

FILE “FIND_FIRST”, “.zar” ,0 ‘查找U盘中的zar包,结果返回到vrstring(0)

FILE “FIND_NEXT”,10 ‘查找下一个zar文件存储结果到vrstring(10)

FILE “FIND_PREV”,20 ‘查找上一个zar文件存储结果vrstring(20)


2)U盘与FLASH数据操作。


FILE “COPY_FROM”,”sd0.bin” ‘拷贝控制器上flash0块数据到U盘

FILE “COPY_TO”,” sd0.bin” ‘拷贝U盘sd0.bin数据到控制器flash


FLASH块号与SD文件的编号是一一对应的,不需要要指定。

3)删除U盘文件,支持删除bin文件和z3p文件。

快速入门 | 正运动技术运动控制器U盘接口的使用

offset=0

TABLE(200):总字节数

TABLE(201):读取到的第一个字节

TABLE(202):读取到的第二个字节

TABLE(200+n):读取到的第N个字节

6、U盘使用演示例程

例程使用HMI组态传递MODBUS_BIT位寄存器的值来控制U盘指令的执行。


global sub main_int() '初始化函数

APP_PASS(123)

VRSTRING(1200,20)="未扫描"

global warnstr(20) '定义提示信息的数组

dim result 'file指令读取结果标志

result=0 '返回-1为true,0为false

dim filenum 'zar文件编号

filenum=0

for i=0 to 100

table(i)=i

next

dim u,uu(8) 'U盘读写参数

u=10

for i=0 to 7

uu(i)=i

next

dim a,aa(8) 'FLASH读写参数

end sub

global sub main_scan() '周期函数

if U_STATE=TRUE then '获取U盘状态并显示连接或未连接

table(100)=1

elseif U_STATE=FALSE then

table(100)=0

endif

if U_STATE=TRUE then '判断U盘是否插入

'************加载U盘的升级ZAR程序************

if MODBUS_BIT(0)=1 then '判断按键是否按下

MODBUS_BIT(0)=0 '按键恢复

result=FILE"find_first",".zar",1200 ',zar可以替换为.bin,但是无法用load_bin下载

if result=-1 then '判断zar程序读取是否成功

filenum=1

else

print "没有文件"

endif

elseif MODBUS_BIT(10)=1 and result=-1 then

MODBUS_BIT(10)=0

result=FILE"find_prev",1200 '搜索上一个U盘文件

if result=-1 then

filenum=filenum-1

else

result=FILE"find_next",1200

warnstr= "The First File"

HMI_SHOWWINDOW(100)

endif

elseif MODBUS_BIT(20)=1 and result=-1 then

MODBUS_BIT(20)=0

result=FILE"find_next",1200 '搜索上一个U盘文件

if result=-1 then

filenum=filenum+1

else

result=FILE"find_prev",1200

warnstr=" The End File"

HMI_SHOWWINDOW(100)

endif

elseif MODBUS_BIT(30)=1 then

MODBUS_BIT(30)=0

result=FILE"load_zar",VRSTRING(1200,20) '加载U盘里面的ZAR升级文件

if result =0 then

result=FILE"find_first",".zar",1200

warnstr=" Download Failed"

HMI_SHOWWINDOW(100)

endif

'************U盘与TABLE数据交互************

'TABLE读写指令:STICK_WRITE STICK_READ

'VR读写指令:STICK_WRITEVR STICK_READVR

elseif MODBUS_BIT(40)=1 then'对table或VR进行操作

MODBUS_BIT(40)=0

STICK_WRITE(10,0,5,1) 'table输出到U盘,从table(0)开始取五个元素

print "table输出到U盘"

elseif MODBUS_BIT(41)=1 then

MODBUS_BIT(41)=0

STICK_READ(10,0,1) 'U盘输出到table(0)开始地址

print "U盘输出到table"

'************U盘数据读写************

elseif MODBUS_BIT(50)=1 then

MODBUS_BIT(50)=0

U_WRITE 1,u,uu '数据写入U盘,对变量和数组进行操作

print "数据写入U盘"

elseif MODBUS_BIT(51)=1 then

MODBUS_BIT(51)=0

U_READ 1,u,uu 'U盘数据读出

print "U盘数据读出"

'************U盘与FLASH数据交互************

elseif MODBUS_BIT(60)=1 then

MODBUS_BIT(60)=0

FLASH_WRITE 3,a aa

file"copy_from","sd3.bin"'本条指令sd num就是指flash块的编号,此时将flash块3的数据复制到u盘

print "flash块的数据复制到u盘"

elseif MODBUS_BIT(61)=1 then

MODBUS_BIT(61)=0

file"copy_to","sd1.bin" '读取sd1的数据写入flash块1

print "u盘数据写入flash"

flash_read 1,a,aa

print *aa

'************读取U盘文件内容************

elseif MODBUS_BIT(11)=1 then

MODBUS_BIT(11)=0

FILE"LOAD_BYTE","00.txt",200,10,0 '读取u盘中文本文件数据保存到table200开始的10个地址中

print "读取u盘txt文件"

endif

endif

end sub


HMI组态界面:

快速入门 | 正运动技术运动控制器U盘接口的使用

声明:本网站引用、摘录或转载内容仅供网站访问者交流或参考,不代表本站立场,如存在版权或非法内容,请联系站长删除,联系邮箱:site.kefu@qq.com。
猜你喜欢