840dsl NC程序问题 $aa_mm[ll]-lv_mew1(最后一段)这个值怎么计算出来 最好有详细的注释,这里的$aa_mm[ll]是那个轴的位置。这里的公差是0.01,刀具测头校准程序

proc hs_refp1 (real ld_tor) save displof actblocno

def string[20] lv_cycle_name="hs_refp1.spf"
def axis qq, ll              ;lokale Achsen definieren定义局部轴
def axis lv_m_ax_1           ; Maschinen-Achsname der abzugleichenden Achse等效轴机名称
def axis lv_c_ax_1           ; Kanal-/bzw. Geometrie-Achsname der abzugleichenden Achse频道/或匹配轴的几何轴名称
def axis lv_ax
def real lv_pos_mt_zw, lv_pos_me_1z, lv_pos_me_2z, lv_pos_me_3z, lv_pos_me_4z, lv_pos_me_5z, lv_pos_me_1x, lv_pos_me_2x, lv_mew1
def real lv_pos_me_dif
def bool lv_debug=false

;Achsbezeichnungen laden 
负载轴标签


hs_ax(1, lv_m_ax_1, lv_c_ax_1)
qq=lv_c_ax_1 ;$P_AXN2                            ;Achse 2=X/U  轴2=X/U
hs_ax(2, lv_m_ax_1, lv_c_ax_1)
ll=lv_c_ax_1  ;$P_AXN1                           ;Achse 2=Z/W


;lokale Variablen berechnen

lv_pos_mt_zw=$aa_im[z4]+gd_pos_mt_z4
lv_pos_me_1z=0-gd_pos_rn_mi+7
lv_pos_me_2z=0-(gd_pos_rn_mi+gd_pos_rn_pl)/2+3.5 ;Fl鋍he rechts
lv_pos_me_3z=0-(gd_pos_rn_mi+gd_pos_rn_pl)/2
lv_pos_me_4z=0-(gd_pos_rn_mi+gd_pos_rn_pl)/2-3.5 ;Fl鋍he links
lv_pos_me_5z=0-gd_pos_rn_pl-7

lv_pos_me_1x=0-gd_pos_rn_xu-3
lv_pos_me_2x=0-gd_pos_rn_xu+2
;-------------------
;Programmbeginn
diamof
trans ax[ll]=lv_pos_mt_zw ax[qq]=gd_pos_mt_xu


g0 g90 g60 g40 g94 m450      ;Messtaster einschwenken
while (not(i_meas_pos_reached)) ;Messtaster nicht in Messstellung (vorne)
  G4f0.1
  stopre
endwhile
G4 F4 ; Wartezeit wg. Schwingungen im Messarm


;1. messpunkt z/w minus
ax[ll]=lv_pos_me_1z
ax[qq]=lv_pos_me_1x

m49
g1 g91 meas=-1 ax[ll]=-5 f=gd_me_vor ;Messatz  meas=-1 >fallende Flanke von Mt.Nr.1
m48
stopre
if $ac_mea[1]<>1 gotof fehl1 ;keine Messsung erfolgt

lv_mew1=$aa_mm[ll]
g1 g90 ax[ll]=lv_pos_me_1z

m49
g1 g91 meas=-1 ax[ll]=-5     ;Wiederholmessung
m48

stopre
if abs($aa_mm[ll]-lv_mew1)>gd_me_tolka gotof fehl2         ;Toleranz ueberschritten

最佳答案

在第三行时不是有定义的局部轴吗?
def axis qq, ll              ;lokale Achsen definieren定义局部轴

提问者对于答案的评价:
那个是定义轴变量,还要赋值的

原创文章,作者:more0621,如若转载,请注明出处:https://www.zhaoplc.com/plc294871.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2020年10月31日 下午1:29
下一篇 2020年10月31日 下午1:29

相关推荐

  • 报警信息存储

    802D系统,为什么报警信息履历不能存储下来呢,在报警内容里什么也没有啊 给维修带来很多的不方便 最佳答案 系统不能,咱人就的勤快点做好记录了 提问者对于答案的评价:是啊…

    SINUMERIK 2018年12月2日
  • 840D系统,加工中心

    840D系统,加工中心.工作中出现1017#和9047#报警,加工中坐标轴进给停止,主轴自由减速停止.无规律.请专家指导维修. 最佳答案 9047报警诊断手报册上都没有,你看错了吧…

    SINUMERIK 2019年6月11日
  • 报警信息采集

    一台Siemens840D-SL系统 V4.7 + SP4 ,无PCU 的设备,HMI界面显示的报警信息存储在哪个变量里呢?HMI…

    SINUMERIK 2020年10月31日
  • 怎样控制电机转动一定的角度

    本人控制小白没接触过,需要做个实验,需要用到电机来精确的控制转动角度。实验室有西门子的伺服电机,V90驱动,和1200的PLC,想问下大佬,流程是怎样的,我应该怎么去做。 钻石用户…

    SINUMERIK 2021年7月5日
  • 828D有什么选型工具吗?

    828D有什么选型工具吗?可以知道所有的配件电缆的那种工具或者手册 版主推荐答案 SIZER 选型工具可免费从网上下载: www.siemens.com/sizer 查看完整帖子:…

    SINUMERIK 2017年6月1日
  • 300200、300201、300402报警该怎样解决?

    300200 伺服总线硬件故障300201 轴B1伺服5访问超时,错误代码2816300402 伺服接口系统错误,错误代码1282,10这三个报警出现时,该怎样查找故障原因? 问题…

    SINUMERIK 2019年6月11日
  • 程序运行时间的激活

    程序运行时间如何激活,上面都是灰色的。 钻石用户推荐最佳答案 灰色说明你电脑里和plc里的程序是不一样的,把电脑里的下进去或者把plc的读上来,让他们一致了才可以监视 提问者对于答…

    SINUMERIK 2021年7月5日
  • 840D数控系统方面问题请教

    我手上有一08版的840D-DOC。我是通过PDF来看的。可是里面的东西太多了。我想问哈那些PDF文件里哪些文件是做机床电气设计系统改造需要重点看的。希望有高手或西门子公司的员工出…

    SINUMERIK 2018年12月3日
  • 808D支持什么通讯方式

    808D支持什么通讯方式 最佳答案 usb,rs232串口通讯。 提问者对于答案的评价:3Q

    SINUMERIK 2017年11月16日
  • 840DslFC19等功能块修改

    请问840Dsl中的FC19等功能块能修改吗?现在都是上锁的打不开啊?求教如何打开查看? 问题补充:我现在要用其他厂家的手轮,而原装手轮使用格雷码,不知道怎么才能修改后使用呢? 最…

    SINUMERIK 2017年8月26日