Home

C-Macro Builder

image

Contents

1. Partial Tag Fill Error Partial Read Failure espo Partial Write Failure m Str Tag Mot Found LL General S dial Error Mt Fe vllt Sento nitore it ti ii n e ie e e The Following Error o Partial Tag Fill Error eni n KS Partial Read Failure canta a O o Tag Not Found o Tag Not Found Legacy o General Syntax Parameter Error These two options allow branching based on errors generated by a previous RFID command Tag Search Tag Read ID Tag Read Data Tag Write Data or Tag Fill Data 2 1 18 2 Compare Data On the right of the Conditional Branch Options dialog box is a Compare Data data entry box for entering a Hex with ABCD string of Compare Data as well Spaces as fields for Compare Start Offset and Compare Length fe ASCII Bytes Ran l Compare Start Offset fo The Compare Start Offset is the offset within the last read result Compare Length Bytes f4 not a tag address offset o ae Therefore if you just read 8 bytes from address 100 of the tag and you want to compare the last two of those bytes you would set the Compare Start Offset to six and the Compare Length to two NOTE All comparisons such as Less Than and Greater Than are compared byte for byte Therefore the string ABCD which has the actual HEX byte values of 41 42 43 44 is Less Than the string abca which has the actual HEX byte values of 61 62 63 64
2. e Read Length Bytes 0 to 247 depending on tag length e Duplicate Read Delay 0 to 255 measured in seconds e Include Tag ID with Data placing a check in this box will instruct the controller to retrieve the tag ID number in front of any read data EXAMPLE In the following example 10 bytes are read starting at tag address 0 If the first five bytes equal START then the macro branches to the Label Start_Continuous_ Read which places the controller into Continuous Read mode where it will read 100 bytes from tag address 0 The continuous read operation will begin after the macro terminates Macro DAEMS HF and Demo ApplicationsC Macro Builder Example Macros Start Continuous Read MS H Start Tag Read Length 10 Address 0 Timeout 2000ms IF last read Length 5 Offset 0 START then BRANCH to Start Continuous Head END BEEN oe ee RE Start Continuous Read Data Lenath 100 Addres 20 Delay Ime 1 2 1 8 Stop Continuous Read Data lt Stop Continuous Read Data This command task instructs the controller to stop continuous reading It is typically used to halt a continuous read operation when a controller is configured to enter continuous read mode upon power up or reset Note that inserting a Stop Continuous Read command task into a macro that already has a Start Continuous Read command task will cancel out the continuous read operation as a macro must conclude before the initial
3. C ColorT agDemoz MSF Length 55 200 Left H Start Disable Macro Responses Except Errors Tag Read Length 6 Address 0 Timeout 2000ms IF last read Length 3 Offset 0 RED then BRANCH to ON RED IF last read Lenath 4 Offset 0 BLUE then BRANCH to ON BLUE Set Hub Outputs 3 END Ot ON_RED Ar Set Hub Outputs 1 END it ON_BLUE Ee Set Hub Outputs 2 END EXAMPLE 2 The following example illustrates a common programming error In this example six bytes from a tag are read If the first bytes of the tag do not match RED or BLUE Hub output 3 is set However macro execution does not stop after Hub output 3 is set and the macro will continue executing passing over the ON REI label and setting Hub output 1 before ending An Ena command task should have been inserted after the Set Hub Outputs 3 command task to stop the macro at that point Macro C Colorl agdemo2 MSF Length 53 202 Left H Start Disable Macro Responses Except Errors Tag Read Length 6 Address 0 Timeout 000m s IF last read Length 3 Offset 0 RED then BRANCH to UN RED IF last read Length 4 Offset 0 BLUE then BRANCH to ON BLUE Set Hub Outputs 3 H ON RED Set Hub Outputs 1 H ON_BLUE Set Hub Outputs 2 END AICE exe ESCORT MEMORY SYSTEMS A Datalogic Group Company ems 170 TECHNOLOGY CIRCLE Scotts VALLEY CA 95066 USA TELEPHONE 831 438 7000 FAX
4. Month Day Year ASCII Format 2 DD MM beer HH MM SS oO Hour Minute Second ASCII Format 3 AMM DD HH MM S5 C e ASCII Format 2 Start Address lo Day Month Year Hour Minute Second Timeout ms 2000 e ASCII Format 3 _Cancel Year Month Day Hour Minute Second The editable options for this command task are e Start Address 0 to 65535 depending on tag length e Timeout ms 0 to 65535 The Start Address identifies where the timestamp will be written on the tag TIMESTAMP NOTES e To set the date and time of the controller to that of your host computer execute CBx Command 0x4E ABx Fast Command 0x51 or use either version of the Cobalt HF Dashboard software utility e Anytime power is cycled to an RFID controller the date and time will need to be reset as these units do not contain a battery backed up clock e HF 0405 Series controllers use a software based clock Timing accuracy is dependent on the controller s microprocessor activity and not on a hardware implemented real time clock All other Cobalt series RFID controllers have hardware implement real time clocks 2 1 12 Tag Lock Memory Blocks 6 Tag Lock Memory Blocks This command task allows the user to write protect or lock a contiguous segment of tag memory from being overwritten 15008 compliant DID tags 15693 compliant RFID tags only SEU nti Collision Mode Famil Cade mo Depending on the architecture of Single Slot j the tag used a bl
5. Failed Cut amp H Passed 123 Transmit Custom String Batch Passed em O tt Failed Transmit Custom String Batch Failed END Compiled Macro Faw Hex 00 02 E6 00 00 04 F1 00170 00 00 07 05 00 00 00 02 07 DO 00 07 E4 00 27 02 00 21 32 00 07 E4 00 38 02 00 33 34 00 00 00 OD EE 4261 4 63 69 20 50 61 3 73 69 64 00 00 00 0D EE 42 61 4 63 69 20 46 61 696C 65 64 00 00 2 1 21 Set Hub Outputs A Set Hub Quiputs his command task causes the controller to send a packet to a Subnet16 Hub instructing it to set enable one or more of the four Hub Outputs This allows a macro to directly control external hardware such as conveyors diverters stack lights etc When the item is inserted into a Set Hub Outputs Options macro the Set Hub Outputs NS ee arene i i i i Bl ML LIDL EI nu LIDL EES dispiayed Set Hub Output E SetHub Output D i Any or all of the four Hub Outputs Apply Cancel may be set If a Set Hub Output checkbox is not checked it will NOT be set when this command task is executed therefore Hub Outputs already set by some other means will remain set Only those Hub Outputs explicitly set using this command task will be affected EXAMPLE In the following example a tag ID is read If the first digit of the ID is less than 05 then Hub Output A is set If the first digit is greater than 08 then Hub Outputs B C and D are set Macro DAEMS HF and Demo Applications Macro Builder E
6. continuous read operation can take place When this command task is executed the controller will stop operating in Continuous Read Mode When the macro terminates the controller will not resume continuous reading Always stop continuous read operations before executing another tag command task There are no editable items for this command task therefore when the item is inserted into a macro no dialog box is displayed EXAMPLE In the following example 10 bytes are read from tag address 0 If the first four bytes equal STOP then the macro branches to the Label Stop _Continuous_Read and the controller is instructed to stop Continuous Read Mode Macro DEMS HF and Demo 4 D GG H Stop_Continuous_Head x H Start Tag Read Length 10 Address 0 Timeout 2000mg IF last read Length 4 Offset 0 STOP then BRANCH to Stop Continuous Head END Stop Continuous Read END 2 dno Tag Write Data Tag Write Data This command task instructs the controller to perform a Tag Write Data command When this command task is Tag Write Data Options executed and the specified datais p tite Data written a Write Succeeded Hex with APCD response is sent to the host If the Spaces tag write fails the appropriate ASCII error message is sent to the host l When the item is inserted into a oo macro the Tag Write Data Start Address U Options dialog box is di
7. sesso When this command task item is inserted into a macro the Custom Header Terminator Options Custom Header T erminatar dialog box is displayed WEE Header EN IW Select one of the five response 2 Spaces Header Length Bytes type options and then enter your ASCII custom header and terminator Terminator zz data in the provided fields The two length parameters will be Terminator Length Bytes 2 automatically populated based on the number of bytes entered into Sa Communication Hn Apel Cancel their corresponding fields See Section 2 1 2 for descriptions of the five response types NOTE When using a custom header and or terminator the normal ABx Fast header and terminator bytes will be replaced by user defined data Therefore users will no longer be able to communicate with the controller via the Cobalt HF Serial Dashboard software utility 2 1 27 Macro Response Options Legacy This command task allows the user to specify when and if they want macro responses delivered Macro Response Options Legacy to the host This command task is a legacy hold over feature from previous Macro Response Legacy Options versions of C Macro Builder It is Enable All Macro Responses e recommended that users utilize Disable Macro Responses Except Errors the Macro Resp onse Op di S Disable All Macro Responses Silent Model 7 command task instead as it in
8. 00 00 0003 EA 0007 00 UU EXAMPLE 4 In example 4 if the attempted Tag Read command task fails for any reason the macro will execute the Conditional Branch command task and will branch to the Label Error_Occurred thereby setting Output A on the Hub If no error occurs the macro will end normally after the Tag Read Notice that the On Error Continue Macro command task is required in this example otherwise the macro would end on an error and not set Hub Output A Macro D VEMG HF and Demo Applications C Macro Builder Example Macros Error Occurred Set Hub Output 4 MSF Length 27 228 Left H Start On Error Continue Macro Tag Read Length 20 Address 100 Timeout 2000mes IF last AF command caused an error then BRANCH to Error Occurred END H Error_Occurred Set Hub Outputs 4B END d t A Compiled Macro Raw Hes 00 02 EG 00 00 07 05 00 64 0014 07 DO OO OSE 00740000 00 03 EA 00 03 00 OD 2 1 19 Transmit Last Response LA Transmit Last Response his command task causes the last result response ofa Tag Search Tag Read ID Tag Read Data Tag Write Data or Tag Fill Data operation to be sent or re sent to the host This command task is typically used when a previously inserted Macro Response Options command task has disabled one or more responses thereby allowing the macro to compare the results before determining if the result should actually be sent back to the host Thi
9. 831 438 5768 WEBSITE WWW EMS RFID COM EMAIL INFO EMS RFID COM
10. Data Options dialog box will be Read Length Bytes f H Timeout ms 2000 You then specify values in the fields of the dialog box in this case the Start Address Read Length and Timeout values for the Tag Read Data command task Cancel Note that certain command tasks such as Stop Continuous Read Data and Transmit Last Response for example have no editable parameters and therefore do not have associated popup options dialog boxes Once you have entered your values click Apply to close the command task options dialog box and insert the command task into the Macro Workspace After a command task has been inserted the parameter values may be edited later by double clicking the line item Individual items can also be repositioned within the Macro Workspace by selecting and dragging them with the mouse When a compiled macro program is executed by an RFID controller macro execution begins at the top and each command task is executed in sequence During execution the controller will send a response back to the host after each command task is completed unless you specify that a response not be generated by the controller There are also various branching command tasks that will be explained later that can be used to redirect the execution of commands to other parts of the macro While building a macro the total length of the compiled string is displayed in the title bar above the Ma
11. Likewise the string Caf 43 61 74 is Greater Than the string CAT 43 41 54 2 1 18 3 Branch to Label Lastly there is a Branch to some ee CT m tten pes TF oT Labefl field that identifies the label Sat to which the macro will branch if Branch to Label star the condition is met Apply Cancel If the Label does not actually exist at the time you insert this command task a warning message will be displayed next to the command item in the Macro Workspace that reads NOT FOUND This is an indication that C Macro Builder does not yet know where you want to branch you will still need to insert a label with the appropriate name NOTE With all branch command tasks care should be taken not to cause macros to enter infinite loops unless that is the desired behavior EXAMPLE 1 In example 1 eight bytes are read from a tag If the first two bytes are Less Than the string XY then the macro will use the Conditional Branch command task to branch to the Label Too_Low in which case Hub Output A is set otherwise the macro ends Macro ID VEMD HF and Demo Applications C Macro_Builder Example Macros Too Low Set Hub Output AMET Length 226 Left H Start ge TagRead Length 8 Address 0 Timeout 2000m a gt IF last read Length 2 Offset 0 a then BRANCH to Too Law Cut G H Too_Low Ar Set Hub Outputs 44 eno Compiled Macro Raw Hex 00 07 05 00 0
12. Macro Response Options ACKS No DATA Mo ERRS No NTAGS No STRINGS No On Error Continue Macro Tag Read ID Timeout 2000ms IF last HE command caused a Tag Not Found error then BRANCH to On Error Transmit Last Response END H On_Error END EXAMPLE 3 In the following example this command task is used twice The first instance silences all macro responses before the first 5 bytes of a tag are read If those 5 bytes are less than 44444 then the macro branches to the Label Togo Low and then ends If the five bytes are greater than 44444 then the Set Output Options command task is executed which re enables all macro responses and the tag ID is read and returned to the host Macro D VEMS HF and Demo Applicatione LC Macro_Builder E sample Macros Branch_if Too Low MSF Lenath 42 213 Lett H Start All responses are disabled Set Macro Response Options ACKS No DATA No ERRS NO NTAGS NO STRINGS No Tag Read Length 5 Address 0 Timeout 000m s IF last read Length 5 Offset 0 lt 44444 then BRANCH to Too Low All responses are enabled Set Macro Response Options ACES Yes DATA Yes ERAS res NTAGS Yes STRINGS Yes Tag Read ID Timeout 000ms END H Too Low END This command task may be inserted anywhere in a macro and when encountered places the macro into the specified macro response mode from that point on CS WE Error Behavior Options This command task allows the user choose whether to force
13. Mode The Anti collision Mode parameter controls the tag reading algorithm used to achieve the fastest reading speed for the number of tags expected in RF range at any given moment This parameter helps the controller avoid data collisions when simultaneously reading multiple tags The choices for the Anti collision Mode parameter are Single Slot or Multi Slot e Single Slot Setting this parameter to Single Slot utilizes a single time slot under which the requested data from all tags is transferred to the controller as soon as it becomes available This setting can result in faster tag read performance when only a few tags are expected in the RF field e Multi Slot Setting this parameter to Multi Slot implements a system of 16 time slots To avoid data collisions when the controller encounters multiple tags simultaneously data requested from each tag is transferred to the controller only during the time slot that matches a specific pattern in the tag ID number Family Code AFI The Family Code parameter 0x00 OxFF can be used in multi tag commands to specify a subset of tags when many are identified simultaneously in RF range The parameter allows the user to filter tags based on a pre written value stored at a special tag location tag For example if the Family Code value is set to one 0x07 only those tags with the pre written Family Code value of 0x01 will respond to the given command When a Family Code value of zero 0x00 i
14. box which displays the information in hex format as it would appear after the macro is compiled 1 1 1 Building Macros To build a macro command tasks are dragged one at a time from the Command List and dropped onto the desired location in the Macro Workspace ER File View Display Options About Lea s Available Commands Macro DEMS HF and Demo ApplicationsSC Macro BuildersExample Macros Pass Fail MSF Length 2 253 Left Macro Response Options Error Behavior Options Tag Read Data 430 Tag Search D Tag Read ID aa Tag Read Data Start Continuous Read Data de stop Continuous Head Data Tag Write Data Tag Fill Data l Tag Write Timestamp e Tag Lock Memory Blocks a Multi Tag Inventory Mut Tag Search 4 Multi T ag Read Data All Mun Tag write Data All Branch e Conditional Branch wv Transmit Last Response 123 Transmit Custom 5 tring A Set Hub Outputs A Clear Hub Outputs A Execube Macro ZS Wait E Note 2 Custom Header Terminator Compiled Macro Faw Hex 00 00 P Macro Response Options Legacy End Figure 1 2 Dragging a Tag Read Data Command onto the Macro Workspace When a command task is dragged and dropped onto the Macro Workspace a popup options dialog box will appear allowing the user to enter specific values for that command task For example if you drop a Tag Tag Read Data Options Read Data command task onto Start Address 0 the workspace the Tag Read art Address
15. options for this command task are e Start Address 0 to 65535 depending on tag length e Read Length Bytes 1 to 247 depending on tag length e Timeout ms 0 to 65535 EXAMPLE In the following example the Tag Read Data command task is used to read 10 bytes from a tag starting at address 0 and the result is transmitted back to the host If the first 5 bytes read HELLO then Hub output 1 is set otherwise the macro ends Macro C example MSF Length 30 225 Lett Tag Read Length 10 Address 0 Timeout 2000m gt IF last read Length 5 Offset 0 HELLO then BRANCH to OM HELLO END tt ON_HELLO N Set Hub Outputs 11 END bal Start Continuous Read Data Start Continuous Read Data This command task instructs the controller to enter Continuous Read mode When this command task is executed the controller will begin US operating in Continuous Read Start Address lo Mode after the macro is finished Read Length Bytes fi This command task is not used to read actual data for processing Duplicate Tag Delay 1 within a macro it only instructs Include Tag ID with Data IT the controller to begin continuous reads once the macro terminates Cancel When the item is inserted into a macro the Tag Continuous Read Data Options dialog box is displayed The editable options for this command task are e Start Address 0 to 65535 depending on tag length
16. or Tag Fill Data The Conditional Branch command task requires that a Label exists at the destination of the branch This is the equivalent of an If X occurs then go to Y command When the item is inserted into a macro the Conditional Branch Options dialog box is displayed Conditional Branch Options f Compare Data e Hex with ABCO aj ar paces Branch Condition Branch IF the last READ result ls LESS THAN the Compare Data Is GREATER THAN the Compare Data EQUAL TO the Compare Data C ls NOT EQUAL TO the Compare Data CONTAINS the Compare Data Ignore Offset OF IF the previous READ AW RITE caused Any Error The Following Error Tag Not Found fe ASCII l Compare Start Offset lo Compare Length Bytes D Branch to Label Start Cancel HF Cobalt 2 06 or newer only 2 1 18 1 Branch Conditions On the left of the Conditional Branch Options box are seven types of branch conditions Branch IF the last READ result e ls LESS THAN the Compare Data e ls GREATER THAN the Compare Data e Is EQUAL TO the Compare Data e ls NOT Equal to the Compare Data e CONTAINS the Compare Data Ignore Offset These five options allow branching based on the results of a previous Tag Read Data or Tag Read ID command OR IF the previous READ WRITE caused e Am Error OR IF the previous READ WRITE caused Any Error The Following Error Tag Not Found
17. sample Macros Set Hub Outputs MSF Length 37 218 Left H Start B t 6 N GG R A D This macro demonstrates the Set Hub Outputs command task Tag Read ID Timeout 2000m8 IF last read Length 1 Offset 0 lt 5 then BRANCH to LessThanFive IF last read Length 1 Offset 0 8 then BRANCH to GreaterThanEight END H Less ThanFive Set Hub Outputs A END GreaterT hant wt Set Hub Outputs 1B C D EMD 2 1 22 Clear Hub Outputs Clear Hub Outputs This command task causes the controller to send a packet to a Subnet16 Hub instructing it to clear disable one or more of the four Hub Outputs This allows a macro to directly control external hardware such as conveyors diverters stack lights etc co i Clear Hub Outputs Options Gg When the item is inserted into a macro the Clear Hub Outputs Clear Hub Output Clear Hub Output C Options dialog box is displayed Clear Hub Output B Jh Clear Hub Output DJ Cancel Any or all of the four Hub Outputs may be cleared If a Clear Hub Output checkbox is not checked it will NOT be cleared when this command task is executed Only those Hub Outputs explicitly cleared using this command task will be affected EXAMPLE In the following example a tag ID is read If the first digit of the ID is less than 05 then Hub Output A and B are cleared If the first digit is greater than 08 then Hub Outputs C and D are cleared Macro DEMS HF an
18. the macro to halt on error or allow it to continue on error 2 Error Behavior Options When this item is inserted into a macro the Error Behavior Error Behavior Options Options dialog box is displayed On Ener Halt Macro t By default when a macro begins On Error Continue Macro Ze Apply Cancel all errors generated during execution cause the macro to stop at that point This includes tag not found errors On Error Halt Macro When an error is encountered with this command task option selected the macro will stop execution immediately when an error occurs On Error Continue Macro When an error is encountered and this command task option is selected the macro will not stop execution after an error and will continue on to the next instruction EXAMPLE This command task is used to allow the Macro C example MSF Length 15 240 Lett macro to continue even if the Tag Read ID command task fails Without inserting this command task a Tag Not Found error would cause the macro to On Error Continue Macro Tag Read ID Timeout 2000ms immediately end and the Execute Execute Macro 2 Current Macro Ends Macro 2 command task would not be END performed 2 1 4 Tag Search Tag Search This command task instructs the RFID controller to search for the presence of a tag in its RF field without performing an actual read or write operation The resulting response eith
19. you to name and save the compiled macro file Compiled macro files are saved with the file extension MACRO Save in IS Example Mactos D ef ES E Transmit Tag ID MSF UnTest MSF WaitTest2 MSF WaitTest MSF Write amp Read Timestamp Me write read compare loop E LackBlock MSF Pass Fail MSF Red Blue Tag Compare MSF Start Continuous Read MSF Stop Continuous Read MSF TimeStamp MSF eg E File name Pass Fail MSF Save Save as type Macro Source Files MOF Cancel Li alx Save in E Example Macros ge ct ES E LockBlock MACRO E R W R Macro MACRO Pass Fail MACRO Start Continuous Read MACRO PROGRAM BURM IN TAG MACRO Stop Continuous Read MACRO read tag 12bytes MACRO Timestamp MACRO read write read macro source OK MACRO Transmit Tag ID MACRO Red_Blue_Tag_Compare MACRO UnTest MACRO Save File name Save as type Compiled Macro Files MACRO Cancel LOADING MeaCROS INTO AW RFID CONTROLLER The C Macro Builder utility itself only builds and compiles macros Loading macros into an EMS RFID controller is accomplished through the use of either the Cobalt HF TCP IP Dashboard or the Cobalt HF Serial Dashboard depending on the type of communications interface your application is incorporating Both versions of the Dashboard are available online at www ems rfid com Refer to the documentation included with the Dashboard for instruction
20. 0 00 0S OF DO 00 Or E2 0014 02 UU 56 59 00 00 00 03 EA 00 01 00 UU EXAMPLE 2 In example 2 eight bytes are read from a tag If the first 5 bytes are equal to the byte values 07 02 03 04 05 the macro will use the Conditional Branch command task to branch to the Label MATCH in which case Hub Output A is set otherwise the macro ends Macro DAEMS HF and Demo Applications4C Macro Builder E sample Macros4 Match Set Hub Output SF Length 30 225 Left H Start TagReadfLength 8 Address 0 Tineout 2000ms amp IF last read Length 5 Olfset 0 1 2345 then BRANCH to Match sn de H Hatch Ae Set Hub Outputs 44 eno Compiled Macro Faw Hex 00 07 05 00 000008 07 DO 0O QA E4 00 17 05 00 01 02 03 04 05 00 00 00 03 EA 0001 00 OU EXAMPLE 3 In example 3 100 bytes are read from a tag If the string FAILURE is found anywhere in the previous 100 byte read the macro will use the Conditional Branch command task to branch to the Label FOUND FAILURE and will then set Hub Output A otherwise the macro ends Macro D SEMS HF and Demo Applications C Macro BuildersE sample Mactos F allure Set Hub Output 4 M5F Length s2 223 Lett H Start Tag Read Length 100 Address 0 Timeout 2000me IF last read CONTAINS FAILURE then BRANCH to Found Failure END im Found_Failure Af Set Hub Outputs A eno Compiled Macro Raw Hex 00 07 05 00 00 00 64 07 DO OO OL E4 001907 EE 46 41 49 40 55 52 45
21. 1 69 6C 65 64 00 00 l USER S GUIDE How to Use Escort Memory Systems C Macro Builder Software Utility improvements to its products and or documentation without prior notification Escort Memory Systems shall not be liable for technical or editorial errors or omissions contained herein nor for incidental or consequential damages resulting from the use of this material l scort Memory Systems reserves the right to make modifications and The text and graphic content of this publication may be used printed and distributed only when all of the following conditions are met e Permission is first obtained from Escort Memory Systems e The content is used for non commercial purposes only e Copyright information is clearly displayed Copyright 2007 Escort Memory Systems All Rights Reserved e The content is not modified The following are trademarks and or registered trademarks of Escort Memory Systems a Datalogic Group Company Escort Memory Systems and the Escort Memory Systems logo Subneti6 Cobalt HF RFID AT WORK C Macro C C Macro Builder CBx and RFID Dashboard Third party product names mentioned herein are used for identification purposes only and may be trademarks and or registered trademarks of their respective companies C Macro Builder User s Guide DC P N 17 1325 REV 02 05 07 C Macro Builder software is provided by Escort Memory Systems EMS as is and any express or im
22. 3 E Leg E In RR AA 27 2 1 13 4 TIMED MS EE 28 2 1 14 Multi Tag Search i 29 2 1 14 1 ung el e ie Reie EE 29 2 1 14 2 Fall OC Allinea e anti 29 2 1 14 3 EDET iii 29 2 1 14 4 Timeout MS PR I 30 2 1 15 Multi T ag Read Data UE 31 2 1 15 1 Anti Collision Mode 31 2 1 15 2 AE PSS liceale 31 2 1 15 3 Read EE 31 2 1 15 4 FAVA ele AF E 31 2 1 15 5 WA n RR A FARA 32 2 1 15 6 WE RR A 32 2 1 15 7 Include Tag ID with Data CRECKbOX e 32 2 1 16 VI ERE EE 33 2 1 16 1 EE EE 33 2 1 16 2 nl ee el Ree ER 2 1 16 3 el Seel 33 2 1 16 4 Write Length Bytes A 33 2 1 16 5 Mme WEE 33 2 1 16 6 Famy God Abbina aa nti retta 34 2 1 16 7 EC RR RR DAI 34 N N SNINININNINININNN sch sch sch AI AL IL sch sch LD A 1 17 1 18 2 1 18 1 2 1 18 2 2 1 18 3 19 20 21 22 23 24 25 26 320 28 Branch Conditional Branch Branch Conditions Compare Data Branch to Label Transmit Last Response Transmit Custom String Set Hub Outputs Clear Hub Outputs Execute Macro C Macro Builder is a software tool designed by EMS that allows the user to quickly and easily create RFID Command Macros which are simple yet powerful sets of instructions that can be loaded into EMS Cobalt and HF 0405 Series RFID controllers When executed a macro can instruct an RFID controller to perform various operations Macros can instruct the controller to perform any of the f
23. ESCORT MEMORY SYSTEMS C MACRO BUILDER Software Utility for Cobalt HF RFID Devices H Pass Fail MSF C Macro Builder File View Display Options About Available Commands all Macro O SEMS HF and Demo Applications C Macro Builder E samp Label H Start Macro Response Options A Error Behavior Options 4 Tag Search Tag Read ID Tag Read Data gen Start Continuous Read Data On Error Continue Macro Set Output Options ACKS No DATA No ERRS NOo NTAGS NO STRINGS No Tag Read Length 2 Address 0 Timeout 2000ms IF last read Length 2 Offset 0 1 2 then BRANCH to Passed IF last read Length 2 Offset 0 3 4 then BRANCH to Failed END ga stop Continuous Read Data Tag Write Data T ag Fill Data ak Tag Wrte Timestamp e Tag Lock Memory Blocks 8 Mult Tag Inventory 430 Multi Tag Search e Multi T aq Read Data All Mut Tag Write Data All w Branch amp Conditional Branch yf Transmit Last Response 123 Transmit Custom String aw Set Hub Outputs N Clear Hub Outputs A Execute Macro Wait B Mote Compiled Macro Raw Hex DU 02 EG 00 00 04 F1 00 UU 00 OU OF 05 00 00 00 02 OF DO 00 OF EA OU 27 02 00 al 7 Custom Header T erminator 01 02 00 0F E4 00 38 02 00 03 04 00 00 00 OD EE 4261 4 6369 205061 73 73656400 0000 00 EE 4261 T H Passed Transmit Custom String Batch Passed END H Failed Transmit Custom String Batch Failed END z t KA Di ae ee E 4 63 68 20 46 6
24. MPLE 1 In the following example the command task Macro Response Options is inserted into the macro and all response options are enabled The controller will perform four different command tasks and will return four separate response messages to the host Macro D VEMG HF and Demo 4pplications C Macro BulderE sample MacrostAll Macro Responses MSF Length 35 220 Left H Start ff In this macro all responses are enabled Set Macro Response Options ACES Yes DATA Yes ERAS Yes NTAGS Yes STRINGS Yes Tag Search Timeout 2000ms Tag Read ID Timeout 2000ms Tag Read Length 10 Address 0 Timeout 2000me Tag Write Timestamp Format 0 Address 11 Timeout 2000m END B G if d d EXAMPLE 2 In the following example the command task Macro Response Options is inserted into the macro and all response options are disabled It is used to hide all macro responses including Tag Not Found errors If a tag ID is successfully read it will be returned to the host via the Transmit Last Response command task If no tag is present or if the tag ID is not successfully read the macro will branch to the Label On_Error and will then end Macro D SEMS HF and Demo Applcatons Macro BudderE sample Macros Transmit Tag ID MSF Length 28 227 Left H Start dd inthis macro all responses are disabled ff Only successfully read tag Ds will be returned And any Tag Not Found errors will be hidden Set
25. R The C Macro Builder user interface window is divided into three panes the Command List the Macro Workspace and the Macro Data pane EL abel a Macro Response Options Fa On Error Continue Macro Sch Error Behavior Options 2A Set Output Options ACK S No DATA No ERRS No NTAGS NO STRINGS No 40 Tag Search Tag Read Length 2 Address 0 Timeout 2000ms d Tag Read ID K IF last read Length 2 Offset 0 1 2 then BRANCH to Fassed Tag Read Data IF last read Length 2 Offset 0 3 4 then BRANCH to Failed Start Continuous Read Data i END Stop Continuous Read Data H Passed Tag Write Data l Transmit Custom String Batch Passed Tag Fill Data END i 04 Failed Transmit Custom String Batch Failed END F Multi T ag Read Dal All Mun Tag Write Data All lt gt Conditional Branch Transmit Last Respomse 23 Transmit Custom Sich Set Hub Outputs dr Clear Hub Outputs A Execute Macra r Wail i 69 6C 65 64 00 00 Figure 1 1 C Macro Builder User Interface e The pane on the left is the Command List which displays an inventory of available command tasks for use in building a macro Each Command List item will be addressed individually later in this guide e The large pane on the right is the Macro Workspace This is the area where the macro is built Each line represents one command task e Below the Macro Workspace in the lower right corner is the small Macro Data
26. cludes the same features as the Apply Cancel Response Options command task yet provides enhanced functionality When the item is inserted into a macro the Macro Response Options dialog box is displayed e Enable All Macro Responses e Disable Macro Response Except Errors e Disable All Macro Responses Silent Mode NOTE This command task is used by HF 0405 Series RFID controller instead of the Macro Response Options command task which is not supported by HF 0405 controllers All other Cobalt controllers can use either response option command 2 1 28 End Bend The End command task causes a macro to immediately terminate This command task can be inserted in a macro at any point where macro execution is to stop There are no editable items for this command task therefore when the item is inserted into a macro no dialog box is displayed C Macro Builder automatically inserts an implied Ena command task at the conclusion of every compiled macro regardless of weather or not one has been manually inserted in the macro source code Still it is recommended that users place an End command task at the end of all macros EXAMPLE 1 In the following example the first 6 bytes of a tag are read If the first 3 bytes RED then Hub output 1 is set and the macro ends If the first 4 bytes BLUE then Hub output 2 is set and the macro ends Otherwise Hub output 3 is set and the macro ends Macro
27. cro Workspace area This status information allows you to gauge how much physical space remains for the particular macro up to a maximum of 255 bytes ls mee A S nt mmm A OT TON db a den A9 TI i a e mm SR elt vn dien eel ne an ale mg OE ee en wt Ben fl pen mm d VEER wenn Me d n er a _ rr Figure 1 3 Macro Workspace Status Information Saving Macros When saving a macro C Macro Builder compiles the list of command tasks into a string of byte values as the macro is being created This string of bytes can be seen below the Macro Workspace in the Macro Data box This display area can be enabled or disabled from the Display Options menu AB Wie Macro 1 Command 02 02 00 10 70 01 00 0006 00 07 05 00 DU 00 01 07 DO UU 00 03 Figure 1 4 The Macro Data Box To save the source file of a macro the file that C 94 Pass Fail MSF C Macro Build Macro Builder uses to create the compiled re eeneg K File view Display Options About macro click Save Macro As in the File menu E Neu Macro Ctrl h Open Macro Ctrl 0 We ave Macro ds rink Ctrl F Print Setup Exit nt Se ei nin nai he ah en iei EE EE E ah miniin a A Save Ae dialog box will be presented in which you can name the macro source file Macro Source Files are saved with the file extension MSF Immediately after saving the macro source file MSF C Macro Builder will prompt
28. d Demo 4pplcationssl Macro Builder Example Macros Clear Hub Outputs MSF Length 27 218 Lett Ht Start B This macro demonstrates the Clear Hub Outputs command task Tag Read ID Timeout 2000ms gt IF last read Lenath 1 Offset 0 lt 5 then BRANCH to Less ThanFive E IF last read Length 1 Offset 0 gt 8 then BRANCH to Greater hanE ight so H Less ThanFive A Clear Hub Outputs AB eno SI H GreaterT hant ight Ar Clear Hub Qutputs CD END Compiled Macro Raw Hes 00 03 07 07 DO 00 06 E 2 0077 01 00 55 00 06 E3 001E 01 00 38 00 00 0003 EB 00 03 00 00 00 03 EB OO 0C 00 O00 2 1 23 Execute Macro This command task causes the controller to end the current macro and immediately begin executing another macro When that macro finishes control is not returned to the previous macro This command task allows macros to be chained together to form larger programs Lists Uta Tet later L When the item is inserted into a Macro Number To Execute H macro the Execute Macro Galdi mes Options dialog box is displayed Any macro number between 1 and 8 can be executed with this command task Compiled macros do not have an inherent macro number associated with them they can be loaded into any of the eight macro slots available in supported EMS RFID controllers Therefore it is up to the user to keep track of which macros are loaded to which macro slots NOTE It is possible for a
29. e data to be written to each tag will be in HEX Family Code 0 or ASCII format and then enter Tag Limit 100 the data in the Write Data box Cancel Anti Collision Mode The Anti collision Mode parameter controls the tag reading algorithm used to achieve the fastest reading speed for the number of tags expected in RF range at any given moment This parameter helps the controller avoid data collisions when simultaneously reading multiple tags The choices for the Anti collision Mode parameter are Single Slot or Multi Slot e Single Slot Setting this parameter to single slot utilizes a single time slot under which the requested data from all tags is transferred to the controller as soon as it becomes available This setting can result in faster tag read performance when only a few tags are expected in the RF field e Multi Slot Setting this parameter to multi s ot implements a system of 16 time slots To avoid data collisions when the controller encounters multiple tags simultaneously data requested from each tag is transferred to the controller only during the time slot that matches a specific pattern in the tag ID number Start Address This parameter identifies the tag location where the write operation will begin zero begin writing to the first available byte of tag memory Write Length Bytes This parameter represents the number of bytes that are to be written during the operation This field will be automatically
30. ead the appropriate error is sent to the host When the item is inserted into a Tag Read ID Options RK macro the Tag Read ID Options dialog box is displayed Timeout mg 2000 Cancel The only editable option is the Timeout value measured in milliseconds EXAMPLE In the following example the Tag Read ID command task is used to instruct the controller to retrieve the tag ID If the first four bytes of the tag ID are less than 4444 then Hub output 1 is set otherwise the macro ends Macro D VEMG HF and Demo Applications Macro Builder Example Macros Branch if Too Lom MSF Length 29 226 Lett Start ll On Error Continue Macro Tag Read ID Timeout 2000m8 IF last read Length 4 Offset 0 lt 4444 then BRANCH to Too Law END Ei a Ton Low A D Set Hub Outputs 1 END ABS Write Macro 1 Command 02 02 00 22 70 01 00 0010 00 02 E6 00 00 03 07 OF DO 00 09 E2 0016 04 0034 34 34 34 00 00 UU 03 EA 0001 00 00 03 ES Tag Read Data Tag Read Data This command task performs a Tag Read Data command When this command task is executed the specified tag data is read and is sent to the host If the pastina rice Tag Read Data Options e appropriate error is sent to the host Start Address lo When the item is inserted into a Read Length Bytes fio macro the Tag Read Data mooo 2000 Options dialog box is displayed Cancel The editable
31. em is inserted into a Pesol ef macro the Multi Tag Search Mult Slot t Tag Limit Dm Options dialog box is displayed Timeout me 2000 Cancel The parameters for this command task are Anti Collision Mode The Anti collision Mode parameter controls the tag reading algorithm used to achieve the fastest reading speed for the number of tags expected in RF range at any given moment This parameter helps the controller avoid data collisions when simultaneously reading multiple tags The choices for the Anti collision Mode parameter are Single Slot or Multi Slot e Single Slot Setting this parameter to Single S ot utilizes a single time slot under which the requested data from all tags is transferred to the controller as soon as it becomes available This setting can result in faster tag read performance when only a few tags are expected in the RF field e Multi Slot Setting this parameter to Multi Slot implements a system of 16 time slots To avoid data collisions when the controller encounters multiple tags simultaneously data requested from each tag is transferred to the controller only during the time slot that matches a specific pattern in the tag ID number Family Code AFI The Family Code parameter can be used in multi tag commands to specify a subset of tags when many are identified simultaneously in RF range The parameter allows the user to filter tags based on a pre written value stored at a special tag locati
32. en the item is inserted into a macro the Wait Options dialog box is displayed The controller will wait for the Wait Options length of time specified in the Wat time me 2000 Wait Time field before continuing to execute the remainder of the L Apply Cancel macro 2 1 25 Note This command task is actually a location to insert text notations within a macro which is used for comments or other informational purposes Notes do not affect the flow of the macro execution and can include descriptions of program logic version numbers or anything that the user feels Note Options a should be noted Note Insert Hote Here When the item is inserted into a macro the Note Options dialog box is displayed Notes can contain up to 255 characters each and do not take up any macro space EXAMPLE The following example displays a portion of a large macro that contains several Notes that are used to describe the flow of the macro indicate the version number and provide other information Macro C ColorT agemo MSF Length 113 142 Lett H Start B Color Comparison Macro Yersion 1 01 B A B This is an example macro used to show some simple logic and hub capabilities B The first 6 bytes of a tag are read and the data compared to 5 different strings E Based on the text string a s different combination of hub outputs is set Bo z A Disable Macro Responses Except Errors B Here i
33. er a tag found message or a tag not found error is sent to the host When the item is inserted into a a a macro the Tag Search Options een 2000 dialog box is displayed Cancel The only editable option is the search Timeou value measured in milliseconds EXAMPLE In the following example the Tag Search command task is inserted into a macro to determine if a tag is present If the Timeout expires and no tag has been found the macro branches to the Label No_Tag Hub Output 1 will be set and a tag not found error will be sent to the host If a tag is found the tag ID will be returned along with a tag found message to the host Macro C example MSF Length 29 226 Left H Start On Error Continue Macro Tag Search Timeout 2000m IF last AF command caused a Tag Not Found error then BRANCH to No Tag Tag Read ID Timeout 2000m END No Tan Set Hub Outputs 1 END There are only rare cases where this command task would actually be a better choice than a normal Tag Read or Tag Write as those command tasks also return the same tag not found error if a tag is not present However this command task can be used to save macro space because it requires fewer bytes than the Tag Read or Tag Write command tasks 2 1 5 Tag Read ID 4 TagReadip This command task instructs the controller to retrieve a tag s unique identification number tag ID If the tag ID cannot be r
34. junction with the Custom Header Terminator command task see Section 2 1 26 Custom Header Terminator to build macros that instruct the controller to return data from a tag without delivering command protocol overhead characters such as the response header and terminator bytes lt is for this reason that the Custom drop down options should NOT be used with Subnet16 controllers 485 models or if you are planning to use the Cobalt HF Dashboard for anything other than loading and unloading macros Custom drop down options should only to be used with serial based RFID controllers and are not supported by HF 0405 Series controllers MACRO RESPONSE DESCRIPTIONS e COMMAND ACK RESPONSES Enabling this option instructs the controller to return all command acknowledgement responses command echoes to the host e TAG DATA RESPONSES Enabling this option instructs the controller to return all tag data responses to the host e ERROR RESPONSES Enabling this option instructs the controller to return all error responses to the host e MULTI TAG NTAGS RESPONSES Enabling this option instructs the controller to return the number of tags read written during multi tag operations e CUSTOM STRING RESPONSES Enabling this option instructs the controller to return a user defined custom string response to the host when a Transmit Custom String command task is inserted into a macro see Section 2 1 20 Transmit Custom String EXA
35. macro to execute itself and care should be taken not to cause macros to enter infinite loops in this manner unless that is the desired behavior If a macro is instructed to execute another macro that does not exist the current macro execution will terminate EXAMPLE In the following example the first 6 bytes of a tag are read If the first 3 bytes RED then Macro 5 is executed If the first 4 bytes BLUE then Macro 6 is executed Otherwise Macro 7 is executed Macro DMMEMS HF and Demo Applications YC Macro_Bulder Example Macro Fied_Blue_Tag_Compare t45F Length 50 205 Left H Start A Note that an End command task is not required for this macro ff The macro will terminate automatically upon execution of another macro Set Macro Response Options ACKS No DATA No ERRS No NTAGS NO STRINGS No Tag Read Length 6 Address 0 Timeout 2000m IF last read Length 3 Offset 0 RED then BRANCH to Un Red IF last read Lenath 4 Offset 0 BLUE then BRANCH to On Blue Execute Macro d Current Macro Ends On_Hed Execute Macro 5 Current Macro Ends H On_Blue Execute Macro 6 Current Macro Ends LI i A h Compiled Macro Raw Hex 00 04 F1 00 00 DD 00 07 05 00 00 00 06 07 DO 00 06 E4 00 26 03 00 52 45 44 00 09 E4 00 2C 04 00 42 4C 55 45 00 02 72 07 00 02 7205 00 02 2 06 00 UU 2 1 24 Wait This command task causes the controller to pause during the execution of a macro Wh
36. mber of attempted read write operations the controller will make per execution users will not have to wait for the Timeout to expire A low Tag Limit value can also speed up multi tag operations when only a small group of tags will be present at any given moment Setting the proper Tag Limit value is therefore a tradeoff between the number of expected tags in the reading field and the time required to read write to them 2 1 15 6 Timeout ms The Timeout indicates the length of time set for the duration of the operation The command will terminate when either the Tag Limit value or the Timeout Value have been met 2 1 15 7 Include Tag ID with Data Checkbox Place a check in this box to have the controller retrieve the tag s ID number in front of the read data 2 1 16 2 1 16 1 2 1 16 2 2 1 16 3 2 1 16 4 2 1 16 5 Multi Tag Write Data All ES Multi T ag write Data All This command task instructs the controller to write the specified data to all tags in its RF field This command supports ISO e ee 15693 compliant RFID tags only WS EU KAAL Write Data When the item is inserted into a Hex with ABCD macro the Multi Tag Write Data Spaces All Options dialog box is displayed f ASCII The parameters for this command task are Anti Collision Mode Start Address io Cid Sinale Slot White Lenglhffivtesk D lt rite Length E ytes Write Data Mult Slot Ze Timeout me 2000 Select whether th
37. nitial Label called Starf that is fixed at the beginning of the macro This is the only Command List item that cannot be deleted from the Macro Workspace although it can be renamed if necessary Labels can be used to identify locations within a macro to which execution will branch or go to when a Branch instruction is encountered branching is described later in this chapter Labels do not take up any programming space and technically do nothing by themselves Users may add as many as they want When a Label is inserted into a macro the Label Options dialog box is displayed You may enter a Label Name Laben descriptive name in this box ra NOTE Label names are CASE SENSITIVE and can contain up to 255 characters In practice however Label names should be kept short less than 32 characters long so they can be easily read in the Macro Workspace Label names can contain any printable characters including spaces EXAMPLE In the example below the controller will read the tag ID and then write Sample Tag Write Data to the tag beginning at tag address zero If the write operation completes successfully the macro will end If an error occurs the macro will branch to the Label Error Occurred at which time the custom string message An error has occurred will be delivered to the host Macro D SEMS HF and Demo Applicatione LC Macro _Builder V E sample Macros Eror Occu
38. not have to wait for the Timeout to expire A low Tag Limit value can also speed up multi tag operations when only a small group of tags will be present at any given moment Setting the proper Tag Limit value is therefore a tradeoff between the number of expected tags in the reading field and the time required to read write to them 2 1 17 Branch This command task causes the flow of macro execution to ke Branch Branch n eege l unconditionally branch to another location in the macro When using a Branch command task you must first create a Label to identify the destination of the branch operation This is the equivalent of a Go To command When the item is inserted into a macro the Branch Options dialog box is displayed Branch to Label Name Label Mame Here The only editable option for this Apply Cancel command task is Branch to Label Name Enter the name of the Label to which you want the macro to branch If the Branch to Label does not actually exist at the time you insert this command task a warning message will be displayed next to the command item in the Macro Workspace that reads NOT FOUND This is an indication that C Macro Builder does not yet know where you want the macro to branch You will still need to insert a Label with the appropriate name NOTE With all branch command tasks care should be taken not to cause macros to enter infinite loops unless that is the de
39. o the controller only during the time slot that matches a specific pattern in the tag ID number Start Address This parameter identifies the tag location where the read operation will begin zero begin reading at the first available byte of tag memory Read Length Bytes This parameter represents the number of bytes that are to be read during the read operation Family Code AFI The Family Code parameter can be used in multi tag commands to specify a subset of tags when many are identified simultaneously in RF range The parameter allows the user to filter tags based on a pre written value stored at a special location on the tag For example if the Family Code value is set to one 0x07 only those tags with the pre written Family Code value of 0x01 will respond to the given command When a Family Code value of zero 0x00 is set for this parameter all tags within RF range will respond to the command CW AC RO BUILDER ec a I IE ee eae E Jr CW AC RO BUILDER C0 WW AN DS 2 1 15 5 Tag Limit The Tag Limit parameter is used to indicate the highest number of tags expected simultaneously in RF range for the given multi tag operation By default this value is set to 100 which is also the maximum Tag Limitvalue The actual number entered should be set in relation to the greatest number of tags that could possibly be present in the reading field at any one time By lowering the default Tag Limit value users can minimize the nu
40. ock of tag Mult Slat Tag Limit foo memory can be either 4 bytes or 1 l 2000 8 bytes The memory in EMS oo IZ Cancel LRP Series ISO 15693 compliant RFID tags is arranged in 4 byte blocks EMS T Series ISO 15693 compliant RFID tags have 8 byte memory blocks Users should be aware of the memory architecture and block size of their tag before using this command IMPORTANT NOTE Extreme caution should be taken when using this command Once a block of tag memory is locked it cannot be unlocked and all data written to the block is permanent When the item is inserted into a macro the Lock Memory Blocks Options dialog box is displayed The parameters for this command task are e Start Block the location of the block where lock Tag Lock Memory Blocks Options US will begin Start Black lo o Number of Blocks the Numb f Blocks fi number of blocks that will EE be locked Timeout ms 2000 e Timeout ms the length of time set for the duration of the operation Cancel PS 2 1 13 1 2 1 13 2 2 1 13 3 Multi Tag Inventory This command task instructs the controller to search its RF field for the presence of RFID tags and retrieve the tag ID number of all tags identified This command supports SO 15693 compliant RFID tags only When the item is inserted into a macro the Multi Tag Inventory Options dialog box is displayed The parameters for this command task are Anti Collision
41. ollowing e Write data e Read data e Fill or clear a tag e Compare the results of read data e Transmit custom string information based on the results of logical comparisons of the data e Instruct a Subnet16 Hub to set or clear Outputs The C Macro Builder utility contains an intuitive drag and drop interface that displays the macro as a set of single comprehensive instructions which allows the user to create their own custom macros using a very simple programming language Once a macro is created C Macro Builder saves the compiled string of byte values which can then be downloaded to a Cobalt controller via the Cobalt HF Dashboard program available online at www ems rfid com Cobalt controllers can store up to eight macros numbered 1 through 8 Macros can be activated by a software trigger a tag presence trigger a continuous trigger or from a Subnet16 Hub Input trigger Each controller can store up to eight triggers which can be used to activate any of the eight stored macros Because macros also have the ability to execute other macros they may be chained together to create even larger programs NOTE For more information on configuring macro triggers refer to the Cobalt HF Serial Dashboard User s Manual publication P N 17 1335 for serial connections or the Cobalt HF TCP IP Dashboard User s Manual publication P N 17 1336 for TCP IP and Ethernet based connections ll V Sino C MACRO BUILDE
42. on tag For example if the Family Code value is set to one 0x07 only those tags with the pre written Family Code value of 0x01 will respond to the given command When a Family Code value of zero 0x00 is set all tags within RF range will respond to the command Tag Limit The Tag Limit parameter is used to indicate the highest number of tags expected simultaneously in RF range for the given multi tag operation By default this value is set to 100 which is also the maximum Tag Limitvalue The actual number entered should be set in relation to the greatest number of tags that could possibly be present in the reading field at any one time By lowering the default Tag Limit value users can minimize the number of attempted read write operations the controller will make per execution users will not have to wait for the Timeout to expire A low Tag Limitvalue can also speed up multi tag operations when only a small group of tags will be present at any given moment Setting the proper Tag Limit value is therefore a tradeoff between the number of expected tags in the reading field and the time required to read write to them 0 05 01 PAGE 29 0F 5 2 1 14 4 Timeout ms The Timeout indicates the length of time set for the duration of the operation The command will terminate when either the Jag Limit value or the Timeout value have been met 2 1 15 Multi Tag Read Data All 2 1 15 1 2 1 15 2 2 1 15 3 2 1 15 4 3 M
43. plied warranties including but not limited to the implied warranties of merchantability and fitness for a particular purpose are disclaimed In no event shall EMS be liable for any direct indirect incidental special exemplary or consequential damages however caused and on any theory of liability arising in any way out of the use of this software 5 ATALOGIC Be DeviceNet Mocibus IDA Your Life Our Enthusiasm ems COPYRIGHT 2007 ESCORT MEMORY SYSTEMS ALL RIGHTS RESERVED PUBLISHED IN USA CORPO Gerre RARA 3 CR Ee a ERRO cetceatenet cect eee ccnhesstceabeusiveatesbesabe 5 1 1 Using C Macro E UU E 6 1 1 1 VERE EEA 7 1 4 2 Saving d ee iI it 8 1 2 Loading Macros into an RFID Controller ccccceeseeeseesseseeeeseeeeeeeeenseenseeaees 10 CAPTER E EK HEES WS DEE EK EEE 11 2 1 Command List ICONS iii ici aa 11 2 1 1 Biet veharee since cneesnnededseeanseche rans venesenceenne i 12 2 1 2 Macro RESPONSE Optons 13 2 1 3 Enor Benavior et ele 16 E T SOC E 17 eda Ke e RE 18 21 Tad 0 AN CORRE CA I ER TECA IA CO 19 2 1 7 Start Continuous Read Data 20 2 1 8 Stop Continuous Read Data 21 21 9 Tag WING RT EE 22 2 1 10 Tag ul 2 MN Ainsewesenesnncanosntaeneerssasccansnivarrcenrecenscnsaneheenesecemesouiouniauserederoremesdneeniasneorentes 24 2 1 11 LE SRI SAID RR RAR E RA 25 2 1 12 TALOK MONO Bios 26 2 1 13 MU TAG MVNO EE 27 2 1 13 1 nl ee ee Be le 27 2 1 13 2 Family CoQ E ME 27 2 1 13
44. populated by the application based on the number of bytes entered in the Write Data box Timeout ms The Timeout indicates the length of time set for the duration of the operation The command will terminate when either the Jag Limitvalue or the Timeout value have been met CW AC RO BUILDER Le te E RE eae E Jr CH AC RO BUILDER C0 WW AN DS 2 1 16 6 Family Code AFI The Family Code parameter can be used in multi tag commands to specify a subset of tags when many are identified simultaneously in RF range The parameter allows the user to filter tags based on a pre written value stored at a special location on the tag For example if the Family Code value is set to one 0x07 only those tags with the pre written Family Code value of 0x01 will respond to the given command When a Family Code value of zero 0x00 is set for this parameter all tags within RF range will respond to the command 2 1 16 7 Tag Limit The Tag Limit parameter is used to indicate the highest number of tags expected simultaneously in RF range for the given multi tag operation By default this value is set to 100 which is also the maximum Tag Limitvalue The actual number entered should be set in relation to the greatest number of tags that could possibly be present in the reading field at any one time By lowering the default Tag Limit value users can minimize the number of attempted read write operations the controller will make per execution users will
45. rred MSF Length 68 187 Left H Start Tag Read ID Timeout 2000ms Tag Write Length 21 Address 0 Data Sample Tag Write Data Timeout 2000mes IF last RF command caused an eror then BRANCH to Error Occurred END H Error Occurred Transmit Custom String An error has occured END b D 19 Macro Response Options Macro Response Options This command task allows the user to control how when and if macro responses are returned to the host macro the Macro Recoonse acr o Response options UNI macro the Macro Response Macro Response cca Options dialog box is displayed Command ACK Responses Enabled There are five basic types of macro responses see below for Tag Data Responses Enabled descriptions Error Responses Enabled M e Command Acknowledgement l Responses Mult Tag NTAGS Responses Enabled e Tag Data Responses Custom String Responses Enabled e Error Responses i Apply Cancel e Multi Tag Number of Tags Custom Mode is for Serial Communication Orly Responses e Custom String Responses Disabled Each of the response types has a drop down menu for selecting a Enabled response status The choices are Disabled Enabled or Custom By Custom default all macro response types are enabled therefore all macro responses generated by RFID commands are sent back to the host IMPORTANT NOTE Each drop down menu s Custom option can be used in con
46. s allows filtering of resoonses and can make applications function more efficiently When the item is inserted into a macro no dialog box appears because there are no editable items for this command task EXAMPLE In this example an 8 byte tag ID is read and if the last byte is less than 5 then and only then is the tag ID sent to the host via the Transmit Last Response command task Macro DES HF and Demo Applicationa C Macro_Builder E sample Macros Compare Last ID Byte MSF Length 35 220 Left H Start On Error Continue Macro Set Macro Response Options ACKS No DATA No ERRS No NTAGS NO STRINGS No Tag Read ID Timeout 2000ms IF last RF command caused an emor then BRANCH to End IF last read Length 1 Offset lt 5 then BRANCH to Special ID END H Special ID Transmit Last Response End END TC ESEE Compiled Macro Raw Hex 00 02 EE OU 00 04 F1 00 00 UU 00 OS O7 OF DUDU OS E 7 00 27 00 OB ES 001E 01 OF 35 00 00 00 01 EI 00 00 NOTE When the Transmit Last Response command task is executed the current Macro Response Options are ignored This command task will transmit the last response even when all macro responses are disabled 2 1 20 Transmit Custom String 93 Transmit Custom String his command task instructs the controller to transmit a custom string of data back to the host The Transmit Custom String command task allows additional flexibility in what is sent back to
47. s on loading macros into supported EMS RFID controllers Below is the list of command tasks that can be individually inserted into RFID command macros using C Macro Builder ia CONMAND LIST tous Label Macro Response Options Error Behavior Options Tag Search Tag Read ID Tag Read Data Start Continuous Read Data Stop Continuous Read Data Tag Write Data Tag Fill Data Tag Write Timestamp Tag Lock Memory Blocks Multi Tag Inventory Multi Tag Search Multi Tag Read Data All Multi Tag Write Data All Branch Conditional Branch Transmit Last Response Transmit Custom String Set Hub Outputs Clear Hub Outputs Execute Macro Wait Note Custom Header Terminator Macro Response Options Legacy End amp xallable Commands 5 Macro Response Options 5 Error Behavior Options 430 Tag Search gen Tag Read ID Tag Dead Data ges Start Continuous Read Data lt stop Continuous Read Data b Tag Write Data T ag Fill Data CO Tag Write Timestamp e Tag Lock Memory Blocks OH Mult Tag Inventory be Mun Tag Search 5 Mult Tag Read Data Al ED Multi Tag Write Data All a Branch o gt Conditional Branch yf Transmit Last Response 1993 Transmit Custom String A Set Hub Outputs A Clear Hub Outputs A Execute Macro wat B Note 5 Custom Header Terminator A Macro Response Options Legacy End 2 1 1 Label Labels are used to identify specific entry points within a macro Every macro has an i
48. s set all tags within RF range will respond to the command Tag Limit The Tag Limit parameter is used to indicate the highest number of tags expected simultaneously in RF range for the given multi tag operation By default this value is set to 100 which is also the maximum Tag Limitvalue The actual number entered should be set in relation to the greatest number of tags that could possibly be present in the reading field at any one time By lowering the default Tag Limit value users can minimize the number of attempted read write operations the controller will make per execution users will not have to wait for the Timeout to expire A low Tag Limitvalue can also speed up multi tag operations when only a small group of tags will be present at any given moment Setting the proper Tag Limit value is therefore a tradeoff between the number of expected tags in the reading field and the time required to read write to them 2 1 13 4 Timeout ms The Timeout indicates the length of time set for the duration of the operation The command will terminate when either the Tag Limit value or the Timeout value have been met 2 1 14 1 2 1 14 2 2 1 14 3 Multi Tag Search This command task instructs the controller to search its RF field for the presence of RFID tags and retrieve the number of tags identified This command supports ISO Multi Tag Search Options 15693 compliant RFID tags only o sui de Family Code n When the it
49. s where we read the first 6 bytes of the tag Tag Read Length E Address 0 Timeout 2000ms B Here is where we start the comparisons and branch B d4 tothe different sections based on the tag data Gy IF last read Length 3 Offset 0 RED then BRANCH to ON RED Gy IF last read Length 4 Offset 0 BLUE then BRANCH to ON BLUE es IF last read Length 5 Offset 0 GREEN then BRANCH to ON GREEN Gy IF last read Length 6 Offset 0 YELLOW then BRANCH to ON YELLOW Oy IF last read Length 5 Offset 0 BLACK then BRANCH to ON_BLACE B Tag data didnt match any of those fiwe colors so lets clear all outputs and END AY Clear Hub Outputs 1234 sw H ON RED 2 1 26 Custom Header Terminator Custom Header T erminator This Command task for serial based controllers only is used in conjunction with the Custom option in the Macro Response Options command task When one of the five types of host bound responses is set to Custom in the Macro Response Options command task dialog this command task can then be used define a custom header and terminator for the specified response type The five response types are Custom Header Terminator Options Set Custom Header Terminator for e Command ACK Responses e Tag Data Responses Command ACK Responses e Error Responses Ver usi ala di MUC Iag NTA 5 Responses Multitag eae pal e Custom String Responses Custom String Responses
50. sired behavior EXAMPLE 1 Macro C Nexample MSF Lemgth 35 220 Lett In this example a branch to the label Branch To Skip Everything NOT FOUND named Skip Tag Read Lenath 10 Address 0 Timeout 2000m Everything has been Tag Write Length 5 Address 0 Data 12345 Timeout 2000ms inserted at the Set Hub Outputs 1 beginning of the END macro Because there is no label named Skip Everything the warning message NOT FOUND is displayed NOTE If the macro in example 1 were to be loaded and executed an error would occur EXAMPLE 2 Macro C Aesample MSF Length 35 220 Left In this example the H Start sips label Branch To Skip Everything Everything has been Tag Read Length 10 Address 0 Timeout 2000me inserted before the Tag Write Length 5 Address 0 Data 12345 Timeout 2000me end of the macro A Set Hub Outputs 1 When this macro is i Skip_Everything executed the branch di END instruction will cause the macro to skip over the next three command tasks and resume executing at the Skip Everything label which in this case ends the macro Zl 18 Conditional Branch gt Conditional Branch This command task causes the macro execution flow to conditionally branch to another location in the macro based on the results of data comparisons or errors from a previous RFID command task Tag Search Tag Read ID Tag Read Data Tag Write Data
51. splayed Write Length Bytes 4 The editable options for this Timeout ms 2000 command task are Cancel e Write Data 0 to 241 bytes of either HEX or ASCII data depending on tag length e Start Address 0 to 65535 depending on tag length e Write Length Bytes 0 to 241 this field will be automatically populated based on the number of bytes entered in the Write Data box e Timeout ms 0 to 65535 WRITE DATA BOX By selecting the appropriate radio button the display mode of this command task can be set to either HEX with Spaces or ASCII Enter data in the Write Data box in either two digit HEX byte values separated by spaces or in ASCII text ASCII DATA EXAMPLE Write Data Hex with This is an example Spaces fe ASCII Start Address E write Length Bytes i H Timeout ms 2000 Cancel HEX DATA EXAMPLE Write Data Hex with 54 68 69 73 20 69 73 20 61 6E 20 65 e sal 78 61 6D 7OBC 65 ASCII Start Address o Note that the two examples contain t identical data however the actual data is ein zm always written to a tag in Hex format Cancel NOTE Entering the ASCII string 12345 actually writes to a tag the HEX values 31 32 33 34 35 It is important to realize that when entering numbers in ASCII mode that these are the ASCII characters themselves and not the numerical equivalent If you want to write the actual byte values 01 02 03 04 05 you
52. the display mode of this command task can be set to either HEX or ASCII Enter the Fill Byte either as a 2 digit HEX byte value or as a single ASCII character The Fill Data written to the tag is the same either way this is just for convenience of data entry or for human readability NOTE Entering the ASCII character 1 actually writes the HEX value 31 to the tag It is important to realize that when entering numbers in ASCII mode that these are the ASCII characters themselves and not the numerical equivalent Therefore if you want to write the value 01 you would need to use HEX data entry mode EXAMPLE In the following example the Tag Fill Data command task is used to write the byte value OxFF from address 0 to address 500 of the tag Macro C example MSF Length 12 243 Left Tag Fill Length 500 Address 0 D ata ti Timeout 2000rme 2 1 11 Tag Write Timestamp This command task instructs the controller to write the date ED Tag write Timestamp and time in the specified timestamp format to a tag When the item is inserted into a macro the Tag Write Timestamp Options dialog box is displayed which allows the user to select their preferred timestamp format Choices for Timestamp Format are e Seven Byte Binary Ae SC E Timestamp Format our Minute Second 7 Byte Binary YMSB YLSB DOM MM HH MM 55 e ASCII Format 1 ASCII Format 1 MM DD Ary HH MM SS C
53. the host and provides the ability to send informative data in addition to or instead of tag data This command task is also helpful in debugging macros allowing users to trace the execution of the macro by inserting several Transmit vn es Custom String command tasks at Transmit Custom String Options ustom String Options various points in the macro Custom ang Data e Hex with ABLD m Spaces When the item is inserted into a macro the Transmit Custom String Options dialog box is displayed f ASCII The editable options for this command task are Custom String Data 0 to 247 bytes data can be displayed in either HEX with Spaces or ASCII EXAMPLE 1 In the following example two bytes are read from a tag If those two bytes are 01 02 then the custom string Batch Passed is sent to the host If the two bytes are 03 04 then the custom sting Batch Failed is sent to the host Macro D SEMS HF and Demo Applications YC Macro _Bulder Example Macros Batch Pass Fail MSF Length 73 192 Lett H Start E This macro illustrates how the Transmit Custom String command task can be used Pa On Error Continue Macro Pa Set Macro Response Options ACKS No DATA No ERRS No NTAGS NO STRINGS Yes TagRead Length 2 Address 0 Timeout 2000mg amp IF last read Lenath 2 Offset 0 12 then BRANCH to Fassed gt IF last read Length 2 Offset 0 34 then BRANCH to
54. ult Tag Read Data All This command task instructs the controller to retrieve the specified number of bytes from each tag in its RF field This command supports ISO Multi Tag Read All Options i 15693 compliant RFID tags only WW dti DE a Addens ER When the item is inserted into a nde macro the Multi Tag Read Data Mult Slot Read Length Bytes fi All Options dialog box is Family Code lo displayed Tag Limit fi OU The parameters for this command task are Timeout ms 2000 Include Tag ID with Data M Cancel Anti Collision Mode The Anti collision Mode parameter controls the tag reading algorithm used to achieve the fastest reading speed for the number of tags expected in RF range at any given moment This parameter helps the controller avoid data collisions when simultaneously reading multiple tags The choices for the Anti collision Mode parameter are Single Slot or Multi Slot e Single Slot Setting this parameter to single slot utilizes a single time slot under which the requested data from all tags is transferred to the controller as soon as it becomes available to the controller This setting can result in faster tag read performance when only a few tags are expected in the RF field e Multi Slot Setting this parameter to multi s ot implements a system of 16 time slots To avoid data collisions when the controller encounters multiple tags simultaneously data requested from each tag is transferred t
55. would need to use HEX data entry mode EXAMPLE In the following example the first 10 bytes of a tag are read and sent to the host If the first 5 bytes equal HELLO then the Tag Write Data command task is executed to write the string GOODBYE to the tag at address 100 Macro C example MSF Length 41 214 Lett H Start Tag Read Length 10 Address 0 Timeout 2000ms Cy IF last read Length 5 Offset 0 HELLO then BRANCH to ON HELLO END tt ON_HELLO Tag Write Length Address 100 Data GOODBYE Timeout 2000m8 2 1 10 Tag Fill Data gt Tag EI Data This command task instructs the controller to perform a Tag Fill Data command When this command task is executed and the specified Fill Byte is successfully written across the specified range in the tag a Tag Fill Succeeded ASCII message is sent to the host If the Tag Fill operation fails the Start Address lo appropriate error message is sent to the host Fill Length Bytes E When the item is inserted into a Timeout ms 2000 macro the Tag Fill Options dialog box is displayed Cancel The editable options for this command task are e Fill Byte 1 byte either ASCII or HEX data e Start Address 0 to 65535 depending on tag length e Fill Length Bytes 0 to 65535 depending on tag length 0 entire tag e Timeout ms 0 to 65535 By selecting the appropriate radio button

Download Pdf Manuals

image

Related Search

Related Contents

D-305378 KP-250 PG2 Guía del usuario  Gastroback Design Coffee Advanced - Grind & Brew -  21-895型 21-875型 21-262型 取扱説明書 ガス高速オーブン 電子  KULINARISK Micro-ondas comb c/ar forçado  Manuel d`utilisation Nokia 1616/1800  Manual del Propietario  iGrip TABLET GRIPPER 1  Manual do usuário  Kidde 0910 Smoke Alarm User Manual    

Copyright © All rights reserved.
Failed to retrieve file