Home
AdeptGEM User`s and Reference Guide
Contents
1. GEM Compliance Statement Fundamental GEM Requirements Implemented GEM Compliant State Models MYes ONo Eyes ONo Equipment Processing States MYes O No Eyes No Host Initiated S1 F13 F14 Scenario H Yes ONo H yYes ONo Event Notification HyYes ONo MYes ONo On Line Identification MYes ONo Eyes ONo Error Messages Eyes No Eyes No Documentation HyYes O No MYes ONo Control Operator Initiated HYes ONo HyYes ONo Additional GEM Capabilities Implemented GEM Compliant Establish Communications Eyes No MYes ONo Dynamic Event Report Configuration Eyes ONo Hes ONo Variable Data Collection MYes ONo Eyes ONo Trace Data Collection MYes ONo MYes ONo Status Data Collection Hes ONo MYes ONo Alarm Management Eyes ONo MyYes ONo Remote Control MYes ONo MYes ONo Equipment Constants Eyes ONo Eyes ONo Process Program Management Eyes No Eyes No Material Movement OYes WNo OYes W No Equipment Terminal Services Eyes No Eyes ONo Clock MYes ONo Eyes ONo Limits Monitoring Eyes No Eyes No Spooling OYes WNo OYes WNo Control Host Initiated HYes ONo Hes ONo 14 AdeptGEM User s amp Reference Guide Rev P1 Chapter 2 Fundamental GEM Requirements GEM compliance is divided into two sections fundamental requirements and additional capabilities Fundamental requirements must be implemented by all GEM compliant equipment Additional capabilities can be optionally implemented as appropriate to t
2. Figure 7 1 GEM Variables Menu Page The record name The Variable ID number Displays the date and time that the record was created or modified Optional description of the record Contains the value of the record This item may be user defined depending on the selections in items and A units identifier that will be sent to the host when the Variable ID is reported This item does not appear for some selection in items and Geed06 This group is used to set the GEM Variables class for the record Each class is explained in the following sections AdeptGEM User s amp Reference Guide Rev P1 89 Chapter 7 The AdeptGEM Databases This group is used to define the parameters for the variable The items in this group may vary depending on the selections in items and Host Data Type specifies the data type used by this variable Access Control specifies the access level required to modify this record Process Related when checked indicates this is a process related variable See section 3 10 on page 36 for details Minimum Value Typical Value Maximum Value specifies the expected range of values for this variable This group is used to set the variable type for the record This button activates automatic alarm detection See section 3 8 on page 32 for details Equipment Constant The following figure shows an equipment constant in the GEM Variables database
3. Structure of the Report Record Type The following table details the structure of the Report record type Table 8 8 Structure of the Report Record Type Field Number Variable Field Name Description 5 Report ID ID number for the report must be unique among all gm f item id reports 6 to 14 Not used 15 Report IDs IDs of variables listed by this report Set in the routine gm f data ids gm db names in the file GEMMOD OVR gm asize rptvid 20 Number of Variable IDs VIDs Note e Fields 1 through 4 are common for all GEM Items record types See Table 8 4 Structure of the State Record Type The following table details the structure of the State record type Table 8 9 Structure of the State Record Type Field Number Variable Field Name Description 5 State ID ID number for the state must be unique among all the gm f item id state records 6 Not used 7 gm f spawn Action Spawn Routine Name of the Vt routine to be executed when the state is entered AdeptGEM User s amp Reference Guide Rev P1 121 Chapter 8 The AdeptGEM Database Structures Table 8 9 Structure of the State Record Type Continued Field Number Variable Field Name Description 8 Not used 9 Not used 10 State Variable Variable ID for the State variable associated with the em f stt varbl state This is used as a secondary sort field so that all
4. ECIO S ID DYYAL GEH Yariable Global D wiec ron his is a sample Equipment Constant EC Figure 7 2 GEM Variables Database Equipment Constant To add a new equipment constant 1 2 3 4 90 Create a new GEM Variables record Enter a name for the new record item Assign a Variable ID item See Variable IDs VIDs on page 87 for more details Enter a description for this record item AdeptGEM User s amp Reference Guide Rev P1 The GEM Variables Database Select Equipment Const as the GEM Variable Class item Select Numeric Variable or String Variable as the Variable Type item Specify a Value for the variable item g ho opi If a numeric variable is being defined enter a units identifier item that will be sent to the host when this Variable ID is reported The units identifier should correspond to the identifi ers described in Section 9 Units of Measure in SEMI E5 95 Refer to item for the following steps 9 Specify a Host Data Type See Table 7 1 for the list of data types 10 Specify the Access Control Enter a single digit 0 4 in this field to specify the user access level required to change the record Insert a 1 no modification allowed or 0 modification allowed in front of the access digit to control host modification of the EC 11 Select Process Related to prevent this ECID from being updated when a process
5. GEM Variable Report Refer to the GENERATE_EVENT statement on page 83 for details Documentation Any Collection Event or VID records created must be documented for the host Requirements This capability allows the equipment to notify the host when an equipment collection event occurs Events are stored in the GEM Items database This section covers both the fundamental event notification requirement and the additional event notification capabilities Event notification occurs automatically and does not require operator intervention except to set up the various databases that support event notification There are three record types used for event notification The actual event is defined and enabled in a Collection Event record page 109 The Collection Event record specifies Report IDs that are defined in a Report record page 112 The Report record specifies Variable IDs that are defined in the GEM Variables database page 86 Whenever an enabled Collection Event occurs a report is automatically generated based on the reports specified in the Collection Event record and the report is sent to the host Host Interaction With Collection Events The host may perform the following actions at any time and without interaction with the equipment operator e Define reports e Link reports to collection events e Enable disable collection events e Delete all defined reports GEM Requir
6. 94 AdeptGEM User s amp Reference Guide Rev P1 The GEM Variables Database 5 Select Status Variable as the GEM Variable Class item 6 Select Input Signal or Output Signal as the Variable Type item 7 Specify the Signal number item Refer to item for steps 8 through 11 8 Specify a Host Data Type See Table 7 1 Host Data Types on page 88 the most appropriate data type is Boolean type 11 9 Specify the Access Control Enter a single digit 0 4 in this field to specify the user access level required to change the record Insert a 1 no modification allowed or 0 modification allowed in front of the access digit to control host modification of the record 10 Select True or False as the Typical Value for the signal 11 If this record relates to a limit enter the number of the limits monitoring event This number is a Collection Event ID in the Collect Event record type See section 3 6 12 If this record will define an automatically detected alarm press Auto Alarm Detection item The options described in Automatic Alarm Detection on page 33 will be dis played Note that this record specifies the digital signal to get a value from not the actual state of the signal The state of the signal is returned as the value of the record AdeptGEM User s amp Reference Guide Rev P1 95 Chapter 7 The AdeptGEM Databases Status Variable Using a String V
7. Details This routine is used in a sequence to verify that the current state of the equipment is compatible with host control of robot motion It is considered okay in any of the following situations 1 The sequence was initiated by the host and the control state is Remote The commu nication state must be On Line for the host request to be received 2 The sequence was initiated by the user and one of the following is true a The communication state is Not Communicating b The control state is On Line Local c The control state is Off Line Equipment Off Line The output GEM variable must have the type numeric variable 184 AdeptGEM User s amp Reference Guide Rev P1 Descriptions of Routines in the AdeptGEM Module run_check Data Structure gm comm Boolean TRUE if communicating gm online Boolean TRUE if communication is On Line gm remote Boolean TRUE if communication is Remote gm stask Number of task used for GEM service gv db Number of the GEM Variables database gm gv lock Lock variable for access to the GEM Variables database The value of this variable should not be considered if not communicating i e if gm comm is FALSE In that case this variable indicates the state that will result the next time communication is established File GEMSTMT SQU Statement DB STATGEM DB Related Routines AdeptGEM User s amp Reference Guide Rev P1 185 s2 bytes2fl
8. arrow The byte position in the stream to start writing data to The first byte in the stream is number 1 Output Parameters stream The modified stream of bytes arrow The byte position in the stream just following the last byte packed Details The arrow input parameter represents the character position that data should be written to in the stream and it is automatically incremented by the number of bytes packed The data item packed is always of SEMI data type 10 The bits input parameter contains a string of ASCII 0 and 1 characters representing the binary data to be packed The first character of the string defines the setting of bit 1 the least significant bit the second character defines bit 2 etc For example the string 11010000 will be packed as one byte containing the binary value B1011 The number of bytes in the binary data item is the length of the string divided by 8 If the string ends with an incomplete set of bits the missing bits are assumed to be zero Unpredictable results will occur if bits contains characters other than 0 or 1 If bits is empty then a zero length binary data item is packed File GEMS2 SQU Related Routines s2 pack 1ascii s2 pack str AdeptGEM User s amp Reference Guide Rev P1 189 s2 pack 1real Chapter 9 Calling Sequence CALL s2 pack 1lreal value type Sstream arrow Function Pack a single real value into a SECS II data
9. AdeptGEM User s and Reference Guide AdeptGEM ersion 3 1 AdeptGEM User s and Reference Guide AdeptGEM Version 3 1 Part 00713 01900 Rev P1 September 1997 ccert 150 Rose Orchard Way San Jose CA 95134 USA Phone 408 432 0888 Fax 408 432 8707 Cer Otto Hahn Strasse 23 44227 Dortmund Germany Phone 49 231 75 89 40 Fax 49 231 75 89 450 adept 41 rue du Saule Trapu 91300 Massy France Phone 33 1 69 19 16 16 Fax 33 1 69 32 04 62 technology inc 1 2 Aza Nakahara Mitsuya Cho Toyohashi Aichi Ken 441 31 Japan 81 532 65 2391 Fax 81 532 65 2390 The information contained herein is the property of Adept Technology Inc and shall not be reproduced in whole or in part without prior written approval of Adept Technology Inc The information herein is subject to change without notice and should not be con P asa on by Adept Technology Inc This manual is periodically reviewed and revised Adept Technology Inc assumes no responsibility for any errors or omissions in this doc ument Critical evaluation of this manual by the user is welcomed Your comments assist us in preparation of future documentation A form is provided at the back of the book for submitting your comments Copyright 1996 1997 by Adept Technology Inc All rights reserved The Adept logo is a registered trademark of Adept Technology Inc Adept AdeptOne AdeptOne MV AdeptThree Ad
10. Change to display the following window from which you can set the current date and time Change System Date Time Eile x Enter New Date Time Date Time GEM Requirements These GEM requirements are specified in Section 4 10 4 of SEMI E30 95 1 The resolution of the time reference exceeds the speed at which an individual collection event can be recorded thus all events will have different time stamps 2 The resolution of the time reference is based on the Vt one millisecond timer 3 Centisecond values are assigned based on the actual value of the clock Unresolvable simulta neous events will be given the actual time value of their occurrence 1 The equipment must be online and communicating AdeptGEM User s amp Reference Guide Rev P1 43 Chapter 3 Additional GEM Capabilities 3 14 Control Host Initiated SEMI E30 95 4 12 5 1 Sections Database gt GEM Variable Usage Collection _jReport gt GEM Variable GEM Variable Report gt Documentation None Requirements This section describes the Control state model that implements both the Operator Initiated Control requirement and the Host Initiated control capability Changes to the control state are made at the equipment from the GEM Control Panel Host changes to the control state are made automatically and reflected on the control panel This control panel must be used
11. Chapter 5 SECS II Messages S2 F46 Variable Limit Attribute Acknowledge VLAA M H lt E Description Acknowledge definition of variable limit attributes or report error Structure L 2 1 lt VLAACK gt 1 binary byte 0 OK 1 error in defining limit attribute 2 cannot perform at this time 2 L m 1 L 3 1 lt VID1 gt unsigned 1 2 4 or 8 byte integer data 1 32767 2 lt LVACK1 gt 1 binary byte 1 variable does not exist 2 this variable cannot be monitored 3 this variable has already been used in the same message 4 limit value error 3 L n n 0or 2 1 lt LIMITID gt 1 binary byte 1 7 2 lt LIMITACK gt 1 binary byte 1 lt LIMITID gt does not exist or is out of legal range of 1 7 2 UPPERDB gt LIMITMAX 3 LOWERDB lt LIMITMIN 4 UPPERDB lt LOWERDB 5 illegal format specified for UPPERDB or LOWERDB 6 ASCII value can not be translated to numeric 7 duplicate limit definition for this variable m L 3 1 lt VIDm gt 2 lt LVACKm gt 3 L n n 0or 2 1 lt LIMITID gt 2 lt LIMITACK gt Exceptions A zero length list m 0 indicates no valid limit attributes A zero length list n 0 indicates no invalid limit values for that lt VID gt S2 F47 Variable Limit Attribute Request VLAR S H gt E reply Description Allows the host to query the equipment for current variable limit attribute definitions Structure L n 1 lt VID1 gt unsigned
12. Chapter 7 The AdeptGEM Databases 10 Specify the Access Control Enter a single digit 0 4 in this field to specify the user access level required to change the record Insert a 1 no modification allowed or 0 modification allowed in front of the access digit to control host modification of the record 11 Enter the Minimum Maximum and Typical values as appropriate 12 If this record relates to a limit enter the number of the limits monitoring event This number is a Collection Event ID in the Collect Event record type See section 3 6 13 If this record will define an automatically detected alarm press Auto Alarm Detection item The options described in Automatic Alarm Detection on page 33 will be dis played Status Variable Using an ai ctl Value The next figure shows a status variable in the GEM Variables database that uses an ai ctl value in its definition GEM Yariable Global IOl x Go Seek Edit Help ECID anle recoraz ariable ID 1004 Date 17 Feb 97 10 30 SYID DVVAL Bie Eis Heg Description This is a sample user defined record It creates a status variable with an ID of 1004 THis value represents an ai ctl index not the value of the ai ctl variable The ai ctl value can be changed by a GEM statement er oO Quits Identifier Index 200 O GEM Variable Class 0 Parameters Data Value Status Variable Host Data Type 44 octal
13. Details 182 error Communication status error code stored in the specified GEM variable if it is a valid destination The value will be 0 if the host correctly acknowledged the message sent to it Otherwise a standard AIM error response code is returned See the standard AIM operator error response code values for details The most common error would be 531 Communication time out indicating that the host is not responding If communications are not enabled the error code 508 Device not ready is used This statement forcibly sends an S1F13 message to the host to verify its presence and ensure that it is responding to messages properly If not an error will be returned in the output error argument The S F13 message is sent even if the equipment is not On Line This does not conflict with the SEMI standards since S1F13 is used for establishing communications If there is a communication problem the calling program could be seriously delayed For example if the communications state is Attempt On Line and the service and communication tasks are already trying to talk with the host this routine will wait 20 seconds before giving up Or if the state is Communicating but the host never sends a reply message 45 seconds could elapse before this subroutine returns with an error The output GEM variable must have the type numeric variable AdeptGEM User s amp Reference Guide Rev P1 Descriptions o
14. Equipment Const State Variable Access Control O Varieble E Minimum Value Numeric Variable String Variable pieet uale Input Signal V Variable Bee ee ele Output Signal ai ctl Value Lert eon Event Numeric Function String Function Auto Alarm Detection Figure 7 8 GEM Variables Database Status Variable Using an ai clt Value To define a new status variable that uses an ai clt value 1 Create anew GEM Variables record 2 Enter a name for the new record item 3 Assign a Variable ID item See Variable IDs VIDs on page 87 4 Enter an optional description of this record item 98 AdeptGEM User s amp Reference Guide Rev P1 The GEM Variables Database Select Status Variable as the GEM Variables class item Select ai ctl Value as the Variable Type item Specify an Index for the variable item Oo oy opi Enter a units identifier item that will be sent to the host when this Variable ID is reported The units identifier should correspond to the identifiers described in Section 9 Units of Mea sure in SEMI E5 95 Refer to item for steps 9 through 12 9 Specify a Host Data Type See Table 7 1 Host Data Types on page 88 10 Specify the Access Control Enter a single digit 0 4 in this field to specify the user access level required to change the record Insert a 1 no modification allowed or 0 modification allowed in front o
15. Function Provide a convenient place for customizer initialization to be performed Details This routine is called after all needed GEM global variables are initialized but before any background GEM tasks are started if any This routine is delivered as an empty shell You can edit the routine to include any initialization data required for your custom installation File GEMUSER V2 SQU AdeptGEM User s amp Reference Guide Rev P1 169 gm user mnu ctl Chapter 9 Calling Sequence CALL gm user mnu ctl type conditionl condition2 condition3 Function Control user access to the AIM menu items for accessing the AdeptGEM databases Usage Considerations This routine is called at numerous places in the baseline AdeptGEM code with type set to 0 Currently that has no effect because there is no active code in the routine If a menu item has already been selected before this routine is called to dim that item calling this routine will have no effect on the already open menu page This routine could be called from the routine cu set mode to control menu access based on sequence execution However that might be done more effectively by modifying the definitions of the menu items which is done in the routine gm mod init Input Parameter type Type of condition to check as follows 0 Related to communication status 1 9 Reserved for use by Adept code condition1 Condition information as follows For type 0 communi
16. Upload o File Module File Name 2 ere SECS II Format ASCII Oo Binary Upload Cancel 1 Select the type of transfer item 2 Enter the name of the resource module or disk file item 3 For a file transfer select the data item format ASCII or Binary identifier to be used for the transfer item Resource modules are always transferred as binary data 4 Press Upload item to begin the transfer To request that a program or resource module be downloaded Setup GEM Download From Host Download From Host Pe xi Download File Module Download Cancel 1 Select the type of transfer item 2 Enter the name of the resource module or disk file item 3 Press Download to begin the transfer item If the upload download is successful these windows are closed automatically 40 AdeptGEM User s amp Reference Guide Rev P1 Equipment Terminal Services Operations With Standard Disk Files As an additional capability the process program upload download and delete capabilities can be used with standard disk files To differentiate between a request for a Resource Module and a standard file add the file extension to the request e g JOB1 Resource Module JOB1 V2 standard file This additional capability is supported only for file upload download and delete No verification or validation is performed on transfers of stand
17. records for a Control model will be grouped together 11 Action Variable Variable ID for the variable to change upon entry to gm f stt actvar the state 12 Action ID of the Collection Event performed when the state is gm f stt actce Collection Event entered 13 gm f stt actalm Action Alarm ID of alarm set when the state is entered 14 Action Value Value to assign to the action variable gm f stt actval 15 Not used Note e Fields 1 through 4 are common for all GEM Items record types See Table 8 4 122 AdeptGEM User s amp Reference Guide Rev P1 Chapter 9 Descriptions of Routines in the AdeptGEM Module This chapter describes the functions and calling sequences of routines contained in the AdeptGEM module These routines may be called by application software written by a system customizer CAUTION The routines described in this section must be used whenever you access the GEM Variables or GEM Items databases These routines invoke special locks that prevent the host and the equipment from simultaneously accessing the same database These locks are not present in the normal AIM database routines and unpredictable results may occur if they are used in place of the AdeptGEM routines Each routine is presented on a separate page in alphabetical order The dictionary page for each routine contains the following sections as applicable AdeptGEM User s amp Reference Guide Rev
18. remconfig9127 EC Boolean conditional section equivalent to the 9128 remconfig9128 EC Boolean coneepondis ample onthe CEM Control Panel menu page 9129 remconfig9129 EC Boolean ID 9126 Conditional 50 9130 remconfig9130 EC Boolean ID 9127 Conditional 51 9131 remconfig9131 EC Boolean Ie padina lana ID 9129 Conditional 53 ID 9130 Conditional 54 ID 9131 Conditional 55 9132 montaskperiod EC 4 byte floating Cycle rate for the limit monitoring point task 9150 montasknum EC Unsigned 1 byte Trace Data Collection Limits integer Monitoring task number no longer used 9151 equipid EC Unsigned 2 byte Equipment ID integer 9152 baud EC Unsigned 2 byte Baud rate for SECS I integer 9153 commtasknum EC Unsigned 1 byte Communication channel task integer number no longer used 9154 commbuffsize EC Unsigned 2 byte Communications channel buffer integer size in KB 9155 servicetasknum EC Unsigned 1 byte GEM SECS II service task number integer no longer used 9200 alarmid DV Unsigned 2 byte The ALID of alarm just set cleared integer user defined CEID 9201 eventlimit DV List of integers Limit ID crossed or list of IDs user defined CEID 9202 limitvariable DV Unsigned 2 byte Variable ID of variable that changed integer zones user defined CEID 9203 ppchangename DV ASCII Affected PPID CEID 9300 AdeptGEM User s amp Reference Guide Rev P1 105 Chapter 7 The AdeptGEM Databases Tabl
19. Description Acknowledge or error Structure lt OFLACK gt 1 byte always 0 AdeptGEM User s amp Reference Guide Rev P1 59 Chapter 5 SECS II Messages S1 F17 Request ON LINE RONL S H gt E reply Description The host requests that the equipment transition to the on line state Description Header only S1 F18 ON LINE Acknowledge ONLA S H lt E Description Acknowledge or error Structure lt ONLACK gt 1 byte 0 accepted 1 not allowed 2 already on line Stream 2 Equipment Control and Diagnostics Messages that deal with control of the equipment from the host This includes all remote operations and equipment self diagnostics and calibration but specifically excludes the control operations that are associated with material transfer stream 4 loading of executive and boot programs stream 8 and all file and operating system calls streams 7 and 13 S2 FO Abort Transaction S2F0 S H lt gt E Description Used in lieu of an expected reply to abort a transaction Function 0 is defined in every stream and has the same meaning in every stream S2 F13 Equipment Constant Request ECR S H gt E reply Description This is a request to the equipment to report the values of selected equipment constants Structure L n 1 lt ECID1 gt unsigned 1 2 4 or 8 byte integer data 1 32767 n lt ECIDn gt The obsolete structure lt ECID1 ECIDn gt is also supported Excepti
20. E Description The equipment does not recognize the function type in the message block header Structure Return the header block of the message lt MHEAD gt S9 F7 Illegal Data IDN S H lt E Description This message indicates that the stream and function were recognized but the associated data format could not be interpreted Structure Return the header block of the message lt MHEAD gt S9 F9 Transaction Timer Time out TTN S H lt E Description This message indicates that a transaction receive timer has timed out and that the corresponding transaction has been aborted It is up to the host to respond to this error in an appropriate manner to keep the system operational Structure Stored header related to the transaction timer lt SHEAD gt S9 F11 Data Too Long DLN S H lt E Description Used to indicate that the equipment has been sent more data than it can handle Structure Return the header block of the message lt MHEAD gt S9 F13 Inter Block Time out TTN S H lt E Description Conversation timeout expired Structure lt MEXP gt message expected in the form SxxFyy ASCII lt EDID gt if S7F3 is returned previously referenced lt PPID gt ASCII if S2F33 is returned previously referenced lt DATAID gt integer AdeptGEM User s amp Reference Guide Rev P1 79 Chapter 5 SECS II Messages Stream 10 Terminal Services The functions of this stream are to pass textual messages b
21. ECs and DVVALS ccc ccc cnc cece ees 87 Variable IDs VIDS 2 0 0 c ccc c eee eee eeneeneeeeeennees 87 SEMI DOHA TY DOS ies 2 5 cass wees cdhnen ations he ANENA in caandendadtacis ASAREE 88 The GEM Variables Menu Page c0 cece eee e eee eee e nett ees 89 Equipment Constant ccc cece cece e eee e eee e eee ene e ene enaes 90 DaO VAG orie sana ead daa A IES 91 Status Variable Using a Numeric Variable c cece eens 93 Status Variable Using a Digital I O Signal eee 94 Status Variable Using a String Variable 0 cece 96 Status Variable Using a Vt Variable 0 c cece cece eee e nen es 97 Status Variable Using an ai ctl Value eens 98 Status Variable Using a Numeric or String Function 100 State Variable 22 0 cece EEE 101 Predefined Status Variables Equipment Constants and Data Values 00 cece ence ene e nee EEA CAER ERA 102 7 2 The GEM Items Database 0 0 ccc ence eee enter eas 106 The GEM Items Menu Page 0 cce cece eee eee ete ene ees 107 The Alarm Record Type ccc ence ene e eect ene ene eas 108 The Collection Event Record Type occ ccc ence ence neces 109 Predefined Collection Event Records 6cc cece cece ee es 110 The Report Record Type ccc ence e nent enn eas 112 The
22. L 2 1 lt ALED gt 1 byte binary 0 127 disable alarm 128 255 enable alarm 2 lt ALID gt any allowed data type Exceptions A zero length for lt ALID gt means all alarms 70 AdeptGEM User s amp Reference Guide Rev P1 SECS I Messages S5 F4 Enable Disable Alarm Acknowledge EAA S H lt E Description Acknowledge or error Structure lt ACKC5 gt 1 byte binary 0 OK 1 error S5 F5 List Alarms Request LAAR S H gt E reply Description Requests the equipment to send binary and analog alarm information Structure lt ALID1 ALIDn gt unsigned 1 2 4 or 8 byte integer data Exceptions A zero length item means send all possible alarms S5 F6 Alarm List Data LAD M H lt E Description Return the alarm data known to the equipment Structure Ln 1 L 3 1 lt ALCD1 gt 1 byte binary bit 8 1 if alarm is set bits 7 1 alarm category 2 lt ALID1 gt 2 byte unsigned integer 1 32767 3 lt ALTX1 gt ASCII data 0 40 characters n L 3 1 lt ALCDn gt 2 lt ALIDn gt 3 lt ALTXn gt Exceptions If n 0 no response can be made A zero length item returned for lt ALCDi gt or lt ALTXi gt means that the value does not exist S5 F7 List Enabled Alarm Request LEAR S H gt E reply Description Host requests list of enabled alarms Structure Header only S5 F8 List Enabled Alarm Data LEAD M H lt E Description Equipment returns list of all ena
23. P1 187 s2 pack 1ascii Chapter 9 Calling Sequence CALL s2 pack lascii Sascii Sstream arrow Function Pack a single ASCII data item into a SECS II data stream Input Parameters ascii The string to be packed stream The stream of bytes to write to receive the data item arrow The byte position in the stream to start writing data to The first byte in the stream is number 1 Output Parameters stream The modified stream of bytes arrow The byte position in the stream just following the last byte packed Details The arrow input parameter represents the character position that data should be written to in the stream and it is automatically incremented by the number of bytes packed The data item packed is always of SEMI data type 20 The maximum string size that can be packed is 128 characters Larger strings can be written if the routine s2 pack str is used File GEMS2 SQU Related Routines s2 pack str s2 unpack str 188 AdeptGEM User s amp Reference Guide Rev P1 Descriptions of Routines in the AdeptGEM Module s2 pack 1bin Calling Sequence CALL s2 pack 1lbin bits Sstream arrow Function Pack a string representation of a binary value as a binary data item into a SECS II data stream Input Parameters bits The string of ASCII 0 and 1 characters representing the binary value starting with the least significant bit stream The stream of bytes to receive the data item
24. This capability is implemented as specified in the SEMI standards It allows the host to specify which Collection Events it wants enabled It is largely transparent to the local operator and equipment The only requirement is that the operator define the Collection Events and associated reports as described in section 2 5 GEM Requirements These GEM requirements are specified in Section 4 2 1 2 4 of SEMI E30 95 1 The variable data will be completely described in the database records that hold the variables GEM Variables database After creating all your user defined SVs and ECs you can use the ASCII export option in the database utilities to export a complete description of all IDs for your various hosts 2 All VIDs delivered with AdeptGEM are unique Any additional VIDs supplied by you must also be unique 3 All variable data is available for report definition See The Report Record Type on page 112 for details on creating reports on event data collection 4 All report definitions report to event links and enable disable status is defined in database records which are permanently stored on magnetic media 28 AdeptGEM User s amp Reference Guide Rev P1 Variable Data Collection 3 4 Variable Data Collection SEMI E30 95 4 2 2 Sections ce GEM Variable GEM Variable Documentation You must document any Reports or Variables that you create Requirements This capability is impleme
25. and the array element specified by the index would hold the actual value This subroutine will convert a raw value into an actual value based on the variable type given An example conversion failure would be a negative input value and a variable type of gv type ctlv 6 this would be interpreted as an ai ctl with a negative index which is illegal A conversion failure is returned if the gtype parameter has the value gv cls datval indicating that the variable represents a Data Value File GEMENG SQU Related Routines gm get val gm get var gm set var gm user packval AdeptGEM User s amp Reference Guide Rev P1 181 line_check Chapter 9 Calling Sequence CALL line_check args error Function Statement execution routine for the LINE_CHECK statement It is used to check the status of the equipment to host connection NOTE The statement name is hard coded in the routine gm scr spawn in the file GEMAIM V2 That routine shows only numeric variables in the scrolling pick list Usage Considerations Runtime Control Robot Vision Statement Syntax LINE_CHECK gemvariable COMM_STATUS Input Parameters args Real array containing the arguments for this statement record numbers or constants The individual elements are described below gemvariable args 1 Record number from the GEM Variables database Output Parameters
26. requesting 78 DISABLE_COMM_ 83 Disabling communications 21 26 28 29 30 Displaying text on equipment terminal 80 on host terminal 80 DLN 79 Download 38 program 76 duplblockdetect 104 Duplicate block detection setting 104 Dynamic event report configuration 21 E ecidchanged 106 ecidnewval 106 EDID 79 Enable disable alarm acknowledge 71 alarm send 70 event report 65 event report acknowledge 65 Enabling AdeptGEM 13 communications 21 26 28 29 30 equipid 105 Equipment behavior level 12 constant 36 86 90 and GEM Variables database 86 data 61 namelist 63 namelist request 62 predefined 102 request 60 process program requests 40 processing state model 18 21 23 26 28 29 30 and GEMVariable database 19 collection events 110 transitions 20 status request 57 terminal services 41 Error messages 22 Establish communications 21 29 30 request 59 request acknowledge 59 Event notification 21 report acknowledge 73 data 73 75 request 73 send 73 eventlimit 105 eventsenabled 102 Example of SVs ECs and DVVALs 87 26 28 212 AdeptGEM User s amp Reference Guide Rev P1 Index F Formatted status data 58 Fundamental requirements compliance is sues 23 G GEM additional capabilities compliance de tails 25 databases 85 115 Items database 106 menu page 107 Items database 106 structure 118 requirements 21 28 29 30 31 33 35 36 39 42 43 46 statements 83
27. s amp Reference Guide Rev P1 S2 F36 S2 F37 S2 F38 2 F39 SECS II Messages c lt RPTIDc gt Exceptions A list of zero length following lt CEID gt deletes all report links to that event Link Event Report Acknowledge LERA S H lt E Description Acknowledge or error If an error condition is detected the entire message is rejected partial changes are not allowed Structure lt LRACK gt 1 byte binary 0 OK 1 out of memory 2 invalid format 3 at least one lt CEID gt is already defined 4 at least one lt CEID gt does not exist 5 at least one lt RPTID gt does not exist Enable Disable Event Report EDER S H gt E reply Description Allows the host to enable disable reporting for a group of events lt CEIDs gt Structure L 2 1 lt CEED gt 1 byte Boolean TRUE enabled FALSE disabled 2 Ln 1 lt CEID1 gt unsigned 1 2 4 or 8 byte integer data 1 32767 n lt CEIDn gt Exceptions A zero length list means all lt CEIDs gt Enable Disable Event Report Acknowledge EERA S H lt E Description Acknowledge or error If an error condition is detected the entire message is rejected partial changes are not allowed Structure lt ERACK gt 1 byte binary 0 accepted 1 denied because at least one lt CEID gt does not exist Multi block Inquire DMBI S H gt E reply Description Request permission to transmit multi block 2 F33 S2 F35 or S2 F45 mes
28. you must also change the calling sequence so that it matches the CALL line above Input Parameters vid The identification number of the variable for which information is desired stream Array of strings representing the current packed contents of the SECS II message that is being built arrow Position in the stream where the next item should be packed bypass Always set to FALSE Output Parameters stream Modified stream that contains an additional data item if the pack was successful otherwise it contains the unaltered stream arrow Position in the stream immediately following the data item that was packed or in case of error the most recent successfully packed data item bypass Set to TRUE by this routine if the standard processing for the specified variable should be skipped status Status of the operation 0 Success lt 0 Standard AIM error code Details This routine is used for custom processing of GEM variables Typically this routine would be used to determine the value of a custom status variable or data value This routine is called before the standard processing is done for GEM variables that do not have a special Adept definition Using the variable ID this routine can access the GEM variable database to obtain infor mation about the variable that is to have its value packed This routine is expected to pack the variable value into a SECS II message that is being built Depending on the v
29. 20 21 22 23 26 28 29 30 31 32 33 36 38 41 42 44 equipment processing 18 21 23 26 28 29 30 state 18 21 23 26 28 29 30 example 16 17 18 20 21 22 23 26 28 29 30 31 32 33 36 38 41 42 44 record type 113 121 structure 121 variable 101 and GEM Variables database 101 Status data collection 31 of the AdeptGEM system 34 variable 86 IDs and GEM Variables database 94 Namelist reply 58 request 58 predefined 102 using a digital I O signal 94 using a numeric or string function 100 using anumeric variable 93 using a string variable 96 using a V variable 97 using an ai ctl value 98 Stream 1 Equipment Status 57 Stream 10 terminal services 80 Stream 2 Equipment Control and Diagnos tics 60 Stream 5 exception reporting 70 Stream 6 data collection 72 Stream 7 process program management Stream 9 system errors 78 Structure of the Alarm record type 119 Collection Event record type 120 GEM Items database 118 GEM Variables database 115 Report record type 121 State record type 121 Supported messages 54 SVID 57 58 60 61 62 T T1 48 range of values 48 setting 103 T2 48 range of values 48 setting 104 T3 48 HSMS parameter 49 range of values 48 setting 104 T4 48 range of values 48 setting 104 T5 HSMS parameter 49 setting 104 T6 HSMS parameter 49 setting 104 T7 Index HSMS parameter 49 setting 104 T8 HSMS parameter 49 setting 104 Task for limit
30. 5ep 96 08 09 ad BE cis B5 Description tniz is another State record Record Type Alarm Collection Event Report State pssociated State Variable Ee State Data Action Variable E Action Alarm Action Value a Collection Event a Spawn Routine field 7 Figure 7 15 GEM Items Database The State Record Options on this page allow you to associate a state variable with a Variable ID from the GEM Variables database specify an Alarm record associated with transition to this state and specify a Collection Event record associated with transition to this state You can also specify a V routine to run on transition to this state To define a new State record 1 Create anew GEM Items record 2 Enter a name for the new record item 3 Enter a unique identifier item for a given state within a state model defined by the Asso ciated State Variable item There cannot be duplicate State IDs in the database even if AdeptGEM User s amp Reference Guide Rev P1 113 Chapter 7 The AdeptGEM Databases the Associated State Variables are different Normally a given state model will have several different State records to describe the possible states Enter an optional description for this record item Select State as the GEM Items record type item Enter a unique number item for all records associated with a given state model Must be the same number as a state
31. AdeptGEM User s amp Reference Guide Rev P1 131 gm eps get Chapter 9 Calling Sequence CALL gm eps get task prev state eps state Function This subroutine returns the current or previous state of the main equipment processing state model Input Parameters task Task number for the task of interest i e not the task index prev state Boolean TRUE to request the previous state or FALSE to request the current state Output Parameter eps state The previous or current state one of 1 Unknown 0 Running 1 Teach 2 Pause 3 Idle Details See the standard AIM routine cu set mode for more information File GEMENG SQU Related Routines cu set mode gm get sinfo gm get state 132 AdeptGEM User s amp Reference Guide Rev P1 Descriptions of Routines in the AdeptGEM Module gm estcom Calling Sequence CALL gm estcom turn on status Function Toggles the DISABLED ENABLED state in the Communications state model Usage Considerations All configuration data must have legal values for an online request to succeed Input Parameter turn on TRUE if communications should be enabled otherwise FALSE Output Parameter status 0 if successful otherwise a standard V error code Success is returned if the model is ALREADY in the desired state Details AdeptGEM cannot go online if there is already another task running in the user specified service task number unless it is a dead SERVICE task in which case
32. Constant EC Equipment constants provide a way to store values for equipment parameters These values control aspects of equipment behavior i e how many widgets to build what parts to use for a widget assembly etc Remember that these values cannot be changed by the equipment when it is in the on line state see the table below There are many cases where you will be defining your own equipment constants For example you may want to customize the equipment start up configuration for a particular process or part There are also many predefined equipment constant records that can be modified but not deleted Some of these can be changed by both the host and the equipment operator and some can be changed only by the equipment operator Data Value DVVAL Data values are values that are guaranteed to be accurate only after a specific Collection Event has been generated This method eliminates the need for constant polling of the equipment and reduces the overhead on the system For example these values could be used to store yield data from a Statistical Process Control SPC application These values can be modified by the equipment but are read only the host see the table below DVVALs can be read by the host at any time However the DVVALs are only guaranteed to be valid after a Collection Event occurs Data values can include user defined variables defined as a String function or Real function in the GEM Variables database
33. F6 Multi block Grant MBG S H gt E Description Allow multi block transmission Structure lt GRANT6 gt 1 byte binary 0 OK 1 busy 2 not interested gt 2 other error 72 AdeptGEM User s amp Reference Guide Rev P1 SECS I Messages S6 F11 Event Report Send ERS M H lt E reply Description Equipment sends a defined linked and enabled group of reports to the host upon the occurrence of an event lt CEID gt Multi block transmissions must be preceded by S6 F5 S6 F6 grant Structure L 3 1 lt DATAID gt 2 byte unsigned integer normally 0 2 lt CEID gt 2 byte unsigned integer 1 32767 3 La Ve E2 1 lt RPTID1 gt 2 byte unsigned integer 1 32767 2 L b 1 lt V1 gt any allowed data type b lt Vb gt a L 2 1 lt RPTIDa gt 2 L c 1 lt V1 gt c lt Vc gt Exceptions If there are no reports linked to the event a null report is assumed A zero length list a 0 means there are no reports linked to the given lt CEID gt S6 F12 Event Report Acknowledge ERA S H gt E Description Acknowledge or error Structure lt ACKC6 gt 1 byte binary 0 OK gt 0 error S6 F15 Event Report Request ERR S H gt E reply Description The host requests a given report group from the equipment Structure lt CEID gt unsigned 1 2 4 or 8 byte integer data 1 32767 S6 F16 Event Report Data ERD M H lt E Description Equipment sends reports linked to g
34. SECS environment are extensive and only by knowing the specification as well as how the AdeptGEM programs work can you design implement and debug your equipment 1 2 GEM SECS Primer GEM SECS provides a method of communication between a host computer system and automation equipment It specifies the format and allowable content of messages It also specifies required behaviors of equipment and host during predefined scenarios wherein the equipment and host are acting together to perform series of actions AdeptGEM User s amp Reference Guide Rev P1 11 Chapter 1 AdeptGEM Basics A Note of Caution You should note carefully that the primary intent of the specification is to give host equipment a common interface for communicating with many different types of equipment from simple feeders and conveyors to complex computer controlled equipment such as the Adept MV controller You may find that in many cases the specifications do not allow you to perform actions the way you would like to and you will be tempted to bend the specification to fit your way of operating However in the long run such a strategy will cause problems The primary benefit of GEM SECS accrues to the host and the only benefit derived by the equipment is the ability to operate in a host environment that is governed by the GEM SECS standards As such you will be better off working to the intent of the standard and modifying your procedures so they clearl
35. The AdeptGEM Database Structures This chapter provides reference information on the structure of each database included in the AdeptGEM module The databases specific to this module are e The GEM Variables Database e The GEM Items Database 8 1 Structure of the GEM Variables Database The GEM Variables database contains all of the GEM variables The structure of this database is shown in Table 8 1 Table 8 1 Structure of the GEM Variables Database Field Number Type Variable Field Name Size Array Description 0 Name name Name of variable or constant cc name 15 1 Update Date date time The date time this record was created cc update 4 or changed 2 Description string Description of the variable gm f desc 72 4 gm asize desc 4 Number of description lines 3 Menu page name name Name of the menu page and file used gm f menu 15 2 to display the records Not currently cc _page name used 4 Record Type byte Code indicating the type of variable gm f rec type 1 gm rec num 1 Record type for numeric variable gm rec str 2 Record type for string variable 5 Variable ID integer ID number for the variable This is the gv f varbl id 2 primary sort field 6 Variable Type byte Specifies the AIM data type See gv f varbl typ 1 Table 8 2 AdeptGEM User s amp Reference Guide Rev P1 115 Chapter 8 The AdeptGEM Database Structures Table 8 1 Structu
36. already implemented replies New responses require that the response code be written and the response sent with gm freeze msg File GEMUSER V2 SQU Related Routines gm freeze msg gm usersend AdeptGEM User s amp Reference Guide Rev P1 175 gm user strmN Chapter 9 Calling Sequence CALL gm user strmN Sraw hd S data arrow bypass Function Process host messages that are not supported by the baseline AdeptGEM system or modify the standard processing of messages that are supported Usage Considerations This description is for all the routines gm user strm1 gm user strm2 etc where the number represents the stream number of the message that is being processed when this routine is called These routines can be used to add or modify processing of functions in message streams that are already supported by the baseline AdeptGEM system See Table 5 1 for the steams and functions that are supported CAUTION These routines must not be deleted from memory even if they are not being used for custom processing Input Parameter raw The original header received in the SECS II primary message from the host Generally this will be used only if a stream 9 message is generated in response to the received message see below hd Header data that has been extracted from the received message The following array elements may be significant to this routine hd uc hd wait Boolean that is TRUE if the host expects a rep
37. in the first non list case str 2 is ignored The function VAL is used on each array element Only one number is read per element Zero length lists or items can be created by setting len to 0 If packing ASCII strings type 20 then zero length strings can also be used File GEMS2 SQU Related Routines 198 s2 pack lascii s2 unpack str AdeptGEM User s amp Reference Guide Rev P1 Descriptions of Routines in the AdeptGEM Module s2 scan header Calling Sequence CALL s2 scan header Sstream arrow format length Function Scan the header of a SECS II data item Input Parameters stream The input stream of bytes arrow The character position in the stream to read from next the first byte in the stream is number 1 Output Parameters arrow The character position in the stream of the body of the data item examined format The SECS II format code extracted from the header length The length in bytes of the item body except in the case of a list when the length represents the number of items in the list In case of an error in the header length is set to 1 Details From an input stream of bytes represented by stream and arrow the SECS II format code and the length of the data item body are obtained The stream pointer is incremented the correct amount to point at the start of the body of the data item The format code is extracted but not checked for validity It is up to the cal
38. information from the specified variable Input Parameter vid The identification number of the variable for which value information is needed Output Parameters value The raw value field in the variable record which may indicate the variable s value a signal number an ai ctl index etc depending on the value of vtype vtype The main type of the variable 1 Input signal 2 Output signal 3 Numeric constant 4 GEM variable 5 Vt variable 6 ai ctl value gtype GEM variable class 1 Status variable 2 Equipment Constant 3 Data value 4 State variable htype The SECS II type as seen by the host such as 52 for 2 byte unsigned integer status 0 Success 1 VID does not exist lt 0 Standard AIM database status return code Details File GEMDBASE SQU Related Routines gm set var gm var2val AdeptGEM User s amp Reference Guide Rev P1 147 gm get vflags Chapter 9 Calling Sequence CALL gm get vflags vid proc rel host rw status Function Access the GEM Variables database to retrieve Boolean flag information associated with a variable Input Parameter vid The identification number of the variable for which information is desired Output Parameters proc rel TRUE if the variable is process related otherwise FALSE host rw TRUE if the variable can be modified by the host at all otherwise FALSE status 0 Success 1 VID does not exist lt 0 Standard AIM database status return code Detai
39. is in the COMMUNICATING communications state and the on line REMOTE control state or the equipment will go into the REMOTE control state when the equipment goes on line Remote Control and AIM Control Sequences AIM control sequences and statements allow you to perform the SELECT PAUSE PROCEED and STOP operations for a standard sequence This capability provides a general purpose facility for creating remote commands that can affect sequences singly or in groups Control sequences are generally stored in the control module for each AIM application MOWCTL MOD for MotionWare VWCTL MOD for VisionWare and PCBCTL MOD for AIM PCB This module is automatically loaded when AIM is started so any sequences created in this module will be available at start up 1 These sequences will execute in the main AdeptGEM interface task so you do not have to specify a task or be concerned with whether a task is available to execute a remote command However the interface task will be tied up while the control sequence is executing so these sequences should have as short an execution time as possible Host Remote Commands There are two predefined remote commands PANIC and SPEED that perform the same functions as these two features on the control panels e Panic button L 2 1 PANIC 2s L 0 1 The default control module can be changed with an initialization record Setup Initialization Data select mowini change control s
40. is running 12 Enter the Minimum Maximum and Typical values as appropriate Data Value The next figure shows a data value DVVAL in the GEM Variables database GEM Variable Global p xi Go Seek Edit Help ECID Qcest av nt Qverievie ID 37 Date 17 Feb 97 11 07 S ID DVVAL Eb uoe Description his is an example of a user defined data value Value Not defined Onunits Identifier T GEM Variable Class r QO Parameters Data Value Status Variable Host Data Type 44 octal Equipment Const State Variable Access Control T F tel tee Minimum Value Numeric Variable u String Variable Tpit ee Maximum Value Input Signal V Variable Output Signal ai ctl Value gt Numeric Function String Function Auto Alarm Detection Figure 7 3 GEM Variables Database Data Value There are a number of predefined data values DV VALs in the AdeptGEM Variables database that cannot be changed The functions of the predefined DVVALs are described in Table 7 2 AdeptGEM User s amp Reference Guide Rev P1 91 Chapter 7 The AdeptGEM Databases The user can also define new DVVALs These are defined as a Numeric Function or String Function using the menu page shown in Figure 7 3 To define a new DVVAL ME ON Gli ce ate I Create a new GEM Variables record Enter a name for the new record item Assign a Variable ID item See Variable IDs VIDs on page 87 for more d
41. last byte packed This routine can be used to pack a list header in anticipation of packing the individual list items The items parameter represents the number of items that will be packed in the list it is up to the calling program to pack those items after this routine is called The arrow parameter represents the character position at which the data should be packed into the stream and it is automatically incremented by the number of bytes that are packed In some situations the number of items in a list is not known before the list items are packed In order to simplify the processing of such cases the items parameter can be given a non integer value to force the use of a 2 byte list length value in the list header That reserves space in the list header for the maximum number of list items Then after the list items are packed the actual length of the list can be plugged in the previously packed list header The specific steps that the calling program would use for this process are as follows 1 Save the value of arrow SA 2 Call this routine with a signal value for the number of list items This packs a list header with a 2 byte list length value that contains zero CALL s2 pack list 0 5 Sstream arrow If an expected number of list items is known that value plus 0 5 can be used in this CALL Then if it that number turns out to be correct step 5 below can be skipped 3 Pack all the individual
42. list items 4 Determine the actual number of list items that were packed N 1 The fractional part of the non integer value must be greater than 0 25 192 AdeptGEM User s amp Reference Guide Rev P1 Descriptions of Routines in the AdeptGEM Module s2 pack list 5 Call this routine again supplying the actual number of list items and the saved value of arrow This overwrites the previous list header with one containing the correct list length CALL s2 pack list N 0 5 Sstream SA Note that 0 5 must be added to the actual list length to make sure that the replacement header also uses a 2 byte list length value File GEMS2 SQU AdeptGEM User s amp Reference Guide Rev P1 193 s2 pack null Chapter 9 Calling Sequence CALL s2 pack null type Sstream arrow Function Pack a zero length item of any specified type into a SECS II data stream represented by stream and arrow Input Parameters type The SECS II data type of the zero length item to pack stream The stream of bytes to receive the data item arrow The byte position in the stream to start writing data to The first byte in the stream is number 1 Output Parameters stream The modified stream of bytes arrow The byte position in the stream just following the last byte packed Details The arrow input parameter represents the character position that data should be written to in the stream and it is automatically increment
43. make your own state model as follows 1 Define a variable in the GEM Variables database to be used to store a current state value This variable will be a status variable that can be seen by the host through a collection event status data collection etc 2 Define various state values in State records in the GEM Items database for the above vari able Actions can be associated with these values that are automatically performed upon a state transition to the value Actions include Setting a variable in the GEM Variables database to a new value Calling a V spawn routine Sending a collection event to the host Setting an alarm Combination of two or more of the above 3 Define state transitions by including lines in an AIM sequence that change the value of a state variable to a new value State Model Example The following example shows a possible user defined state model in action The defined state variable in the GEM Variables database is ProcessMode Its possible states defined in State records in the GEM Items database are Action Analysis e A transition to Action state may imply that the part has been removed from the inspection table e A transition to Analysis state may imply that a part has been placed on an inspection table A possible AIM sequence might be SET_STATE action MOVE FROM part1 FROM conveyor TO table 5 I ET_STATE analysis NSPECT OPERATION part
44. not checked by the AdeptGEM system The transfer is handled without any operator interaction The equipment user can request upload download of a resource module or disk file with the menu options Setup GEM Upload To Host and Setup GEM Download From Host 38 AdeptGEM User s amp Reference Guide Rev P1 Process Program Management When the host requests that a resource module or disk file be deleted it will be removed from disk without operator intervention or verification CAUTION SEMI requires that if the host sends a delete request with no name the equipment must delete all process programs in the directory This is done without operator intervention When the host requests an Equipment Process Program Directory EPPD the names of all the resource modules in the directory specified by EC 9302 will be transmitted Thus the list may include loaded as well as unloaded modules GEM Requirements These GEM requirements are specified in Section 4 6 4 of SEMI E30 95 1 All resource modules can be created modified and deleted using the standard AIM interface Resource modules can be deleted and transferred using the SEMI process program manage ment capabilities Resource modules cannot be modified by the host Host requests to upload delete and list resource modules on disk are handled automatically Programs downloaded from the host are written to disk CAUTION SEMI section 4 6 3 requires that If a process
45. operator may be prevented from making changes to the data CAUTION Some of the database records are predefined records There are two types of predefined records records that should not be deleted but with values you may need to change and records that should not be deleted or changed The predefined records are described with each database Be careful to not make inappropriate changes to these records CAUTION AIM 3 x allows you to create multiple copies of all databases so you can have a copy of data that is specific to a particular module There is also a global copy of all databases if you want data to be shared among multiple modules In the case of AdeptGEM databases the data is global to the entire AIM system and identical data must be shared by all executing tasks Thus you can not add any AdeptGEM databases to any module All AdeptGEM databases must be accessed globally In addition the following database management restrictions apply e Edit operations New Cut Copy Paste are not permitted if GEM communications are enabled e Predefined records i e ID s 9000 9999 cannot be cut e Changing an Item ID or record type is not permitted if GEM communications are enabled e The value in the Item ID field cannot be deleted e When the ID of an item or variable or the record type of an item is changed the database is sorted in memory only to position the record in the correct order AdeptGEM User s amp Re
46. program exists with the same PPID as the one given in the SECS II message the old process program must be replaced This means that any existing resource modules or disk files with the same names will be overwritten without warning The equipment can store as many process programs as memory will allow The logic resources associated with these process programs will not be modified by execution How ever the data resources may be modified during execution updating counters in the variable database for example The files in an AIM Resource Module are transmitted in a single file with a specific format When this file is downloaded it must be in the same format See Operations With Standard Disk Files for details on transferring standard files Downloaded resource modules are verified when they are received from the host Standard disk files are not verified Only unformatted process programs are supported The maximum size resource module that can be transmitted is limited by the size of the com munication buffer specified by EC 9154 commbufsize The initial setting for this buffer is 28Kbytes AdeptGEM User s amp Reference Guide Rev P1 39 Chapter 3 Additional GEM Capabilities Equipment Process Program Requests The equipment user can request an upload or download of a resource module or disk file To request that a resource module or file be uploaded Setup GEM Upload To Host Upload To Host OE Xx
47. record Enter a name for the new record item Enter a unique ID number for this Report record item Enter an optional description for this record item Select Report as the GEM Items record type item a a FF WN PF Enter the Variable ID numbers item for the variables that will be collected when this report is generated NOTE Variable IDs must be added to the record contiguously and starting with position number 1 The software will stop collecting variables when it finds the first 0 or empty field in the list 112 AdeptGEM User s amp Reference Guide Rev P1 The GEM Items Database In general the host will request the reports it is interested in The host can request predefined reports or it can create and link its own reports You need only define any predefined reports that the host will request When the host generates and links a report AdeptGEM will create the report and give it a random name This process is handled automatically by the system If you view the report record type you may notice new report records with random generated record names These are reports created at the request of the host The State Record Type The State record type stores information on the state models used by GEM To open the State Model record type Edit GEM Items Seek Edit double click record name GEM Items Global OX Go Seek Edit Help Ein Q states E Ostate mw 5 Date 24
48. referenced throughout this manual User defined ECs can be added to the GEM Variables database GEM Requirements These GEM requirements are specified in Section 4 5 4 of SEMI E30 95 1 Equipment constants ECs are stored in AIM databases on magnetic media 2 The equipment constant is a constant when viewed from the equipment when the control state is on line REMOTE 36 AdeptGEM User s amp Reference Guide Rev P1 Equipment Constants The host can change the EC anytime except for Process Related restrictions see table below The equipment cannot change the EC when on line REMOTE The equipment can change the EC when off line The host shall have the following capabilities and restrictions when the LOCAL state is active During processing the host shall be prohibited from modifying any equipment constants that affect that process Other equipment constants shall be changeable during processing The host shall be able to modify all available equipment constants when no processing is in progress CAUTION It is the customer s responsibility to make sure that the equipment is in a safe condition before setting equipment constants To help handle most cases the user can mark a variable as being process related or not process related The table below shows the relationship between the Control mode the process state and EC modification Proces
49. routine is controlled with equipment constant 9105 gemdebugmode in the GEM Variables database Any of the output destinations can be individually enabled or disabled with that variable Input Parameters message The message to write to the window along with a time stamp and task number added by this routine code Optional AIM error code If this parameter is specified the corresponding error message is added to the output Details The messages processed by this routine have the format hh mm ss task lt contents of Smessage gt lt error string gt where hh mm ss is the current time task is the number of the current V task lt error string gt is the standard AIM error string corresponding to the value of the code parameter or blank if code is not defined The destination for the message is determined by the value of equipment constant 9105 gemdebugmode and by the number of the V task that calls this routine as shown below Bit set in EC9105 Task Number Destination of Message 2 gm stask GEM Service window 3 Not gm stask Vt Monitor window Record the message in a temporary log of recent 4 Any messages which is available to the host as status variable 9010 Notes Bit 1 of EC9105 controls whether or not messages from the SECS I HSMS SS service task are displayed in the SECS I Debug or HSMS SS Debug window Output to those windows does not use this routine The number of messages r
50. safety requirements on the other hand this simple model may work well for things like monitoring an input signal and producing an alarm if it is turned on or off 32 AdeptGEM User s amp Reference Guide Rev P1 Remote Control NOTE During AIM startup any alarm that is found set i e from a previous session is automatically cleared without notice Automatic Alarm Detection Automatic alarm detection is setup by pressing Auto Alarm Detection on the GEM Variables database record that specifies the alarm variable see Figure 7 6 Automatic Alarm Detection Parameters G OI Variable ID 2 Alarm Enabled 4 larm ID 0 Trigger Alarm When Value Is lt O0 Trigger Alarm When Value Is gt Variable ID shows the VID from the GEM Variables database that has been selected for monitoring In Alarm ID specify a defined alarm ID from the Alarm database this alarm will be triggered if the limit is exceeded Set the upper and lower limits for the alarm and then select Alarm Enabled This VID will now be monitored automatically and compared with the limits specified If the limits are reached the actions specified in the Alarm database record for the Alarm ID will be triggered GEM Requirements These GEM requirements are specified in Section 4 3 4 of SEMI E30 95 1 All alarms and appropriate trigger s are user defined with an Alarm record type as described above 2 The enable disab
51. the control sequence initiates Structure L 2 1 lt HCACK gt 1 byte binary data 0 OK 1 command does not exist 2 cannot perform command now 3 at least one parameter is invalid 4 command will be performed with completion signaled later by an event 2 Ln l L 2 1 lt CPNAME1 gt ASCII data 2 lt CPACK1 gt 1 byte binary n L 2 1 lt CPNAMEn gt 2 lt CPACKn gt 66 AdeptGEM User s amp Reference Guide Rev P1 SECS I Messages S2 F45 Define Variable Limit Attributes DVLA M H gt E reply Structure L 2 1 lt DATAID gt unsigned 1 2 4 or 8 byte integer data 2 L m 1 L 2 1 lt VID1 gt unsigned 1 2 4 or 8 byte integer data 1 32767 2 L n 1 L 2 1 lt LIMITID1 gt 1 binary byte 1 7 2 L p p 0or 2 1 lt UPPERDB1 gt any allowed data type 2 lt LOWERDB1 gt any allowed data type n L 2 1 lt LIMITIDn gt 2 L p p 0or 2 1 lt UPPERDBn gt 2 lt LOWERDBn gt m L 2 1 lt VIDm gt 2 L n 1 L 2 1 lt LIMITID1 gt 2 L p p 0or 2 1 lt UPPERDB1 gt 2 lt LOWERDB1 gt n L 2 1 lt LIMITIDn gt 2 L p p 0or 2 1 lt UPPERDBn gt 2 lt LOWERDBn gt Exceptions A zero length list m 0 sets all limit values for all monitored VIDs to undefined A zero length list n 0 sets all limits values for the VID to undefined A zero length list p 0 sets that limit to undefined AdeptGEM User s amp Reference Guide Rev P1 67
52. the old links are not destroyed and an error is returned File GEMDBASE SQU Related Routines gm get report gm make report 154 AdeptGEM User s amp Reference Guide Rev P1 Descriptions of Routines in the AdeptGEM Module gm make report Calling Sequence CALL gm make report rptid Sname vid num status Function Access the GEM Items database and create a new Report record Usage Considerations If a Report record already exists with the given report identification number that record will NOT be modified Input Parameters rptid The identification number of the new report name The name for this record up to 15 characters vid VIDs for the variables to be reported by the report in array elements 0 through num 1 num The number of VIDs in the array vid Output Parameter status 0 Success 1 A Report record with the specified RPTID already exists lt 0 Standard AIM database status return code Details The report record is created as follows Name Set to the value of the name parameter Report ID Set to the value of the rptid parameter Update Date Set to the current the date time Description NULL strings VIDs Set array elements to the values in the vid parameter num elements are set the rest if any are set to zero in the record to indicate they are not used This routine does not verify that the VIDs are valid File GEMDBASE SQU Related Routines gm get report gm make links Ade
53. the primary sort field Thus even though there are four distinct types of records included in the same database the records are not mixed up and the database can be thought of as four separate databases connected end to end The idea of logical records still applies within each group File GEMDBASE SQU Related Routines gm ed event gm event gm get event 160 AdeptGEM User s amp Reference Guide Rev P1 Descriptions of Routines in the AdeptGEM Module gm remote cmd Calling Sequence CALL gm remote cmd name Sargname Sarg num argstat status Function This routine implements AIM functionality for the GEM Remote Control additional capability Input Parameter name Name of the remote command to be done One of the predefined GEM commands PANIC or SPEED A V program name An AIM sequence argname Argument names elements 0 to num 1 0 Name of argument 1 1 Name of argument 2 Sarg Argument values elements 0 to num 1 0 Value of argument 1 1 Value of argument 2 num Number of elements in argname and arg Output Parameter argstat Element N reports the status of input parameters argname N and arg N as follows 0 Both parameters are okay 1 One or both parameters does not exist 2 One or both parameters has an illegal value status Completion status of the request as follows 0 Okay 1 Command is not known 2 Cannot perform command right now 3 At least
54. the routine gm scr spawn in the file GEMAIM V2 That routine shows only states in the scrolling pick list Usage Considerations Runtime Control Robot Vision Statement Syntax SET_STATE gemvariable Input Parameters args Real array containing the arguments for this statement record numbers or constants The individual elements are described below gemvariable args 1 Record number from the GEM Variables database Output Parameters error Real variable that receives a value indicating whether or not the operation was successful and what action should be taken by the calling routine See the standard AIM operator error response code values for details Details This statement sends a text message to the host For the message to actually be sent the state must be Communicating and On Line However no action is taken if there is an error When this routine is executing it temporarily locks access to the variables and string databases The output GEM variable must have the type string variable File GEMSTMT SQU Statement DB STATGEM DB 206 AdeptGEM User s amp Reference Guide Rev P1 Descriptions of Routines in the AdeptGEM Module user remote cmd Calling Sequence CALL user remote cmd Sname Sargname num argstat status Function This is a user written routine that is executed in response to a remote command received f
55. variable data type record in the GEM Variables database This number creates a specific state model Refer to item for the following steps 7 10 11 Enter the Variable ID of a record in the GEM Variables database The Variable ID record spec ified here will be given the value specified in Action Value This field can be left blank Note that this is not the same record as the Associated State Variable Enter the value to give the GEM Variables database record specified in Action Variable when this state transition occurs Enter the name of the Vt routine to run when this state is entered See the routine user state spawn on page 209 for the calling parameters for this routine Enter the Alarm ID to set when entering the state Enter the Collection Event ID to trigger when this state is entered The following example shows the four states State ID 5 6 7 amp 8 associated with state model 1 114 State Record Types in the State Record Types in the GEM Items Database GEM Variables Database State ID 5 State Variable 1 Variable ID 1 State ID 6 f Current State 7 State Variable i ee State ID 7 State Variable 1 holds the current state which State ID 8 may be queried by the host State Variable 1 defines the possible states and related actions when that state is entered AdeptGEM User s amp Reference Guide Rev P1 Chapter 8
56. when SEMI compliant operation is required To display the GEM Control Panel Execute GEM Control Panel GEM Control Panel ii ks 7 Communication moo Control Enable Disable Local Remote Not Communicating Equipment Off Line Equipment Terminal Services E Acknowledge m Send Message m Clear Alarm Figure 3 3 Control State Model Options Before changes can be made to the control state model communications must be enabled 44 AdeptGEM User s amp Reference Guide Rev P1 Control Host Initiated Pressing Off Line when the system state is ON LINE will initiate the scenario that attempts to bring the equipment OFF LINE If the host accepts the off line request the equipment will transition to the OFF LINE state and the new state will be displayed at the bottom of the Control group When the equipment is off line it will respond to only host messages that request activation of the on line state An Sx FO reply will be made to all other messages Pressing On Line when the system state is OFF LINE will initiate the scenario that attempts to bring the equipment ON LINE If the host accepts the on line request the equipment will transition to the ON LINE state and the new state will be displayed at the bottom of the Control group The host can request a transition to the host OFF LINE state Once in the host OFF LINE state the host can also initiate a request for the equipment to g
57. your AIM system 124 AdeptGEM User s amp Reference Guide Rev P1 Descriptions of Routines in the AdeptGEM Module disable_comm Calling Sequence CALL disable_comm args error Function Statement execution routine for the DISABLE_COMM statement It is used to perform the action of switching from the ENABLED to the DISABLED state in the Communications State model Usage Considerations Runtime Control _ Robot _ Vision Statement Syntax DISABLE COMM Input Parameters args No arguments are used Output Parameters error Real variable that receives a value indicating whether or not the operation was successful and what action should be taken by the calling routine 0 indicates the operation was successful also returned if the model is already disabled Otherwise a standard AIM operator error response code is returned See the standard AIM operator error response code values for details Details This routine will disable host communication and place the equipment in the not communicating state Before communication can be successfully disabled the communication channel must be properly installed and configured and communications with the host must be established All the configuration options for the serial or ethernet channel as well as the GEM parameters are set in the GEM Variables database The equipment constants that define the communication configuration and GEM param
58. 1 2 4 or 8 byte integer data 1 32767 n lt VIDn gt Exceptions A zero length list n 0 requests a list of all lt VID gt values that can have a variable limit structure 68 AdeptGEM User s amp Reference Guide Rev P1 SECS I Messages 2 F48 Variable Limit Attributes Send VLAS M H lt E Description Equipment sends values and variable limit attribute definitions in the order requested Structure L m Ts 2 1 lt VID1 gt unsigned 1 2 4 or 8 byte integer data 1 32767 2 L p p 0or4 lt UNITS1 gt ASCII data 0 20 characters lt LIMITMIN1 gt minimum value allowed for variable lt LIMITMAX1 gt maximum value allowed for variable Ln 1 L 3 1 lt LIMITID1 gt 1 byte binary data 1 7 2 lt UPPERDB1 gt any allowed data type 3 lt LOWERDB1 gt any allowed data type Ne B n L 3 1 lt LIMITIDn gt lt UPPERDBn gt 2 3 lt LOWERDBn gt m L 2 lt VIDm gt Lp 1 lt UNITSm gt 2 lt LIMITMINm gt 3 4 Ml lt LIMITMAXm gt Ln 1 L3 1 lt LIMITID1 gt 2 lt UPPERDB1 gt 3 lt LOWERDB1 gt n L 3 1 lt LIMITIDn gt 2 lt UPPERDBn gt 3 lt LOWERDBn gt Exceptions A zero length list p 0 indicates that limits are not supported for the lt VID gt A zero length list n 0 indicates no limits are currently defined for the specified variable AdeptGEM User s amp Reference Guide Rev P1 69 Chapter 5 SECS II Message
59. 1 L 3 1 lt SVID1 gt 2 byte unsigned integer 1 32767 2 lt SVNAME1 gt ASCII 0 15 characters 3 lt UNITS1 gt ASCII 0 20 characters n L 3 1 lt SVID1 gt 2 lt SVNAME1 gt 3 lt UNITS1 gt 58 AdeptGEM User s amp Reference Guide Rev P1 S1 F13 S1 F14 S1 F15 S1 F16 SECS I Messages Establish Communications Request CR S H lt gt E reply Description This message provides a means of initializing communications at start up or after a communications break Structure je 1 lt MDLN gt ASCII data A 4 bytes from V function ID 1 1 2 lt SOFTREV gt Software version ID 3 1 and revision ID 4 1 ASCII data 4 bytes or value from equipment constant 9301 see ECID 9102 Exceptions Host sends a zero length list Establish Communications Request Acknowledge CRA S H lt gt E Description Accept or deny Establish Communications Request Structure T2 1 lt COMMACK gt 1 byte 0 accepted 1 denied 2 L 2 1 lt MDLN gt ASCII data A 4 bytes from V function ID 1 1 2 lt SOFTREV gt Software version ID 3 1 and revision ID 4 1 ASCII data 4 bytes or values from Equipment Constant ID 9301 Exceptions The host sends a zero length list for item 2 Request OFF LINE ROFL S H gt E reply Description The host requests that the equipment transition to the off line state Structure Header only OFF LINE Acknowledge OFLA S H lt E
60. 1 When a state in a user defined state model is entered the user can indicate that an alarm be trigger The alarm to be triggered is defined by a State record type See The State Record Type on page 113 for details on specifying an alarm for a state transition 2 An AIM sequence may explicitly turn on an alarm See GENERATE_ALARM on page 83 for details on setting an alarm using a statement 3 A GEM variable can be monitored for a transition to an unsafe value If this occurs an alarm is triggered The system must be in the communicating state for this option See Automatic Alarm Detection below After an alarm is set the host will be notified if reporting is enabled Additionally the alarm will be displayed on the GEM Control Panel see Figure 3 1 If desired an AIM sequence can be run configured in the Alarm record type When the operator presses Clear Alarm on the control panel see Figure 3 1 it is assumed that the error condition has been corrected The alarm is cleared automatically and a clear acknowledgment is sent to the host if reporting is enabled If the alarm was initially triggered by a monitored variable it is possible that the variable could still be in a bad condition The alarm will not be triggered again unless there is a transition to a good zone and then back to a bad zone Consider this carefully when designing alarms An AIM sequence may be the only way to ensure proper factory
61. 160 characters The characters may be displayed on more than one line 3 Messages received from the host will be displayed on the control panels 4 The message will be displayed on the control panel when the message is received to alert to the operator that there is a message from the host 5 An Acknowledge button on the control panel will notify the host the message was acknowledged 6 The fixed maximum size of a message that can be received from the host will be 240 charac ters Longer messages will be truncated 7 As described above the GEM control panel will accept message text and generate an appro priate SECS II message 8 Multi block messages are supported 9 A zero length terminal message will erase any previous message from the host at which point the host will not expect an acknowledgment 3 13 Clock SEMI E30 95 4 10 Sections Database None Usage Documentation None Requirements The clock requirement is implemented as defined by SEMI The optional scenario where the operator requests a time value from the host is implemented The operator of the equipment can request host time as described below To display the AdeptGEM clock Setup GEM Time 42 AdeptGEM User s amp Reference Guide Rev P1 Clock Current Date Time ME 28 Oct 96 11 54 08 change Sync With Host Done Press Sync With Host to automatically synchronize the equipment clock with the host clock Press
62. 2 unpack 1lreal Sstream arrow value status Function Extract a numeric value from a SECS II data stream Usage Considerations This routine should normally only be used when you know in advance that only one item should appear See s2 scan header for information on how to look ahead at a data item Input Parameters stream The input stream of bytes arrow The character position in the stream to read from next Output Parameters arrow The location of the next item in the stream if any value The real value obtained from the data item status Status indicator 0 Real value extraction was successful 1 One or more items couldn t be converted 2 There is an error in the stream 3 The stream was OK but no value was extracted possible for a zero length list Details This subroutine works exactly like s2 unpack real except that it only obtains one number rather than an array of numbers All the list collapsing functionality of s2 unpack real is still available with this routine However if more than one value is extracted from the next item in the stream only the first value is returned File GEMS2 SQU Related Routines s2 pack 1real s2 pack reals s2 unpack real AdeptGEM User s amp Reference Guide Rev P1 201 s2 unpack real Chapter 9 Calling Sequence CALL s2 unpack real Sstream arrow pos val status Function Extract a real value or array of real values from a SECS II data item In
63. 3 gm get str 144 gm get strinfo 145 em get val 146 gm get var 147 gm get vflags 148 gm get vid list 149 gm get vinfo 150 gm lineset 151 gm log 152 gm make links 154 gm make report 155 gm new head 156 gm next rec 119 gm pack mdIn 157 gm pack val 158 gm raw alarm 159 gm raw event 160 gm remote cmd 161 gm send hostmsg 163 gm seq spawn 164 gm set str 165 gm set var 166 gm sr alarm 167 gm streamN 168 gm user init 169 gm user packval 170 171 gm user rc 173 gm user reply 175 gm user strml1 176 gm usersend 179 gm var2val 181 L LINE_CHECK 83 line_check 182 R RUN_CHECK 84 run_check 184 S s2 bytes2float 186 s2 bytes2int 187 s2 pack lascii 188 s2 pack 1bin 189 s2 pack 1real 190 s2 pack list 192 s2 pack null 194 s2 pack reals 195 s2 pack str 197 s2 scan header 199 s2 stream trim 200 s2 unpack 1real 201 s2 unpack real 202 s2 unpack str 203 SEND_HOST_MSG 16 21 32 4l 84 send_host_msg 205 Sequence statements 83 SET_STATE 84 AdeptGEM User s amp Reference Guide Rev P1 219 Index of Programs and Statements set_state 206 Statements DISABLE_COMM_ 83 GENERATE_ALARM 83 GENERATE_EVENT 83 LINE_CHECK 83 RUN_CHECK 84 SEND_HOST_MSG 16 21 32 41 84 sequence 83 SET_STATE 84 U user remote cmd 207 user state spawn 209 220 AdeptGEM User s amp Reference Guide Rev P1 Index of Global Variable
64. 4 or 8 byte integer data 1 32767 AdeptGEM User s amp Reference Guide Rev P1 63 Chapter 5 SECS II Messages b lt VIDb gt a L 2 1 lt RPTIDa gt 2 L c 1 lt VID1 gt c lt VIDc gt Exceptions A zero length list following lt DATAID gt deletes all report definitions and associated links A zero length list following lt RPTID gt deletes that report and all lt CEID gt links to that report S2 F34 Define Report Acknowledge DRA S H lt E Description Acknowledge or error If an error occurs the entire message is rejected i e partial changes are not allowed Structure lt DRACK gt 1 byte binary 0 accept 1 insufficient memory space or other serious error 2 invalid format 3 at least one lt RPTID gt already defined 4 at least one lt VID gt does not exist 2 F35 Link Event Report LER M H gt E reply Description This message allows the host to link reports to an event lt CEID gt These linked events will default to disabled upon linking If this is multi block it most be preceded by the S2 F39 S2 F40 Inquire Grant transaction Structure L 2 1 lt DATAID gt ignored unsigned 1 2 4 or 8 byte integer data 2 L a 1 L 2 1 lt CEID1 gt unsigned 1 2 4 or 8 byte integer data 1 32767 2 L b 1 lt RPTID1 gt unsigned 1 2 4 or 8 byte integer data 1 32767 b lt RPTIDb gt a L 2 1 lt CEIDa gt 2 L c 1 lt RPTID1 gt 64 AdeptGEM User
65. 9 Figure 7 10 Figure 7 11 Figure 7 12 Figure 7 13 Figure 7 14 Figure 7 15 Equipment Processing State Model 0 cece eee eee 19 GEM Control Panel Establish Communication Options 27 Message WINdOW certare ded eo dee ner eeenbie ned enedee h raa ade lt 41 Control State Model Options 0 0 cece eee 44 GEM Variables Menu Page 002 c cece eect eee eee 89 GEM Variables Database Equipment Constant 0000eee 90 GEM Variables Database Data Value 0 0c cece eee 91 GEM Variables Database Status Variable Using a Numeric Variable 93 GEM Variables Database Status Variable ID Using Digital I O 94 GEM Variables Database Status Variable Using a String Variable 96 GEM Variables Database Status Variable Using a Vt Variable 97 GEM Variables Database Status Variable Using an ai clit Value 98 GEM Variables Database Data Value 0 20 c eee 100 GEM Variables Database State Variable 00200e eee eee 101 Initial GEM Items Menu Page 000 e eee eee eee eee 107 GEM Items Database Alarm Record 0 6 e eee eee 108 GEM Items Database Collection Event Record 00 eee eee 109 GEM Items Database Report Record 0 0 cee eee 112 GEM Items Database The State Record 20 cece eee eee eee 113 AdeptGEM User s amp Reference Guide Rev P1 9 Table of Contents List of
66. Adept side is always equipment AdeptGEM User s amp Reference Guide Rev P1 51 Chapter 5 SECS II Messages This chapter provides information about all the SECS II messages that the AdeptGEM system can exchange with a host In most cases the user of AdeptGEM will not need to be concerned with this message detail because AdeptGEM takes care of correctly formatting messages to the host and decoding messages from the host However the host will need to be supplied with this information so it will know the specific message details that are implemented in the AdeptGEM system This documentation follows the standards and conventions used by SEMI in documenting standard E5 95 The mnemonics enclosed in less than greater than brackets for example lt MDLN gt correspond to the defined data items in SEMI specification E5 95 section 6 5 Data Item Dictionary 5 1 General Information This section provides general information about the AdeptGEM implementation of SECS II messages Manufacturer and Product Number The baseline AdeptGEM system is developed supplied and maintained by Adept Technology Inc In addition to the features described in this manual the system can be enhanced and modified by AIM system customizers who are responsible for documenting any changes to the baseline system The Adept part number for the AdeptGEM system is 90713 01910 General Description of Equipment Function The Adept MV controllers
67. CID 9154 in the GEM Variables database The absolute maximum size is 64KB 65 535 bytes The SECS II layer may impose limits on the size of many messages 4 Message interleaving is supported 5 Only one device ID is supported per CPU set with equipment constant ID 9151 in the GEM Variables database 6 Only one transaction is processed at a time 4 4 HSMS Details There are several parameters that can be set to influence the behavior of the AdeptGEM programs The HSMS layer parameters are defined in the SEMI specification and are presented here In some cases the setting of these parameters will be obvious based on the physical equipment the IP address for example is determined by the setting of the host Other parameters will need to be determined based on the behavior of the equipment in the host environment The T7 and T8 parameters for example do not have an intrinsic correct value but depend on the acceptable behavior of the entire system All the HSMS parameters are stored as equipment constants in the GEM Variables database see Table 4 2 and Table 7 2 The following table shows the range default and resolution for each parameter T3 T8 values are in seconds Table 4 2 HSMS Parameter Values Parameter ECID Default Min Max Resolution T3 9108 45 1 120 1 T5 9110 10 1 240 1 T6 9111 5 1 240 1 T7 9112 10 1 240 1 T8 9113 5 1 120 1 PASSIVE Connect Mode Auto d
68. Calling Sequence CALL gm raw alarm lrec alid alcd Saltx enabled status Function Access the Alarm records in the GEM Items database to retrieve information about the alarm in a specified logical record number Input Parameter lrec The logical record number for the Alarm record to retrieve 1 2 Output Parameters alid The alarm identification number of the alarm found in the database ALID alcd Alarm code byte ALCD Bit8 mask H80 Set if alarm is set Bit 7 1 mask H7F Alarm category NOTE The GEM standard does not use the alarm category which is supported by the SECS II standard The alarm category is supported by the AdeptGEM system for situations for which it is desirable to categorize alarms altx The up to 40 character alarm text string ALTX enabled TRUE if the reporting of the alarm to the host is enabled otherwise FALSE status 0 Success 1 Database record does not exist lt 0 Standard AIM database status return code Details The most common use of this subroutine would be to retrieve the first record then the second then the third etc until status returns 1 which would achieve a full traversal of the Alarm records in the database Within the GEM Items database the record type Alarm Event Report State is used as the primary sort field Thus even though there are four distinct types of records included in the same database the records are not mixed up and the database can be
69. Command is not known 2 Cannot perform command right now 3 Atleast one parameter is invalid i e at least one argstat lt gt 0 AdeptGEM User s amp Reference Guide Rev P1 207 user remote cmd Chapter 9 Details This routine is called by gm remote cmd when a remote command is received from the host in an 2 F41 message and the following conditions are satisfied 1 The command is not processed by the user modified routine gm user re 2 The command name does not match one of the commands that are predefined in the baseline AdeptGEM system 3 The command name does match the name of this routine The user modified routine gm user rc could also call this routine This routine should perform whatever steps are appropriate to process the requested remote command Then the status parameter should be set to one of the values listed above or any other value the host accepts as the HCACK acknowledge code in an 2 F42 message File This is a user written routine It is not provided with the AdeptGEM module Related Routines 208 gm remote cmd gm user rc AdeptGEM User s amp Reference Guide Rev P1 Descriptions of Routines in the AdeptGEM Module user state spawn Calling Sequence CALL user state spawn vid state_id Function This is a user written routine that will be executed in response to a state transition You can give this spawn routine any valid V program name The name you choose must match the na
70. D 9102 in the GEM Variables database and is specified by ECID 9301 This capability is supported by the S1F1 S1F2 message scenario 2 7 Error Messages SEMI E30 95 4 9 Sections Database None Usage Documentation None Requirements Error messages are implemented as described in Section 4 9 3 in SEMI E30 95 and the SECS II scenarios described in Section 4 9 5 in SEMI E30 95 This capability requires no equipment operator intervention or set up 22 AdeptGEM User s amp Reference Guide Rev P1 Control Operator Initiated 2 8 Control Operator Initiated SEMI E30 95 4 12 except 4 12 5 2 Sections Database Usage GEM Variable Report GEM Variable gt GEM Variable o Alarm Report Reporti GEM Variable GEM Variable Report GEM Variable Documentation The Control State model is described in this manual Requirements Collection Event This requirement is part of the Control State Model which is described in section 3 14 2 9 Fundamental Requirements Compliance Issues Variable Data Items Required Variable Data Items are supplied with the GEM Variables database and are stored as a special record type GEM Internal variable type SECS II Data Item Restrictions The data item restrictions required by section 5 1 Data Item Restrictions in the SEMI standards are suppor
71. ECIDn gt Exceptions A zero length list means send information for all ECIDs 62 AdeptGEM User s amp Reference Guide Rev P1 SECS I Messages S2 F30 Equipment Constant Namelist ECN M H lt E Description Data response to 2 F29 Structure Ln 1 L 6 1 lt ECID1 gt 2 byte unsigned integer 1 32767 lt ECNAME1 gt ASCII 0 15 characters lt ECMIN1 gt any allowed data type lt ECMAX1 gt any allowed data type lt ECDEF1 gt any allowed data type lt UNITS1 gt ASCH 0 20 characters Au wR wN lt ECIDn gt lt ECNAMEn gt lt ECMINn gt lt ECMAXn gt lt ECDEFn gt lt UNITSn gt OY Soe SNe S2 F31 Date And Time Set Request DTS S H gt E reply Description Set the equipment time base Structure lt TIME gt ASCII 12 characters in the form yymmddhhmmss S2 F32 Date And Time Set Acknowledge DTA S H lt E Description Acknowledge receipt of the time and date Structure lt TIACK gt 1 byte binary 0 OK 1 error 2 F33 Define Report DR M H gt E reply Description The message allows the host to define a group of reports for the equipment If this is a multi block message it must be preceded by the S2 F39 S2 F40 Inquire Grant transaction Structure L 2 1 lt DATAID gt ignored unsigned 1 2 4 or 8 byte integer data 2 L a Ie L2 1 lt RPTID1 gt unsigned 1 2 4 or 8 byte integer data 1 32767 2 L b 1 lt VID gt unsigned 1 2
72. EM Requirements 0 ccc ccc ene ene cnet nee ene eas 13 Installing AdeptGEM 0 cece cece cece ene eben tenet eae 13 Enabling AdeptGEM 0 ccc ccc t netted 13 Adding AdepiGEM to an Existing AIM Installation 13 Activating the AdeptGEM Option ccc cece ccc ence rnrn 13 GEM Compliance Statement c ccc cece ccc e eee nent aes 14 Fundamental GEM Requirements 6 5 0c cc cence rriren 15 IMMOGQUCTION oeei a anra Rr aea A AAA tase EEEa ENEE AEREE 15 GEM Compliance Details 0 0 ccc ence erener erenn rnrn nee 15 State Models nn nannaa ereere rarere rnrn rnrn r rrr r rrer n rnrn rnrn rnnr 16 SEMI Required State Models ccc cece cece cece tenet ene e ns 17 State Model Example 0 cece cece eee rarer eee nee nee ene enaes 17 Equipment Processing State Model 00 cece cece cece eee ene ees 18 Host Initiated 1 F13 F14 Scenario ccc eee e cece cence ees 20 Event NONfCORON lt oscccs cher csssdas cacetdanswnseaalaaiaead adsieidereisesieed AEREAS 21 Host Interaction With Collection Events 00 c cece cence eee ees 21 GEM Requirements 0 cece ccc eee e nen enter eens 21 On line Identification aan ccc e rererere rerne rnrn rrr r rreren n gt 22 Error Messages sicir ocenenie eei a E EEE EE E a
73. F12 S1 F13 S1 F14 S1 F15 S1 F16 S1 F17 S1 F18 S1 F2 S1 F3 S1 F4 57 57 57 57 58 S1 F1 57 S10 FO S10 F1 S10 F10 S10 F2 S10 F3 S10 F4 S10 F5 S10 F6 S10 F9 S2 FO S2 F13 S2 F14 S2 F15 S2 F16 S2 F17 S2 F18 S2 F23 S2 F24 S2 F29 S2 F30 S2 F31 S2 F32 S2 F33 S2 F34 S2 F35 S2 F36 S2 F37 S2 F38 S2 F39 S2 F40 S2 F41 S2 F42 S2 F45 S2 F46 S2 F47 80 S2 F48 S5 FO S5 F1 S5 F2 S5 F3 S5 F4 S5 F5 S5 F6 S5 F7 S5 F8 S6 FO S6 F1 S6 F11 S6 F12 S6 F15 S6 F16 S6 F17 S6 F18 S6 F19 S6 F2 S6 F20 S6 F21 S6 F22 S6 F5 S6 F6 S7 FO S7 F1 S7 F17 S7 F18 S7 F19 S7 F2 S7 F20 S7 F3 S7 F4 S7 F5 S7 F6 S9 FO S9 F1 S9 F11 S9 F13 S9 F3 S9 F5 S9 F7 S9 F9 SECS I 69 70 70 70 70 71 71 71 71 78 79 79 79 47 details parameters requirements other SECS II data item restrictions Select equipment status request AdeptGEM User s amp Reference Guide Rev P1 215 SEMI datatypes 88 required state models 17 SEND_HOST_MSG_ 84 Sequence download 38 upload 38 servicetasknum 105 SET_STATE 84 SOFTREV user defined 22 103 106 Software revision code 53 Speed remote command 35 startcomen 103 State model 16 18 20 21 22 23 26 28 29 30 31 32 33 36 38 41 42 44 and sequences 17 communication 21 26 28 29 30 control 44 database and State models 17 defining 16 18
74. F17 S2F18 S5F1 S5F2 S6F1 S6F2 S6F5 S6F6 S6F11 S6F12 S7F1 S7F2 S7F3 S7F4 S9F1 S9F3 S9F5 S9F6 S9F7 S9F13 S10F1 S10F2 56 AdeptGEM User s amp Reference Guide Rev P1 SECS I Messages 5 3 Message Details This section details the message streams and functions that are supported by the Adept SECS II implementation Note however that system customizers can add support for additional host messages and they can modify the response messages from the equipment Stream 1 Equipment Status This stream provides a means for exchanging information about the status of the equipment 1 F0 Abort Transaction S1F0 S H lt gt E Description Used in lieu of an expected reply to abort a transaction Function 0 is defined in every stream and has the same meaning in every stream Structure Header only S1 F1 Are You There Request R S H lt gt E reply Description Establishes if the equipment is on line A function 0 response to this message means the communication is inoperative In the equipment a function 0 is equivalent to a time out on the receive timer after issuing S1 F1 to the host Structure Header only S1 F2 On Line Data D S H lt gt E Description Data signifying the equipment is on line Structure LD 1 lt MDLN gt ASCII data A 4 bytes from V function ID 1 1 2 lt SOFTREV gt Software version ID 3 1 and revision ID 4 1 ASCII data 4 bytes or value fr
75. GEM User s amp Reference Guide Rev P1 Descriptions of Routines in the AdeptGEM Module gm set str Calling Sequence CALL gm set str vid Sstring status Function Set the value of a string variable in the GEM Variables database Input Parameters vid The identification number of the string variable whose value is to be changed string The new value for the string an empty string is allowed as the value Output Parameter status 0 Success 1 No string variable with the specified ID exists lt 0 Standard AIM database status return code Details File GEMDBASE SQU Related Routines gm get str gm get strinfo AdeptGEM User s amp Reference Guide Rev P1 165 gm set var Chapter 9 Calling Sequence CALL gm set var vid value status Function Access the GEM Variables database to change the Value field for a desired variable Note that the Value field is not necessarily the actual value of the variable but could be a signal number or ai ctl index Input Parameters vid The identification number of the variable to change value The new value for the Value field Output Parameter status 0 Success 1 Specified variable does not exist lt 0 Standard AIM database status return code Details File GEMDBASE SQU Related Routines gm get val gm get var gm set str gm var2val 166 AdeptGEM User s amp Reference Guide Rev P1 Descriptions of Routines in the AdeptGEM Module gm sr alarm Calling Sequence CA
76. GEM User s amp Reference Guide Rev P1 143 gm get str Chapter 9 Calling Sequence CALL gm get str strid Sstr vtype gtype status Function Access the string database to retrieve a configuration string Input Parameter strid the identification number of the desired string Output Parameters str the string requested vtype Variable type code returns 0 if error gtype GEM variable class returns 0 if error status 0 success 1 string identification number does not exist lt 0 standard AIM database status return code Details File GEMDBASE SQU Related Routines gm get strinfo gm set str 144 AdeptGEM User s amp Reference Guide Rev P1 Descriptions of Routines in the AdeptGEM Module gm get strinfo Calling Sequence CALL gm get strinfo vid name pr host rw Stypical status Function Accesses a string variable in the GEM Variables database to retrieve miscellaneous information regarding the string a name for the string a flag indicating whether or not the string is process related and a typical default value for the string Input Parameter vid The identification number of the string variable for which the information is desired Output Parameters name The name of the string 1 15 characters pr TRUE if the string is process related otherwise FALSE host rw TRUE if the variable can be modified by the host typical The typical or default value status 0 Success 1 No string vari
77. GEMSTMT SQU Statement DB STATGEM DB Related Routines AdeptGEM User s amp Reference Guide Rev P1 127 gm alarm Chapter 9 Calling Sequence CALL gm alarm alid set Function Toggles an alarm ON or OFF generates any actions associated with the alarm and if necessary causes an alarm report message to be sent to the host Input Parameters alid The alarm identification number set TRUE if the alarm should be turned on otherwise FALSE Details This routine automatically handles the complexities associated with alarm management such as checking to see if the host is on line changing or checking flags in an Alarm database record generating events calling spawn routines etc If a message should be sent it is not sent right away but instead it is frozen queued to be sent later thus allowing the calling program to continue without delay File GEMENG SQU Related Routines gm ed alarm gm get alarm gm raw alarm gm sr alarm 128 AdeptGEM User s amp Reference Guide Rev P1 Descriptions of Routines in the AdeptGEM Module gm com test Calling Sequence CALL gm com test status Function Send an S1F13 message to see if the host is responding Output Parameter status 0 if the host responds to the request otherwise a V error code Details This routine sends an S1F13 message to the host If the host responds as expected with an S1F14 response status is set to 0 File GEMENGC SQU Related Routi
78. I DB file and set the GEM Enable record to ON The AdeptGEM module is automatically loaded the next time AIM is started Adding AdeptGEM to an Existing AIM Installation You can install the AdeptGEM system to an existing AIM installation simply by copying the AdeptGEM files to the existing installation using the DISKCOPY utility program NOTE If the GEM host will be invoking AIM sequences or Vt routines with the GEM remote control capability see section 3 9 on page 33 you should add the following line to the AIM startup command program e g Imow in the file LMOW V2 MC STACK 16 20 Activating the AdeptGEM Option If your Adept system was not shipped with the GEM SECS option already activated it must be activated This is a simple matter of typing INSTALL at the system prompt typing the password that came with the GEM amp SECS I II Applications license and then pressing the Enter key See the description of the INSTALL command in the V Operating System Reference Guide 1 Systems that are at the limit of available memory or CPU power will probably require the next level upgrade AdeptGEM User s amp Reference Guide Rev P1 13 Chapter 1 AdeptGEM Basics 1 5 GEM Compliance Statement The following compliance statement indicates the level of compliance of the baseline AdeptGEM system with the SEMI E30 95 standards Table 1 1 GEM Compliance Statement
79. In this latter case the calling program would need to scan at least part of the stream manually When an item of type 10 is encountered 8 bits from the data stream are stored per array element File GEMS2 SQU Related Routines s2 pack 1real s2 pack reals s2 unpack 1real 202 AdeptGEM User s amp Reference Guide Rev P1 Descriptions of Routines in the AdeptGEM Module s2 unpack str Calling Sequence CALL s2 unpack str Sstream arrow pos Sstr status Function Extract a string or array of strings from a SECS II data item Input Parameters stream The input stream of bytes arrow The character position in the stream to read from next pos The element number of the output array to receive the first string Subsequent strings are stored in higher numbered elements Output Parameters arrow The location of the next item in the stream if any pos One greater than the highest array element of str used This value can help indicate how many strings were actually extracted str The string s obtained from the data item status Status indicator 0 String extraction was successful 1 One or more items couldn t be converted 2 There is an error in the stream Details The data item examined is at the byte position indicated by arrow in the stream of bytes stream After this function is called arrow is incremented to the next item unless there is an error in the stream All conversions are p
80. LL gm sr alarm alid set status Function Accesses the Alarm records in the GEM Items database to set or reset a specified alarm Usage Considerations This routine only changes the enable disable flag it does not trigger any of the events specified in the alarm record Input Parameters alid The identification number of the alarm to set or reset set TRUE if the alarm should be set otherwise FALSE Output Parameter status 0 Success 1 The specified alarm record does not exist lt 0 Standard AIM database status return code Details File GEMDBASE SQU Related Routines gm alarm gm ed alarm gm get alarm gm raw alarm AdeptGEM User s amp Reference Guide Rev P1 167 gm streamN Chapter 9 Calling Sequence CALL gm streamN Sraw hd Sdata arrow Function Process messages for a SECS II message stream Usage Considerations This description is for all the routines gm stream1 gm stream2 etc where the number represents the stream number of the message that is being processed when this routine is called These programs exist for all the SECS II message streams that are supported by the baseline AdeptGEM system see Table 5 1 Anew program with the appropriate name must be created to add support for a new SECS II message stream See gm user strmN on page 176 for information on the program parameters The defined streams are 1 2 5 6 7 9 amp 10 NOTE The routines gm streamN do not use the bypass par
81. M Variables Database Status Variable Using a Numeric Variable To define a new status variable that uses a numeric variable Create a new GEM Variables record Enter a name for the new record item Assign a Variable ID item See Variable IDs VIDs on page 87 Enter an optional description of this record item Select Status Variable as the GEM Variables class item Select Numeric Variable as the Variable Type item Specify a Value for the variable item on DF YW N e Enter a units identifier item that will be sent to the host when this Variable ID is reported The units identifier should correspond to the identifiers described in Section 9 Units of Mea sure in SEMI E5 95 Refer to item for steps 9 through 12 9 Specify a Host Data Type See Table 7 1 Host Data Types on page 88 AdeptGEM User s amp Reference Guide Rev P1 93 Chapter 7 The AdeptGEM Databases 10 Specify the Access Control Enter a single digit 0 4 in this field to specify the user access level required to change the record Insert a 1 no modification allowed or 0 modification allowed in front of the access digit to control host modification of the record 11 Enter the Minimum Maximum and Typical values as appropriate 12 If this record relates to a limit enter the number of the limits monitoring event This number is a Collection Event ID in the Collect Event record type See sectio
82. MI Data Types The host data types come from a list of data types defined in the SEMI E5 95 standard The following table provide a list of the available host data types and indicates those that are not supported Table 7 1 Host Data Types Supported Octal Meaning Y N 00 LIST length in elements Y 10 Binary Y 11 Boolean Y 20 ASCII Y 21 JIS 8 N 30 8 byte integer signed N 31 1 byte integer signed Y 32 2 byte integer signed Y 34 4 byte integer signed Y 40 8 byte floating point N 44 4 byte floating point Y 50 8 byte integer unsigned N 51 1 byte integer unsigned Y 52 2 byte integer unsigned Y 54 4 byte integer unsigned Y Notes 1 Non printing characters are equipment specific 2 Most significant byte sent first 3 a 754 The byte containing the sign bit is sent irst 88 AdeptGEM User s amp Reference Guide Rev P1 The GEM Variables Database The GEM Variables Menu Page The GEM Variables menu page is used to create records of equipment constants ECs status variables SVs and data values DVVALs The records are stored in the GEM Variables database To create a GEM Variables database record Edit GEM Items Edit New Record A new record is displayed Figure 7 1 shows an example of a completed record GEM Variable Global qo S ID DYYAL 4 This is a sample GEM Variable database record
83. P1 123 Chapter 9 Calling Sequence The format of a Vt CALL instruction for the routine is shown NOTE The variable names used for the routine parameters are for explanation purposes only Your application program can use any variable names you want when calling the routine NOTE Some calling sequences will not fit on a single line and are shown on two lines However all calling sequences must be entered on a single line in Vt programs Function This is a brief statement of the function of the routine Usage Considerations This section is used to point out any special considerations associated with use of the routine Statement Syntax For statement routines this section shows the statement syntax Input Parameters Each of the input parameters in the calling sequence is described in detail For parameters that have a restriction on their acceptable values the restriction is specified Output Parameters Each of the output parameters in the calling sequence is described in detail Details A complete description of the routine and its use is given File The name of the program file in which this routine is contained Statement DB For statement routines the name of the statement database this routine references Related Routines Other AIM routines which are related to the function of the current routine are listed NOTE Some of the routines listed may be documented in the reference guide for a different portion of
84. State Record Type ccc cence ene e been cnet cnet as 113 State Record Types in the GEM Items Database 114 State Record Types in the GEM Variables Database 114 Chapter 8 The AdeptGEM Database Structures eee 115 8 1 Structure of the GEM Variables Database cece eee eee eee 115 8 2 Structure of the GEM Items Database cc ccc cence eee es 118 Structure of the Alarm Record Type 0 cc cece ccc ene cence ene ee as 119 Structure of the Collection Event Record Type 00000 0 120 Structure of the Report Record Type c ccc ccc cece ence ene 121 Structure of the State Record Type ccc ccc ence ence neces 121 AdeptGEM User s amp Reference Guide Rev P1 7 Table of Contents Chapter 9 Descriptions of Routines in the AdeptGEM Module 123 BNE Kove Bode yaa bean nenebiree exeann E napa ae aiden em Peni Gaeta S 211 Index of Programs and Statements 0 cece cece eee t eect nee een ees 219 Index of Global Variables cee cec ocsececnanirnevaw nie wtsviadeiAaasaaeiabieta eeraeiateareeses 221 8 AdeptGEM User s amp Reference Guide Rev P1 Table of Contents List of Figures Figure 2 1 Figure 3 1 Figure 3 2 Figure 3 3 Figure 7 1 Figure 7 2 Figure 7 3 Figure 7 4 Figure 7 5 Figure 7 6 Figure 7 7 Figure 7 8 Figure 7
85. Tables Table 1 1 GEM Compliance Statement 0 c cee eee 14 Table 2 2 Equipment Processing State Model Transitions 0000eeaee 20 Table 4 1 Communication Parameters 0 0c eee 48 Table 4 2 HSMS Parameter Values 0 c eee ees 49 Table 4 3 HSMS Parameter Description 000 ees 50 Table 5 1 SECS II Messages Understood by the Equipment 055 54 Table 5 2 SECS IIl Messages Initiated by the Equipment 00008 56 Table 7 1 Host DaN TIDO snra Seed encetiade re heen eh Seow ieee 88 Table 7 2 Predefined SVs ECs and DVVALS 0 0 cee eee 102 Table 7 3 Predefined Collection Events 0 00 c eee eee eee 110 Table 8 1 Structure of the GEM Variables Database 0 cece eee 115 Table 8 2 Values For Variable Type Field 0 0 ee ee 117 Table 8 3 Values For GEM Data Class Field 0 e eee eee 117 Table 8 4 Structure of the GEM Items Database 0 00 cece eee 118 Table 8 5 Values For Record Type Field 0 00 eee 119 Table 8 6 Structure of the Alarm Record Type 0 00 cece eee 119 Table 8 7 Structure of the Collection Event Record Type 000e eee eee 120 Table 8 8 Structure of the Report Record Type ccc eee es 121 Table 8 9 Structure of the State Record Type 0 ccc ee 121 10 AdeptGEM User s amp Reference Guide Rev P1 Chapter 1 AdeptGEM Basics This chapter pr
86. The user also needs to modify the routine gm user packval There are also predefined internal GEM variables that cannot be modified AdeptGEM User s amp Reference Guide Rev P1 The GEM Variables Database The table below provides a summary of the Read Write privileges for the Equipment and Host On line amp Process Variable Type Related Equipment Host Status Variables and Yes Read Write Read only No Read Write Read only Equipment Constants Yes Read only Read Write No Read Write Read Write Data Value N A Read Write Read only An Example of SVs ECs and DVVALs The use of status variables SVs equipment constants ECs and data values DVVALs is illustrated in the following scenario It is 8 00 am The production schedule calls for one 1200 piece batch of Widget X to be made The workcell will start this build on the first shift and continue building this assembly until the batch is completed The batch size value 1200 pieces for Widget X is sent to the workcell and stored as an equipment constant It is now 6 30PM and the second shift is continuing the build of Widget X The production supervisor wants to know how may assemblies have been completed He goes to the host and checks the Total Widgets Completed field The workcell has completed 652 widgets He stays at the host computer for three more minutes and sees the count updated three times Remember this value is stored in a status variabl
87. Variables database 86 and ai ctl values 98 and equipment processing state model 19 and State models 17 structure 115 menu page 89 GEM SECS overview 11 primer 11 gemdebugmode 103 General description of equipment function 53 GENERATE_ALARM 83 GENERATE EVENT 83 H HCACK 66 Host clock synchronizing 43 command acknowledge 66 send 66 control of equipment 35 initiated control 44 interaction with collection events 21 message acknowledging 41 displaying 41 sending 41 remote commands 34 Host initiated 1 F13 F14 scenario 20 HSMS details 49 HSMS parameters 49 HSMS requirements other 50 l Illegal data 79 Individual report request 75 Installing AdeptGEM 13 Intended function of the interface 53 Inter block time out 79 L lasttaskepschg 106 LENGTH 76 Levels of GEM SECS software 12 Limits monitoring 30 limitvariable 105 LINE_CHECK 83 Link event report 64 acknowledge 65 List alarms request 71 enabled alarm data 71 request 71 LOCAL equipment sub state 44 Local entity IP address HSMS parameter 49 M Manufacturer and product number AdeptGEM 53 Message details 57 trace 27 Message content level 12 Messages initiated by the equipment 56 sending to receiving from the host 41 understood by the equipment 54 MEXP 79 montasknum 105 montaskperiod 105 Multi block data send inquire 72 AdeptGEM User s amp Reference Guide Rev P1 213 Index grant 66 72 inquire 65 N New equipment constant ackno
88. a reply is desired wait for a reply or a timeout error Many associated low level details are handled automatically by this subroutine allowing the calling program to be as simple as possible This includes e Ifcommunications are not enabled this subroutine will return with an error e If communications are enabled but the host is not communicating this subroutine will wait for up to 20 seconds to try to send the message and if it still can t send it it will return with an error e Ifthe primary message requires an inquire grant message first for example a multi block S7F3 message needs S7F1 to be sent and acknowledged first then the inquire grant is automatically processed The main primary message is sent only if the host grants acceptance otherwise this subroutine returns with an appropriate AIM error code Input Parameters reply TRUE if a reply is desired otherwise FALSE hd An array representing the header for the message with the ac hd stream uc hd function and uc hd sys elements filled The routine gm new head is the most appropriate way to create this header length The total length in bytes of the message datal The stream of bytes fully PACK ed representing the message The s2 pack routines can be used to create this stream of bytes Output Parameters datal The stream of bytes fully PACK ed representing the host s reply to the primary message that was s
89. able with the specified ID exists lt 0 Standard AIM database status return code Details File GEMDBASE SQU Related Routines gm get str gm set str AdeptGEM User s amp Reference Guide Rev P1 145 gm get val Chapter 9 Calling Sequence CALL gm get val vid value status Function Return the actual value of a numeric variable defined in the GEM Variables database Usage Considerations This routine will not work for GEM Data Values DVVALS Input Parameter vid The identification number of the variable whose value is to be retrieved Output Parameters value The value of the variable status 0 Success 1 Requested variable does not exist 2 Requested variable exists but its value could not be determined lt 0 Standard AIM database status return code Details This routine performs the equivalent of calling gm get var and then gm var2val Thus for GEM real value variables the value in the database is returned However for ai ctl values and V variables the value of the referenced variable is returned To obtain the value of a string variable use gm get str File GEMENG SQU Related Routines gm get str gm get var gm pack val gm set var gm var2val 146 AdeptGEM User s amp Reference Guide Rev P1 Descriptions of Routines in the AdeptGEM Module gm get var Calling Sequence CALL gm get var vid value vtype gtype htype status Function Access the GEMVariable database to retrieve value
90. ach type are kept together e The secondary sort on Integer 1 is intended to group the State records for each State Model Table 8 5 Values For Record Type Field Name Value Description gm rec ala 1 Record type for Alarm records gm rec col 2 Record type for Collection Event records gm rec rep 3 Record type for Report records gm rec sta 4 Record type for State records Structure of the Alarm Record Type The following table details the structure of the Alarm record type Table 8 6 Structure of the Alarm Record Type Field Number Variable Field Name Description 5 Alarm ID ID number for the alarm must be unique among all gm f item id alarms 6 Alarm Text Text sent to host for the alarm gm f al text 7 Action Sequence AIM sequence to run when the alarm is set gm f spawn AdeptGEM User s amp Reference Guide Rev P1 119 Chapter 8 The AdeptGEM Database Structures Table 8 6 Structure of the Alarm Record Type Continued Field Number Variable Field Name Description 8 Alarm Enabled This flag is set to TRUE when the alarm is enabled gm f enabled 9 Alarm Set This flag is set to TRUE when the alarm is set gm f al set 10 Not used 11 Set Event ID of the triggered collection event triggered when the gm f al setevnt alarm is set 12 gm f al clrevnt Clear Event ID of the collection event triggered when the alarm is cl
91. active the host may operate the equipment to the full extent available through the communications interface However the operator will be restricted in specific capabilities These restrictions should be configurable so that the equipment may be set up to allow the operator to perform necessary functions without contending with the host The statement RUN_CHECK see section 6 1 on page 83 can be used in a sequence program to verify the current state of the equipment as shown in the following example RUN_CHECK allowed MOTION_OK IF allowed THEN ELSE ESSAGE Motion Not Allowed END 3 10 Equipment Constants SEMI E30 95 4 5 Sections Database GEM Variable Usage Documentation You must document any Equipment Constant IDs that you create Requirements Equipment constants provide a way to store values for equipment parameters These values control various aspects of equipment behavior i e how many widgets to build what parts to use for a widget assembly etc Equipment constants are stored in the GEM Variables database section 7 1 This capability is implemented as specified in the SEMI standards It is largely transparent to the local operator and equipment The only requirement is that the operator define the equipment constants for any required constants that are not already defined in the GEM Variables database Built in equipment constants are summarized in Table 7 2 and are
92. alue to be packed the appropriate routine s2 pack can be used to do the actual packing of the value When adding new DVVALs the user needs to define the variable in the GEM Variables database as a String Function or Numeric Function and add code to this routine An example of the required code is shown below AdeptGEM User s amp Reference Guide Rev P1 171 gm user packval Chapter 9 AUTO computed_value S computed_string status 0 Assume success CASE vid OF VALUE 1001 Private real DVVAL for E computed_value CALL s2 pack 1lreal computed_value 44 Sstream arrow bypass TRUE Tell caller that the VID was processed VALUE 1002 Private string DVVAL for Scomputed_string CALL s2 pack lascii computed_string 20 S stream arrow bypass TRUE Tell caller that the VID was processed VALUE 1003 Obsolete DVVAL bypass TRUE Tell caller that the VID was processed status 401 Report undefined value File GEMUSER V2 SQU Related Routines gm get str gm get val gm get var gm pack val gm var2val s2 pack 1ascii s2 pack 1bin s2 pack 1real s2 pack list s2 pack null s2 pack reals s2 pack str 172 AdeptGEM User s amp Reference Guide Rev P1 Descriptions of Routines in the AdeptGEM Module gm user rc Calling Sequence CALL gm user rc name Sargname Sarg num argstat status Function This routine can be used for customized processing of
93. ameter Input Parameters See gm user strmN on page 176 Output Parameters See gm user strmN on page 176 Details When the SECS II task receives a message the AdeptGEM software extracts the stream number from the message and looks for a program named with the format gm streamN where N represents the stream number If the program is found that program is CALLed and passed the message parameters If the program is not found an unknown stream error message is returned S9F3 If you want to add support for a new SECS II message you should first look to see if the corresponding gm streamN program already exists If it does you should modify or create the corresponding program gm user strmN to support the new message NOTE You should make sure that the routine gm user strmN returns with the bypass parameter set TRUE when your new message is processed If there is no existing program to process the message stream you will need to create a new program named gm streamN where N represents the stream number which contains the code necessary to process your new message Thus to add modify functions for existing streams use gm user strmN To add modify functions to streams that have not been defined use gm streamN File GEMSTRM SQU Related Routines gm user strmN 168 AdeptGEM User s amp Reference Guide Rev P1 Descriptions of Routines in the AdeptGEM Module gm user init Calling Sequence CALL gm user init
94. ameters text An array containing the message to send If the message is stored in multiple strings every string except the first must begin with CHR 0 start The first element of text to use often 0 but not necessarily num The total number of elements in text to use Output Parameter status 0 The message was successfully queued 1 Could not queued queue full 2 Message too long 3 Host not on line and communicating Details File GEMENG SQU AdeptGEM User s amp Reference Guide Rev P1 163 gm seq spawn Chapter 9 Calling Sequence CALL gm seq spawn Smodule Ssequence status Function The routine will execute an AIM control sequence in the current task Input Parameters module The module name sequence The sequence name Output Parameter status Status of the sequence spawn If the current task is the main menu task any error results in an error popup and status is set to rn opr abort If the current task is any other task 0 If successful 1 Ifsequence or module name is not defined 2 If sequence cannot be run 3 If unsuccessful because of other reasons e g the sequence failed with an error Details This routine executes the specified sequence in the current V task Thus execution of the task is suspended until the sequence completes For this reason the sequence is required to be a control sequence and it should complete execution as quickly as possible File GEMAIM SQU 164 Adept
95. and Control of SEMI Equipment GEM The SEMI GEM standard provides compliance specifications for two levels Fundamental Requirements and Additional GEM capabilities The two different levels are described below The fundamental requirements are listed below e State Models e Equipment Processing States e Host Initiated 1 F13 F14 Scenario e Event Notification e On line Identification AdeptGEM User s amp Reference Guide Rev P1 15 Chapter 2 Fundamental GEM Requirements e Error Messages e Control Operator Initiated e Documentation In addition compliance requires adherence to the portions of the following sections in the standard that are applicable to the fundamental GEM requirements e Variable Data Items e SECS IT Data Item Restrictions e Collection Events The following sections provide detailed information about the support in the AdeptGEM system of the fundamental requirements 2 2 State Models SEMI E30 95 3 0 3 1 3 3 Sections Database gt GEM Variable Collection State Alarm gole gt Report GEM Variable GEM Variable Report aM Report gt GEM Variable GEM Variable sae a oleon Report GEM Variable Refer to the SET_STATE statement on page 84 for details Documentation Equipment must provide state model diagrams and transition tables for all Requir
96. ansparent to the local operator and equipment The only requirement is that the operator define the SVs in the GEM Variables database section 7 1 GEM Requirements These GEM requirements are specified in Section 4 2 5 4 of SEMI E30 95 1 Built in unique SVIDs are listed in Table 7 2 and are provided in the standard databases delivered with AdeptGEM Any additional SVIDs created by the user must be unique 2 All SVIDs in the GEM Variables are available for data collection 3 All SVs defined by AdeptGEM will contain valid data when the SV is transmitted to the host The user must guarantee valid data for any SVs created by the user AdeptGEM User s amp Reference Guide Rev P1 31 Chapter 3 Additional GEM Capabilities 3 8 Alarm Management SEMI E30 95 4 3 Sections Database gt GEM Variable mae Collection State Alarm eoleo gt Report GEM Variable GEM Variable TA a Report GEM Variable GEM Variable State erection Report GEM Variable Refer to the GENERATE_ALARM statement on page 83 for details Documentation You must document any defined Alarms Collection Events and VIDs associated Requirements with the Alarms V Task Usage Limits monitoring trace data collection See The Alarm Record Type on page 108 for details on defining an alarm Alarms can to be set in three ways
97. ard files and you can not get a directory of disk files 3 12 Equipment Terminal Services SEMI E30 95 4 8 Sections Database GEM Variable Usage Refer to the SEND_HOST_MSG statement on page 84 for details Documentation None Requirements This capability allows the host and equipment to display messages on each other s terminals The equipment operator can send a terminal message to the host by Setup GEM Message to Host Send Message To Host Me E Type Message This is a sample message to the host Figure 3 2 Message Window Type the message to be sent into the message area and the press Send to send the message Press Cancel to abort the message A message can also be sent by pressing Send Message on the GEM Control Panel or by including the statement SEND_HOST_MSG in a sequence If a message is received from the host it will be displayed in the Equipment Terminal Services section on the GEM Control Panel see Figure 3 1 There are two options Press Acknowledge to return the acknowledgment Collection Event AdeptGEM User s amp Reference Guide Rev P1 41 Chapter 3 Additional GEM Capabilities GEM Requirements These GEM requirements are specified in Section 4 8 4 of SEMI E30 95 1 Any new terminal display message will overwrite an unrecognized message at the same ter minal 2 The equipment will display at least
98. ariable The next figure shows a status variable in the GEM Variables database that uses a string variable type in its definition GEM Variable Global Pe Go Seek Edit Help ECID ar le strvar Qyariable ID 1003 Date 17 Feb 97 10 25 SYID E DYVAL Teorii Description nis is a sample status variable SV that uses a string variable type alue test_value Typical Value 7 O GEM Variable Class 7 parameters Data Value Status Variable Host Data Type 20 octal Equipment Const State Variable Access Control a r Ovariae Type Numeric Variable String Variable Input Signal V Variable Output Signal ai ctl Value Numeric Function String Function Auto Alarm Detection Figure 7 6 GEM Variables Database Status Variable Using a String Variable To define a new status variable that uses a string variable Create a new GEM Variables record Enter a name for the new record item Assign a Variable ID item See Variable IDs VIDs on page 87 Enter a description of this record item Select Status Variable as the GEM Variable Class item Select String Variable as the Variable Type item SOD ST oP oS NOUR Specify a Value for the variable item You can also specify an optional Typical Value Refer to item for the following steps Specify a Host Data Type See Table 7 1 Host Data Types on page 88 9 Specify the Access Control Enter a s
99. ariable Bit 2 Equipment constant Bit 3 Data value Output Parameter exist TRUE if the vid was found and its type SV EC or DVVAL was one of the types being checked for otherwise FALSE Details Status variables equipment constants or data values can be exclusively searched for or any combination of the three classes can be searched If there is an unusual error such as an error in accessing one of the databases then this subroutine will assume that the VID does not exist File GEMENG SQU Related Routines gm get vid list gm get vinfo AdeptGEM User s amp Reference Guide Rev P1 135 gm freeze msg Chapter 9 Calling Sequence CALL gm freeze msg reply hd S data end marker status Function This subroutine provides an alternative to gm usersend Instead of sending a message to the host immediately and waiting an arbitrary period of time for a reply if any this routine allows you to freeze or queue a message which will be sent later by the service task The calling program can then continue without delay Input Parameters reply TRUE if a reply is desired otherwise FALSE hd An array representing the header for the message with the uc hd stream uc hd function and uc hd sys elements filled The routine gm new head is the most appropriate way to create this header datal The stream of bytes fully PACK ed representing the message s2 pack subprograms can be used to cre
100. ata arrow status Function Pack the value of a status variable equipment constant or data value into a SECS II message that is being built Input Parameters vid The variable identification number of the variable whose value is to be packed datal The array of strings representing the packed contents of the SECS II message that is being built arrow The byte position in the data array where the next item should be packed Output Parameters data The datal array which now contains an additional data item if the pack was successful otherwise the unaltered data array arrow The position in the data array immediately following the data item that was packed or the most recently successfully packed data item in case of error status 0 if success or else a standard AIM error code Details For variables not defined by Adept this routine calls gm user packval to allow for custom processing That provides the mechanism for custom status variables and data values NOTE If there is an error such as an undefined VID or the value cannot be fetched then this routine will not pack anything and it is up to the calling program to decide what to do next abort pack a null item etc File GEMENG SQU Related Routines gm get str gm get val gm get var gm user packval gm var2val 158 AdeptGEM User s amp Reference Guide Rev P1 Descriptions of Routines in the AdeptGEM Module gm raw alarm
101. ate this data array end marker The total length in bytes of the message Or equivalently the byte number starting at 1 of the first byte in the data stream to NOT send hence an end location Output Parameter status 0 if the message was successfully frozen or 1 if not meaning that the queue is FULL Details The size of the queue is controlled by the global variable gm fz size which defaults to 10 The size specified is a count of the number of messages that can be held not the total message size File GEMENG SQU Related Routines gm com test gm estcom gm new head gm usersend 136 AdeptGEM User s amp Reference Guide Rev P1 Descriptions of Routines in the AdeptGEM Module gm get ainfo Calling Sequence CALL gm get ainfo alid event act Sspawn status Function Access the Alarm records in the GEM Items database to retrieve action information for a specified alarm collection events to use what action to take and the name of a spawn routine to call Input Parameter alid The identification number for the desired alarm Output Parameters event An array with the alarm clear collection event identification number in element 0 and the alarm set CEID in element 1 act This parameter is not currently used spawn The name of an AIM sequence to execute if the alarm is set If none an empty string status 0 Success 1 ALID does not exist lt 0 Standard AIM database status return code De
102. bled 102 alarmsset 102 ALCD 70 ALID 70 ALTX 70 Annotated event report data 74 request 74 individual report data 75 request 75 Automatic alarm detection 33 60 70 72 B Baud 105 Broadcast 81 Broadcast acknowledge 81 Cc Changes from previous versions 54 Clock 42 102 setting 43 synchronizing with host 43 Collection Event 23 record predefined 110 structure 112 120 type 109 120 commbuffsize 105 commdevname 106 commstat 103 commtasknum 105 Communication disabling 21 enabling 21 state model 21 26 28 start up state 103 Compliance details GEM 15 Compliance statement GEM 14 Connect Mode HSMS parameter 49 connecttime 104 Control host initiated 44 operator initiated 23 sequences 34 state model 44 collection events 110 restrictions 35 start up state 103 controlstartst 103 controlstate 102 convtimeout 104 CPACK 66 CPNAME 66 26 28 29 30 26 28 29 30 29 30 AdeptGEM User s amp Reference Guide Rev P1 211 Index CPVAL 66 Current EPPD request 78 D Data and time data 61 toolong 79 message 79 value 91 values 86 and GEM Variables database 91 100 predefined 102 Databases GEM Items 106 GEM Variables 86 Date and time request 61 set acknowledge 63 request 63 Debug mode 27 Define report 63 acknowledge 64 variable limit attributes 67 Delete process program acknowledge 77 program 77 program send 77 DeviceID 48 DEVID 48 Digital I O GEM Variables database 94 Directory
103. bled alarms Structure Same as S5 F6 AdeptGEM User s amp Reference Guide Rev P1 71 Chapter 5 SECS II Messages Stream 6 Data Collection This stream is intended to cover the needs of in process measurements and equipment monitoring S6 FO Abort Transaction S6F10 S H lt gt E Description Used in lieu of an expected reply to abort a transaction Function 0 is defined in every stream and has the same meaning in every stream S6 F1 Trace Data Send TDS S H lt E reply Description Equipment returns samples to the host according to the trace setup done by S2 F23 Structure L 4 1 lt TRID gt 2 byte unsigned integer 0 65535 2 lt SMPLN gt 2 byte unsigned integer 1 65535 3 lt STIME gt ASCII data in the form yymmddhhmmss 4 L n 1 lt SV1 gt any allowed data type n lt SVn gt Exceptions A zero length lt STIME gt means no value is given and that the time is to be derived from lt SMPLN gt along with knowledge of the request S6 F2 Trace Data Acknowledge TDA S H gt E Description Acknowledge or error Structure lt ACKC6 gt 1 byte binary 0 OK 1 error S6 F5 Multi block Data Send Inquire MBI S H lt E reply Description If an S6 F3 F9 F11 F13 message can be multi block this request must be made before transmission Structure ls2 1 lt DATAID gt 2 byte unsigned integer normally 0 2 lt DATALENGTHS 2 byte unsigned integer 0 65535 S6
104. cation 1 Communication is enabled 0 Communication is disabled This parameter could be the global variable gm service go condition2 Condition information as follows For type 0 communication 1 Communicating 0 Not communicating This parameter could be the global variable gm comm condition3 Condition information as follows For type 0 communication 1 On line 0 Off line This parameter could be the global variable gm online Details The AdeptGEM databases are accessed by the operator through items in the AIM Edit menu Dimming that is disabling those menu items may be desirable in order to maintain the integrity of database contents For example operator access could be prohibited if GEM communications are enabled active and or on line An example of how this routine operates is included in the distribution file GEMUSER V2 as commented out code File GEMUSER V2 SQU 170 AdeptGEM User s amp Reference Guide Rev P1 Descriptions of Routines in the AdeptGEM Module gm user packval Calling Sequence CALL gm user packval vid Sstream arrow bypass status Function This routine determines the value of a custom status variable or data value Usage Considerations The calling sequence in the distribution files is not correct the calling sequence shown on the CALL line above is correct If you are modifying this routine for custom processing and changing the bypass parameter to 1
105. ce Guide Rev P1 Descriptions of Routines in the AdeptGEM Module gm get report Calling Sequence CALL gm get report rptid vid num ids status Function Access the Report records in the GEM Items database and retrieve a list of variable identification numbers associated with a specified report Input Parameter rptid The identification number of the desired report Output Parameters vid An array containing the VIDs starting at element zero num ids The total number of VIDs status 0 Success 1 RPTID does not exist lt 0 Standard AIM database status return code Details File GEMDBASE SQU Related Routines gm make links gm make report AdeptGEM User s amp Reference Guide Rev P1 141 gm get sinfo Chapter 9 Calling Sequence CALL gm get sinfo vid state Sspawn id act val status Function Access the State records in the GEM Items database to obtain various information about a particular state associated with a state variable This includes the name of a spawn routine to execute upon a transition into the state a variable to change the value of and its new value a collection event to activate and an alarm to set Input Parameters vid The identification number of the state variable associated with the desired state state The ID number for the desired State record Output Parameters spawn The name of a V routine to execute If none an empty string id An array of identification numbers 0 Ac
106. concerned with the specific format of these messages as the AdeptGEM system will automatically format messages and pass them to the physical transmission level for transmission You will need to provide your host with specific information about the various stream and function messages The SEMI standards specify several optional formats and data types for the streams and functions The documentation in Chapter 5 provides specific details about how messages transmitted by the AdeptGEM system will be formatted The Equipment Behavior Level The third level is the Generic Equipment Model GEM which describes how the host and equipment must interact The basis of this interaction is a series of scenarios that specify which messages must be exchanged under specific conditions This is the level that you will interact with most For example buttons on the GEM control panel establish and terminate communication with the host You will also be using the AdeptGEM databases to define status variables and reports that can be requested by the host The GEM compliance issues are handled by the software but you must specify many variables and events that are particular to your equipment installation and the application that the equipment is performing AdeptGEM databases pre define most of these variables and you simply have to supply the appropriate values This is the level that imposes the most restrictions and requirements on equipment behavior You s
107. cription for this record item Select Alarm as the GEM Items record type item aA a fF WYN a Select Alarm is Enabled item to enable the alarm The Alarm is Set checkbox item is checked whenever the alarm is set this is a read only item Refer to item for steps 7 through 10 7 Enter optional text that will be returned when an alarm is sent to the host 108 AdeptGEM User s amp Reference Guide Rev P1 The GEM Items Database 8 Enter the numbers of the events CEID that will be generated when the alarm is set or cleared 9 Enter the optional AIM sequence to run when this alarm is set This sequence must be in the default control module This resource module is normally MOWCTL VWCTL or PCBCTL unless the value of the default control module has been changed in the initialization data base See Alarm Management on page 32 for details on how alarms are set 10 Enter the optional Alarm Category number This number will be reported to the host in the alarm code byte ALCD NOTE Although the alarm category is specified by the SECS II standard it is not required by the GEM standard This value is supported by the AdeptGEM system for situations for which it is desirable to categorize alarms 11 Choose Force Alarm to Happen Now item to force the alarm even if the alarm is not enabled This is useful for testing the alarm setup The Collectio
108. d 2 byte Interval between S1F13 attempts integer 9101 startcomen EC Boolean True Communications is enabled on start up 9102 usersoftrev EC Boolean lt SOFTREV gt type TRUE User defined see ECID 9301 FALSE Vt version 9103 controlstartst EC Unsigned 1 byte Control Start up state integer 1 Equip off line 2 Attempt on line 3 Host off line 4 On line 9104 onlinefailstate EC Unsigned 1 byte If attempt On line fail state fails integer 1 Set equipment off line state 3 Set host off line state 9105 gemdebugmode EC Binary Bits enable individual AdeptGEM debug features 9106 tl EC 4 byte floating Receive timeout point AdeptGEM User s amp Reference Guide Rev P1 103 Chapter 7 The AdeptGEM Databases Table 7 2 Predefined SVs ECs and DVVALs Continued ID Reference Name Class Type Description 9107 t22 EC 4 byte floating Protocol timeout point 9108 3 EC 4 byte floating Reply timeout point 9109 t4 EC 4 byte floating Interblock timeout point 9110 t5 EC 4 byte floating Connect separation timeout point 9111 t6 EC 4 byte floating Control transaction timeout point 9112 t7 EC 4 byte floating Connection idle timeout point 9113 t8 EC 4 byte floating Network intercharacter timeout point 9114 connecttime EC Unsigned 2 byte Length of time the TCP IP server integer connection is maintained 9115 ret
109. deliver unique features and performance in a fully integrated hardware and software platform Adept s VME based controllers provide open architecture to support third party boards including PCs PLCs I O and networking cards Adept controllers offer an integrated solution for motion control and machine vision systems Intended Function of the Interface The AdeptGEM system is intended for host remote monitoring and control of an automation system controlled by an Adept controller Software Revision Code To determine the software revision code for the AdeptGEM watch the Adept AIM System Initialization window as the AIM system initializes The revision code is displayed on a line with AdeptGEM User s amp Reference Guide Rev P1 53 Chapter 5 SECS II Messages the format GEM Module 3 1D which in this case indicates that the AdeptGEM system is version 3 1 edit D When AIM is running the software revision code is stored in the global string variable gm id The V monitor command LISTS will display the revision code LISTS gm id Changes From Previous Versions This manual describes the initial version of the AdeptGEM system 5 2 Supported Messages This section provides lists of all the SECS II messages that are understood and initiated by the baseline AdeptGEM system Additional messages can be added by AIM system customizers See Chapter 9 for a description of the gm user strmxx routines Messages Underst
110. ds that will be transmitted when this Collection Event occurs NOTE Report IDs must be added to the collection event contiguously and starting with position number 1 The software will stop collecting reports when it finds the first 0 or empty field in the list Choose Force Event to Happen Now item to force the collection event even if the event is not enabled This is useful for testing collection events Predefined Collection Event Records The following table details the predefined Collection Event records Table 7 3 Predefined Collection Events Event ID Record Name Description 9000 equipoffline Control Entry into OFF LINE state 9001 controlstateloc Control Entry into LOCAL state 9002 controlstaterem Control Entry into REMOTE state 9003 controlstatechg Control 9000 9001 or 9002 occurs 9004 operatorcmdiss Control Operator executes command while in the ON LINE REMOTE state 9100 processstart Processing AIM sequence started 9101 processcomplete Processing AIM sequence completed 9102 processstopped Processing AIM sequence stopped early by the operator or host 9103 procstatechange Processing Entry into any new processing state 9200 operatorconchg Equipment Constants Capability Operator changes constant locally The GEM Items Database Table 7 3 Predefined Collection Events Continued Event ID Record Name Description 9300 proc
111. e 7 2 Predefined SVs ECs and DVVALs Continued ID Reference Name Class Type Description 9204 ppchangestatus DV Unsigned 1 byte Action taken on process program 1 integer created 2 edited 3 deleted CEID 9300 9205 transitiontype DV Binary 0 low to high 1 high to low zone transition type user defined CEID 9206 ecchanged DV Unsigned 2 byte ID of EC that user changed CEID integer 9200 9207 ecnewvalue DV Same as type for New value of EC that changed EC that changed CEID 9200 9208 ppvname DV ASCII PPID verified and validated CEID 9301 9209 ppvstatus DV ASCII Status of verification and validation CEID 9301 9210 lasttaskepschg DV Unsigned 1 byte Task number of the most recent state integer change 9300 commdevname EC ASCII The name of the communication device HSMS SS Name or IP address of the host and the port number e g 192 168 144 001 1 SECS I Serial port to use e g SERIAL 1 9301 userdefsoftrev EC ASCII If ECID 9102 is TRUE the lt SOFTREV gt reported to the host will be the value of this ECID 9302 ppmpath EC ASCII The directory path used by all process program management messages The host cannot modify the values of these Equipment Constants 7 2 The GEM Items Database The GEM Items database contains information that defines GEM alarms collection events reports and states The s
112. e elements will have to be written to the stream individually possibly with multiple calls to s2 pack str If an unsupported type is used then no error is given but type 51 is used by default Conversion information 10 A single string of 0s and 1s is converted to raw binary data The first byte of the string is bit 1 the second is bit 2 etc Any additional strings are always ignored unless a SECS I list is requested in which case each element of the array becomes one data item 11 String should be TRUE or FALSE AdeptGEM User s amp Reference Guide Rev P1 197 s2 pack str 20 Numbers Chapter 9 Normally a single string is used directly up to128 characters If a longer string is desired subsequent array elements can have a continuation of the string if each continuation string begins with ASCII value 0 Any non continuation strings in the array are ignored if not the first unless a SECS II list is requested in which case the entire array is packed each into a separate data item with the continuation strings still being taken into account Example assume is the ASCII 0 character Sstr 0 Hello str 1 SWorld Sstr 2 AdeptGEM In non list mode a single data item is packed of type ASCII with value Hello World In list mode a 2 element list is packed with each element being of type ASCII The values are Hello World and AdeptGEM respectively Notice that
113. e of variable or constant cc name 15 1 Update Date date time The date time this record was created cc update 4 or changed 2 Description string Description of the item gm f desc 72 4 gm asize desc 4 Number of description lines 3 Menu page name name Name of the menu page and file used gm f menu 15 2 to display the item records Not cc _page name currently used 4 Record Type byte Code indicating the type of GEM item gm f rec type 1 alarm collection event report or state that is described by the record See Table 8 5 This is the primary sort field 5 ID integer 2 6 String string 40 7 Spawn Name name 15 8 Enable Flag Boolean 1 9 Set Flag Boolean 1 10 Integer 1 integer 2 11 Integer 2 integer 2 12 Integer 3 integer 2 13 Integer 4 integer 2 14 Real Value real 4 118 AdeptGEM User s amp Reference Guide Rev P1 Structure of the GEM Items Database Table 8 4 Structure of the GEM Items Database Continued Field Number Type Variable Field Name Size Array Description 15 Integer Array integer 2 Notes e For fields 5 to 15 the field number variables and the descriptions depend on the record type See Tables 8 6 8 7 8 8 and 8 9 e The routine gm next rec assumes that the Record Type field is the primary sort field e Any code that accesses the database must consider the record type e The database must be kept sorted so that all the records of e
114. e set TRUE to signal the normal message processing that the message has already been completely processed CAUTION Changing any responses defined by the baseline AdeptGEM system may result in a GEM system that is not SEMI compliant The user is responsible for ensuring and documenting SEMI compliance of any added or altered messages If you want to add support for functions in a message stream that is not supported by the baseline AdeptGEM system you need to create a routine named gm streamN see page 168 where N represents the number of the new stream for example gm stream4 In that case you do not need a corresponding routine named gm streamN If this routine generates a stream 9 error message in response to the received message the following code would normally be used to prepare that message in this case for an S9F5 message AdeptGEM User s amp Reference Guide Rev P1 177 gm user strmN Chapter 9 Sdata 0 Sraw Copy received header arrow LEN Sraw 1 Indicate length of the data CALL gm new head 9 5 hd Compose new header for S9F5 message hd uc hd wait TRUE Signal there s a reply to send File GEMUSER V2 SQU Related Routine gm streamN 178 AdeptGEM User s amp Reference Guide Rev P1 Descriptions of Routines in the AdeptGEM Module gm usersend Calling Sequence CALL gm usersend reply hd length Sdata timer status Function Send a primary message to the host and if
115. e so it must be guaranteed to always show the current total While the second shift supervisor is at the host computer he also decides to check the Average Pieces Hour field This field displays an average rate of 61 pieces per hour It also indicates that this value was last updated at 6 00PM Since it is now 6 33PM he knows that this may not be the current average Remember this type of information is typically stored as a data value It is only guaranteed to be current after a specific Collection Event has been generated It is now 5 45 M and the third shift is on duty As the 1200th Widget X rolls off the production line the Total Widgets Completed field is immediately updated Status Value Since the batch is now completed the statistics for the run are calculated and stored as data values and a Collection Event is generated The data values will be included in a production report for the morning production meeting Variable IDs VIDs Variable IDs VIDs are a class of SEMI variables composed of equipment constants ECs status variables SVs and data values DVVALs VIDs are used extensively by AdeptGEM These IDs are integer values in the range 1 to 32 767 with the range from 9000 to 9999 reserved for AdeptGEM defined VIDs VIDs are assigned to records in the GEM Variables database Each record has a unique Variable ID number AdeptGEM User s amp Reference Guide Rev P1 87 Chapter 7 The AdeptGEM Databases SE
116. e used only in AIM control sequences See page 184 for details SEND_HOST_MSG This statement sends a text message to the host The syntax is SEND_HOST_MSG gemvariable A gemvariable of type string variable or string function indicates the string that will be sent See page 205 for details SET_STATE This statement sets a variable to a state The syntax is SET_STATE gemitem The gemitem record must be of type State variable Note also that the SET and SETS statements can change Status Variables in the GEM Variables database The various control statements IF FOR etc can access the GEM Variables database See page 206 for details 84 AdeptGEM User s amp Reference Guide Rev P1 Chapter 7 The AdeptGEM Databases This chapter describes the use and format of the databases included in the AdeptGEM module The databases specific to this module are e The GEM Variables Database e The GEM Items Database Unlike standard AIM databases AdeptGEM databases may be accessed by the host as well as an executing sequence In order to control simultaneous access to the databases special locks have been installed If you create custom code to access the AdeptGEM databases make sure you use the routines described in Chapter 9 and not the db routines described in the AIM reference guides NOTE When communication is enabled the GEM databases can still be accessed from the user interface but the
117. eared 13 gm f al categor Category Alarm category reported to the host in the alarm code byte ALCD See the related note on page 109 14 gm f al action Alarm Action Code for the action to be performed in response to the alarm being set 0 No action 1 Pause sequence 2 Abort sequence This action is currently not performed 15 Not used Note e Fields 1 through 4 are common for all GEM Items record types See Table 8 4 Structure of the Collection Event Record Type The following table details the structure of the Collection Event record type Table 8 7 Structure of the Collection Event Record Type Field Number Variable Field Name Description 5 Collection Event ID number for the collection event must be unique gm f item id ID among all collection events 6 Not used 7 Not used 8 Collection Event This flag is set to TRUE when the collection event is gm f enabled Enabled enabled 9 to 14 Not used 120 AdeptGEM User s amp Reference Guide Rev P1 Structure of the GEM Items Database Table 8 7 Structure of the Collection Event Record Type Continued Field Number Variable Field Name Description 15 Report IDs IDs of reports associated with this collection event gm f data ids gm asize cerpts 20 Number of reports Note e Fields 1 through 4 are common for all GEM Items record types See Table 8 4
118. ed by all executing tasks Thus you can not add any AdeptGEM databases to any module All AdeptGEM databases must be accessed globally 6 1 GEM Statements The following statements are added to the AIM system by the AdeptGEM module DISABLE_COMM This routine will disable host communication and place the equipment in the not communicating state See page 125 for details GENERATE_ALARM This statement sends an alarm message to the host The syntax is GENERATE_ALARM gemitem A gemitem of type Alarm indicates the alarm that will be sent See page 126 for details GENERATE_EVENT This statement sends a collection event to the host The syntax is GENERATE_EVENT gemitem A gemitem of type Collection Event indicates which CE will be sent See page 127 for details LINE_CHECK This statement will send an S1F13 message If the equipment and host are online and communicating gemvariable will receive a value of 0 success otherwise it will receive a standard AIM error code See page 182 for details AdeptGEM User s amp Reference Guide Rev P1 83 Chapter 6 AdeptGEM Statements LINE_CHECK gemvariable COMM_STATUS RUN_CHECK This routine is used in a sequence to verify that the current state of the equipment is compatible with host control of robot motion The syntax is RUN_CHECK gemvariable MOTION_OK NOTE This statement can b
119. ed by the number of bytes packed File GEMS2 SQU 194 AdeptGEM User s amp Reference Guide Rev P1 Descriptions of Routines in the AdeptGEM Module s2 pack reals Calling Sequence CALL s2 pack reals values start num type Sstream arrow Function Pack an array of real values into a SECS II data stream Input Parameters values The array of real values to be packed start The number of the first element of values to use typically 0 or 1 num The total number of elements of values to pack type The SECS II data type to use to represent the values If bit 7 mask 100 is set a list of values is packed instead of a single array item see Details stream The stream of bytes to receive the data items arrow The byte position in the stream to start writing data to The first byte in the stream is number 1 Output Parameters stream The modified stream of bytes arrow The byte position in the stream just following the last byte packed Details The arrow input parameter represents the character position that data should be written to in the stream and it is automatically incremented by the number of bytes packed The elements of the values array can be packed either as a single array data item with num values or as a list with num items There are two ways to request a list 1 The data is packed as a list if the type parameter has the value 0 explicitly requesting a l
120. ements These GEM requirements are specified in Section 4 2 1 2 4 in SEMI E30 95 1 The collection data will be completely described in the database records of type Collect Event After creating all your user defined collection events you can use the ASCII export option in the database utilities to export a complete description of all collection events for your various hosts 2 All CEIDs delivered with AdeptGEM are unique Any additional CEIDs supplied by you must also be unique AdeptGEM User s amp Reference Guide Rev P1 21 Chapter 2 Fundamental GEM Requirements 3 The Enabled check box on the Collection Event menu page allows enabling disabling of each event 4 The Report record type allows the user to configure reports associated with a collection event All variable data is defined in database records which are permanently stored on magnetic media 2 6 On line Identification SEMI E30 95 4 2 6 Sections Database GEM Variable Usage Documentation If you use a model number and software revision different from the default you Requirements must document the meaning of these values This is a SECS II level establish communications capability that allows the equipment to identify itself to the host The host request for identification is handled automatically The only user activity required is to specify if a user defined software version it to be transmitted This option is enabled by ECI
121. ements models the required state models are documented in this manual All Collection Events and Variable IDs associated with state transitions must be described There are two types of state models e Models that are required by the SEMI standards and are a basic part of the AdeptGEM module e State models that you design and implement as part of an executing sequence 16 AdeptGEM User s amp Reference Guide Rev P1 State Models SEMI Required State Models There are three required state models e The communication state model is described in Establish Communications on page 26 detailed in Table 3 2 in SEMI E30 95 e The control state model is described in Control Host Initiated on page 44 detailed in Table 3 3 in SEMI E30 95 e The AdeptGEM control state model is described in Equipment Processing State Model on page 18 There are three descriptive elements for a state model The description of states that equipment can be in the description of events that can trigger changes in equipment states and the description of the transitions that occur when an event triggers a state change In order to generate your own state model you will describe all of these events normally using the descriptive tools described in SEMI E30 95 section 3 You then create the AIM sequence that implements the state model The sequence will use State records to describe the various events that trigger transitions You can
122. ent out This reply overwrites the message that was sent out A reply exists only if status is 0 timer Normally 0 but non zero if status is equal to uc ietmo Then this number indicates which timer caused a timeout error 3 for T3 4 for T4 etc status Zero if success or a standard AIM error code if an error occurred Details Messages are sent regardless of the current control state if this is significant to the calling program the calling program should for example check the global variable gm online This subroutine will get confused if the equipment receives a message from the host other than the expected reply for the message sent out Multiple open transactions are not supported This subroutine may take a long time to execute if there is a problem sending the message or if the reply takes a long time If the calling program does not care too much about the AdeptGEM User s amp Reference Guide Rev P1 179 gm usersend Chapter 9 reply and if it is more important that the calling program continue running without a big delay gm freeze msg can be used instead This will queue the message which will be sent by the service task at the next opportunity Any replies received from the host will be handled by the following routines gm reply This is an internal routine that processes replies that are received from the host in response to primary messages sent by the equipment gm user reply This is called by gm r
123. eply before doing any standard processing of the response message Similar to gm user strmN gm user reply can be used to modify replace the normal processing done in gm reply File GEMENGC SQU Related Routines 180 gm com test gm estcom gm freeze msg gm new head gm send hostmsg gm user reply s2 pack 1lascii s2 pack 1bin s2 pack 1real s2 pack list s2 pack null s2 pack reals s2 pack str AdeptGEM User s amp Reference Guide Rev P1 Descriptions of Routines in the AdeptGEM Module gm var2val Calling Sequence CALL gm var2val vid oldval vtype gtype newval status Function Convert the value returned from the Value field of a record in the GEM Variables database to the actual value of the variable Input Parameters vid ID for the variable being considered this parameter is used only for the Vt variable vtype oldval The value that is to be potentially converted based on the type specified vtype The type of the variable the specified value is associated with gtype GEM Variables class for the variable Output Parameters newval The converted actual value of the variable status 0 upon success or 1 if a conversion could not be made because of an inappropriate input value Details When the Value field is read from the GEM Variables database e g with gm get var it does not necessarily represent the actual value of the variable It may for example represent an ai ctl index
124. eptThree MV PackOne PackOne MV HyperDrive Adept 550 Adept 550 CleanRoom Adept 1850 Adept 1850XP A Series S Series Adept MC Adept CC Adept IC Adept OC Adept MV AdeptVision AIM VisionWare AdeptMotion MotionWare PalletWare FlexFeedWare AdeptNet AdeptFTP AdeptNFS AdeptTCP IP AdeptForce AdeptModules AdeptWindows AdeptWindows PC AdeptWindows DDE AdeptWindows Off line Editor AdeptGEM and V are trademarks of Adept Technology Inc Any trademarks from other companies used in this publication are the property of those respective companies Printed in the United States of America Table Of Contents Chapter 1 1 2 hw 1 5 Chapter 2 2 1 2 2 Chapter 3 3 1 3 2 3 3 AdeptGEM Basics 00 cc cece eee e cece cee et tent nee ee tees ee een eens 11 GEM SECS Overview nnnerrrrrrrrrerrrerrrrrrrrrrrrrrrrrrrrrrrrrerr 11 What Is GEM SECS o oo ccc e needa ene been etn en es 11 GEM SECS PIMOT o 2 csccrsciciesscees soawidaermaesedtcnaer nad ena caeideseuaesnee dee ecenn 11 A Note of Caution aneneen nee nr erreen nern r rror n rar rr rrr rrrrrrrrrrr gt 12 The Levels of GEM SECS Software ccc ccc cece cent ene en es 12 The Physical Transmission Level 0c cece cece nee ence eee 12 The Message Content Level 00 0 cece cece e neces 12 The Equipment Behavior Level c ccc ccc ence ences cence 12 AdeptG
125. equence module 34 AdeptGEM User s amp Reference Guide Rev P1 Remote Control e Change robot speed li 2 1 SPEED 2 L 2 1 L 2 VALUE 2 lt New speed value gt 2 Ly 2 TASK 2 lt Task to set speed for gt Once a control sequence or V program has been created it can be invoked by the host sending an 52F41 message with the sequence or program name specified as the RCMD parameter Parameters for the sequence or program can be included in the message See Chapter 5 for more information on the message format NOTE If the GEM host will be invoking AIM sequences or Vt routines with the GEM remote control capability you should add the following line to the AIM startup command program e g lmow in the file LMOW V2 MC STACK 16 20 Host Control of Equipment The On Line Off Line buttons on the GEM Control Panel are the only way to transition between equipment on line and equipment off line the host cannot request a transition from the equipment off line state A host on line request will result in a transition only when the equipment is in the host off line state GEM Requirements The SEMI standard has several specific requirements for remote commands 1 The START and STOP commands must be implemented as defined by the SEMI standard Since implementing the actual requirements will be different for each installation it is up to the user to create these two co
126. er secs ii TRUE if a SECS II format string is desired otherwise FALSE if the traditional Adept format is desired This parameter can be omitted FALSE is assumed Output Parameter clock A string in the form dd MMM yy hh mm ss Adept format or yyyymmddhhmmsscc SECS II format Details This routine can be used for GEM time stamping which must be accurate to the nearest hundredth of a second centisecond This function returns a string in either the precise SECS II format or the traditional Adept format File GEMENG SQU AdeptGEM User s amp Reference Guide Rev P1 139 gm get event Chapter 9 Calling Sequence CALL gm get event ceid rptid num ids enabled status Function Access the Collection Event records in the GEM Items database and retrieve information regarding an event a list of associated reports and whether or not reporting of the event to the host is enabled Input Parameter ceid The identification number of the desired collection event Output Parameters rptid An array containing the RPTIDs starting at element zero num ids The total number of RPTIDs in the array rptid enabled TRUE if reporting is enabled otherwise FALSE status 0 Success 1 There is no Collection Event record with the given CEID lt 0 Standard AIM database status return code Details File GEMDBASE SQU Related Routines gm ed event gm event gm raw event 140 AdeptGEM User s amp Referen
127. er s amp Reference Guide Rev P1 Chapter 4 SECS I and HSMS Details This chapter provides details on the options for establishing the low level communication channel It also provides documentation on the SEMI required parameters for the communication channel 4 1 Introduction This document describes the AdeptGEM implementation of the SEMI Equipment Communications Standard 1 SECS I and the SEMI Equipment High Speed SECS Message Service HSMS These standards are described in the publication Book of SEMI Standards 1995 Equipment Automation Software Volume1 and Volume2 The SECS I and HSMS layers of the SEMI standards govern the physical link between the equipment and the host The SECS I serial communications or HSMS ethernet communication option runs as an independent task that automatically interacts with the host and the SECS II layer Except for setting the relevant communications parameters you do not have to be concerned with the functional details of SECS I or HSMS The decision to use SECS I or HSMS is based entirely on the physical medium connecting the equipment and the host The selection of SECS I or HSMS is made in equipment constant ID 9300 in the GEM Variables database To select SECS I specify the serial port that will be used for SECS I communication 4 2 Additional Documentation This document details the required options for implementing a GEM compliant piece of equipment This document will not detail wh
128. ered 22 Control Operator Initiated 00 ccc ccc e ene e tena e es 23 Fundamental Requirements Compliance Issues 0006006 23 Variable Data Items 0 cence ene ene ene e been e ens 23 SECS II Data Item Restrictions ccc ccc ence tence eens 23 Collection Events 2 2 0 0 0 0 e nent eben 23 Additional GEM Capabilities 0 cece cece cece ee es 25 INMOQUCTION oreen ronan RaR TEA E EEEIEE a 25 GEM Additional Capabilities Compliance Details 25 Establish Communications ccc cece cece e eens e ene e nee ene e aes 26 AdeptGEM Debug Mode 0 cece cece cent e ee n ent n ene eas 27 GEM Requirement ccc cece ccc eee nee ene ene ene ence ene eens 28 Dynamic Event Report Configuration ccc cece cece cece eee en ees 28 AdeptGEM User s amp Reference Guide Rev P1 5 Table of Contents 3 6 3 7 3 8 3 9 3 10 3 11 3 12 3 13 3 14 Chapter 4 4 1 4 2 4 3 4 4 Chapter 5 5 1 5 2 GEM Requirements 0 ccc cece eee eee eee eden tenet nats 28 Variable Data Collection 0 cece cence eee beeen ene nnen 29 Trace Data Collection c0e ocacncasingdessssiande dei asnadvaa snd acste nt died die 29 GEM Requirement ccc cece cece ene ene ene ene e nee nee eens 29 Limmits MOMITONING eiiieaen eo E EE EEE 30 GEM Requi
129. erformed automatically this function will examine the item and convert to one or more strings from whatever SECS II data type was used unsigned 4 byte integer 4 byte floating point ASCII etc The first string is stored in str pos and pos is incremented for subsequent values if any This function has the ability to collapse a complicated nested list structure into a linear array This can be a tremendous advantage if the structure is in a predefined standard format On the other hand the structure is lost if it is not already known In this latter case the calling program would need to scan at least part of the stream manually Conversion information A10 String of ASCII 0s and 1s in reverse order The first character represents bit 1 the second character represents bit 2 etc 11 TRUE or FALSE 20 Ifa string is longer than 128 bytes additional array elements are used with an ASCII 0 character at the beginning of each continuation string AdeptGEM User s amp Reference Guide Rev P1 203 s2 unpack str Chapter 9 File GEMS2 SQU Related Routines s2 pack 1lascii s2 pack str 204 AdeptGEM User s amp Reference Guide Rev P1 Descriptions of Routines in the AdeptGEM Module send_host_msg Calling Sequence CALL send_host_msg args error Function Statement execution routine for the SEND_HOST_MSG statement It is used to send a message to the host NOTE The statement name is hard coded in the ro
130. es AdeptGEM can generate a multi block messages if this is the case GEM Requirements These GEM requirements are specified in Section 4 2 3 4 of SEMI E30 95 AdeptGEM User s amp Reference Guide Rev P1 29 Chapter 3 Additional GEM Capabilities 1 AdeptGEM uses the V internal timers for triggering the periodic sampling 2 Up to four concurrent traces can be maintained 3 Any SVID in the GEM Variables database can be included in a trace data collection report See the above NOTE for details on the single block restriction 3 6 Limits Monitoring SEMI E30 95 4 2 4 Sections Database Usage Collection Event Documentation You must document any Collection Events or Variables that you create Requirements V Task Usage Limits monitoring trace data collection Limits monitoring allows the host to request that a value from a record in the GEM Variables database be monitored to see if it violates a set of defined limits The host specifies the limits and the polling interval for the monitoring The only actions required by the equipment are e Create a SVID in the GEM Variables database that will contain the value that is being monitored e Provide a way sequence statement or V routine to update the Status Variable e Indicate which Collection Event is to be generated when the value crosses a limit This event is specified in the Limit Mon Event data box on the GEM Var
131. etails Enter a description of this record item Select Data Value as the GEM Variable Class item Select Numeric Function or String Function as the Variable Type item If a numeric variable is being defined enter a units identifier item that will be sent to the host when this Variable ID is reported The units identifier should correspond to the identifi ers described in Section 9 Units of Measure in SEMI E5 95 Refer to item for the following steps 10 Specify a Host Data Type See Table 7 1 for the list of data types Specify the Access Control Enter a single digit 0 4 in this field to specify the user access level required to change the record Insert a 1 no modification allowed or 0 modification allowed in front of the access digit to control host modification of the EC Enter the Minimum Maximum and Typical values as appropriate In addition to creating the database record for the DVVAL you must also modify the V routine gm user packval as required to return the value of the DVVAL See the description of gm user packval on page 171 for more information 92 AdeptGEM User s amp Reference Guide Rev P1 The GEM Variables Database Status Variable Using a Numeric Variable The next figure shows a status variable in the GEM Variables database that uses a numeric value in its definition GEM Variable Global S IO 1 2 DYYAL Figure 7 4 GE
132. etained in status variable 9010 is controlled by the V 152 AdeptGEM User s amp Reference Guide Rev P1 Descriptions of Routines in the AdeptGEM Module gm log global variable gm temp log2siz as shown below The variable gm temp log2siz must have one of the values shown gm temp log2siz 0 1 2 3 4 5 6 7 Messages in log 1 2 4 8 16 32 64 128 File GEMENG SQU AdeptGEM User s amp Reference Guide Rev P1 153 gm make links Chapter 9 Calling Sequence CALL gm make links ceid rptid num status Function Accesses the Collection Event records in the GEM Items database to form links from a collection event to one or more reports Usage Considerations A database record must already exist for the specified collection event but it must not reference any RPTIDs Input Parameters ceid The identification number for the desired collection event rptid An array containing one or more RPTIDs links in elements 0 through num l num The total number of RPTIDs links in the array rptid Output Parameter status 0 Success 1 There is no Collection Event record with the given CEID 2 One or more RPTIDs links are already defined for the specified collection event lt 0 Standard AIM database status return code Details This routine does not verify that the given RPTID numbers are valid the subroutine gm get report can be used to determine if a report exists If there already are one or more links defined
133. etected ACTIVE Local Entity IP Configured in Determined Address and Port S by TCP IP AdeptNET number convention Remote Entity IP Determined Address and Port 9300 by TCP IP Number convention AdeptGEM User s amp Reference Guide Rev P1 49 Chapter 4 SECS I and HSMS Details Table 4 3 HSMS Parameter Description Parameter Description T3 Reply Timeout Specifies maximum time an entity expecting a reply message will wait for that reply T5 Connect Separation Specifies the time that must elapse between successive Timeout attempts to connect to a given remote entity T6 Control Transaction Specifies the time that a control transaction may remain Timeout open before it is considered a communications failure Time that a TCP IP connection can remain in NOT ni NOT APLEC SELECTED state i e no HSMS activity before it is Timeout eA considered a communications failure T8 Network Maximum time between successive bytes of a single HSMS Intercharacter Timeout message that may expire before it is considered a communications failure Connect Mode Specifies the logic this local entity will use during HSMS connection establishment Local Entity IP Address and Port number Determines the address on which the local entity will listen for incoming connection requests Required for any entity operating in PASSIVE mode Remote Entity IP Determines the address of the remote entity to which
134. eters are included in Table 7 2 They are also summarized in Tables 4 1 through 4 3 File GEMSTMT SQU Statement DB STATGEM DB Related Routines AdeptGEM User s amp Reference Guide Rev P1 125 generate_alarm Chapter 9 Calling Sequence CALL generate_alarm args error Function Statement execution routine for the GENERATE_ALARM statement It is used to generate an alarm NOTE The statement name is hard coded in the routine gm scr spawn in the file GEMAIM V2 That routine shows only alarms in the scrolling pick list Usage Considerations Runtime Control Robot Vision Statement Syntax GENERATE_ALARM gemitem Input Parameters args Real array containing the arguments for this statement record numbers or constants The individual elements are described below gemitem args 1 Record number of a record of type Alarm from the GEM Items database Output Parameters error Real variable that receives a value indicating whether or not the operation was successful and what action should be taken by the calling routine See the standard AIM operator error response code values for details Details This statement sends an alarm message to the host When this routine is executing it temporarily locks access to the GEM Items database Refer to section 3 8 on page 32 for details on alarm management Refer to page 119 for details on the struc
135. etween operator terminals attached to the host or equipment S10 FO S10 F1 S10 F2 S10 F3 S10 F4 S10 F5 80 Abort Transaction S H lt gt E Description Used in lieu of an expected reply to abort a transaction Function 0 is defined in every stream and has the same meaning in every stream Terminal Request TRN S H lt E reply Description Send a terminal text message to the host Structure L 2 1 lt TID gt 1 byte binary value 0 2 lt TEXT gt message text ASCII data Terminal Request Acknowledge TRA S H gt E Description Acknowledge or error Structure lt ACKC10 gt 1 byte binary 0 accepted for display 1 message will not be displayed 2 terminal not available Terminal Display Single VTN S H gt E reply Description Data to be displayed on the equipment terminal Structure E2 1 lt TID gt ignored 1 byte binary 2 lt TEXT gt ASCII data 0 238 characters Terminal Display Single Acknowledge VTA S H lt E Description Acknowledge or error Structure lt ACKC10 gt 1 byte binary 0 accepted for display 1 message will not be displayed Terminal Display Multi Block VTN M H gt E reply Description Host sends data to be displayed on the equipment terminal Structure L 2 AdeptGEM User s amp Reference Guide Rev P1 SECS I Messages 1 lt TID gt ignored 1 byte binary 2 Ln 1 lt TEXT1 gt ASCII data 238 characters maxim
136. f Routines in the AdeptGEM Module line_check File GEMSTMT SQU Statement DB STATGEM DB Related Routines AdeptGEM User s amp Reference Guide Rev P1 183 run_check Chapter 9 Calling Sequence CALL run_check args error Function Statement execution routine for the RUN_CHECK statement It is used to check whether or not it is okay for the current sequence to command robot motion NOTE The statement name is hard coded in the routine gm scr spawn in the file GEMAIM V2 That routine shows only numeric variables in the scrolling pick list Usage Considerations Runtime V Control Robot Vision Statement Syntax RUN_CHECK gemvariable MOTION_OK Input Parameters args Real array containing the arguments for this statement record numbers or constants The individual elements are described below gemvariable args 1 Record number from the GEM Variables database Output Parameters error Real variable that receives a value indicating whether or not the operation was successful and what action should be taken by the calling routine See the standard AIM operator error response code values for details A Boolean TRUE FALSE is stored in the specified GEM variable if it is a valid destination indicating whether or not conditions permit the sequence to perform robot motion See the Data Structure described in the Details section for more information
137. f the access digit to control host modification of the record 11 Enter the Minimum Maximum and Typical values as appropriate 12 If this record relates to a limit enter the number of the limits monitoring event This number is a Collection Event ID in the Collect Event record type See section 3 6 13 If this record will define an automatically detected alarm press Auto Alarm Detection item The options described in Automatic Alarm Detection on page 33 will be dis played Note that this record specifies the ai ctl to get a value from not the actual value of the ai ctl array element The value of the ai ctl element is returned as the value of the record AdeptGEM User s amp Reference Guide Rev P1 99 Chapter 7 The AdeptGEM Databases Status Variable Using a Numeric or String Function The next figure shows a status variable in the GEM Variables database that uses a numeric function GEM Variable Global p x Go Seek Edit Help ECID Qs le sv nst Qwariable DoS 17 Date 20 Ma 97 07 56 SYID L n 6 of 128 DVVAL 9 Description miz is a sample status variable SV that uses a numeric function Value Not defined Ouits identifier 7 su Variable Class 7T O Parameters Data Value Status Variable Host Data Type 44 octal 4 Equipment Const State Variable Access Control Minimum Value 9 variable Type Typical Value Numeric Variable St
138. ference Guide Rev P1 85 Chapter 7 The AdeptGEM Databases 7 1 The GEM Variables Database The GEM Variables database stores equipment constants ECs status variables SVs and data values DVVALs used in the GEM environment There are several classes of variables predefined variables that the user sets predefined variables that can be changed only by the equipment and user defined variables e Status Variable SV 86 Status variables are used to communicate the status of the workcell i e number of widgets completed number of component parts remaining etc These are values that are set by the equipment but are read only to the host see the table below To comply with the SEMI standards you must guarantee that these values are always kept current For example you could have a sensor at the end of your circuit board assembly line that is tripped each time a completed assembly passes by This action causes the total count to be increased one unit This value the total count is stored in a status variable that is updated each time the sensor is tripped It must be kept current so that anyone reading this value will know the exact number of assemblies that have been completed Status variables include user defined variables that may be input signals output signals AIM variables ai ctl values or state variables There are also a number of predefined GEM internal status variables that cannot be modified Equipment
139. g Sequence CALL s2 pack str Sstr start len type Sstream arrow Function Pack an array of strings into a SECS II data stream represented by stream and arrow Input Parameters str The array of strings to be written start The number of the first element of str to use typically 0 or 1 len The total number of elements of str to pack type The SECS II data type to convert to If bit 7 is set then a list of values instead of a single array item is written see abstract stream The stream of bytes to write to arrow The byte in the stream to start writing data to The first byte in the stream would be 1 Output Parameter stream The modified stream of bytes arrow The byte in the stream just following the last byte written Details arrow represents the character that data should be written to in the stream and it is automatically incremented after the data is packed by the number of bytes written Data conversion is automatic SEMI supported types are 10 11 20 31 32 44 51 52 Data type not supported are 21 30 34 40 50 54 If bit 7 of type is set i e 64 is added to the type then the data will be packed as a list with one array element in one item instead of the normal algorithm in which an entire array is packed into one item All elements written are converted to the same type If SECS II requires that different types be used for different array elements then th
140. he given lt CEID gt Individual Report Request IRR S H gt E reply Description The host request a defined report from the equipment Structure lt RPTID gt unsigned 1 2 4 or 8 byte integer data 1 32767 Event Report Data IRD M H lt E Description Equipment sends variable data defined for the given lt RPTID gt to the host Structure Ln 1 lt V1 gt any allowed data type n lt Vn gt Exceptions A zero length list means lt RPTID gt is not defined S6 F21 Annotated Individual Report Request AIRR S H gt E reply Description Host requests an annotated defined report from the equipment Structure lt RPTID gt unsigned 1 2 4 or 8 byte integer data 1 32767 S6 F22 Annotated Individual Report Data AIRD M H lt E Description Equipment returns requested annotated variable data defined for the given lt RPTID gt to the host Structure Ln 1 L 2 AdeptGEM User s amp Reference Guide Rev P1 75 Chapter 5 SECS II Messages 1 lt VID1 gt 2 byte unsigned integer 1 32767 2 lt V1 gt any allowed data type n L 2 1 lt VIDn gt 2 lt Vn gt Exceptions A zero length list n 0 indicates that lt RPTID gt is not defined Stream 7 Process Program Management The functions in this stream are used to manage and transfer process control programs S7 FO Abort Transaction S7FO S H lt gt E Description Used in lieu of an expected reply to abort a transaction Fu
141. he individual equipment The fundamental requirements are detailed in this chapter The additional capabilities are detailed in Chapter 3 Many of the capabilities described in this chapter can be categorized in one of three scenarios 1 Scenarios that occur asynchronously and that require a primary message to be sent from the equipment Adept system to the host In this case a separate task detects these scenarios for noti fication to the host Various parameters to support these capabilities are specified in AdeptGEM databases 2 Scenarios that occur synchronously and that require a primary message to be sent from the equip ment Adept system to the host AIM statements are provided to implement this scenario 3 Scenarios that occur at the host level and that require some form of response from the equipment Adept system These are part of the SECS II implementation and are normally transparent to the user Various parameters to support these capabilities may need to be specified in AdeptGEM databases 2 1 Introduction This chapter contains the SEMI required documentation for SEMI E30 95 Generic Model for Communications and Control of SEMI Equipment GEM as implemented by AdeptGEM These standards are described in the publication Book of SEMI Standard 1995 Equipment Automation Software 2 GEM Compliance Details The AdeptGEMsystem is in compliance with the protocols defined in SEMI E30 95 Generic Model for Communications
142. he list arrow The byte position in the datal array to start writing data to The first byte in the data array is number 1 Output Parameters data The modified datal array arrow The byte position in the datal array just following the last byte packed Details This routine is used to generate the data for messages S1F2 S1F13 and S1F14 The Equipment Model Type lt MDLN3 gt is an ASCII string item that identifies the equipment to the host This routine defines the value as Annnnn where nnnnn is one to five digits representing the model number of the Adept MV controller as supplied by the Vt function ID 1 1 The Software Revision Code lt SOFTREV gt is an ASCII string item that identifies the software running on the equipment The string is defined either in the GEM Variable database by equipment constant 9301 or as a predefined string with the format V vv r The equipment constant is used if 1 equipment constant 9102 is defined and has a TRUE i e nonzero value and 2 equipment constant 9301 is defined If those conditions are not satisfied a string identifying the V system version is used In that case vv is the Vt version number supplied by the V function ID 3 1 and r is the V revision number supplied by the V function ID 4 1 File GEMENG SQU AdeptGEM User s amp Reference Guide Rev P1 157 gm pack val Chapter 9 Calling Sequence CALL gm pack val vid Sd
143. hould be familiar with this part of the specification so that you can design your AIM implementation to work within the constraints and requirements of the GEM specification 12 AdeptGEM User s amp Reference Guide Rev P1 AdeptGEM Requirements 1 3 AdeptGEM Requirements In order to install the AdeptGEM system your equipment must meet the following requirements Hardware The system hardware must be adequate to meet the requirements of the devices and software installed on the system Normally the AdeptGEM system will not require any hardware upgrades beyond an already adequately configured system If you are using the SECS I serial option as the communications channel you must have one free serial port If you are using the HSMS ethernet option you must have an 040 system processor equipped with the AdeptNET hardware Software The system must have AIM 3 1 or later and a compatible V operating system 11 2 or later If the HSMS option is used the system must have the AdeptNET TCP IP option The V Extensions AIM Version 3 1 and GEM amp SECS I II Applications software option licenses must be installed in the Adept controller 1 4 Installing AdeptGEM The AdeptGEM system is an add on AIM module You should follow the installation instructions for the primary AIM application for example MotionWare that you are using Enabling AdeptGEM To make the AdeptGEM system available for use open the BASEIN
144. i Y IDLE d 5 PAUSED RUNNING D gt wy 6 TEACHING Figure 2 1 Equipment Processing State Model When AIM is first started the system will be in the idle state Equipment processing state model transitions are based on state transitions caused by the AIM control statements The system will transition to RUNNING when a START instruction is processed The system will transition to PAUSE state if a PAUSE instruction is processed The system will transition back to the previous RUNNING sub state when a PROCEED or RETRY instruction is processed A STOP or PANIC instruction will transition the system to the IDLE state Pressing Teach will cause a transition to the TEACHING state A PANIC or STOP instruction will transition the system to the IDLE state The current state of the equipment process state for task 0 is stored in status variable 9007 in the GEM Variables database The previous equipment processing state for task 0 is stored in status variable 9006 The states of the other 26 tasks are stored in status variables 9021 to 9074 The possible states are INIT not recorded state change occurs before communications enabled 0 RUNNING 1 TEACHING 2 PAUSED 3 IDLE AdeptGEM User s amp Reference Guide Rev P1 19 Chapter 2 Fundamental GEM Requirements The following table shows the possible t
145. i OUTPUT sig b w u H AdeptGEM User s amp Reference Guide Rev P1 17 Chapter 2 Fundamental GEM Requirements 5 SET_STATE action 6 IF NOT sig THEN Ta MOVE FROM table TO accept bin 8 ELSE 9a MOVE FROM table TO reject bin 10 END Note that user state models are confined to AIM runtime sequences See Chapter 6 for details on the statements added by the AdeptGEM module 2 3 Equipment Processing State Model SEMI E30 95 3 4 Sections Database gt GEM Variable Usage Collecti Alarm o enton Report GEM Variable GEM Variable Report gt GEM Variable GEM Variable Report GEM Variable Collection Event Documentation The Equipment Processing State model is described in this manual Requirements The equipment processing state model corresponds to AIM sequence processing states running paused idle etc A state model is maintained for each executing task and separate equipment constants are maintained for the current and previous process states of all tasks When a state change occurs in the equipment processing state model DVVAL 9210 is updated with the number of the task that transitioned see Table 7 2 for the VIDs used in this state model 18 AdeptGEM User s amp Reference Guide Rev P1 Equipment Processing State Model
146. iables database menu page Figure 7 6 e Define the reports used by the Collection Event These reports may also be defined by the host Once these records are available limits monitoring is transparent to the user GEM Requirements These GEM requirements are specified in Section 4 2 4 4 of SEMI E30 95 1 Seven limits may be monitored per variable 2 The CEID for the monitored variable is specified in the GEM Variables database record that specifies which value is to be monitored 3 All variable data for the monitored value is defined in database records that are permanently stored on magnetic media The monitoring parameters supplied by the host are stored in a data file whenever the AIM system is shut down 30 AdeptGEM User s amp Reference Guide Rev P1 Status Data Collection 4 The limits monitoring algorithm makes all SEMI required checks for valid limits monitoring requests received from the host 5 The SVID records in the GEM Variables database can be completely documented by the user These records can be exported in ASCII format to create host required documentation 3 7 Status Data Collection SEMI E30 95 4 2 5 Sections Database GEM Variable Usage Documentation You must document any Status Variable IDs that you create Requirements This capability is implemented as specified in the SEMI standards It allows the host to request the values of defined status variable SVs It is largely tr
147. ingle digit 0 4 in this field to specify the user access level required to change the record Insert a 1 no modification allowed or 0 modification allowed in front of the access digit to control host modification of the record 96 AdeptGEM User s amp Reference Guide Rev P1 The GEM Variables Database Status Variable Using a V Variable The next figure shows a status variable in the GEM Variables database that uses a V variable in its definition GEM Variable Global S IO J p P 2 DYYAL gm var test Figure 7 7 GEM Variables Database Status Variable Using a V Variable To define a new status variable that uses a Vt variable Create a new GEM Variables record Enter a name for the new record item Assign a Variable ID item See Variable IDs VIDs on page 87 Enter an optional description of this record item Select Status Variable as the GEM Variables class item Select V Variable as the Variable Type item Specify a name for the variable item o N DF FF 9 N B Enter a units identifier item that will be sent to the host when this Variable ID is reported The units identifier should correspond to the identifiers described in Section 9 Units of Mea sure in SEMI E5 95 Refer to item for steps 9 through 12 9 Specify a Host Data Type See Table 7 1 Host Data Types on page 88 AdeptGEM User s amp Reference Guide Rev P1 97
148. ion to creating the database record for the status variable you must also modify the Vt routine gm user packval as required to return the value of the status variable See the description of gm user packval on page 171 for more information State Variable The next figure shows an example definition for a State Variable GEM Variable Global Figure 7 10 GEM Variables Database State Variable A State Variable is a special case of a Status Variable This record works with State record types in the GEM Items database to hold the current state of user defined state models To define a new State Variable Create a new GEM Variables record Enter a name for the new record item Assign a Variable ID item See Variable IDs VIDs on page 87 Enter a description of this record item Select State Variable as the GEM Variable Class item a e eB N Bhe AdeptGEM User s amp Reference Guide Rev P1 101 Chapter 7 The AdeptGEM Databases 6 The Variable Type item Numeric Variable is automatically selected 7 Enter the number of the Current State ID item This number corresponds to the State ID field in a State record type When the Current State ID number is entered the name of the associated State record type is displayed in the Current State Name field Refer to item for the following steps 8 Specify a Host Data Type See Table 7 1 Host Data Types on page 88 9 S
149. ist In this case the list items are formatted with the default data type 44 2 The data is packed as a list if the type parameter has bit 7 i e mask value 100 set In this case the list items are formatted with the data type specified by the low order six bits of the type parameter That is add 100 to the desired item format type to get a list of items with that type A single data item with no value or a zero length list can be packed by setting num to zero All the array elements are packed using the same data type If the SECS II message requires that different data types be used for different array elements the elements will have to be packed in the stream individually possibly with multiple calls to this routine Data formatting is automatic for these supported SEMI data types 10 11 20 31 32 34 44 51 52 and 54 Data types 21 30 40 and 50 are not supported No error results if one of the unsupported data types is specified but data type 44 is used by default When data type 10 is used each value is represented by eight bits When data type 11 is used any nonzero value is considered TRUE AdeptGEM User s amp Reference Guide Rev P1 195 s2 pack reals Chapter 9 File GEMS2 SQU Related Routines s2 pack 1real s2 unpack 1real s2 unpack real 196 AdeptGEM User s amp Reference Guide Rev P1 Descriptions of Routines in the AdeptGEM Module s2 pack str Callin
150. iven lt DEID gt to host Structure L 3 AdeptGEM User s amp Reference Guide Rev P1 73 Chapter 5 SECS II Messages lt DATAID gt 2 byte unsigned integer normally 0 2 lt CEID gt 2 byte unsigned integer 1 32767 3 La de Ty 2 1 lt RPTID1 gt 2 byte unsigned integer 1 32767 2 L b 1 lt V1 gt any allowed data type b lt Vb gt a L 2 1 lt RPTIDa gt 2 Lee 1 lt V1 gt c lt Vce gt Exceptions A zero length list a 0 means there are no reports linked to the given lt CEID gt S6 F17 Annotated Event Report Request AERR S H gt E reply Description Same as S6 F15 buts requests annotated reports Structure lt CEID gt S6 F18 Annotated Event Report Data AERD M H lt E Description Equipment sends annotated reports linked to a given lt CEID gt Structure L 3 1 lt DATAID gt 2 byte unsigned integer normally 0 2 lt CEID gt 2 byte unsigned integer 1 32767 3 La 1 L 2 1 lt RPTID1 gt 2 byte unsigned integer 1 32767 2 L b Ly 2 1 lt VID1 gt 2 byte unsigned integer 1 32767 2 lt V1 gt any allowed data type b L 2 1 lt VIDb gt 2 lt Vb gt 74 AdeptGEM User s amp Reference Guide Rev P1 S6 F19 S6 F20 SECS II Messages a L 2 1 lt RPTIDa gt 2 L c 1 L 2 1 lt VID1 gt 2 lt V1 gt Ce 4 2 1 lt VIDc gt 2 lt Ve gt Exceptions A zero length list a 0 means there are no reports linked to t
151. le numeric item or as a list with one item There are two ways to request a list 1 The data is packed as a list if the type parameter has the value 0 explicitly requesting a list In this case the list item is formatted with the default data type 44 2 The data is packed as a list if the type parameter has bit 7 i e mask value 100 set In this case the list item is formatted with the data type specified by the low order six bits of the type parameter That is add 100 to the desired item format type to get a list of items with that type 190 AdeptGEM User s amp Reference Guide Rev P1 Descriptions of Routines in the AdeptGEM Module s2 pack 1real File GEMS2 SQU Related Routines s2 pack reals s2 unpack 1real s2 unpack real AdeptGEM User s amp Reference Guide Rev P1 191 s2 pack list Chapter 9 Calling Sequence CALL s2 pack list items Sstream arrow Function Pack a list header into a SECS II data stream Input Parameters items The number of items in the forthcoming list The maximum allowed value is 65 535 the minimum value is 0 See the Details section for more information stream The stream of bytes to receive the list header arrow The byte position in the stream to start writing data to The first byte in the stream is number 1 Output Parameters Details stream The modified stream of bytes arrow The byte position in the stream just following the
152. le states of all alarms as well as the report definitions and collection events are stored in AIM databases on magnetic media 3 The alarm database contains fields for a description ALID ALTX ALCD and two CEIDs 4 Enabled alarm reports will be sent prior to corresponding enabled event reports 3 9 Remote Control SEMI E30 95 4 4 Sections Database None Usage Documentation You must document the behavior of any defined remote commands and the Requirements usage of any parameters associated with the commands AdeptGEM User s amp Reference Guide Rev P1 33 Chapter 3 Additional GEM Capabilities Remote control can be used by the host to e Execute a predefined command PANIC or SPEED e Execute a V program e Execute an AIM control sequence To determine how the host request is processed the AdeptGEM software looks first for a match with a predefined command second for a match with a V program name and third for a sequence spawn See the description of the routine gm remote cmd on page 161 for details Status of the AdeptGEM System There are three V global variables that store the status of the AdeptGEM system gm comm TRUE if the equipment is in the COMMUNICATING communications state gm online TRUE if the equipment is in the COMMUNICATING communications state and the ON LINE control state or if the equipment will go into the ON LINE control state when communication is enabled gm remote TRUE if the equipment
153. ling program to interpret the results returned by this function If arrow is passed by value it will not be changed by this routine That way this routine can be used to determine which extraction routine s will be needed to gather the data from the stream File GEMS2 SQU AdeptGEM User s amp Reference Guide Rev P1 199 s2 stream trim Chapter 9 Calling Sequence CALL s2 stream trim position S stream Function Remove trailing unwanted characters from the end of a SECS II data stream Input Parameters position The character position at which to start removing characters stream The stream to remove extra characters from Output Parameter stream The modified trimmed stream Details The pos parameter is the position of the first unwanted character in the stream which is one more than the desired length of the stream In the last 128 byte element of the stream array that is retained all characters starting at pos are removed and the next element of the stream is made empty Only the unwanted characters in the last element and the next element after that are erased If any characters exist in later elements they are not removed However enough characters are removed so that most functions should be able to deal with the stream correctly File GEMS2 SQU 200 AdeptGEM User s amp Reference Guide Rev P1 Descriptions of Routines in the AdeptGEM Module s2 unpack 1real Calling Sequence CALL s
154. ls File GEMDBASE SQU 148 AdeptGEM User s amp Reference Guide Rev P1 Descriptions of Routines in the AdeptGEM Module gm get vid list Calling Sequence CALL gm get vid list mask list num Function Return a list of existing VIDs Input Parameter mask A bit field specifying the class or classes of variables desired in the list as follows Bit 1 B1 Status variables Bit 2 B10 Equipment constants Bit 3 4B100 Data values Output Parameters list A real array containing the list of VIDs starting with element 0 num The total number of elements in list Details The list can be of status variables only equipment constants only data values only or any combination The VIDs in the returned list are guaranteed to be in ascending order File GEMENG SQU Related Routines gm exist vid gm get vinfo AdeptGEM User s amp Reference Guide Rev P1 149 gm get vinfo Chapter 9 Calling Sequence CALL gm get vinfo vid name lmevent range Sunits status Function Access the GEM Variables database to retrieve miscellaneous information associated with a variable Input Parameter vid The identification number of the variable for which information is desired Output Parameters name The up to 15 character name of the variable Imevent The limits monitoring event ID number rangel Limit information in the following elements 0 Typical default value 1 Minimum value 2 Ma
155. ly message i e if the W bit was set in the received message hd uc hd stream Stream number for the received message always the same as the number in the name of this routine hd uc hd function Function number for the _reply_ message i e one larger than the function number that was in the received message datal The body of the received message i e without the header The routines s2 unpack can be used to extract formatted information from this raw data arrow Always set to 1 to facilitate processing of the contents of the data array This variable can be used with the s2 unpack routine to keep track of the progress of extracting information from the datal array bypass Boolean that is always initially set FALSE Output Parameter hd Header data for the reply message to send if any Normally this array is not modified by this routine The element hd uc hd wait must have a nonzero value if a reply message is to be sent to the host 176 AdeptGEM User s amp Reference Guide Rev P1 Descriptions of Routines in the AdeptGEM Module gm user strmN Details datal Normally this array contains the body of the reply message to send if any The routines s2 pack can be used to create the contents of this array Note that all the input data must be extracted from this array before the reply message is composed Alternatively the reply message can be composed in a separate local array variable and
156. me specified in the Spawn Routine field in a State record in the GEM Items database Usage Considerations The parameter list for your routine must match the number and type of parameters shown above although you can use any variable names you wish You can create as many different spawn routines of this type as needed Input Parameters vid Associated VID record from the GEM Variables database state_id ID of a State record in the GEM Items database i e the record for the state that has just been entered Details One of the fields in the State database record specifies a routine to be executed when a state transition takes place Your routine can take whatever steps are necessary to respond to the state change File This is a user written routine It is not provided with the AdeptGEM module Related Routines gm get sinfo gm get state AdeptGEM User s amp Reference Guide Rev P1 209 Index Symbols Are you there request 57 A Abort transaction 57 76 78 80 ACKC10 80 81 ACKC5 70 ACKC7 77 Activating the AdeptGEM option 13 Adding AdeptGEM to an existing AIM in stallation 13 Additional documentation 47 AdeptGEM debug mode 27 requirements 13 system status 34 AdeptGEM option activating the 13 ai ctl and GEM Variables database 93 97 98 AIM control sequences 34 Alarm listdata 71 management 32 record type 108 structure 119 report acknowledge 70 report send 70 send 70 alarmid 105 alarmsena
157. mmands and to ensure that they are SEMI compliant 2 The following commands are optional However if they are implemented they must match the SEMI description for the command PP_SELECT PAUSE RESUME and ABORT 3 Remote commands may be sent in mixed letters These GEM requirements are specified in Section 4 4 4 of SEMI E30 95 Control State Model Restrictions The Control State model defines the level of cooperation between the host and equipment It also specifies how the operator may interact at the different levels of host control The host and equipment are restricted from executing certain programs See the paragraphs below for details 1 Note that equipment off line does not physically break the communication link with the host The host can still transmit messages and the equipment will respond with the appropriate message indicating that communication is disabled AdeptGEM User s amp Reference Guide Rev P1 35 Chapter 3 Additional GEM Capabilities Also see section 3 10 Equipment Constants subsection GEM Requirements item 2 for details The host shall have the following capabilities and restrictions when the LOCAL state is active e The host shall be prohibited from the use of remote commands that cause physical movement or which initiate processing During processing the host shall be prohibited from the use of any remote command that affects that process When the on line REMOTE state is
158. n and are normally trans parent to the user Various parameters to support these capabilities may need to be specified in AdeptGEM databases Introduction This chapter contains the SEMI required documentation for SEMI E30 95 Generic Model for Communications and Control of SEMI Equipment GEM as implemented by AdeptGEM These standards are described in the publication Book of SEMI Standard 1995 Equipment Automation Software 2 GEM Additional Capabilities Compliance Details The AdeptGEM system is in compliance with the protocols defined in SEMI E30 95 Generic Model for Communications and Control of SEMI Equipment GEM Establish Communications Dynamic Event Report Configuration Variable Data Collection Trace Data Collection Limits Monitoring Status Data Collection Alarm Management Remote Control AdeptGEM User s amp Reference Guide Rev P1 25 Chapter 3 Additional GEM Capabilities e Equipment Constants e Process Program Management e Material Movement e Equipment Terminal Services e Clock e Control Host Initiated The following sections provide detailed information about the support in the AdeptGEM system for these GEM capabilities 3 2 Establish Communications SEMI E30 95 4 1 3 2 Sections Database IGEM Variable Usage T Report K GEM Variable GEM Variable Report Report GEM Variable GEM Variable eoeeen Repo
159. n 3 6 13 If this record will define an automatically detected alarm press Auto Alarm Detection item The options described in Automatic Alarm Detection on page 33 will be dis played Status Variable Using a Digital I O Signal The next figure shows a status variable SV in the GEM Variables database that uses a digital 1 O signal GEM Variable Global let E3 Go Seek Edit Help ECID sample sv Variable ID 1002 Date aaa 10 08 svio 1 p 2 DVVAL eee ie e Description This is a sample user defined record It creates a status variable with an ID of 1002 The state of an input signal is used for the value of the variable Value FALSE Qsignal 2100 O GEM Variable Class 7 O Parameters Data Value Status Variable Host Data Type 11 octal Equipment Const State Variable Access Control a Q Variable Type Typical Value True Numeric Variable String Variable False Input Signal V Variable Limit Mon Event Output Signal ai ctl Value Numeric Function String Function Auto Alarm Detection Figure 7 5 GEM Variables Database Status Variable ID Using Digital I O e e To define a new status variable that uses a digital I O signal as its value 1 Create a new GEM Variables record 2 Enter a name for the record item 3 Assign a Variable ID item See Variable IDs VIDs on page 87 4 Enter a description of this record item
160. n AIM in order to define a workcell implementation you create two types of resources logical resources and data resources The logic resources are the AIM sequences and an arbitrary number of sequences can be used in an implementation The data resources are AIM databases and an arbitrary number of databases can be accessed by an executing sequence or group of sequences A process program in the AdeptGEM system is defined as an AIM Resource Module When you request information on a process program the AdeptGEM system will search the module directory and return information on the specified resource module Process Program Directory All requests related to process program management will use the directory path specified in EC 9302 which specifies the path that will be used for all process program management requests delete directory transfer etc Process Program Operations Host requests to upload download or delete a process program can specify a resource module or a disk file For those operations a PPID that does not contain a period character is interpreted as the name of a resource module a PPID that does contain a period character is interpreted as the name of a disk file The host can upload any resource module or disk file by initiating the proper process program management upload scenario The host can download as many resource modules and disk files as can be stored on disk Disk space availability is
161. n Event Record Type The Collection Event record type defines a Collection Events as required by the GEM specification To access a Collection Event record Edit GEM Items Seek Edit double click record name GEM Items Global OR x Go Seek Edit Help ervent m 5 Date 24 Sep 96 08 16 Description mis is a sample collection event record ecord Type Alarm Collection Event Report O State vent Is Enabled J Report IDs 1501 cig 1502 10 1503 11 12 Oprorce Event to Happen Now Figure 7 13 GEM Items Database Collection Event Record The Collection Event ID number for this Collection Event record is 5 It has three Report records associated with it When this collection event occurs all the reports specified in the this record will AdeptGEM User s amp Reference Guide Rev P1 109 be transmitted to the host These reports are in turn made of a series of Variable IDs from the GEM Variables database To define a new Collection Event record MO OI Re Die oe Create a new GEM Items record Enter a name for the new record item Enter an ID number for this Collection Event item Enter an optional description for this record item Select Collection Event as the GEM Items record type item Select Event is Enabled item to enable this event Enter the Report ID numbers item for the report recor
162. nction 0 is defined in every stream and has the same meaning in every stream S7 F1 Process Program Load Inquire PPI S H lt gt E reply Description This message is used to initiate the transfer of a process program or disk file It must be called prior to S7F3 57F4 See section 3 11 on page 38 for information on how the equipment interprets lt PPID gt Structure L 2 1 lt PPID gt ASCII data 1 15 characters 2 lt LENGTH gt unsigned 1 2 4 or 8 byte integer data S7 F2 Process Program Load Grant PPG S H lt gt E Description This message gives permission for the process program to be loaded Structure lt PPGNT gt 1 byte binary 0 OK 1 program already exists 2 not enough space available 3 invalid lt PPID gt 4 busy try later 5 program cannot be accepted S7 F3 Process Program Send PPS S H lt gt E reply Description The program or disk file initiated by S7F1 S7F2 is transferred Structure L 2 1 lt PPID gt ASCII data 1 15 characters 2 lt PPBODY gt ASCII data 76 AdeptGEM User s amp Reference Guide Rev P1 SECS I Messages S7 F4 Process Program Acknowledge S H lt E Description Acknowledge or error Structure lt ACKC7 gt 1 byte binary 0 accepted 1 permission not granted 2 length error 5 other error e g validation failed S7 F5 Process Program Request PPR S H gt E reply Description This message is used to request the tran
163. nes gm estcom gm lineset AdeptGEM User s amp Reference Guide Rev P1 129 gm ed alarm Chapter 9 Calling Sequence CALL gm ed alarm alid enable status Function Access an Alarm record in the GEM Items database to enable or disable the reporting of the selected alarm Input Parameters alid The identification number of the alarm to have reporting enabled or disabled enable TRUE if the alarm should be enabled otherwise FALSE Output Parameter status 0 Success 1 There is no Alarm record with the given ALID lt 0 Standard AIM database status return code File GEMDBASE SQU Related Routines gm alarm gm get alarm gm raw alarm gm sr alarm 130 AdeptGEM User s amp Reference Guide Rev P1 Descriptions of Routines in the AdeptGEM Module gm ed event Calling Sequence CALL gm ed event ceid enable status Function Access the Collection Event record in the GEM Items database to change the reporting status of a particular collection event If a collection event is disabled its associated reports if any will not be sent to the host Input Parameters ceid The identification number for the collection event to update enable TRUE if the event should be enabled otherwise FALSE Output Parameter status 0 Success 1 There is no Collection Event record with the given CEID lt 0 Standard AIM database status return code File GEMDBASE SQU Related Routines gm event gm get event gm raw event
164. nt constants that define the communication configuration and GEM parameters are included in Table 7 2 They are also summarized in Tables 4 1 through 4 3 VID 9300 specifies the serial channel ID for SECS I or the ethernet ID for HSMS The possible values for a serial channel are LOCAL SERIAL 1 LOCAL SERIAL 2 SERIAL 1 SERIAL 2 and SERIAL 3 See the AdeptNET user s guide for details on proper ethernet channel names AdeptGEM Debug Mode AdeptGEM provides a window that traces the message traffic and success state of message transmission The window is displayed whenever communications is enabled and EC 9105 is set to enable the windows This EC is checked only at start up so a restart is required to change the debug mode A log of the last 64 debug messages is stored in EC 9010 AdeptGEM User s amp Reference Guide Rev P1 27 Chapter 3 Additional GEM Capabilities GEM Requirements These GEM requirements are specified in Section 4 1 4 of SEMI E30 95 1 The communication state model is fully implemented as described above 2 The EstablishCommunicationsTimeout equipment constant is stored as ECID 9100 in the GEM Variables database 3 3 Dynamic Event Report Configuration SEMI E30 95 4 2 1 2 Sections Database Usage alee GEM Variable Event GEM Variable GEM Variable Documentation Any Collection Event or VID records created must be documented for the host Requirements
165. nt ene ene 38 GEM Requirements ccc ccc ence need eee ene e beeen eens 39 Equipment Process Program Requests 0 ccccee cece neces eens 40 Operations With Standard Disk Files 0 c cece cece eee eee eens 41 Equipment Terminal Services c ccc cece eee eee en teenie enes 41 GEM Requirements 0 ccc cece cece ene ene ene ene ene ene ene ens 42 CIOCK ees ech edicts corey ties a E E beer categ atten ahs 42 GEM Requirement ccc cece cece een ene ene ene ene e nett ees 43 Control Host Initiated 00 000 c cece ccc eee e ences eee ee eenneenees 44 GEM Requirements cece cece eee eee e nee nee een eee ens 46 SECS I and HSMS Details 0 00000 0c cece cece cece ence nee 47 IMMOGUGTION 220522225 de halter doses nose EET 47 Additional Documentation 00 00 0 0c ccc cece ence neces 47 SECS DOIGIIS ieii renion in eeen aE E ution AEE ER a ede 47 SECS I Parameters l a cence ence nen e bebe nes 48 Other SECS I Requirements 000 cc ccc ec ec c cece eee eee e ees 48 SMS Details erei cx de cinccinarnsmensinrariondanaavieen saws BENO EEEa ESOR iA 49 Other HSMS Requirements 00 0 ccc e ccc e cece cece eee scene ees 50 SECS II Messages 0 0 cece e eect ence tec ete eeeeee tensa eeneaes 53 General Information occ een cent ee enn e ene eee 53 Manufact
166. nted as specified in the SEMI standards It allows the host to request that specific reports be generated and transmitted It is largely transparent to the local operator and equipment The only requirement is that the operator define the reports with Report record types page 112 and the corresponding VIDs in the GEM Variables database page 87 3 5 Trace Data Collection SEMI E30 95 4 2 3 Sections Database GEM Variable Usage Documentation You must document any Status Variable IDs that you create Requirements V Task Usage Limits monitoring trace data collection This capability is implemented as specified in the SEMI standards It allows the host to request the values of defined status variable SVs These requests have a time constant associated with them and are transmitted at intervals specified by the time constant It is largely transparent to the local operator and equipment The only requirement is that the operator define the SVs in the GEM Variables database section 7 1 NOTE As noted in section 4 2 3 4 of SEMI E30 95 there is a potential problem with the message that transmits the SV report The SEMI standard allows only a single block message however the allowed format for SVs can be larger than a single block In order to conform to the standard the host must not request reports that will exceed a single block size In many cases hosts have been designed to ignore this restriction and accept multi block messag
167. o on line If the equipment accepts the host request the new state will be displayed at the bottom of the Control group There are two sub states of the ON LINE state REMOTE and LOCAL When the state is LOCAL the operator still controls the equipment and the host has the following options and prohibitions e The host cannot initiate a process or modify a running process The host cannot modify any EC related to a running process as specified by the Process Related option but can modify ECs while no process is running e The host cannot select processes for execution e The host can request upload and download of process programs e The host can configure alarms event reporting and trace data reporting e The host can request and receive all data reports e The host can perform terminal messages operations When the state is REMOTE the host can operate the equipment to the full extent described in this documentation The equipment can be setup to allow or disallow the following operator actions The recommended setting is in the second column See VIDs 9118 to 9131 for the current setting of these restrictions Recommended in Class of Operations REMOTE Mode Change process related equipment constants NO Change non process related equipment YES constants Initiate process program download YES Select Process Program NO Start Process Program NO Pause Resume Process Program NO Operator Assis
168. oat Chapter 9 Calling Sequence CALL s2 bytes2float string value Function Convert a 4 byte IEFE floating point number represented by a sequence of bytes ina Vt string toa V single precision real value Input Parameter string The string containing the sequence of four bytes that represent an IEEE format floating point number Input Parameter value The single precision real value obtained Details No error checking is performed to ensure the input string is 4 bytes in long File GEMS2 SQU Related Routine s2 bytes2int 186 AdeptGEM User s amp Reference Guide Rev P1 Descriptions of Routines in the AdeptGEM Module s2 bytes2int Calling Sequence CALL s2 bytes2int Sbytes signed value Function Convert a raw sequence of bytes represented as a V string intoa Vt integer value Any number of bytes can be used If the string contains more than one character BIG ENDIAN is used i e the most significant byte is processed first Input Parameters bytes The byte s to be converted signed TRUE if the byte sequence is to be considered a signed integer instead of an unsigned integer Output Parameter value The resulting integer value Details This routine is similar to the V function INTB However this routine will process a string of any length and will convert unsigned as well as signed integers File GEMS2 SQU Related Routine s2 bytes2float AdeptGEM User s amp Reference Guide Rev
169. om equipment constant 9301 see ECID 9102 Exceptions The host sends a zero length list to the equipment S1 F3 Select Equipment Status Request SSR S H gt E reply Description This is a request to the equipment to report selected values of its status Structure Ln 1 lt SVID1 gt unsigned 1 2 4 or 8 byte integer data 1 32767 n lt SVIDn gt The obsolete structure lt SVID1 SVIDn gt is also supported AdeptGEM User s amp Reference Guide Rev P1 57 Chapter 5 SECS II Messages See Table 7 2 for the predefined SVIDs Exceptions A zero length list means report all SVIDs S1 F4 Formatted Status Data FSD M H lt E Description The equipment reports the value of each SVID requested by S1 F3 The host remembers the names of the variables requested Structure L n 1 lt SV1 gt any allowed format n lt SVn gt Exceptions If n 0 no response can be made A zero length returned for SVi means that SVIDi does not exist S1 F11 Status Variable Namelist Request SVNR S H gt E reply Description A request to the equipment to identify certain status variables Structure L n 1 lt SVID1 gt unsigned 1 2 4 or 8 byte integer data 1 32767 n lt SVIDn gt Exceptions A zero length list means report all SVIDs S1 F12 Status Variable Namelist reply SVNRR M H lt E Description The equipment reports to the host the name and units of the requested SVs Structure L n
170. one parameter is invalid i e at least one argstat lt gt 0 Details With a SECS II S2F41 message the host can request any of the following 1 Execute one of these standard commands PANIC no arguments SPEED VALUE speed_value TASK task_number 2 Spawna V routine If a V routine is to be spawned it is expected to have the same parameter list as this routine See gm user rc on page 173 for more information 3 Spawn an AIM sequence AdeptGEM User s amp Reference Guide Rev P1 161 gm remote cmd Chapter 9 If an AIM sequence is spawned its argument values but not their names are passed in ai ctl gm rc args i i 0 1 2 num 1 The global variable gm rc args can be initialized or changed by custom code for example in the routine gm user init If it is found undefined it is set to 350 NOTE The name parameter is checked in the order above Thus there must not be any V routine with the same name as or sequence spawn that might be requested File GEMRCPPM SQU Related Routines gm user rc user remote cmd 162 AdeptGEM User s amp Reference Guide Rev P1 Descriptions of Routines in the AdeptGEM Module gm send hostmsg Calling Sequence CALL gm send hostmsg Stext start num status Function Queue a message to be sent to the host The SECS II message used is S10F1 which allows for up to 237 characters Usage Considerations The host must be communicating and on line Input Par
171. ons A zero length list or item means report all ECVs according to a predefined order 60 AdeptGEM User s amp Reference Guide Rev P1 S2 F14 2 F15 S2 F16 SHEN S2 F18 SECS II Messages Equipment Constant Data ECD M H lt E Description Data response to 2 F13 in the order requested Structure Ln 1 lt ECV1 gt any allowed data type n lt ECVn gt New Equipment Constant Send ECS S H gt E reply Description Change one or more equipment constants Structure Ln 1 L 2 1 lt ECID1 gt unsigned 1 2 4 or 8 byte integer data 1 32767 2 lt ECV1 gt any allowed data type n L 2 1 lt ECIDn gt 2 lt ECVn gt New Equipment Constant Acknowledge ECA S H lt E Description Acknowledge or error If any non zero value is returned no ECIDs will be changed Structure lt EAC gt 1 byte binary 0 OK 1 denied at least one constant does not exist 2 denied busy 3 denied at least one constant is out of range or conversion was not successful 4 denied at least one constant cannot be changed by the host Date and Time Request DTR S H lt gt E reply Description Request the time as maintained by the equipment Structure Header only Data and Time Data DTD S H lt gt E Description Actual time data Structure lt TIME gt 12 character ASCII in yymmddhhmmss format Exceptions A zero length item means the time is undefined AdeptGEM User
172. ood by the Equipment The SECS II messages listed in Table 5 1 are understood by the AdeptGEM system All other SECS II messages except SxF0 messages which are ignored result in an S9Fx response message Table 5 1 SECS II Messages Understood by the Equipment Message Received Response Message Sent S1F1 S1F2 S1F3 S1F4 S1F11 S1F12 S1F13 S1F14 S1F15 S1F16 S1F17 S1F18 S2F13 S2F14 S2F15 S2F16 S2F17 S2F18 S2F23 S2F24 S2F29 S2F30 S2F31 S2F32 S2F33 S2F34 S2F35 S2F36 S2F37 S2F38 54 AdeptGEM User s amp Reference Guide Rev P1 Table 5 1 SECS II Messages Understood by the Equipment Continued Message Received Response Message Sent S2F39 S2F40 S2F41 S2F42 S2F45 S2F46 S2F47 S2F48 S5F3 S5F4 S5F5 S5F6 S5F7 S5F8 S6F15 S6F16 S6F17 S6F18 S6F19 S6F20 S6F21 S6F22 S7F1 S7F2 S7F3 S7F4 S7F5 S7F6 S7F17 S7F18 S7F19 S7F20 S10F3 S10F4 S10F5 S10F6 S10F9 S10F10 AdeptGEM User s amp Reference Guide Rev P1 SECS I Messages 55 Chapter 5 SECS II Messages Messages Initiated by the Equipment The SECS II messages listed in Table 5 2 are initiated by the AdeptGEM system Table 5 2 SECS II Messages Initiated by the Equipment Message Sent Expected Response Message S1F1 S1F2 S1F13 S1F14 S2
173. ote cmd whenever an S2 F41 message is received from the host The routine can be used to modify the command parameters in preparation for AdeptGEM User s amp Reference Guide Rev P1 173 gm user rc Chapter 9 normal processing in which case the status parameter should not be modified by this routine Or it can actually perform the requested command in which case the status parameter should be set to zero or a positive value The input parameters for the routine are sent from the host using an S2F41 message in the following format Ti 2 1 USER_CMD name 2 lipti 1 PARAM1_NAME argname 0 2 PARAM1_VALUE arg 0 1 PARAM2_NAME argname 1 2 PARAM2_VALUE arg 1 PARAMn_NAME argname num 1 PARAMn_VALUE arg num 1 L 1 2 NOTE Interpretation of the data within the program is the programmer s responsibility If REMOTE LOCAL mode restrictions are desired within the routine use the global variable gm remote to determine the mode that the system is in WARNING The variable gm remote should only be read and never modi fied in this routine File GEMUSER V2 SQU Related Routines gm remote cmd user remote cmd 174 AdeptGEM User s amp Reference Guide Rev P1 Descriptions of Routines in the AdeptGEM Module gm user reply Calling Sequence CALL gm user reply hd S data instatus bypass Function Handle re
174. ovides a brief description of the SEMI standards associated with GEM and how they relate to AdeptGEM It also provides instructions for installing the AdeptGEM software 1 1 GEM SECS Overview This section provides a brief overview of what the SEMI GEM SECS specification is and how the Adept AIM systems supports this specification What Is GEM SECS GEM SECS is a specification developed by the Semiconductor Equipment and Materials International SEMI trade association This standard details the requirements for communication in a GEM SECS environment The following specifications are relevant to the AdeptGEM SECS software SEMI E4 91 SEMI Equipment Communications Standard 1 Message Transfer SECS I SEMI E37 95 High Speed SECS Message Services HSMS Generic Services SEMI E37 1 95 High Speed SECS Message Services Single Session Mode HSMS SS SEMI E5 95 SEMI Equipment Communications Standard 2 Message Content SECS II SEMI E30 95 Generic Model for Communications and Control of SEMI Equipment GEM These standards can be obtained from SEMI International at 415 964 5111 In general the Adept implementation hides the majority of details of message structuring and packeting from the user However you will not be able to effectively integrate equipment into a GEM SECS environment if you are not familiar with these standards Throughout this manual we assume that you have this basic familiarity The capabilities provided in a GEM
175. pecify the Access Control Enter a single digit 0 4 in this field to specify the user access level required to change the record 10 Enter the Minimum Maximum and Typical values as appropriate The value of this record represents a state ID from the state model record type This ID represents the current state of a state model The value 0 indicates that a state has not been defined for this state model See page 113 for details on the State record type Predefined Status Variables Equipment Constants and Data Values The GEM Variables database contains a number of predefined records that support many of the features and requirements of the GEM specification The following table describes these predefined records The Reference Name is the name used in the SEMI standards The Description gives a brief description of the variable see the database records for additional details Note variables of type ASCII are string values in the GEM Variables database Table 7 2 Predefined SVs ECs and DVVALs ID Reference Name Class Type Description 9000 alarmsenabled SV List of unsigned List of ALIDs with the enabled 2 byte integers option set 9001 alarmsset SV List of unsigned List of ALIDs that are set regardless 2 byte integers of the setting of the enabled option 9002 clock SV ASCII yymmddhhmmsscc system time 9003 controlstate SV Unsigned 1 byte Coded value repre
176. plies for host messages that were frozen queued by the equipment and later sent to the host Input Parameters hd The header information for the primary message that was sent out thus the function number of the reply will be one more than hd uc hd function datal The actual body of the message received from the host if instatus is 0 instatus The status received from gm usersend This is normally 0 for success but in case of an error it will have a special or V error code This subroutine may be interested if an attempt to send a primary message has failed and with this parameter it can take appropriate action bypass Always set to FALSE Output Parameters hd May be modified by this routine data May be modified by this routine instatus May be modified by this routine bypass Boolean set to TRUE by this routine to completely bypass the normal processing of this message Details Since the calling program doesn t care about the reply if it did it would have waited for the reply rather than just frozen it and moved on we handle the reply here In most cases this just involves making sure the host sent back an acknowledge code as expected and we make note what happened in the debug log In some cases further action is needed such as S1F2 which implies a successful on line to prevent stalling S1F1 is queued rather than sent and waited for You can modify this routine to change the responses to
177. progchange Process Program Management AIM sequence created deleted or modified 9301 procprogverval Process Program Management Program verified and validated 9400 procprogselect AIM sequence selected for execution 9500 messagerecog Terminal Services Message acknowledged by operator AdeptGEM User s amp Reference Guide Rev P1 111 Chapter 7 The AdeptGEM Databases The Report Record Type The Report record type stores the VIDs from the GEM Variables database that make up a given report These report definitions are used in the report capabilities such as variable data collection To open a Report record Edit GEM Items Seek Edit double click record name GEM Items Global Of x Go Seek Edit Help 100 report ID 100 Date 31 Oct 96 14 25 RAS BEES Description rnis is a sample report Record Type Alarm Collection Event Report Oo State Variable IDs 9001 Ip 9002 10 9051 11 12 Figure 7 14 GEM Items Database Report Record This example record shows a report record made up of three Variable IDs 9000 9002 and 9151 These Variable IDs are defined in the GEM Variables database When a report needs to be generated AdeptGEM will search the appropriate database and automatically build a report in the proper SECS II message format for delivery to the host To define a new Report record Create a new GEM Items
178. ptGEM User s amp Reference Guide Rev P1 155 gm new head Chapter 9 Calling Sequence CALL gm new head stream function hd Function Create the SECS II message header necessary for gm usersend and gm freeze msg An array is created with the following elements filled uc hd stream uc hd function uc hd sys 1 uc hd sys 2 uc hd sys 3 and uc hd sys 4 Input Parameters stream The stream number to put in the header function The function number to put in the header Output Parameter hd The created message header adequate for passing to the routine gm usersend Details The stream and function elements are filled with the numbers specified as input arguments the system bytes are filled with the next available message ID number and the current task number and the global message ID number variable is incremented thus fulfilling the uniqueness requirement of system bytes in SECS II messages as long as this subroutine is used consistently NOTE This routine should not be used for replies to host primary messages File GEMENG SQU Related Routines gm freeze msg gm usersend 156 AdeptGEM User s amp Reference Guide Rev P1 Descriptions of Routines in the AdeptGEM Module gm pack mdin Calling Sequence CALL gm pack mdin Sdata arrow Function Pack the SECS II data items lt MDLN gt and lt SOFTREV gt as a two element list into a stream Input Parameters data The datal array to receive t
179. put Parameters stream The input stream of bytes arrow The character position in the stream to read from next pos The element number of the output array to receive the first real value Subsequent values are stored in higher numbered elements Output Parameters arrow The location of the next item in the stream if any pos One greater than the highest array element of val used This value can help indicate how many real values were actually extracted val The real value s obtained from the data item status Status indicator 0 Real value extraction was successful 1 One or more items couldn t be converted 2 There is an error in the stream Details The data item examined is at the byte position indicated by arrow in the stream of bytes stream After this function is called arrow is incremented to the next item unless there is an error in the stream All conversions are performed automatically this function will examine the item and convert to one or more real values from whatever SECS II data type was found unsigned 4 byte integer 4 byte floating point ASCII etc The first real value is stored in val pos and pos is incremented for subsequent values if any This function has the ability to collapse a complicated nested list structure into a linear array This can be a tremendous advantage if the structure is in a predefined standard format On the other hand the structure is lost if it is not already known
180. r s amp Reference Guide Rev P1 107 Chapter 7 The AdeptGEM Databases The Alarm Record Type The Alarm records define the alarms their enabled status and other parameters These records are used to maintain the alarm monitoring that has been requested by the host To open an Alarm record Edit GEM Items Seek Edit double click record name GEM Items Global Ex Go Seek Edit Help IECERI sample alarm Alarm ID 1 Date 29 Apr 97 12 20 N Description Tris is a sample Alarm record Record Type Alarm Collection Event Report Oo State larm Is Enabled M atarm Is Set I read only Alarm Data Alarm Text This is the alarm text for the operator Event When Set alal Event When Cleared 12 Action Sequence Alarm Category 1 proxce Alarm to Happen Now Figure 7 12 GEM Items Database Alarm Record The Alarm ID for this example record is 1 The text This is the alarm text for the operator will be used in all messages requiring alarm text It shows the events that will be generated when the alarm is set or cleared The enabled flag can be set by the host using the appropriate SECS II message You can also specify an AIM sequence to run when the alarm is set To define a new Alarm record Create a new GEM Items record Enter a name for the new record item Enter a unique Alarm ID number item Enter an optional des
181. ransitions in the equipment processing state model Table 2 2 Equipment Processing State Model Transitions Current State Trigger New State Action Comments 1 INIT AIM started IDLE None This state is not recorded since that transition takes place before the system can be in the communicating state 2 IDLE Sequence is RUNNING None started 3 RUNNING A sequence is IDLE None STOPPED 4 RUNNING A PAUSE PAUSED None instruction is processed 5 PAUSED A PROCEED or RUNNING None An uncleared error will RETRY cause an immediate return instruction is to PAUSED pressed 6 PAUSED A TEACH TEACHING None button is pressed 7 TEACHING The TEACH PAUSED None routine is completed 8 PAUSED A sequence is IDLE None STOPPED 2 4 Host Initiated S1 F13 F14 Scenario SEMI E30 95 4 1 5 1 Sections Database None Usage Documentation This manual provides all required documentation Requirements This is a SECS II level establish communications capability in which the host attempts to establish communications with the equipment These attempts to establish communication are handled automatically by AdeptGEM and the results are displayed on the control panel see Figure 3 1 20 AdeptGEM User s amp Reference Guide Rev P1 Event Notification 2 5 Event Notification SEMI E30 95 4 2 1 2 Sections Database GEM Variable Usage Collect eos Report gt GEM Variable
182. re of the GEM Variables Database Continued Field Number Type Variable Field Name Size Array Description 7 GEM Data Class byte Specifies the GEM data type See Table gv f gemclass 1 8 3 8 Host Data Type byte Data type used to send a value to host gv f hostdtype 1 9 Process Related Boolean Flag TRUE if the variable is related to gv f prces rel 1 process activity 10 Access Control byte The units digit is compared to the gv f acces ctl 1 current user access level to determine if changes are permitted the tens digit controls access by the host 11 Value real Current value of integer real constant gv f varbl val 4 GEM V variable signal number ai ctl index 12 Minimum Value real Minimum real value gv f min value 4 13 Maximum Value real Maximum real value gv f max value 4 14 Typical Value real Typical real value gv f typ value 4 15 String Value string The current value of the string variable gv f strng val 72 16 Units Ident string Numeric variable SECS II units gvf unit idnt Typical String 60 identifier for the units of the variable gv f typ stmg String variable Typical value for string variable 17 Limit Monitor integer ID of the collection event associated gv f lmt event Event 2 with limit monitoring of this variable Notes e The database must be kept sorted e The Variable ID values must be unique throughout the database e All code that accesses the database mus
183. rements ccc ccc cece eee ene ene ene cnet een eens 30 Status Data Collection oi oiccccctcaracnsectigdareabuecadandunes telanied Momence 31 GEM Requirements ccc ccc ccc ene ene ene ene ene ene e nee ens 31 Alarm Management 0 ccc cece ene teen eden teen eee eaeeas 32 Automatic Alarm Detection ccc ccc cence en ene ene ene ene ens 33 GEM Requirement ccc cece ccc eee e need cent ene ene ees 33 Remote Control cc 33 Status of the AdeptGEM System aonana nennen ennen ee ene eens 34 Remote Control and AIM Control Sequences 6 ce eee 34 Host Remote Commands cece cence eee e need 34 Host Control of Equipment ccc cece cence ete ee ene ene enn e es 35 GEM Requirements ccc cece cece nee nee nee een tent ene eas 35 Control State Model Restrictions cece cece cece cece ene eee eens 35 Equipment COnstants prsesia cease sas eonsaeacinaduaacuondaty dealieuce 36 GEM Requirements ccc ccc cece eee ene ene ene ene e een eens 36 Process Program Management 0 cece eee eee e nett ene ene enes 38 What is a Process Program cc ccc ece eee teen n tenet ene enes 38 Process Program Directory 0 0c cece cece eee ene e nen ees 38 Process Program Operations cece cece ne
184. ring Variable Masini Values Input Signal V Variable Output Signal ai ctl Value Numeric Function String Function Auto Alarm Detection Figure 7 9 GEM Variables Database Data Value To define a new status variable that uses a numeric or string function Create a new GEM Variables record Enter a name for the new record item Assign a Variable ID item See Variable IDs VIDs on page 87 for more details Enter a description of this record item Select Status Variable as the GEM Variable Class item Select Numeric Function or String Function as the Variable Type item NA oO FP SP NN PR If a numeric variable is being defined enter a units identifier item that will be sent to the host when this Variable ID is reported The units identifier should correspond to the identifi ers described in Section 9 Units of Measure in SEMI E5 95 Refer to item for the following steps 8 Specify a Host Data Type See Table 7 1 for the list of data types 100 AdeptGEM User s amp Reference Guide Rev P1 The GEM Variables Database 9 Specify the Access Control Enter a single digit 0 4 in this field to specify the user access level required to change the record Insert a 1 no modification allowed or 0 modification allowed in front of the access digit to control host modification of the EC 10 Enter the Minimum Maximum and Typical values as appropriate In addit
185. rom the host You can give this routine any valid V program name The name you choose for this routine must match the name of a remote command that the host will send in an 2 F41 message Usage Considerations The parameter list for this routine must match the number and types of parameters shown above although you can use any variable names you wish This routine has the same parameter list as the routine gm user rc which is provided in the file GEMUSER V2 Thus you can use a copy of that routine as a starting point for your user written routine NOTE The routine gm user rc must not be deleted from system memory even if it is not modified You can create as many different remote command routines of this type as needed Details name Name of the remote command to be processed by this routine The value of this parameter will always be the same as the actual name of this routine argname Argument names elements 0 to num 1 0 Name of argument 1 1 Name of argument 2 arg Argument values elements 0 to num 1 0 Value of argument 1 1 Value of argument 2 num Number of elements in argname and arg Output Parameter argstat Element N reports the status of input parameters argname N and arg N as follows 0 Both parameters are okay 1 One or both parameters does not exist 2 One or both parameters has an illegal value status Completion status of the request as follows 0 Okay 1
186. rt GEM Variable Documentation None Requirements Communications are established in accordance with the GEM Communications State model The GEM Control Panel shown below shows buttons and indicators that implement the Communications State Model To display the GEM Control Panel Show GEM Control Panel 26 AdeptGEM User s amp Reference Guide Rev P1 Establish Communications GEM Control Panel Miel E3 7 Communication m Conteo Enable Disable Local Remote Not Communicating Equipment Off Line Equipment Terminal Services m Acknowledge m Send Message m Clear Alarm Figure 3 1 GEM Control Panel Establish Communication Options Selecting Enabled will start the scenario that attempts to establish communication with the host If the attempt is successful the new communicating state will be shown at the bottom of the Communication group Selecting Disabled will start the scenario that attempts to halt communication with the host If the attempt is successful the new communicating state will be shown at the bottom of the Communication group Before communication can be successfully enabled the communication channel must be properly installed and configured and the host must be ready to establish communications All the configuration options for the serial or ethernet channel as well as the GEM parameters are set in the GEM Variables database The equipme
187. rylimit EC Unsigned 1 byte Number of retries for failed block integer transmission 9116 duplblockdetect EC Boolean TRUE enable duplicate block detection 9117 convtimeout EC Unsigned 2 byte Conversation timeout value integer detects enquire grant failures 9118 remconfig9118 EC Boolean TRUE allow operator to change process related equipment constants in Remote state 9119 remconfig9119 EC Boolean TRUE allow operator to change non process related equipment constants in Remote state 9120 remconfig9120 EC Boolean TRUE allow operator to initiate process program download in Remote state 9121 remconfig9121 EC Boolean TRUE allow operator to select process program in Remote state 9122 remconfig9122 EC Boolean TRUE allow operator to start process program in Remote state 9123 remconfig9123 EC Boolean TRUE allow operator to pause proceed process program in Remote state 104 AdeptGEM User s amp Reference Guide Rev P1 Table 7 2 Predefined SVs ECs and DVVALs Continued The GEM Variables Database ID Reference Name Class Type Description 9124 remconfig9124 EC Boolean TRUE allow operator assist in Remote state 9125 remconfig9125 EC Boolean TRUE allow operator to initiate material movement in Remote state reserved for future use 9126 remconfig9126 EC Boolean TRUE allow operator to access 3 menu items attached to a 9127
188. s C cc name 115 118 cc page name 115 118 cc update 115 118 G gemdebugmode 152 gm comm 34 gm f al action 120 gm f al categor 120 gm f al clrevnt 120 gm f al set 120 gm f al setevnt 120 gm f al text 119 gm f data ids 121 gm f desc 115 118 gm f enabled 120 gm f item id 119 120 gm f menu 115 118 gm f rec type 115 118 gm f spawn 119 121 gm f stt actalm 122 gm f stt actce 122 gm f stt actval 122 gm f stt actvar 122 gm f stt varbl 122 gm online 34 gm rec ala 119 gm rec col 119 gm rec num 115 gm rec rep 119 gm rec sta 119 gm rec str 115 gm remote 34 gm temp log2siz 153 gv cls datval 117 gv cls eqpcon 117 gv cls statev 117 gv cls sttvar 117 gv f acces ctl 116 gv f gemclass 116 gv f hostdtype 116 gv f lmt event 116 gv f max value 116 gv f min value 116 gv f prces rel 116 gv f strng val 116 gv f typ strng 116 gv f typ value 116 gv f unit idnt 116 gv f varblid 115 gv f varbl type 115 gv f varbl val 116 gv typ ctlv 117 gv typ gemv 117 gv typ isig 117 gv typ numv 117 gv typ osig 117 gv typ stre 117 gv typ strv 117 gv typ vpls 117 121 AdeptGEM User s amp Reference Guide Rev P1 221 Adept User s Manual Comment Form We have provided this form to allow you to make comments about this manual to point out any mistakes you may find or to offer suggestions about information you want to see added to the manual We review and revise user s manuals on a regular basis and any comments or feedback yo
189. s Stream 5 Exception Reporting This stream contains messages regarding digital and analog equipment alarms The alarms are generated by the equipment in response to changing conditions detected by the equipment S5 FO Abort Transaction S5F1 S H lt gt E Description Used in lieu of an expected reply to abort a transaction Function 0 is defined in every stream and has the same meaning in every stream S5 F1 Alarm Report Send ARS S H lt E reply Description Reports a change in or presence of an alarm condition One message will be issued when the alarm is set and one message will be issued when the alarm is cleared Irrecoverable errors and attention flags may not have a corresponding clear message Structure L 3 1 lt ALCD gt 1 byte binary data bit 8 indicates the state of the alarm bit set 1 means alarm is set bit clear 0 means alarm is clear bits7 1 alarm category not used by the GEM standard but supported by the AdeptGEM system 2 lt ALID gt 2 byte unsigned integer 1 32767 3 lt ALTX gt ASCII data 0 40 characters S5 F2 Alarm Report Acknowledge ARA S H gt E Description Acknowledge or error Structure lt ACKC5 gt 1 byte binary 0 OK 1 error S5 F3 Enable Disable Alarm Send EAS S H gt E reply Description This message will change the state of the enable bit in the equipment The enable bit determines if the alarm will be sent to the host Structure
190. s Related Process Control Setting State Equipment Constant Modification LOCAL Process yy Running No modification is allowed related REMOTE Process gy Running May be operator modified depending on the related setting of the REMOTE mode configuration category This is set in the GEM Variables database LOCAL Process yy Not Modification is allowed related running REMOTE _ Process Not Modification depends on the REMOTE mode related running configuration category setting for non process related variables The equipment must provide a collection event to alert the host whenever an equipment con stant is changed by the operator See the built in collection events listed in Table 7 3 The collection event name is Operator Equipment Constant Change The number is 9200 AdeptGEM User s amp Reference Guide Rev P1 37 Chapter 3 Additional GEM Capabilities 3 11 Process Program Management SEMI E30 95 4 6 Sections Database IGEM Variable Usage Collection _jReport gt GEM Variable GEM Variable Report Documentation Name of program available for uploading Requirements Process program management is performed as specified by the SEMI standards What is a Process Program The SEMI standards define a process program in only a very general manner and this description does not fit a sophisticated multi tasking environment like AIM I
191. s amp Reference Guide Rev P1 61 Chapter 5 SECS II Messages 2 F23 Trace Initialization Send TIS S H gt E reply Description This function provides a way to sample a subset of status variables as a function of time Structure L 5 1 lt TRID gt unsigned 1 2 4 or 8 byte integer data 0 65535 2 lt DSPER gt 6 byte ASCII in format hhmmss 3 lt TOTSMP gt unsigned 1 2 4 or 8 byte integer data 0 65535 4 lt REPGSZ gt unsigned 1 2 4 or 8 byte integer data 1 65535 5 Ln 1 lt SVID1 gt unsigned 1 2 4 or 8 byte integer data 1 32767 n lt SVIDn gt The following obsolete structure is also supported 1 lt TRID gt unsigned 1 2 4 or 8 byte integer data 2 lt DSPER gt 6 byte ASCII in format hhmmss 3 lt TOTSMP gt unsigned 1 2 4 or 8 byte integer data 4 lt REPGSZ gt unsigned 1 2 4 or 8 byte integer data 5 lt SVID1 gt lt SVIDn gt S2 F24 Trace Initialization Acknowledge TIA S H lt E Description Acknowledge or error Structure lt TIAACK gt 1 byte binary 1 OK 1 too many SVIDs 2 no more traces allowed 3 invalid period S2 F29 Equipment Constant Namelist Request ECNR S H gt E reply Description This function allows the host to retrieve basic information about equipment constants that are available in the equipment Structure L n 1 lt ECID1 gt unsigned 1 2 4 or 8 byte integer data 1 32767 n lt
192. s monitoring 105 Terminal display 80 multi block 80 multi block acknowledge 81 single 80 single acknowledge 80 request 80 acknowledge 80 TEXT 80 Text displaying on equipment terminal 80 sending to host 80 TID 80 Timeout message 79 T1 48 T2 48 T3 48 T4 48 Trace data acknowledge 72 collection 29 36 41 send 72 initialization acknowledge 62 send 62 Transaction timer time out 79 transitiontype 106 Transmit program directory 78 U Unrecognized deviceID 78 device message 78 function message 79 function type 79 stream message 78 stream type 78 Upload 38 Uploading a program 77 User defined SOFTREV 22 userdefsoftrev 106 usersoftrev 103 V V global variables 34 Variable data collection 29 30 data items 23 IDs VIDs 87 GEM Variables database 87 restrictions 87 limit attribute acknowledge 68 request 68 send 69 W What is a process program 38 What Is GEM SECS 11 AdeptGEM User s amp Reference Guide Rev P1 217 Index of Programs and Statements D DISABLE_COMM_ 83 disable_comm 125 G GEM Statements 83 GENERATE_ALARM 83 generate_alarm 126 GENERATE_EVENT 83 generate_event 127 gm alarm 128 gm com test 129 gm db names 121 gm ed alarm 130 gm ed event 131 gm eps get 132 gm estcom 133 gm event 134 gm exist vid 135 gm freeze mse 136 gm get ainfo 137 gm get alarm 138 gm get clock 139 gm get event 140 gm get report 141 gm get sinfo 142 gm get state 14
193. sage Structure Ls 2 1 lt DATAID gt unsigned 1 2 4 or 8 byte integer data 2 lt DATALENGTH gt unsigned 1 2 4 or 8 byte integer data 255 65 535 NOTE Messages are limited to 64KB or less according to ECID 9154 AdeptGEM User s amp Reference Guide Rev P1 65 Chapter 5 SECS II Messages 2 F40 Multi block Grant DMBG S H lt E Description Grant permission to send multi block message Structure lt GRANT gt 1 byte binary 0 permission granted 2 buffer size not large enough to handle message S2 F41 Host Command Send HCS S H gt E reply Description Host requests the Equipment perform specified remote command with the associated parameters See section 3 9 on page 33 for information on how the equipment interprets remote commands Structure L 2 1 lt RCMD gt command name ASCII data 2 L n number of parameters 1 L 2 1 lt CPNAME1 gt ASCII data 2 lt CPVAL1 gt ASCII data n L 2 1 lt CPNAMFn gt ASCII data 2 lt CPVALn gt any allowed data type S2 F42 Host Command Acknowledge HCA S H lt E Description Acknowledge or error response to host command request If the host command request causes an AIM control sequence to be executed see section 3 9 on page 33 the response code in this message will be 4 However no event will be generated automatically at the completion of the control sequence only at the completion of any non control sequence that
194. senting the integer current Control state model 0 Communication disabled 1 Equipment offline 2 Attempt on line 3 Host offline 4 On line local 5 On line remote 9004 eventsenabled SV List of unsigned List of CEIDs with the event enabled 2 byte integers option set 9005 ppexecname SV ASCII String that represents the currently selected AIM sequence process program 102 AdeptGEM User s amp Reference Guide Rev P1 Table 7 2 Predefined SVs ECs and DVVALs Continued The GEM Variables Database ID Reference Name Class Type Description 9006 prevprocstate SV Unsigned 1 byte Coded value representing the task 0 integer previous equipment process state see section 2 3 9007 processstate SV Unsigned 1 byte Coded value representing the task 0 integer current equipment process state see section 2 3 9008 commstat SV Unsigned 2 byte An array of statistics for SECS I integers HSMS SS The array will be empty if communication is not enabled 9009 remote SV Boolean True Control state is remote False Equipment is in local mode 9010 recent debuglog SV ASCII Holds the last 64 entries in the debug log ECID 9105 must have bit 4 set 9021 ppstask1 SV Unsigned 1 byte Coded value representing the to pestask1 integer previous equipment process states 9074 for tasks 1 to 27 see section 2 3 ppstask27 pestask27 9100 estcommtimeout EC Unsigne
195. sfer of a process program or disk file from the equipment to the host See section 3 11 on page 38 for information on how the equipment interprets lt PPID gt Structure lt PPID gt ASCII data 1 15 characters S7 F6 Process Program Data PPD M H lt E Description This message is used to transfer the program or file requested by S7 F5 Structure L 2 1 lt PPID gt ASCII data 1 15 characters 2 lt PPBODY gt ASCII data Exceptions A zero length list means request denied S7 F17 Delete Program Send S H gt E reply Description This message is used by the host to request the equipment to delete a process file from disk See section 3 11 on page 38 for information on how the equipment interprets lt PPID gt Structure L n number of programs to be deleted 1 lt PPID1 gt ASCII data 1 15 characters n lt PPIDn gt Exceptions A zero length list means delete all the process programs In that case the AdeptGEM system will delete all the resource modules in the directory specified by ECID 9302 S7 F18 Delete Process Program Acknowledge DPA S H lt E Description Acknowledge or error Structure lt ACKC7 gt 1 byte binary 0 accepted 1 permission not granted 2 length error 4 lt PPID gt not found AdeptGEM User s amp Reference Guide Rev P1 77 Chapter 5 SECS II Messages S7 F19 Current EPPD Request RER S H gt E reply Description This message is used to req
196. stream represented by stream and arrow Input Parameters value The real value to be packed type The SECS II data type to use to represent the value If bit 7 mask 100 is set then a list of one item is packed instead of a single non list item see Details stream The stream of bytes to receive the data item arrow The byte position in the stream to start writing data to The first byte in the stream is number 1 Output Parameters stream The modified stream of bytes arrow The byte position in the stream just following the last byte packed Details The arrow input parameter represents the character position that data should be written to in the stream and it is automatically incremented by the number of bytes packed Data formatting is automatic for these supported SEMI data types 10 11 20 31 32 34 44 51 52 and 54 Data types 21 30 40 and 50 are not supported No error results if one of the unsupported data types is specified but data type 44 is used by default When data type 10 is used the value is represented by eight bits When data type 11 is used any nonzero value is considered TRUE When a numeric value is packed i e for all the data types other than 11 and 20 if the value to be packed exceeds the possible range of values for the data type the routine uses a different data type that can accommodate the value The data value can be packed either as a simp
197. t YES 1 Note that equipment off line does not physically break the communication link with the host The host can still transmit messages and the equipment will respond with the appropriate message indicating that communication is disabled AdeptGEM User s amp Reference Guide Rev P1 45 Chapter 3 Additional GEM Capabilities Recommended in Class of Operations REMOTE Mode Material Movement to from equipment NA Equipment specific commands NA GEM Requirements These GEM requirements are specified in Section 4 12 4 of SEMI E30 95 1 46 The default control state entered on system initialization can be configured in the GEM Vari ables database ECID 9103 The state activated when an attempt to go ON LINE fails can be configured in the GEM Vari ables database ECID 9104 The ON LINE OFF LINE radio buttons on the GEM Control Panel shown in Figure 3 3 mimic a momentary switch These buttons will serve to transition between online and offline The ON LINE REMOTE LOCAL switches are radio buttons on the GEM Control Panel shown in Figure 3 3 The control state is displayed in a permanent information area of the GEM Control Panel shown in Figure 3 3 The status variable that maintains the status of the control state model is stored in a record in the GEM Variables database SVID 9003 The operator command issued event is stored in a record in the GEM Variables database SVID 9004 AdeptGEM Us
198. t consider the record type 116 AdeptGEM User s amp Reference Guide Rev P1 Table 8 2 Values For Variable Type Field Structure of the GEM Variables Database Name Value Description gv typ isig 1 Input signal SV gv typ osig 2 Output signal SV gv typ numv 4 Numeric variable SV EC gv typ vpls 5 V variable SV gv typ ctlv 6 ai ctl value SV gv typ numf 51 Numeric function SV DVVAL gv typ strv 100 String variable SV EC gv typ strf 101 String function SV DVVAL A numeric variable can also be a State variable Table 8 3 Values For GEM Data Class Field Name Value Description gv cls sttvar 1 Data class for Status Variable gv cls eqpcon 2 Data class for Equipment Constant gv cls datval 3 Data class for Data Value gv cls statev 4 Data class for State Variable code Value for data class must be a bit number in the mask used by the AdeptGEM User s amp Reference Guide Rev P1 117 Chapter 8 The AdeptGEM Database Structures 8 2 Structure of the GEM Items Database Fields 1 through 4 are common to all record type definitions within the Items database Refer to the specific record type for fields 5 through 15 Table 8 4 Structure of the GEM Items Database Field Number Type Variable Field Name Size Array Description 0 Name name Nam
199. tails File GEMDBASE SQU Related Routines gm alarm gm ed alarm gm get alarm AdeptGEM User s amp Reference Guide Rev P1 137 gm get alarm Chapter 9 Calling Sequence CALL gm get alarm alid alcd Saltx enabled status Function Access the Alarm record in the GEM Items database to retrieve information about an alarm a brief description text whether the reporting of the alarm to the host is enabled or not and whether the alarm is set or not Input Parameter alid The identification number for the desired alarm ALID Output Parameters alcd Alarm code byte ALCD Bit8 mask H80 Setif alarm is set Bit 7 1 mask H7F Alarm category NOTE The GEM standard does not use the alarm category which is supported by the SECS II standard The alarm category is supported by the AdeptGEM system for situations for which it is desirable to categorize alarms altx The alarm text string ALTX 40 characters maximum enabled TRUE if the reporting of the alarm to the host is enabled otherwise FALSE status 0 Success 1 ALID does not exist lt 0 Standard AIM database status return code Details File GEMDBASE SQU Related Routines gm alarm gm ed alarm gm raw alarm gm sr alarm 138 AdeptGEM User s amp Reference Guide Rev P1 Descriptions of Routines in the AdeptGEM Module gm get clock Calling Sequence CALL gm get clock secs ii S clock Function Return the value of the AdeptGEM internal clock Input Paramet
200. ted in AdeptGEM Collection Events All collection events are user defined with a Collection Event record type For user defined state models collection events are triggered by state changes if a collection event has been defined with a State record type For internal state models collection events occur on state changes The collection event IDs are hard coded but the collection records for those IDs can be modified by the user Collection events can also be triggered explicitly by an AIM statement AdeptGEM User s amp Reference Guide Rev P1 23 Chapter 3 Additional GEM Capabilities This chapter details the implemented GEM capabilities that are listed in section 8 2 of SEMI E30 95 Many of the capabilities described in this chapter can be categorized in one of three scenarios 1 3 1 Scenarios that occur asynchronously and that require a primary message to be sent from the equipment Adept system to the host In this case a separate task detects these scenarios for notification to the host Various parameters to support these capabilities are specified in AdeptGEM databases Scenarios that occur synchronously and that require a primary message to be sent from the equipment Adept system to the host AIM statements are provided to implement this sce nario Scenarios that occur at the host level and that require some form of response from the equip ment Adept system These are part of the SECS II implementatio
201. the Address and Port local entity will attempt to connect Required for any Number entity operating in ACTIVE mode Other HSMS Requirements 1 50 The Option Used for Refusing Incoming Connection Requests if the Implementation uses the Passive Mode for TCP IP Connection Establishment Refuse to listen for or accept the connect request No action is taken in the local entity the remote entity s connect procedure will eventually time out The Maximum Message Size that can be Received The size of a message received depends on the size of buffers used The buffer size is configured using equipment constant 9154 in the GEM Variables database The Maximum Expected Size of Messages Sent The maximum expected size of messages sent will be implementation dependent but not greater than 64KB The Maximum Number of Supported Concurrent Open Transactions The maximum number of supported concurrent open transactions is one AdeptGEM User s amp Reference Guide Rev P1 HSMS Details 5 The Number of Device IDs Supported and Their Specific Values The number of device IDs supported is one This ID is configured by equipment constant 9151 6 Whether or Not the Implementation Supports the Normal or the Restricted Procedure for Ter minating Communications The implementation supports the restricted procedure for terminating communications 7 The Setting of the Host vs Equipment Parameter In this product the
202. the GEM Remote Control additional capability Usage Considerations This routine can be used to add or modify processing of remote commands received from the host Unlike the routine user remote cmd which is invoked for only a specific remote command this routine is called for every remote command that is received This routine must not be deleted from memory even if it is not being used for custom processing Input Parameters name Name of the remote command to be processed by this routine argname Argument names elements 0 to num 1 0 Name of argument 1 1 Name of argument 2 arg Argument values elements 0 to num 1 0 Value of argument 1 1 Value of argument 2 num Number of elements in argname and arg status Always initially set to 1 Output Parameters argstat Element N reports the status of the parameters argname N and arg N 0 Both parameters are okay 1 One or both parameters does not exist 2 One or both parameters has an illegal value status Completion status of the request lt 0 Signal the calling routine that it should do its normal processing Okay the command has been performed Command is not known Cannot perform the command right now At least one parameter is invalid at least one argstat N lt gt 0 Command will be performed with completion signaled later by an event 5 Rejected already in desired condition PUNEO Details This routine is called by gm rem
203. then copied to this array at the end of the routine In some situations it might be desirable to have this routine simply modify the received contents of this array in preparation for normal processing by the baseline AdeptGEM system In that case the arrow parameter should return the value 1 and the bypass parameter should be set to FALSE arrow The character position in the datal array that follows the last character of the reply message That is the contents of the data array from this point on will be ignored Note that if the input message is processed while the reply message is being composed you must maintain the reply pointer as a separate local variable until the whole input message has been processed Then you must assign the value of that variable to this parameter bypass Boolean set TRUE by this routine to signal the normal message processing that the message has already been completely processed One of these routines is called for every received host primary message in the corresponding stream N group that is supported by the baseline AdeptGEM system Thus you can add code to these routines to support additional functions or to modify the standard processing of functions that are already supported by the baseline AdeptGEM system NOTE If your custom code completely processes the message i e it performs all the appropriate operations and composes the reply message if any the bypass output parameter must b
204. thought of as four separate databases connected end to end The idea of logical records still applies within each group File GEMDBASE SQU Related Routines gm alarm gm ed alarm gm get alarm gm sr alarm AdeptGEM User s amp Reference Guide Rev P1 159 gm raw event Chapter 9 Calling Sequence CALL gm raw event lrec ceid rptid num ids enabled status Function Access the Collection Event records in the GEM Items database and retrieve information regarding the event in a specified logical record number in the database a list of associated reports links and a flag indicating whether or not reporting of the event to the host is enabled Input Parameter lrec The logical record number for the Collection Event record to retrieve 1 2a Output Parameters ceid The identification number of the collection event found in the database rptid An array containing the RPTIDs starting at element zero num ids The total number of RPTIDs returned in rptid enabled TRUE if reporting is enabled otherwise FALSE status 0 Success 1 Database record does not exist lt 0 Standard AIM database status return code Details The most common use of this subroutine would be to retrieve the first record then the second then the third etc until status returns 1 which would achieve a full traversal of the Event records in the database Within the GEM Items database the record type Alarm Event Report State is used as
205. tion variable 0 if none 1 Collection event 0 if none 2 Alarm to set 0 if none act val The new value for the action variable if appropriate The value of the variable is not changed by this routine status 0 Success 1 Specified State record does not exist in the GEM Items database 2 Specified State record does exist but the associated VID specified in the record does not match the vid input parameter lt 0 Standard AIM database status return code Details File GEMDBASE SQU Related Routines gm eps get gm get state 142 AdeptGEM User s amp Reference Guide Rev P1 Descriptions of Routines in the AdeptGEM Module gm get state Calling Sequence CALL gm get state state vid S state status Function This routine accesses a State record in the GEM Items database to retrieve the name for a state associated with a particular state variable Input Parameters state The identification number for the state of interest vid The identification number of the state variable expected to be associated with the specified state Output Parameters state The name of the state 1 15 characters status 0 Success 1 Specified State record does not exist in the GEM Items database 2 Specified State record does exist but the associated VID specified in the record does not match the vid input parameter lt 0 Standard AIM database status return code Details File GEMDBASE SQU Related Routines gm eps get gm get sinfo Adept
206. tructure of this database is shown in Table 8 2 There are four record types in the GEM Items database the Alarm record type the Collection Event record type the Report record type and the State record type 106 AdeptGEM User s amp Reference Guide Rev P1 The GEM Items Database The GEM Items Menu Page To GEM Items menu page is used to create records that define the GEM alarms collection events reports and states These records are stored in the GEM Items database To create a new GEM Items record Edit GEM Items Edit New Record The opening page is displayed GEH Items Global Figure 7 11 Initial GEM Items Menu Page NOTE The features of the page will change based on the record type selection see item 1 Displays the date and time that the record was created Choose a record type The menu page changes based on the record type chosen Alarm defines the alarms their enabled status and other parameters Collection Event defines the Collection Events that are required by the GEM specification Report stores the record ID numbers from the database and database record types that require information for a given report State stores information on the state models used by GEM This includes both the required state models such as the Control state model and variables for user defined state models Each record type is described in detail in the following sections AdeptGEM Use
207. ture of the Alarm record type File GEMSTMT SQU Statement DB STATGEM DB Related Routines 126 AdeptGEM User s amp Reference Guide Rev P1 Descriptions of Routines in the AdeptGEM Module generate_event Calling Sequence CALL generate_event args error Function Statement execution routine for the GENERATE_EVENT statement It is used to generate a collection event NOTE The statement name is hard coded in the routine gm scr spawn in the file GEMAIM V2 That routine shows only collection events in the scrolling pick list Usage Considerations Runtime Control _ Robot _ Vision Statement Syntax GENERATE_EVENT gemitem Input Parameters args Real array containing the arguments for this statement record numbers or constants The individual elements are described below gemitem args 1 Record number of a record of type Collection Event from the GEM Items database Output Parameters error Real variable that receives a value indicating whether or not the operation was successful and what action should be taken by the calling routine See the standard AIM operator error response code values for details Details This statement sends a collection event to the host When this routine is executing it temporarily locks access to the GEM Items database Refer to page 120 for details on the structure of the Collection Event record type File
208. u send us will be given serious consideration Thank you for your input NAME DATE COMPANY ADDRESS PHONE MANUAL TITLE PART NUMBER and REV level COMMENTS MAIL TO Adept Technology Inc Technical Publications Dept 11133 Kenwood Rd Cincinnati OH 45242 FAX 513 792 0274 AdeptGEMuUser s Guide amp Reference Guide Rev P1 00713 01900 Rev P1
209. uest the current directory of disk files in the directory specified by ECID 9302 Structure None header only S7 F20 Transmit Program Directory M H lt E Description This message is used to transmit the EPPD equipment process program directory See section 3 11 on page 38 for information on how the equipment interprets the EPPD Structure L n number of process files in the directory specified by ECID 9302 1 lt PPID1 gt ASCII data 1 15 characters n lt PPIDn gt Stream 9 System Errors This stream provides a method of informing the host that a message block has been received that cannot be handled or that a time out on a receive timer has occurred S9 FO Abort Transaction S9F0 S H lt gt E Description Used in lieu of an expected reply to abort a transaction Function 0 is defined in every stream and has the same meaning in every stream S9 F1 Unrecognized Device ID UDN S H lt E Description The device ID in the message block header did not correspond to any known device ID in the node detecting the error Structure Return the header block of the message lt MHEAD gt S9 F3 Unrecognized Stream Type USN S H lt E Description The equipment does not recognize the stream type in the message block header Structure Return the header block of the message lt MHEAD gt 78 AdeptGEM User s amp Reference Guide Rev P1 SECS I Messages S9 F5 Unrecognized Function Type UFN S H lt
210. uipment in the host environment The Retry and T4 parameters for example do not have an intrinsic correct value but depend on the acceptable behavior of the entire system All the SECS I parameters are stored as equipment constants in the GEM Variables database see Table 4 1 and Table 7 2 The following table shows the range default and resolution for each parameter T1 T4 values are in seconds Table 4 1 Communication Parameters Parameter ECID Default Min Max Resolution BAUD 9167 9600 110 38400 see FSET instruction DEVID 9151 4660 0 32767 1 T1 9106 0 5 0 1 10 0 016 T2 9107 10 0 2 25 0 016 T3 9108 45 1 120 1 T4 9109 45 1 120 1 RTY 9115 3 0 31 1 MS Defaults to equipment Other SECS I Requirements 1 Duplicate block detection is optional and is set up with equipment constant ID 9116 in the GEM Variables database By default it is enabled Expected delays under normal operating conditions Parameter Definition Delay T1 Inter character time out 10 Baud rate T2 Protocol time out 0 032 Depends on system T3 Reply time out configuration typically 10 30 seconds Depends on system T4 Inter block time out configuration typically 1 2 seconds 48 AdeptGEM User s amp Reference Guide Rev P1 HSMS Details 2 Multi block messages are supported for both sending and receiving 3 The maximum received message size is configurable using E
211. um n lt TEXTn gt S10 F6 Terminal Display Multi Block Acknowledge VMA S H lt E Description Acknowledge or error Structure lt ACKC10 gt 1 byte binary 0 accepted for display 1 message will not be displayed S10 F9 Broadcast BCN S H gt E reply Description This function is generally the same as S10 F3 except that specific TID in each equipment need not be specified Instead the text is directed to each terminal in the equipment when the function is received This function assumes that this feature exists on all equipment Otherwise repeated S10 F3 messages should be used Structure lt TEXT gt S10 F10 Broadcast Acknowledge BCA S H lt E Description Acknowledge or error Structure lt ACKC10 gt 1 byte binary 0 accepted for display 1 message will not be displayed AdeptGEM User s amp Reference Guide Rev P1 81 Chapter 6 AdeptGEM Statements This chapter describes the additional statements that are provided with the AdeptGEM module In addition to new statements there are two existing AIM statements that have been modified IF and WHILE CAUTION AIM 3 0 allows you to create multiple copies of all databases so you can have a copy of data that is specific to a particular module There is also a global copy of all databases if you want data to be shared among multiple modules In the case of AdeptGEM databases the data is global to the entire AIM system and identical data must be shar
212. urer and Product Number 0 00 000 ccc cee e eens 53 General Description of Equipment Function ccecce 53 Intended Function of the Interface 0 06 c cece es 53 Software Revision Code ccc cece cence cece cnet bene eas 53 Changes From Previous Versions 0 0060 0c ccc ccc cee eee 54 Supported Messages 6 enn been bn 54 Messages Understood by the Equipment 0 000085 54 AdeptGEM User s amp Reference Guide Rev P1 Table of Contents Messages Initiated by the Equipment c ccc cece 56 5 3 Message Details ccc nnn sava iranin arin aN 57 Chapter 6 AdeptGEM Statements 0 0 cccc cece cece een e cnet et een ens 83 6 1 GEM Statements ccc ccc nnn nen eaa eea 83 DISABLE COMM ecient o e e EE A ibibama dad O 83 GENERATE_ALARM ooon cece eee e eee eee eben etna e been ens 83 GENERATE EVENT i ec202 cvectaeccsaes novaeesa EE EEEE A i EE iE 83 LUNE CHECK se aei ana de E Ee ATER ERI a ai EN 83 RUN CHECK 2s ci sscneieden tobi oi Etor E E E E EEN 84 SEND_HOST_MSG o n ccc ccc ccc e nen eben eben etna en es 84 SET STATE e e ccd desk dentaussgeas neahteuadead sans A EE a ARa colette 84 Chapter 7 The AdeptGEM Databases ccc cece cece cence eee ee teens 85 7 1 The GEM Variables Database cece cece t ent n ened 86 An Example of SVs
213. utine gm scr spawn in the file GEMAIM V2 That routine shows only string variables in the scrolling pick list Usage Considerations Runtime Control Robot _ Vision Statement Syntax SEND_HOST_MSG gemvariable Input Parameters args Real array containing the arguments for this statement record numbers or constants The individual elements are described below gemvariable args 1 Record number from the GEM Variables database Output Parameters error Real variable that receives a value indicating whether or not the operation was successful and what action should be taken by the calling routine See the standard AIM operator error response code values for details Details This statement sends a text message to the host For the message to actually be sent the state must be Communicating and On Line However no action is taken if there is an error When this routine is executing it temporarily locks access to the GEM Variables database The output GEM variable must have the type string variable File GEMSTMT SQU Statement DB STATGEM DB Related Routines AdeptGEM User s amp Reference Guide Rev P1 205 set_state Chapter 9 Calling Sequence CALL set_state args error Function Statement execution routine for the SET_STATE statement It is used to set the value of a State variable to a State ID NOTE The statement name is hard coded in
214. we will try to abort it This routine is similar to the Enable Disable buttons on the control panels File GEMENG SQU Related Routines gm com test gm freeze msg gm send hostmsg gm usersend AdeptGEM User s amp Reference Guide Rev P1 133 gm event Chapter 9 Calling Sequence CALL gm event ceid force Function Causes a collection event to be sent to the host if appropriate for the specified collection event identification number This subroutine will automatically check to see if the host is online check to see if the collection event is actually enabled fetch and pack the appropriate variables for each report if any etc If a message should be sent it is not sent right away but instead it is frozen queued to be sent later thus allowing the calling program to continue without delay Input Parameter ceid The collection event identification number force Optional Boolean TRUE to cause the event to be sent even if it is not enabled Default is FALSE File GEMENG SQU Related Routines gm ed event gm get event gm raw event 134 AdeptGEM User s amp Reference Guide Rev P1 Descriptions of Routines in the AdeptGEM Module gm exist vid Calling Sequence CALL gm exist vid vid type exist Function Check to see whether a given variable identification number exists Input Parameters vid The identification number to test type Bit mask indicating the type of variable to check for Bit 1 Status v
215. wledge 61 send 61 O Off line acknowledge 59 On line acknowledge 60 data 57 equipment state 44 identification 22 request 57 onlinefailstate 103 Operations with standard disk files 41 P Parameters DEVID 48 Retry 48 T1 48 T2 48 T3 48 T4 48 T5 104 T7 104 T8 104 pestask 103 Physical transmission level 12 PPBODY 76 77 ppchangename 105 ppchangestatus 106 ppexecname 102 PPGNT 76 PPID 76 78 ppmpath 106 ppstask 103 ppvname 106 ppvstatus 106 Predefined collection event records 110 status variables equipment constants and data values 102 prevprocstate 103 Process program acknowledge 77 data 77 directory 38 load grant 76 load inquire 76 management 38 collection events 110 operations 38 request 77 send 76 processstate 103 Program deleting 77 directory requesting 78 download 76 requesting 76 upload 77 R RCMD 66 recent debuglog 103 Record type Alarm 108 Collection Event 109 120 Report 112 121 State 113 121 remconfig 104 REMOTE equipment sub state 44 Remote commands speed 35 control 33 and AIM control sequences 34 control and AIM control sequences 34 entity IP address HSMS parameter 49 remote 103 Report record type 112 121 structure 121 Request OFF LINE 59 ON LINE RONL 60 Retry limit 48 retrylimit 104 Routines descriptions base package 123 RTY 48 RUN_CHECK 84 214 AdeptGEM User s amp Reference Guide Rev P1 Index S S1 FO S1 F1 S1 F11 S1
216. ximum value units The units string for the variable status 0 Success 1 ID does not exist lt 0 Standard AIM database status return code Details File GEMDBASE SQU Related Routines gm exist vid gm get vid list 150 AdeptGEM User s amp Reference Guide Rev P1 Descriptions of Routines in the AdeptGEM Module gm lineset Calling Sequence CALL gm lineset online Function This subprogram implements the steps to set the equipment On Line or Off Line Usage Considerations This subprogram should NOT be used if the host is requesting On or Off Line It is meant only for the equivalent of operator control The host On or Off Line situation is implemented in gm stream1 Input Parameter online TRUE if the equipment should be turned On Line otherwise FALSE for Off Line Details Bringing the equipment On Line involves a successful transaction with the host so even after this subprogram returns it may be a short while before the equipment actually goes On Line or it may fail entirely Global variables such as gm online can be monitored to track the actual control state This routine is similar to the Online Offline buttons on the control panels File GEMENGC SQU Related Routine gm streamN AdeptGEM User s amp Reference Guide Rev P1 151 gm log Chapter 9 Calling Sequence CALL gm log Smessage code Function Log errors and other informative debug messages Usage Considerations The action of this
217. y SEMI has decided to perform operations in a given manner it will detail how AdeptGEM meets those requirements It will give you the procedures for setting up and starting communication with the host The SEMI documentation described in section 4 1 is required reading The AdeptGEM system is an AIM module and works within the AIM environment We assume that you are familiar with such tasks as using the mouse entering data into databases and starting and stopping the AIM system If you are not familiar with AIM please see the MotionWare User s Guide or the VisionWare User s Guide 4 3 SECS I Details The AdeptGEM SECS I software is in compliance with the protocols defined in SEMI E4 91 SEMI Equipment Communications Standard 1 Message Transfer SECS I Section 7 2 4 of that standard Interleaving Messages which is optional is not implemented AdeptGEM User s amp Reference Guide Rev P1 47 Chapter 4 SECS I and HSMS Details SECS I Parameters There are several parameters that can be set to influence the behavior of the AdeptGEM programs The SECS I layer parameters are defined in the SEMI specification and are presented here In some cases the setting of these parameters will be obvious based on the physical equipment the BAUD rate for example is limited by the capabilities of the equipment at either end of the communication link Other parameters will need to be determined based on the behavior of the eq
218. y conform to the intent of the standard The Levels of GEM SECS Software GEM SECS software can be thought of as operating on three largely independent levels with each higher level depending on the lower levels but not requiring extensive knowledge of how the lower levels operate The Physical Transmission Level The lowest level is the physical data transmission level This level describes the physical transmission medium the format of data transmission error checking for transmitted data and the handshake between the communicating parties There are two options for this level SECS I and HSMS SS SECS I is a serial communication specification based on RS 232 transmission protocols HSMS SS is an ethernet communication specification based on TCP IP Other than basic communications parameters such as baud rate host name and similar parameters which you must specify the AdeptGEM system takes care of all aspects of implementing the standard The Message Content Level The second level is the message content level This layer describes the format and content of messages than can be exchanged between the host and equipment These messages are divided into broad classes called streams and specific operations within those streams called functions For example stream 1 messages deal with the state of the equipment The stream 1 function 1 message transmits the serial number and ID of the equipment Again in general you will not have to be
Download Pdf Manuals
Related Search
Related Contents
Manual del Usuario Introduction aux textes liminaires de la Fabrique Toro Foggers Data Sheet RC3000E Configuration Guide 仕様書 Intel SC5300 Life Jacket User Manual CALENDULA - Eureka Pharma Project Name: Implementation of Electronic Government to Citizen 600 シリーズ及び 900 シリーズ バケット式スチーム・トラップ取扱説明書 HASBRO Trans Formers 81060 Asst. User's Manual Copyright © All rights reserved.
Failed to retrieve file