2024-02-27 02:32:11 | 人围观 | 评论:
1.创建结构体变量
GLOBAL SUB HMI_INIT() GLOBAL gv_CurParamNum '当前配方号 gv_CurParamNum=0 GLOBAL gv_PageNum '页码 gv_PageNum=0 GLOBAL CONST gv_SysMaxAxis=3 '最大轴数 GLOBAL STRUCTURE AxisParam '''轴参数 DIM No '轴号 DIM AxisAtype '轴类型 DIM AxisDpos '轴的当前位置 DIM OnePulses '轴电机一圈脉冲数 DIM AxisPitch '轴螺距 DIM AxisSpeed '轴的运动速度 DIM AxisAccel '轴的加速度 DIM AxisDecel '轴的减速度 DIM AxisSramp '轴的S曲线时间 DIM AxisLspeed '轴的起始速度 DIM FsLimit '轴正限位 DIM RsLimit '轴负限位 '''回零参数 DIM DatumMode '轴回零模式 DIM BackZeroSpeed '轴的回零速度 DIM AxisCreep '轴的回零第2段速度 DIM DatumIn '轴原点信号 DIM FwdIn '轴正限位信号 DIM RevIn '轴负限位信号 END STRUCTURE GLOBAL STRUCTURE SysParam DIM SysAxis(gv_SysMaxAxis) AS AxisParam '系统轴数 DIM FileName(50) '参数文件名 END STRUCTURE GLOBAL gs_SysParam(50) AS SysParam '定义系统结构体变量 LOCAL lv_i FOR lv_i=0 to gv_SysMaxAxis-1 '初始化轴参数变量 gs_SysParam(0).SysAxis(lv_i).No=lv_i gs_SysParam(0).SysAxis(lv_i).AxisAtype=0 '轴类型 gs_SysParam(0).SysAxis(lv_i).OnePulses=8388608 '轴电机一圈脉冲数 gs_SysParam(0).SysAxis(lv_i).AxisPitch=20 '轴螺距 gs_SysParam(0).SysAxis(lv_i).AxisSpeed=100 '轴的运动速度 gs_SysParam(0).SysAxis(lv_i).AxisAccel=1000 '轴的加速度 gs_SysParam(0).SysAxis(lv_i).AxisDecel=1000 '轴的减速度 gs_SysParam(0).SysAxis(lv_i).AxisSramp=0 '轴的S曲线时间 gs_SysParam(0).SysAxis(lv_i).AxisLspeed=0 '轴的起始速度 '初始化回零参数变量 gs_SysParam(0).SysAxis(lv_i).DatumMode=104 '轴的回零模式 gs_SysParam(0).SysAxis(lv_i).BackZeroSpeed=50 '轴的回零速度 gs_SysParam(0).SysAxis(lv_i).AxisCreep=2 '轴的回零第2段速度 gs_SysParam(0).SysAxis(lv_i).DatumIn=-1 '轴的回零信号 gs_SysParam(0).SysAxis(lv_i).FwdIn=-1 '轴的正向硬限位信号 gs_SysParam(0).SysAxis(lv_i).RevIn=-1 '轴的负向硬限位信号 gs_SysParam(0).SysAxis(lv_i).FsLimit=1000 '轴正限位 gs_SysParam(0).SysAxis(lv_i).RsLimit=-1000 '轴负限位 '初始化参数文件 gs_SysParam(0).FileName="NONE" '初始化参数文件名 NEXT FOR lv_i=0 to 49 gs_SysParam(lv_i)=gs_SysParam(0) '初始化其他配方参数 NEXT ENDSUB2.保存配置文件
GLOBAL SUB SaveCurParam() LOCAL iflsflag iflsflag=70214733 FLASH_WRITEDBL gv_CurParamNum,iflsflag,gs_SysParam(gv_CurParamNum) ?"下载成功" ENDSUB3.读取配置文件
GLOBAL SUB LoadCurParam() LOCAL iflsflag,lv_i,addnum FOR lv_i=0 TO 49 iflsflag=0 FLASH_READDBL lv_i,iflsflag IF iflsflag=70214733 THEN FLASH_READ2DBL lv_i,1,gs_SysParam(lv_i) addnum=addnum+1 ENDIF NEXT ?"上传完成,上传配置文件数:"addnum ENDSUB4.删除配置文件
GLOBAL SUB DeleCurParam() LOCAL lv_i FOR lv_i=0 to gv_SysMaxAxis-1 '初始化轴参数变量 gs_SysParam(gv_CurParamNum).SysAxis(lv_i).No=lv_i gs_SysParam(gv_CurParamNum).SysAxis(lv_i).AxisAtype=0 '轴类型 gs_SysParam(gv_CurParamNum).SysAxis(lv_i).OnePulses=8388608 '轴电机一圈脉冲数 gs_SysParam(gv_CurParamNum).SysAxis(lv_i).AxisPitch=20 '轴螺距 gs_SysParam(gv_CurParamNum).SysAxis(lv_i).AxisSpeed=100 '轴的运动速度 gs_SysParam(gv_CurParamNum).SysAxis(lv_i).AxisAccel=1000 '轴的加速度 gs_SysParam(gv_CurParamNum).SysAxis(lv_i).AxisDecel=1000 '轴的减速度 gs_SysParam(gv_CurParamNum).SysAxis(lv_i).AxisSramp=0 '轴的S曲线时间 gs_SysParam(gv_CurParamNum).SysAxis(lv_i).AxisLspeed=0 '轴的起始速度 '初始化回零参数变量 gs_SysParam(gv_CurParamNum).SysAxis(lv_i).DatumMode=104 '轴的回零模式 gs_SysParam(gv_CurParamNum).SysAxis(lv_i).BackZeroSpeed=50 '轴的回零速度 gs_SysParam(gv_CurParamNum).SysAxis(lv_i).AxisCreep=2 '轴的回零第2段速度 gs_SysParam(gv_CurParamNum).SysAxis(lv_i).DatumIn=-1 '轴的回零信号 gs_SysParam(gv_CurParamNum).SysAxis(lv_i).FwdIn=-1 '轴的正向硬限位信号 gs_SysParam(gv_CurParamNum).SysAxis(lv_i).RevIn=-1 '轴的负向硬限位信号 gs_SysParam(gv_CurParamNum).SysAxis(lv_i).FsLimit=1000 '轴正限位 gs_SysParam(gv_CurParamNum).SysAxis(lv_i).RsLimit=-1000 '轴负限位 '初始化参数文件 gs_SysParam(gv_CurParamNum).FileName="NONE" '初始化参数文件名 NEXT LOCAL iflsflag iflsflag=0 FLASH_WRITEDBL gv_CurParamNum,iflsflag,gs_SysParam(gv_CurParamNum) ?"删除成功" ENDSUB编辑:黄飞
全站搜索