6,0$7,&5),2/LQN
BBBBBBBBBBBBBBBBBBB ,QWURGXFWLRQ
BBBBBBBBBBBBBBBBBBB 'HVFULSWLRQ
6,0$7,&,GHQW 5),'V\VWHPV 6,0$7,&5),2/LQN
BBBBBBBBBBBBBBBBBBB 6\VWHPRYHUYLHZ
3ODQQLQJDQ5),2/LQN V\VWHP
BBBBBBBBBBBBBBBBBBB
&RPPLVVLRQLQJDQG BBBBBBBBBBBBBBBBBBB SDUDPHWHUDVVLJQPHQW
2SHUDWLQJ,QVWUXFWLRQV
BBBBBBBBBBBBBBBBBBB 5HDGHUV
BBBBBBBBBBBBBBBBBBB 'LDJQRVWLFV
BBBBBBBBBBBBBBBBBBB 7HFKQLFDOGDWD
BBBBBBBBBBBBBBBBBBB &RQQHFWLQJFDEOH
BBBBBBBBBBBBBBBBBBB 2UGHULQJGDWD
$ BBBBBBBBBBBBBBBBBBB $SSHQGL[
&*&
/HJDOLQIRUPDWLRQ :DUQLQJQRWLFHV\VWHP 7KLVPDQXDOFRQWDLQVQRWLFHV\RXKDYHWRREVHUYHLQRUGHUWRHQVXUH\RXUSHUVRQDOVDIHW\DVZHOODVWRSUHYHQW GDPDJHWRSURSHUW\7KHQRWLFHVUHIHUULQJWR\RXUSHUVRQDOVDIHW\DUHKLJKOLJKWHGLQWKHPDQXDOE\DVDIHW\DOHUW V\PEROQRWLFHVUHIHUULQJRQO\WRSURSHUW\GDPDJHKDYHQRVDIHW\DOHUWV\PERO7KHVHQRWLFHVVKRZQEHORZDUH JUDGHGDFFRUGLQJWRWKHGHJUHHRIGDQJHU
'$1*(5 LQGLFDWHVWKDWGHDWKRUVHYHUHSHUVRQDOLQMXU\Z ZLOOUHVXOWLISURSHUSUHFDXWLRQVDUHQRWWDNHQ
:$51,1* LQGLFDWHVWKDWGHDWKRUVHYHUHSHUVRQDOLQMXU\P PD\UHVXOWLISURSHUSUHFDXWLRQVDUHQRWWDNHQ
&$87,21 LQGLFDWHVWKDWPLQRUSHUVRQDOLQMXU\FDQUHVXOWLISURSHUSUHFDXWLRQVDUHQRWWDNHQ
127,&( LQGLFDWHVWKDWSURSHUW\GDPDJHFDQUHVXOWLISURSHUSUHFDXWLRQVDUHQRWWDNHQ ,IPRUHWKDQRQHGHJUHHRIGDQJHULVSUHVHQWWKHZDUQLQJQRWLFHUHSUHVHQWLQJWKHKLJKHVWGHJUHHRIGDQJHUZLOO EHXVHG$QRWLFHZDUQLQJRILQMXU\WRSHUVRQVZLWKDVDIHW\DOHUWV\PEROPD\DOVRLQFOXGHDZDUQLQJUHODWLQJWR SURSHUW\GDPDJH
4XDOLILHG3HUVRQQHO 7KHSURGXFWV\VWHPGHVFULEHGLQWKLVGRFXPHQWDWLRQPD\EHRSHUDWHGRQO\E\S SHUVRQQHOTXDOLILHGIRUWKHVSHFLILF WDVNLQDFFRUGDQFHZLWKWKHUHOHYDQWGRFXPHQWDWLRQLQSDUWLFXODULWVZDUQLQJQRWLFHVDQGVDIHW\LQVWUXFWLRQV 4XDOLILHGSHUVRQQHODUHWKRVHZKREDVHGRQWKHLUWUDLQLQJDQGH[SHULHQFHDUHFDSDEOHRILGHQWLI\LQJULVNVDQG DYRLGLQJSRWHQWLDOKD]DUGVZKHQZRUNLQJZLWKWKHVHSURGXFWVV\VWHPV
3URSHUXVHRI6LHPHQVSURGXFWV 1RWHWKHIROORZLQJ
:$51,1* 6LHPHQVSURGXFWVPD\RQO\EHXVHGIRUWKHDSSOLFDWLRQVGHVFULEHGLQWKHFDWDORJDQGLQWKHUHOHYDQWWHFKQLFDO GRFXPHQWDWLRQ,ISURGXFWVDQGFRPSRQHQWVIURPRWKHUPDQXIDFWXUHUVDUHXVHGWKHVHPXVWEHUHFRPPHQGHG RUDSSURYHGE\6LHPHQV3URSHUWUDQVSRUWVWRUDJHLQVWDOODWLRQDVVHPEO\FRPPLVVLRQLQJRSHUDWLRQDQG PDLQWHQDQFHDUHUHTXLUHGWRHQVXUHWKDWWKHSURGXFWVRSHUDWHVDIHO\DQGZLWKRXWDQ\SUREOHPV7KHSHUPLVVLEOH DPELHQWFRQGLWLRQVPXVWEHFRPSOLHGZLWK7KHLQIRUPDWLRQLQWKHUHOHYDQWGRFXPHQWDWLRQPXVWEHREVHUYHG
7UDGHPDUNV $OOQDPHVLGHQWLILHGE\pDUHUHJLVWHUHGWUDGHPDUNVRI6LHPHQV$*7KHUHPDLQLQJWUDGHPDUNVLQWKLVSXEOLFDWLRQ PD\EHWUDGHPDUNVZKRVHXVHE\WKLUGSDUWLHVIRUWKHLURZQSXUSRVHVFRXOGYLRODWHWKHULJKWVRIWKHRZQHU
'LVFODLPHURI/LDELOLW\ :HKDYHUHYLHZHGWKHFRQWHQWVRIWKLVSXEOLFDWLRQWRHQVXUHFRQVLVWHQF\ZLWKWKHKDUGZDUHDQGVRIWZDUH GHVFULEHG6LQFHYDULDQFHFDQQRWEHSUHFOXGHGHQWLUHO\ZHFDQQRWJXDUDQWHHIXOOFRQVLVWHQF\+RZHYHUWKH LQIRUPDWLRQLQWKLVSXEOLFDWLRQLVUHYLHZHGUHJXODUO\DQGDQ\QHFHVVDU\FRUUHFWLRQVDUHLQFOXGHGLQVXEVHTXHQW HGLWLRQV
6LHPHQV$* 'LYLVLRQ3URFHVV,QGXVWULHVDQG'ULYHV 3RVWIDFK 151%(5* *(50$1
Abort if error //New read command when is set and no <error> U "Done";; // Ready bit (I10.7) SPBN ende; //Does the address = ? //Address 10 is set (see hardware configuration) L "PAE_Status"; // PII : CMD UW W#16#2; L B#16#2; // Read command ==I ; //Acknowledgement U( ; L "PAA_Adr_L"; // PIQ : Adr-L L "PAE_Adr_L"; // PII : Adr-L ==I ; ) ; SPB adre; // Valid acknowledgment => adopt data SPA Lese; // => Output read command //Save data at current transponder address in data DB adre: L "PAE_Adr_L"; // PII : Adr-L SLD 3; // Expand to 16-bit address T "lwa";; // Memory of the current address (MD3) L "PAE_Data"; // PII : Data (bytes 4-7) AUF "FC1Daten";; // Memory DB (DB100) T DBD ["lwa"]; // Enter read data in DB L "PAE_Adr_L"; // Increment address by 4 bytes + B#16#4; T "FC1Daten".dbadresse; // Save new read address //New read command when is set and no <error> Read: L B#16#2; // Read command T "PAA_CMD"; // PII: CMD //Load the last valid address L "FC1Daten".dbadresse;; // Memory DB (DB100.DBB114) T "PAA_Adr_L"; // PII: Adr-L //Increment read address (address range 112 bytes = 70 Hex for MDS D124) L "FC1Daten".dbadresse;; // Memory DB (DB100.DBB114)
6,0$7,&5),2/LQN 2SHUDWLQJ,QVWUXFWLRQV&*&
&RPPLVVLRQLQJDQGSDUDPHWHUDVVLJQPHQW $SSOLFDWLRQH[DPSOH
Program code //Comments L B#16#6C; >I ; SPB enda; SPA ende; //Read next transponder enda: U "VKE1"; = "Once_flag"; L 0; T "PAA_CMD"; T "lwa"; T "PAA_Adr_L"; T "FC1Daten".dbadresse; SPA ende; // Troubleshooting erro: L "FC1Daten".fehler1; L 1; +I ; T "FC1Daten".fehler1; L "PAA_Adr_L"; T "FC1Daten".err_dbadresse; L "PAA_CMD"; T "FC1Daten".err_cmd; L "PAE_Status"; T "FC1Daten".err_Status; L "PAE_Error_RFID"; T "FC1Daten".err_ErrorRFID; L T T T T U = ende: BE
0; "FC1Daten".dbadresse; "lwa"; "PAA_Adr_L"; "PAA_CMD"; "VKE1"; "Once_flag"; ;
// Check end address (MDS D124 = 112 bytes = 6F hex) // => End when end address reached // => Continue reading in next cycle // When all data has been read // End reading of the transponder // => then deleted address etc. // " // " // => wait for new transponder
// Count errors
// and end reading // Data that led to error // save // " // " // " // " // " // " // Delete addresses/memory bits/memory // " // " // " // " // End reading
6,0$7,&5),2/LQN 2SHUDWLQJ,QVWUXFWLRQV&*&
&RPPLVVLRQLQJDQGSDUDPHWHUDVVLJQPHQW $SSOLFDWLRQH[DPSOH
6KDUHGGDWDEORFN 3URJUDPFRGH&RPPHQWV DATA_BLOCK "FC1Daten" TITLE =ScanUserData AUTHOR : IASCCI FAMILY : RFID NAME : IOLink VERSION : 1.0 STRUCT data : ARRAY [1 .. 112 ] OF BYTE; // Memory for "data" fehler1 : WORD := W#16#0; // Memory for "error" count dbadresse : Byte := B#16#0; // Memory for "dbadresse" err_dbadresse : BYTE ; // Memory address if error occurs err_cmd : BYTE ; // memory Command if error occurs err_Status : BYTE ; // Memory status if error occurs err_ErrorRFID : BYTE ; // memory Error_RFID if error occurs END_STRUCT ; BEGIN fehler1 := W#16#0; // Memory for "error" count dbadresse := B#16#0; // Memory for "dbadresse" err_dbadresse := B#16#0; // Memory address if error occurs err_cmd := B#16#0; // memory Command if error occurs err_Status := B#16#0; // Memory status if error occurs err_ErrorRFID := B#16#0; // memory Error_RFID if error occurs END_DATA_BLOCK
6,0$7,&5),2/LQN 2SHUDWLQJ,QVWUXFWLRQV&*&
5HDGHUV
)HDWXUHV
6,0$7,&5)5,2/LQN
&KDUDFWHULVWLFV $UHDRIDSSOLFDWLRQ
,GHQWLILFDWLRQWDVNVRQDVVHPEO\OLQHVLQKDUVK LQGXVWULDOHQYLURQPHQWV
6WUXFWXUH
5),2/LQNLQWHUIDFH ཱ2SHUDWLQJLQGLFDWRU
6,0$7,&5)5,2/LQN
&KDUDFWHULVWLFV $UHDRIDSSOLFDWLRQ
,GHQWLILFDWLRQWDVNVRQDVVHPEO\OLQHVLQKDUVK LQGXVWULDOHQYLURQPHQWV
6WUXFWXUH
5),2/LQNLQWHUIDFH ཱ2SHUDWLQJLQGLFDWRU
6,0$7,&5),2/LQN 2SHUDWLQJ,QVWUXFWLRQV&*&
5HDGHUV )HDWXUHV
6,0$7,&5)5,2/LQN
&KDUDFWHULVWLFV $UHDRIDSSOLFDWLRQ
,GHQWLILFDWLRQWDVNVRQDVVHPEO\OLQHVLQKDUVKLQ GXVWULDOHQYLURQPHQWV
6WUXFWXUH
56RU56LQWHUIDFH ཱ2SHUDWLQJLQGLFDWRU
6,0$7,&5)5,2/LQN
&KDUDFWHULVWLFV $UHDRIDSSOLFDWLRQ
,GHQWLILFDWLRQWDVNVRQDVVHPEO\OLQHVLQKDUVKLQ GXVWULDOHQYLURQPHQWV
6WUXFWXUH
56RU56LQWHUIDFH ཱ2SHUDWLQJLQGLFDWRU ི$QWHQQDFRQQHFWRU0
1RWH 5HDGHUUHTXLUHVH[WHUQDODQWHQQDV 1RWHWKDWWKH5)5UHDGHULVGHVLJQHGIRURSHUDWLRQZLWKH[WHUQDODQWHQQDVDQGFDQRQO\ EHRSHUDWHGLQFRQMXQFWLRQZLWKWKHDQWHQQDV$17$17$17RU$17
6,0$7,&5),2/LQN 2SHUDWLQJ,QVWUXFWLRQV&*&
5HDGHUV 3LQDVVLJQPHQWRIWKH5)UHDGHUZLWK,2/LQNLQWHUIDFH
6,0$7,&5) 5,2/LQN
&KDUDFWHULVWLFV $UHDRIDSSOLFDWLRQ
,GHQWLILFDWLRQWDVNVRQDVVHPEO\OLQHVLQKDUVK LQGXVWULDOHQYLURQPHQWV
6WUXFWXUH
5),2/LQNLQWHUIDFH ཱ2SHUDWLQJLQGLFDWRU
3LQDVVLJQPHQWRIWKH5)UHDGHUZLWK,2/LQNLQWHUIDFH 7DEOH
3LQ
3LQ
$VVLJQPHQW
'HYLFHHQG S SLQ0
9'&
UHVHUYHG
*1'
,2/LQNGDWDVLJQDORUVZLWFKLQJRXWSXWSRUWLQ6,2PRGH
7KHSLQPXVWQRWEHXVHG
6,0$7,&5),2/LQN 2SHUDWLQJ,QVWUXFWLRQV&*&
5HDGHUV 'LVSOD\HOHPHQWVRIWKH5),2/LQNUHDGHUV
'LVSOD\HOHPHQWVRIWKH5),2/LQNUHDGHUV $VWKHGLVSOD\HOHPHQWWKHUHLVDQ/('RQWKHUHDGHU
/('GLVSOD\
2SHUDWLQJVWDWH
RII
1RSRZHUVXSSO\RQWKHUHDGHU
5HG
*UHHQ