西门子FC19说明.docx
- 文档编号:15304657
- 上传时间:2023-07-03
- 格式:DOCX
- 页数:17
- 大小:30.14KB
西门子FC19说明.docx
《西门子FC19说明.docx》由会员分享,可在线阅读,更多相关《西门子FC19说明.docx(17页珍藏版)》请在冰点文库上搜索。
西门子FC19说明
FUNCTIONFC19:
VOID
TITLE=
AUTHOR:
NUMERIK
FAMILY:
_800D
NAME:
MCP_IFM
VERSION:
6.1
CODE_VERSION1
VAR_INPUT
BAGNo:
BYTE;//方式组号(面板信号传送到哪个方式组)
ChanNo:
BYTE;//通道号(面板信号传送到哪个通道)SpindleIFNo:
BYTE;//主轴号
END_VAR
VAR_OUTPUT
FeedHold:
BOOL;//进给保持
SpindleHold:
BOOL;//主轴停
END_VAR
VAR_TEMP
schmier:
ARRAY[0..15]OFBOOL;//SchmierzellenfuerFlanken*richtung:
BYTE;//方向键和快移键
richtung2:
BYTE;
richtung3:
BYTE;//dummyachs_nr:
BYTE;//aktuellangewaehlteAchsnr.vonMSTbb:
ARRAY[0..15]OFBOOL;//BAG-Anwahlen
akt_db:
WORD;//Achtung,vorherAbsolutzugriffe(*)!
!
!
max_bag:
WORD;//方式组的个数
max_kan:
WORD;//通道的个数
max_axe:
WORD;//轴(包括进给轴和主轴)的个数
(lb12)
mst_ein01:
ARRAY[0..15]OFBOOL;//temporaereEingaenge0.0..1.7mst_ein23:
ARRAY[0..15]OFBOOL;//temporaereEingaenge2.0..3.7mst_ein45:
ARRAY[0..15]OFBOOL;//temporaereEingaenge4.0..5.7mst_ein67:
ARRAY[0..15]OFBOOL;//temporaereEingaenge6.0..7.7
mst_aus01:
ARRAY[0..15]OFBOOL
mst_aus23:
ARRAY[0..15]OFBOOL
mst_aus45:
ARRAY[0..15]OFBOOL
mst_aus67:
ARRAY[0..15]OFBOOL
loop_c:
WORD;//loopcounterincrement:
BYTE;//INC信号
ba_inc:
BYTE;//MaschinenfunktionINCRueckmeldungparam:
INT;
Poi_Aus:
DWORD;//PointerAusgaenge
MCP_db:
WORD;//MaschinensteuerDBBAGN:
BYTE;//方式组的个数mksaxisold:
BYTE;//Achsnooldifnewaxissel.
DB8Offs:
DWORD;//面板在DB8中的偏移
mkschange:
BOOL;//changedwksold:
BOOL;//是WCSmstt2:
BOOL;
vskorr:
BYTE;//倍率信号
END_VAR
BEGIN
NETWORK
TITLE=
///NETZWERKEingang
LDB7.DBW128;//OB100中FB1的输出参数,方式组的个数
T#max_bag;//临时变量,只在此程序块(FC19)中有效方式组#max_bag;
LDB7.DBW130;//OB100中FB1的输出参数,通道的个数
T#max_kan;
LDB7.DBW132;//OB100中FB1的输出参数,轴(包括进给轴和主轴)的个数
T#max_axe;
L#BAGNo;//FC19输入参数,方式组号
PUSH;复制累加器1中内容到累加器2,累加器1中内容不便
AWW#16#F;累加器1内容与累加器2内容低字逻辑运算
T#BAGN;//方式组的个数
POP;复制累加器2中内容到累加器1,累加器2中内容不便
AWW#16#F0;
SET;
JZe001;//若此参数是B#16#0*,则表示是第一面板;若此参数是B#16#1*,则表示是第二面板
S#mstt2;//置第二面板标志,表示此FC19是处理第二面板信号的
LAR2P#62.0;//第二面板在DB8中的偏移OffsetimDB8f.2.MCP
LAR1DB7.DBD150;//第二面板的指针
JUe002;
e001:
R#mstt2;
LAR2P#0.0;//第一面板在DB8中的偏移OffsetimDB8f.1.MCP
LAR1DB7.DBD146;//第二面板的指针
e002:
TAR2#DB8Offs;//将地址寄存器的值传送到临时变量
OPNDI8;
LDIW[AR2,P#0.0];
TLW0;//Schmierzellen(Schmier)=Flankenmerker*
LDIB[AR2,P#3.0];
T#achs_nr;//holendesaltenZustandesAchsnr.
ADIX1.7;//FirstRunabsolut
=#schmier[15];//kopieren//
LDBW[AR1,P#0.0];//DB-Nr.derMSTT
T#MCP_db;
LDBD[AR1,P#8.0];//输出的指针PointeraufAusgaenge
T#Poi_Aus;
LDBD[AR1,P#2.0];//输入的指针PointeraufEingaenge
LAR1;
OPNDB[#MCP_db];//aufschlagendesDBfuerMST
LAR2P##mst_ein01;//Adressemst_einladen(Var_tempDatum)!
!
!
//AR2wirdimgesamtenBausteinalsZeiger//verwendet
LD[AR1,P#0.0];//面板的输入IB0-IB3
TLD[AR2,P#0.0];//存放在临时变量mst_ein01
LD[AR1,P#4.0];//面板的输入IB4-IB7
TLD[AR2,P#4.0];//存放在临时变量mst_ein23
LAR1#Poi_Aus;//bereichsuebergreifendeAdressederMSTAusgaengeLD[AR1,P#0.0];//面板的输出QB0-QB3
TLD[AR2,P#8.0];//存放在临时变量mst_aus01
LW[AR1,P#4.0];//面板的输出QB4-QB5
TLW[AR2,P#12.0];//存放在临时变量mst_aus23
ADIX45.0;//neuerHochlaufMimik
JCNe100;
A#mstt2;
JCe099;
=#mst_ein45[3];//面板X轴键e099:
=#schmier[0];//VorschubHaltsetzen
=#schmier[1];//SpindelHaltsetzen
SDB10.DBX57.0;//INCAnwahlinBAGInterfacee100:
R#mkschange;
LB#16#0;
T#ba_inc;
T#mksaxisold;//keineMKSAchsezudeaktivieren
T#richtung;///NETZWERKGlobal_ein
LLB[AR2,P#1.0];//面板IB1
AWW#16#3F;//保留INC信号
T#increment;//存放在临时变量//
LLB[AR2,P#3.0];//面板IB3
AWW#16#1F;//保留倍率信号
T#vskorr;//存放在临时变量
A#schmier[7];//FirstRunMerker
JCn001;//NCBearbeitung//
A#mst_aus23[13];//面板上WCS_MCSLED灯亮,是WCS
=#wksold;
A#mst_ein45[12];//面板上WCS_MCS键
FP#schmier[3];
JCNmks1;
S#mkschange;
AN#mst_aus23[13];//面板上WCS_MCSLED灯,原来灭,点亮;原来亮,熄灭=#mst_aus23[13];
//angewaehlteAchsnr.wird0
L#achs_nr;//装载轴号
JUmks2;
mks1:
LLW[AR2,P#4.0];//面板输入IB4和IB5
AWW#16#EE7;//保留轴选择键
L#achs_nr;//veraendertnichtdieAnzeigebits
JZkea2;
mks2:
A#wksold;//原来是工件坐标系
JCmks4;
T#mksaxisold;//altegewaehlteAchseretten
mks4:
LLD[AR2,P#10.0];//面板输出QB2和QB3
ADDW#16#8F31FEFF;//去掉轴选择键的LED
TLD[AR2,P#10.0];
A#mkschange;//进行了WCS和MCS的切换
JCkea1;
A#mst_aus23[13];
JCwks3;//如果面板上WCSLED灯亮,转wks3
LAR1P#8.0;//AxistableforMCP1
AN#mstt2;
JCke90;
LAR1P#32.0;//AxistableforMCP2
ke90:
OPNDI10;//DBforAxisTable
LDIW[AR1,P#22.0];//maxaxisforMCP1,MCP2
OWW#16#0;
JNwks4;//ifnotzero
L#max_axe;//max.AnzahlMaschinenachsen
JUwks4;
kea2:
LLB[AR2,P#4.0];//面板IB4
AWW#16#E0;//保留方向键和快移键
T#richtung;
JUkea3;
wks3:
LB#16#3;//max.AnzahlGEO-achsen
wks4:
JLm009;
JUkeae;//Accu=0
JUm001;
JUm002;
JUm003;
JUm004;
JUm005;
JUm006;
JUm007;
JUm008;
JUm009;
m009:
A#mst_ein45[10];//面板第9轴选择键S#mst_aus23[11];//面板第9轴LEDLB#16#9;//轴号
JCkeae;
m008:
A#mst_ein45[9];//面板第8轴选择键S#mst_aus23[10];//面板第8轴LEDLB#16#8;//轴号
JCkeae;
m007:
A#mst_ein45[1];//面板第7轴选择键S#mst_aus23[4];//面板第7轴LEDLB#16#7;//轴号
JCkeae;
m006:
A#mst_ein45[8];//面板第6轴选择键S#mst_aus23[9];//面板第6轴LEDLB#16#6;//轴号
JCkeae;
m005:
A#mst_ein45[13];//面板第5轴选择键S#mst_aus23[14];//面板第5轴LEDLB#16#5;//轴号
JCkeae;
m004:
A#mst_ein45[2];//面板第4轴选择键S#mst_aus23[5];//面板第4轴LEDLB#16#4;//轴号
JCkeae;
m003:
A#mst_ein45[14];//面板Z轴选择键
S#mst_aus23[15];//面板Z轴LEDLB#16#3;//轴号
JCkeae;
m002:
A#mst_ein45[15];//面板Y轴选择键S#mst_aus45[0];//面板Y轴LEDLB#16#2;//轴号
JCkeae;
m001:
A#mst_ein45[3];//面板X轴选择键
S#mst_aus23[6];//面板X轴LEDLB#16#1;//轴号
JCkeae;
kea1:
LB#16#0;//轴号清零
JUke99;
keae:
A#mst_aus23[13];//LEDMKS/WKS
JCke99;
DEC1;
SLW3;//AccutoPointer
+AR1;
OPNDI10;//DBforAxisTable
LDIB[AR1,P#0.0];//AxistableforMCP1orMCP2ke99:
T#achs_nr;
kea3:
A#mst_ein45[6];//面板负方向键
=#mst_aus23[7];//面板负方向键LED
A#mst_ein45[7];//面板正方向键
=#mst_aus23[8];//面板正方向键LED///NETZWERKNCn001:
A#schmier[15];//Firstrunabsolut
JCe010;
OPNDI10;//SignalevonPLCanNCK
A#mst_ein23[7];//面板钥匙开关0位置
=DIX56.4;//DB10.dbx56.4
A#mst_ein23[14];//面板钥匙开关1位置
=DIX56.5;//DB10.dbx56.5
A#mst_ein23[6];//面板钥匙开关2位置
=DIX56.6;//DB10.dbx56.6
A#mst_ein45[4];//面板钥匙开关3位置
=DIX56.7;//DB10.dbx56.7///NETZWERKBAGe010:
LB#16#1;
T#param;//alsFehlerparameter
L#max_bag;//方式组数
L#BAGN;//方式组号
OWW#16#0;
JZKBAG;//若方式组号为0转KBAG
JCfehl;
DEC1;//减1
LP#20.0;//20ByteOffset
*I;
LAR1;//ZeigeraufBAG
OPNDI11;//BAGDBaufschlagen//umverdrahten
A#mst_ein01[0];//面板UTO方式选择键
=#bb[0];//Automatikanwaehlen
A#mst_ein01[1];//面板MDA方式选择键
=#bb[1];//MDAanwaehlen
A#mst_ein01[3];//面板JOG方式选择键
=#bb[2];//JOGanwaehlen
A#mst_ein01[15];//面板REPOS方式选择键
=#bb[9];//REPOSanwaehlen
A#mst_ein01[14];//面板REF方式选择键
=#bb[10];//REFanwaehlen
A#mst_ein01[2];//面板TEACHIN方式选择键
=#bb[8];//TeachInanwaehlen
LDIW[AR1,P#0.0];//DB11.DBB0和DB11.DBB1AWW#16#F8F8;//屏蔽掉方式选择位
LLW6;//上面的bb
AWW#16#707;屏蔽掉非方式选择位
OW;//上面两部分组合起来
TDIW[AR1,P#0.0];//DB11.DBW0和DB11.DBB1//
LDIW[AR1,P#6.0];//DB11.DBB6和DB11.DBB7
TLW6;//存放在临时变量
A#bb[0];//AUTO方式有效
=#mst_aus01[0];//面板AUTO方式选择键LED
A#bb[1];//MDA方式有效
=#mst_aus01[1];//面板MDA方式选择键LED
A#bb[2];//JOG方式有效
=#mst_aus01[3];//面板JOG方式选择键LED
A#bb[9];//REPOS方式有效
=#mst_aus01[11];//面板REPOS方式选择键LED
A#bb[10];//REF方式有效
=#mst_aus01[10];//面板REF方式选择键LED
A#bb[8];//TEACHIN方式有效
=#mst_aus01[2];//面板TEACHIN方式选择键LED
L#increment;
TDIB[AR1,P#2.0];//DB11.DBB2
///TITLE=NETZWERKKanal
KBAG:
LB#16#2;
T#param;//alsFehlerparameter
L#max_kan;//通道数
L#ChanNo;//通道号
OWW#16#0;
JZKKAN;//若通道号为0转KKAN
JCfehl;
INC20;//加20T#akt_db;//通道数据块块号
OPNDI[#akt_db];//打开通道数据块
AN#mst_aus23[13];//LEDMCS/WCS
JCg002;
LDIB41;//DB21.DBB41
LDIB47;//DB21.DBB47
OW;
LDIB53;//DB21.DBB53
OW;
T#ba_inc;//Maschinenfunktionlokal
g002:
L
B#16#3;//max.AnzahlGEOAchsen
g001:
T
#loop_c;//inloopcounter
DEC
1;
SLW
5;//*P#4.0
LAR1
;//jetztinsAdressregister
L#loop_c;
L#achs_nr;
<>I;
LB#16#0;
JCmks;
AN#mst_aus23[13];//LEDMCS/WCS
JCmks;
A#schmier[7];//FirstRunMerker
JCmks;
L#richtung;//面板的方向键和快移键
mks:
LDIB[AR1,P#12.0];//DB21.DBB20,DB21.DBB16,DB21.DBB12
AWW#16#1F;//屏蔽掉方向键和快移键
OW;//组合
TDIB[AR1,P#12.0];//DB21.DBB20,DB21.DBB16,DB21.DBB12
L#loop_c;//LoopcounterinAccu
LOOPg001;//在g001和次段间循环,循环的次数loop_c
L#vskorr;//面板的倍率
TDIB4;//DB21.DBB4
A#mst_ein23[1];//面板NC-Start键
=DIX7.1;//DB21.DBX7.1
AN#mst_ein23[0];//面板NC-Stop键
=DIX7.3;//DB21.DBX7.0
A#mst_ein23[15];//面板Reset键
=DIX7.7;//DB21.DBX7.7
ADIX35.0;//DB21.DBX35.0程序运行状态
=#mst_aus01[13];//面板NC-Start键LED
ADIX35.3;//DB21.DBX35.3程序中断
ODIX35.2;//DB21.DBX35.2程序停止
=#mst_aus01[12];//面板NC-Stop键LED
A#mst_ein23[13];//面板单段选择键
FP#schmier[4];
JCNKKAN;
ANDIX0.4;
=DIX0.4;//DB21.DBX0.4激活单段
=#schmier[2];
KKAN:
AN#schmier[7];
JCKKA1;
A#schmier[2];
=DIX0.4;
KKA1:
ADIX0.4;
=#mst_aus23[2];//面板单段选择键LED///TITLE=NETZWERKSpindel
L#max_axe;//轴数
L#SpindleIFNo;//主轴号
OWW#16#0;
JZKSPI;//主轴轴号为0转KSPI
JCKSPI;
INC30;//主轴号加30,转换成主轴的DB块块号T#akt_db;//转换成主轴数据块块号OPNDI[#akt_db];//打开主轴数据块LLB[AR2,P#0.0];//面板主轴倍率开关SRW4;//右移4位
TDIB19;//DB3*.DBB19主轴倍率///NETZWERKAchsen
KSPI:
A#schmier
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 西门子 FC19 说明