123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936937938939940941942943944945946947948949950951952953954955956957958959960961962963964965966967968969970971972973974975976977978979980981982983984985986987988989990991992993994995996997998999100010011002100310041005100610071008100910101011101210131014101510161017101810191020102110221023102410251026102710281029103010311032103310341035103610371038103910401041104210431044104510461047104810491050105110521053105410551056105710581059106010611062106310641065106610671068106910701071107210731074107510761077107810791080108110821083108410851086108710881089109010911092109310941095109610971098109911001101110211031104110511061107110811091110111111121113111411151116111711181119112011211122112311241125112611271128112911301131113211331134113511361137113811391140114111421143114411451146114711481149115011511152115311541155115611571158115911601161116211631164116511661167116811691170117111721173117411751176117711781179118011811182118311841185118611871188118911901191119211931194119511961197119811991200120112021203120412051206120712081209121012111212121312141215121612171218121912201221122212231224122512261227122812291230123112321233123412351236123712381239124012411242124312441245124612471248124912501251125212531254125512561257125812591260126112621263126412651266126712681269127012711272127312741275127612771278127912801281128212831284128512861287128812891290129112921293129412951296129712981299130013011302130313041305130613071308130913101311131213131314131513161317131813191320132113221323132413251326132713281329133013311332133313341335133613371338133913401341134213431344134513461347134813491350135113521353135413551356135713581359136013611362136313641365136613671368136913701371137213731374137513761377137813791380138113821383138413851386138713881389139013911392139313941395139613971398139914001401140214031404140514061407140814091410141114121413141414151416141714181419142014211422142314241425142614271428142914301431143214331434143514361437143814391440144114421443144414451446144714481449145014511452145314541455145614571458145914601461146214631464146514661467146814691470147114721473147414751476147714781479148014811482148314841485148614871488148914901491149214931494149514961497149814991500150115021503150415051506150715081509151015111512151315141515151615171518151915201521152215231524152515261527152815291530153115321533153415351536153715381539154015411542154315441545154615471548154915501551155215531554155515561557155815591560156115621563156415651566156715681569157015711572157315741575157615771578157915801581158215831584158515861587158815891590159115921593159415951596159715981599160016011602160316041605160616071608160916101611161216131614161516161617161816191620162116221623162416251626162716281629163016311632163316341635163616371638163916401641164216431644164516461647164816491650165116521653165416551656165716581659166016611662166316641665166616671668166916701671167216731674167516761677167816791680168116821683168416851686168716881689169016911692169316941695169616971698169917001701170217031704170517061707170817091710171117121713171417151716171717181719172017211722172317241725172617271728172917301731173217331734173517361737173817391740174117421743174417451746174717481749175017511752175317541755175617571758175917601761176217631764176517661767176817691770177117721773177417751776177717781779178017811782178317841785178617871788178917901791179217931794179517961797179817991800180118021803180418051806180718081809181018111812181318141815181618171818181918201821182218231824182518261827182818291830183118321833183418351836183718381839184018411842184318441845184618471848184918501851185218531854185518561857185818591860186118621863186418651866186718681869187018711872187318741875187618771878187918801881188218831884188518861887188818891890189118921893189418951896189718981899190019011902190319041905190619071908190919101911191219131914191519161917191819191920192119221923192419251926192719281929193019311932193319341935193619371938193919401941194219431944194519461947194819491950195119521953195419551956195719581959196019611962196319641965196619671968196919701971197219731974197519761977197819791980198119821983198419851986198719881989199019911992199319941995199619971998199920002001200220032004200520062007200820092010201120122013201420152016201720182019202020212022202320242025202620272028202920302031203220332034203520362037203820392040204120422043204420452046204720482049205020512052205320542055205620572058205920602061206220632064206520662067206820692070207120722073207420752076207720782079208020812082208320842085208620872088208920902091209220932094209520962097209820992100210121022103210421052106210721082109211021112112211321142115211621172118211921202121212221232124212521262127212821292130213121322133213421352136213721382139214021412142214321442145214621472148214921502151215221532154215521562157215821592160216121622163216421652166216721682169217021712172217321742175217621772178217921802181218221832184218521862187218821892190219121922193219421952196219721982199220022012202220322042205220622072208220922102211221222132214221522162217221822192220222122222223222422252226222722282229223022312232223322342235223622372238223922402241224222432244224522462247224822492250225122522253225422552256225722582259226022612262226322642265 |
- <?xml version="1.0" encoding="utf-8"?>
- <BeckhoffCfg>
- <Controller Name="MASTER" IPAddress="192.168.0.14.1.1" PortAddress="301">
- <!-- Need to have at least one input and one output before Axis stuff -->
- <!-- All inputs first, then all outputs -->
- <!--////////////////////////////////////////////////// ALL INPUTS START //////////////////////////////////////////////////-->
- <!--PUF1-->
- <Input Name="r_DPUF_A_CHUCK_A_VAC" Address="Task 2.Inputs.PUF_AI_8CHANNEL_EL3068_N251_4" Scaling="0=3276.7,-757=16383.5" Type="Analog" DataType="int"/>
- <Input Name="r_DPUF_A_CHUCK_B_VAC" Address="Task 2.Inputs.PUF_AI_8CHANNEL_EL3068_N251_5" Scaling="0=3276.7,-757=16383.5" Type="Analog" DataType="int"/>
- <Input Name="r_DPUF_A_CHUCK_A_WFER_SNS_1" Address="Task 2.Inputs.PUF_AI_8CHANNEL_EL3068_N252_5" Scaling="0=0,100=32767" Type="Analog" DataType="int"/>
- <Input Name="r_DPUF_A_CHUCK_A_WFER_SNS_2" Address="Task 2.Inputs.PUF_AI_8CHANNEL_EL3068_N252_6" Scaling="0=0,100=32767" Type="Analog" DataType="int"/>
- <!--PUF2-->
- <Input Name="r_DPUF_B_CHUCK_A_VAC" Address="Task 2.Inputs.PUF_AI_8CHANNEL_EL3068_N251_8" Scaling="0=3276.7,-757=16383.5" Type="Analog" DataType="int"/>
- <Input Name="r_DPUF_B_CHUCK_B_VAC" Address="Task 2.Inputs.PUF_AI_8CHANNEL_EL3068_N252_1" Scaling="0=3276.7,-757=16383.5" Type="Analog" DataType="int"/>
- <Input Name="r_DPUF_B_CHUCK_A_WFER_SNS_1" Address="Task 2.Inputs.PUF_AI_8CHANNEL_EL3068_N252_7" Scaling="0=0,100=32767" Type="Analog" DataType="int"/>
- <Input Name="r_DPUF_B_CHUCK_A_WFER_SNS_2" Address="Task 2.Inputs.PUF_AI_8CHANNEL_EL3068_N252_8" Scaling="0=0,100=32767" Type="Analog" DataType="int"/>
- <!--Loader1-->
- <Input Name="r_LoaderA_Wafer_Present" Address="Task 2.Inputs.LOADER_DI_16CHANNEL_EL1819_N54_1" Type="Digital" DataType="bool"/>
- <Input Name="r_LOADERA_DOOR_UPPER_LOCKED" Address="Task 2.Inputs.LOADER_DI_16CHANNEL_EL1819_N54_5" Invert="false" Type="Digital" DataType="bool"/>
- <Input Name="r_LOADERA_DOOR_UPPER_UNLOCKED" Address="Task 2.Inputs.LOADER_DI_16CHANNEL_EL1819_N54_8" Invert="false" Type="Digital" DataType="bool"/>
- <Input Name="r_LOADERA_DOOR_LOWER_LOCKED" Address="Task 2.Inputs.LOADER_DI_16CHANNEL_EL1819_N54_9" Invert="false" Type="Digital" DataType="bool"/>
- <Input Name="r_LOADERA_DOOR_LOWER_UNLOCKED" Address="Task 2.Inputs.LOADER_DI_16CHANNEL_EL1819_N54_11" Invert="false" Type="Digital" DataType="bool"/>
- <Input Name="r_LOADERA_TRANSLATION_RETRACTED" Address="Task 2.Inputs.LOADER_DI_16CHANNEL_EL1819_N55_1" Invert="false" Type="Digital" DataType="bool"/>
- <Input Name="r_LOADERA_BERNOULLI_EXTENDED" Address="Task 2.Inputs.LOADER_DI_16CHANNEL_EL1819_N55_3" Invert="false" Type="Digital" DataType="bool"/>
- <Input Name="r_LOADERA_WS_LOCKED" Address="Task 2.Inputs.LOADER_DI_16CHANNEL_EL1819_N55_5" Invert="false" Type="Digital" DataType="bool"/>
- <Input Name="r_LOADERA_BERNOULLI_PRESSURE" Address="Task 2.Inputs.LOADER_AI_8CHANNEL_0_10V_EL3068_N52_1" Scaling="0=3276.7, 145=16383.5" Type="Analog" DataType="int"/>
- <Input Name="r_LOADERA_CHUCK_BLADDER" Address="Task 2.Inputs.LOADER_AI_8CHANNEL_0_10V_EL3068_N53_5" Scaling="0=3276.7, 145=16383.5" Type="Analog" DataType="int"/>
- <Input Name="r_LoaderA_LS_Vacuum_anlg" Address="Task 2.Inputs.LOADER_AI_8CHANNEL_0_10V_EL3068_N52_3" Scaling="0=3276.7,-757=16383.5" Type="Analog" DataType="int"/>
- <Input Name="r_LOADERA_WS_BLADDER_PRESSURE" Address="Task 2.Inputs.LOADER_AI_8CHANNEL_0_10V_EL3068_N53_1" Scaling="0=3276.7, 145=16383.5" Type="Analog" DataType="int"/>
- <Input Name="r_LOADERA_TRANSLATION_PRESSURE" Address="Task 2.Inputs.LOADER_AI_8CHANNEL_0_10V_EL3068_N53_3" Scaling="0=3276.7, 145=16383.5" Type="Analog" DataType="int"/>
- <Input Name="r_LoaderB_Wafer_Present" Address="Task 2.Inputs.LOADER_DI_16CHANNEL_EL1819_N54_2" Type="Digital" DataType="bool"/>
- <Input Name="r_LOADERB_DOOR_UPPER_LOCKED" Address="Task 2.Inputs.LOADER_DI_16CHANNEL_EL1819_N54_4" Invert="false" Type="Digital" DataType="bool"/>
- <Input Name="r_LOADERB_DOOR_UPPER_UNLOCKED" Address="Task 2.Inputs.LOADER_DI_16CHANNEL_EL1819_N54_6" Invert="false" Type="Digital" DataType="bool"/>
- <Input Name="r_LOADERB_DOOR_LOWER_LOCKED" Address="Task 2.Inputs.LOADER_DI_16CHANNEL_EL1819_N54_7" Invert="false" Type="Digital" DataType="bool"/>
- <Input Name="r_LOADERB_DOOR_LOWER_UNLOCKED" Address="Task 2.Inputs.LOADER_DI_16CHANNEL_EL1819_N54_10" Invert="false" Type="Digital" DataType="bool"/>
- <Input Name="r_LOADERB_TRANSLATION_RETRACTED" Address="Task 2.Inputs.LOADER_DI_16CHANNEL_EL1819_N55_2" Invert="false" Type="Digital" DataType="bool"/>
- <Input Name="r_LOADERB_BERNOULLI_EXTENDED" Address="Task 2.Inputs.LOADER_DI_16CHANNEL_EL1819_N55_4" Invert="false" Type="Digital" DataType="bool"/>
- <Input Name="r_LOADERB_WS_LOCKED" Address="Task 2.Inputs.LOADER_DI_16CHANNEL_EL1819_N55_6" Invert="false" Type="Digital" DataType="bool"/>
- <Input Name="r_LOADERB_CHUCK_BLADDER" Address="Task 2.Inputs.LOADER_AI_8CHANNEL_0_10V_EL3068_N53_6" Scaling="0=3276.7, 145=16383.5" Type="Analog" DataType="int"/>
- <Input Name="r_LoaderB_LS_Vacuum_anlg" Address="Task 2.Inputs.LOADER_AI_8CHANNEL_0_10V_EL3068_N52_4" Scaling="0=3276.7,-757=16383.5" Type="Analog" DataType="int"/>
- <Input Name="r_LOADERB_WS_BLADDER_PRESSURE" Address="Task 2.Inputs.LOADER_AI_8CHANNEL_0_10V_EL3068_N53_2" Scaling="0=3276.7, 145=16383.5" Type="Analog" DataType="int"/>
- <Input Name="r_LOADERB_TRANSLATION_PRESSURE" Address="Task 2.Inputs.LOADER_AI_8CHANNEL_0_10V_EL3068_N53_4" Scaling="0=3276.7, 145=16383.5" Type="Analog" DataType="int"/>
- <Input Name="r_LOADERB_BERNOULLI_PRESSURE" Address="Task 2.Inputs.LOADER_AI_8CHANNEL_0_10V_EL3068_N52_2" Scaling="0=3276.7, 145=16383.5" Type="Analog" DataType="int"/>
- <Input Name="r_Cathode_Present" Address="Task 2.Inputs.LOADER_DI_16CHANNEL_EL1819_N54_3" Invert="false" Type="Digital" DataType="bool"/>
- <Input Name="r_DRIP_TRAY_FLUID_DETECTION" Address="Task 2.Inputs.LOADER_DI_16CHANNEL_EL1819_N54_13" Invert="true" Type="Digital" DataType="bool"/>
- <Input Name="r_LOADER_GasFlowSensor_FLOW" Address="Task 2.Inputs.LOADER_AI_8CHANNEL_0_10V_EL3068_N52_5" Scaling="0=3370, 500=17000" Type="Analog" DataType="int"/>
- <Input Name="r_LOADER_GasFlowSensor_VACUUM" Address="Task 2.Inputs.LOADER_AI_8CHANNEL_0_10V_EL3068_N52_6" Scaling="0=3276.7,-757=16383.5" Type="Analog" DataType="int"/>
- <Input Name="r_PLATEOUT_HANDSHAKE_SYSTEM_ONLINE" Address="Task 2.Inputs.SRD_DI_16CHANNEL_EL1819_N304_12" Invert="false" Type="Digital" DataType="bool"/>
- <Input Name="r_PLATEOUT_HANDSHAKE_NOT_PLATED_OUT" Address="Task 2.Inputs.SRD_DI_16CHANNEL_EL1819_N304_13" Invert="false" Type="Digital" DataType="bool"/>
- <Input Name="r_PLATEOUT_HANDSHAKE_PLATED_OUT" Address="Task 2.Inputs.SRD_DI_16CHANNEL_EL1819_N304_14" Invert="false" Type="Digital" DataType="bool"/>
- <!--facility-->
- <Input Name="r_N2_1B_PRESSURE" Address="Task 2.Inputs.MAIN_IO_AI_8CHANNEL_0_10V_EL3068_N15_6" Scaling="0=3276.7, 145=16383.5" Type="Analog" DataType="int"/>
- <Input Name="r_N2_1A_PRESSURE" Address="Task 2.Inputs.MAIN_IO_AI_8CHANNEL_0_10V_EL3068_N15_7" Scaling="0=3276.7, 145=16383.5" Type="Analog" DataType="int"/>
- <Input Name="r_N2_2B_PRESSURE" Address="Task 2.Inputs.MAIN_IO_AI_8CHANNEL_0_10V_EL3068_N15_8" Scaling="0=3276.7, 145=16383.5" Type="Analog" DataType="int"/>
- <Input Name="r_N2_2A_PRESSURE" Address="Task 2.Inputs.MAIN_IO_AI_8CHANNEL_0_10V_EL3068_N16_1" Scaling="0=3276.7, 145=16383.5" Type="Analog" DataType="int"/>
- <Input Name="r_CDA_EXTERNAL_PRESSURE" Address="Task 2.Inputs.MAIN_IO_AI_8CHANNEL_0_10V_EL3068_N15_1" Scaling="0=3276.7, 145=16383.5" Type="Analog" DataType="int"/>
- <Input Name="r_CDA_HIGH_PRESSURE" Address="Task 2.Inputs.MAIN_IO_AI_8CHANNEL_0_10V_EL3068_N15_2" Scaling="0=3276.7, 145=16383.5" Type="Analog" DataType="int"/>
- <Input Name="r_CDA_LOW_PRESSURE" Address="Task 2.Inputs.MAIN_IO_AI_8CHANNEL_0_10V_EL3068_N15_3" Scaling="0=3276.7, 145=16383.5" Type="Analog" DataType="int"/>
- <Input Name="r_DI_WATER_PRESSURE" Address="Task 2.Inputs.MAIN_IO_AI_8CHANNEL_4_20mA_EL3058_N12_4" Scaling="0=0, 100=32767" Type="Analog" DataType="int"/>
- <Input Name="r_HCW_FLOW" Address="Task 2.Inputs.MAIN_IO_AI_8CHANNEL_4_20mA_EL3058_N13_5" Scaling="0=0, 40=32767" Type="Analog" DataType="int"/>
- <Input Name="r_SYSTEM_EXHAUST" Address="Task 2.Inputs.MAIN_IO_AI_8CHANNEL_4_20mA_EL3058_N12_2" Scaling="0=0, 2=32767" Type="Analog" DataType="int"/>
- <Input Name="r_SYSTEM_VACUUM" Address="Task 2.Inputs.MAIN_IO_AI_8CHANNEL_0_10V_EL3068_N16_3" Scaling="-750=3276.7, 750=16383.5" Type="Analog" DataType="int"/>
- <Input Name="r_N2_BLANKET_PRESSURE" Address="Task 2.Inputs.MAIN_IO_AI_8CHANNEL_0_10V_EL3068_N16_2" Scaling="-14.5=3276.7, 14.5=16383.5" Type="Analog" DataType="int"/>
- <Input Name="r_FFUFaultLoader" ModuleName="FFU" Address="Task 2.Inputs.FFU_IO_DI_2CHANNEL_EL1002_N1_1" Invert="true" Type="Digital" DataType="bool"/>
- <Input Name="r_FFUFaultProcess" ModuleName="FFU" Address="Task 2.Inputs.FFU_IO_DI_2CHANNEL_EL1002_N1_2" Invert="true" Type="Digital" DataType="bool"/>
- <Input Name="r_FFUPressureLoader" ModuleName="FFU" Address="Task 2.Inputs.FFU_IO_AI_2CHANNEL_EL3052_N3_1" Scaling="0=0, 1=32767" Type="Analog" DataType="int"/>
- <Input Name="r_FFUPressureProcess" ModuleName="FFU" Address="Task 2.Inputs.FFU_IO_AI_2CHANNEL_EL3052_N3_2" Scaling="0=0, 1=32767" Type="Analog" DataType="int"/>
- <Input Name="r_SLIPSTREAM_FLUID_PRESENT" Address="Task 2.Inputs.MAIN_IO_DI_16CHANNEL_EL1819_N22_8" Invert="false" Type="Digital" DataType="bool"/>
- <Input Name="r_CONTAINMENT_FLUID" Address="Task 2.Inputs.MAIN_IO_DI_16CHANNEL_EL1819_N21_7" Invert="false" Type="Digital" DataType="bool"/>
- <Input Name="r_SAMPLE_SYS_FLUID_PRESENT" Address="Task 2.Inputs.MAIN_IO_DI_16CHANNEL_EL1819_N21_13" Invert="false" Type="Digital" DataType="bool"/>
- <!--Transporter-->
- <Input Name="r_ENCLOSED_TRANSPORT2_WS_UNLOCKED_1" Address="Task 2.Inputs.LdrTxIO_DI_16CHANNEL_EL1872_N153_1" Invert="false" Type="Digital" DataType="bool"/>
- <Input Name="r_ENCLOSED_TRANSPORT2_WS_LOCKED_2" Address="Task 2.Inputs.LdrTxIO_DI_16CHANNEL_EL1872_N153_2" Invert="false" Type="Digital" DataType="bool"/>
- <Input Name="r_ENCLOSED_TRANSPORT2_WS_LOCKED_1" Address="Task 2.Inputs.LdrTxIO_DI_16CHANNEL_EL1872_N153_3" Invert="false" Type="Digital" DataType="bool"/>
- <Input Name="r_ENCLOSED_TRANSPORT2_WS_UNLOCKED_2" Address="Task 2.Inputs.LdrTxIO_DI_16CHANNEL_EL1872_N153_4" Invert="false" Type="Digital" DataType="bool"/>
- <Input Name="r_ENCLOSED_TRANSPORT2_WS_IMMOBILIZER1_RETRACTED" Address="Task 2.Inputs.LdrTxIO_DI_16CHANNEL_EL1872_N153_5" Invert="false" Type="Digital" DataType="bool"/>
- <Input Name="r_ENCLOSED_TRANSPORT2_WS_IMMOBILIZER1_EXTENDED" Address="Task 2.Inputs.LdrTxIO_DI_16CHANNEL_EL1872_N153_6" Invert="false" Type="Digital" DataType="bool"/>
- <Input Name="r_ENCLOSED_TRANSPORT2_WS_IMMOBILIZER2_EXTENDED" Address="Task 2.Inputs.LdrTxIO_DI_16CHANNEL_EL1872_N153_7" Invert="false" Type="Digital" DataType="bool"/>
- <Input Name="r_ENCLOSED_TRANSPORT2_WS_IMMOBILIZER2_RETRACTED" Address="Task 2.Inputs.LdrTxIO_DI_16CHANNEL_EL1872_N153_8" Invert="false" Type="Digital" DataType="bool"/>
- <Input Name="r_ENCLOSED_TRANSPORT2_WS_READY_TO_LOCK_1" Address="Task 2.Inputs.LdrTxIO_DI_16CHANNEL_EL1872_N153_13" Invert="false" Type="Digital" DataType="bool"/>
- <Input Name="r_ENCLOSED_TRANSPORT2_WS_READY_TO_LOCK_2" Address="Task 2.Inputs.LdrTxIO_DI_16CHANNEL_EL1872_N153_15" Invert="false" Type="Digital" DataType="bool"/>
- <Input Name="r_ENCLOSED_TRANSPORT2_WS_PRESENT_1" Address="Task 2.Inputs.LdrTxIO_DI_16CHANNEL_EL1872_N153_11" Invert="false" Type="Digital" DataType="bool"/>
- <Input Name="r_ENCLOSED_TRANSPORT2_WS_PRESENT_2" Address="Task 2.Inputs.LdrTxIO_DI_16CHANNEL_EL1872_N153_12" Invert="false" Type="Digital" DataType="bool"/>
- <Input Name="r_ENCLOSED_TRANSPORT_WS_UNLOCKED_1" Address="Task 2.Inputs.PrcTxIO_DI_16CHANNEL_EL1872_N203_1" Invert="false" Type="Digital" DataType="bool"/> <!-- -->
- <Input Name="r_ENCLOSED_TRANSPORT_WS_LOCKED_2" Address="Task 2.Inputs.PrcTxIO_DI_16CHANNEL_EL1872_N203_2" Invert="false" Type="Digital" DataType="bool"/>
- <Input Name="r_ENCLOSED_TRANSPORT_WS_LOCKED_1" Address="Task 2.Inputs.PrcTxIO_DI_16CHANNEL_EL1872_N203_3" Invert="false" Type="Digital" DataType="bool"/>
- <Input Name="r_ENCLOSED_TRANSPORT_WS_UNLOCKED_2" Address="Task 2.Inputs.PrcTxIO_DI_16CHANNEL_EL1872_N203_4" Invert="false" Type="Digital" DataType="bool"/>
- <Input Name="r_ENCLOSED_TRANSPORT_WS_IMMOBILIZER1_RETRACTED" Address="Task 2.Inputs.PrcTxIO_DI_16CHANNEL_EL1872_N203_5" Invert="false" Type="Digital" DataType="bool"/>
- <Input Name="r_ENCLOSED_TRANSPORT_WS_IMMOBILIZER1_EXTENDED" Address="Task 2.Inputs.PrcTxIO_DI_16CHANNEL_EL1872_N203_6" Invert="false" Type="Digital" DataType="bool"/>
- <Input Name="r_ENCLOSED_TRANSPORT_WS_IMMOBILIZER2_EXTENDED" Address="Task 2.Inputs.PrcTxIO_DI_16CHANNEL_EL1872_N203_7" Invert="false" Type="Digital" DataType="bool"/>
- <Input Name="r_ENCLOSED_TRANSPORT_WS_IMMOBILIZER2_RETRACTED" Address="Task 2.Inputs.PrcTxIO_DI_16CHANNEL_EL1872_N203_8" Invert="false" Type="Digital" DataType="bool"/>
- <Input Name="r_ENCLOSED_TRANSPORT_WS_READY_TO_LOCK_1" Address="Task 2.Inputs.PrcTxIO_DI_16CHANNEL_EL1872_N203_13" Invert="false" Type="Digital" DataType="bool"/>
- <Input Name="r_ENCLOSED_TRANSPORT_WS_READY_TO_LOCK_2" Address="Task 2.Inputs.PrcTxIO_DI_16CHANNEL_EL1872_N203_15" Invert="false" Type="Digital" DataType="bool"/>
- <Input Name="r_ENCLOSED_TRANSPORT_WS_PRESENT_1" Address="Task 2.Inputs.PrcTxIO_DI_16CHANNEL_EL1872_N203_11" Invert="false" Type="Digital" DataType="bool"/>
- <Input Name="r_ENCLOSED_TRANSPORT_WS_PRESENT_2" Address="Task 2.Inputs.PrcTxIO_DI_16CHANNEL_EL1872_N203_12" Invert="false" Type="Digital" DataType="bool"/>
- <!--dryer-->
- <Input Name="r_HVD_2_ANALOG" Address="Task 2.Inputs.PUF_AI_8CHANNEL_EL3068_N251_2" Scaling="0=3276.7,-757=16383.5" Type="Analog" DataType="int"/>
- <Input Name="r_HVD_1_ANALOG" Address="Task 2.Inputs.PUF_AI_8CHANNEL_EL3068_N251_3" Scaling="0=3276.7,-757=16383.5" Type="Analog" DataType="int"/>
- <!--SAFETY-->
- <Input Name="r_Safety_ComErr" Address="Task 2.Inputs.Safety_ComErr" Invert="false" Type="Digital" DataType="bool"/>
- <Input Name="r_Safety_ComErr_LdrPuf" Address="Task 2.Inputs.Safety_ComErr_LdrPuf" Invert="false" Type="Digital" DataType="bool"/>
- <Input Name="r_Safety_ComErr_Srd" Address="Task 2.Inputs.Safety_ComErr_Srd" Invert="false" Type="Digital" DataType="bool"/>
- <Input Name="r_Safety_ComErr_Transp" Address="Task 2.Inputs.Safety_ComErr_Transp" Invert="false" Type="Digital" DataType="bool"/>
- <Input Name="r_Safety_FbErr" Address="Task 2.Inputs.Safety_FbErr" Invert="false" Type="Digital" DataType="bool"/>
- <Input Name="r_Safety_FbErr_LdrPuf" Address="Task 2.Inputs.Safety_FbErr_LdrPuf" Invert="false" Type="Digital" DataType="bool"/>
- <Input Name="r_Safety_FbErr_Srd" Address="Task 2.Inputs.Safety_FbErr_Srd" Invert="false" Type="Digital" DataType="bool"/>
- <Input Name="r_Safety_FbErr_Transp" Address="Task 2.Inputs.Safety_FbErr_Transp" Invert="false" Type="Digital" DataType="bool"/>
- <Input Name="r_EtherCat_State" Address="Task 2.Inputs.EtherCAT_State" Invert="false" Type="Analog" Scaling="0=0,1=1" DataType="uint"/>
- <Input Name="r_EtherCat_State_Loader" Address="Task 2.Inputs.EtherCAT_State_Loader" Invert="false" Type="Analog" Scaling="0=0,1=1" DataType="uint"/>
- <Input Name="r_EtherCat_State_LdrTxIO" Address="Task 2.Inputs.EtherCAT_State_LdrTxIO" Invert="false" Type="Analog" Scaling="0=0,1=1" DataType="uint"/>
- <Input Name="r_EtherCat_State_PrcTxIO" Address="Task 2.Inputs.EtherCAT_State_PrcTxIO" Invert="false" Type="Analog" Scaling="0=0,1=1" DataType="uint"/>
- <Input Name="r_EtherCat_State_Transporter" Address="Task 2.Inputs.EtherCAT_State_Transporter" Invert="false" Type="Analog" Scaling="0=0,1=1" DataType="uint"/>
- <Input Name="r_EtherCat_State_Puf" Address="Task 2.Inputs.EtherCAT_State_Puf" Invert="false" Type="Analog" Scaling="0=0,1=1" DataType="uint"/>
- <Input Name="r_EtherCat_State_Srd" Address="Task 2.Inputs.EtherCAT_State_Srd" Invert="false" Type="Analog" Scaling="0=0,1=1" DataType="uint"/>
- <Input Name="r_EtherCat_State_Reservoir1" Address="Task 2.Inputs.EtherCAT_State_Reservoir1" Invert="false" Type="Analog" Scaling="0=0,1=1" DataType="uint"/>
- <Input Name="r_EtherCat_State_Reservoir2" Address="Task 2.Inputs.EtherCAT_State_Reservoir2" Invert="false" Type="Analog" Scaling="0=0,1=1" DataType="uint"/>
- <Input Name="r_EtherCat_State_FFU" Address="Task 2.Inputs.EtherCAT_State_FFU" Invert="false" Type="Analog" Scaling="0=0,1=1" DataType="uint"/>
- <Input Name="r_LDR_Door_Locked" Address="Task 2.Inputs.Safety_rLoaderDoorLocked" Invert="false" Type="Digital" DataType="bool"/>
- <Input Name="r_BFFR_Door_Locked" Address="Task 2.Inputs.Safety_rBufferDoorLocked" Invert="false" Type="Digital" DataType="bool"/>
- <Input Name="r_LWR_LDR_PNL_REMOVED" Address="Task 2.Inputs.Safety_rLowerLoaderPanelRemoved" Invert="false" Type="Digital" DataType="bool"/>
- <Input Name="r_XPRTR_LDR_PNL_REMOVED" Address="Task 2.Inputs.Safety_rTxLoaderPanelRemoved" Invert="true" Type="Digital" DataType="bool"/>
- <Input Name="r_XPRTR_BFFR_PNL_REMOVED" Address="Task 2.Inputs.Safety_rTxBufferPanelRemoved" Invert="true" Type="Digital" DataType="bool"/>
- <Input Name="r_PROC_DOOR_1_SAFE_LOCK" Address="Task 2.Inputs.Safety_rProcDoor1SafeLock" Invert="false" Type="Digital" DataType="bool"/>
- <Input Name="r_PROC_DOOR_2_SAFE_LOCK" Address="Task 2.Inputs.Safety_rProcDoor2SafeLock" Invert="false" Type="Digital" DataType="bool"/>
- <Input Name="r_PROC_DOOR_3_SAFE_LOCK" Address="Task 2.Inputs.Safety_rProcDoor3SafeLock" Invert="false" Type="Digital" DataType="bool"/>
- <Input Name="r_PROC_DOOR_4_SAFE_LOCK" Address="Task 2.Inputs.Safety_rProcDoor4SafeLock" Invert="false" Type="Digital" DataType="bool"/>
- <Input Name="r_PROC_DOORS_UPPR_PNLS_ON" Address="Task 2.Inputs.Safety_rProcDoorsUpperPanelsOn" Invert="false" Type="Digital" DataType="bool"/>
- <Input Name="r_SRD_TOP_PNL_REMOVED" Address="Task 2.Inputs.Safety_rSrdTopPanelRemoved" Invert="true" Type="Digital" DataType="bool"/>
- <Input Name="r_SRD_LWR_PNL_REMOVED" Address="Task 2.Inputs.Safety_rSrdLowerPanelRemoved" Invert="true" Type="Digital" DataType="bool"/>
- <Input Name="r_PLUMBING_DOORS_CLOSED" Address="Task 2.Inputs.Safety_rPlumbingDoorsClosed" Invert="false" Type="Digital" DataType="bool"/>
- <Input Name="r_PROCESS_HALT_BUTTON_1" Address="Task 2.Inputs.Safety_rProcessHaltButton1" Invert="true" Type="Digital" DataType="bool"/>
- <Input Name="r_PROCESS_HALT_BUTTON_2" Address="Task 2.Inputs.Safety_rProcessHaltButton2" Invert="true" Type="Digital" DataType="bool"/>
- <Input Name="r_HALT_LDR_SECTION" Address="Task 2.Inputs.Safety_rHaltButtonLoaderSection" Invert="true" Type="Digital" DataType="bool"/>
- <Input Name="r_MODE_SELECTOR_SWITCH" Address="Task 2.Inputs.Safety_rModeSelectorSwitch" Invert="true" Type="Digital" DataType="bool"/>
- <Input Name="r_Rotate_AMP_SLS" Address="Task 2.Inputs.Safety_rLoaderRotateAmpSLS" Invert="false" Type="Digital" DataType="bool"/>
- <Input Name="r_Door_A_AMP_SLS" Address="Task 2.Inputs.Safety_rLoaderDoorAAmpSLS" Invert="false" Type="Digital" DataType="bool"/>
- <Input Name="r_Door_B_AMP_SLS" Address="Task 2.Inputs.Safety_rLoaderDoorBAmpSLS" Invert="false" Type="Digital" DataType="bool"/>
- <Input Name="r_SUP_A_AMP_SLS" Address="Task 2.Inputs.Safety_rLoaderSupAAmpSLS" Invert="false" Type="Digital" DataType="bool"/>
- <Input Name="r_SUP_B_AMP_SLS" Address="Task 2.Inputs.Safety_rLoaderSupBAmpSLS" Invert="false" Type="Digital" DataType="bool"/>
- <Input Name="r_DPUF_A_VERT_SAFE_SLS" Address="Task 2.Inputs.Safety_rDpufAVertSafeSLS" Invert="false" Type="Digital" DataType="bool"/>
- <Input Name="r_DPUF_B_VERT_SAFE_SLS" Address="Task 2.Inputs.Safety_rDpufBVertSafeSLS" Invert="false" Type="Digital" DataType="bool"/>
- <Input Name="r_Gantry_Zone_Safe_SLS_1" Address="Task 2.Inputs.Safety_rGantryZoneSafeSLS1" Invert="false" Type="Digital" DataType="bool"/>
- <Input Name="r_Gantry_Zone_Safe_SLS_2" Address="Task 2.Inputs.Safety_rGantryZoneSafeSLS2" Invert="false" Type="Digital" DataType="bool"/>
- <Input Name="r_Gantry_Zone_Safe_SLS_3" Address="Task 2.Inputs.Safety_rGantryZoneSafeSLS3" Invert="false" Type="Digital" DataType="bool"/>
- <Input Name="r_Gantry_Zone_Safe_SLS_4" Address="Task 2.Inputs.Safety_rGantryZoneSafeSLS4" Invert="false" Type="Digital" DataType="bool"/>
- <Input Name="r_DPUF_VERT_SAFE_Disable" Address="Task 2.Inputs.Safety_rDpufVertSafeSTO" Invert="false" Type="Digital" DataType="bool"/>
- <Input Name="r_Loader_Zone_Safe_Disable" Address="Task 2.Inputs.Safety_rLoaderZoneSafeSTO" Invert="false" Type="Digital" DataType="bool"/>
- <Input Name="r_Gantry_Zone_Safe_Disable" Address="Task 2.Inputs.Safety_rGantryZoneSafeSTO" Invert="false" Type="Digital" DataType="bool"/>
- <Input Name="r_SRD_WASH_ARMS_Disable" Address="Task 2.Inputs.Safety_rSrdWashArmsSTO" Invert="false" Type="Digital" DataType="bool"/>
- <Input Name="r_SRD_ROTATE_Disable" Address="Task 2.Inputs.Safety_rSrdRotateSTO" Invert="false" Type="Digital" DataType="bool"/>
- <Input Name="r_Loader_Zone_Safe_SLS" Address="Task 2.Inputs.Safety_rAllNoSLS" Type="Digital" DataType="bool"/>
- <Input Name="r_Gantry_Zone_Safe_SLS" Address="Task 2.Inputs.Safety_rAllNoSLS" Type="Digital" DataType="bool"/>
- <Input Name="r_DPUF_VERT_SAFE_SLS" Address="Task 2.Inputs.Safety_rAllNoSLS" Type="Digital" DataType="bool"/>
- <Input Name="r_Loader_Zone_Safe_STO" Address="Task 2.Inputs.Safety_rLoaderPufZoneSafeNoSTO" Type="Digital" DataType="bool"/>
- <Input Name="r_DPUF_VERT_SAFE_STO" Address="Task 2.Inputs.Safety_rLoaderPufZoneSafeNoSTO" Type="Digital" DataType="bool"/>
- <Input Name="r_DPUF_A_PIVSUP_STO" Address="Task 2.Inputs.Safety_rLoaderPufZoneSafeNoSTO" Type="Digital" DataType="bool"/>
- <Input Name="r_DPUF_B_PIVSUP_STO" Address="Task 2.Inputs.Safety_rLoaderPufZoneSafeNoSTO" Type="Digital" DataType="bool"/>
- <Input Name="r_Gantry_Zone_Safe_STO" Address="Task 2.Inputs.Safety_rGantryZoneSafeSTO" Type="Digital" DataType="bool"/>
- <Input Name="r_SRD_WASH_STO" Address="Task 2.Inputs.Safety_rSdrZoneSafeNoSTO" Type="Digital" DataType="bool"/>
- <Input Name="r_SRD_ROTATE_STO" Address="Task 2.Inputs.Safety_rSdrZoneSafeNoSTO" Type="Digital" DataType="bool"/>
- <Input Name="r_PUMP_EDM" Address="Task 2.Inputs.Safety_rPumpEDM" Invert="true" Type="Digital" DataType="bool"/>
- <Input Name="r_SAFETY_HIGH_LEVEL" Address="Task 2.Inputs.Safety_rResHighLevel" Invert="true" Type="Digital" DataType="bool"/>
- <Input Name="r_EXT_FLUID_ENABLE_EDM" Address="Task 2.Inputs.Safety_rExtFluidEnableEDM" Invert="true" Type="Digital" DataType="bool"/>
- <!--Rinse-->
- <Input Name="r_QDRD1_WATER_LEVEL" Address="Task 2.Inputs.MAIN_IO_AI_8CHANNEL_4_20mA_EL3058_N13_1" Scaling="0=0, 100=32767" Type="Analog" DataType="int"/>
- <Input Name="r_QDRD2_WATER_LEVEL" Address="Task 2.Inputs.MAIN_IO_AI_8CHANNEL_4_20mA_EL3058_N13_2" Scaling="0=0, 100=32767" Type="Analog" DataType="int"/>
- <Input Name="r_QDRD3_WATER_LEVEL" Address="Task 2.Inputs.MAIN_IO_AI_8CHANNEL_4_20mA_EL3058_N13_3" Scaling="0=0, 100=32767" Type="Analog" DataType="int"/>
- <Input Name="r_QDRD4_WATER_LEVEL" Address="Task 2.Inputs.MAIN_IO_AI_8CHANNEL_4_20mA_EL3058_N13_4" Scaling="0=0, 100=32767" Type="Analog" DataType="int"/>
- <Input Name="r_QDRD5_WATER_LEVEL" Address="Task 2.Inputs.MAIN_IO_AI_8CHANNEL_4_20mA_EL3058_N14_1" Scaling="0=0, 100=32767" Type="Analog" DataType="int"/>
- <Input Name="r_QDRD6_WATER_LEVEL" Address="Task 2.Inputs.MAIN_IO_AI_8CHANNEL_4_20mA_EL3058_N14_2" Scaling="0=0, 100=32767" Type="Analog" DataType="int"/>
- <!--Prewet-->
- <Input Name="r_SPW1_LEV_PUMP_STATUS" Address="Task 2.Inputs.MAIN_IO_DI_16CHANNEL_EL1819_N21_10" Invert="false" Type="Digital" DataType="bool"/>
- <Input Name="r_SPW1_LEV_PUMP_FLOW" Address="Task 2.Inputs.MAIN_IO_AI_8CHANNEL_4_20mA_EL3058_N12_3" Scaling="0=0, 100=32767" Type="Analog" DataType="int"/>
- <Input Name="r_SPW1_LEV_PUMP_PRES" Address="Task 2.Inputs.MAIN_IO_AI_8CHANNEL_4_20mA_EL3058_N11_7" Scaling="0=0, 100=32767" Type="Analog" DataType="int"/>
- <Input Name="r_SPW1_LEV_PUMP_CURRENT" Address="Task 2.Outputs.MAIN_IO_AO_2CHANNEL_4_20mA_EL4022_N19_1" Scaling="4=0, 20=32767" Type="Analog" DataType="int"/>
- <!--Reservoirs-->
- <Input Name="r_RES_HIGH_LEVEL" Address="Task 2.Inputs.Safety_rResHighLevel" Invert="true" Type="Digital" DataType="bool"/>
- <!--Reservoir1-->
- <Input Name="r_RES1_DI_EVAPORATOR_LEVEL" Address="Task 2.Inputs.MAIN_IO_DI_16CHANNEL_EL1819_N22_7" Invert="true" Type="Digital" DataType="bool"/>
- <Input Name="r_RES1_AN_LEVEL_raw" Address="Task 2.Inputs.RESERVOIR1_AI_8CHANNEL_4_20mA_EL3058_N502_8" Scaling="0=0, 100=32767" Type="Analog" DataType="int"/>
- <Input Name="c_RES1_AN_TRANSFER_PUMP.STMStatus" Address="Task 2.Inputs.RESERVOIR1_STP_EL7031_N501_STM_STATUS" Type="Analog" Scaling="0=0,1=1" DataType="uint"/>
- <Input Name="c_RES1_AN_TRANSFER_PUMP.POSStatus" Address="Task 2.Inputs.RESERVOIR1_STP_EL7031_N501_POS_STATUS" Type="Analog" Scaling="0=0,1=1" DataType="uint"/>
- <Input Name="c_RES1_AN_TRANSFER_PUMP.ActualPosition" Address="Task 2.Inputs.RESERVOIR1_STP_EL7031_N501_ACTUAL_POSITION" Type="Analog" Scaling="0=0,1=23809.96272" DataType="dint"/>
- <Input Name="r_RES1_AN_BYPASS_FLOW" Address="Task 2.Inputs.RESERVOIR1_AI_4CHANNEL_4_20mA_EL3054_N503_1" Scaling="0=0, 4=32767" Type="Analog" DataType="int"/>
- <Input Name="r_RES1_CA_LEVEL_raw" Address="Task 2.Inputs.RESERVOIR1_AI_8CHANNEL_4_20mA_EL3058_N502_1" Scaling="0=0, 100=32767" Type="Analog" DataType="int"/>
- <Input Name="r_RES1_CA_PUMP_RUNNING" Address="Task 2.Inputs.RESERVOIR1_DI_8CHANNEL_EL1008_N506_2" Invert="false" Type="Digital" DataType="bool"/>
- <Input Name="r_RES1_CA_HED_FLOW" Address="Task 2.Inputs.RESERVOIR1_AI_8CHANNEL_4_20mA_EL3058_N502_2" Scaling="0=0, 20=32767" Type="Analog" DataType="int"/>
- <!--Reservoir2-->
- <Input Name="r_RES2_DI_EVAPORATOR_LEVEL" Address="Task 2.Inputs.MAIN_IO_DI_16CHANNEL_EL1819_N22_7" Invert="true" Type="Digital" DataType="bool"/>
- <Input Name="r_RES2_AN_LEVEL_raw" Address="Task 2.Inputs.RESERVOIR2and4_AI_8CHANNEL_4_20MA_EL3058_N755_1" Scaling="0=0, 100=32767" Type="Analog" DataType="int"/>
- <Input Name="c_RES2_AN_TRANSFER_PUMP.STMStatus" Address="Task 2.Inputs.RESERVOIR2and4_STP_EL7031_N751_STM_STATUS" Type="Analog" Scaling="0=0,1=1" DataType="uint"/>
- <Input Name="c_RES2_AN_TRANSFER_PUMP.POSStatus" Address="Task 2.Inputs.RESERVOIR2and4_STP_EL7031_N751_POS_STATUS" Type="Analog" Scaling="0=0,1=1" DataType="uint"/>
- <Input Name="c_RES2_AN_TRANSFER_PUMP.ActualPosition" Address="Task 2.Inputs.RESERVOIR2and4_STP_EL7031_N751_ACTUAL_POSITION" Type="Analog" Scaling="0=0,1=23809.96272" DataType="dint"/>
- <Input Name="r_RES2_AN_BYPASS_FLOW" Address="Task 2.Inputs.RESERVOIR2and4_AI_8CHANNEL_4_20MA_EL3058_N754_7" Scaling="0=0, 4=32767" Type="Analog" DataType="int"/>
- <Input Name="r_RES2_CA_LEVEL_raw" Address="Task 2.Inputs.RESERVOIR2and4_AI_8CHANNEL_4_20MA_EL3058_N754_5" Scaling="0=0, 100=32767" Type="Analog" DataType="int"/>
- <Input Name="r_RES2_CA_PUMP_RUNNING" Address="Task 2.Inputs.RESERVOIR2and4_DI_8CHANNEL_EL1008_N759_1" Invert="false" Type="Digital" DataType="bool"/>
- <Input Name="r_RES2_CA_HED_FLOW" Address="Task 2.Inputs.RESERVOIR2and4_AI_8CHANNEL_4_20MA_EL3058_N753_1" Scaling="0=0, 20=32767" Type="Analog" DataType="int"/>
- <!--Reservoir3-->
- <Input Name="r_RES3_CMM_FLOW" Address="Task 2.Inputs.MAIN_IO_AI_8CHANNEL_4_20mA_EL3058_N14_7" Scaling="0=0, 20=32767" Type="Analog" DataType="int"/>
- <Input Name="r_pH3" Address="Task 2.Inputs.MAIN_IO_AI_8CHANNEL_4_20mA_EL3058_N11_1" Scaling="0=0, 14=32767" Type="Analog" DataType="int"/>
- <Input Name="r_RES3_LEVEL_raw" Address="Task 2.Inputs.MAIN_IO_AI_8CHANNEL_4_20mA_EL3058_N14_5" Scaling="0=0, 100=32767" Type="Analog" DataType="int"/>
- <Input Name="r_RES3_LOW_LEVEL" Address="Task 2.Inputs.MAIN_IO_DI_16CHANNEL_EL1819_N22_2" Invert="false" Type="Digital" DataType="bool"/>
- <Input Name="r_RES3_HED_FLOW" Address="Task 2.Inputs.MAIN_IO_AI_8CHANNEL_4_20mA_EL3058_N13_6" Scaling="0=0, 20=32767" Type="Analog" DataType="int"/>
- <Input Name="r_M3_REPLEN1_LEVEL" Address="Task 2.Inputs.MAIN_IO_DI_16CHANNEL_EL1819_N21_1" Invert="true" Type="Digital" DataType="bool"/>
- <Input Name="r_M3_REPLEN2_LEVEL" Address="Task 2.Inputs.MAIN_IO_DI_16CHANNEL_EL1819_N21_2" Invert="true" Type="Digital" DataType="bool"/>
- <!--Reservoir4-->
- <Input Name="r_RES4_AN_LEVEL_raw" Address="Task 2.Inputs.RESERVOIR2and4_AI_8CHANNEL_4_20MA_EL3058_N755_2" Scaling="0=0, 100=32767" Type="Analog" DataType="int"/>
- <Input Name="c_RES4_AN_TRANSFER_PUMP.STMStatus" Address="Task 2.Inputs.RESERVOIR2and4_STP_EL7031_N752_STM_STATUS" Type="Analog" Scaling="0=0,1=1" DataType="uint"/>
- <Input Name="c_RES4_AN_TRANSFER_PUMP.POSStatus" Address="Task 2.Inputs.RESERVOIR2and4_STP_EL7031_N752_POS_STATUS" Type="Analog" Scaling="0=0,1=1" DataType="uint"/>
- <Input Name="c_RES4_AN_TRANSFER_PUMP.ActualPosition" Address="Task 2.Inputs.RESERVOIR2and4_STP_EL7031_N752_ACTUAL_POSITION" Type="Analog" Scaling="0=0,1=23809.96272" DataType="dint"/>
- <Input Name="r_RES4_AN_BYPASS_FLOW" Address="Task 2.Inputs.RESERVOIR2and4_AI_8CHANNEL_4_20MA_EL3058_N754_8" Scaling="0=0, 4=32767" Type="Analog" DataType="int"/>
- <Input Name="r_RES4_CA_LEVEL_raw" Address="Task 2.Inputs.RESERVOIR2and4_AI_8CHANNEL_4_20MA_EL3058_N754_6" Scaling="0=0, 100=32767" Type="Analog" DataType="int"/>
- <Input Name="r_RES4_CA_PUMP_RUNNING" Address="Task 2.Inputs.RESERVOIR2and4_DI_8CHANNEL_EL1008_N759_2" Invert="false" Type="Digital" DataType="bool"/>
- <Input Name="r_RES4_CA_HED_FLOW" Address="Task 2.Inputs.RESERVOIR2and4_AI_8CHANNEL_4_20MA_EL3058_N753_2" Scaling="0=0, 20=32767" Type="Analog" DataType="int"/>
- <!--Metal1-->
- <Input Name="r_CELL1_FLOW" Address="Task 2.Inputs.RESERVOIR1_AI_8CHANNEL_4_20mA_EL3058_N502_3" Scaling="0=0, 20=32767" Type="Analog" DataType="int"/>
- <!--Metal2-->
- <Input Name="r_CELL2_FLOW" Address="Task 2.Inputs.RESERVOIR1_AI_8CHANNEL_4_20mA_EL3058_N502_4" Scaling="0=0, 20=32767" Type="Analog" DataType="int"/>
- <!--Metal3-->
- <Input Name="r_CELL3_FLOW" Address="Task 2.Inputs.RESERVOIR1_AI_8CHANNEL_4_20mA_EL3058_N502_5" Scaling="0=0, 20=32767" Type="Analog" DataType="int"/>
- <!--Metal4-->
- <Input Name="r_CELL4_FLOW" Address="Task 2.Inputs.RESERVOIR2and4_AI_8CHANNEL_4_20MA_EL3058_N753_3" Scaling="0=0, 20=32767" Type="Analog" DataType="int"/>
- <!--Metal5-->
- <Input Name="r_CELL5_FLOW" Address="Task 2.Inputs.RESERVOIR2and4_AI_8CHANNEL_4_20MA_EL3058_N753_4" Scaling="0=0, 20=32767" Type="Analog" DataType="int"/>
- <!--Metal6-->
- <Input Name="r_CELL6_FLOW" Address="Task 2.Inputs.RESERVOIR2and4_AI_8CHANNEL_4_20MA_EL3058_N753_5" Scaling="0=0, 20=32767" Type="Analog" DataType="int"/>
- <!--Metal7-->
- <Input Name="r_PUMP7_FLOW" Address="Task 2.Inputs.MAIN_IO_AI_8CHANNEL_4_20mA_EL3058_N12_5" Scaling="0=0, 40=32767" Type="Analog" DataType="int"/>
- <!--Metal8-->
- <Input Name="r_PUMP8_FLOW" Address="Task 2.Inputs.MAIN_IO_AI_8CHANNEL_4_20mA_EL3058_N12_6" Scaling="0=0, 40=32767" Type="Analog" DataType="int"/>
- <!--Metal9-->
- <Input Name="r_CELL9_FLOW" Address="Task 2.Inputs.RESERVOIR2and4_AI_8CHANNEL_4_20MA_EL3058_N753_8" Scaling="0=0, 20=32767" Type="Analog" DataType="int"/>
- <!--Metal10-->
- <Input Name="r_CELL10_FLOW" Address="Task 2.Inputs.RESERVOIR2and4_AI_8CHANNEL_4_20MA_EL3058_N754_1" Scaling="0=0, 20=32767" Type="Analog" DataType="int"/>
- <!--Metal11-->
- <Input Name="r_CELL11_FLOW" Address="Task 2.Inputs.RESERVOIR2and4_AI_8CHANNEL_4_20MA_EL3058_N754_2" Scaling="0=0, 20=32767" Type="Analog" DataType="int"/>
- <!--Metal12-->
- <Input Name="r_CELL12_FLOW" Address="Task 2.Inputs.RESERVOIR2and4_AI_8CHANNEL_4_20MA_EL3058_N754_3" Scaling="0=0, 20=32767" Type="Analog" DataType="int"/>
- <!--SRD-->
- <Input Name="r_SRD_FLUID_CONTAINMENT" Address="Task 2.Inputs.SRD_DI_16CHANNEL_EL1819_N303_1" Invert="true" Type="Digital" DataType="bool"/>
- <Input Name="r_SRD_SUPPLY_WATER_PRESS" Address="Task 2.Inputs.SRD_AI_4CHANNEL_4_20A_EL3054_N302_2" Scaling="0=0,50=32767" Type="Analog" DataType="int"/>
- <!--SRD1-->
- <Input Name="r_SRD1_CHUCK_VACUUM_anlg" Address="Task 2.Inputs.SRD_AI_4CHANNEL_0_10V_EL3064_N301_1" Scaling="0=3276.7,-757=16383.5" Type="Analog" DataType="int"/>
- <Input Name="r_SRD1_WAFER_PRESENT_anlg" Address="Task 2.Inputs.SRD_AI_4CHANNEL_0_10V_EL3064_N301_3" Scaling="0=0,100=32767" Type="Analog" DataType="int"/>
- <Input Name="r_SRD1_SHUTTER_CLOSED" Address="Task 2.Inputs.SRD_DI_16CHANNEL_EL1819_N303_7" Invert="false" Type="Digital" DataType="bool"/>
- <Input Name="r_SRD1_SHUTTER_OPEN" Address="Task 2.Inputs.SRD_DI_16CHANNEL_EL1819_N303_6" Invert="false" Type="Digital" DataType="bool"/>
- <!--SRD2-->
- <Input Name="r_SRD2_WAFER_PRESENT_anlg" Address="Task 2.Inputs.SRD_AI_4CHANNEL_0_10V_EL3064_N301_4" Scaling="0=0,100=32767" Type="Analog" DataType="int"/>
- <Input Name="r_SRD2_CHUCK_VACUUM_anlg" Address="Task 2.Inputs.SRD_AI_4CHANNEL_0_10V_EL3064_N301_2" Scaling="0=3276.7,-757=16383.5" Type="Analog" DataType="int"/>
- <Input Name="r_SRD2_SHUTTER_CLOSED" Address="Task 2.Inputs.SRD_DI_16CHANNEL_EL1819_N304_6" Invert="false" Type="Digital" DataType="bool"/>
- <Input Name="r_SRD2_SHUTTER_OPEN" Address="Task 2.Inputs.SRD_DI_16CHANNEL_EL1819_N304_5" Invert="false" Type="Digital" DataType="bool"/>
- <!-- Task 2.Inputs IO INPUTS END -->
- <!--////////////////////////////////////////////////// ALL INPUTS END //////////////////////////////////////////////////-->
- <!--////////////////////////////////////////////////// ALL OUTPUTS BEGIN //////////////////////////////////////////////////-->
- <!--PUF1-->
- <Output Name="c_DPUF_A_CHUCK_A_RELEASE" Address="Task 2.Outputs.PUF_DO_16Bit_EL2809_N254_11" Type="Digital" DataType="bool"/>
- <Output Name="c_DPUF_A_CHUCK_B_RELEASE" Address="Task 2.Outputs.PUF_DO_16Bit_EL2809_N254_12" Type="Digital" DataType="bool"/>
- <!--PUF2-->
- <Output Name="c_DPUF_B_CHUCK_A_RELEASE" Address="Task 2.Outputs.PUF_DO_16Bit_EL2809_N254_13" Type="Digital" DataType="bool"/>
- <Output Name="c_DPUF_B_CHUCK_B_RELEASE" Address="Task 2.Outputs.PUF_DO_16Bit_EL2809_N254_14" Type="Digital" DataType="bool"/>
- <!--Loader1-->
- <Output Name="c_WAFER_HOLDER_CLAMPED" Address="Task 2.Outputs.LOADER_PneumaticByte1" Invert="true" Type="Digital" BitOperated="true" Bit="2" DataType="byte"/>
- <Output Name="c_Flow_Test_Clamp" Address="Task 2.Outputs.LOADER_PneumaticByte1" Type="Digital" BitOperated="true" Bit="4" DataType="byte"/>
- <Output Name="c_Cathode_Clamp" Address="Task 2.Outputs.LOADER_PneumaticByte1" Type="Digital" BitOperated="true" Bit="6" DataType="byte"/>
- <Output Name="c_LOADERA_DOOR_UNLOCK" Address="Task 2.Outputs.LOADER_PneumaticByte2" Type="Digital" BitOperated="true" Bit="0" DataType="byte"/>
- <Output Name="c_LOADERB_DOOR_UNLOCK" Address="Task 2.Outputs.LOADER_PneumaticByte2" Type="Digital" BitOperated="true" Bit="2" DataType="byte"/>
- <Output Name="c_LoaderA_LS_Vacuum" Address="Task 2.Outputs.LOADER_PneumaticByte2" Invert="true" Type="Digital" BitOperated="true" Bit="4" DataType="byte"/>
- <Output Name="c_LoaderB_LS_Vacuum" Address="Task 2.Outputs.LOADER_PneumaticByte2" Invert="true" Type="Digital" BitOperated="true" Bit="5" DataType="byte"/>
- <Output Name="c_LOADERA_WS_BLADDER" Address="Task 2.Outputs.LOADER_PneumaticByte2" Type="Digital" BitOperated="true" Bit="6" DataType="byte"/>
- <Output Name="c_LOADERB_WS_BLADDER" Address="Task 2.Outputs.LOADER_PneumaticByte2" Type="Digital" BitOperated="true" Bit="7" DataType="byte"/>
- <Output Name="c_LOADERA_BERNOULLI_BLADDER" Address="Task 2.Outputs.LOADER_PneumaticByte3" Type="Digital" BitOperated="true" Bit="0" DataType="byte"/>
- <Output Name="c_LOADERB_BERNOULLI_BLADDER" Address="Task 2.Outputs.LOADER_PneumaticByte3" Type="Digital" BitOperated="true" Bit="1" DataType="byte"/>
- <Output Name="c_LOADERA_TRANS_BLADDER" Address="Task 2.Outputs.LOADER_PneumaticByte3" Type="Digital" BitOperated="true" Bit="2" DataType="byte"/>
- <Output Name="c_LOADERA_TRANS_HIGH" Address="Task 2.Outputs.LOADER_PneumaticByte3" Type="Digital" BitOperated="true" Bit="3" DataType="byte"/>
- <Output Name="c_LOADERB_TRANS_BLADDER" Address="Task 2.Outputs.LOADER_PneumaticByte3" Type="Digital" BitOperated="true" Bit="4" DataType="byte"/>
- <Output Name="c_LOADERB_TRANS_HIGH" Address="Task 2.Outputs.LOADER_PneumaticByte3" Type="Digital" BitOperated="true" Bit="5" DataType="byte"/>
- <Output Name="c_LOADERA_BERNOULLI_N2" Address="Task 2.Outputs.LOADER_PneumaticByte3" Type="Digital" BitOperated="true" Bit="6" DataType="byte"/>
- <Output Name="c_LOADERB_BERNOULLI_N2" Address="Task 2.Outputs.LOADER_PneumaticByte3" Type="Digital" BitOperated="true" Bit="7" DataType="byte"/>
- <Output Name="c_LOADERA_BERNOULLI_N2_SECOND" Address="Task 2.Outputs.LOADER_PneumaticByte4" Type="Digital" BitOperated="true" Bit="0" DataType="byte"/>
- <Output Name="c_LOADERB_BERNOULLI_N2_SECOND" Address="Task 2.Outputs.LOADER_PneumaticByte4" Type="Digital" BitOperated="true" Bit="1" DataType="byte"/>
- <Output Name="c_VACUUM_TEST" Address="Task 2.Outputs.LOADER_DO_8CHANNEL_EL2008_N56_1" Type="Digital" DataType="bool"/>
- <Output Name="c_PLATEOUT_HANDSHAKE_CAMERA_TRIGGER" Address="Task 2.Outputs.SRD_DO_16CHANNEL_EL2809_N306_14" Type="Digital" DataType="bool"/>
- <!--Facilities-->
- <Output Name="c_N2_ENABLE" Address="Task 2.Outputs.MAIN_IO_DO_16CHANNEL_EL2809_N24_10" Type="Digital" DataType="bool"/>
- <Output Name="c_CDA_ENABLE" Address="Task 2.Outputs.MAIN_IO_DO_16CHANNEL_EL2809_N24_1" Type="Digital" DataType="bool"/>
- <Output Name="c_EXTERNAL_CDA_ENABLE" Address="Task 2.Outputs.MAIN_IO_DO_16CHANNEL_EL2809_N24_5" Type="Digital" DataType="bool"/>
- <Output Name="c_DI_MAIN_ENABLE" Address="Task 2.Outputs.MAIN_IO_DO_16CHANNEL_EL2809_N24_2" Type="Digital" DataType="bool"/>
- <Output Name="c_HCW_ENABLE" Address="Task 2.Outputs.MAIN_IO_DO_16CHANNEL_EL2809_N24_6" Type="Digital" DataType="bool"/>
- <Output Name="c_DI_REPLEN_ENABLE" Address="Task 2.Outputs.MAIN_IO_DO_16CHANNEL_EL2809_N24_3" Type="Digital" DataType="bool"/>
- <Output Name="c_DI_FILL_ENABLE" Address="Task 2.Outputs.MAIN_IO_DO_16CHANNEL_EL2809_N24_4" Type="Digital" DataType="bool"/>
- <Output Name="c_DI_LOADER_ENABLE" Address="Task 2.Outputs.PROCESS2_FESTO_BYTE16" Type="Digital" BitOperated="true" Bit="7" DataType="byte"/>
- <Output Name="c_FILTER_PURGE_ENABLE" Address="Task 2.Outputs.PROCESS1_FESTO_BYTE9" Type="Digital" BitOperated="true" Bit="2" DataType="byte"/>
- <Output Name="c_SAMPLE_STATION_ENABLE" Address="Task 2.Outputs.PROCESS1_FESTO_BYTE9" Type="Digital" BitOperated="true" Bit="0" DataType="byte"/>
- <Output Name="c_SAMPLE_STATION_FLOW_1_ENABLE" Address="Task 2.Outputs.PROCESS1_FESTO_BYTE10" Type="Digital" BitOperated="true" Bit="6" DataType="byte"/>
- <Output Name="c_SAMPLE_STATION_FLOW_2_ENABLE" Address="Task 2.Outputs.PROCESS1_FESTO_BYTE10" Type="Digital" BitOperated="true" Bit="7" DataType="byte"/>
- <Output Name="c_SAMPLE_STATION_FLOW_3_ENABLE" Address="Task 2.Outputs.PROCESS1_FESTO_BYTE8" Type="Digital" BitOperated="true" Bit="7" DataType="byte"/>
- <Output Name="c_SAMPLE_STATION_FLOW_4_ENABLE" Address="Task 2.Outputs.PROCESS1_FESTO_BYTE11" Type="Digital" BitOperated="true" Bit="0" DataType="byte"/>
- <!--Transporter-->
- <Output Name="c_ENCLOSED_TRANSPORT2_UNLOCK_SOLENOID" Address="Task 2.Outputs.LdrTxIO_DO_16Bit_EL2871_N152_1" Type="Digital" DataType="bool"/>
- <Output Name="c_ENCLOSED_TRANSPORT2_UPPER_IMMOBILIZER_ACTIVE2" Address="Task 2.Outputs.LdrTx_Pneumatic_Byte1" Type="Digital" BitOperated="true" Bit="0" DataType="byte"/>
- <Output Name="c_ENCLOSED_TRANSPORT2_UPPER_IMMOBILIZER_ACTIVE" Address="Task 2.Outputs.LdrTx_Pneumatic_Byte1" Type="Digital" BitOperated="true" Bit="2" DataType="byte"/>
- <Output Name="c_ENCLOSED_TRANSPORT_UNLOCK_SOLENOID" Address="Task 2.Outputs.PrcTxIO_DO_16Bit_EL2871_N202_1" Type="Digital" DataType="bool"/>
- <Output Name="c_ENCLOSED_TRANSPORT_UPPER_IMMOBILIZER_ACTIVE2" Address="Task 2.Outputs.PrcTx_Pneumatic_Byte1" Type="Digital" BitOperated="true" Bit="0" DataType="byte"/>
- <Output Name="c_ENCLOSED_TRANSPORT_UPPER_IMMOBILIZER_ACTIVE" Address="Task 2.Outputs.PrcTx_Pneumatic_Byte1" Type="Digital" BitOperated="true" Bit="2" DataType="byte"/>
- <!--Dryer-->
- <Output Name="c_HVD_1_ENABLE" Address="Task 2.Outputs.PUF_DO_16Bit_EL2809_N254_1" Type="Digital" DataType="bool"/>
- <Output Name="c_HVD_1_HIGH" Address="Task 2.Outputs.PUF_DO_16Bit_EL2809_N254_2" Type="Digital" DataType="bool"/>
- <Output Name="c_HVD_2_HIGH" Address="Task 2.Outputs.PUF_DO_16Bit_EL2809_N254_3" Type="Digital" DataType="bool"/>
- <Output Name="c_HVD_2_ENABLE" Address="Task 2.Outputs.PUF_DO_16Bit_EL2809_N254_15" Type="Digital" DataType="bool"/>
- <!--SAFETY-->
- <Output Name="c_Safety_RunStop" Address="Task 2.Outputs.Safety_RunStop" Type="Digital" DataType="bool"/>
- <Output Name="c_Safety_ErrAck" Address="Task 2.Outputs.Safety_ErrAck" Type="Digital" DataType="bool"/>
- <Output Name="c_Safety_SLS_Restart" Address="Task 2.Outputs.Safety_SLS_ESTOP_Restart" Type="Digital" DataType="bool"/>
- <Output Name="c_Safety_TX_STO_MON_Restart" Address="Task 2.Outputs.Safety_TX_STO_MON_Restart" Type="Digital" DataType="bool"/>
- <Output Name="c_Safety_TX_STO1_ESTOP_Restart" Address="Task 2.Outputs.Safety_TX_STO1_ESTOP_Restart" Type="Digital" DataType="bool"/>
- <Output Name="c_Safety_TX_STO2_ESTOP_Restart" Address="Task 2.Outputs.Safety_TX_STO2_ESTOP_Restart" Type="Digital" DataType="bool"/>
- <Output Name="c_Safety_LDRPUF_STO_MON_Restart" Address="Task 2.Outputs.Safety_LDRPUF_STO_MON_Restart" Type="Digital" DataType="bool"/>
- <Output Name="c_Safety_LDRPUF_STO1_ESTOP_Restart" Address="Task 2.Outputs.Safety_LDRPUF_STO1_ESTOP_Restart" Type="Digital" DataType="bool"/>
- <Output Name="c_Safety_LDRPUF_STO2_ESTOP_Restart" Address="Task 2.Outputs.Safety_LDRPUF_STO2_ESTOP_Restart" Type="Digital" DataType="bool"/>
- <Output Name="c_Safety_SRD_STO_ESTOP_Restart" Address="Task 2.Outputs.Safety_SRD_STO_ESTOP_Restart" Type="Digital" DataType="bool"/>
- <Output Name="c_Safety_PUMP_STO_ESTOP_Restart" Address="Task 2.Outputs.Safety_PUMP_ESTOP_Restart" Type="Digital" DataType="bool"/>
- <Output Name="c_Safety_FLUID_ESTOP_Restart" Address="Task 2.Outputs.Safety_Fluid_ESTOP_Restart" Type="Digital" DataType="bool"/>
- <Output Name="c_REQUEST_LDR_DOOR_OPEN" Address="Task 2.Outputs.Safety_ReqLoaderDoorOpen" Type="Digital" DataType="bool"/>
- <Output Name="c_REQUEST_BFFR_DOOR_OPEN" Address="Task 2.Outputs.Safety_ReqBufferDoorOpen" Type="Digital" DataType="bool"/>
- <Output Name="c_REQUEST_PROC_DOORS_OPEN" Address="Task 2.Outputs.Safety_ReqProcDoorsOpen" Type="Digital" DataType="bool"/>
- <Output Name="c_MODE_SIREN" Address="Task 2.Outputs.MAIN_IO_DO_16CHANNEL_EL2809_N25_10" Type="Digital" DataType="bool"/>
- <Output Name="c_Safety_SRD_Arm_Reset" Address="Task 2.Outputs.Safety_SRD_Arm_Reset" Type="Analog" Scaling="0=0,1=1" DataType="uint"/>
- <!--Rinse-->
- <!--Output Name="c_QDRD1_WH_CLAMP" Address="Task 2.Outputs.PROCESS1_FESTO_BYTE1" Type="Digital" BitOperated="true" Bit="0" DataType="byte"/-->add QDR6 Done
- <Output Name="c_QDRD1_WS_CLAMP" Address="Task 2.Outputs.PROCESS1_FESTO_BYTE1" Type="Digital" BitOperated="true" Bit="0" DataType="byte"/>
- <Output Name="c_QDRD2_WS_CLAMP" Address="Task 2.Outputs.PROCESS1_FESTO_BYTE1" Type="Digital" BitOperated="true" Bit="2" DataType="byte"/>
- <Output Name="c_QDRD3_WS_CLAMP" Address="Task 2.Outputs.PROCESS1_FESTO_BYTE1" Type="Digital" BitOperated="true" Bit="4" DataType="byte"/>
- <Output Name="c_QDRD4_WS_CLAMP" Address="Task 2.Outputs.PROCESS1_FESTO_BYTE1" Type="Digital" BitOperated="true" Bit="6" DataType="byte"/>
- <Output Name="c_QDRD5_WS_CLAMP" Address="Task 2.Outputs.PROCESS2_FESTO_BYTE1" Type="Digital" BitOperated="true" Bit="0" DataType="byte"/>
- <Output Name="c_QDRD6_WS_CLAMP" Address="Task 2.Outputs.PROCESS2_FESTO_BYTE1" Type="Digital" BitOperated="true" Bit="2" DataType="byte"/>
- <Output Name="c_QDRD1_LO_PRESSURE" Address="Task 2.Outputs.MAIN_IO_DO_16CHANNEL_EL2809_N24_11" Type="Digital" DataType="bool"/>
- <Output Name="c_QDRD2_LO_PRESSURE" Address="Task 2.Outputs.MAIN_IO_DO_16CHANNEL_EL2809_N24_12" Type="Digital" DataType="bool"/>
- <Output Name="c_QDRD3_LO_PRESSURE" Address="Task 2.Outputs.MAIN_IO_DO_16CHANNEL_EL2809_N24_13" Type="Digital" DataType="bool"/>
- <Output Name="c_QDRD4_LO_PRESSURE" Address="Task 2.Outputs.MAIN_IO_DO_16CHANNEL_EL2809_N24_14" Type="Digital" DataType="bool"/>
- <Output Name="c_QDRD5_LO_PRESSURE" Address="Task 2.Outputs.MAIN_IO_DO_16CHANNEL_EL2809_N24_15" Type="Digital" DataType="bool"/>
- <Output Name="c_QDRD6_LO_PRESSURE" Address="Task 2.Outputs.MAIN_IO_DO_16CHANNEL_EL2809_N24_16" Type="Digital" DataType="bool"/>
- <!--Output Name="c_QDRD1_DI_FILL" Address="Task 2.Outputs.PROCESS1_FESTO_BYTE6" Type="Digital" BitOperated="true" Bit="4" DataType="byte"/-->add QDR6 Done
- <Output Name="c_QDRD1_DI_FILL" Address="Task 2.Outputs.PROCESS1_FESTO_BYTE6" Type="Digital" BitOperated="true" Bit="4" DataType="byte"/>
- <Output Name="c_QDRD2_DI_FILL" Address="Task 2.Outputs.PROCESS1_FESTO_BYTE6" Type="Digital" BitOperated="true" Bit="6" DataType="byte"/>
- <Output Name="c_QDRD3_DI_FILL" Address="Task 2.Outputs.PROCESS1_FESTO_BYTE7" Type="Digital" BitOperated="true" Bit="0" DataType="byte"/>
- <Output Name="c_QDRD4_DI_FILL" Address="Task 2.Outputs.PROCESS1_FESTO_BYTE7" Type="Digital" BitOperated="true" Bit="2" DataType="byte"/>
- <Output Name="c_QDRD5_DI_FILL" Address="Task 2.Outputs.PROCESS2_FESTO_BYTE6" Type="Digital" BitOperated="true" Bit="4" DataType="byte"/>
- <Output Name="c_QDRD6_DI_FILL" Address="Task 2.Outputs.PROCESS2_FESTO_BYTE6" Type="Digital" BitOperated="true" Bit="6" DataType="byte"/>
- <!--Output Name="c_QDRD1_DUMP" Address="Task 2.Outputs.PROCESS1_FESTO_BYTE6" Type="Digital" BitOperated="true" Bit="5" DataType="byte"/-->add QDR6 Done
- <Output Name="c_QDRD1_DUMP" Address="Task 2.Outputs.PROCESS2_FESTO_BYTE6" Type="Digital" BitOperated="true" Bit="5" DataType="byte"/>
- <Output Name="c_QDRD2_DUMP" Address="Task 2.Outputs.PROCESS1_FESTO_BYTE6" Type="Digital" BitOperated="true" Bit="7" DataType="byte"/>
- <Output Name="c_QDRD3_DUMP" Address="Task 2.Outputs.PROCESS1_FESTO_BYTE7" Type="Digital" BitOperated="true" Bit="1" DataType="byte"/>
- <Output Name="c_QDRD4_DUMP" Address="Task 2.Outputs.PROCESS1_FESTO_BYTE7" Type="Digital" BitOperated="true" Bit="3" DataType="byte"/>
- <Output Name="c_QDRD5_DUMP" Address="Task 2.Outputs.PROCESS2_FESTO_BYTE6" Type="Digital" BitOperated="true" Bit="5" DataType="byte"/>
- <Output Name="c_QDRD6_DUMP" Address="Task 2.Outputs.PROCESS2_FESTO_BYTE6" Type="Digital" BitOperated="true" Bit="7" DataType="byte"/>
- <!--Output Name="c_QDRD1_MDRAIN" Address="Task 2.Outputs.PROCESS1_FESTO_BYTE14" Type="Digital" Invert="true" BitOperated="true" Bit="4" DataType="byte"/-->add QDR6 Done
- <Output Name="c_QDRD1_MDRAIN" Address="Task 2.Outputs.PROCESS1_FESTO_BYTE14" Type="Digital" Invert="false" BitOperated="true" Bit="4" DataType="byte"/>
- <Output Name="c_QDRD2_MDRAIN" Address="Task 2.Outputs.PROCESS1_FESTO_BYTE14" Type="Digital" Invert="false" BitOperated="true" Bit="5" DataType="byte"/>
- <Output Name="c_QDRD3_MDRAIN" Address="Task 2.Outputs.PROCESS1_FESTO_BYTE14" Type="Digital" Invert="false" BitOperated="true" Bit="6" DataType="byte"/>
- <Output Name="c_QDRD4_MDRAIN" Address="Task 2.Outputs.PROCESS1_FESTO_BYTE14" Type="Digital" Invert="false" BitOperated="true" Bit="7" DataType="byte"/>
- <Output Name="c_QDRD5_MDRAIN" Address="Task 2.Outputs.PROCESS1_FESTO_BYTE15" Type="Digital" Invert="false" BitOperated="true" Bit="0" DataType="byte"/>
- <Output Name="c_QDRD6_MDRAIN" Address="Task 2.Outputs.PROCESS1_FESTO_BYTE15" Type="Digital" Invert="false" BitOperated="true" Bit="1" DataType="byte"/>
- <!--Prewet-->
- <Output Name="c_SPW1_LEV_PUMP_VALVE" Address="Task 2.Outputs.PROCESS2_FESTO_BYTE16" Type="Digital" BitOperated="true" Bit="6" DataType="byte"/>
- <Output Name="c_SPW1_LEV_PUMP_SPEED" Address="Task 2.Outputs.MAIN_IO_AO_2CHANNEL_4_20mA_EL4022_N19_1" Scaling="300=0,7300=32767" Type="Analog" DataType="int"/>
- <Output Name="c_SPW1_LEV_PUMP_ENB" Address="Task 2.Outputs.MAIN_IO_DO_16CHANNEL_EL2809_N24_7" Type="Digital" DataType="bool"/>
- <!--Reservoir1-->
- <Output Name="c_RES1_CA_DI_REPLEN" Address="Task 2.Outputs.PROCESS1_FESTO_BYTE14" Type="Digital" BitOperated="true" Bit="0" DataType="byte"/>
- <Output Name="c_RES1_AN_DI_REPLEN" Address="Task 2.Outputs.PROCESS1_FESTO_BYTE14" Type="Digital" BitOperated="true" Bit="1" DataType="byte"/>
- <Output Name="c_RES1_AN_PUMP" Address="Task 2.Outputs.RESERVOIR1_AO_8CHANNEL_0_10V_EL4008_N504_6" Scaling="0=0,10=32767" Type="Analog" DataType="int"/>
- <Output Name="c_RES1_CROSSDOSE_ENABLE" Address="Task 2.Outputs.PROCESS1_FESTO_BYTE10" Type="Digital" BitOperated="true" Bit="4" DataType="byte"/>
- <Output Name="c_RES1_AN_TRANSFER_PUMP.Enable" Address="Task 2.Outputs.RESERVOIR1_STP_EL7031_N501_ENABLE" Type="Digital" DataType="bool"/>
- <Output Name="c_RES1_AN_TRANSFER_PUMP.Reset" Address="Task 2.Outputs.RESERVOIR1_STP_EL7031_N501_RESET" Type="Digital" DataType="bool"/>
- <Output Name="c_RES1_AN_TRANSFER_PUMP.Execute" Address="Task 2.Outputs.RESERVOIR1_STP_EL7031_N501_EXECUTE" Type="Digital" DataType="bool"/>
- <Output Name="c_RES1_AN_TRANSFER_PUMP.TargetPosition" Address="Task 2.Outputs.RESERVOIR1_STP_EL7031_N501_TARGET_POSITION" Type="Analog" Scaling="0=0,32767=32767" DataType="dint"/>
- <Output Name="c_RES1_AN_TRANSFER_PUMP.Speed" Address="Task 2.Outputs.RESERVOIR1_STP_EL7031_N501_VELOCITY" Type="Analog" Scaling="0=0,32767=32767" DataType="int" Clip="true"/>
- <Output Name="c_RES1_AN_TRANSFER_PUMP.StartType" Address="Task 2.Outputs.RESERVOIR1_STP_EL7031_N501_START_TYPE" Type="Digital" DataType="uint"/>
- <Output Name="c_RES1_AN_TRANSFER_PUMP.Acceleration" Address="Task 2.Outputs.RESERVOIR1_STP_EL7031_N501_ACCELERATION" Type="Analog" Scaling="0=0,32767=32767" DataType="int"/>
- <Output Name="c_RES1_AN_TRANSFER_PUMP.Deceleration" Address="Task 2.Outputs.RESERVOIR1_STP_EL7031_N501_DECELERATION" Type="Analog" Scaling="0=0,32767=32767" DataType="int"/>
- <Output Name="c_RES1_AN_A_DRAIN_PUMP" Address="Task 2.Outputs.RESERVOIR1_AO_8CHANNEL_0_10V_EL4008_N504_3" Scaling="0=0,10=32767" Type="Analog" DataType="int"/>
- <Output Name="c_RES1_AN_B_DRAIN_PUMP" Address="Task 2.Outputs.RESERVOIR1_AO_8CHANNEL_0_10V_EL4008_N504_4" Scaling="0=0,10=32767" Type="Analog" DataType="int"/>
- <Output Name="c_RES1_AN_SLIPSTREAM_PUMP" Address="Task 2.Outputs.RESERVOIR1_AO_8CHANNEL_0_10V_EL4008_N504_2" Scaling="0=0,10=32767" Type="Analog" DataType="int"/>
- <Output Name="c_RES1_CA_SLIPSTREAM_PUMP" Address="Task 2.Outputs.RESERVOIR1_AO_8CHANNEL_0_10V_EL4008_N504_1" Scaling="0=0,10=32767" Type="Analog" DataType="int"/>
- <Output Name="c_RES1_CA_PUMP_SPEED" Address="Task 2.Outputs.RESERVOIR1_AO_1CHANNEL_4_20mA_EL4021_N505_1" Scaling="0=0,10000=32767" Type="Analog" DataType="int"/>
- <Output Name="c_RES1_DI_EVAP_FLOW_ENABLE" Address="Task 2.Outputs.PROCESS1_FESTO_BYTE16" Type="Digital" BitOperated="true" Bit="6" DataType="byte"/>
- <Output Name="c_RES1_AN_BYPASS" Address="Task 2.Outputs.PROCESS1_FESTO_BYTE8" Invert="true" Type="Digital" BitOperated="true" Bit="3" DataType="byte"/>
- <Output Name="c_RES1_CA_BYPASS" Address="Task 2.Outputs.PROCESS1_FESTO_BYTE8" Type="Digital" BitOperated="true" Bit="5" DataType="byte"/>
- <Output Name="c_RES1_CA_PUMP_ENABLE" Address="Task 2.Outputs.RESERVOIR1_DO_8CHANNEL_EL2008_N507_1" Type="Digital" DataType="bool"/>
- <Output Name="c_RES1_AN_SAMPLE_FLOW_ENABLE" Address="Task 2.Outputs.PROCESS1_FESTO_BYTE12" Type="Digital" BitOperated="true" Bit="4" DataType="byte"/>
- <Output Name="c_RES1_CA_SAMPLE_FLOW_ENABLE" Address="Task 2.Outputs.PROCESS1_FESTO_BYTE12" Type="Digital" BitOperated="true" Bit="5" DataType="byte"/>
- <!--Reservoir2-->
- <Output Name="c_RES2_CA_DI_REPLEN" Address="Task 2.Outputs.PROCESS1_FESTO_BYTE14" Type="Digital" BitOperated="true" Bit="2" DataType="byte"/>
- <Output Name="c_RES2_AN_DI_REPLEN" Address="Task 2.Outputs.PROCESS1_FESTO_BYTE14" Type="Digital" BitOperated="true" Bit="3" DataType="byte"/>
- <Output Name="c_RES2_AN_PUMP" Address="Task 2.Outputs.RESERVOIR2and4_AO_8CHANNEL_0_10V_EL4008_N757_5" Scaling="0=0,10=32767" Type="Analog" DataType="int"/>
- <Output Name="c_RES2_CROSSDOSE_ENABLE" Address="Task 2.Outputs.PROCESS1_FESTO_BYTE10" Type="Digital" BitOperated="true" Bit="5" DataType="byte"/>
- <Output Name="c_RES2_AN_TRANSFER_PUMP.Enable" Address="Task 2.Outputs.RESERVOIR2and4_STP_EL7031_N751_ENABLE" Type="Digital" DataType="bool"/>
- <Output Name="c_RES2_AN_TRANSFER_PUMP.Reset" Address="Task 2.Outputs.RESERVOIR2and4_STP_EL7031_N751_RESET" Type="Digital" DataType="bool"/>
- <Output Name="c_RES2_AN_TRANSFER_PUMP.Execute" Address="Task 2.Outputs.RESERVOIR2and4_STP_EL7031_N751_EXECUTE" Type="Digital" DataType="bool"/>
- <Output Name="c_RES2_AN_TRANSFER_PUMP.TargetPosition" Address="Task 2.Outputs.RESERVOIR2and4_STP_EL7031_N751_TARGET_POSITION" Type="Analog" Scaling="0=0,32767=32767" DataType="dint"/>
- <Output Name="c_RES2_AN_TRANSFER_PUMP.Speed" Address="Task 2.Outputs.RESERVOIR2and4_STP_EL7031_N751_VELOCITY" Type="Analog" Scaling="0=0,32767=32767" DataType="int" Clip="true"/>
- <Output Name="c_RES2_AN_TRANSFER_PUMP.StartType" Address="Task 2.Outputs.RESERVOIR2and4_STP_EL7031_N751_START_TYPE" Type="Digital" DataType="uint"/>
- <Output Name="c_RES2_AN_TRANSFER_PUMP.Acceleration" Address="Task 2.Outputs.RESERVOIR2and4_STP_EL7031_N751_ACCELERATION" Type="Analog" Scaling="0=0,32767=32767" DataType="int"/>
- <Output Name="c_RES2_AN_TRANSFER_PUMP.Deceleration" Address="Task 2.Outputs.RESERVOIR2and4_STP_EL7031_N751_DECELERATION" Type="Analog" Scaling="0=0,32767=32767" DataType="int"/>
- <Output Name="c_RES2_AN_A_DRAIN_PUMP" Address="Task 2.Outputs.RESERVOIR2and4_AO_8CHANNEL_0_10V_EL4008_N757_7" Scaling="0=0,10=32767" Type="Analog" DataType="int"/>
- <Output Name="c_RES2_AN_B_DRAIN_PUMP" Address="Task 2.Outputs.RESERVOIR2and4_AO_8CHANNEL_0_10V_EL4008_N757_8" Scaling="0=0,10=32767" Type="Analog" DataType="int"/>
- <Output Name="c_RES2_AN_SLIPSTREAM_PUMP" Address="Task 2.Outputs.RESERVOIR2and4_AO_8CHANNEL_0_10V_EL4008_N758_3" Scaling="0=0,10=32767" Type="Analog" DataType="int"/>
- <Output Name="c_RES2_CA_SLIPSTREAM_PUMP" Address="Task 2.Outputs.RESERVOIR2and4_AO_8CHANNEL_0_10V_EL4008_N757_3" Scaling="0=0,10=32767" Type="Analog" DataType="int"/>
- <Output Name="c_RES2_CA_PUMP_SPEED" Address="Task 2.Outputs.RESERVOIR2and4_AO_2CHANNEL_4_20mA_EL4022_N756_1" Scaling="0=0,10000=32767" Type="Analog" DataType="int"/>
- <Output Name="c_RES2_DI_EVAP_FLOW_ENABLE" Address="Task 2.Outputs.PROCESS1_FESTO_BYTE16" Type="Digital" BitOperated="true" Bit="7" DataType="byte"/>
- <Output Name="c_RES2_AN_BYPASS" Address="Task 2.Outputs.PROCESS1_FESTO_BYTE8" Invert="true" Type="Digital" BitOperated="true" Bit="4" DataType="byte"/>
- <Output Name="c_RES2_CA_BYPASS" Address="Task 2.Outputs.PROCESS1_FESTO_BYTE8" Type="Digital" BitOperated="true" Bit="6" DataType="byte"/>
- <Output Name="c_RES2_CA_PUMP_ENABLE" Address="Task 2.Outputs.RESERVOIR2and4_DO_8CHANNEL_EL2008_N760_1" Type="Digital" DataType="bool"/>
- <Output Name="c_RES2_AN_SAMPLE_FLOW_ENABLE" Address="Task 2.Outputs.PROCESS1_FESTO_BYTE12" Type="Digital" BitOperated="true" Bit="6" DataType="byte"/>
- <Output Name="c_RES2_CA_SAMPLE_FLOW_ENABLE" Address="Task 2.Outputs.PROCESS1_FESTO_BYTE12" Type="Digital" BitOperated="true" Bit="7" DataType="byte"/>
- <!--Reservoir2-->
- <Output Name="c_RES3_DI_REPLEN" Address="Task 2.Outputs.PROCESS1_FESTO_BYTE16" Type="Digital" BitOperated="true" Bit="3" DataType="byte"/>
- <Output Name="c_PH3_FLOW_VALVE" Address="Task 2.Outputs.PROCESS1_FESTO_BYTE16" Type="Digital" BitOperated="true" Bit="0" DataType="byte"/>
- <Output Name="c_M3_REPLEN1_SPEED" Address="Task 2.Outputs.MAIN_IO_AO_4CHANNEL_0_10V_EL4004_N18_1" Scaling="0=0,10=32767" Type="Analog" DataType="int"/>
- <Output Name="c_M3_REPLEN2_SPEED" Address="Task 2.Outputs.MAIN_IO_AO_4CHANNEL_0_10V_EL4004_N18_2" Scaling="0=0,10=32767" Type="Analog" DataType="int"/>
- <!--Reservoir4-->
- <Output Name="c_RES4_CA_DI_REPLEN" Address="Task 2.Outputs.PROCESS2_FESTO_BYTE13" Type="Digital" BitOperated="true" Bit="2" DataType="byte"/>
- <Output Name="c_RES4_AN_DI_REPLEN" Address="Task 2.Outputs.PROCESS2_FESTO_BYTE13" Type="Digital" BitOperated="true" Bit="3" DataType="byte"/>
- <Output Name="c_RES4_AN_PUMP" Address="Task 2.Outputs.RESERVOIR2and4_AO_8CHANNEL_0_10V_EL4008_N757_6" Scaling="0=3276,5=16383.5" Type="Analog" DataType="int"/>
- <Output Name="c_RES4_CROSSDOSE_ENABLE" Address="Task 2.Outputs.PROCESS2_FESTO_BYTE13" Type="Digital" BitOperated="true" Bit="4" DataType="byte"/>
- <Output Name="c_RES4_AN_TRANSFER_PUMP.Enable" Address="Task 2.Outputs.RESERVOIR2and4_STP_EL7031_N752_ENABLE" Type="Digital" DataType="bool"/>
- <Output Name="c_RES4_AN_TRANSFER_PUMP.Reset" Address="Task 2.Outputs.RRESERVOIR2and4_STP_EL7031_N752_RESET" Type="Digital" DataType="bool"/>
- <Output Name="c_RES4_AN_TRANSFER_PUMP.Execute" Address="Task 2.Outputs.RESERVOIR2and4_STP_EL7031_N752_EXECUTE" Type="Digital" DataType="bool"/>
- <Output Name="c_RES4_AN_TRANSFER_PUMP.TargetPosition" Address="Task 2.Outputs.RESERVOIR2and4_STP_EL7031_N752_TARGET_POSITION" Type="Analog" Scaling="0=0,1=23809.96272" DataType="dint"/>
- <Output Name="c_RES4_AN_TRANSFER_PUMP.Speed" Address="Task 2.Outputs.RESERVOIR2and4_STP_EL7031_N752_VELOCITY" Type="Analog" Scaling="0=0,32767=32767" DataType="int" Clip="true"/>
- <Output Name="c_RES4_AN_TRANSFER_PUMP.StartType" Address="Task 2.Outputs.RESERVOIR2and4_STP_EL7031_N752_START_TYPE" Type="Analog" Scaling="0=0,1=1" DataType="uint"/>
- <Output Name="c_RES4_AN_TRANSFER_PUMP.Acceleration" Address="Task 2.Outputs.RESERVOIR2and4_STP_EL7031_N752_ACCELERATION" Type="Analog" Scaling="0=0,32767=32767" DataType="int"/>
- <Output Name="c_RES4_AN_TRANSFER_PUMP.Deceleration" Address="Task 2.Outputs.RESERVOIR2and4_STP_EL7031_N752_DECELERATION" Type="Analog" Scaling="0=0,32767=32767" DataType="int"/><!--NEED CHECK-->
- <Output Name="c_RES4_AN_A_DRAIN_PUMP" Address="Task 2.Outputs.RESERVOIR2and4_AO_8CHANNEL_0_10V_EL4008_N758_1" Scaling="0=0,10=32767" Type="Analog" DataType="int"/>
- <Output Name="c_RES4_AN_B_DRAIN_PUMP" Address="Task 2.Outputs.RESERVOIR2and4_AO_8CHANNEL_0_10V_EL4008_N758_2" Scaling="0=0,10=32767" Type="Analog" DataType="int"/>
- <Output Name="c_RES4_AN_SLIPSTREAM_PUMP" Address="Task 2.Outputs.RESERVOIR2and4_AO_8CHANNEL_0_10V_EL4008_N758_4" Scaling="0=0,10=32767" Type="Analog" DataType="int"/>
- <Output Name="c_RES4_CA_SLIPSTREAM_PUMP" Address="Task 2.Outputs.RESERVOIR2and4_AO_8CHANNEL_0_10V_EL4008_N757_4" Scaling="0=0,10=32767" Type="Analog" DataType="int"/>
- <Output Name="c_RES4_CA_PUMP_SPEED" Address="Task 2.Outputs.RESERVOIR2and4_AO_2CHANNEL_4_20mA_EL4022_N756_2" Scaling="0=0,10000=32767" Type="Analog" DataType="int"/>
- <!-- <Output Name="c_RES4_DI_EVAP_FLOW_ENABLE" Address="Task 2.Outputs.PROCESS1_FESTO_BYTE16" Type="Digital" BitOperated="true" Bit="7" DataType="byte"/> -->
- <Output Name="c_RES4_CA_BYPASS" Address="Task 2.Outputs.PROCESS2_FESTO_BYTE8" Type="Digital" BitOperated="true" Bit="4" DataType="byte"/>
- <Output Name="c_RES4_AN_BYPASS" Address="Task 2.Outputs.PROCESS2_FESTO_BYTE9" Type="Digital" Invert="true" BitOperated="true" Bit="1" DataType="byte"/>
- <Output Name="c_RES4_CA_PUMP_ENABLE" Address="Task 2.Outputs.RESERVOIR2and4_DO_8CHANNEL_EL2008_N760_2" Type="Digital" DataType="bool"/>
- <Output Name="c_RES4_AN_SAMPLE_FLOW_ENABLE" Address="Task 2.Outputs.PROCESS2_FESTO_BYTE12" Type="Digital" BitOperated="true" Bit="6" DataType="byte"/>
- <Output Name="c_RES4_CA_SAMPLE_FLOW_ENABLE" Address="Task 2.Outputs.PROCESS2_FESTO_BYTE12" Type="Digital" BitOperated="true" Bit="7" DataType="byte"/>
- <!--Metal1-->
- <Output Name="c_CELL1_AN_B_PIN_ENABLE" Address="Task 2.Outputs.PROCESS1_FESTO_BYTE10" Type="Digital" BitOperated="true" Bit="6" DataType="byte"/>
- <Output Name="c_CELL1_AN_A_PIN_ENABLE" Address="Task 2.Outputs.PROCESS1_FESTO_BYTE10" Type="Digital" BitOperated="true" Bit="7" DataType="byte"/>
- <Output Name="c_CELL1_AN_B_POUT_ENABLE" Address="Task 2.Outputs.PROCESS1_FESTO_BYTE11" Type="Digital" BitOperated="true" Bit="4" DataType="byte"/>
- <Output Name="c_CELL1_AN_A_POUT_ENABLE" Address="Task 2.Outputs.PROCESS1_FESTO_BYTE11" Type="Digital" BitOperated="true" Bit="5" DataType="byte"/>
- <Output Name="c_CELL1_WS_CLAMP_ON" Address="Task 2.Outputs.PROCESS1_FESTO_BYTE4" Type="Digital" BitOperated="true" Bit="4" DataType="byte"/>
- <Output Name="c_CELL1_WS_CLAMP_OFF" Address="Task 2.Outputs.PROCESS1_FESTO_BYTE4" Type="Digital" BitOperated="true" Bit="5" DataType="byte"/>
- <Output Name="c_CELL1_FLOW" Address="Task 2.Outputs.PROCESS1_FESTO_BYTE7" Type="Digital" BitOperated="true" Bit="4" DataType="byte"/>
- <!--Metal2-->
- <Output Name="c_CELL2_AN_B_PIN_ENABLE" Address="Task 2.Outputs.PROCESS1_FESTO_BYTE11" Type="Digital" BitOperated="true" Bit="0" DataType="byte"/>
- <Output Name="c_CELL2_AN_A_PIN_ENABLE" Address="Task 2.Outputs.PROCESS1_FESTO_BYTE11" Type="Digital" BitOperated="true" Bit="1" DataType="byte"/>
- <Output Name="c_CELL2_AN_B_POUT_ENABLE" Address="Task 2.Outputs.PROCESS1_FESTO_BYTE11" Type="Digital" BitOperated="true" Bit="6" DataType="byte"/>
- <Output Name="c_CELL2_AN_A_POUT_ENABLE" Address="Task 2.Outputs.PROCESS1_FESTO_BYTE11" Type="Digital" BitOperated="true" Bit="7" DataType="byte"/>
- <Output Name="c_CELL2_WS_CLAMP_ON" Address="Task 2.Outputs.PROCESS1_FESTO_BYTE4" Type="Digital" BitOperated="true" Bit="6" DataType="byte"/>
- <Output Name="c_CELL2_WS_CLAMP_OFF" Address="Task 2.Outputs.PROCESS1_FESTO_BYTE4" Type="Digital" BitOperated="true" Bit="7" DataType="byte"/>
- <Output Name="c_CELL2_FLOW" Address="Task 2.Outputs.PROCESS1_FESTO_BYTE7" Type="Digital" BitOperated="true" Bit="5" DataType="byte"/>
- <!--Metal3-->
- <Output Name="c_CELL3_AN_B_PIN_ENABLE" Address="Task 2.Outputs.PROCESS1_FESTO_BYTE11" Type="Digital" BitOperated="true" Bit="2" DataType="byte"/>
- <Output Name="c_CELL3_AN_A_PIN_ENABLE" Address="Task 2.Outputs.PROCESS1_FESTO_BYTE11" Type="Digital" BitOperated="true" Bit="3" DataType="byte"/>
- <Output Name="c_CELL3_AN_B_POUT_ENABLE" Address="Task 2.Outputs.PROCESS1_FESTO_BYTE12" Type="Digital" BitOperated="true" Bit="0" DataType="byte"/>
- <Output Name="c_CELL3_AN_A_POUT_ENABLE" Address="Task 2.Outputs.PROCESS1_FESTO_BYTE12" Type="Digital" BitOperated="true" Bit="1" DataType="byte"/>
- <Output Name="c_CELL3_WS_CLAMP_ON" Address="Task 2.Outputs.PROCESS1_FESTO_BYTE5" Type="Digital" BitOperated="true" Bit="0" DataType="byte"/>
- <Output Name="c_CELL3_WS_CLAMP_OFF" Address="Task 2.Outputs.PROCESS1_FESTO_BYTE5" Type="Digital" BitOperated="true" Bit="1" DataType="byte"/>
- <Output Name="c_CELL3_FLOW" Address="Task 2.Outputs.PROCESS1_FESTO_BYTE7" Type="Digital" BitOperated="true" Bit="6" DataType="byte"/>
- <!--Metal4-->
- <Output Name="c_CELL4_AN_B_PIN_ENABLE" Address="Task 2.Outputs.PROCESS1_FESTO_BYTE15" Type="Digital" BitOperated="true" Bit="2" DataType="byte"/>
- <Output Name="c_CELL4_AN_A_PIN_ENABLE" Address="Task 2.Outputs.PROCESS1_FESTO_BYTE15" Type="Digital" BitOperated="true" Bit="3" DataType="byte"/>
- <Output Name="c_CELL4_AN_B_POUT_ENABLE" Address="Task 2.Outputs.PROCESS1_FESTO_BYTE13" Type="Digital" BitOperated="true" Bit="0" DataType="byte"/>
- <Output Name="c_CELL4_AN_A_POUT_ENABLE" Address="Task 2.Outputs.PROCESS1_FESTO_BYTE13" Type="Digital" BitOperated="true" Bit="1" DataType="byte"/>
- <Output Name="c_CELL4_WS_CLAMP_ON" Address="Task 2.Outputs.PROCESS1_FESTO_BYTE5" Type="Digital" BitOperated="true" Bit="4" DataType="byte"/>
- <Output Name="c_CELL4_WS_CLAMP_OFF" Address="Task 2.Outputs.PROCESS1_FESTO_BYTE5" Type="Digital" BitOperated="true" Bit="5" DataType="byte"/>
- <Output Name="c_CELL4_FLOW" Address="Task 2.Outputs.PROCESS1_FESTO_BYTE8" Type="Digital" BitOperated="true" Bit="0" DataType="byte"/>
- <!--Metal5-->
- <Output Name="c_CELL5_AN_B_PIN_ENABLE" Address="Task 2.Outputs.PROCESS1_FESTO_BYTE15" Type="Digital" BitOperated="true" Bit="4" DataType="byte"/>
- <Output Name="c_CELL5_AN_A_PIN_ENABLE" Address="Task 2.Outputs.PROCESS1_FESTO_BYTE15" Type="Digital" BitOperated="true" Bit="5" DataType="byte"/>
- <Output Name="c_CELL5_AN_B_POUT_ENABLE" Address="Task 2.Outputs.PROCESS1_FESTO_BYTE13" Type="Digital" BitOperated="true" Bit="2" DataType="byte"/>
- <Output Name="c_CELL5_AN_A_POUT_ENABLE" Address="Task 2.Outputs.PROCESS1_FESTO_BYTE13" Type="Digital" BitOperated="true" Bit="3" DataType="byte"/>
- <Output Name="c_CELL5_WS_CLAMP_ON" Address="Task 2.Outputs.PROCESS1_FESTO_BYTE5" Type="Digital" BitOperated="true" Bit="6" DataType="byte"/>
- <Output Name="c_CELL5_WS_CLAMP_OFF" Address="Task 2.Outputs.PROCESS1_FESTO_BYTE5" Type="Digital" BitOperated="true" Bit="7" DataType="byte"/>
- <Output Name="c_CELL5_FLOW" Address="Task 2.Outputs.PROCESS1_FESTO_BYTE8" Type="Digital" BitOperated="true" Bit="1" DataType="byte"/>
- <!--Metal6-->
- <Output Name="c_CELL6_AN_B_PIN_ENABLE" Address="Task 2.Outputs.PROCESS1_FESTO_BYTE15" Type="Digital" BitOperated="true" Bit="6" DataType="byte"/>
- <Output Name="c_CELL6_AN_A_PIN_ENABLE" Address="Task 2.Outputs.PROCESS1_FESTO_BYTE15" Type="Digital" BitOperated="true" Bit="7" DataType="byte"/>
- <Output Name="c_CELL6_AN_B_POUT_ENABLE" Address="Task 2.Outputs.PROCESS1_FESTO_BYTE13" Type="Digital" BitOperated="true" Bit="4" DataType="byte"/>
- <Output Name="c_CELL6_AN_A_POUT_ENABLE" Address="Task 2.Outputs.PROCESS1_FESTO_BYTE13" Type="Digital" BitOperated="true" Bit="5" DataType="byte"/>
- <Output Name="c_CELL6_WS_CLAMP_ON" Address="Task 2.Outputs.PROCESS1_FESTO_BYTE6" Type="Digital" BitOperated="true" Bit="0" DataType="byte"/>
- <Output Name="c_CELL6_WS_CLAMP_OFF" Address="Task 2.Outputs.PROCESS1_FESTO_BYTE6" Type="Digital" BitOperated="true" Bit="1" DataType="byte"/>
- <Output Name="c_CELL6_FLOW" Address="Task 2.Outputs.PROCESS1_FESTO_BYTE8" Type="Digital" BitOperated="true" Bit="2" DataType="byte"/>
- <!--METAL7-->
- <Output Name="c_METAL7_PUMP_ON" Address="Task 2.Outputs.MAIN_IO_RELAY_4CHANNEL_EL2624_N26_1" Type="Digital" DataType="bool"/>
- <Output Name="c_METAL7_CIRCULATION" Address="Task 2.Outputs.PROCESS1_FESTO_BYTE16" Type="Digital" BitOperated="true" Bit="1" DataType="byte"/>
- <Output Name="c_METAL7_WS_CLAMP" Address="Task 2.Outputs.PROCESS2_FESTO_BYTE2" Type="Digital" BitOperated="true" Bit="2" DataType="byte"/>
- <!--METAL8-->
- <Output Name="c_METAL8_PUMP_ON" Address="Task 2.Outputs.MAIN_IO_RELAY_4CHANNEL_EL2624_N26_2" Type="Digital" DataType="bool"/>
- <Output Name="c_METAL8_CIRCULATION" Address="Task 2.Outputs.PROCESS1_FESTO_BYTE16" Type="Digital" BitOperated="true" Bit="2" DataType="byte"/>
- <Output Name="c_METAL8_WS_CLAMP" Address="Task 2.Outputs.PROCESS2_FESTO_BYTE2" Type="Digital" BitOperated="true" Bit="4" DataType="byte"/>
- <!--Metal9-->
- <Output Name="c_CELL9_AN_B_PIN_ENABLE" Address="Task 2.Outputs.PROCESS2_FESTO_BYTE9" Type="Digital" BitOperated="true" Bit="4" DataType="byte"/>
- <Output Name="c_CELL9_AN_A_PIN_ENABLE" Address="Task 2.Outputs.PROCESS2_FESTO_BYTE9" Type="Digital" BitOperated="true" Bit="5" DataType="byte"/>
- <Output Name="c_CELL9_AN_B_POUT_ENABLE" Address="Task 2.Outputs.PROCESS2_FESTO_BYTE12" Type="Digital" BitOperated="true" Bit="2" DataType="byte"/>
- <Output Name="c_CELL9_AN_A_POUT_ENABLE" Address="Task 2.Outputs.PROCESS2_FESTO_BYTE12" Type="Digital" BitOperated="true" Bit="3" DataType="byte"/>
- <Output Name="c_CELL9_WS_CLAMP_ON" Address="Task 2.Outputs.PROCESS2_FESTO_BYTE4" Type="Digital" BitOperated="true" Bit="6" DataType="byte"/>
- <Output Name="c_CELL9_WS_CLAMP_OFF" Address="Task 2.Outputs.PROCESS2_FESTO_BYTE4" Type="Digital" BitOperated="true" Bit="7" DataType="byte"/>
- <Output Name="c_CELL9_FLOW" Address="Task 2.Outputs.PROCESS2_FESTO_BYTE7" Type="Digital" BitOperated="true" Bit="5" DataType="byte"/>
- <!--Metal10-->
- <Output Name="c_CELL10_AN_B_PIN_ENABLE" Address="Task 2.Outputs.PROCESS2_FESTO_BYTE9" Type="Digital" BitOperated="true" Bit="6" DataType="byte"/>
- <Output Name="c_CELL10_AN_A_PIN_ENABLE" Address="Task 2.Outputs.PROCESS2_FESTO_BYTE9" Type="Digital" BitOperated="true" Bit="7" DataType="byte"/>
- <Output Name="c_CELL10_AN_B_POUT_ENABLE" Address="Task 2.Outputs.PROCESS2_FESTO_BYTE12" Type="Digital" BitOperated="true" Bit="4" DataType="byte"/>
- <Output Name="c_CELL10_AN_A_POUT_ENABLE" Address="Task 2.Outputs.PROCESS2_FESTO_BYTE12" Type="Digital" BitOperated="true" Bit="5" DataType="byte"/>
- <Output Name="c_CELL10_WS_CLAMP_ON" Address="Task 2.Outputs.PROCESS2_FESTO_BYTE5" Type="Digital" BitOperated="true" Bit="0" DataType="byte"/>
- <Output Name="c_CELL10_WS_CLAMP_OFF" Address="Task 2.Outputs.PROCESS2_FESTO_BYTE5" Type="Digital" BitOperated="true" Bit="1" DataType="byte"/>
- <Output Name="c_CELL10_FLOW" Address="Task 2.Outputs.PROCESS2_FESTO_BYTE7" Type="Digital" BitOperated="true" Bit="6" DataType="byte"/>
- <!--Metal11-->
- <Output Name="c_CELL11_AN_B_PIN_ENABLE" Address="Task 2.Outputs.PROCESS2_FESTO_BYTE10" Type="Digital" BitOperated="true" Bit="0" DataType="byte"/>
- <Output Name="c_CELL11_AN_A_PIN_ENABLE" Address="Task 2.Outputs.PROCESS2_FESTO_BYTE10" Type="Digital" BitOperated="true" Bit="1" DataType="byte"/>
- <Output Name="c_CELL11_AN_B_POUT_ENABLE" Address="Task 2.Outputs.PROCESS2_FESTO_BYTE13" Type="Digital" BitOperated="true" Bit="6" DataType="byte"/>
- <Output Name="c_CELL11_AN_A_POUT_ENABLE" Address="Task 2.Outputs.PROCESS2_FESTO_BYTE13" Type="Digital" BitOperated="true" Bit="7" DataType="byte"/>
- <Output Name="c_CELL11_WS_CLAMP_ON" Address="Task 2.Outputs.PROCESS2_FESTO_BYTE5" Type="Digital" BitOperated="true" Bit="2" DataType="byte"/>
- <Output Name="c_CELL11_WS_CLAMP_OFF" Address="Task 2.Outputs.PROCESS2_FESTO_BYTE5" Type="Digital" BitOperated="true" Bit="3" DataType="byte"/>
- <Output Name="c_CELL11_FLOW" Address="Task 2.Outputs.PROCESS2_FESTO_BYTE7" Type="Digital" BitOperated="true" Bit="7" DataType="byte"/>
- <!--Metal12-->
- <Output Name="c_CELL12_AN_B_PIN_ENABLE" Address="Task 2.Outputs.PROCESS2_FESTO_BYTE10" Type="Digital" BitOperated="true" Bit="2" DataType="byte"/>
- <Output Name="c_CELL12_AN_A_PIN_ENABLE" Address="Task 2.Outputs.PROCESS2_FESTO_BYTE10" Type="Digital" BitOperated="true" Bit="3" DataType="byte"/>
- <Output Name="c_CELL12_AN_B_POUT_ENABLE" Address="Task 2.Outputs.PROCESS2_FESTO_BYTE14" Type="Digital" BitOperated="true" Bit="0" DataType="byte"/>
- <Output Name="c_CELL12_AN_A_POUT_ENABLE" Address="Task 2.Outputs.PROCESS2_FESTO_BYTE14" Type="Digital" BitOperated="true" Bit="1" DataType="byte"/>
- <Output Name="c_CELL12_WS_CLAMP_ON" Address="Task 2.Outputs.PROCESS2_FESTO_BYTE5" Type="Digital" BitOperated="true" Bit="4" DataType="byte"/>
- <Output Name="c_CELL12_WS_CLAMP_OFF" Address="Task 2.Outputs.PROCESS2_FESTO_BYTE5" Type="Digital" BitOperated="true" Bit="5" DataType="byte"/>
- <Output Name="c_CELL12_FLOW" Address="Task 2.Outputs.PROCESS2_FESTO_BYTE8" Type="Digital" BitOperated="true" Bit="0" DataType="byte"/>
- <!--SRD1-->
- <Output Name="c_SRD1_Water_Above_Wafer" Address="Task 2.Outputs.SRD_OBC_PneumaticByte0" Type="Digital" BitOperated="true" Bit="0" DataType="byte"/>
- <Output Name="c_SRD1_Water_Below_Wafer" Address="Task 2.Outputs.SRD_OBC_PneumaticByte0" Type="Digital" BitOperated="true" Bit="1" DataType="byte"/>
- <Output Name="c_SRD1_CHUCK_VACUUM" Address="Task 2.Outputs.SRD_OBC_PneumaticByte1" Type="Digital" BitOperated="true" Bit="0" DataType="byte"/>
- <Output Name="c_SRD1_Exhaust_Fan_On" Address="Task 2.Outputs.SRD_DO_16CHANNEL_EL2809_N305_6" Type="Digital" DataType="bool"/>
- <Output Name="c_SRD1_Shutter_Close" Address="Task 2.Outputs.SRD_OBC_PneumaticByte0" Type="Digital" BitOperated="true" Bit="2" DataType="byte"/>
- <!--SRD2-->
- <Output Name="c_SRD2_Shutter_Close" Address="Task 2.Outputs.SRD_OBC_PneumaticByte0" Type="Digital" BitOperated="true" Bit="6" DataType="byte"/>
- <Output Name="c_SRD2_Water_Above_Wafer" Address="Task 2.Outputs.SRD_OBC_PneumaticByte0" Type="Digital" BitOperated="true" Bit="4" DataType="byte"/>
- <Output Name="c_SRD2_Water_Below_Wafer" Address="Task 2.Outputs.SRD_OBC_PneumaticByte0" Type="Digital" BitOperated="true" Bit="5" DataType="byte"/>
- <Output Name="c_SRD2_CHUCK_VACUUM" Address="Task 2.Outputs.SRD_OBC_PneumaticByte1" Type="Digital" BitOperated="true" Bit="1" DataType="byte"/>
- <Output Name="c_SRD2_Exhaust_Fan_On" Address="Task 2.Outputs.SRD_DO_16CHANNEL_EL2809_N305_14" Type="Digital" DataType="bool"/>
- <!--////////////////////////////////////////////////// ALL OUTPUTS END //////////////////////////////////////////////////-->
- <!--////////////////////////////////////////////////// ALL COUNTERS BEGIN //////////////////////////////////////////////////-->Done
- <Counter Name="r_CELL1_AN_A_FLOW" Address="Task 2.Inputs.RESERVOIR1_CT_2CHANNEL_EL1512_N511_1_Counter_value" DataType="udint" Mode="1" Period="2000" Scaling="0=0,1=83">
- <Output Address="Task 2.Outputs.RESERVOIR1_CT_2CHANNEL_EL1512_N511_1_Set_counter" Type="Start" DataType="bool"/>
- <Output Address="Task 2.Outputs.RESERVOIR1_CT_2CHANNEL_EL1512_N511_1_Inhibit_counter" Type="Stop" DataType="bool"/>
- <Output Address="Task 2.Outputs.RESERVOIR1_CT_2CHANNEL_EL1512_N511_1_Set_counter_value" Type="Reset" DataType="udint"/>
- </Counter>
- <Counter Name="r_CELL1_AN_B_FLOW" Address="Task 2.Inputs.RESERVOIR1_CT_2CHANNEL_EL1512_N511_2_Counter_value" DataType="udint" Mode="1" Period="2000" Scaling="0=0,1=83">
- <Output Address="Task 2.Outputs.RESERVOIR1_CT_2CHANNEL_EL1512_N511_2_Set_counter" Type="Start" DataType="bool"/>
- <Output Address="Task 2.Outputs.RESERVOIR1_CT_2CHANNEL_EL1512_N511_2_Inhibit_counter" Type="Stop" DataType="bool"/>
- <Output Address="Task 2.Outputs.RESERVOIR1_CT_2CHANNEL_EL1512_N511_2_Set_counter_value" Type="Reset" DataType="udint"/>
- </Counter>
- <Counter Name="r_CELL2_AN_A_FLOW" Address="Task 2.Inputs.RESERVOIR1_CT_2CHANNEL_EL1512_N512_1_Counter_value" DataType="udint" Mode="1" Period="2000" Scaling="0=0,1=83">
- <Output Address="Task 2.Outputs.RESERVOIR1_CT_2CHANNEL_EL1512_N512_1_Set_counter" Type="Start" DataType="bool"/>
- <Output Address="Task 2.Outputs.RESERVOIR1_CT_2CHANNEL_EL1512_N512_1_Inhibit_counter" Type="Stop" DataType="bool"/>
- <Output Address="Task 2.Outputs.RESERVOIR1_CT_2CHANNEL_EL1512_N512_1_Set_counter_value" Type="Reset" DataType="udint"/>
- </Counter>
- <Counter Name="r_CELL2_AN_B_FLOW" Address="Task 2.Inputs.RESERVOIR1_CT_2CHANNEL_EL1512_N512_2_Counter_value" DataType="udint" Mode="1" Period="2000" Scaling="0=0,1=83">
- <Output Address="Task 2.Outputs.RESERVOIR1_CT_2CHANNEL_EL1512_N512_2_Set_counter" Type="Start" DataType="bool"/>
- <Output Address="Task 2.Outputs.RESERVOIR1_CT_2CHANNEL_EL1512_N512_2_Inhibit_counter" Type="Stop" DataType="bool"/>
- <Output Address="Task 2.Outputs.RESERVOIR1_CT_2CHANNEL_EL1512_N512_2_Set_counter_value" Type="Reset" DataType="udint"/>
- </Counter>
- <Counter Name="r_CELL3_AN_A_FLOW" Address="Task 2.Inputs.RESERVOIR1_CT_2CHANNEL_EL1512_N513_1_Counter_value" DataType="udint" Mode="1" Period="2000" Scaling="0=0,1=83">
- <Output Address="Task 2.Outputs.RESERVOIR1_CT_2CHANNEL_EL1512_N513_1_Set_counter" Type="Start" DataType="bool"/>
- <Output Address="Task 2.Outputs.RESERVOIR1_CT_2CHANNEL_EL1512_N513_1_Inhibit_counter" Type="Stop" DataType="bool"/>
- <Output Address="Task 2.Outputs.RESERVOIR1_CT_2CHANNEL_EL1512_N513_1_Set_counter_value" Type="Reset" DataType="udint"/>
- </Counter>
- <Counter Name="r_CELL3_AN_B_FLOW" Address="Task 2.Inputs.RESERVOIR1_CT_2CHANNEL_EL1512_N513_2_Counter_value" DataType="udint" Mode="1" Period="2000" Scaling="0=0,1=83">
- <Output Address="Task 2.Outputs.RESERVOIR4_CT_2CHANNEL_EL1512_N513_2_Set_counter" Type="Start" DataType="bool"/>
- <Output Address="Task 2.Outputs.RESERVOIR4_CT_2CHANNEL_EL1512_N513_2_Inhibit_counter" Type="Stop" DataType="bool"/>
- <Output Address="Task 2.Outputs.RESERVOIR4_CT_2CHANNEL_EL1512_N513_2_Set_counter_value" Type="Reset" DataType="udint"/>
- </Counter>
- <Counter Name="r_CELL4_AN_A_FLOW" Address="Task 2.Inputs.RESERVOIR2and4_CT_2CHANNEL_EL1512_N761_1_Counter_value" DataType="udint" Mode="1" Period="2000" Scaling="0=0,1=83">
- <Output Address="Task 2.Outputs.RESERVOIR2and4_CT_2CHANNEL_EL1512_N761_1_Set_counter" Type="Start" DataType="bool"/>
- <Output Address="Task 2.Outputs.RESERVOIR2and4_CT_2CHANNEL_EL1512_N761_1_Inhibit_counter" Type="Stop" DataType="bool"/>
- <Output Address="Task 2.Outputs.RESERVOIR2and4_CT_2CHANNEL_EL1512_N761_1_Set_counter_value" Type="Reset" DataType="udint"/>
- </Counter>
- <Counter Name="r_CELL4_AN_B_FLOW" Address="Task 2.Inputs.RESERVOIR2and4_CT_2CHANNEL_EL1512_N763_2_Counter_value" DataType="udint" Mode="1" Period="2000" Scaling="0=0,1=83">
- <Output Address="Task 2.Outputs.RESERVOIR2and4_CT_2CHANNEL_EL1512_N763_2_Set_counter" Type="Start" DataType="bool"/>
- <Output Address="Task 2.Outputs.RESERVOIR2and4_CT_2CHANNEL_EL1512_N763_2_Inhibit_counter" Type="Stop" DataType="bool"/>
- <Output Address="Task 2.Outputs.RESERVOIR2and4_CT_2CHANNEL_EL1512_N763_2_Set_counter_value" Type="Reset" DataType="udint"/>
- </Counter>
- <Counter Name="r_CELL5_AN_A_FLOW" Address="Task 2.Inputs.RESERVOIR2and4_CT_2CHANNEL_EL1512_N761_2_Counter_value" DataType="udint" Mode="1" Period="2000" Scaling="0=0,1=83">
- <Output Address="Task 2.Outputs.RESERVOIR2and4_CT_2CHANNEL_EL1512_N761_2_Set_counter" Type="Start" DataType="bool"/>
- <Output Address="Task 2.Outputs.RESERVOIR2and4_CT_2CHANNEL_EL1512_N761_2_Inhibit_counter" Type="Stop" DataType="bool"/>
- <Output Address="Task 2.Outputs.RESERVOIR2and4_CT_2CHANNEL_EL1512_N761_2_Set_counter_value" Type="Reset" DataType="udint"/>
- </Counter>
- <Counter Name="r_CELL5_AN_B_FLOW" Address="RESERVOIR2and4_CT_2CHANNEL_EL1512_N764_1_Counter_value" DataType="udint" Mode="1" Period="2000" Scaling="0=0,1=83">
- <Output Address="Task 2.Outputs.RESERVOIR2and4_CT_2CHANNEL_EL1512_N764_1_Set_counter" Type="Start" DataType="bool"/>
- <Output Address="Task 2.Outputs.RESERVOIR2and4_CT_2CHANNEL_EL1512_N764_1_Inhibit_counter" Type="Stop" DataType="bool"/>
- <Output Address="Task 2.Outputs.RESERVOIR2and4_CT_2CHANNEL_EL1512_N764_1_Set_counter_value" Type="Reset" DataType="udint"/>
- </Counter>
- <Counter Name="r_CELL6_AN_A_FLOW" Address="Task 2.Inputs.RESERVOIR2and4_CT_2CHANNEL_EL1512_N762_1_Counter_value" DataType="udint" Mode="1" Period="2000" Scaling="0=0,1=83">
- <Output Address="Task 2.Outputs.RESERVOIR2and4_CT_2CHANNEL_EL1512_N762_1_Set_counter" Type="Start" DataType="bool"/>
- <Output Address="Task 2.Outputs.RESERVOIR2and4_CT_2CHANNEL_EL1512_N762_1_Inhibit_counter" Type="Stop" DataType="bool"/>
- <Output Address="Task 2.Outputs.RESERVOIR2and4_CT_2CHANNEL_EL1512_N762_1_Set_counter_value" Type="Reset" DataType="udint"/>
- </Counter>
- <Counter Name="r_CELL6_AN_B_FLOW" Address="Task 2.Inputs.RESERVOIR2and4_CT_2CHANNEL_EL1512_N764_2_Counter_value" DataType="udint" Mode="1" Period="2000" Scaling="0=0,1=83">
- <Output Address="Task 2.Outputs.RESERVOIR2and4_CT_2CHANNEL_EL1512_N764_2_Set_counter" Type="Start" DataType="bool"/>
- <Output Address="Task 2.Outputs.RESERVOIR2and4_CT_2CHANNEL_EL1512_N764_2_Inhibit_counter" Type="Stop" DataType="bool"/>
- <Output Address="Task 2.Outputs.RESERVOIR2and4_CT_2CHANNEL_EL1512_N764_2_Set_counter_value" Type="Reset" DataType="udint"/>
- </Counter>
- <Counter Name="r_CELL9_AN_A_FLOW" Address="Task 2.Inputs.RESERVOIR2and4_CT_2CHANNEL_EL1512_N766_1_Counter_value" DataType="udint" Mode="1" Period="2000" Scaling="0=0,1=83">
- <Output Address="Task 2.Outputs.RESERVOIR2and4_CT_2CHANNEL_EL1512_N766_1_Set_counter" Type="Start" DataType="bool"/>
- <Output Address="Task 2.Outputs.RESERVOIR2and4_CT_2CHANNEL_EL1512_N766_1_Inhibit_counter" Type="Stop" DataType="bool"/>
- <Output Address="Task 2.Outputs.RESERVOIR2and4_CT_2CHANNEL_EL1512_N766_1_Set_counter_value" Type="Reset" DataType="udint"/>
- </Counter>
- <Counter Name="r_CELL9_AN_B_FLOW" Address="Task 2.Inputs.RESERVOIR2and4_CT_2CHANNEL_EL1512_N768_2_Counter_value" DataType="udint" Mode="1" Period="2000" Scaling="0=0,1=83">
- <Output Address="Task 2.Outputs.RESERVOIR2and4_CT_2CHANNEL_EL1512_N768_2_Set_counter" Type="Start" DataType="bool"/>
- <Output Address="Task 2.Outputs.RESERVOIR2and4_CT_2CHANNEL_EL1512_N768_2_Inhibit_counter" Type="Stop" DataType="bool"/>
- <Output Address="Task 2.Outputs.RESERVOIR2and4_CT_2CHANNEL_EL1512_N768_2_Set_counter_value" Type="Reset" DataType="udint"/>
- </Counter>
- <Counter Name="r_CELL10_AN_A_FLOW" Address="Task 2.Inputs.RESERVOIR2and4_CT_2CHANNEL_EL1512_N766_2_Counter_value" DataType="udint" Mode="1" Period="2000" Scaling="0=0,1=83">
- <Output Address="Task 2.Outputs.RESERVOIR2and4_CT_2CHANNEL_EL1512_N766_2_Set_counter" Type="Start" DataType="bool"/>
- <Output Address="Task 2.Outputs.RESERVOIR2and4_CT_2CHANNEL_EL1512_N766_2_Inhibit_counter" Type="Stop" DataType="bool"/>
- <Output Address="Task 2.Outputs.RESERVOIR2and4_CT_2CHANNEL_EL1512_N766_2_Set_counter_value" Type="Reset" DataType="udint"/>
- </Counter>
- <Counter Name="r_CELL10_AN_B_FLOW" Address="Task 2.Inputs.RESERVOIR2and4_CT_2CHANNEL_EL1512_N769_1_Counter_value" DataType="udint" Mode="1" Period="2000" Scaling="0=0,1=83">
- <Output Address="Task 2.Outputs.RESERVOIR2and4_CT_2CHANNEL_EL1512_N769_1_Set_counter" Type="Start" DataType="bool"/>
- <Output Address="Task 2.Outputs.RESERVOIR2and4_CT_2CHANNEL_EL1512_N769_1_Inhibit_counter" Type="Stop" DataType="bool"/>
- <Output Address="Task 2.Outputs.RESERVOIR2and4_CT_2CHANNEL_EL1512_N769_1_Set_counter_value" Type="Reset" DataType="udint"/>
- </Counter>
- <Counter Name="r_CELL11_AN_A_FLOW" Address="Task 2.Inputs.RESERVOIR2and4_CT_2CHANNEL_EL1512_N769_2_Counter_value" DataType="udint" Mode="1" Period="2000" Scaling="0=0,1=83">
- <Output Address="Task 2.Outputs.RESERVOIR2and4_CT_2CHANNEL_EL1512_N769_2_Set_counter" Type="Start" DataType="bool"/>
- <Output Address="Task 2.Outputs.RESERVOIR2and4_CT_2CHANNEL_EL1512_N769_2_Inhibit_counter" Type="Stop" DataType="bool"/>
- <Output Address="Task 2.Outputs.RESERVOIR2and4_CT_2CHANNEL_EL1512_N769_2_Set_counter_value" Type="Reset" DataType="udint"/>
- </Counter>
- <Counter Name="r_CELL11_AN_B_FLOW" Address="Task 2.Inputs.RESERVOIR2and4_CT_2CHANNEL_EL1512_N767_1_Counter_value" DataType="udint" Mode="1" Period="2000" Scaling="0=0,1=83">
- <Output Address="Task 2.Outputs.RESERVOIR2and4_CT_2CHANNEL_EL1512_N767_1_Set_counter" Type="Start" DataType="bool"/>
- <Output Address="Task 2.Outputs.RESERVOIR2and4_CT_2CHANNEL_EL1512_N767_1_Inhibit_counter" Type="Stop" DataType="bool"/>
- <Output Address="Task 2.Outputs.RESERVOIR2and4_CT_2CHANNEL_EL1512_N767_1_Set_counter_value" Type="Reset" DataType="udint"/>
- </Counter>
- <Counter Name="r_CELL12_AN_A_FLOW" Address="Task 2.Inputs.RESERVOIR2and4_CT_2CHANNEL_EL1512_N767_2_Counter_value" DataType="udint" Mode="1" Period="2000" Scaling="0=0,1=83">
- <Output Address="Task 2.Outputs.RESERVOIR2and4_CT_2CHANNEL_EL1512_N767_2_Set_counter" Type="Start" DataType="bool"/>
- <Output Address="Task 2.Outputs.RESERVOIR2and4_CT_2CHANNEL_EL1512_N767_2_Inhibit_counter" Type="Stop" DataType="bool"/>
- <Output Address="Task 2.Outputs.RESERVOIR2and4_CT_2CHANNEL_EL1512_N767_2_Set_counter_value" Type="Reset" DataType="udint"/>
- </Counter>
- <Counter Name="r_CELL12_AN_B_FLOW" Address="Task 2.Inputs.RESERVOIR2and4_CT_2CHANNEL_EL1512_N770_1_Counter_value" DataType="udint" Mode="1" Period="2000" Scaling="0=0,1=83">
- <Output Address="Task 2.Outputs.RESERVOIR2and4_CT_2CHANNEL_EL1512_N770_1_Set_counter" Type="Start" DataType="bool"/>
- <Output Address="Task 2.Outputs.RESERVOIR2and4_CT_2CHANNEL_EL1512_N770_1_Inhibit_counter" Type="Stop" DataType="bool"/>
- <Output Address="Task 2.Outputs.RESERVOIR2and4_CT_2CHANNEL_EL1512_N770_1_Set_counter_value" Type="Reset" DataType="udint"/>
- </Counter>
- <Counter Name="r_RES1_AN_TRANSFER_FLOW" Address="Task 2.Inputs.RESERVOIR1_CT_2CHANNEL_EL1512_N510_1_Counter_value" DataType="udint" Mode="1" Period="2000" Scaling="0=0,1=83">
- <Output Address="Task 2.Outputs.RESERVOIR1_CT_2CHANNEL_EL1512_N510_1_Set_counter" Type="Start" DataType="bool"/>
- <Output Address="Task 2.Outputs.RESERVOIR1_CT_2CHANNEL_EL1512_N510_1_Inhibit_counter" Type="Stop" DataType="bool"/>
- <Output Address="Task 2.Outputs.RESERVOIR1_CT_2CHANNEL_EL1512_N510_1_Set_counter_value" Type="Reset" DataType="udint"/>
- </Counter>
- <Counter Name="r_RES3_AN_TRANSFER_FLOW" Address="Task 2.Inputs.RESERVOIR2and4_CT_2CHANNEL_EL1512_N771_1_Counter_value" DataType="udint" Mode="1" Period="2000" Scaling="0=0,1=300">
- <Output Address="Task 2.Outputs.RESERVOIR2and4_CT_2CHANNEL_EL1512_N771_1_Set_counter" Type="Start" DataType="bool"/>
- <Output Address="Task 2.Outputs.RESERVOIR2and4_CT_2CHANNEL_EL1512_N771_1_Inhibit_counter" Type="Stop" DataType="bool"/>
- <Output Address="Task 2.Outputs.RESERVOIR2and4_CT_2CHANNEL_EL1512_N771_1_Set_counter_value" Type="Reset" DataType="udint"/>
- </Counter>
- <Counter Name="r_RES4_AN_TRANSFER_FLOW" Address="Task 2.Inputs.RESERVOIR2and4_CT_2CHANNEL_EL1512_N771_2_Counter_value" DataType="udint" Mode="1" Period="2000" Scaling="0=0,1=300">
- <Output Address="Task 2.Outputs.RESERVOIR2and4_CT_2CHANNEL_EL1512_N771_2_Set_counter" Type="Start" DataType="bool"/>
- <Output Address="Task 2.Outputs.RESERVOIR2and4_CT_2CHANNEL_EL1512_N771_2_Inhibit_counter" Type="Stop" DataType="bool"/>
- <Output Address="Task 2.Outputs.RESERVOIR2and4_CT_2CHANNEL_EL1512_N771_2_Set_counter_value" Type="Reset" DataType="udint"/>
- </Counter>
- <!--////////////////////////////////////////////////// ALL COUNTERS END //////////////////////////////////////////////////-->
- <Axis Name="Transporter1.Gantry" MotorType="Yaskawa" COEAddress="192.168.0.14.4.1" COEPort="1082" DebugLogging="false">
- <Input Address="Task 2.Inputs.ProcessTransporterHorizontal_StatusWord" Type="StatusWord" DataType="uint"/>
- <Input Address="Task 2.Inputs.ProcessTransporterHorizontal_DigitalInputs" Type="DigitalInputs" DataType="udint"/>
- <Input Address="Task 2.Inputs.ProcessTransporterHorizontal_ActualMotorPosition" Type="MotorPosition" DataType="dint"/>
- <Input Address="Task 2.Inputs.ProcessTransporterHorizontal_FollowingErrorActualValue" Type="PositionError" DataType="dint"/>
- <Input Address="Task 2.Inputs.ProcessTransporterHorizontal_VelocityActualValue" Type="ActualVelocity" DataType="dint"/>
- <Input Address="Task 2.Inputs.ProcessTransporterHorizontal_TorqueActualValue" Type="ActualTorque" DataType="short"/>
- <Input Address="0x607d:01" Type="SoftwareLimitMinus" DataType="dint"/>
- <Input Address="0x607d:02" Type="SoftwareLimitPlus" DataType="dint"/>
- <Input Address="0x6098:00" Type="HomingMethod" DataType="byte"/>
- <Input Address="0x607c:00" Type="HomeOffset" DataType="dint"/>
- <Input Address="0x6099:01" Type="HomingVelocity" DataType="dint"/>
- <Input Address="0x6099:02" Type="HomingVelocitySlow" DataType="dint"/>
- <Input Address="0x609a:00" Type="HomingAccel" DataType="dint"/>
- <Input Address="0x2403:00" Type="NegativeTorqueLimit" DataType="uint"/>
- <Input Address="0x2402:00" Type="PositiveTorqueLimit" DataType="uint"/>
- <Input Address="0x6085:00" Type="EStopDecel" DataType="udint"/>
- <Input Address="0x2406:00" Type="EStopTorque" DataType="uint"/>
- <Input Address="0x607F:00" Type="VelocityLimit" DataType="udint"/>
- <Input Address="0x2522:00" Type="PositionWindow" DataType="udint"/>
- <Input Address="0x2520:00" Type="FollowingErrorWindow" DataType="udint"/>
- <Input Address="0x603F:00" Type="ErrorCode" DataType="uint"/>
- <Output Address="Task 2.Outputs.ProcessTransporterHorizontal_ControlWord" Type="ControlWord" DataType="uint"/>
- <Output Address="Task 2.Outputs.ProcessTransporterHorizontal_TargetPosition" Type="TargetPosition" DataType="dint"/>
- <Output Address="Task 2.Outputs.ProcessTransporterHorizontal_ModeOfOperation" Type="ModeOfOperation" DataType="byte"/>
- <Output Address="Task 2.Outputs.ProcessTransporterHorizontal_ProfileVelocity" Type="ProfileVelocity" DataType="dint"/>
- <Output Address="Task 2.Outputs.ProcessTransporterHorizontal_ProfileAccel" Type="ProfileAccel" DataType="dint"/>
- <Output Address="Task 2.Outputs.ProcessTransporterHorizontal_ProfileDecel" Type="ProfileDecel" DataType="dint"/>
- <Output Address="0x607d:01" Type="SoftwareLimitMinus" DataType="dint"/>
- <Output Address="0x607d:02" Type="SoftwareLimitPlus" DataType="dint"/>
- <Output Address="0x6098:00" Type="HomingMethod" DataType="byte"/>
- <Output Address="0x607c:00" Type="HomeOffset" DataType="dint"/>
- <Output Address="0x6099:01" Type="HomingVelocity" DataType="dint"/>
- <Output Address="0x6099:02" Type="HomingVelocitySlow" DataType="dint"/>
- <Output Address="0x609a:00" Type="HomingAccel" DataType="dint"/>
- <Output Address="0x2403:00" Type="NegativeTorqueLimit" DataType="uint"/>
- <Output Address="0x2402:00" Type="PositiveTorqueLimit" DataType="uint"/>
- <!-- X axis: 46258 counts/mm -->
- <MotorType>Servo</MotorType>
- <MotorDriveDirection>0</MotorDriveDirection>
- <EncoderFeedbackDirectionMValue>0</EncoderFeedbackDirectionMValue>
- <EncoderFeedbackDirectionNValue>0</EncoderFeedbackDirectionNValue>
- <ReverseLimitSwitchPolarity>0</ReverseLimitSwitchPolarity>
- <ForwardLimitSwitchPolarity>0</ForwardLimitSwitchPolarity>
- <HomeSwitchPolarity>0</HomeSwitchPolarity>
- <!-- HomingMethod 24 = Home Switch Positive Direction -->
- <HomingMethod>24</HomingMethod>
- <HomeConfig>0</HomeConfig>
- <!--HomingOffset>-105488760</HomingOffset-->
- <!--HomingOffset>-224416000</HomingOffset-->
- <!-- 191649794 = 4143mm -->
- <!--HomingOffset>-191649794</HomingOffset-->
- <!-- 191696052 = 4144mm -->
- <!--HomingOffset>-191696052</HomingOffset-->
- <!-- 191726121 = 4144.65mm -->
- <!-- -188846516.88 = -4082.4mm -->
- <HomingOffset>-188846517</HomingOffset>
- <!-- HomingVelocity same as HomeSpeedHomeSwitch -->
- <!-- HomingSpeedHomeSwitch 57 rev/min = 0.9 rev/sec = 1000000 counts/sec -->
- <HomingSpeedHomeSwitch>3000000</HomingSpeedHomeSwitch>
- <HomingSpeedEncoderIndex>0</HomingSpeedEncoderIndex>
- <!-- HomingAccelDecel 0.05 rev/min/min = 0.0009 rev/sec/sec = 1000 counts/sec/sec -->
- <HomingAccelDecel>10000000</HomingAccelDecel>
- <HomingTimeOut>300000</HomingTimeOut>
- <ProportionalGain>0</ProportionalGain>
- <IntegralGain>0</IntegralGain>
- <DerivativeGain>0</DerivativeGain>
- <IntegralLimit>0</IntegralLimit>
- <!--ErrorLimit>0</ErrorLimit-->
- <ErrorLimit>2000</ErrorLimit>
- <VoltageOffset>0</VoltageOffset>
- <!-- -155945767 - -191726121 (HomingOffset) = 773.484 mm (~ Dryer3 / Cell23)-->
- <!--ReverseSoftwareLimit>-155945767</ReverseSoftwareLimit-->
- <!-- -178819944 - -191726121 (HomingOffset) = 279 mm (~ Buffer1 / Cell37)-->
- <ReverseSoftwareLimit>-178819944</ReverseSoftwareLimit>
- <!-- 1500000 - -191726121 (HomingOffset) = 4177 mm (~ Rinse1 / Cell1) -->
- <ForwardSoftwareLimit>1920000</ForwardSoftwareLimit>
- <!-- Speed 2975 rev/min = 49 rev/sec = 52000000 counts/sec -->
- <Speed>45000000</Speed>
- <!--Speed>30000000</Speed-->
- <!--Speed>52000000</Speed-->
- <!--Speed>26000000</Speed-->
- <!--Speed>6000000</Speed-->
- <!-- Acceleration/Deceleration 0.78 rev/min/min = 0.01 rev/sec/sec = 13800 counts/sec/sec -->
- <!--Acceleration>138000000</Acceleration-->
- <Acceleration>92000000</Acceleration>
- <!--Deceleration>138000000</Deceleration-->
- <Deceleration>92000000</Deceleration>
- <Jerk>0</Jerk>
- <FeedforwardVelocity>0</FeedforwardVelocity>
- <FeedforwardAcceleration>0</FeedforwardAcceleration>
- <OffOnError>0</OffOnError>
- <NegativeTorqueLimit>130</NegativeTorqueLimit>
- <PositiveTorqueLimit>130</PositiveTorqueLimit>
- </Axis>
- <Axis Name="Transporter1.Elevator" MotorType="Yaskawa" COEAddress="192.168.0.14.4.1" COEPort="1081" DebugLogging="false">
- <Input Address="Task 2.Inputs.ProcessTransporterVertical_StatusWord" Type="StatusWord" DataType="uint"/>
- <Input Address="Task 2.Inputs.ProcessTransporterVertical_DigitalInputs" Type="DigitalInputs" DataType="udint"/>
- <Input Address="Task 2.Inputs.ProcessTransporterVertical_ActualMotorPosition" Type="MotorPosition" DataType="dint"/>
- <Input Address="Task 2.Inputs.ProcessTransporterVertical_FollowingErrorActualValue" Type="PositionError" DataType="dint"/>
- <Input Address="Task 2.Inputs.ProcessTransporterVertical_VelocityActualValue" Type="ActualVelocity" DataType="dint"/>
- <Input Address="Task 2.Inputs.ProcessTransporterVertical_TorqueActualValue" Type="ActualTorque" DataType="short"/>
- <Input Address="0x607d:01" Type="SoftwareLimitMinus" DataType="dint"/>
- <Input Address="0x607d:02" Type="SoftwareLimitPlus" DataType="dint"/>
- <Input Address="0x6098:00" Type="HomingMethod" DataType="byte"/>
- <Input Address="0x607c:00" Type="HomeOffset" DataType="dint"/>
- <Input Address="0x6099:01" Type="HomingVelocity" DataType="dint"/>
- <Input Address="0x6099:02" Type="HomingVelocitySlow" DataType="dint"/>
- <Input Address="0x609a:00" Type="HomingAccel" DataType="dint"/>
- <Input Address="0x2403:00" Type="NegativeTorqueLimit" DataType="uint"/>
- <Input Address="0x2402:00" Type="PositiveTorqueLimit" DataType="uint"/>
- <Input Address="0x6085:00" Type="EStopDecel" DataType="udint"/>
- <Input Address="0x2406:00" Type="EStopTorque" DataType="uint"/>
- <Input Address="0x607F:00" Type="VelocityLimit" DataType="udint"/>
- <Input Address="0x2522:00" Type="PositionWindow" DataType="udint"/>
- <Input Address="0x2520:00" Type="FollowingErrorWindow" DataType="udint"/>
- <Input Address="0x603F:00" Type="ErrorCode" DataType="uint"/>
- <Output Address="Task 2.Outputs.ProcessTransporterVertical_ControlWord" Type="ControlWord" DataType="uint"/>
- <Output Address="Task 2.Outputs.ProcessTransporterVertical_TargetPosition" Type="TargetPosition" DataType="dint"/>
- <Output Address="Task 2.Outputs.ProcessTransporterVertical_ModeOfOperation" Type="ModeOfOperation" DataType="byte"/>
- <Output Address="Task 2.Outputs.ProcessTransporterVertical_ProfileVelocity" Type="ProfileVelocity" DataType="dint"/>
- <Output Address="Task 2.Outputs.ProcessTransporterVertical_ProfileAccel" Type="ProfileAccel" DataType="dint"/>
- <Output Address="Task 2.Outputs.ProcessTransporterVertical_ProfileDecel" Type="ProfileDecel" DataType="dint"/>
- <Output Address="0x607d:01" Type="SoftwareLimitMinus" DataType="dint"/>
- <Output Address="0x607d:02" Type="SoftwareLimitPlus" DataType="dint"/>
- <Output Address="0x6098:00" Type="HomingMethod" DataType="byte"/>
- <Output Address="0x607c:00" Type="HomeOffset" DataType="dint"/>
- <Output Address="0x6099:01" Type="HomingVelocity" DataType="dint"/>
- <Output Address="0x6099:02" Type="HomingVelocitySlow" DataType="dint"/>
- <Output Address="0x609a:00" Type="HomingAccel" DataType="dint"/>
- <Output Address="0x2403:00" Type="NegativeTorqueLimit" DataType="uint"/>
- <Output Address="0x2402:00" Type="PositiveTorqueLimit" DataType="uint"/>
- <!-- Z axis: 47784 counts/mm -->
- <MotorType>Servo</MotorType>
- <MotorDriveDirection>0</MotorDriveDirection>
- <EncoderFeedbackDirectionMValue>0</EncoderFeedbackDirectionMValue>
- <EncoderFeedbackDirectionNValue>0</EncoderFeedbackDirectionNValue>
- <ReverseLimitSwitchPolarity>0</ReverseLimitSwitchPolarity>
- <ForwardLimitSwitchPolarity>0</ForwardLimitSwitchPolarity>
- <HomeSwitchPolarity>0</HomeSwitchPolarity>
- <!-- HomingMethod 28 = Home Switch Negative Direction -->
- <HomingMethod>28</HomingMethod>
- <HomeConfig>0</HomeConfig>
- <!--<HomingOffset>-637000</HomingOffset>-->
- <!--HomingOffset>-518000</HomingOffset-->
- <HomingOffset>-398200</HomingOffset>
- <!-- HomingVelocity same as HomeSpeedHomeSwitch -->
- <!-- HomingSpeedHomeSwitch 57 rev/min = 0.9 rev/sec = 1000000 counts/sec -->
- <HomingSpeedHomeSwitch>1000000</HomingSpeedHomeSwitch>
- <!--HomingSpeedHomeSwitch>100000</HomingSpeedHomeSwitch-->
- <HomingSpeedEncoderIndex>100000</HomingSpeedEncoderIndex>
- <!-- HomingAccelDecel 0.05 rev/min/min = 0.0009 rev/sec/sec = 1000 counts/sec/sec -->
- <HomingAccelDecel>10000000</HomingAccelDecel>
- <HomingTimeOut>120000</HomingTimeOut>
- <ProportionalGain>0</ProportionalGain>
- <IntegralGain>0</IntegralGain>
- <DerivativeGain>0</DerivativeGain>
- <IntegralLimit>0</IntegralLimit>
- <!--ErrorLimit>0</ErrorLimit-->
- <ErrorLimit>2000</ErrorLimit>
- <VoltageOffset>0</VoltageOffset>
- <ReverseSoftwareLimit>-1190000</ReverseSoftwareLimit>
- <ForwardSoftwareLimit>28000000</ForwardSoftwareLimit>
- <!-- Speed 1430 rev/min = 23 rev/sec = 25000000 counts/sec -->
- <!--Speed>31000000</Speed-->
- <!--Speed>25000000</Speed-->
- <Speed>18000000</Speed>
- <!--Speed>12000000</Speed-->
- <!-- Acceleration/Deceleration 0.78 rev/min/min = 0.01 rev/sec/sec = 13800 counts/sec/sec -->
- <Acceleration>138000000</Acceleration>
- <Deceleration>138000000</Deceleration>
- <!--Acceleration>13800000</Acceleration>
- <Deceleration>13800000</Deceleration-->
- <Jerk>0</Jerk>
- <FeedforwardVelocity>0</FeedforwardVelocity>
- <FeedforwardAcceleration>0</FeedforwardAcceleration>
- <OffOnError>0</OffOnError>
- <NegativeTorqueLimit>130</NegativeTorqueLimit>
- <PositiveTorqueLimit>20</PositiveTorqueLimit>
- </Axis>
- <Axis Name="Transporter2.Gantry" MotorType="Yaskawa" COEAddress="192.168.0.14.4.1" COEPort="1080" DebugLogging="false">
- <Input Address="Task 2.Inputs.LoaderTransporterHorizontal_StatusWord" Type="StatusWord" DataType="uint"/>
- <Input Address="Task 2.Inputs.LoaderTransporterHorizontal_DigitalInputs" Type="DigitalInputs" DataType="udint"/>
- <Input Address="Task 2.Inputs.LoaderTransporterHorizontal_ModeOfOperationDisplay" Type="ModeOfOperation" DataType="byte"/>
- <Input Address="Task 2.Inputs.LoaderTransporterHorizontal_ActualMotorPosition" Type="MotorPosition" DataType="dint"/>
- <Input Address="Task 2.Inputs.LoaderTransporterHorizontal_FollowingErrorActualValue" Type="PositionError" DataType="dint"/>
- <Input Address="Task 2.Inputs.LoaderTransporterHorizontal_InternalPositionActual" Type="InternalPositionActual" DataType="dint"/>
- <Input Address="Task 2.Inputs.LoaderTransporterHorizontal_VelocityActualValue" Type="ActualVelocity" DataType="dint"/>
- <Input Address="Task 2.Inputs.LoaderTransporterHorizontal_TorqueActualValue" Type="ActualTorque" DataType="short"/>
- <Input Address="0x607d:01" Type="SoftwareLimitMinus" DataType="dint"/>
- <Input Address="0x607d:02" Type="SoftwareLimitPlus" DataType="dint"/>
- <Input Address="0x6098:00" Type="HomingMethod" DataType="byte"/>
- <Input Address="0x607c:00" Type="HomeOffset" DataType="dint"/>
- <Input Address="0x6099:01" Type="HomingVelocity" DataType="dint"/>
- <Input Address="0x6099:02" Type="HomingVelocitySlow" DataType="dint"/>
- <Input Address="0x609a:00" Type="HomingAccel" DataType="dint"/>
- <Input Address="0x2403:00" Type="NegativeTorqueLimit" DataType="uint"/>
- <Input Address="0x2402:00" Type="PositiveTorqueLimit" DataType="uint"/>
- <Input Address="0x6085:00" Type="EStopDecel" DataType="udint"/>
- <Input Address="0x2406:00" Type="EStopTorque" DataType="uint"/>
- <Input Address="0x607F:00" Type="VelocityLimit" DataType="udint"/>
- <Input Address="0x2522:00" Type="PositionWindow" DataType="udint"/>
- <Input Address="0x2520:00" Type="FollowingErrorWindow" DataType="udint"/>
- <Input Address="0x603F:00" Type="ErrorCode" DataType="uint"/>
- <Output Address="Task 2.Outputs.LoaderTransporterHorizontal_ControlWord" Type="ControlWord" DataType="uint"/>
- <Output Address="Task 2.Outputs.LoaderTransporterHorizontal_TargetPosition" Type="TargetPosition" DataType="dint"/>
- <Output Address="Task 2.Outputs.LoaderTransporterHorizontal_ModeOfOperation" Type="ModeOfOperation" DataType="byte"/>
- <Output Address="Task 2.Outputs.LoaderTransporterHorizontal_ProfileVelocity" Type="ProfileVelocity" DataType="dint"/>
- <Output Address="Task 2.Outputs.LoaderTransporterHorizontal_ProfileAccel" Type="ProfileAccel" DataType="dint"/>
- <Output Address="Task 2.Outputs.LoaderTransporterHorizontal_ProfileDecel" Type="ProfileDecel" DataType="dint"/>
- <Output Address="0x607d:01" Type="SoftwareLimitMinus" DataType="dint"/>
- <Output Address="0x607d:02" Type="SoftwareLimitPlus" DataType="dint"/>
- <Output Address="0x6098:00" Type="HomingMethod" DataType="byte"/>
- <Output Address="0x607c:00" Type="HomeOffset" DataType="dint"/>
- <Output Address="0x6099:01" Type="HomingVelocity" DataType="dint"/>
- <Output Address="0x6099:02" Type="HomingVelocitySlow" DataType="dint"/>
- <Output Address="0x609a:00" Type="HomingAccel" DataType="dint"/>
- <Output Address="0x2403:00" Type="NegativeTorqueLimit" DataType="uint"/>
- <Output Address="0x2402:00" Type="PositiveTorqueLimit" DataType="uint"/>
- <!-- X axis: 46258 counts/mm -->
- <MotorType>Servo</MotorType>
- <MotorDriveDirection>0</MotorDriveDirection>
- <EncoderFeedbackDirectionMValue>0</EncoderFeedbackDirectionMValue>
- <EncoderFeedbackDirectionNValue>0</EncoderFeedbackDirectionNValue>
- <ReverseLimitSwitchPolarity>0</ReverseLimitSwitchPolarity>
- <ForwardLimitSwitchPolarity>0</ForwardLimitSwitchPolarity>
- <HomeSwitchPolarity>0</HomeSwitchPolarity>
- <!-- HomingMethod 28 = Home Switch Negative Direction -->
- <HomingMethod>28</HomingMethod>
- <HomeConfig>0</HomeConfig>
- <HomingOffset>0</HomingOffset>
- <!-- HomingVelocity same as HomeSpeedHomeSwitch -->
- <!-- HomingSpeedHomeSwitch 57 rev/min = 0.9 rev/sec = 1000000 counts/sec -->
- <HomingSpeedHomeSwitch>3000000</HomingSpeedHomeSwitch>
- <HomingSpeedEncoderIndex>0</HomingSpeedEncoderIndex>
- <!-- HomingAccelDecel 0.05 rev/min/min = 0.0009 rev/sec/sec = 1000 counts/sec/sec -->
- <HomingAccelDecel>10000000</HomingAccelDecel>
- <HomingTimeOut>60000</HomingTimeOut>
- <ProportionalGain>0</ProportionalGain>
- <IntegralGain>0</IntegralGain>
- <DerivativeGain>0</DerivativeGain>
- <IntegralLimit>0</IntegralLimit>
- <!--ErrorLimit>0</ErrorLimit-->
- <ErrorLimit>2000</ErrorLimit>
- <VoltageOffset>0</VoltageOffset>
- <!-- -44262000 = -956 mm (~~ Loader)-->
- <!--ReverseSoftwareLimit>-44262000</ReverseSoftwareLimit-->
- <!-- -14432714 = -312 mm (~ Loader)-->
- <ReverseSoftwareLimit>-16190544</ReverseSoftwareLimit>
- <!-- 73500000 = 1588.89 mm (~ Metal13 / Cell17) -->
- <!--ForwardSoftwareLimit>73500000</ForwardSoftwareLimit-->
- <!-- 119856292 = 2591 mm (~ Metal7 / Cell10) -->
- <ForwardSoftwareLimit>119856292</ForwardSoftwareLimit>
- <!-- Speed 2975 rev/min = 49 rev/sec = 52000000 counts/sec -->
- <Speed>45000000</Speed>
- <!--Speed>30000000</Speed-->
- <!--Speed>52000000</Speed-->
- <!--Speed>26000000</Speed-->
- <!-- Acceleration/Deceleration 0.78 rev/min/min = 0.01 rev/sec/sec = 13800 counts/sec/sec -->
- <!--Acceleration>138000000</Acceleration-->
- <Acceleration>92000000</Acceleration>
- <!--Deceleration>138000000</Deceleration-->
- <Deceleration>92000000</Deceleration>
- <Jerk>0</Jerk>
- <FeedforwardVelocity>0</FeedforwardVelocity>
- <FeedforwardAcceleration>0</FeedforwardAcceleration>
- <OffOnError>0</OffOnError>
- <NegativeTorqueLimit>130</NegativeTorqueLimit>
- <PositiveTorqueLimit>130</PositiveTorqueLimit>
- </Axis>
- <Axis Name="Transporter2.Elevator" MotorType="Yaskawa" COEAddress="192.168.0.14.4.1" COEPort="1079" DebugLogging="false">
- <Input Address="Task 2.Inputs.LoaderTransporterVertical_StatusWord" Type="StatusWord" DataType="uint"/>
- <Input Address="Task 2.Inputs.LoaderTransporterVertical_DigitalInputs" Type="DigitalInputs" DataType="udint"/>
- <Input Address="Task 2.Inputs.LoaderTransporterVertical_ModeOfOperationDisplay" Type="ModeOfOperation" DataType="byte"/>
- <Input Address="Task 2.Inputs.LoaderTransporterVertical_ActualMotorPosition" Type="MotorPosition" DataType="dint"/>
- <Input Address="Task 2.Inputs.LoaderTransporterVertical_FollowingErrorActualValue" Type="PositionError" DataType="dint"/>
- <Input Address="Task 2.Inputs.LoaderTransporterVertical_InternalPositionActual" Type="InternalPositionActual" DataType="dint"/>
- <Input Address="Task 2.Inputs.LoaderTransporterVertical_VelocityActualValue" Type="ActualVelocity" DataType="dint"/>
- <Input Address="Task 2.Inputs.LoaderTransporterVertical_TorqueActualValue" Type="ActualTorque" DataType="short"/>
- <Input Address="0x607d:01" Type="SoftwareLimitMinus" DataType="dint"/>
- <Input Address="0x607d:02" Type="SoftwareLimitPlus" DataType="dint"/>
- <Input Address="0x6098:00" Type="HomingMethod" DataType="byte"/>
- <Input Address="0x607c:00" Type="HomeOffset" DataType="dint"/>
- <Input Address="0x6099:01" Type="HomingVelocity" DataType="dint"/>
- <Input Address="0x6099:02" Type="HomingVelocitySlow" DataType="dint"/>
- <Input Address="0x609a:00" Type="HomingAccel" DataType="dint"/>
- <Input Address="0x2403:00" Type="NegativeTorqueLimit" DataType="uint"/>
- <Input Address="0x2402:00" Type="PositiveTorqueLimit" DataType="uint"/>
- <Input Address="0x6085:00" Type="EStopDecel" DataType="udint"/>
- <Input Address="0x2406:00" Type="EStopTorque" DataType="uint"/>
- <Input Address="0x607F:00" Type="VelocityLimit" DataType="udint"/>
- <Input Address="0x2522:00" Type="PositionWindow" DataType="udint"/>
- <Input Address="0x2520:00" Type="FollowingErrorWindow" DataType="udint"/>
- <Input Address="0x603F:00" Type="ErrorCode" DataType="uint"/>
- <Output Address="Task 2.Outputs.LoaderTransporterVertical_ControlWord" Type="ControlWord" DataType="uint"/>
- <Output Address="Task 2.Outputs.LoaderTransporterVertical_TargetPosition" Type="TargetPosition" DataType="dint"/>
- <Output Address="Task 2.Outputs.LoaderTransporterVertical_ModeOfOperation" Type="ModeOfOperation" DataType="byte"/>
- <Output Address="Task 2.Outputs.LoaderTransporterVertical_ProfileVelocity" Type="ProfileVelocity" DataType="dint"/>
- <Output Address="Task 2.Outputs.LoaderTransporterVertical_ProfileAccel" Type="ProfileAccel" DataType="dint"/>
- <Output Address="Task 2.Outputs.LoaderTransporterVertical_ProfileDecel" Type="ProfileDecel" DataType="dint"/>
- <Output Address="0x607d:01" Type="SoftwareLimitMinus" DataType="dint"/>
- <Output Address="0x607d:02" Type="SoftwareLimitPlus" DataType="dint"/>
- <Output Address="0x6098:00" Type="HomingMethod" DataType="byte"/>
- <Output Address="0x607c:00" Type="HomeOffset" DataType="dint"/>
- <Output Address="0x6099:01" Type="HomingVelocity" DataType="dint"/>
- <Output Address="0x6099:02" Type="HomingVelocitySlow" DataType="dint"/>
- <Output Address="0x609a:00" Type="HomingAccel" DataType="dint"/>
- <Output Address="0x2403:00" Type="NegativeTorqueLimit" DataType="uint"/>
- <Output Address="0x2402:00" Type="PositiveTorqueLimit" DataType="uint"/>
- <!-- Z axis: 47784 counts/mm -->
- <MotorType>Servo</MotorType>
- <MotorDriveDirection>0</MotorDriveDirection>
- <EncoderFeedbackDirectionMValue>0</EncoderFeedbackDirectionMValue>
- <EncoderFeedbackDirectionNValue>0</EncoderFeedbackDirectionNValue>
- <ReverseLimitSwitchPolarity>0</ReverseLimitSwitchPolarity>
- <ForwardLimitSwitchPolarity>0</ForwardLimitSwitchPolarity>
- <HomeSwitchPolarity>0</HomeSwitchPolarity>
- <!-- HomingMethod 28 = Home Switch Negative Direction -->
- <HomingMethod>28</HomingMethod>
- <HomeConfig>0</HomeConfig>
- <!--HomingOffset>-662500</HomingOffset-->
- <HomingOffset>-398200</HomingOffset>
- <!-- HomingVelocity same as HomeSpeedHomeSwitch -->
- <!-- HomingSpeedHomeSwitch 57 rev/min = 0.9 rev/sec = 1000000 counts/sec -->
- <HomingSpeedHomeSwitch>1000000</HomingSpeedHomeSwitch>
- <!--HomingSpeedHomeSwitch>100000</HomingSpeedHomeSwitch-->
- <HomingSpeedEncoderIndex>100000</HomingSpeedEncoderIndex>
- <!-- HomingAccelDecel 0.05 rev/min/min = 0.0009 rev/sec/sec = 1000 counts/sec/sec -->
- <HomingAccelDecel>10000000</HomingAccelDecel>
- <HomingTimeOut>120000</HomingTimeOut>
- <ProportionalGain>0</ProportionalGain>
- <IntegralGain>0</IntegralGain>
- <DerivativeGain>0</DerivativeGain>
- <IntegralLimit>0</IntegralLimit>
- <!--ErrorLimit>0</ErrorLimit-->
- <ErrorLimit>2000</ErrorLimit>
- <VoltageOffset>0</VoltageOffset>
- <ReverseSoftwareLimit>-1190000</ReverseSoftwareLimit>
- <ForwardSoftwareLimit>28000000</ForwardSoftwareLimit>
- <!-- Speed 1430 rev/min = 23 rev/sec = 25000000 counts/sec -->
- <!--Speed>25000000</Speed-->
- <Speed>18000000</Speed>
- <!--Speed>12000000</Speed-->
- <!-- Acceleration/Deceleration 0.78 rev/min/min = 0.01 rev/sec/sec = 13800 counts/sec/sec -->
- <Acceleration>138000000</Acceleration>
- <Deceleration>138000000</Deceleration>
- <!--Acceleration>13800000</Acceleration>
- <Deceleration>13800000</Deceleration-->
- <Jerk>0</Jerk>
- <FeedforwardVelocity>0</FeedforwardVelocity>
- <FeedforwardAcceleration>0</FeedforwardAcceleration>
- <OffOnError>0</OffOnError>
- <NegativeTorqueLimit>130</NegativeTorqueLimit>
- <PositiveTorqueLimit>20</PositiveTorqueLimit>
- </Axis>
- <Axis Name="PUF1.Flip" MotorType="Copley" COEAddress="192.168.0.14.4.1" COEPort="1012" DebugLogging="false">
- <Input Address="Task 2.Inputs.r_DPUF_A_FLIP_STATUS_WORD" Type="StatusWord" DataType="uint"/>
- <Input Address="Task 2.Inputs.r_DPUF_A_FLIP_ManufStatus" Type="ManufStatus" DataType="udint"/>
- <Input Address="Task 2.Inputs.r_DPUF_A_FLIP_ProfileStatus" Type="ProfileStatus" DataType="int"/>
- <Input Address="Task 2.Inputs.r_DPUF_A_FLIP_ModeOfOperationDisplay" Type="ModeOfOperation" DataType="byte"/>
- <Input Address="Task 2.Inputs.r_DPUF_A_FLIP_ACTUAL_MOTOR_POS" Type="MotorPosition" DataType="dint"/>
- <Input Address="Task 2.Inputs.r_DPUF_A_FLIP_POSITION_LOOP_ERROR" Type="PositionError" DataType="dint"/>
- <Input Address="Task 2.Inputs.r_DPUF_A_FLIP_ACTUAL_MOTOR_VELOCITY" Type="ActualVelocity" DataType="dint"/>
- <Input Address="Task 2.Inputs.r_DPUF_A_FLIP_TORQUE_ACTUAL" Type="ActualTorque" DataType="int"/>
- <Input Address="0x2A53:00" Type="SoftwareLimitDecel" DataType="udint"/>
- <Input Address="0x687D:01" Type="SoftwareLimitMinus" DataType="dint"/>
- <Input Address="0x687D:02" Type="SoftwareLimitPlus" DataType="dint"/>
- <Input Address="0x687C:00" Type="HomeOffset" DataType="dint"/>
- <Input Address="0x6898:00" Type="HomingMethod" DataType="byte"/>
- <Input Address="0x6899:01" Type="HomingVelocity" DataType="dint"/>
- <Input Address="0x6899:02" Type="HomingVelocitySlow" DataType="dint"/>
- <Input Address="0x689A:00" Type="HomingAccel" DataType="dint"/>
- <Input Address="0x2B53:00" Type="HomeAdjustment" DataType="dint"/>
- <Input Address="0x6885:00" Type="EStopDecel" DataType="dint"/>
- <Input Address="0x2903:00" Type="VelocityLimit" DataType="dint"/>
- <Input Address="0x2910:00" Type="PeakCurrentLimit" DataType="int"/>
- <Input Address="0x2911:00" Type="ContinuousCurrentLimit" DataType="int"/>
- <Input Address="0x6867:00" Type="PositionWindow" DataType="dint"/>
- <Input Address="0x2920:00" Type="FollowingErrorWindow" DataType="dint"/>
- <Output Address="Task 2.Outputs.c_DPUF_A_FLIP_CONTROL_WORD" Type="ControlWord" DataType="uint"/>
- <Output Address="Task 2.Outputs.c_DPUF_A_FLIP_PROFILE_TARGET_POS" Type="TargetPosition" DataType="dint"/>
- <Output Address="Task 2.Outputs.c_DPUF_A_FLIP_ModeOfOperation" Type="ModeOfOperation" DataType="byte"/>
- <Output Address="Task 2.Outputs.c_DPUF_A_FLIP_PROFILE_VELOCITY" Type="ProfileVelocity" DataType="dint"/>
- <Output Address="Task 2.Outputs.c_DPUF_A_FLIP_PROFILE_ACCEL" Type="ProfileAccel" DataType="dint"/>
- <Output Address="Task 2.Outputs.c_DPUF_A_FLIP_PROFILE_DECEL" Type="ProfileDecel" DataType="dint"/>
- <Output Address="Task 2.Outputs.c_DPUF_A_FLIP_PROFILE_JERK" Type="ProfileJerk" DataType="dint"/>
- <Output Address="Task 2.Outputs.c_DPUF_A_FLIP_PROFILE_TYPE" Type="ProfileType" DataType="int"/>
- <Output Address="0x2A53:00" Type="SoftwareLimitDecel" DataType="udint"/>
- <Output Address="0x687D:01" Type="SoftwareLimitMinus" DataType="dint"/>
- <Output Address="0x687D:02" Type="SoftwareLimitPlus" DataType="dint"/>
- <Output Address="0x687C:00" Type="HomeOffset" DataType="dint"/>
- <Output Address="0x6898:00" Type="HomingMethod" DataType="byte"/>
- <Output Address="0x6899:01" Type="HomingVelocity" DataType="dint"/>
- <Output Address="0x6899:02" Type="HomingVelocitySlow" DataType="dint"/>
- <Output Address="0x689A:00" Type="HomingAccel" DataType="dint"/>
- <!-- 2222.2222 counts/degree -->
- <MotorType>Servo</MotorType>
- <MotorDriveDirection>-1</MotorDriveDirection>
- <!-- +1 = Forward and -1 = Backward-->
- <EncoderFeedbackDirectionMValue>0</EncoderFeedbackDirectionMValue>
- <EncoderFeedbackDirectionNValue>0</EncoderFeedbackDirectionNValue>
- <ReverseLimitSwitchPolarity>1</ReverseLimitSwitchPolarity>
- <ForwardLimitSwitchPolarity>1</ForwardLimitSwitchPolarity>
- <HomeSwitchPolarity>-1</HomeSwitchPolarity>
- <HomingMethod>5</HomingMethod>
- <HomingOffset>0</HomingOffset>
- <HomingSpeedHomeSwitch>44444</HomingSpeedHomeSwitch>
- <HomingSpeedEncoderIndex>44444</HomingSpeedEncoderIndex>
- <HomingAccelDecel>44444</HomingAccelDecel>
- <HomingTimeOut>60000</HomingTimeOut>
- <ProportionalGain>15</ProportionalGain>
- <IntegralGain>1</IntegralGain>
- <DerivativeGain>30</DerivativeGain>
- <IntegralLimit>1</IntegralLimit>
- <ErrorLimit>4444</ErrorLimit>
- <VoltageOffset>0</VoltageOffset>
- <ReverseSoftwareLimit>-19334</ReverseSoftwareLimit>
- <ForwardSoftwareLimit>413867</ForwardSoftwareLimit>
- <Speed>4444440</Speed>
- <Acceleration>33333</Acceleration>
- <Deceleration>33333</Deceleration>
- <Jerk>7200000</Jerk>
- <FeedforwardVelocity>0</FeedforwardVelocity>
- <FeedforwardAcceleration>0</FeedforwardAcceleration>
- <OffOnError>1</OffOnError>
- </Axis>
- <Axis Name="PUF1.Rotation" MotorType="Copley" COEAddress="192.168.0.14.4.1" COEPort="1012" DebugLogging="false">
- <Input Address="Task 2.Inputs.r_DPUF_A_ROTATION_STATUS_WORD" Type="StatusWord" DataType="uint"/>
- <Input Address="Task 2.Inputs.r_DPUF_A_ROTATION_ManufStatus" Type="ManufStatus" DataType="udint"/>
- <Input Address="Task 2.Inputs.r_DPUF_A_ROTATION_ProfileStatus" Type="ProfileStatus" DataType="int"/>
- <Input Address="Task 2.Inputs.r_DPUF_A_ROTATION_ModeOfOperationDisplay" Type="ModeOfOperation" DataType="byte"/>
- <Input Address="Task 2.Inputs.r_DPUF_A_ROTATION_ACTUAL_MOTOR_POS" Type="MotorPosition" DataType="dint"/>
- <Input Address="Task 2.Inputs.r_DPUF_A_ROTATION_POSITION_LOOP_ERROR" Type="PositionError" DataType="dint"/>
- <Input Address="Task 2.Inputs.r_DPUF_A_ROTATION_ACTUAL_MOTOR_VELOCITY" Type="ActualVelocity" DataType="dint"/>
- <Input Address="Task 2.Inputs.r_DPUF_A_ROTATION_TORQUE_ACTUAL" Type="ActualTorque" DataType="int"/>
- <Input Address="0x2253:00" Type="SoftwareLimitDecel" DataType="udint"/>
- <Input Address="0x607D:01" Type="SoftwareLimitMinus" DataType="dint"/>
- <Input Address="0x607D:02" Type="SoftwareLimitPlus" DataType="dint"/>
- <Input Address="0x607C:00" Type="HomeOffset" DataType="dint"/>
- <Input Address="0x6098:00" Type="HomingMethod" DataType="byte"/>
- <Input Address="0x6099:01" Type="HomingVelocity" DataType="dint"/>
- <Input Address="0x6099:02" Type="HomingVelocitySlow" DataType="dint"/>
- <Input Address="0x609A:00" Type="HomingAccel" DataType="dint"/>
- <Input Address="0x2353:00" Type="HomeAdjustment" DataType="dint"/>
- <Input Address="0x6085:00" Type="EStopDecel" DataType="dint"/>
- <Input Address="0x2103:00" Type="VelocityLimit" DataType="dint"/>
- <Input Address="0x2110:00" Type="PeakCurrentLimit" DataType="int"/>
- <Input Address="0x2111:00" Type="ContinuousCurrentLimit" DataType="int"/>
- <Input Address="0x6067:00" Type="PositionWindow" DataType="dint"/>
- <Input Address="0x2120:00" Type="FollowingErrorWindow" DataType="dint"/>
- <Output Address="Task 2.Outputs.c_DPUF_A_ROTATION_CONTROL_WORD" Type="ControlWord" DataType="uint"/>
- <Output Address="Task 2.Outputs.c_DPUF_A_ROTATION_PROFILE_TARGET_POS" Type="TargetPosition" DataType="dint"/>
- <Output Address="Task 2.Outputs.c_DPUF_A_ROTATION_ModeOfOperation" Type="ModeOfOperation" DataType="byte"/>
- <Output Address="Task 2.Outputs.c_DPUF_A_ROTATION_PROFILE_VELOCITY" Type="ProfileVelocity" DataType="dint"/>
- <Output Address="Task 2.Outputs.c_DPUF_A_ROTATION_PROFILE_ACCEL" Type="ProfileAccel" DataType="dint"/>
- <Output Address="Task 2.Outputs.c_DPUF_A_ROTATION_PROFILE_DECEL" Type="ProfileDecel" DataType="dint"/>
- <Output Address="Task 2.Outputs.c_DPUF_A_ROTATION_PROFILE_JERK" Type="ProfileJerk" DataType="dint"/>
- <Output Address="Task 2.Outputs.c_DPUF_A_ROTATION_PROFILE_TYPE" Type="ProfileType" DataType="int"/>
- <Output Address="0x2253:00" Type="SoftwareLimitDecel" DataType="udint"/>
- <Output Address="0x607D:01" Type="SoftwareLimitMinus" DataType="dint"/>
- <Output Address="0x607D:02" Type="SoftwareLimitPlus" DataType="dint"/>
- <Output Address="0x607C:00" Type="HomeOffset" DataType="dint"/>
- <Output Address="0x6098:00" Type="HomingMethod" DataType="byte"/>
- <Output Address="0x6099:01" Type="HomingVelocity" DataType="dint"/>
- <Output Address="0x6099:02" Type="HomingVelocitySlow" DataType="dint"/>
- <Output Address="0x609A:00" Type="HomingAccel" DataType="dint"/>
- <!-- 2222.2222 counts/degree -->
- <MotorType>Servo</MotorType>
- <MotorDriveDirection>+1</MotorDriveDirection>
- <!-- MotorDriveDirection +1 = Forward and -1 = Backward-->
- <EncoderFeedbackDirectionMValue>0</EncoderFeedbackDirectionMValue>
- <EncoderFeedbackDirectionNValue>2</EncoderFeedbackDirectionNValue>
- <ReverseLimitSwitchPolarity>1</ReverseLimitSwitchPolarity>
- <ForwardLimitSwitchPolarity>1</ForwardLimitSwitchPolarity>
- <HomeSwitchPolarity>-1</HomeSwitchPolarity>
- <HomingMethod>5</HomingMethod>
- <HomingOffset>0</HomingOffset>
- <HomingSpeedHomeSwitch>44444</HomingSpeedHomeSwitch>
- <HomingSpeedEncoderIndex>44444</HomingSpeedEncoderIndex>
- <HomingAccelDecel>44444</HomingAccelDecel>
- <HomingTimeOut>60000</HomingTimeOut>
- <ProportionalGain>14</ProportionalGain>
- <IntegralGain>1</IntegralGain>
- <DerivativeGain>40</DerivativeGain>
- <IntegralLimit>1</IntegralLimit>
- <ErrorLimit>11110</ErrorLimit>
- <VoltageOffset>0</VoltageOffset>
- <ReverseSoftwareLimit>-30112</ReverseSoftwareLimit>
- <ForwardSoftwareLimit>166067</ForwardSoftwareLimit>
- <Speed>4444440</Speed>
- <Acceleration>33333</Acceleration>
- <Deceleration>33333</Deceleration>
- <Jerk>7200000</Jerk>
- <FeedforwardVelocity>0</FeedforwardVelocity>
- <FeedforwardAcceleration>0</FeedforwardAcceleration>
- <OffOnError>1</OffOnError>
- </Axis>
- <Axis Name="PUF1.Vertical" MotorType="Yaskawa" COEAddress="192.168.0.14.4.1" COEPort="1002" DebugLogging="false">
- <Input Address="Task 2.Inputs.r_DPUF_A_VERT_STATUS_WORD" Type="StatusWord" DataType="uint"/>
- <Input Address="Task 2.Inputs.r_DPUF_A_VERT_DigitalInputs" Type="DigitalInputs" DataType="udint"/>
- <Input Address="Task 2.Inputs.r_DPUF_A_VERT_ModeOfOperationDisplay" Type="ModeOfOperation" DataType="byte"/>
- <Input Address="Task 2.Inputs.r_DPUF_A_VERT_POS_ACTUAL" Type="MotorPosition" DataType="dint"/>
- <Input Address="Task 2.Inputs.r_DPUF_A_VERT_INTERNAL_POS" Type="InternalPositionActual" DataType="dint"/>
- <Input Address="Task 2.Inputs.r_DPUF_A_VERT_FOLLOWING_ERROR" Type="PositionError" DataType="dint"/>
- <Input Address="Task 2.Inputs.r_DPUF_A_VERT_ACTUAL_VELOCITY" Type="ActualVelocity" DataType="dint"/>
- <Input Address="Task 2.Inputs.r_DPUF_A_VERT_ActualTorque" Type="ActualTorque" DataType="int"/>
- <Input Address="0x607D:01" Type="SoftwareLimitMinus" DataType="dint"/>
- <Input Address="0x607D:02" Type="SoftwareLimitPlus" DataType="dint"/>
- <Input Address="0x6098:00" Type="HomingMethod" DataType="byte"/>
- <Input Address="0x607C:00" Type="HomeOffset" DataType="dint"/>
- <Input Address="0x6099:01" Type="HomingVelocity" DataType="dint"/>
- <Input Address="0x6099:02" Type="HomingVelocitySlow" DataType="dint"/>
- <Input Address="0x609A:00" Type="HomingAccel" DataType="dint"/>
- <Input Address="0x2403:00" Type="NegativeTorqueLimit" DataType="uint"/>
- <Input Address="0x2402:00" Type="PositiveTorqueLimit" DataType="uint"/>
- <Input Address="0x6085:00" Type="EStopDecel" DataType="udint"/>
- <Input Address="0x2406:00" Type="EStopTorque" DataType="uint"/>
- <Input Address="0x607F:00" Type="VelocityLimit" DataType="udint"/>
- <Input Address="0x2522:00" Type="PositionWindow" DataType="udint"/>
- <Input Address="0x2520:00" Type="FollowingErrorWindow" DataType="udint"/>
- <Input Address="0x603F:00" Type="ErrorCode" DataType="uint"/>
- <Output Address="Task 2.Outputs.c_DPUF_A_VERT_CONTROL_WORD" Type="ControlWord" DataType="uint"/>
- <Output Address="Task 2.Outputs.c_DPUF_A_VERT_ModeOfOperation" Type="ModeOfOperation" DataType="byte"/>
- <Output Address="Task 2.Outputs.c_DPUF_A_VERT_TARGET_POS" Type="TargetPosition" DataType="dint"/>
- <Output Address="Task 2.Outputs.c_DPUF_A_VERT_PROFILE_VELOCITY" Type="ProfileVelocity" DataType="dint"/>
- <Output Address="Task 2.Outputs.c_DPUF_A_VERT_PROFILE_ACCEL" Type="ProfileAccel" DataType="dint"/>
- <Output Address="Task 2.Outputs.c_DPUF_A_VERT_PROFILE_DECEL" Type="ProfileDecel" DataType="dint"/>
- <!-- Output Address="Task 2.Outputs.c_DPUF_A_VERT_DigitalOutputs" Type="DigitalOutputs" DataType="dint"/ -->
- <Output Address="0x607D:01" Type="SoftwareLimitMinus" DataType="dint"/>
- <Output Address="0x607D:02" Type="SoftwareLimitPlus" DataType="dint"/>
- <Output Address="0x607C:00" Type="HomeOffset" DataType="dint"/>
- <Output Address="0x6098:00" Type="HomingMethod" DataType="byte"/>
- <Output Address="0x6099:01" Type="HomingVelocity" DataType="dint"/>
- <Output Address="0x6099:02" Type="HomingVelocitySlow" DataType="dint"/>
- <Output Address="0x609A:00" Type="HomingAccel" DataType="dint"/>
- <Output Address="0x2403:00" Type="NegativeTorqueLimit" DataType="uint"/>
- <Output Address="0x2402:00" Type="PositiveTorqueLimit" DataType="uint"/>
- <!-- 104,857.6 counts/mm -->
- <MotorType>Servo</MotorType>
- <MotorDriveDirection>+1</MotorDriveDirection>
- <!-- MotorDriveDirection +1 = Forward and -1 = Backward-->
- <EncoderFeedbackDirectionMValue>0</EncoderFeedbackDirectionMValue>
- <EncoderFeedbackDirectionNValue>2</EncoderFeedbackDirectionNValue>
- <ReverseLimitSwitchPolarity>1</ReverseLimitSwitchPolarity>
- <ForwardLimitSwitchPolarity>1</ForwardLimitSwitchPolarity>
- <HomeSwitchPolarity>-1</HomeSwitchPolarity>
- <HomingMethod>7</HomingMethod>
- <HomingOffset>0</HomingOffset>
- <HomingSpeedHomeSwitch>2242850</HomingSpeedHomeSwitch>
- <HomingSpeedEncoderIndex>1000000</HomingSpeedEncoderIndex>
- <HomingAccelDecel>26214250</HomingAccelDecel>
- <HomingTimeOut>60000</HomingTimeOut>
- <ProportionalGain>14</ProportionalGain>
- <IntegralGain>1</IntegralGain>
- <DerivativeGain>40</DerivativeGain>
- <IntegralLimit>1</IntegralLimit>
- <ErrorLimit>52428</ErrorLimit>
- <VoltageOffset>0</VoltageOffset>
- <ReverseSoftwareLimit>-30513562</ReverseSoftwareLimit>
- <ForwardSoftwareLimit>1048576</ForwardSoftwareLimit>
- <Speed>20971520</Speed>
- <Acceleration>26214400</Acceleration>
- <Deceleration>26214400</Deceleration>
- <FeedforwardVelocity>0</FeedforwardVelocity>
- <FeedforwardAcceleration>0</FeedforwardAcceleration>
- <OffOnError>1</OffOnError>
- <NegativeTorqueLimit>35</NegativeTorqueLimit>
- <PositiveTorqueLimit>75</PositiveTorqueLimit>
- </Axis>
- <Axis Name="PUF2.Flip" MotorType="Copley" COEAddress="192.168.0.14.4.1" COEPort="1006" DebugLogging="false">
- <Input Address="Task 2.Inputs.r_DPUF_B_FLIP_STATUS_WORD" Type="StatusWord" DataType="uint"/>
- <Input Address="Task 2.Inputs.r_DPUF_B_FLIP_ManufStatus" Type="ManufStatus" DataType="udint"/>
- <Input Address="Task 2.Inputs.r_DPUF_B_FLIP_ProfileStatus" Type="ProfileStatus" DataType="int"/>
- <Input Address="Task 2.Inputs.r_DPUF_B_FLIP_ModeOfOperationDisplay" Type="ModeOfOperation" DataType="byte"/>
- <Input Address="Task 2.Inputs.r_DPUF_B_FLIP_ACTUAL_MOTOR_POS" Type="MotorPosition" DataType="dint"/>
- <Input Address="Task 2.Inputs.r_DPUF_B_FLIP_POSITION_LOOP_ERROR" Type="PositionError" DataType="dint"/>
- <Input Address="Task 2.Inputs.r_DPUF_B_FLIP_ACTUAL_MOTOR_VELOCITY" Type="ActualVelocity" DataType="dint"/>
- <Input Address="Task 2.Inputs.r_DPUF_B_FLIP_TORQUE_ACTUAL" Type="ActualTorque" DataType="int"/>
- <Input Address="0x2A53:00" Type="SoftwareLimitDecel" DataType="udint"/>
- <Input Address="0x687D:01" Type="SoftwareLimitMinus" DataType="dint"/>
- <Input Address="0x687D:02" Type="SoftwareLimitPlus" DataType="dint"/>
- <Input Address="0x687C:00" Type="HomeOffset" DataType="dint"/>
- <Input Address="0x6898:00" Type="HomingMethod" DataType="byte"/>
- <Input Address="0x6899:01" Type="HomingVelocity" DataType="dint"/>
- <Input Address="0x6899:02" Type="HomingVelocitySlow" DataType="dint"/>
- <Input Address="0x689A:00" Type="HomingAccel" DataType="dint"/>
- <Input Address="0x2B53:00" Type="HomeAdjustment" DataType="dint"/>
- <Input Address="0x6885:00" Type="EStopDecel" DataType="dint"/>
- <Input Address="0x2903:00" Type="VelocityLimit" DataType="dint"/>
- <Input Address="0x2910:00" Type="PeakCurrentLimit" DataType="int"/>
- <Input Address="0x2911:00" Type="ContinuousCurrentLimit" DataType="int"/>
- <Input Address="0x6867:00" Type="PositionWindow" DataType="dint"/>
- <Input Address="0x2920:00" Type="FollowingErrorWindow" DataType="dint"/>
- <Output Address="Task 2.Outputs.c_DPUF_B_FLIP_CONTROL_WORD" Type="ControlWord" DataType="uint"/>
- <Output Address="Task 2.Outputs.c_DPUF_B_FLIP_PROFILE_TARGET_POS" Type="TargetPosition" DataType="dint"/>
- <Output Address="Task 2.Outputs.c_DPUF_B_FLIP_ModeOfOperation" Type="ModeOfOperation" DataType="byte"/>
- <Output Address="Task 2.Outputs.c_DPUF_B_FLIP_PROFILE_VELOCITY" Type="ProfileVelocity" DataType="dint"/>
- <Output Address="Task 2.Outputs.c_DPUF_B_FLIP_PROFILE_ACCEL" Type="ProfileAccel" DataType="dint"/>
- <Output Address="Task 2.Outputs.c_DPUF_B_FLIP_PROFILE_DECEL" Type="ProfileDecel" DataType="dint"/>
- <Output Address="Task 2.Outputs.c_DPUF_B_FLIP_PROFILE_JERK" Type="ProfileJerk" DataType="dint"/>
- <Output Address="Task 2.Outputs.c_DPUF_B_FLIP_PROFILE_TYPE" Type="ProfileType" DataType="int"/>
- <Output Address="0x2A53:00" Type="SoftwareLimitDecel" DataType="udint"/>
- <Output Address="0x687D:01" Type="SoftwareLimitMinus" DataType="dint"/>
- <Output Address="0x687D:02" Type="SoftwareLimitPlus" DataType="dint"/>
- <Output Address="0x687C:00" Type="HomeOffset" DataType="dint"/>
- <Output Address="0x6898:00" Type="HomingMethod" DataType="byte"/>
- <Output Address="0x6899:01" Type="HomingVelocity" DataType="dint"/>
- <Output Address="0x6899:02" Type="HomingVelocitySlow" DataType="dint"/>
- <Output Address="0x689A:00" Type="HomingAccel" DataType="dint"/>
- <!-- 2222.2222 counts/degree -->
- <MotorType>Servo</MotorType>
- <MotorDriveDirection>-1</MotorDriveDirection>
- <!-- +1 = Forward and -1 = Backward-->
- <EncoderFeedbackDirectionMValue>0</EncoderFeedbackDirectionMValue>
- <EncoderFeedbackDirectionNValue>0</EncoderFeedbackDirectionNValue>
- <ReverseLimitSwitchPolarity>1</ReverseLimitSwitchPolarity>
- <ForwardLimitSwitchPolarity>1</ForwardLimitSwitchPolarity>
- <HomeSwitchPolarity>-1</HomeSwitchPolarity>
- <HomingMethod>5</HomingMethod>
- <HomingOffset>0</HomingOffset>
- <HomingSpeedHomeSwitch>44444</HomingSpeedHomeSwitch>
- <HomingSpeedEncoderIndex>44444</HomingSpeedEncoderIndex>
- <HomingAccelDecel>44444</HomingAccelDecel>
- <HomingTimeOut>60000</HomingTimeOut>
- <ProportionalGain>15</ProportionalGain>
- <IntegralGain>1</IntegralGain>
- <DerivativeGain>30</DerivativeGain>
- <IntegralLimit>1</IntegralLimit>
- <ErrorLimit>4444</ErrorLimit>
- <VoltageOffset>0</VoltageOffset>
- <ReverseSoftwareLimit>-19134</ReverseSoftwareLimit>
- <ForwardSoftwareLimit>413645</ForwardSoftwareLimit>
- <Speed>4444440</Speed>
- <Acceleration>33333</Acceleration>
- <Deceleration>33333</Deceleration>
- <Jerk>7200000</Jerk>
- <FeedforwardVelocity>0</FeedforwardVelocity>
- <FeedforwardAcceleration>0</FeedforwardAcceleration>
- <OffOnError>1</OffOnError>
- </Axis>
- <Axis Name="PUF2.Rotation" MotorType="Copley" COEAddress="192.168.0.14.4.1" COEPort="1006" DebugLogging="false">
- <Input Address="Task 2.Inputs.r_DPUF_B_ROTATION_STATUS_WORD" Type="StatusWord" DataType="uint"/>
- <Input Address="Task 2.Inputs.r_DPUF_B_ROTATION_ManufStatus" Type="ManufStatus" DataType="udint"/>
- <Input Address="Task 2.Inputs.r_DPUF_B_ROTATION_ProfileStatus" Type="ProfileStatus" DataType="int"/>
- <Input Address="Task 2.Inputs.r_DPUF_B_ROTATION_ModeOfOperationDisplay" Type="ModeOfOperation" DataType="byte"/>
- <Input Address="Task 2.Inputs.r_DPUF_B_ROTATION_ACTUAL_MOTOR_POS" Type="MotorPosition" DataType="dint"/>
- <Input Address="Task 2.Inputs.r_DPUF_B_ROTATION_POSITION_LOOP_ERROR" Type="PositionError" DataType="dint"/>
- <Input Address="Task 2.Inputs.r_DPUF_B_ROTATION_ACTUAL_MOTOR_VELOCITY" Type="ActualVelocity" DataType="dint"/>
- <Input Address="Task 2.Inputs.r_DPUF_B_ROTATION_TORQUE_ACTUAL" Type="ActualTorque" DataType="int"/>
- <Input Address="0x2253:00" Type="SoftwareLimitDecel" DataType="udint"/>
- <Input Address="0x607D:01" Type="SoftwareLimitMinus" DataType="dint"/>
- <Input Address="0x607D:02" Type="SoftwareLimitPlus" DataType="dint"/>
- <Input Address="0x607C:00" Type="HomeOffset" DataType="dint"/>
- <Input Address="0x6098:00" Type="HomingMethod" DataType="byte"/>
- <Input Address="0x6099:01" Type="HomingVelocity" DataType="dint"/>
- <Input Address="0x6099:02" Type="HomingVelocitySlow" DataType="dint"/>
- <Input Address="0x609A:00" Type="HomingAccel" DataType="dint"/>
- <Input Address="0x2353:00" Type="HomeAdjustment" DataType="dint"/>
- <Input Address="0x6085:00" Type="EStopDecel" DataType="dint"/>
- <Input Address="0x2103:00" Type="VelocityLimit" DataType="dint"/>
- <Input Address="0x2110:00" Type="PeakCurrentLimit" DataType="int"/>
- <Input Address="0x2111:00" Type="ContinuousCurrentLimit" DataType="int"/>
- <Input Address="0x6067:00" Type="PositionWindow" DataType="dint"/>
- <Input Address="0x2120:00" Type="FollowingErrorWindow" DataType="dint"/>
- <Output Address="Task 2.Outputs.c_DPUF_B_ROTATION_CONTROL_WORD" Type="ControlWord" DataType="uint"/>
- <Output Address="Task 2.Outputs.c_DPUF_B_ROTATION_PROFILE_TARGET_POS" Type="TargetPosition" DataType="dint"/>
- <Output Address="Task 2.Outputs.c_DPUF_B_ROTATION_ModeOfOperation" Type="ModeOfOperation" DataType="byte"/>
- <Output Address="Task 2.Outputs.c_DPUF_B_ROTATION_PROFILE_VELOCITY" Type="ProfileVelocity" DataType="dint"/>
- <Output Address="Task 2.Outputs.c_DPUF_B_ROTATION_PROFILE_ACCEL" Type="ProfileAccel" DataType="dint"/>
- <Output Address="Task 2.Outputs.c_DPUF_B_ROTATION_PROFILE_DECEL" Type="ProfileDecel" DataType="dint"/>
- <Output Address="Task 2.Outputs.c_DPUF_B_ROTATION_PROFILE_JERK" Type="ProfileJerk" DataType="dint"/>
- <Output Address="Task 2.Outputs.c_DPUF_B_ROTATION_PROFILE_TYPE" Type="ProfileType" DataType="int"/>
- <Output Address="0x2253:00" Type="SoftwareLimitDecel" DataType="udint"/>
- <Output Address="0x607D:01" Type="SoftwareLimitMinus" DataType="dint"/>
- <Output Address="0x607D:02" Type="SoftwareLimitPlus" DataType="dint"/>
- <Output Address="0x607C:00" Type="HomeOffset" DataType="dint"/>
- <Output Address="0x6098:00" Type="HomingMethod" DataType="byte"/>
- <Output Address="0x6099:01" Type="HomingVelocity" DataType="dint"/>
- <Output Address="0x6099:02" Type="HomingVelocitySlow" DataType="dint"/>
- <Output Address="0x609A:00" Type="HomingAccel" DataType="dint"/>
- <!-- 2222.2222 counts/degree -->
- <MotorType>Servo</MotorType>
- <MotorDriveDirection>+1</MotorDriveDirection>
- <!-- MotorDriveDirection +1 = Forward and -1 = Backward-->
- <EncoderFeedbackDirectionMValue>0</EncoderFeedbackDirectionMValue>
- <EncoderFeedbackDirectionNValue>2</EncoderFeedbackDirectionNValue>
- <ReverseLimitSwitchPolarity>1</ReverseLimitSwitchPolarity>
- <ForwardLimitSwitchPolarity>1</ForwardLimitSwitchPolarity>
- <HomeSwitchPolarity>-1</HomeSwitchPolarity>
- <HomingMethod>3</HomingMethod>
- <HomingOffset>0</HomingOffset>
- <!--HomingOffset>0</HomingOffset-->
- <!-- clear bit 9 so motor does not move to zero after home -->
- <!-- HomeConfig>34</HomeConfig -->
- <HomingSpeedHomeSwitch>44444</HomingSpeedHomeSwitch>
- <HomingSpeedEncoderIndex>44444</HomingSpeedEncoderIndex>
- <HomingAccelDecel>44444</HomingAccelDecel>
- <HomingTimeOut>60000</HomingTimeOut>
- <ProportionalGain>14</ProportionalGain>
- <IntegralGain>1</IntegralGain>
- <DerivativeGain>40</DerivativeGain>
- <IntegralLimit>1</IntegralLimit>
- <ErrorLimit>11110</ErrorLimit>
- <VoltageOffset>0</VoltageOffset>
- <ReverseSoftwareLimit>-60556</ReverseSoftwareLimit>
- <ForwardSoftwareLimit>29712</ForwardSoftwareLimit>
- <Speed>4444440</Speed>
- <Acceleration>33333</Acceleration>
- <Deceleration>33333</Deceleration>
- <Jerk>7200000</Jerk>
- <FeedforwardVelocity>0</FeedforwardVelocity>
- <FeedforwardAcceleration>0</FeedforwardAcceleration>
- <OffOnError>1</OffOnError>
- </Axis>
- <Axis Name="PUF2.Vertical" MotorType="Yaskawa" COEAddress="192.168.0.14.4.1" COEPort="1008" DebugLogging="false">
- <Input Address="Task 2.Inputs.r_DPUF_B_VERT_STATUS_WORD" Type="StatusWord" DataType="uint"/>
- <Input Address="Task 2.Inputs.r_DPUF_B_VERT_DigitalInputs" Type="DigitalInputs" DataType="udint"/>
- <Input Address="Task 2.Inputs.r_DPUF_B_VERT_ModeOfOperationDisplay" Type="ModeOfOperation" DataType="byte"/>
- <Input Address="Task 2.Inputs.r_DPUF_B_VERT_POS_ACTUAL" Type="MotorPosition" DataType="dint"/>
- <Input Address="Task 2.Inputs.r_DPUF_B_VERT_INTERNAL_POS" Type="InternalPositionActual" DataType="dint"/>
- <Input Address="Task 2.Inputs.r_DPUF_B_VERT_FOLLOWING_ERROR" Type="PositionError" DataType="dint"/>
- <Input Address="Task 2.Inputs.r_DPUF_B_VERT_ACTUAL_VELOCITY" Type="ActualVelocity" DataType="dint"/>
- <Input Address="Task 2.Inputs.r_DPUF_B_VERT_ActualTorque" Type="ActualTorque" DataType="int"/>
- <Input Address="0x607D:01" Type="SoftwareLimitMinus" DataType="dint"/>
- <Input Address="0x607D:02" Type="SoftwareLimitPlus" DataType="dint"/>
- <Input Address="0x6098:00" Type="HomingMethod" DataType="byte"/>
- <Input Address="0x607C:00" Type="HomeOffset" DataType="dint"/>
- <Input Address="0x6099:01" Type="HomingVelocity" DataType="dint"/>
- <Input Address="0x6099:02" Type="HomingVelocitySlow" DataType="dint"/>
- <Input Address="0x609A:00" Type="HomingAccel" DataType="dint"/>
- <Input Address="0x2403:00" Type="NegativeTorqueLimit" DataType="uint"/>
- <Input Address="0x2402:00" Type="PositiveTorqueLimit" DataType="uint"/>
- <Input Address="0x6085:00" Type="EStopDecel" DataType="udint"/>
- <Input Address="0x2406:00" Type="EStopTorque" DataType="uint"/>
- <Input Address="0x607F:00" Type="VelocityLimit" DataType="udint"/>
- <Input Address="0x2522:00" Type="PositionWindow" DataType="udint"/>
- <Input Address="0x2520:00" Type="FollowingErrorWindow" DataType="udint"/>
- <Input Address="0x603F:00" Type="ErrorCode" DataType="uint"/>
- <Output Address="Task 2.Outputs.c_DPUF_B_VERT_CONTROL_WORD" Type="ControlWord" DataType="uint"/>
- <Output Address="Task 2.Outputs.c_DPUF_B_VERT_ModeOfOperation" Type="ModeOfOperation" DataType="byte"/>
- <Output Address="Task 2.Outputs.c_DPUF_B_VERT_TARGET_POS" Type="TargetPosition" DataType="dint"/>
- <Output Address="Task 2.Outputs.c_DPUF_B_VERT_PROFILE_VELOCITY" Type="ProfileVelocity" DataType="dint"/>
- <Output Address="Task 2.Outputs.c_DPUF_B_VERT_PROFILE_ACCEL" Type="ProfileAccel" DataType="dint"/>
- <Output Address="Task 2.Outputs.c_DPUF_B_VERT_PROFILE_DECEL" Type="ProfileDecel" DataType="dint"/>
- <Output Address="0x607D:01" Type="SoftwareLimitMinus" DataType="dint"/>
- <Output Address="0x607D:02" Type="SoftwareLimitPlus" DataType="dint"/>
- <Output Address="0x607C:00" Type="HomeOffset" DataType="dint"/>
- <Output Address="0x6098:00" Type="HomingMethod" DataType="byte"/>
- <Output Address="0x6099:01" Type="HomingVelocity" DataType="dint"/>
- <Output Address="0x6099:02" Type="HomingVelocitySlow" DataType="dint"/>
- <Output Address="0x609A:00" Type="HomingAccel" DataType="dint"/>
- <Output Address="0x2403:00" Type="NegativeTorqueLimit" DataType="uint"/>
- <Output Address="0x2402:00" Type="PositiveTorqueLimit" DataType="uint"/>
- <!-- 104,857.6 counts/mm -->
- <MotorType>Servo</MotorType>
- <MotorDriveDirection>+1</MotorDriveDirection>
- <!-- MotorDriveDirection +1 = Forward and -1 = Backward-->
- <EncoderFeedbackDirectionMValue>0</EncoderFeedbackDirectionMValue>
- <EncoderFeedbackDirectionNValue>2</EncoderFeedbackDirectionNValue>
- <ReverseLimitSwitchPolarity>1</ReverseLimitSwitchPolarity>
- <ForwardLimitSwitchPolarity>1</ForwardLimitSwitchPolarity>
- <HomeSwitchPolarity>-1</HomeSwitchPolarity>
- <HomingMethod>7</HomingMethod>
- <HomingOffset>0</HomingOffset>
- <!--HomingOffset>0</HomingOffset-->
- <HomingSpeedHomeSwitch>2242850</HomingSpeedHomeSwitch>
- <HomingSpeedEncoderIndex>1000000</HomingSpeedEncoderIndex>
- <HomingAccelDecel>26214250</HomingAccelDecel>
- <HomingTimeOut>60000</HomingTimeOut>
- <ProportionalGain>14</ProportionalGain>
- <IntegralGain>1</IntegralGain>
- <DerivativeGain>40</DerivativeGain>
- <IntegralLimit>1</IntegralLimit>
- <ErrorLimit>52428</ErrorLimit>
- <VoltageOffset>0</VoltageOffset>
- <ReverseSoftwareLimit>-31142708</ReverseSoftwareLimit>
- <ForwardSoftwareLimit>1048576</ForwardSoftwareLimit>
- <Speed>20971520</Speed>
- <Acceleration>26214400</Acceleration>
- <Deceleration>26214400</Deceleration>
- <FeedforwardVelocity>0</FeedforwardVelocity>
- <FeedforwardAcceleration>0</FeedforwardAcceleration>
- <OffOnError>1</OffOnError>
- <NegativeTorqueLimit>35</NegativeTorqueLimit>
- <PositiveTorqueLimit>75</PositiveTorqueLimit>
- </Axis>
- <Axis Name="Loader1.TiltA" MotorType="Yaskawa" COEAddress="192.168.0.14.4.1" COEPort="1022" DebugLogging="false">
- <Input Address="Task 2.Inputs.r_Loader1TiltA_StatusWord" Type="StatusWord" DataType="uint"/>
- <Input Address="Task 2.Inputs.Loader1TiltA_DigitalInputs" Type="DigitalInputs" DataType="udint"/>
- <Input Address="Task 2.Inputs.r_Loader1TiltA_ActualMotorPosition" Type="MotorPosition" DataType="dint"/>
- <Input Address="Task 2.Inputs.Loader1TiltA_FollowingError" Type="PositionError" DataType="dint"/>
- <Input Address="Task 2.Inputs.Loader1TiltA_ActualVelocity" Type="ActualVelocity" DataType="dint"/>
- <Input Address="Task 2.Inputs.Loader1TiltA_ActualTorque" Type="ActualTorque" DataType="int"/>
- <!-- Input Address="Task 2.Outputs.Loader1TiltA_DigitalOutputs" Type="DigitalOutputs" DataType="dint"/ -->
- <Input Address="0x607D:01" Type="SoftwareLimitMinus" DataType="dint"/>
- <Input Address="0x607D:02" Type="SoftwareLimitPlus" DataType="dint"/>
- <Input Address="0x6098:00" Type="HomingMethod" DataType="byte"/>
- <Input Address="0x607C:00" Type="HomeOffset" DataType="dint"/>
- <Input Address="0x6099:01" Type="HomingVelocity" DataType="dint"/>
- <Input Address="0x6099:02" Type="HomingVelocitySlow" DataType="dint"/>
- <Input Address="0x609A:00" Type="HomingAccel" DataType="dint"/>
- <Input Address="0x2403:00" Type="NegativeTorqueLimit" DataType="uint"/>
- <Input Address="0x2402:00" Type="PositiveTorqueLimit" DataType="uint"/>
- <Input Address="0x6085:00" Type="EStopDecel" DataType="udint"/>
- <Input Address="0x2406:00" Type="EStopTorque" DataType="uint"/>
- <Input Address="0x607F:00" Type="VelocityLimit" DataType="udint"/>
- <Input Address="0x2522:00" Type="PositionWindow" DataType="udint"/>
- <Input Address="0x2520:00" Type="FollowingErrorWindow" DataType="udint"/>
- <Input Address="0x603F:00" Type="ErrorCode" DataType="uint"/>
- <Output Address="Task 2.Outputs.Loader1TiltA_ControlWord" Type="ControlWord" DataType="uint"/>
- <Output Address="Task 2.Outputs.Loader1TiltA_ModeOfOperation" Type="ModeOfOperation" DataType="byte"/>
- <Output Address="Task 2.Outputs.Loader1TiltA_TargetPosition" Type="TargetPosition" DataType="dint"/>
- <Output Address="Task 2.Outputs.Loader1TiltA_ProfileVelocity" Type="ProfileVelocity" DataType="dint"/>
- <Output Address="Task 2.Outputs.Loader1TiltA_ProfileAccel" Type="ProfileAccel" DataType="dint"/>
- <Output Address="Task 2.Outputs.Loader1TiltA_ProfileDecel" Type="ProfileDecel" DataType="dint"/>
- <!--<Output Address="Task 2.Outputs.Loader1TiltA_ProfileDecel" Type="ProfileDecel" DataType="dint"/>-->
- <!-- Output Address="Task 2.Outputs.Loader1TiltA_DigitalOutputs" Type="DigitalOutputs" DataType="dint"/ -->
- <Output Address="0x607D:01" Type="SoftwareLimitMinus" DataType="dint"/>
- <Output Address="0x607D:02" Type="SoftwareLimitPlus" DataType="dint"/>
- <Output Address="0x607C:00" Type="HomeOffset" DataType="dint"/>
- <Output Address="0x6098:00" Type="HomingMethod" DataType="byte"/>
- <Output Address="0x6099:01" Type="HomingVelocity" DataType="dint"/>
- <Output Address="0x6099:02" Type="HomingVelocitySlow" DataType="dint"/>
- <Output Address="0x609A:00" Type="HomingAccel" DataType="dint"/>
- <Output Address="0x2403:00" Type="NegativeTorqueLimit" DataType="uint"/>
- <Output Address="0x2402:00" Type="PositiveTorqueLimit" DataType="uint"/>
- <MotorType>Servo</MotorType>
- <MotorDriveDirection>0</MotorDriveDirection>
- <EncoderFeedbackDirectionMValue>0</EncoderFeedbackDirectionMValue>
- <EncoderFeedbackDirectionNValue>0</EncoderFeedbackDirectionNValue>
- <ReverseLimitSwitchPolarity>0</ReverseLimitSwitchPolarity>
- <ForwardLimitSwitchPolarity>0</ForwardLimitSwitchPolarity>
- <HomeSwitchPolarity>0</HomeSwitchPolarity>
- <HomingMethod>28</HomingMethod>
- <HomeConfig>0</HomeConfig>
- <HomingOffset>0</HomingOffset>
- <HomingSpeedHomeSwitch>1500000</HomingSpeedHomeSwitch>
- <HomingSpeedEncoderIndex>0</HomingSpeedEncoderIndex>
- <HomingAccelDecel>10000000</HomingAccelDecel>
- <HomingTimeOut>60000</HomingTimeOut>
- <ProportionalGain>0</ProportionalGain>
- <IntegralGain>0</IntegralGain>
- <DerivativeGain>0</DerivativeGain>
- <IntegralLimit>0</IntegralLimit>
- <ErrorLimit>11650</ErrorLimit>
- <VoltageOffset>0</VoltageOffset>
- <ReverseSoftwareLimit>-28864967</ReverseSoftwareLimit>
- <ForwardSoftwareLimit>30801919</ForwardSoftwareLimit>
- <Speed>52428800</Speed>
- <Acceleration>52428800</Acceleration>
- <Deceleration>104857600</Deceleration>
- <Jerk>0</Jerk>
- <FeedforwardVelocity>0</FeedforwardVelocity>
- <FeedforwardAcceleration>0</FeedforwardAcceleration>
- <OffOnError>0</OffOnError>
- <NegativeTorqueLimit>50</NegativeTorqueLimit>
- <PositiveTorqueLimit>50</PositiveTorqueLimit>
- </Axis>
- <Axis Name="Loader1.TiltB" MotorType="Yaskawa" COEAddress="192.168.0.14.4.1" COEPort="1021" DebugLogging="false">
- <Input Address="Task 2.Inputs.r_Loader1TiltB_StatusWord" Type="StatusWord" DataType="uint"/>
- <Input Address="Task 2.Inputs.Loader1TiltB_DigitalInputs" Type="DigitalInputs" DataType="udint"/>
- <Input Address="Task 2.Inputs.r_Loader1TiltB_ActualMotorPosition" Type="MotorPosition" DataType="dint"/>
- <Input Address="Task 2.Inputs.Loader1TiltB_FollowingError" Type="PositionError" DataType="dint"/>
- <Input Address="Task 2.Inputs.Loader1TiltB_ActualVelocity" Type="ActualVelocity" DataType="dint"/>
- <Input Address="Task 2.Inputs.Loader1TiltB_ActualTorque" Type="ActualTorque" DataType="int"/>
- <!-- Input Address="Task 2.Outputs.Loader1TiltB_DigitalOutputs" Type="DigitalOutputs" DataType="dint"/ -->
- <Input Address="0x607D:01" Type="SoftwareLimitMinus" DataType="dint"/>
- <Input Address="0x607D:02" Type="SoftwareLimitPlus" DataType="dint"/>
- <Input Address="0x6098:00" Type="HomingMethod" DataType="byte"/>
- <Input Address="0x607C:00" Type="HomeOffset" DataType="dint"/>
- <Input Address="0x6099:01" Type="HomingVelocity" DataType="dint"/>
- <Input Address="0x6099:02" Type="HomingVelocitySlow" DataType="dint"/>
- <Input Address="0x609A:00" Type="HomingAccel" DataType="dint"/>
- <Input Address="0x2403:00" Type="NegativeTorqueLimit" DataType="uint"/>
- <Input Address="0x2402:00" Type="PositiveTorqueLimit" DataType="uint"/>
- <Input Address="0x6085:00" Type="EStopDecel" DataType="udint"/>
- <Input Address="0x2406:00" Type="EStopTorque" DataType="uint"/>
- <Input Address="0x607F:00" Type="VelocityLimit" DataType="udint"/>
- <Input Address="0x2522:00" Type="PositionWindow" DataType="udint"/>
- <Input Address="0x2520:00" Type="FollowingErrorWindow" DataType="udint"/>
- <Input Address="0x603F:00" Type="ErrorCode" DataType="uint"/>
- <Output Address="Task 2.Outputs.Loader1TiltB_ControlWord" Type="ControlWord" DataType="uint"/>
- <Output Address="Task 2.Outputs.Loader1TiltB_ModeOfOperation" Type="ModeOfOperation" DataType="byte"/>
- <Output Address="Task 2.Outputs.Loader1TiltB_TargetPosition" Type="TargetPosition" DataType="dint"/>
- <Output Address="Task 2.Outputs.Loader1TiltB_ProfileVelocity" Type="ProfileVelocity" DataType="dint"/>
- <Output Address="Task 2.Outputs.Loader1TiltB_ProfileAccel" Type="ProfileAccel" DataType="dint"/>
- <Output Address="Task 2.Outputs.Loader1TiltB_ProfileDecel" Type="ProfileDecel" DataType="dint"/>
- <!-- Output Address="Task 2.Outputs.Loader1TiltB_DigitalOutputs" Type="DigitalOutputs" DataType="dint"/ -->
- <Output Address="0x607D:01" Type="SoftwareLimitMinus" DataType="dint"/>
- <Output Address="0x607D:02" Type="SoftwareLimitPlus" DataType="dint"/>
- <Output Address="0x607C:00" Type="HomeOffset" DataType="dint"/>
- <Output Address="0x6098:00" Type="HomingMethod" DataType="byte"/>
- <Output Address="0x6099:01" Type="HomingVelocity" DataType="dint"/>
- <Output Address="0x6099:02" Type="HomingVelocitySlow" DataType="dint"/>
- <Output Address="0x609A:00" Type="HomingAccel" DataType="dint"/>
- <Output Address="0x2403:00" Type="NegativeTorqueLimit" DataType="uint"/>
- <Output Address="0x2402:00" Type="PositiveTorqueLimit" DataType="uint"/>
- <MotorType>Servo</MotorType>
- <MotorDriveDirection>0</MotorDriveDirection>
- <EncoderFeedbackDirectionMValue>0</EncoderFeedbackDirectionMValue>
- <EncoderFeedbackDirectionNValue>0</EncoderFeedbackDirectionNValue>
- <ReverseLimitSwitchPolarity>0</ReverseLimitSwitchPolarity>
- <ForwardLimitSwitchPolarity>0</ForwardLimitSwitchPolarity>
- <HomeSwitchPolarity>0</HomeSwitchPolarity>
- <HomingMethod>28</HomingMethod>
- <HomeConfig>0</HomeConfig>
- <HomingOffset>0</HomingOffset>
- <HomingSpeedHomeSwitch>1500000</HomingSpeedHomeSwitch>
- <HomingSpeedEncoderIndex>0</HomingSpeedEncoderIndex>
- <HomingAccelDecel>10000000</HomingAccelDecel>
- <HomingTimeOut>60000</HomingTimeOut>
- <ProportionalGain>0</ProportionalGain>
- <IntegralGain>0</IntegralGain>
- <DerivativeGain>0</DerivativeGain>
- <IntegralLimit>0</IntegralLimit>
- <ErrorLimit>11650</ErrorLimit>
- <VoltageOffset>0</VoltageOffset>
- <ReverseSoftwareLimit>-29590232</ReverseSoftwareLimit>
- <ForwardSoftwareLimit>31460192</ForwardSoftwareLimit>
- <Speed>52428800</Speed>
- <Acceleration>52428800</Acceleration>
- <Deceleration>104857600</Deceleration>
- <Jerk>0</Jerk>
- <FeedforwardVelocity>0</FeedforwardVelocity>
- <FeedforwardAcceleration>0</FeedforwardAcceleration>
- <OffOnError>0</OffOnError>
- <NegativeTorqueLimit>50</NegativeTorqueLimit>
- <PositiveTorqueLimit>50</PositiveTorqueLimit>
- </Axis>
- <Axis Name="Loader1.SwingA" MotorType="Yaskawa" COEAddress="192.168.0.14.4.1" COEPort="1020" DebugLogging="false">
- <Input Address="Task 2.Inputs.r_Loader1SwingA_StatusWord" Type="StatusWord" DataType="uint"/>
- <Input Address="Task 2.Inputs.Loader1SwingA_DigitalInputs" Type="DigitalInputs" DataType="udint"/>
- <Input Address="Task 2.Inputs.r_Loader1SwingA_ActualMotorPosition" Type="MotorPosition" DataType="dint"/>
- <Input Address="Task 2.Inputs.Loader1SwingA_FollowingError" Type="PositionError" DataType="dint"/>
- <Input Address="Task 2.Inputs.Loader1SwingA_ActualVelocity" Type="ActualVelocity" DataType="dint"/>
- <Input Address="Task 2.Inputs.Loader1SwingA_ActualTorque" Type="ActualTorque" DataType="int"/>
- <!-- Input Address="Task 2.Outputs.Loader1SwingA_DigitalOutputs" Type="DigitalOutputs" DataType="dint"/ -->
- <Input Address="0x607D:01" Type="SoftwareLimitMinus" DataType="dint"/>
- <Input Address="0x607D:02" Type="SoftwareLimitPlus" DataType="dint"/>
- <Input Address="0x6098:00" Type="HomingMethod" DataType="byte"/>
- <Input Address="0x607C:00" Type="HomeOffset" DataType="dint"/>
- <Input Address="0x6099:01" Type="HomingVelocity" DataType="dint"/>
- <Input Address="0x6099:02" Type="HomingVelocitySlow" DataType="dint"/>
- <Input Address="0x609A:00" Type="HomingAccel" DataType="dint"/>
- <Input Address="0x2403:00" Type="NegativeTorqueLimit" DataType="uint"/>
- <Input Address="0x2402:00" Type="PositiveTorqueLimit" DataType="uint"/>
- <Input Address="0x6085:00" Type="EStopDecel" DataType="udint"/>
- <Input Address="0x2406:00" Type="EStopTorque" DataType="uint"/>
- <Input Address="0x607F:00" Type="VelocityLimit" DataType="udint"/>
- <Input Address="0x2522:00" Type="PositionWindow" DataType="udint"/>
- <Input Address="0x2520:00" Type="FollowingErrorWindow" DataType="udint"/>
- <Input Address="0x603F:00" Type="ErrorCode" DataType="uint"/>
- <Output Address="Task 2.Outputs.Loader1SwingA_ControlWord" Type="ControlWord" DataType="uint"/>
- <Output Address="Task 2.Outputs.Loader1SwingA_ModeOfOperation" Type="ModeOfOperation" DataType="byte"/>
- <Output Address="Task 2.Outputs.Loader1SwingA_TargetPosition" Type="TargetPosition" DataType="dint"/>
- <Output Address="Task 2.Outputs.Loader1SwingA_ProfileVelocity" Type="ProfileVelocity" DataType="dint"/>
- <Output Address="Task 2.Outputs.Loader1SwingA_ProfileAccel" Type="ProfileAccel" DataType="dint"/>
- <Output Address="Task 2.Outputs.Loader1SwingA_ProfileDecel" Type="ProfileDecel" DataType="dint"/>
- <!-- Output Address="Task 2.Outputs.Loader1SwingA_DigitalOutputs" Type="DigitalOutputs" DataType="dint"/ -->
- <Output Address="0x607D:01" Type="SoftwareLimitMinus" DataType="dint"/>
- <Output Address="0x607D:02" Type="SoftwareLimitPlus" DataType="dint"/>
- <Output Address="0x607C:00" Type="HomeOffset" DataType="dint"/>
- <Output Address="0x6098:00" Type="HomingMethod" DataType="byte"/>
- <Output Address="0x6099:01" Type="HomingVelocity" DataType="dint"/>
- <Output Address="0x6099:02" Type="HomingVelocitySlow" DataType="dint"/>
- <Output Address="0x609A:00" Type="HomingAccel" DataType="dint"/>
- <Output Address="0x2403:00" Type="NegativeTorqueLimit" DataType="uint"/>
- <Output Address="0x2402:00" Type="PositiveTorqueLimit" DataType="uint"/>
- <MotorType>Servo</MotorType>
- <MotorDriveDirection>0</MotorDriveDirection>
- <EncoderFeedbackDirectionMValue>0</EncoderFeedbackDirectionMValue>
- <EncoderFeedbackDirectionNValue>0</EncoderFeedbackDirectionNValue>
- <ReverseLimitSwitchPolarity>0</ReverseLimitSwitchPolarity>
- <ForwardLimitSwitchPolarity>0</ForwardLimitSwitchPolarity>
- <HomeSwitchPolarity>0</HomeSwitchPolarity>
- <HomingMethod>28</HomingMethod>
- <HomeConfig>0</HomeConfig>
- <HomingOffset>0</HomingOffset>
- <HomingSpeedHomeSwitch>1500000</HomingSpeedHomeSwitch>
- <HomingSpeedEncoderIndex>0</HomingSpeedEncoderIndex>
- <HomingAccelDecel>10000000</HomingAccelDecel>
- <HomingTimeOut>60000</HomingTimeOut>
- <ProportionalGain>0</ProportionalGain>
- <IntegralGain>0</IntegralGain>
- <DerivativeGain>0</DerivativeGain>
- <IntegralLimit>0</IntegralLimit>
- <ErrorLimit>11650</ErrorLimit>
- <VoltageOffset>0</VoltageOffset>
- <ReverseSoftwareLimit>-4864228</ReverseSoftwareLimit>
- <ForwardSoftwareLimit>12242125</ForwardSoftwareLimit>
- <Speed>29127110</Speed>
- <Acceleration>29127110</Acceleration>
- <Deceleration>29127110</Deceleration>
- <Jerk>0</Jerk>
- <FeedforwardVelocity>0</FeedforwardVelocity>
- <FeedforwardAcceleration>0</FeedforwardAcceleration>
- <OffOnError>0</OffOnError>
- </Axis>
- <Axis Name="Loader1.SwingB" MotorType="Yaskawa" COEAddress="192.168.0.14.4.1" COEPort="1017" DebugLogging="false">
- <Input Address="Task 2.Inputs.r_Loader1SwingB_StatusWord" Type="StatusWord" DataType="uint"/>
- <Input Address="Task 2.Inputs.Loader1SwingB_DigitalInputs" Type="DigitalInputs" DataType="udint"/>
- <Input Address="Task 2.Inputs.r_Loader1SwingB_ActualMotorPosition" Type="MotorPosition" DataType="dint"/>
- <Input Address="Task 2.Inputs.Loader1SwingB_FollowingError" Type="PositionError" DataType="dint"/>
- <Input Address="Task 2.Inputs.Loader1SwingB_ActualVelocity" Type="ActualVelocity" DataType="dint"/>
- <Input Address="Task 2.Inputs.Loader1SwingB_ActualTorque" Type="ActualTorque" DataType="int"/>
- <!-- Input Address="Task 2.Outputs.Loader1SwingB_DigitalOutputs" Type="DigitalOutputs" DataType="dint"/ -->
- <Input Address="0x607D:01" Type="SoftwareLimitMinus" DataType="dint"/>
- <Input Address="0x607D:02" Type="SoftwareLimitPlus" DataType="dint"/>
- <Input Address="0x6098:00" Type="HomingMethod" DataType="byte"/>
- <Input Address="0x607C:00" Type="HomeOffset" DataType="dint"/>
- <Input Address="0x6099:01" Type="HomingVelocity" DataType="dint"/>
- <Input Address="0x6099:02" Type="HomingVelocitySlow" DataType="dint"/>
- <Input Address="0x609A:00" Type="HomingAccel" DataType="dint"/>
- <Input Address="0x2403:00" Type="NegativeTorqueLimit" DataType="uint"/>
- <Input Address="0x2402:00" Type="PositiveTorqueLimit" DataType="uint"/>
- <Input Address="0x6085:00" Type="EStopDecel" DataType="udint"/>
- <Input Address="0x2406:00" Type="EStopTorque" DataType="uint"/>
- <Input Address="0x607F:00" Type="VelocityLimit" DataType="udint"/>
- <Input Address="0x2522:00" Type="PositionWindow" DataType="udint"/>
- <Input Address="0x2520:00" Type="FollowingErrorWindow" DataType="udint"/>
- <Input Address="0x603F:00" Type="ErrorCode" DataType="uint"/>
- <Output Address="Task 2.Outputs.Loader1SwingB_ControlWord" Type="ControlWord" DataType="uint"/>
- <Output Address="Task 2.Outputs.Loader1SwingB_ModeOfOperation" Type="ModeOfOperation" DataType="byte"/>
- <Output Address="Task 2.Outputs.Loader1SwingB_TargetPosition" Type="TargetPosition" DataType="dint"/>
- <Output Address="Task 2.Outputs.Loader1SwingB_ProfileVelocity" Type="ProfileVelocity" DataType="dint"/>
- <Output Address="Task 2.Outputs.Loader1SwingB_ProfileAccel" Type="ProfileAccel" DataType="dint"/>
- <Output Address="Task 2.Outputs.Loader1SwingB_ProfileDecel" Type="ProfileDecel" DataType="dint"/>
- <!-- Output Address="Task 2.Outputs.Loader1SwingB_DigitalOutputs" Type="DigitalOutputs" DataType="dint"/ -->
- <Output Address="0x607D:01" Type="SoftwareLimitMinus" DataType="dint"/>
- <Output Address="0x607D:02" Type="SoftwareLimitPlus" DataType="dint"/>
- <Output Address="0x607C:00" Type="HomeOffset" DataType="dint"/>
- <Output Address="0x6098:00" Type="HomingMethod" DataType="byte"/>
- <Output Address="0x6099:01" Type="HomingVelocity" DataType="dint"/>
- <Output Address="0x6099:02" Type="HomingVelocitySlow" DataType="dint"/>
- <Output Address="0x609A:00" Type="HomingAccel" DataType="dint"/>
- <Output Address="0x2403:00" Type="NegativeTorqueLimit" DataType="uint"/>
- <Output Address="0x2402:00" Type="PositiveTorqueLimit" DataType="uint"/>
- <MotorType>Servo</MotorType>
- <MotorDriveDirection>0</MotorDriveDirection>
- <EncoderFeedbackDirectionMValue>0</EncoderFeedbackDirectionMValue>
- <EncoderFeedbackDirectionNValue>0</EncoderFeedbackDirectionNValue>
- <ReverseLimitSwitchPolarity>0</ReverseLimitSwitchPolarity>
- <ForwardLimitSwitchPolarity>0</ForwardLimitSwitchPolarity>
- <HomeSwitchPolarity>0</HomeSwitchPolarity>
- <HomingMethod>28</HomingMethod>
- <HomeConfig>0</HomeConfig>
- <HomingOffset>0</HomingOffset>
- <HomingSpeedHomeSwitch>1500000</HomingSpeedHomeSwitch>
- <HomingSpeedEncoderIndex>0</HomingSpeedEncoderIndex>
- <HomingAccelDecel>10000000</HomingAccelDecel>
- <HomingTimeOut>60000</HomingTimeOut>
- <ProportionalGain>0</ProportionalGain>
- <IntegralGain>0</IntegralGain>
- <DerivativeGain>0</DerivativeGain>
- <IntegralLimit>0</IntegralLimit>
- <!-- ErrorLimit>2000</ErrorLimit -->
- <ErrorLimit>11650</ErrorLimit>
- <VoltageOffset>0</VoltageOffset>
- <ReverseSoftwareLimit>-4349377</ReverseSoftwareLimit>
- <ForwardSoftwareLimit>12923699</ForwardSoftwareLimit>
- <Speed>29127110</Speed>
- <Acceleration>29127110</Acceleration>
- <Deceleration>29127110</Deceleration>
- <Jerk>0</Jerk>
- <FeedforwardVelocity>0</FeedforwardVelocity>
- <FeedforwardAcceleration>0</FeedforwardAcceleration>
- <OffOnError>0</OffOnError>
- </Axis>
- <Axis Name="Loader1.LSA" MotorType="Yaskawa" COEAddress="192.168.0.14.4.1" COEPort="1018" DebugLogging="false">
- <Input Address="Task 2.Inputs.r_Loader1CRSA_StatusWord" Type="StatusWord" DataType="uint"/>
- <Input Address="Task 2.Inputs.Loader1CRSA_DigitalInputs" Type="DigitalInputs" DataType="udint"/>
- <Input Address="Task 2.Inputs.r_Loader1CRSA_ActualMotorPosition" Type="MotorPosition" DataType="dint"/>
- <Input Address="Task 2.Inputs.r_Loader1CRSA_FollowingError" Type="PositionError" DataType="dint"/>
- <Input Address="Task 2.Inputs.Loader1CRSA_ActualVelocity" Type="ActualVelocity" DataType="dint"/>
- <Input Address="Task 2.Inputs.r_Loader1CRSA_ActualTorque" Type="ActualTorque" DataType="int"/>
- <Input Address="0x607D:01" Type="SoftwareLimitMinus" DataType="dint"/>
- <Input Address="0x607D:02" Type="SoftwareLimitPlus" DataType="dint"/>
- <Input Address="0x6098:00" Type="HomingMethod" DataType="byte"/>
- <Input Address="0x607C:00" Type="HomeOffset" DataType="dint"/>
- <Input Address="0x6099:01" Type="HomingVelocity" DataType="dint"/>
- <Input Address="0x6099:02" Type="HomingVelocitySlow" DataType="dint"/>
- <Input Address="0x609A:00" Type="HomingAccel" DataType="dint"/>
- <Input Address="0x2403:00" Type="NegativeTorqueLimit" DataType="uint"/>
- <Input Address="0x2402:00" Type="PositiveTorqueLimit" DataType="uint"/>
- <Input Address="0x6085:00" Type="EStopDecel" DataType="udint"/>
- <Input Address="0x2406:00" Type="EStopTorque" DataType="uint"/>
- <Input Address="0x607F:00" Type="VelocityLimit" DataType="udint"/>
- <Input Address="0x2522:00" Type="PositionWindow" DataType="udint"/>
- <Input Address="0x2520:00" Type="FollowingErrorWindow" DataType="udint"/>
- <Input Address="0x603F:00" Type="ErrorCode" DataType="uint"/>
- <Output Address="Task 2.Outputs.Loader1CRSA_ControlWord" Type="ControlWord" DataType="uint"/>
- <Output Address="Task 2.Outputs.Loader1CRSA_ModeOfOperation" Type="ModeOfOperation" DataType="byte"/>
- <Output Address="Task 2.Outputs.Loader1CRSA_TargetPosition" Type="TargetPosition" DataType="dint"/>
- <Output Address="Task 2.Outputs.Loader1CRSA_ProfileVelocity" Type="ProfileVelocity" DataType="dint"/>
- <Output Address="Task 2.Outputs.Loader1CRSA_ProfileAccel" Type="ProfileAccel" DataType="dint"/>
- <Output Address="Task 2.Outputs.Loader1CRSA_ProfileDecel" Type="ProfileDecel" DataType="dint"/>
- <Output Address="Task 2.Outputs.Loader1CRSA_DigitalOutputs" Type="DigitalOutputs" DataType="dint"/>
- <Output Address="0x607D:01" Type="SoftwareLimitMinus" DataType="dint"/>
- <Output Address="0x607D:02" Type="SoftwareLimitPlus" DataType="dint"/>
- <Output Address="0x607C:00" Type="HomeOffset" DataType="dint"/>
- <Output Address="0x6098:00" Type="HomingMethod" DataType="byte"/>
- <Output Address="0x6099:01" Type="HomingVelocity" DataType="dint"/>
- <Output Address="0x6099:02" Type="HomingVelocitySlow" DataType="dint"/>
- <Output Address="0x609A:00" Type="HomingAccel" DataType="dint"/>
- <Output Address="0x2403:00" Type="NegativeTorqueLimit" DataType="uint"/>
- <Output Address="0x2402:00" Type="PositiveTorqueLimit" DataType="uint"/>
- <MotorType>Servo</MotorType>
- <MotorDriveDirection>0</MotorDriveDirection>
- <EncoderFeedbackDirectionMValue>0</EncoderFeedbackDirectionMValue>
- <EncoderFeedbackDirectionNValue>0</EncoderFeedbackDirectionNValue>
- <ReverseLimitSwitchPolarity>0</ReverseLimitSwitchPolarity>
- <ForwardLimitSwitchPolarity>0</ForwardLimitSwitchPolarity>
- <HomeSwitchPolarity>0</HomeSwitchPolarity>
- <HomingMethod>28</HomingMethod>
- <HomeConfig>0</HomeConfig>
- <HomingOffset>0</HomingOffset>
- <HomingSpeedHomeSwitch>2300936</HomingSpeedHomeSwitch>
- <HomingSpeedEncoderIndex>0</HomingSpeedEncoderIndex>
- <HomingAccelDecel>10000000</HomingAccelDecel>
- <HomingTimeOut>120000</HomingTimeOut>
- <ProportionalGain>0</ProportionalGain>
- <IntegralGain>0</IntegralGain>
- <DerivativeGain>0</DerivativeGain>
- <IntegralLimit>0</IntegralLimit>
- <ErrorLimit>11504</ErrorLimit>
- <VoltageOffset>0</VoltageOffset>
- <ReverseSoftwareLimit>0</ReverseSoftwareLimit>
- <ForwardSoftwareLimit>0</ForwardSoftwareLimit>
- <Speed>4314255</Speed>
- <Acceleration>14380850</Acceleration>
- <Deceleration>14380850</Deceleration>
- <Jerk>0</Jerk>
- <FeedforwardVelocity>0</FeedforwardVelocity>
- <FeedforwardAcceleration>0</FeedforwardAcceleration>
- <OffOnError>0</OffOnError>
- </Axis>
- <Axis Name="Loader1.LSB" MotorType="Yaskawa" COEAddress="192.168.0.14.4.1" COEPort="1019" DebugLogging="false">
- <Input Address="Task 2.Inputs.r_Loader1CRSB_StatusWord" Type="StatusWord" DataType="uint"/>
- <Input Address="Task 2.Inputs.Loader1CRSB_DigitalInputs" Type="DigitalInputs" DataType="udint"/>
- <Input Address="Task 2.Inputs.r_Loader1CRSB_ActualMotorPosition" Type="MotorPosition" DataType="dint"/>
- <Input Address="Task 2.Inputs.r_Loader1CRSB_FollowingError" Type="PositionError" DataType="dint"/>
- <Input Address="Task 2.Inputs.Loader1CRSB_ActualVelocity" Type="ActualVelocity" DataType="dint"/>
- <Input Address="Task 2.Inputs.r_Loader1CRSB_ActualTorque" Type="ActualTorque" DataType="int"/>
- <Input Address="0x607D:01" Type="SoftwareLimitMinus" DataType="dint"/>
- <Input Address="0x607D:02" Type="SoftwareLimitPlus" DataType="dint"/>
- <Input Address="0x6098:00" Type="HomingMethod" DataType="byte"/>
- <Input Address="0x607C:00" Type="HomeOffset" DataType="dint"/>
- <Input Address="0x6099:01" Type="HomingVelocity" DataType="dint"/>
- <Input Address="0x6099:02" Type="HomingVelocitySlow" DataType="dint"/>
- <Input Address="0x609A:00" Type="HomingAccel" DataType="dint"/>
- <Input Address="0x2403:00" Type="NegativeTorqueLimit" DataType="uint"/>
- <Input Address="0x2402:00" Type="PositiveTorqueLimit" DataType="uint"/>
- <Input Address="0x6085:00" Type="EStopDecel" DataType="udint"/>
- <Input Address="0x2406:00" Type="EStopTorque" DataType="uint"/>
- <Input Address="0x607F:00" Type="VelocityLimit" DataType="udint"/>
- <Input Address="0x2522:00" Type="PositionWindow" DataType="udint"/>
- <Input Address="0x2520:00" Type="FollowingErrorWindow" DataType="udint"/>
- <Input Address="0x603F:00" Type="ErrorCode" DataType="uint"/>
- <Output Address="Task 2.Outputs.Loader1CRSB_ControlWord" Type="ControlWord" DataType="uint"/>
- <Output Address="Task 2.Outputs.Loader1CRSB_ModeOfOperation" Type="ModeOfOperation" DataType="byte"/>
- <Output Address="Task 2.Outputs.Loader1CRSB_TargetPosition" Type="TargetPosition" DataType="dint"/>
- <Output Address="Task 2.Outputs.Loader1CRSB_ProfileVelocity" Type="ProfileVelocity" DataType="dint"/>
- <Output Address="Task 2.Outputs.Loader1CRSB_ProfileAccel" Type="ProfileAccel" DataType="dint"/>
- <Output Address="Task 2.Outputs.Loader1CRSB_ProfileDecel" Type="ProfileDecel" DataType="dint"/>
- <Output Address="Task 2.Outputs.Loader1CRSB_DigitalOutputs" Type="DigitalOutputs" DataType="dint"/>
- <Output Address="0x607D:01" Type="SoftwareLimitMinus" DataType="dint"/>
- <Output Address="0x607D:02" Type="SoftwareLimitPlus" DataType="dint"/>
- <Output Address="0x607C:00" Type="HomeOffset" DataType="dint"/>
- <Output Address="0x6098:00" Type="HomingMethod" DataType="byte"/>
- <Output Address="0x6099:01" Type="HomingVelocity" DataType="dint"/>
- <Output Address="0x6099:02" Type="HomingVelocitySlow" DataType="dint"/>
- <Output Address="0x609A:00" Type="HomingAccel" DataType="dint"/>
- <Output Address="0x2403:00" Type="NegativeTorqueLimit" DataType="uint"/>
- <Output Address="0x2402:00" Type="PositiveTorqueLimit" DataType="uint"/>
- <MotorType>Servo</MotorType>
- <MotorDriveDirection>0</MotorDriveDirection>
- <EncoderFeedbackDirectionMValue>0</EncoderFeedbackDirectionMValue>
- <EncoderFeedbackDirectionNValue>0</EncoderFeedbackDirectionNValue>
- <ReverseLimitSwitchPolarity>0</ReverseLimitSwitchPolarity>
- <ForwardLimitSwitchPolarity>0</ForwardLimitSwitchPolarity>
- <HomeSwitchPolarity>0</HomeSwitchPolarity>
- <HomingMethod>28</HomingMethod>
- <HomeConfig>0</HomeConfig>
- <HomingOffset>0</HomingOffset>
- <HomingSpeedHomeSwitch>2300936</HomingSpeedHomeSwitch>
- <HomingSpeedEncoderIndex>0</HomingSpeedEncoderIndex>
- <HomingAccelDecel>10000000</HomingAccelDecel>
- <HomingTimeOut>120000</HomingTimeOut>
- <ProportionalGain>0</ProportionalGain>
- <IntegralGain>0</IntegralGain>
- <DerivativeGain>0</DerivativeGain>
- <IntegralLimit>0</IntegralLimit>
- <ErrorLimit>11504</ErrorLimit>
- <VoltageOffset>0</VoltageOffset>
- <ReverseSoftwareLimit>0</ReverseSoftwareLimit>
- <ForwardSoftwareLimit>0</ForwardSoftwareLimit>
- <Speed>4314255</Speed>
- <Acceleration>14380850</Acceleration>
- <Deceleration>14380850</Deceleration>
- <Jerk>0</Jerk>
- <FeedforwardVelocity>0</FeedforwardVelocity>
- <FeedforwardAcceleration>0</FeedforwardAcceleration>
- <OffOnError>0</OffOnError>
- </Axis>
- <Axis Name="Loader1.Rotation" MotorType="Yaskawa" COEAddress="192.168.0.14.4.1" COEPort="1016" DebugLogging="false">
- <Input Address="Task 2.Inputs.r_Loader1Rotation_StatusWord" Type="StatusWord" DataType="uint"/>
- <Input Address="Task 2.Inputs.Loader1Rotation_DigitalInputs" Type="DigitalInputs" DataType="udint"/>
- <Input Address="Task 2.Inputs.r_Loader1Rotation_ActualMotorPosition" Type="MotorPosition" DataType="dint"/>
- <Input Address="Task 2.Inputs.Loader1Rotation_FollowingError" Type="PositionError" DataType="dint"/>
- <Input Address="Task 2.Inputs.Loader1Rotation_ActualVelocity" Type="ActualVelocity" DataType="dint"/>
- <Input Address="Task 2.Inputs.Loader1Rotation_ActualTorque" Type="ActualTorque" DataType="int"/>
- <!-- Input Address="Task 2.Outputs.Loader1Rotation_DigitalOutputs" Type="DigitalOutputs" DataType="dint"/ -->
- <Input Address="0x607D:01" Type="SoftwareLimitMinus" DataType="dint"/>
- <Input Address="0x607D:02" Type="SoftwareLimitPlus" DataType="dint"/>
- <Input Address="0x6098:00" Type="HomingMethod" DataType="byte"/>
- <Input Address="0x607C:00" Type="HomeOffset" DataType="dint"/>
- <Input Address="0x6099:01" Type="HomingVelocity" DataType="dint"/>
- <Input Address="0x6099:02" Type="HomingVelocitySlow" DataType="dint"/>
- <Input Address="0x609A:00" Type="HomingAccel" DataType="dint"/>
- <Input Address="0x2403:00" Type="NegativeTorqueLimit" DataType="uint"/>
- <Input Address="0x2402:00" Type="PositiveTorqueLimit" DataType="uint"/>
- <Input Address="0x6085:00" Type="EStopDecel" DataType="udint"/>
- <Input Address="0x2406:00" Type="EStopTorque" DataType="uint"/>
- <Input Address="0x607F:00" Type="VelocityLimit" DataType="udint"/>
- <Input Address="0x2522:00" Type="PositionWindow" DataType="udint"/>
- <Input Address="0x2520:00" Type="FollowingErrorWindow" DataType="udint"/>
- <Input Address="0x603F:00" Type="ErrorCode" DataType="uint"/>
- <Output Address="Task 2.Outputs.Loader1Rotation_ControlWord" Type="ControlWord" DataType="uint"/>
- <Output Address="Task 2.Outputs.Loader1Rotation_ModeOfOperation" Type="ModeOfOperation" DataType="byte"/>
- <Output Address="Task 2.Outputs.Loader1Rotation_TargetPosition" Type="TargetPosition" DataType="dint"/>
- <Output Address="Task 2.Outputs.Loader1Rotation_ProfileVelocity" Type="ProfileVelocity" DataType="dint"/>
- <Output Address="Task 2.Outputs.Loader1Rotation_ProfileAccel" Type="ProfileAccel" DataType="dint"/>
- <Output Address="Task 2.Outputs.Loader1Rotation_ProfileDecel" Type="ProfileDecel" DataType="dint"/>
- <!-- Output Address="Task 2.Outputs.Loader1Rotation_DigitalOutputs" Type="DigitalOutputs" DataType="dint"/ -->
- <Output Address="0x607D:01" Type="SoftwareLimitMinus" DataType="dint"/>
- <Output Address="0x607D:02" Type="SoftwareLimitPlus" DataType="dint"/>
- <Output Address="0x607C:00" Type="HomeOffset" DataType="dint"/>
- <Output Address="0x6098:00" Type="HomingMethod" DataType="byte"/>
- <Output Address="0x6099:01" Type="HomingVelocity" DataType="dint"/>
- <Output Address="0x6099:02" Type="HomingVelocitySlow" DataType="dint"/>
- <Output Address="0x609A:00" Type="HomingAccel" DataType="dint"/>
- <Output Address="0x2403:00" Type="NegativeTorqueLimit" DataType="uint"/>
- <Output Address="0x2402:00" Type="PositiveTorqueLimit" DataType="uint"/>
- <MotorType>Servo</MotorType>
- <MotorDriveDirection>0</MotorDriveDirection>
- <EncoderFeedbackDirectionMValue>0</EncoderFeedbackDirectionMValue>
- <EncoderFeedbackDirectionNValue>0</EncoderFeedbackDirectionNValue>
- <ReverseLimitSwitchPolarity>0</ReverseLimitSwitchPolarity>
- <ForwardLimitSwitchPolarity>0</ForwardLimitSwitchPolarity>
- <HomeSwitchPolarity>0</HomeSwitchPolarity>
- <HomingMethod>24</HomingMethod>
- <HomeConfig>0</HomeConfig>
- <HomingOffset>0</HomingOffset>
- <HomingSpeedHomeSwitch>1500000</HomingSpeedHomeSwitch>
- <HomingSpeedEncoderIndex>0</HomingSpeedEncoderIndex>
- <HomingAccelDecel>10000000</HomingAccelDecel>
- <HomingTimeOut>60000</HomingTimeOut>
- <ProportionalGain>0</ProportionalGain>
- <IntegralGain>0</IntegralGain>
- <DerivativeGain>0</DerivativeGain>
- <IntegralLimit>0</IntegralLimit>
- <ErrorLimit>6766</ErrorLimit>
- <VoltageOffset>0</VoltageOffset>
- <!-- -193 degrees * 169161 = -32648073 -->
- <ReverseSoftwareLimit>-46180953</ReverseSoftwareLimit>
- <!-- 13 degrees * 169161 = 2199093 -->
- <ForwardSoftwareLimit>2706576</ForwardSoftwareLimit>
- <Speed>15000000</Speed>
- <Acceleration>10000000</Acceleration>
- <Deceleration>10000000</Deceleration>
- <Jerk>0</Jerk>
- <FeedforwardVelocity>0</FeedforwardVelocity>
- <FeedforwardAcceleration>0</FeedforwardAcceleration>
- <OffOnError>0</OffOnError>
- </Axis>
- <!-- SRD AXES BEGIN -->
- <!-- Maxon EPOS2 -->
- <!-- position is in counts, speed is in rpm: counts/sec * 60 sec/min / (512 * 4 counts/rev) = 0.0293 rev/min (rpm) -->
- <Axis Name="SRD1.Arm" MotorType="Maxon" SpeedConversion="0.0293" COEAddress="192.168.0.14.5.1" COEPort="4097" DebugLogging="false">
- <Input Address="Task 2.Inputs.r_SRD1_ARM_StatusWord" Type="StatusWord" DataType="uint"/>
- <Input Address="Task 2.Inputs.r_SRD1_ARM_ActualMotorPosition" Type="MotorPosition" DataType="dint"/>
- <Input Address="0x6085:00" Type="EStopDecel" DataType="udint"/>
- <Input Address="0x607F:00" Type="VelocityLimit" DataType="udint"/>
- <Input Address="0x60C5:00" Type="AccelerationLimit" DataType="udint"/>
- <Input Address="0x2082:00" Type="HomeAdjustment" DataType="dint"/>
- <Input Address="0x1001:00" Type="ErrorRegister" DataType="usint"/>
- <Input Address="0x1003:00" Type="ErrorHistoryCount" DataType="usint"/>
- <Input Address="0x1003:01" Type="ErrorHistory1" DataType="udint"/>
- <Output Address="Task 2.Outputs.c_SRD1_ARM_ControlWord" Type="ControlWord" DataType="uint"/>
- <Output Address="Task 2.Outputs.c_SRD1_ARM_ModeOfOperation" Type="ModeOfOperation" DataType="byte"/>
- <Output Address="Task 2.Outputs.c_SRD1_ARM_TargetPosition" Type="TargetPosition" DataType="dint"/>
- <Output Address="0x6081:00" Type="ProfileVelocity" DataType="dint"/>
- <Output Address="0x6083:00" Type="ProfileAccel" DataType="dint"/>
- <Output Address="0x6084:00" Type="ProfileDecel" DataType="dint"/>
- <Output Address="0x607D:01" Type="SoftwareLimitMinus" DataType="dint"/>
- <Output Address="0x607D:02" Type="SoftwareLimitPlus" DataType="dint"/>
- <Output Address="0x6098:00" Type="HomingMethod" DataType="byte"/>
- <Output Address="0x607C:00" Type="HomeOffset" DataType="dint"/>
- <Output Address="0x6099:01" Type="HomingVelocity" DataType="dint"/>
- <Output Address="0x6099:02" Type="HomingVelocitySlow" DataType="dint"/>
- <Output Address="0x609A:00" Type="HomingAccel" DataType="dint"/>
- <Output Address="0x6410:02" Type="PeakCurrentLimit" DataType="uint"/>
- <Output Address="0x6410:01" Type="ContinuousCurrentLimit" DataType="uint"/>
- <!--MiscConfig may be used someday if want to reverse direction of motion/-->
- <!--Output Address="0x2008:00" Type="MiscConfig" DataType="uint"/-->
- <!-- 2184.533333 counts/degree -->
- <MotorType>Servo</MotorType>
- <MotorDriveDirection>-1</MotorDriveDirection>
- <!-- +1 = Forward and -1 = Backward-->
- <EncoderFeedbackDirectionMValue>0</EncoderFeedbackDirectionMValue>
- <EncoderFeedbackDirectionNValue>0</EncoderFeedbackDirectionNValue>
- <ReverseLimitSwitchPolarity>1</ReverseLimitSwitchPolarity>
- <ForwardLimitSwitchPolarity>1</ForwardLimitSwitchPolarity>
- <HomeSwitchPolarity>-1</HomeSwitchPolarity>
- <!-- Negative to Home Switch -->
- <!--HomingMethod>21</HomingMethod-->
- <!-- Positive to Home Switch -->
- <HomingMethod>23</HomingMethod>
- <HomingOffset>0</HomingOffset>
- <HomingSpeedHomeSwitch>200</HomingSpeedHomeSwitch>
- <HomingSpeedEncoderIndex>50</HomingSpeedEncoderIndex>
- <HomingAccelDecel>5000</HomingAccelDecel>
- <HomingTimeOut>25000</HomingTimeOut>
- <ProportionalGain>0</ProportionalGain>
- <IntegralGain>0</IntegralGain>
- <DerivativeGain>0</DerivativeGain>
- <IntegralLimit>0</IntegralLimit>
- <ErrorLimit>200</ErrorLimit>
- <VoltageOffset>0</VoltageOffset>
- <ReverseSoftwareLimit>-10000000</ReverseSoftwareLimit>
- <ForwardSoftwareLimit>10000000</ForwardSoftwareLimit>
- <Speed>1000</Speed>
- <Acceleration>5000</Acceleration>
- <Deceleration>5000</Deceleration>
- <FeedforwardVelocity>0</FeedforwardVelocity>
- <FeedforwardAcceleration>0</FeedforwardAcceleration>
- <OffOnError>1</OffOnError>
- </Axis>
- <!-- Copley XE2 2-Axis -->
- <Axis Name="SRD1.Rotation" MotorType="Copley" COEAddress="192.168.0.14.4.1" COEPort="1057" DebugLogging="false">
- <Input Address="Task 2.Inputs.r_SRD1_ROTATION_StatusWord" Type="StatusWord" DataType="uint"/>
- <Input Address="Task 2.Inputs.r_SRD1_ROTATION_ManufStatus" Type="ManufStatus" DataType="udint"/>
- <Input Address="Task 2.Inputs.r_SRD1_ROTATION_ProfileStatus" Type="ProfileStatus" DataType="int"/>
- <Input Address="Task 2.Inputs.r_SRD1_ROTATION_ModeOfOperationDisplay" Type="ModeOfOperation" DataType="sint"/>
- <Input Address="Task 2.Inputs.r_SRD1_ROTATION_ActualMotorPosition" Type="MotorPosition" DataType="dint"/>
- <Input Address="Task 2.Inputs.r_SRD1_ROTATION_ActualFollowingError" Type="PositionError" DataType="dint"/>
- <Input Address="Task 2.Inputs.r_SRD1_ROTATION_ActualVelocity" Type="ActualVelocity" DataType="dint"/>
- <Input Address="Task 2.Inputs.r_SRD1_ROTATION_ActualTorque" Type="ActualTorque" DataType="int"/>
- <Input Address="0x2253:00" Type="SoftwareLimitDecel" DataType="udint"/>
- <Input Address="0x607D:01" Type="SoftwareLimitMinus" DataType="dint"/>
- <Input Address="0x607D:02" Type="SoftwareLimitPlus" DataType="dint"/>
- <Input Address="0x6098:00" Type="HomingMethod" DataType="byte"/>
- <Input Address="0x607C:00" Type="HomeOffset" DataType="dint"/>
- <Input Address="0x6099:01" Type="HomingVelocity" DataType="dint"/>
- <Input Address="0x6099:02" Type="HomingVelocitySlow" DataType="dint"/>
- <Input Address="0x609A:00" Type="HomingAccel" DataType="dint"/>
- <Input Address="0x2353:00" Type="HomeAdjustment" DataType="dint"/>
- <Input Address="0x2110:00" Type="PeakCurrentLimit" DataType="int"/>
- <Input Address="0x2111:00" Type="ContinuousCurrentLimit" DataType="int"/>
- <Input Address="0x6085:00" Type="EStopDecel" DataType="udint"/>
- <Input Address="0x2103:00" Type="VelocityLimit" DataType="udint"/>
- <Input Address="0x6067:00" Type="PositionWindow" DataType="udint"/>
- <Input Address="0x2120:00" Type="FollowingErrorWindow" DataType="udint"/>
- <Output Address="Task 2.Outputs.c_SRD1_ROTATION_ControlWord" Type="ControlWord" DataType="uint"/>
- <Output Address="Task 2.Outputs.c_SRD1_ROTATION_ModeOfOperation" Type="ModeOfOperation" DataType="byte"/>
- <Output Address="Task 2.Outputs.c_SRD1_ROTATION_TargetPosition" Type="TargetPosition" DataType="dint"/>
- <Output Address="Task 2.Outputs.c_SRD1_ROTATION_ProfileVelocity" Type="ProfileVelocity" DataType="dint"/>
- <Output Address="Task 2.Outputs.c_SRD1_ROTATION_ProfileAccel" Type="ProfileAccel" DataType="dint"/>
- <Output Address="Task 2.Outputs.c_SRD1_ROTATION_ProfileDecel" Type="ProfileDecel" DataType="dint"/>
- <Output Address="0x2253:00" Type="SoftwareLimitDecel" DataType="udint"/>
- <Output Address="0x607D:01" Type="SoftwareLimitMinus" DataType="dint"/>
- <Output Address="0x607D:02" Type="SoftwareLimitPlus" DataType="dint"/>
- <Output Address="0x6098:00" Type="HomingMethod" DataType="byte"/>
- <Output Address="0x607C:00" Type="HomeOffset" DataType="dint"/>
- <Output Address="0x6099:01" Type="HomingVelocity" DataType="dint"/>
- <Output Address="0x6099:02" Type="HomingVelocitySlow" DataType="dint"/>
- <Output Address="0x609A:00" Type="HomingAccel" DataType="dint"/>
- <!-- 58.822222 counts/deg -->
- <MotorType>Servo</MotorType>
- <MotorDriveDirection>-1</MotorDriveDirection>
- <!-- +1 = Forward and -1 = Backward-->
- <EncoderFeedbackDirectionMValue>0</EncoderFeedbackDirectionMValue>
- <EncoderFeedbackDirectionNValue>0</EncoderFeedbackDirectionNValue>
- <ReverseLimitSwitchPolarity>1</ReverseLimitSwitchPolarity>
- <ForwardLimitSwitchPolarity>1</ForwardLimitSwitchPolarity>
- <HomeSwitchPolarity>-1</HomeSwitchPolarity>
- <!-- Positive to Index -->
- <HomingMethod>35</HomingMethod>
- <HomingOffset>0</HomingOffset>
- <HomingSpeedHomeSwitch>2500</HomingSpeedHomeSwitch>
- <HomingSpeedEncoderIndex>2500</HomingSpeedEncoderIndex>
- <HomingAccelDecel>420000</HomingAccelDecel>
- <HomingTimeOut>15000</HomingTimeOut>
- <ProportionalGain>0</ProportionalGain>
- <IntegralGain>0</IntegralGain>
- <DerivativeGain>0</DerivativeGain>
- <IntegralLimit>0</IntegralLimit>
- <ErrorLimit>2000</ErrorLimit>
- <VoltageOffset>0</VoltageOffset>
- <ReverseSoftwareLimit>0</ReverseSoftwareLimit>
- <ForwardSoftwareLimit>0</ForwardSoftwareLimit>
- <Speed>529400</Speed>
- <Acceleration>84000</Acceleration>
- <Deceleration>84000</Deceleration>
- <FeedforwardVelocity>0</FeedforwardVelocity>
- <FeedforwardAcceleration>0</FeedforwardAcceleration>
- <OffOnError>1</OffOnError>
- </Axis>
- <!-- Maxon EPOS2 -->
- <!-- position is in counts, speed is in rpm: counts/sec * 60 sec/min / (512 * 4 counts/rev) = 0.0293 rev/min (rpm) -->
- <Axis Name="SRD2.Arm" MotorType="Maxon" SpeedConversion="0.0293" COEAddress="192.168.0.14.5.1" COEPort="4098" DebugLogging="false">
- <Input Address="Task 2.Inputs.r_SRD2_ARM_StatusWord" Type="StatusWord" DataType="uint"/>
- <Input Address="Task 2.Inputs.r_SRD2_ARM_ActualMotorPosition" Type="MotorPosition" DataType="dint"/>
- <Input Address="0x6085:00" Type="EStopDecel" DataType="udint"/>
- <Input Address="0x607F:00" Type="VelocityLimit" DataType="udint"/>
- <Input Address="0x60C5:00" Type="AccelerationLimit" DataType="udint"/>
- <Input Address="0x2082:00" Type="HomeAdjustment" DataType="dint"/>
- <Input Address="0x1001:00" Type="ErrorRegister" DataType="usint"/>
- <Input Address="0x1003:00" Type="ErrorHistoryCount" DataType="usint"/>
- <Input Address="0x1003:01" Type="ErrorHistory1" DataType="udint"/>
- <Output Address="Task 2.Outputs.c_SRD2_ARM_ControlWord" Type="ControlWord" DataType="uint"/>
- <Output Address="Task 2.Outputs.c_SRD2_ARM_ModeOfOperation" Type="ModeOfOperation" DataType="byte"/>
- <Output Address="Task 2.Outputs.c_SRD2_ARM_TargetPosition" Type="TargetPosition" DataType="dint"/>
- <Output Address="0x6081:00" Type="ProfileVelocity" DataType="dint"/>
- <Output Address="0x6083:00" Type="ProfileAccel" DataType="dint"/>
- <Output Address="0x6084:00" Type="ProfileDecel" DataType="dint"/>
- <Output Address="0x607D:01" Type="SoftwareLimitMinus" DataType="dint"/>
- <Output Address="0x607D:02" Type="SoftwareLimitPlus" DataType="dint"/>
- <Output Address="0x6098:00" Type="HomingMethod" DataType="byte"/>
- <Output Address="0x607C:00" Type="HomeOffset" DataType="dint"/>
- <Output Address="0x6099:01" Type="HomingVelocity" DataType="dint"/>
- <Output Address="0x6099:02" Type="HomingVelocitySlow" DataType="dint"/>
- <Output Address="0x609A:00" Type="HomingAccel" DataType="dint"/>
- <Output Address="0x6410:02" Type="PeakCurrentLimit" DataType="uint"/>
- <Output Address="0x6410:01" Type="ContinuousCurrentLimit" DataType="uint"/>
- <!--MiscConfig may be used someday if want to reverse direction of motion/-->
- <!--Output Address="0x2008:00" Type="MiscConfig" DataType="uint"/-->
- <!-- 2184.533333 counts/degree -->
- <MotorType>Servo</MotorType>
- <MotorDriveDirection>-1</MotorDriveDirection>
- <!-- +1 = Forward and -1 = Backward-->
- <EncoderFeedbackDirectionMValue>0</EncoderFeedbackDirectionMValue>
- <EncoderFeedbackDirectionNValue>0</EncoderFeedbackDirectionNValue>
- <ReverseLimitSwitchPolarity>1</ReverseLimitSwitchPolarity>
- <ForwardLimitSwitchPolarity>1</ForwardLimitSwitchPolarity>
- <HomeSwitchPolarity>-1</HomeSwitchPolarity>
- <!-- Negative to Home Switch -->
- <!--HomingMethod>21</HomingMethod-->
- <!-- Positive to Home Switch -->
- <HomingMethod>23</HomingMethod>
- <HomingOffset>0</HomingOffset>
- <HomingSpeedHomeSwitch>200</HomingSpeedHomeSwitch>
- <HomingSpeedEncoderIndex>50</HomingSpeedEncoderIndex>
- <HomingAccelDecel>5000</HomingAccelDecel>
- <HomingTimeOut>25000</HomingTimeOut>
- <ProportionalGain>0</ProportionalGain>
- <IntegralGain>0</IntegralGain>
- <DerivativeGain>0</DerivativeGain>
- <IntegralLimit>0</IntegralLimit>
- <ErrorLimit>200</ErrorLimit>
- <VoltageOffset>0</VoltageOffset>
- <ReverseSoftwareLimit>-10000000</ReverseSoftwareLimit>
- <ForwardSoftwareLimit>10000000</ForwardSoftwareLimit>
- <Speed>1000</Speed>
- <Acceleration>5000</Acceleration>
- <Deceleration>5000</Deceleration>
- <FeedforwardVelocity>0</FeedforwardVelocity>
- <FeedforwardAcceleration>0</FeedforwardAcceleration>
- <OffOnError>1</OffOnError>
- </Axis>
- <!-- Copley XE2 2-Axis -->
- <Axis Name="SRD2.Rotation" MotorType="Copley" COEAddress="192.168.0.14.4.1" COEPort="1057" DebugLogging="false">
- <Input Address="Task 2.Inputs.r_SRD2_ROTATION_StatusWord" Type="StatusWord" DataType="uint"/>
- <Input Address="Task 2.Inputs.r_SRD2_ROTATION_ManufStatus" Type="ManufStatus" DataType="udint"/>
- <Input Address="Task 2.Inputs.r_SRD2_ROTATION_ProfileStatus" Type="ProfileStatus" DataType="int"/>
- <Input Address="Task 2.Inputs.r_SRD2_ROTATION_ActualMotorPosition" Type="MotorPosition" DataType="dint"/>
- <Input Address="Task 2.Inputs.r_SRD2_ROTATION_ActualFollowingError" Type="PositionError" DataType="dint"/>
- <Input Address="Task 2.Inputs.r_SRD2_ROTATION_ActualVelocity" Type="ActualVelocity" DataType="dint"/>
- <Input Address="Task 2.Inputs.r_SRD2_ROTATION_ActualTorque" Type="ActualTorque" DataType="int"/>
- <Input Address="0x2A53:00" Type="SoftwareLimitDecel" DataType="udint"/>
- <Input Address="0x687D:01" Type="SoftwareLimitMinus" DataType="dint"/>
- <Input Address="0x687D:02" Type="SoftwareLimitPlus" DataType="dint"/>
- <Input Address="0x6898:00" Type="HomingMethod" DataType="byte"/>
- <Input Address="0x687C:00" Type="HomeOffset" DataType="dint"/>
- <Input Address="0x6899:01" Type="HomingVelocity" DataType="dint"/>
- <Input Address="0x6899:02" Type="HomingVelocitySlow" DataType="dint"/>
- <Input Address="0x689A:00" Type="HomingAccel" DataType="dint"/>
- <Input Address="0x2B53:00" Type="HomeAdjustment" DataType="dint"/>
- <Input Address="0x2910:00" Type="PeakCurrentLimit" DataType="int"/>
- <Input Address="0x2911:00" Type="ContinuousCurrentLimit" DataType="int"/>
- <Input Address="0x6885:00" Type="EStopDecel" DataType="udint"/>
- <Input Address="0x2903:00" Type="VelocityLimit" DataType="udint"/>
- <Input Address="0x6867:00" Type="PositionWindow" DataType="udint"/>
- <Input Address="0x2920:00" Type="FollowingErrorWindow" DataType="udint"/>
- <Output Address="Task 2.Outputs.c_SRD2_ROTATION_ControlWord" Type="ControlWord" DataType="uint"/>
- <Output Address="Task 2.Outputs.c_SRD2_ROTATION_ModeOfOperation" Type="ModeOfOperation" DataType="byte"/>
- <Output Address="Task 2.Outputs.c_SRD2_ROTATION_TargetPosition" Type="TargetPosition" DataType="dint"/>
- <Output Address="Task 2.Outputs.c_SRD2_ROTATION_ProfileVelocity" Type="ProfileVelocity" DataType="dint"/>
- <Output Address="Task 2.Outputs.c_SRD2_ROTATION_ProfileAccel" Type="ProfileAccel" DataType="dint"/>
- <Output Address="Task 2.Outputs.c_SRD2_ROTATION_ProfileDecel" Type="ProfileDecel" DataType="dint"/>
- <Output Address="0x2A53:00" Type="SoftwareLimitDecel" DataType="udint"/>
- <Output Address="0x687D:01" Type="SoftwareLimitMinus" DataType="dint"/>
- <Output Address="0x687D:02" Type="SoftwareLimitPlus" DataType="dint"/>
- <Output Address="0x6898:00" Type="HomingMethod" DataType="byte"/>
- <Output Address="0x687C:00" Type="HomeOffset" DataType="dint"/>
- <Output Address="0x6899:01" Type="HomingVelocity" DataType="dint"/>
- <Output Address="0x6899:02" Type="HomingVelocitySlow" DataType="dint"/>
- <Output Address="0x689A:00" Type="HomingAccel" DataType="dint"/>
- <!-- 58.822222 counts/deg -->
- <MotorType>Servo</MotorType>
- <MotorDriveDirection>-1</MotorDriveDirection>
- <!-- +1 = Forward and -1 = Backward-->
- <EncoderFeedbackDirectionMValue>0</EncoderFeedbackDirectionMValue>
- <EncoderFeedbackDirectionNValue>0</EncoderFeedbackDirectionNValue>
- <ReverseLimitSwitchPolarity>1</ReverseLimitSwitchPolarity>
- <ForwardLimitSwitchPolarity>1</ForwardLimitSwitchPolarity>
- <HomeSwitchPolarity>-1</HomeSwitchPolarity>
- <!-- Positive to Index -->
- <HomingMethod>35</HomingMethod>
- <HomingOffset>0</HomingOffset>
- <HomingSpeedHomeSwitch>2500</HomingSpeedHomeSwitch>
- <HomingSpeedEncoderIndex>2500</HomingSpeedEncoderIndex>
- <HomingAccelDecel>420000</HomingAccelDecel>
- <HomingTimeOut>15000</HomingTimeOut>
- <ProportionalGain>0</ProportionalGain>
- <IntegralGain>0</IntegralGain>
- <DerivativeGain>0</DerivativeGain>
- <IntegralLimit>0</IntegralLimit>
- <ErrorLimit>2000</ErrorLimit>
- <VoltageOffset>0</VoltageOffset>
- <ReverseSoftwareLimit>0</ReverseSoftwareLimit>
- <ForwardSoftwareLimit>0</ForwardSoftwareLimit>
- <Speed>529400</Speed>
- <Acceleration>84000</Acceleration>
- <Deceleration>84000</Deceleration>
- <FeedforwardVelocity>0</FeedforwardVelocity>
- <FeedforwardAcceleration>0</FeedforwardAcceleration>
- <OffOnError>1</OffOnError>
- </Axis>
- <!-- SRD AXES END -->
- </Controller>
- </BeckhoffCfg>
|