Home

OpenCIM™ OpenFMS User Manual

image

Contents

1. and LAN MAPICS Novell Server PC Organizational Fourth Shift PC Gateway LAN PC PC A RS232 Graphic Tracking CIM Manager Report Generator PC PC PC PC ACL Controller Comunication Y PLC Station Manager Station Manager Process amp QC Station r 4 Processing Comunication Y AGV User Interface to ASRS Open CIM Software Statistical Process Control Station Manager I f l i l ACL l ACL ACL l ACL i CNC LSM Robot CNC PEG Cont Cont Cont Cont oe ee hm Ln i i ASRS H XY fac Robot PC Tam Conveyor i i EE l AGV H Robot Robot ool Tools o LAN RS232 gt VO Wireless RS232 Figure 2 11 Communication Networks Used in OpenCIM LAN The CIM Manager and device drivers exchange command and status messages via the OpenCIM Network This network is based on the Windows TCP IP communication protocol Each module manager device drivers in the TCP IP protocol has two communication sockets the server and the client A socket represents an endpoint for communication between processes across a network Both the server and the client have an IP address and a port number that are unique The OpenCIM Network transparently delivers the message to the destination application
2. Figure 7 4 Adding Conveyor Stations Place stations on straight segments of the conveyor They cannot be placed on the curves 6 Select the file icon to save the conveyor definitions Once you have saved the conveyor setup the conveyor will be drawn on the CIM scene window Do not save the conveyor until you have placed ALL stations around the conveyor Once a conveyor has been saved it cannot be altered To change a conveyor configuration you will need to repeat the entire procedure Tables should be placed at every station around the conveyor either after the conveyor is created or after all elements have been placed in the scene When you place objects in the Virtual CIM you do not need to define a height coordinate since the system assumes all objects are at their proper heights All objects will be displayed at the correct height even if they are not sitting on tables You can select size and color of any table you want to create but only before you create it Once the table is made it cannot be altered To make any changes in tables properties you will need to repeat the entire procedure It is recommended that you place tables in the Virtual CIM so that objects at the stations will not appear to float in space To place a table on the Virtual CIM do the following 1 Select Edit New Object From the CIM Setup menu selec
3. follows Part Report Part Definition Form Field Part as listed in sequential order Part Name Part Name Type Part Type supplied product or phantom Part ID Part ID Template ID Template Type Part Description Description User Manual 5 33 OpenCIM 0201 Preparing for Production CIM Utility Programs Subpart Report The Subpart Report is generated from information that was entered in the Part Process Table in the Part Definition form The Subpart Report is a Bill of Material It shows all the subparts which comprise the finished product The following is an example of a Subpart Report Part Name Sub Part Name Manufacturing Manufacturing Parameters E Name CIM_PROD PLEXIGLASS_SUP ASS_SUP ER ONFAIL ASRS CY IND a S ER RCIM a EADC STEMPLATETY ASRS Each of the columns in the Subpart Report relates to a specific field in the Part Definition form Subpart Report Part Name Sub Part Name Manufacturing Process Name Manufacturing Parameters User Manual Part Process Table Field Part Name The column Subpart in the Part Process Table The column Process in the Part Process Table The column Parameters in the Part Process Table for each corresponding process for a particular subpart 5 34 OpenCIM Preparing for Production CIM Utility Programs 0201 Manufac
4. Figure 7 3 Adding Conveyor Segments d Avoid using too many UNDOs while drawing the conveyor a faulty display may result Tips When drawing the conveyor do not extend the straight segments too close to the edge Allow enough room for the corner segments 4 When you have completed drawing the conveyor click on the OK button A chain of dots will appear in the conveyor 5 To place stations around the conveyor do the following Click on the right mouse button An icon menu will appear Select the Station icon S in red circle Then point and click on one of the dots in the conveyor By default the system automatically assigns numbers to the stations in the order of creation Therefore place the first station just beyond the starting point of the conveyor and add stations in consecutive order around the conveyor You will be prompted to accept or change the station number Repeat this step for each conveyor station d The first station should immediately follow the starting point of the conveyor in accordance with the counterclockwise or clockwise movement of the conveyor Additional stations should be placed consecutive in the same direction until you reach the starting point again It is recommended that you plan your conveyor in advance to determine the correct location for each station User Manual 7 6 OpenCIM 0201 OpenCIM Setup Tip GS Note Tables Notes 288 261 2 88 2 61 x
5. portn e Address of the output port tobe 0x0000 modified OXFFFF mask An 8 character string containing 00000000 1 s and 0 s representing a bit 1 1111 gt 11 mask Vi E Vi 6 P1 P16 time_to_wait Maximum number of CNCDriverTimer milliseconds to suspend program H 214 7 483647 execution while waiting for a bit ie E k a pattern Purpose The WaitBitZ command allows you to read a set of status lines in order to monitor the operation of a CNC machine See the WaitBit command above for details Function The WaitBitZ command monitors an input port portn It compares the value of this port with the bit mask argument mask This command waits for the specified interval for one of the following conditions to be true e An exact match occurs between all 8 bits of the input port and the bit mask A bit equal to 1 in mask matches up with the corresponding bit equal to O in the output port For example bits 5 and 7 below meet this condition e 10100000 mask 01011111 lt BVn When one of these conditions is true the Command Interpreter prints in the Status window Condition is true It then proceeds to execute the next command The WaitBitZ command monitors the port for the period of time specified in the argument time_to_wait in milliseconds This argument can be either an integer or a parameter variable V1 v16 P1 P16 The minimum t ime_to_wait is the value of the parameter CNCDri
6. 3 PERSPEX_SUP READ_BARCODE TEMPLATETYPE T WILL PROD detal Template Type Rack Feeder o2 l Ready Figure 5 2 Part Definition Form for Product or Phantom Part If you define the part as Supplied the Part Process table will be replaced by a section containing data regarding the supplier and supplied material as shown below User Manual 5 8 OpenCIM Preparing for Production CIM Utility Programs 0201 Part Definition Form CIM PART DEFINITION D OpenCIM32 TAU ws0 File Edit Help Ja Sac 2 a 0 z Rack Feede ae i 000001 FEXUNDER SUP dalai Template Type or Rack Feeder Figure 5 3 Part Definition Form for Supplied Part Main Menu Toolbar User Manual 0201 File Edit Help D ie mi Ht Z COVERED_BOX y E y Contains these file options New Part Save Current Part Save All Print Exit from Part Definition screen The first five options also appear as tool buttons in the Toolbar see below Contains these row and part editing options Insert Before Insert After Copy Part Paste Part Delete Row Delete Part You can also access these options by right clicking the process list cell you want to edit On line help Defines new part Saves all part records to database Saves the selected part record to database Automatically resizes the columns to accommodate long values when the window is maximized Prints part r
7. eed Ste ee od ton ad oS Peasy ood NONDNNNNNN NN DN KN Figure 8 3 Sample CNC Log File User Manual 8 6 OpenCIM OpenCIM Device Drivers 0201 GS Note The log information includes each CNC script command executed display messages OpenCIM network DDE messages received and sent and error messages Even messages that have scrolled off the screen are recorded Each entry in the log file is time stamped to the nearest 1 100 of a sec The log file is placed in the same directory as the CNCVD1 INI file after the device driver has been closed The log file is saved as ASCII text You can use any text editor to examine and print its contents The log file is overwritten each time you save it If you want to preserve the previous contents rename the file CNC_DeviceID PRT first Downloading G Code A CNC device driver downloads a G code file to machine in response to a command from the CIM Manager in preparation for running a CNC process The device driver uses one of the following download mechanisms depending on which you specify e A download utility that you supply called from a specified batch file recommended e The built in downloader of the CNC device driver This section discusses how to use a utility program that you supply to download G code This method is usually preferable to using the device driver s internal downloader because a utility program provided by the CNC manufacturer can take advantage of all
8. Function The PulsBit command gives you the means to control CNC operations for a specified period of time It turns on the designated bits of an output port for a specified duration The portn argument specifies the output port which contains the bit s that operate the control line s you are interested in mask1 can be set to either e The current value of the output port BVn e An absolute bit mask value see description of mask2 below You specify which ctrl lines should be pulsed on and off by constructing a bit mask mask2 The mask2 argument is an 8 character string composed of 1 s and 0 s in ASCII text This argument can consist of either a string literal enclosed in quotation marks e g 10000000 ora parameter variable V1 V16 P1 P8 User Manual 9 37 OpenCIM 0201 OpenCIM Programming The PulsBit command performs a bitwise OR operation between mask 1 and mask2 It assigns the result to the output port for time_to_puls milliseconds It then resets the port to its original value The minimum TIME_TO_WAIT is the value of the parameter CNCDriverTimer found in CNC INI The following table shows all the possible ways that PulsBit can affect a single bit position of an output port when mask 1 BVn PulsBit Starting Value of Corresponding Bit Control Line During Control Line After an Output Port Bit in Bit Mask Execution of Execution of maski BVn mask2 PulsBit PulsBit
9. Language Overview The following table lists the commands and parameter variables in the CNC Script Interpreter Code V1 V16 PL Ps BVO BVI PORTO PORT1 SetBit Wait WaitBit WaitBitLow PulsBit Draw Draw2 SendMsg DownlLoadD SendStr User Manual Function Parameter variables read at initialization time Parameter variables containing values passed to CNC script programs at run time Current value of the two output ports PC I O port addresses mapped to CNC control and status lines Modifies the bits of the specified output port Suspends program execution for a specified duration Suspends execution until the specified bit s are set to one or until the specified bit pattern appears on an input port Suspends execution until the specified bit s are set to zero or until the specified bit pattern appears on an input port Turns on the designated bits of an output port for a specified duration Prints a line to the screen Prints two lines to the screen Sends a predefined message to another CIM entity Sends a G Code program to the CNC machine via RS232 Sends a string to the specified OpenCIM device e g robot 9 28 OpenCIM 0201 OpenCIM Programming Code WaitStr WaitFile MSDOS MSWINDOWS ABORT Function Suspends execution until the specified string arrives from the Open
10. Update Updates the duration of any process defined in Machine Definition The Process Time duration is the actual time that a machine has taken to complete a process User Manual 6 4 OpenCIM Operating the CIM 0201 To begin producing an order do the following 0 1 Start all OpenCIM device drivers by clicking on the DD Loader icon at o each Station Manager PC Skip this step if you intend to work in Procedilta Simulation mode Starting Production 2 Select either Real Mode or Simulation Mode from the CIM Modes dialog box gt 3 Reset the Storage by clicking the Refresh Storage icon 4 In the CIM Manager click the Green button 5 Click the Run button to start executing the production plan wa For safety reasons when operating the CIM in Real Mode you must use the actual Not hardware EMERGENCY buttons to halt the system in an emergency Views During the manufacturing process you can track production by looking at up to eight different view screens e Program e Order e Storage e Device e Log e Pallet e Leaf only after Run is pressed e Event only after Run is pressed e Message History Click the appropriate icon on the control bar to open the desired View screen or select the desired View from the alphabetical list in the Window drop down menu Alternatively you can replace the Graphic Display in the lower half of the Manager with the desired View screen with the exception of Log and Event
11. amp Note You can only order parts that have been defined as type Product Products that have been defined as type Phantom or Supplied cannot be ordered Total Quantity The total number of units ordered which must be manufactured on the specified day Initial The number of parts to be extracted from the ASRS when production Quantity begins The initial quantity is a number that can range from 1 one up to the value of the total quantity Usually the value is 1 or 2 This field allows you to optimize the manufacturing process Refer to Optimizing the Scheduling in OpenCIM in Chapter 8 for more details Priority The priority of this order 1 9 A priority of 1 is most urgent 9 is least urgent The CIM Manager uses this priority value to determine the sequence in which to produce orders Due Date The shipping deadline for the part as generated by the MRP GY Note In a commercial CIM environment this deadline is normally expressed as a specific date and time In an educational CIM environment the Due Date is relative to the time an order is submitted A relative time allows the same order to be resubmitted day after day without the need to edit the date field User Manual 5 27 OpenCIM 0201 Preparing for Production CIM Utility Programs How to Create or Modify a Manufacturing Order A Manufacturing Order is created automatically by clicking the MRP button in the Customer Order form The following procedure explain
12. e Manual Allows you to test the ViewFlex Device Driver by manually issuing the commands Pass Fail and observing the results The following buttons are available only in Manual Mode after a request from the CIM Manager Y Send Pass x Send Fail e Simulation Allows you to simulate test results by determining the Pass Fail according to the percentage of failure programmed into the CIM Manager e Debug Allows you to inspect every step of the script running the ViewFlex Device Driver by simulating what will happen when in Real Mode User Manual 8 22 OpenCIM OpenCIM Device Drivers 0201 The following buttons are available only in Debug Mode Open File loads the script JE Run Script runs the selected script Wz Step By Step runs each command line of the script individually Sample Script A model is the pattern for which you are searching and the image from which it is extracted The following script is a sample for testing Pass Fail models The program attempts to find the x object X mod If found Fail is sent ocr rai1 If the object is not found the program 6699 attempts to find the v object V mod If found Pass is sent ocr Pass If neither is found Error is sent ocr Error User Manual 0201 Function OCR As String Dim x As Integer _IMAGE1S Insptr ImgGetCur nsptr ImgSetCurrent I_IMAGE1 R_Def ALL_BANDS X mod is
13. Company Fax Problem Report Form gt Product name Installed at Serial numbers of all relevant Intelitek elements _ Date of purchase or invoice number Version number and date of every Intelitek software used the information appears on the first screen of every software supplied on diskettes and through the ACL command VER regarding EPROMs software version date software version date software version date Detailed descriptions of the problem including but not only all the steps which led up to the problem arising since the start up of the system attach more pages if necessary Error messages as they appear on the display PC screen TP LCD PLC LEDs etc List all changes introduced to the system since the last time the system worked properly For robots List of accessories and I Os connected to controller and type of gripper attached to arm __ Attach a printout of all the control parameters 10 For computers Computer type DOS version and manufacturer 11 List of cards added LAN modem etc Attach a printout of the AUTOEXEC BAT and CONFIG SYS file User Manual 11 13 OpenCIM 0201 Errors and Troubleshooting 12 Glossary Abbreviations Abbreviation Explanation ACK ACL AGV ASRS ATS BMP bps CIM CNC DBF DD FIFO FMS GT LAN LIFO LSM MRP NACK PLC PP PT User Manual 0201 Acknowledge Advanced Control Language Autonomous Guided Vehicle
14. LOG1 DNL PR FD AS AS RV RV RV User Manual 0201 OLOG1 DNL R1 DNL MBUF DNL RS DNL PCOM2V QCL PCOMOV OCL PCOM1V OCL Description Subdirectory containing files for the CIM Manager PC OpenCIM network messages file for this station File containing a listing of all messages LOG file Parameters passed into the CIM Manager at initialization time Pick and place file File containing the leaf view LOG file Error graphic file Subdirectory containing files for a typical workstation ACL Virtual driver Format settings for quality control report File containing ACL device driver protocol File containing LSM device driver protocol LSM Virtual device driver INI file File containing PLC device driver protocol PLC virtual device driver Typically used to pass command line parameters to the Loader program used to start each device driver at this station in Real mode Pick and place file Subdirectory containing files for the ACL controller at Station n Log file showing the commands executed during the last ACL download see the ACLoff line manual Listing of all the download Robot programs for this station Listing of all download Quality Control Robot programs 10 9 OpenCIM Inside OpenCIM File Type RVPCOM OCL SETUP DIR LIB README TXT LIB ACL ER QCB CMM OCB HG QCB RVPCOM OCB CALIPER QCB LSM OCB SOC OCB PC50 OCB SOCR
15. User Manual 10 27 OpenCIM 0201 Inside OpenCIM User Manual 0201 SimulationPallets 8 SimulationPosPerStation 3 3 3 3 3 3 3 SimulationDirection L BaudRate 9600 Parity Even DataBits 7 StopBits 2 XonXoff No MainWindowBkgndColors 150 0 170 MainWindowTextColors 0 0 0 10 28 In Simulation mode or Manual mode this parameter specifies the number of pallets traveling on the simulated conveyor In Simulation or Manual mode this parameter specifies the distance between each station as measured in pallet lengths i e the number of pallets that would fit on the simulated conveyor between two stations The position of each number here corresponds to the order of stations as listed in the parameter SimulationStations For example the distance between stations 4 and 5 below is 8 pallets long SimulationStations 3 6 1 2 4 5 7 SimulationPosPerStation 3 5 7 4 8 3 5 In Simulation or Manual mode this parameter specifies the direction in which the simulated conveyor travels L Clockwise R Counter clockwise RS232 parameters used by this device driver when it communicates with the PLC You must set these parameters to match the RS232 settings on the PLC See these parameters in the ACL section above OpenCIM Inside OpenCIM VC2 WM DBF The VC2_WM DBF Virtual Controller Series 2 Windows Messages Database File contains the following fields DDE_CHNNL The type of device driv
16. 1 Remove the source of the problem 2 Cause the device to repeat the operation This is done by sending the device the appropriate command from the device driver Then the CIM Manager ignores the reported error because the problem for the device has already been corrected Ignore Process successfully completed ignore the error and resume production If the current process was successfully completed with or without help from the operator clicking the Ignore button causes the CIM Manager to ignore the cause of the error and proceed with normal processing of the current part w Caution Before you select Ignore make sure that 1 The current part has not been damaged as a result of the error 2 The cause of the error will not recur 3 The current part is in the proper position to be handled by the next process Retry Reserved for future use Fail Reserved for future use User Manual 11 3 OpenCIM 0201 Errors and Troubleshooting How to Recover a Failed Device If a device fails to operate for example a CNC machine the CIM Device Error screen appears To recover o Goto the device that has failed CNC ACL QC or PLC and abort all a programs Procedure Find the problem and correct it Recovering a Failed Return to the CIM Manger PC and select Ignore in the CIM Device Device Error screen The manager assumes that the last operation was completed and continues on to the next operation Example 1
17. A low voltage connection used for binary signaling between devices i e on or off An input is used to read the status of a device An output is used to turn a designated operation on or off An operation which uses a robot to insert a part into a CNC machine A program which automates the start up of the OpenCIM system under Windows based on command line parameters found in an INI file A CIM device other than a robot which performs production processes e g CNC machine laser scan meter etc 12 4 OpenCIM Glossary Term Machine Tending Material Order Pallet Part Part Family Pick and Place PLC Points Position Process Processed Material Product User Manual Explanation A device e g a robot which delivers and retrieves parts from a machine See Part Instructs the CIM system which part s to produce and in what quantity A tray which travels on the conveyor and is designed to carry a template An entity which moves between stations and machines according to a predefined path or process Three types of parts can be defined supplied phantom and final product A group of parts which are handled the same way by a robot 1 e the same ACL program can be used to pick and place parts in the same family The primary robot function which involves taking a part from one location source and placing it at another location destination The pick and place strategy minimizes
18. CIMSPEED 1 DDFileName CNV1 CIMLAB4 WS1 PLCVD1 INI SQRAS1 CIMLAB4 WS1 ACLVD1 INI RDR1 CIMLAB4 WS1 LSMVD1 INI ROBOT5 CIMLAB4 WS2 ACLVD5 INI PCTURN1 CIMLAB4 WS2 CNCVD1 INI PCMILL1 CIMLAB4 WS2 CNCVD2 INI ROBOT3 CIMLAB4 WS3 ACLVD3 INI ROBOT4 CIMLAB4 WS4 ACLVD4 INI VSN1 CIMLAB4 WS4 RVPVD1 INI CMM1 CIMLAB4 WS4 LSMVD2 INI You can use some combination of the parameter file strategies listed below when deciding how to organize INI files for your system e Put all default parameter settings in OPENCIM INI Then write a separate INI file for each device driver that contains only those parameters that deviate from the default e Have a separate INI file for each device driver containing all the parameters for that device Use OPENCIM INI only for global parameters e Have a separate INI file for each Station Manager PC e g WS1 IND which contains the parameters for all devices at that station These files would also contain the command lines used by the Loader to start each device driver at a station Use OPENCIM INI only for global parameters To set up or edit an INI file use a text editor e g Windows Notepad that can save files in ASCII format The file is divided into sections with the title of each section enclosed in brackets for example Networking A program searches for the sections that apply to it and reads the associated parameter settings Keep the following considerations in mind
19. Deliver Orders the PLC to stop the specified pallet at the specified station The CIM Manager issues this command in order to assign a destination to a pallet at the time it is loaded with a template i e every pallet carrying a template should have a destination Free Release a pallet that was unloaded at this station Flag it as available i e destination 99 This command is similar to Release except that the pallet s destination is changed to 99 to indicate that the pallet is empty and available The following status messages from the PLC are forwarded to the CIM Manager by the PLC device driver e A pallet carrying a template for this station has arrived e An empty pallet has stopped to pick up a template If the Graphic Tracking module is running a Pass message can be generated each time a pallet passes through a station where it was not needed These messages keep the real time conveyor display updated However if the frequency of these messages slows down the system you can improve performance by disabling them The following sample scenario demonstrates the role of the PLC device driver in relaying command and status messages between the CIM Manager and the PLC This scenario assumes that a part is being picked up from the ASRS station 1 and delivered to production station 2 User Manual 8 30 OpenCIM OpenCIM Device Drivers 0201 Message Command messages in bold Status messages in italics GetFree Stop an empt
20. Robot Controller gt CIM Manager Template is in place on pallet CIM Manager gt PLC Release pallet from the CNC station Stop this pallet when it arrives at the Assembly Station User Manual 2 26 OpenCIM System Overview 0201 3 Safety Do not approach any OpenCIM equipment before reading the safety guidelines in this R chapter Warning The OpenCIM cell is a complex system containing many different machines each potentially dangerous if proper safety practices are not followed Certain safe operating practices apply to all while others are device specific This chapter presents the general rules followed by a brief discussion of the safety requirements of each component The User s Manuals for all robots and CNC machines contain full descriptions of the safety procedures and warnings for these devices The user is strongly urged to read these manuals before working with the devices General Safety Rules The following rules should be followed when in the vicinity of all moving machinery in the CIM cell such as robots ASRS or conveyor 75 Warming Exercise caution whenever you are in the area of the CIM cell arning e Be sure you know the location of the ON OFF switch and any emergency shutoff switches on the following equipment e Robot controller e Pallet conveyor e CNC machines e Be alert since any idle piece of equipment could start up suddenly All CIM machinery can be turned on and off unexpect
21. The Part Definition screen or form allows you to enter the bill of materials and the associated production processes used to produce a part Using the Part Definition form you can either e Modify view the production process for an existing product e Describe the production process for a new product Defining a new product involves the following steps e Drawing a part definition tree e Setting up all machine processes necessary to produce a product and all its subparts e Determining what new template designs are required to handle all the parts involved and assign these designs template ID numbers e Determining the types of racks that can hold each subpart The Part Definition form for Product or Phantom parts lets you create view or modify the current part either a product or its subparts A part record contains all the fields shown on the Part Definition form below Each field and the control buttons associated with this form are described in detail in this section CIM PART DEFINITION D OpenCIM32 TAU ws0 File Edit Help D W Hr 18 MILLI_PROD yi x Supplied Parts Product Parts Phantom Patts CYLINDER_SUP READ_BARCODE TEMPLATETYPE T FAIL_BARCODE ONFAIL ANDAS T 12 LATHE_1 T Dl CHECK_BRASS_S T FAIL_VISION ONFAIL RNDAS1 T CYLINDER_SUP READ_BARCODE TEMPLATETYPE T FAIL_BBARCODE ONFAIL ANDAS1 T 13 LATHE_2 T 0 CHECK_BRASS_S T FAIL_VISION ONFAIL ANDAS1 T
22. Automated Storage and Retrieval System Advanced Terminal Software BitMaP the file extension representing the Windows native bitmap picture format bits per second Computer Integrated Manufacturing Computer Numerically Controlled Database File in dBASE format Device Driver First In First Out Flexible Manufacturing System Get part robot operation Local Area Network Last In First Out Laser Scan Meter Material Resource Planning Negative Acknowledgment Programmable Logic Controller Pick and Place robot operation Put Part robot operation 12 1 OpenCIM Glossary Abbreviation Explanation QC Quality Control RV Robot Vision TCP IP Transmission Control Protocol Internet Protocol WMF Windows Meta Format the file extension representing the Windows native vector picture format WS Workstation User Manul DD nen CIM 0201 Glossary Terminology Term ACL ACL Controller ASRS Assembly ATS Baud Rate Bill of Materials Buffer CIM Manager Com Port Control Program DBF User Manual Explanation Robotic programming language used to control robots and peripheral equipment attached to Intelitek s ACL controllers Advanced Control Language A multitasking computer used to direct the operations of a robot s and peripheral devices in real time A robotic storage device used to store and dispense parts in a CIM cell A part which has been put together from two or more subparts
23. Cost Per Hour Maximum Program 1 Program 2 Program 3 Number of Preloaded Programs ES CEET ECON ANN ION ION INN a o leo al 1 EM CECI ESO RON AOS ION ENS peu fetid CIN ION ENANOS Each of the columns in the Machine Report relates to a specific field in the Machine Definition form as follows Machine Report Machine Definition Form Field The sequential number of the machine as listed Machine Name Machine Name Cost Per Hour Cost Per Hour in the Machine Process table Maximum Number Max Preloaded Programs of Preloaded Programs Program 1 List of Preloaded Programs Program 2 Program 3 User Manal CSB nen CIM Preparing for Production CIM Utility Programs 0201 Process Report The Process Report shows the user defined name Process Name field of each machine in the OpenCIM and the processes performed by the machine This report is generated from information that was created from the Machine Process Table in the Machine Definition form The following is an example of a Process Report Em Machine Name Process Name Process aaa EA File Name Cfa fem G a O e pa Tr E Each of the columns in the Process Report relates to a specific field in the Machine Definition form as follows Process Report Machine Process Table Field The sequential number of the machine as listed Machine Name Machine Name Process Name The column Process in the Machine Process Table Process Type The column Action Type in t
24. How to Define a Customer Order When you define a customer order you are defining the type and quantity of finished products for a specific customer o 2 Procedure Defining a Customer Order Add a new customer order to the list by clicking New Order Right click in the Customer column to open the customer list Select the desired customer Right click in the Part name column to open the part list Select the desired part for example COVERED_BOX In the Required Quantity field enter the number of units ordered by the customer in this case 3 In the Due Date field enter a value in this case 2 1 e the part is to be completed in two days This causes the MRP to instruct the CIM to begin production immediately Click Save to save the order for this customer To order more parts for the same customer in the same order insert a new line by right clicking on the last cell in the order and choosing Insert After Repeat steps 2 6 When you have finished filling in the order for a specific customer create the order by clicking on MRP Manufacturing Order Form A manufacturing order specifies the type and quantity of parts to be produced by the CIM cell on a specific day The Manufacturing Order form shown can be generated by the MRP program according to the customer orders currently in the system You can view and modify or simply accept the Manufacturing Order or define a completely new one You can
25. How to Define a Machine The procedures presented below refer to an OpenCIM sample application for producing a simple covered box product When defining the process for the covered box two processes need to be defined CNC milling and assembly User Manual 0201 5 5 OpenCIM Preparing for Production CIM Utility Programs bx A Defining the Milling Process 1 In the Machine Definition form select MILL1 from the Machine Name Procedure drop down list this is the name for the milling machine as defined in the Virtual CIM Setup The MILL1 record becomes the current record and appears in green in the Machine Process Table The record contains the process es defined for the machine The workstation is shown as WS2 the machine type as M MACHINE the action type as CNC and Robot controlled as No and gray In the Process column type in the Process Name MILL2 You will need to make sure either now or later that MILL2 appears in the Process field in the Part Process Table in the Part Definition form In the File column type in GCODE NC for example as the name of the G code program file that contains the instructions for this type of process In the Duration column type in the amount of time it takes the mill to perform this operation e g thirty seconds Your screen should now look like this CIM Machine Defition C OpenCIM32 DEMO WSO File Edit Help E At mu Machine Definition
26. NEXT command and begins processing M3 Finished processing P1 2 The NEXT command is performed so P1 4 is released from the ASRS and sent to M1 for processing You can eliminate the inactive time period Time 18 by increasing the initial quantity for part P1 20 M4 Finished processing P2 4 The NEXT command is not performed because all 4 parts of type P2 are ready 21 M1 Finished processing P1 4 23 M2 Finished processing P1 3 and P1 4 is selected from the queue to begin processing M3 P1 3 is sent from M2 to begin processing 26 M3 Finished processing P1 3 The NEXT command is not performed because all four parts of type P1 are being or have been processed nf The system works in parallel on orders with both high and low priority taking into Note consideration that orders with high priority are treated first User Manual 9 66 OpenCIM 0201 OpenCIM Programming Benefits of the Optimization Approach User Manual 0201 The Optimization Approach offers the following benefits The system continues to follow the priority you define for each part even though the system is required to work on many parts from different priority levels The Optimization Approach handles incomplete or incorrect predicted process time in a competent manner i e the NEXT command is actually executed when the machine finishes processing the part and not according to some precalculated time The Optimization Approach implemented in the CIM envir
27. The Robot programs are divided into individual programs as follows e Get and Put programs of each device e Quality Control programs of each peripheral QC device e g Bar code e Process PRL programs programs of each peripheral machine e g automatic screwdriver CNC machine Structure of the ACL Program File DEVICE CIMSYS 1 Description DMC Located in the Setup directory This file assigns numbers to names DMC Located in the LIB ACL directory This file contains system macros CIMSYS SYS Located in the LIB ACL directory This file contains system programs All of the following files are located at the current directory of ROBOTn WSn DNL User Manual 0201 Includes all of the files that are to be downloaded from your station PC to the ACL controller 9 6 OpenCIM OpenCIM Programming E Q Q P ROLOGn DNL In this file you modify system programs such as Global System variables e g SPSA speed slow group A predefined positions or any other settings that need to be predefined for that station This file contains all the documentation for positions and I O ET PUT DNL Pick and place programs C OCL Quality Control programs ROCESS PRL Process programs EPILOGn DNL In this file you modify Initialization System programs You can manage all of your Robot programs through the Robot Programs window Any editing changes however small should be made to th
28. by clicking the appropriate tab User Manual 6 5 OpenCIM 0201 Operating the CIM Order View The Order View is a copy of the Manufacturing Order It is the most basic of the available views Order View Figure 6 4 Order View The following is an explanation of each column in the Order View No Line number from Manufacturing Order PART Name of part as defined in Part Definition Form used in Manufacturing Order Total Total number of parts to be produced as defined in Manufacturing Order Done Number of parts that have been completed Updated during production Fails Number of parts that have failed inspection Updated during production In Process Number of parts that are being manufactured Updated during production Storage View The Storage View resembles the Location Status Report see Chapter 5 This view is a detailed listing of every location defined in the CIM system Stat Template 25 ay TEMPLATE 010002 26 ay TEMPLATE 010005 27 Empty EMPTY 28 Empty EMPTY 29 Empty EMPTY 30 Empty EMPTY 31 ay TEMPLATE 010001 32 gly TEMPLATE 010004 33 Empty EMPTY 34 Empty EMPTY 35 Empty EMPTY 36 Empty EMPTY 1 Empty EMPTY 1 Empty EMPTY 1 Empty EMPTY 2 Empty EMPTY 3 Empty EMPTY EMPTY TEMPLATE 010003 EMPTY EMPTY EMPTY EMPTY EMPTY Figure 6 5 Storage View User Manual 6 6 OpenCIM Operating the CIM 0201 The following is an explanation of each column in the Storage View Storage A list of all
29. predefined reports or you can create your own user defined reports The predefined reports that can be generated are B CIM Report Generator C 10penCI Mal E File Edit Help DE MM iH amp Feat Name peg Nk Print To Window Print To Window Print To Window Print To Window Print To Window Print To Window Print To Window Print To Window Print To Window Figure 5 12 OpenCIM Report Generator Dialog Box The following procedure details the steps involved in generating a report o Select Report Generator from Utility Program in CIM Manager Main Menu the A OpenCIM Report Generator dialog box appears Procedure Select the requested report Click the Print button The desired report will appear on the screen If you want to print it on a printer click the printer button on the report screen Generating a Report User Manual 5 32 OpenCIM Preparing for Production CIM Utility Programs 0201 Part Definition Report The Part Definition Report is generated from information that was entered in the Part Definition form It shows the names and description of all parts used by the CIM cell The following is an example of a Part Definition Report Part Name Type Part ID Template ID Part Description 1 CYLINDER_SUP Supplied ri 01 CYLINDER FROM THE FEEDER faa pits ee mania l Each of the columns in the Part Report relates to a specific field in the Part Definition form as
30. select Supplied parts A From Main Menu select FILE NEW PART or click the New button on Procedure the toolbar Defining the Raw In the Part Name field select BOX the solid cube from which the box will Material s be milled from the drop down list 4 In the Part ID field enter a unique ID for this raw material for example 1 5 In the Template Type field enter an identifying number for the type of template which will be dedicated to carrying this part e g 01 This data will be read and used by the Storage Definition program In the Rack Feeder Type select the type of rack that will be used to hold this part at the workstation e g Rack 201 If a rack or a feeder is not used leave the field blank The remaining fields are not required to enable production they are used to provide statistical data Click Save to save the part Click New and repeat steps 2 6 for the other raw material which will be used in the assembly COVER Your screen should now look like this User Manual 5 13 OpenCIM 0201 Preparing for Production CIM Utility Programs CIM PART DEFINITION C program files OpenCIM32 CIMLABS ws0 File Edit Help D eH S Supplied Parts Product Parts Phantom Patts Part Supplier Catalog Min Safet Cost Supply Number Order Stoct Timefdays 59 92 80 2 COVER details Template Type Rack Feeder Joz Ready 9 Continue on to the procedu
31. 2 1 Part Definition Tree for Sample Application The following steps detail the process of making a covered box 1 The ASRS robot takes a solid cube and a cover from a storage cell and places them on separate pallets on the conveyor When the cover arrives at the assembly station the assembly robot places it in a rack until the matching box arrives When the cube arrives at a CNC station the CNC robot places the cube into a milling machine The CNC machine reams out the center of the cube to form a box The CNC robot places the box on the conveyor When the box arrives at the assembly station the robot places it on a rack When all the parts required for the assembly are on their rack the robot places the base part box on the jig The robot then retrieves the matching cover from the rack and places it on the box The robot places the covered box on the conveyor When the covered box arrives at the ASRS the robot places the finished product in a storage cell Components of the OpenCIM Cell This section describes the elements of the OpenCIM cell The topics covered include the physical configuration of the cell material flow control and production devices and communication networks The emphasis is on the role each component plays in the integrated system rather than on providing a detailed description of the component Later chapters cover OpenCIM software in greater detail Consult the appropriate user s manuals for de
32. 7 15 OpenCIM 0201 OpenCIM Setup Stage 1 Designing the CIM Cell o 2 Procedure Setting up the Virtual CIM Cell Following is the recommended sequence for setting up the Virtual CIM Cell Plan and document your CIM system before starting Define the conveyor and the location of the workstations Place tables at the stations Place an ASRS device at a workstation station 1 is recommended Place robots at the stations Place CNC and any other machines at the stations Place buffers at the workstations Place PCs at the workstations 1 2 3 4 5 6 7 8 9 Define the device drivers for the workstations 10 Define all connections and properties for each device driver 11 Create the Setup Map and Icon Group for this CIM cell This section will guide you through a complete procedure for creating an OpenCIM cell using the Virtual CIM Setup module i 2 3 4 10 11 User Manual From the OpenCIM ver 2 3 group click the Virtual CIM Setup icon Select File New Enter the name CIM 1 for the cell Click OK The Scene Window appears Maximize the window Select Edit New Object In the New Objects box double click General to expand that category and then select Conveyor In the Conveyor Type box select Normal and click OK The Conveyor grid appears Click the right mouse button Drag the mouse and select the key icon A wand appears Bring the wand into the lower right side of the g
33. A PC based terminal emulation program used to program an ACL controller Advanced Terminal Software An RS232 parameter specifying the speed of the serial connection A structured list of all the materials or parts needed to produce a particular finished product or subpart A buffer is a tray designed to hold a template when it is removed from the conveyor It is attached to the outer rim of the conveyor at a station The central control program of OpenCIM This program directs production in the CIM cell using a variety of communication networks It also allows the user to set up and define CIM elements See RS232 A program which manages the operation of a CIM device such as a robot ACL program a CNC machine G code a camera ROBOTVISIONpro program etc A control program communicates with the OpenCIM system via a device driver at a Station Manager PC The computer which executes a control program can reside in A separate controller unit e g an ACL controller In the device itself e g a CNC machine with embedded controller A separate PC controlling the device e g a PC attached to a ROBOTVISIONpro camera A file extension indicating Data Base File i e in dBASE format 12 3 OpenCIM Glossary Term Device Driver Download Feeder FMS Free Movement Zone G Code Group A B GT Home a Robot INI File VO Input Output Load Loader Machine User Manual Explanation A progra
34. Bitin mask Corresponding Bit Result after inmask2 SetBit 0 Not used 1 1 Not used 0 User Maa OpenCCM 0201 OpenCIM Programming Examples SetBit PORTO BVO 10000000 This example turns on control line 7 This control line is connected to the PC s output port 0 The OR truth table indicates that when the mask contains a 1 in a given position that bit will be set to 1 regardless of the bit s initial value in the output port SetBit PORT1 BV1 8 V16 The bits in output port 1 are ANDed with the bit mask in variable V1 6 The result is written back to output port 1 and the corresponding control lines are set on and off accordingly SetBit PORT1 BV1 P8 The bits in output port 1 are XORed with the bit mask in parameter variable P8 The result is written back to output port 1 and the corresponding control lines are set on and off accordingly User Manual 9 42 OpenCIM 0201 OpenCIM Programming Wait Suspends program execution for a specified duration Wait time _to_walt time_to_ walt e Number of milliseconds to e CNCDriverTimer suspend program execution 2147483647 Vl V16 P1 P16 Purpose After performing an operation on a CNC machine it is sometimes desirable to pause for a while before continuing with the next operation For example it may be necessary to wait 2 minutes after a certain procedure to allow a part to cool down before a robot extracts it fro
35. CIM CIM network Suspends execution until the specified file is created Performs any MS DOS command Launches any MS WINDOWS executable file Unconditionally aborts the current CNC device driver program Initialization Parameter Variables The CNC Script Interpreter supports up to 16 general purpose parameter variables and two special purpose variables which are defined at initialization time The general purpose variables contain values that are O to 80 bytes long These variable names V1 V16 are fixed The two special purpose variables PORTO and PORT1 contain the addresses of I O ports used to interface to the CNC machine The CNC Device Driver assigns the values of the parameter variables V1 V16 PORTO and PORT 1 at initialization time It reads these values from the section CNCDriverDefinitions in the file CNC INI These variables are global to all CNC script programs Their values do not change during execution of a script program General purpose variables can contain the following types of values Variable Type Integer String Bit Mask Range Integers range in value from 0 2 147 483 647 A set of ASCII characters enclosed in quotation marks A string can range in length from 0 80 characters A string of 8 ASCII text characters enclosed in quotation marks Each character is either 0 or 1 The following table describes the special purpose variables Variable PORTO PORT1 User Manua
36. Clear Temporary Storage Initialize Storage Exit from Storage Manager screen These options also appear as tool buttons in the Toolbar see below Edit Contains these part editing options Add Part to Storage Delete Part from Storage Help On line help User Manual 5 17 OpenCIM 0201 Preparing for Production CIM Utility Programs Toolbar Saves the current Storage configuration to the database Adds a new row in the ASRS block This is used when the location of the part within the ASRS is not important Deletes a row from the ASRS block a 0 Resets storage or default storage Restores a predefined configuration of the storage from the backup database file B Creates default storage Creates a backup database file of the current storage configuration gE Clears temporary storage Removes any part or template from Temporary Storage devices E 2 Initializes storage Removes all parts from all devices leaving them empty of parts Deletes ALL storage data from database When you activate Initialize Storage you must close the Manager windows and reopen it again in order to update the storage database Note De All devices that do not contain a part or a template at the beginning or at the end of a complete production round are considered temporary storage devices e g robot Note buffer machine conveyor pallets etc Storage Data Table The storage devices that appear in the Storage Type column are defined in
37. DLD DownLoad utilities Unique Robot Programs File Extension Meaning DNL DowNLoad ACL source code file that is sent to an ACL controller using the ACL Downloader QCL This file is copied from a QCB file After the original file is modified to the editing application the file is then unique to the specific QC device PRL This file is copied from a PRB file After the original file is modified to the editing application the file is then unique to the specific process activation e g a program that speaks through I O with a CNC machine O 2 fA a es Brocade want to edit the file is displayed Editing and Edit the file Downloading a Robot Program Separately E Select the Download icon downloaded to the controller for the file you just edited the file is AC DDC Select the Download Report icon Verify that the file ends with gt gt gt gt gt END DOWNLOAD FILE Device file name User Manual 9 23 OpenCIM 2 3 0201 OpenCIM Programming o 0 Procedure Downloading All of the Robot Programs at One Time GS Note If any Robot program files need to be edited edit them before downloading Download In the Robot Programs window select the Download Station icon WS i the files for the entire station are downloaded to the controller When the files are downloaded together they are sent in the following order 1 CIMSYS SYS 2 PROLOGn DNL 3 DEVICES DNL DEVI
38. Driver It allows you to perform the following functions e Simulate a robot e Issue ACL commands interactively e Debug ACL pick and place programs by running them interactively e Test a robot and its positions and programs by issuing a series of pick and place commands stored in file e Create a file of pick and place commands ACL Device Driver ACL11 iof x File View Operation Help Open CIM Messages J Simulation Mode Start new session Send To Controller Task History Complete from P P File Message was Sent CADpenCIM32ADEMOWwS14 1721612239 Figure 8 5 ACL Control Panel Control Modes for the ACL Device Driver The ACL device driver like all other device drivers can pass actual messages or can generate simulated messages In Real Mode the device driver relays messages between the OpenCIM User Manual 8 11 OpenCIM 0201 OpenCIM Device Drivers system and an ACL controller In one of the simulation modes the ACL device driver can be used to emulate a robot or to test a robot The following list shows the messages that can appear in the Control Mode box on the Control Panel In each mode the device driver treats command messages the same whether they originate from the CIM Manager or from selections you make from the device driver s Control Panel The activation examples show command lines from the Loader s INI file used to start the device driver in the designated mode Bold command line s
39. GET BOX COVER 1 1 To ssembly COVERED_BOX 1 1 COVER 1 1 RENAME COVER 1 1 GET COVER Figure 6 6 Program View The following is an explanation of each column in the Program View screen Level This hierarchy number indicates the level in the Part Definition tree for each ordered product Operations at the same level can occur in parallel except an ONFAIL process Part Unique name used to identify the subpart currently under production Action The A Plan command or user defined process that the CIM Manager executes to produce a part Subpart The part or object which the A Plan action operates on User Manual 6 7 OpenCIM 0201 Operating the CIM Target The destination where this subpart is to be delivered Parameters used by this command or process P1 Pn Shows the current production status The number of shaded Part columns corresponds to the total number of parts ordered When a part is being produced one of the following symbols appears at the current stage of production a Command sent waiting for acknowledgment ON Device has begun processing this part device driver has responded with Start message OFF Device finished processing this part device driver has responded with Finish message a The blue box indicates operation completed device driver has responded with End message WAIT CIM Manager is waiting for another operation to complete before sending this command Device View The Dev
40. ID e PTOO1 Put template on conveyor pallet 001 device ID for conveyor Note that the device IDs for GET and PUT are different If they were the same this would mean that the robot was returning the part template to the same location where it had just picked it up All GET and PUT programs for a robot must be designed to work together This entails that e They read the same set of pick and place parameters stored in global variables e When a program ends it must leave the robot in a position that enables it to move in any subsequent direction since you do not know at the time of writing the programs where the next GET or PUT will send the robot e They use the same synchronization mechanism which allows a GET program to activate any PUT program User Manual 9 3 OpenCIM 0201 OpenCIM Programming Teaching Robot Positions The path that a robot follows is made up of points called robot positions These positions can be taught using a teach pendant or in ACL s Direct Manual mode using the ATS utility The coordinates associated with these positions are normally stored in an array called CIM by convention See the ACL documentation for a complete discussion of how to teach robot positions d When planning robot movements take into consideration obstacles caused by parts under production For example after placing a part the robot may not be able to retrace its movements without colliding with the part it just placed A
41. Installation System Check The system check depends on the actual stations machines and devices included in the OpenCIM installation Refer to documentation and instructions supplied with your OpenCIM installation Check the hardware and device drivers and make sure they are functioning properly Power Supply Conveyor Robots Use the ACL program DEBUG PLC Device Driver ACL Device Driver CNC Device Driver Vision QC Device Driver Pneumatic Devices using the appropriate Device Driver 4 10 User Manual Installation OpenCIM 0201 5 Preparing for Production CIM Utility Programs This chapter describes the CIM Utility Programs which are used for preparing the OpenCIM system for production These programs which are an integral part of the CIM Manager software and are listed in the Utility Programs menu allow you to view and edit the following CIM entities Machine Definitions and their associated production processes Part Definitions Part Definition E me Storage Definitions Storage Definition MRP Customer Orders Manufacturing Orders and Purchase Orders io z RP You can use these programs to view some existing sample definitions to assist you in making your own This chapter also discusses the Report Generator which is provided with OpenCIM i Report Generator Allows you to generate predefined or customized reports for Viewing and printing Report As
42. Intelitek technical support A Start Operation message was received when no operation was requested AFinish Operation message was received when no operation was requested AnEnd Operation message was received when no operation was requested e Check the ACL program or CNC script associated with the current process that may be sending an erroneous Start Finish or End message OR e Someone has manually triggered a Start Finish or End message by running a program from the Control Panel of either the ACL or CNC device driver Unrecognized device location or part e Define the unrecognized device or location using the Setup module OR e Define an unrecognized part using the Part Definition module Cannot perform this process Either the process definition or device definition is missing e Define the unrecognized process using the Machine Definition module OR e Define the unrecognized device using the Setup module Start message received from an unrecognized device Finish message received from an unrecognized device End message received from an unrecognized device Error message received from an unrecognized device 11 8 OpenCIM Errors and Troubleshooting Code 9012 9013 9014 9015 9016 9017 9018 9019 User Manual 0201 Description and Solution e Someone has manually triggered a Start Finish End or Error message by running a program from the Control Panel of either the ACL or CNC device
43. Process field in the Part Process Table in the Part Definition form In the Duration column type in the amount of time it takes the mill to perform this operation e g 12 seconds 4 Your screen should now look like this CIM Machine Defition C OpenCIM32 DEMO WSO File Edit Help E E exs y Machine Definition WS Machine Type Action Robot controlled J ws3 J d Jig ASSEMBLY y no E 00 00 05 Y Barcode MILLI GCODE1 NC 00 00 30 M Machine MILL2 GCODE2NC 00 00 25 M Machine SCREWING 00 00 20 D Device on VIEWFLEX QCTEST BAS 00 00 15 Y Vision VIEW VIEW BAS 00 00 23 W Vision E On Buffers On Racks On Conveyer Total i Of Preloaded Programs JIG Y4 Max Part llocation JIGY4 5 Click ll to save the information to the database 6 You can now generate and view a Machine or Process Report by using the Report Program e These procedures represent a simplified example When defining more complicated Net applications entries to other fields will also be required User Manual 5 7 OpenCIM 0201 Preparing for Production CIM Utility Programs Part Definition A product is manufactured from a group of subparts bill of materials that are put together according to a specified set of machine processes Starting with a set of raw materials supplied parts you define parts at the intermediate stages of production required to assemble a final product
44. READER RDR1 Y 10001 PCMILL PCMILL1 M 1 PCTURN PCTURN1 M 1 WELDST WELDST1 D 1 0 0 0 0 1 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 0 1 SQRAS1 0 ROBOT5 0 ROBOT3 0 ROBOT4 0 0 0 0 0 0 0 SQRAS1 0 0 0 SQRAS1 0 0 ROBOTS 0 0 ROBOTS 0 0 1 ROBOT3 0 0 de 1 ROBOT4 0 0 1 1 ROBOT4 0 0 ROBOT4 0 0 ROBOT4 0 0 ROBOT4 0 0 T ROBOT5 0 ROBOT3 0 ROBOT4 0 r110300 1 LET O 16 1 0 ROBOT4 0 0 0 0 0 ROBOT4 0 0 o 00 10 16 OpenCIM Inside OpenCIM DEVICE DMC The DEVICE DMC file in the SETUP directory defines numbers for the ACL logical name of every device in the system The DEVICE DMC file for the CIMLAB4 Virtual CIM is shown below IFNDEF DEF INE D D D D D D D D D D D D D D D D D D D D D ENDI 2222222422422 2242224222422242 24 Hee PPP Ta D Ea O Ea D a S Ta Da A a D Ta D eee ese ese T B B T Ae A eE a ee e e a eE a e e 2 ee For an explanation of this file and how to edit it refer to Writing ACL Source Code in Chapter 8 User Manual 10 17 OpenCIM 0201 Inside OpenCIM INI Files OpenCIM uses a set of INI files to set configuration parameters for the following programs e Each OpenCIM device driver e The CIM Manager e The OpenCIM Loader e The Storage Definition module OpenCIM parameter settings for the above programs are stored in a set of text files INL These
45. The rules will be chosen from the following list 1 A part that belongs to the order line with the highest priority level 2 Shortest Process Time SPT a part whose process time in this machine is the shortest 3 FIFO First In First Out User Manual 9 63 OpenCIM 0201 OpenCIM Programming Example This example demonstrates how to use the NEXT command to set the release time of the parts from storage We will examine part P1 whose manufacturing process requires the use of three machines M1 M2 and M3 and the process time of each machine is 2 7 and 3 minutes respectively The schedule for the part is represented as follows neglecting the transfer times between the machines Parts P1 Time 2 9 12 Minutes Figure 9 9 Schedule for Part If a new part is released every time a part will finish its process at M1 there will be an accumulation of parts in front of M2 due to its longer process time Alternatively if a new part 1s released every time a part finishes its process at M2 no queues will be created at any place in the system since the process at M2 is the longest Also releasing a new part only after the end of the last process defined for the part will prevent an accumulation of parts The problem in this case is that machine M1 will remain idle until the end of the part process in M2 and even worse M2 which forms the bottleneck in this example will remain idle in between parts The solution is to r
46. ViewFlex Device Driver performs the following functions e Activates a test on the Vision Machine System e Receives status messages from the Vision Machine System and sends to the OpenCIM Manager OpenCIM Messages in the ViewFlex e Allows you to test and debug the Vision Machine System by sending commands from the Windows dialog box e Emulates the Vision Machine System in Simulation mode Adjustments ViewFlex exe After the ViewFlex Device Driver is installed copy ViewFlex exe to the OpenCIM Bin folder ViewFlex ini ViewFlex ini includes the directory in which the script files are located Device Driver Definitions ScriptPath E opencim32 cimcell WSn where WSn is the workstation folder in which the QC camera is placed in Virtual CIM User Manual 8 21 OpenCIM 0201 OpenCIM Device Drivers User Interface TH YiewFlex Device Driver IDO Py of xj File View Operation Operation Mode OC Result Oime Ready r Open CIM Messages gt From Manager lt To Manager lt Start gt lt Send DEVICEISREADY to manager Send DEVICEISREADY to manager TCP IP 172 16 12 1C Script Name Figure 8 10 ViewFlex Control Panel Control Modes The control modes that the ViewFlex Device Driver can run in are e On Line Real Allows the ViewFlex Device Driver to wait for the following commands from the OpenCIM Manager Snap Load Script Execute Program Script and Send Results
47. WAIT statement allows execution to continue 9 57 OpenCIM OpenCIM Programming In this example the CNC machine signals that the door is open by sending a command to the ACL device driver to run a short ACL program DROPN This program sets the global variable DOOR equal to OPEN This assignment satisfies the WAIT condition and execution continues Tip The WAIT statement is more efficient than using a polling loop to continually check the value of the variable DOOR Unlike a loop this statement suspends execution of the program until the condition is satisfied Suspending execution allows other active ACL programs to run faster The following is a set of sample ACL programs GET PUT DROPN DRCLS VCOPN and VCCLS These programs insert and remove a part from a machine using the CNC synchronization mechanism the CNC synchronization code is highlighted User Manual 0201 PROGRAM_GET CNC1 OPEN EAST MOVED CIM 260 MOVED CIMB 260 MOVED CIM 260 JAW 50 SET DOOR 0 CNCREQ CNC1 OPEN DOOR WAIT DOOR OPEN MEDIOM MOVED CIM 261 SPLINE CIM 262 263 MEDIOM MOVED CIM 288 SLOW MOVED CIM 289 CLOSE SET VISE 0 CNCREQ CNC1 OPEN VISE WAIT VISE OPEN MEDIOM MOVED CIM 288 MEDIOM MOVED CIM 262 FAST START OVED CIM 261 OVED CIM 260 END_GET PROGRAM SET END PROGRAM SET END PROGRAM SET END 9 58 OpenCIM OpenCIM Programming User Manual 0201 PROGRAM VCC
48. __GROUP_B Check if Group B is Define MACRO MOVEDB MOVED toe ENDM MACRO MOVE ENDM ELSE MACRO MOVEDB ENDM MACRO ENDM ENDIF Synchronize macros MACRO STARTSYNC SET SSYNC ENDM MACRO Should be at the beginning of all the put programs WAIT Wait to the end of get SET ENDM MACRO ENDGET At the end of all the get programs SET SSYNC Can start the put program ENDM Gripper macros MACRO OPEN Open the gripper GOSUB OGRIP ENDM MACRO CLOSE Close the gripper 9 8 OpenCIM OpenCIM Programming User Manual 0201 GOSUB CGRIP ENDM Speed macros MACRO FAST speed to fast FASTA FASTB ENDM MACRO MEDIUM speed to medium MEDIUMA MEDIUMB ENDM RO SLOW speed to slow LOWA LOWB ENDM MACRO FASTA to fast SPEEDA SPFA ENDM MACRO MEDIUMA to medium SPEEDA SPMA ENDM MACRO SLOWA to slow SPEEDA SPSA ENDM IF __GROUP_B Check if group B is define MACRO FASTB Set group B speed to fast SPEEDB SPFB ENDM MACRO MEDIUMB medium SPEEDB SPMB ENDM MACRO SLOWB SPEEDB SPSB ENDM ELSE MACRO FASTB ENDM MACRO MEDIUMB medium ENDM MACRO SLOWB ENDM ENDIF Programs macros for GTxxx and PTxxx MACRO PROGRAM The header of all the programs PROGRAM 1 DEFINE SI ENDM 9 9 OpenCIM OpenCIM Programming User Manual 0201 MACRO PRO PROGRAM G DEFINE SET STARTSYNC ENDM M
49. a information on the OpenCIM Device Drivers refer to Chapter 8 DD Loader Other icons that pertain to these modules will be introduced and discussed in the relevant sections User Manual 6 1 OpenCIM 0201 Operating the CIM CIM Manager The CIM Manager program centrally controls all the activities of the OpenCIM cell OPEN CIM MANAGER Ol x Eile Utility Programs Window View Help ee l o H a E r E ogle ESHED Order Part Total Done Device Action ROBoTEC CIM TIME 00 00 PLCSTATUS MN For loading the work order press START button Graphic Display view Program View Leaf View Pallete View Order View Storage View Device et 7813980 0 lt 0 A IN 3 SEU TRACKING LOCATION C OpenCIM32 DEMO WSO Figure 6 1 CIM Manager Screen Modes of Operation The CIM Manager can operate in either of two modes Simulation Mode the CIM Manager does not communicate with device drivers This mode does not require either hardware or device drivers Real Mode the CIM Manager communicates with all device drivers whether or not hardware is in use This mode requires that all device drivers which are needed for a specific application for a specific product order be loaded so that the CIM Manager can transmit and receive messages Since the CIM Manager affects operation of the CIM cell hardware by communicating with the device drivers and not directly with the hardware the CIM Manager can oper
50. a short series of Controller Configuration options Refer to the ATS Reference Guide provided with your ACL controller for complete instructions on configuring the controller Once you have confirmed the configuration ATS will perform the configuration procedure You can ignore the message about the missing SETUP PAR parameter file When the gt prompt appears press Shift F10 The ATS Backup Manager screen opens Make the following selections and entries e Backup directory C opencim microcim wsi1 roboti Make sure the path correctly shows the working directory defined during the configuration as shown in this example e Backup Restore ALL Use the arrow keys to highlight ALL and press Enter e During Restore ERASE Use the arrow keys to highlight ERASE and press Enter e File name all Type ALL and press Enter Press Enter again Press F5 to RESTORE from disk Press Y to confirm all prompts to overwrite and erase User Manual 4 8 OpenCIM Installation 0201 Robot Positions The actual location of robot positions will differ depending on the actual stations machines and devices included in the OpenCIM installation You will therefore need to record teach new coordinates for the positions which were downloaded to the controller The following procedure is valid only for ACL controller types A and B For other controllers refer to the documentation and software installation instr
51. be sure to select Create Menu Setup and Create Menu ACL DMC File in order for the change to take effect Allows you to create a new object from the New Object Menu Allows you to delete an object in the Virtual CIM cell Allows you to pick an object and drag it through the cell The system automatically creates a Windows program group that contains all the icons you need in order to operate the CIM cell defined by the Virtual CIM Setup Prompts you to confirm the overwrite of the SETUP CIM file For full details refer to Chapter 10 Creates a file WSn INI for each station e g WS2 INI SE C WINDOWS Start Menu Programs OPENCIM DEMO File Edit View Go Favorites Help gt au Y BB alaj Xx Back Forward Up Cut Copy Paste Undo Delete Properties Address 3 C AWINDOWS Start Menu Programs OPENCIM DEMO y y o oo A gt F 2 a pa CIM Manager Graphic Loader of Loader of Loader of WS3 BERN CIm Display WS WS2 DEMO Q X Loader of Open CIM Virtual CIM WS4 Help Setup Loader of WS4 Ink Shortcut Modified 07 01 01 12 08 Size 376 bytes 407 bytes E My Computer Figure 7 14 Program Group Created by Virtual CIM Setup Prompts you to confirm the overwrite of the DEVICE DMC file For full details refer to Chapters 8 and 10 Creates a subdirectory named ROBOT on every workstation at which a robot is defined The files in this directory provide the basis for ACL programming and
52. can be edited by the user Refer to the section on ACL programming in Chapter 8 7 14 OpenCIM 0201 View Menu The options in this menu are similar to those in the View menu of the Graphic Display and Tracking module For full details refer to Chapter 6 Show Names Displays the names of all devices in the scene Show IDs Displays the device ID numbers Show Positions Displays the position coordinates of all devices Drag 3D Frame Allow you to drag the cell Camera Top Displays the overhead view of the scene Redirect Camera Allows you to select a different focal point in the scene Scene Origin Displays the scene origin e g coordinate 0 0 of the room Limitations The Virtual CIM Setup allows you to construct all sorts of CIM cells although some configurations would be difficult or even impossible to actually operate To ensure your success in operating a Virtual CIM cell create your cell in accordance with the following guidelines e Use only one conveyor in the cell e Use no more than eight stations around the conveyor Tutorial In this tutorial you will learn to create and run an OpenCIM cell which contains three stations e In the first stage you will create a graphic CIM cell using the Virtual CIM module e In the second stage you will define and operate the CIM cell using the CIM Definition and CIM Operation modules You will also use the Graphic Display module to view your CIM cell in operation User Manual
53. circumstances Do not touch or tamper with the power supply inside the PLC near the conveyor motors Do not tamper with the switch and connector box for the 100 110 220 240 380V AC power supply depending on device 3 3 OpenCIM Safety 4 Installation The OpenCIM system is normally installed in the following order 1 Hardware assembly 2 Wiring connections including network hardware 3 Software installation including software protection keys and network setup 4 Teaching of robot positions 5 Checking and adjustment of devices for standalone and system operation OpenCIM hardware configurations vary This chapter presents the basic guidelines for setting up CIM equipment Additional installation instructions will be provided separately for the specific equipment and configuration of your OpenCIM cell Hardware Installation Before installing the OpenCIM examine it for signs of shipping damage If any damage is evident contact your freight carrier and begin appropriate claims procedures Make sure you have received all the items listed on the shipment s packing list If anything is missing contact your supplier For personal safety and sufficient access to the stations from all open sides a free area of at least one meter around each station is recommended Be sure you comply with all safety guidelines and warnings in the user manuals supplied with the robot controller and other devices Some stations may
54. code on a label on the CD It allows Intelitek to track software that has been purchased What do I do if I do not have a CD key When prompted to enter the CD key during the software installation enter the word evaluation This will allow you to install the software for a trial period What is a PC specific code This is a code generated by the software It is unique for each PC and each installation of the software This code allows Intelitek to generate the unlock code for the PC on which you installed the software The PC specific code is displayed in the Registration dialog box What is an unlock code This is a code that allows you to use the software after the evaluation period expires You need to send your CD key and PC specific code to Intelitek We will reply with the unlock code for the software you purchased How do I install and register the software on more than one PC Repeat the procedure for obtaining an unlock code as many times as necessary Alternately install the software on all PCs and make a note of the PC specific code generated on each PC You can then send us one email or fax listing all the PC specific codes You will receive unlock codes for each PC Vote this will be handled manually by our technical support and may take several days User Manual 13 3 OpenCIM 0201 Intelitek Software Licensing Why should I give you my personal details when I request the unlock code This will allow us to
55. control device driver interfaces between the OpenCIM network and a quality control device such as e ROBOTVISIONpro e Laser scan meter A device driver communicates with a QC device using an RS232 connection CAMERA Video Signal VIDEO MONITOR MM COMPUTER MONITOR KEYBOARD to CIM Manager RS232 Communication a A AN PC used as Controller for Vision System i mT Station Manager PC Figure 8 7 A QC Device Driver Passing Messages to and from a QC Device The QC device driver receives a command message from the CIM Manager specifying the type of quality control test to run It then performs the following steps e Activates the specified test on the QC device e g a Scan command for a ROBOTVISIONpro system e Receives the test result from the device e Compares the result to a range of acceptable values specified in the command message e Sends a pass fail status message back to the CIM Manager e If the result is fail the CIM Manager e Disposes of the defective part as specified by an ONFAIL process in the Part Definition table e Automatically reproduces the part Each QC test is defined as a separate process in the Machine Definition module The test type and acceptable range of test results may be specified in the Parameters field of the Part Definition table If the quality control device is connected to an ACL
56. corresponding function e Receives status messages from PLC control programs and broadcasts them on the OpenCIM network e Allows you to test and debug PLC control programs by sending commands from the Control Panel e Emulates pallets traveling on a conveyor in Simulation mode The PLC continually broadcasts the status of pallets on the conveyor as they move past stations This flow of status messages enables you to see a real time display of the conveyor in the Graphic Tracking module or on the Control Panel of the PLC device driver You can manually rearrange pallets on the conveyor while the CIM is running However if you manually change a pallet s payload an error will eventually result since the payload in the CIM Manager s database will no longer correspond The PLC operates in a demanding real time environment It tracks the status and destination of every pallet on the conveyor without requiring constant communication with the CIM Manager Each time a pallet arrives at a station the PLC functions autonomously to stop the pallet identify it decide if this pallet is needed at this station and if so alert the CIM Manager This sequence of events is continuous and is multiplied by the number of stations in the CIM In order to give the best possible response time the PLC functions independently of the CIM Manager When the CIM Manager needs a pallet at a station it sends a command message to the PLC The CIM Manager then w
57. define an order at any time but you must finish defining all machine processes and subparts used in the order before you submit the order for production Each row in the Manufacturing Order table represents a total quantity of a particular part which needs to be manufactured on the specified date so that all customer orders are filled User Manual 0201 5 25 OpenCIM Preparing for Production CIM Utility Programs CIM MAP C OpenCIM32 DEMO DATA Figure 5 10 Manufacturing Order Screen Tool Bar You can switch to the other order forms by clicking the appropriate tab The following buttons apply only to the Manufacturing Order table Any changes you make using these buttons will not be stored on disk until you click Save Adds a blank row to the Order table Saves the selected Customer Order to the database Auto resizes the part list columns Prints the Manufacturing report Prints the A Plan report for the last manufacturing order created For further details see A Plan Report later in this chapter Creates the selected manufacturing order its A Plan and saves it to the database User Manual 5 26 OpenCIM Preparing for Production CIM Utility Programs 0201 The fields described below compose the Manufacturing Order table Part Name The name of the products to be manufactured This field corresponds to the Part field on the Part Definition form Right click in the Part Name column to open the product list
58. driver OR e Check if the ACL program or CNC script that sent the message is using an invalid device ID ID OR e Incorrect assignment of a device to a device driver in the file VC2 MAP OR e The device ID on the device driver command line is incorrect OR e Define the unrecognized device using the Setup module OR This location has not been assigned to a robot e Use the Setup program to make this assignment The file SETUP CIM is missing from the working directory e Copy a backup version of this file to the working directory OR e Run the Setup module to create a new setup file from scratch Unable to transfer this part to its next destination e No path has been defined between the part s current location and its next destination Use the Setup module to link these two locations OR e Internal Error Call Intelitek technical support Cannot move part because its destination location is already occupied e Internal Error Call Intelitek technical support The robot has received a command to continue an operation that it has not started e Add the Move command to the Part Definition table to have the robot grab the part first Invalid Storage Device A request was received to retrieve a part from a location that 1s not a storage device e Use the Setup module to define the target device as a storage device OR e Use the Part Definition module to change the target device to be a valid storage device This part is not av
59. e The effects of alternative production schedules e What if analyses For example OpenCIM can help answer questions such as Is it more efficient to do a quality control check at the end of each operation or just once at the end of the manufacturing process With OpenCIM you can use a simulation mode to easily test both methods and then observe the results Instructors who want to demonstrate automated production techniques using the OpenCIM system System Administrators System administrators in charge of installing maintaining and troubleshooting the OpenCIM system will want to become familiar with all aspects of this manual 1 3 OpenCIM Introduction How to Use This Manual The OpenCIM software can be operated and used fully without OpenCIM hardware Therefore the emphasis in this manual is placed on the use of the software This manual assumes all users are familiar with the following topics e Safety and basic operating procedures associated with robots CNC machines and all other equipment in the CIM environment e Basic operation of MS Windows System administrators and advanced users should be familiar with the following topics e Robotic programming using the ACL language e Controlling and operating machines e g CNCs e RS232 communications e PC LAN administration operation and troubleshooting e Setting up programmable logic controllers PLCs Even if you will not be using the software in conjuncti
60. end of the PUT the robot is empty and it waits in the Free Movement Zone for the next GET operation Overview of a Pick and Place Command The CIM Manager tells a robot to move a part template from one device at a station to another by sending a pick and place command to the appropriate ACL device driver The device driver tells the controller to run the ACL programs GET and PUT that are associated with the locations specified in the pick and place message Each device has a GET program associated with 1t which tells a robot how to move in order to pick up a part at this location Similarly each device has a PUT program which tells a robot how to place a part at this location The names of these ACL programs take the form of GTxxx and PTxxx where xxx 1s the ID of the device The device driver tells the controller to run the appropriate GTxxx and PTxxx that are associated with the locations specified in a pick and place command Each GET program is dedicated to picking up an object from a single location Each PUT program is dedicated to delivering an object to a single location In order to move a part from any location at a station to any other location all GET and PUT programs are designed to be used together in any combination For example to move a template from the ASRS to a pallet waiting on the conveyor a pick and place command would specify running the following ACL programs e GT002 Take template from ASRS 002 ASRS device
61. keep you informed about products upgrades and services available for your system and software It will also allow us to help you in case of a lost license How can I recover the unlock code after a disk crash or other system failure Once you have restored and reactivated your PC reinstall the software If it resumes operation in Evaluation mode follow the procedure for obtaining an unlock code Include a comment explaining why you need a new unlock code Note this will be handled manually by our technical support and may take several days How can I extend the evaluation period The 30 day evaluation period begins as soon as the software is installed Reinstalling the software on the same PC will not renew the evaluation period Under certain circumstances we will extend your evaluation period Use the Get unlock code option in the Registration dialog box to request a time extension Be sure to send us your CD key PC specific code and the reason for your request After approving your request we will send you an unlock code that will extend the evaluation period When you receive the unlock code do the following e Enter it in the Registration dialog box e Select the option to Extend the Evaluation Period e Select Unlock User Manual 13 4 OpenCIM 0201 Intelitek Software Licensing
62. module to increase this machine s part capacity OR e Internal Error Call Intelitek technical support Undefined process e Add this process to a suitable machine using the Machine Definition module OR e Modify the Part Definition table to use a valid process No template buffer has been defined for this station e Use the Setup module to add a buffer Process cannot be performed because the machine is not defined in the file SETUP CIM e Use the Part Definition module to specify a different process in the Part Definition table OR e Use the Setup module to define this machine Inconsistent value in the inventory database file STORAGE DBF 11 10 OpenCIM Errors and Troubleshooting Code 9030 9031 9032 9033 9034 9035 9036 9037 9038 9039 9040 9041 9042 9043 User Manual 0201 Description and Solution e Rebuild the storage data by adding the INIT switch to the CIM Manager command line CIM EXE OR e Check the CIM Manager s INI file usually OPENCIM IND to ensure that the parameter CimDataDir inthe General section is the same as that in the INI file for the Storage Definition module e If you want to restore a known good copy of the file STORAGE DBF click on the Refresh Storage icon on the Program Manager screen or manually copy this file from a backup Machine not defined in file SETUP CIM e Use the Machine Definition module to set up this machine The requested
63. of a machine s features e g providing error correction during the download The commands required to invoke a machine s downloader are inserted into a DOS batch file The last command in this batch file creates a flag file which signals that the download is complete The CNC device driver automatically deletes this flag file each time it invokes the batch file To build this batch file and direct the device driver to use it do the following User Manual 8 7 OpenCIM 0201 OpenCIM Device Drivers 0 Write a batch file named CNCL BAT which calls the utility downloader as shown in the following example Procedure DLOADG EXE 1 2 ECHO Task Loaded gt C OPENCIM32 WS3 TASK CNC Creating a Utility for y f ton sn Downloading G code When the CNC device driver calls this batch file it specifies the following two parameters which appear on the first line of the batch file above e The G code file to download which includes the full DOS path e The memory region within the CNC s RAM that stores this G code program Define the following parameter entries in the CNCDriverDefinitions section of the INI file for this CNC device driver Loader C CNC_L BAT TaskLoadedMark C OPENCIM32 WS3 TASK CNC When these parameters are defined they tell the device driver to use the specified download utility program instead of its internal downloader Set up a PIF file to run the downloader bat
64. of the local INI file To manually start a CNC device driver from the Program Manager e g to run the CNC Control Panel for troubleshooting select the icon for the appropriate CNC machine The following examples assume that the CNC device driver is being invoked from the Loading section of the CNCVD1 INI parameter file For example to run the CNC Device Driver for CNC machine 23 use Load4 C OPENCIM32 BIN CNCDriver EXE CNCVD1 INI 23 COM 3 CNC Device Driver Status Window The Status window appears while a device driver is running It displays status and error messages debug information and output from the following sources e CNC script programs e ACL programs e Quality control devices e PLC programs Generating a CNC Log File The CNC log file facilitates debugging and troubleshooting It captures the results of each operation performed by the device driver that are displayed in the Status window This information is written to a file called CNC_DeviceID PRT where Device ID is the 3 digit device ID number of the CNC machine e g CNC_023 PRT User Manual 8 5 OpenCIM 0201 OpenCIM Device Drivers PULSBIT 0x500 0x0 00001000 500 OPEN DOOR DOOR IS OPENED WAITBIT 0x500 00000010 10000 Condition is true PULSBIT 0x500 0x0 00010000 500 CLOSE DOOR DOOR IS CLOSED WAITBIT 0x500 00000100 10000 Condition is true
65. pallet has arrived at the ASRS station CIM Manager Robot Controller Use robot to remove a template with a cube from storage and place it on the pallet Robot Controller gt CIM Manager Template is in place on pallet CIM Manager gt PLC Release this pallet from the ASRS station Stop this pallet when it arrives at the CNC station User Manual 2 25 OpenCIM 0201 System Overview Message Source Message Message Content Destination Command messages in normal typeface Status messages in italics PLC gt CIM Manager Pallet with cube has arrived at the CNC station CNC Station CIM Manager Robot Controller Use robot to remove template from pallet and place it on buffer of CNC Station Robot Controller gt CIM Manager Template with part is waiting on buffer of CNC Station CIM Manager gt PLC Release pallet from CNC station CIM Manager Robot Controller Use robot to place part in CNC machine Robot Controller gt CIM Manager Part is in CNC machine CIM Manager gt CNC Machine Use the CNC machine to ream a hole in the cube to form a box CNC Machine gt CIM Manager Process complete Box ready CIM Manager Robot Controller Use robot to place box on template in buffer CIM Manager gt PLC Stop next empty pallet at CNC station Robot Controller gt CIM Manager Box is in place on template PLC gt CIM Manager Empty pallet has arrived at CNC station CIM Manager Robot Controller Use robot to place template with box on pallet
66. perform a certain function The robot then waits for a response Only after the CNC responds does the robot s ACL program continue execution The following scenario describes how a typical robot and CNC machine interact when the robot inserts and removes a part from the machine e The robot waits while the CNC machine opens its door and vise e The robot enters the machine It holds the part in place while the machine clamps the part in its vise e The robot exits the machine and signals the CIM Manager that the CNC machine is ready to be activated e The robot waits outside the machine until it receives a signal from the CIM Manager that the machine is finished e The CNC opens its door and waits until the robot has grasped the part before it opens its vise e The robot removes the part and takes it to the next location While the CIM Manager could conceivably coordinate the above interaction between a robot and a CNC machine it is more efficient for the ACL controller to do this This section describes how to write ACL programs that communicate with script programs found in the CNC device driver You should already be familiar with OpenCIM ACL programming before continuing See ACL Programming for OpenCIM for more information The CNC synchronization mechanism is actually a specific case of how you can send command and status messages to perform OpenCIM operations It is possible to have two robots attached to a single A
67. presents a control panel which allows you to e Observe the command and response messages on screen as they are sent to and from a device e Issue commands interactively to a device and observe its responses on screen e Capture all commands and responses in a log file if you want to analyze the behavior of a device Parameters which control the operation of each device driver e g network polling frequency are found in the device driver s configuration files ACLVD1 INL CNCVD1 IND You can view and change these parameters by editing this file with a text editor User Manual 2 19 OpenCIM 0201 System Overview ACL Device Driver The ACL device driver communicates with an ACL controller that controls robots including the ASRS This device driver receives command messages from the CIM Manager to perform robot operations and other ACL tasks The ACL device driver translates these requests into commands to run the corresponding ACL programs residing in the ACL controller When the controller has finished moving the robot it sends a confirmation message back to the device driver which forwards it to the CIM Manager The ACL device driver uses an RS232 port on the Station Manager PC to communicate with the ACL controller The primary operation performed by a robot is pick and place taking a part from one location source and placing it at another location target For example a common pick and place operation involves taking a part f
68. report Select a machine from the machine name drop down list The names that appear in the list are defined in the Virtual CIM Setup For further information see Edit Menu New Object in Chapter 7 Machine Process Table The data fields above the table are also displayed as columns in the table Their descriptions are provided below Machine Name PROCESS GS Note A descriptive name which uniquely identifies the machine You can edit examine the record for a specific machine by selecting that machine name from the drop down list in the toolbar All machines that are defined in the Virtual CIM Setup appear in this list The name of a production process that can be performed by this machine A Process Name can only be used once for a given machine The name should be easily recognizable to CIM users and may contain the characters A Z 0 9 and underscore _ but no spaces This Process Name is assigned to a part in the Part Definition form in the Process field of the Part Processes Table Assigning a process to a part instead of a machine can have advantages when there are two or more machines capable of performing the same process Having more than one machine capable of performing a given process allows the CIM Manager to select the machine which can process a part most efficiently and redirect production if one machine fails For different machines that can perform the same process you should enter the same proc
69. ribbon cable from the I O box through one of the open slots on the controller s rear panel e Plug the ribbon cable connector into the I O connector which is located between the controller s power motor switches and transformer Connect the robot to the controller 4 Connect the teach pendant to the controller Most ASRS systems are pre assembled units that have to be placed near a conveyor station so that pallets can be loaded unloaded If you customize the ASRS make sure that the tending robot can reach all relevant elements and optimize the layout with respect to the tending time of the robot Refer to the instructions provided with your ASRS and or OpenCIM cell Barcode Reader The standard Barcode Reader is normally mounted within robot reach on the conveyor next to the ASRS stop station in order to check outgoing and incoming template IDs It requires a 5 6VDC power supply and a RS232 connection either to the Station PC or to the robot controller Refer to the instructions provided with your barcode reader and or OpenCIM cell Pneumatic Devices Pneumatic devices in a station pneumatic door fixtures caliper air blows etc including position sensors are normally interfaced through the I Os of the robot controller They can also be User Manual 4 2 OpenCIM Installation 0201 controlled by a separate PLC if requested by the customer In any case pneumatic devices require the appropriate supply of compressed and conditione
70. robot s gripper in a machine and on storage racks Load parts into the ASRS and into any feeders Turn on all hardware PCs controllers CNC machines etc Make sure all PCs have been activated At each Station Manager PC click Load Station Choose the mode in which you want to load the DDs and click the Green button At each station home the robot and initialize all equipment Start the Graphic display in PC Graphic At the CIM Manager PC do the following e Click CIM Manager e Optionally click the Scheduler e Click the Green Load button and then to commence production click Run De You can turn on OpenCIM workstation PCs and hardware in any order There Note User Manual 0201 is no mandatory boot up sequence You can also reboot a PC as long as it is not in the middle of an operation or communicating with the CIM Manager If you reset a PC you do not need to reset other workstation PCs connected to the OpenCIM network When the PC boots up its applications will resume communication with other PCs on the OpenCIM network 6 21 OpenCIM Operating the CIM 7 OpenCIM Setup AY This chapter is not applicable to OpenCIM Intro Note Virtual CIM Setup The Virtual CIM Setup is an interactive graphic module that allows you to create a simulated CIM cell The Virtual CIM may contain the actual elements and CiMSetup Connections of a real CIM installation or it may define a theoretical CIM The first
71. the first step in the troubleshooting procedure is to identify the problem and its source The OpenCIM system has been designed to simplify troubleshooting procedures by using the CIM Device Error dialog box When troubleshooting pay careful attention to the following general warnings Have all personnel remain clear of the robot envelope CNC machines Quality Control machines and all other equipment when power is applied The problem may be intermittent and sudden unexpected robot or equipment motion could result in injury Have someone ready to operate an emergency Stop switch in case it becomes necessary to shut off power to the robot s CNC machines QC machines etc Never reach into a machine or robot to actuate a switch because unexpected machine or robot motion could occur causing injury Remove all electrical power at the main and turn off all switches before checking electrical connections or any inputs outputs which could cause robot or machine motion There are several cases of alteration that can occur to the OpenCIM programs including extreme environmental conditions electromagnetic interference improper grounding improper wiring connection and unauthorized tampering If you suspect the memory of the PC has been altered scan the disk with the appropriate utility Problem Solution 1 User Manual 0201 If you receive one of the e Reset your PC and perform a disk scan following messages General P
72. the pallet and place it on a station buffer The empty pallet is then released and can continue on the conveyor ready to pick up another template Conveyor Lights Red and green lights at each conveyor station indicate the following Green On Station is idle waiting for a pallet to arrive Red On A pallet has been stopped for use at this station Flashing Red An error has been reported at this station by an OpenCIM device driver e g robot impact Emergency button pressed Flashing Red at All All stations have stopped because someone has pressed the Stations Emergency Stop Button ACL Robots and Controllers CIM robots move parts within a station secondary material handling and perform assembly operations Robots vary in speed payload accuracy range of movements degrees of freedom working envelope horizontally or vertically articulated and drive mechanism DC servo AC servo or pneumatic The following Intelitek robots are capable of performing machine tending and assembly tasks Each of these robots connects to an ACL controller e SCORBOT ER 5 SCORBOT ER 5plus e SCORBOT ER 7 e SCORBOT ER 9 e SCORA ER 14 e PERFORMER MK3 e Performer S V3 with Controller BRC User Manual 2 11 OpenCIM 0201 System Overview RS232 COMMUNICATION ATS Advanced Terminal Software ACL Advanced Control Language Teach Pendant Figure 2 7 Robot Controller Teach Pendant and Station Manager PC The controller for Intelit
73. the various control elements as an integrated whole User Manual 2 12 OpenCIM System Overview 0201 The OpenCIM system consists of various software modules which perform command control and monitoring functions e Virtual CIM Setup Software e CIM Manager Software with integrated modules Storage Definition Machine Definition Part Definition MRP etc e Device Managers device drivers located on Station PC e Conveyor Manager PLC device driver located on a Station PC e Graphic Tracking integrated in CIM Manager and or as external module OpenCIM uses a distributed control strategy as follows e Each Station Manager PC runs a set of device drivers that control the devices at its station e APLC controls the operation of the conveyor e The CIM Manager provides the highest level of control and integrates the activities of the entire cell It sends command messages to the various device drivers via the network These units attempt to execute the command and respond with status messages describing the results The following figure illustrates the flow of information in the OpenCIM system User Manual 2 13 OpenCIM 0201 System Overview Cstorder DBF Customer DBF Part_DEF DBF Part_PRC DBF Order DBF Orderlst DBF Process DBF Purchase DBF Supplier DBF Device DMC Croan Storage DBF CIM_REP DBF s 0 Os y Y Conveyors Robot CNC Quality Control Device PLC Controller Machine Legend O
74. when editing an INI file User Manual 0201 Only lines that begin with valid parameter names are read i e only parameters that belong in that section all other lines are ignored If you misspell a parameter name it will be ignored A leading space at the beginning of a line will cause that line to be ignored Do not insert the same parameter more than once in a section there is no guarantee as to which value will be used You can insert blank lines in an INI file to group related parameters and to set off sections 10 19 OpenCIM Inside OpenCIM e You can create a comment line by inserting an extra character at the beginning of a line by convention the semicolon For example if you want to try a new text color but also keep the original value for reference you could do the following MainWindowTextColors MainWindowTextColors 0 255 0 0 255 255 The table below lists all OpenCIM parameters that you can set Note that some of the values in the table are internal system parameters which should only be changed under the direction of Intelitek technical support The table is divided into the following sections INI Parameter Default Settings OPENCIM INI General CimLibDir C OPENCIM32 LIB CimDataDir C OPENCIM32 DATA CimWorkDir C OPENCIM32 data CimReportDir C OPENCIM32 DATA Networking CimMapPath BIN MAP INI User Manual 0201 Description The parameters
75. whether it is running on the same PC or on a PC connected via a LAN OpenCIM uses a LAN to exchange information between software modules running on separate computers When the following software modules are configured to run on separate PCs the LAN allows them to exchange commands and status information in real time e The CIM Manager software e The Device Driver softwares User Manual 2 23 OpenCIM 0201 System Overview The Graphic Tracking PC Any PCs running user supplied applications that are interfaced to OpenCIM OpenCIM uses the LAN to Send commands from the CIM Manager to Device Drivers e g data such as part ID task to perform machine to use etc Send real time production status messages from Device Drivers to the CIM Manager Allow Device Drivers to retrieve control programs e g G code stored on the server Send real time production status messages to the Graphic Tracking software Transfer CIM messages between different device drivers Transfer CIM messages between devices and a user application running on a networked PC Perform central backup and restore of all PCs attached to the LAN OpenCIM can use any LAN using a TCP IP protocol which is supported by Windows for Workgroups to transfer files and send real time messages For example an existing Novell LAN could be used to communicate with a remote PC running the Graphic Tracking module RS232 An RS232 interface also known as a serial port or com po
76. you do not have a PC available for the temporary transfer operation return the license to Intelitek You will be able to retrieve the license by following the standard procedure for obtaining the unlock code User Manual 13 2 OpenCIM 0201 Intelitek Software Licensing Transfer a license from one PC source to another PC target e On the target PC install the software and get the PC specific code from the Registration dialog box e On the source PC open the Registration dialog box Enter the PC specific code of the target PC and Select Transfer The software on the source PC will generate a new unlock code for the target PC and will remove the license from the source PC e On the target PC enter the new unlock code in the Registration dialog box Return a license to Intelitek so you can retrieve it later Use this procedure when you need to remove a software license and do not have a target PC available e From the Registration dialog box select Remove the License and click Remove The software will generate a unique Remove code e Send the Remove code and your CD key to Intelitek using one of the methods described above email website fax phone We will confirm the codes and update our licensing registration records e When you are ready to retrieve your license install the software if necessary and follow the instructions for obtaining an unlock code FAQs Frequently Asked Questions What is a CD key This is the
77. you have defined a name for your new CIM cell select Edit New Object to open this menu Virtual CIM Setup J General E Manager E Workstation E Conveyor A Table E Computer A Text Device Drivers Storage Robots Machines Quality Control Materials User Objects User Defined Robots Cancel Figure 7 2 Object Item List The CIM Setup menu is a list containing all the elements which can be included in the Virtual CIM Setup Double click on the button of a category in order to expand its list of elements After you select an object move the cursor into the graphic scene The cursor changes to a cube Point and click on the location where you want to place the object You may need to wait a moment for it to appear do not double click Conveyor Since the Virtual CIM conveyor is the most difficult of the elements to place in the scene this section contains detailed procedural instructions for creating a conveyor If you are replicating an actual CIM cell you will need to know the exact dimensions of the conveyor 1 From the CIM Setup menu select General Conveyor You will be prompted to select Normal or Enlarged e If Conveyor Type Normal default is selected each grid represents about 20 cm A typical OpenCIM conveyor measures 3 m X 4 m with straight segments of 1 40m which can fit onto this grid e If Conveyor Type Enlarged is selected the grid resolution is increased which allows you to pla
78. you read through this chapter it is recommended that you perform the Procedures These tutorials will help you become familiar with using the OpenCIM software The examples shown in this manual are from the OpenCIM Simulation DEMO icon group You however will probably work from the OpenCIM icon group which was specifically created for your installation User Manual 5 1 OpenCIM 0201 Preparing for Production CIM Utility Programs Machine and Process Definitions When you define a machine you actually define the specific process a machine will perform Machine names are usually predefined in the Virtual CIM Setup and only need to be selected from the Machine Name drop down list The process name enables the CIM Manager to determine which machine is capable of performing the specific work required to produce a part as defined in the Process field in the Part Process Table in the Part Definition form If two machines that are capable of performing the specific process are available the CIM Manager tries to optimize the use of these two machines to complete the process see Optimizing the Scheduling in OpenCIM in Chapter 9 The Machine Definition form lets you view any machine that has been defined for the system You can define new or modify existing processes for the machine to perform A machine record contains the machine name and one or more defined processes process record Each field and the control buttons associated w
79. 0 0 0 Off 0 Off 0 1 1 On 0 Off 1 0 1 On 1 On 1 1 1 On 1 On Examples PulsBit PORTO BVO 10000000 30000 This example turns on control line 7 that is connected to the PC s output port 0 for 30 seconds The remaining bits in the port retain their current values during and after execution of PulsBit since their values in the bit mask are 0 PulsBit PORT1 BV1 V5 100000 The bits in output port 1 are ORed with the bit mask in variable V5 The result is written to output port 1 and the corresponding control lines are set on and off for 100 seconds Afterwards the original value of output port 1 is restored PulsBit PORT1 BV1 P4 P7 The bits in output port 1 are ORed with the bit mask in parameter variable P 4 The result is written back to output port 1 and the corresponding control lines are set on and off for a period of P7 milliseconds Afterwards the original value of output port 1 is restored User Manual 9 38 OpenCIM 0201 OpenCIM Programming SendMsg SendMsg Sends a predefined message to another CIM entity Name SendMsg msg_to_sena Inputs msg_to_send e Index to predefined messages e10 9999 stored in VC2_WM DBF Purpose In a CIM environment a CNC machine must report its status to other CIM entities such as e The CIM Manager which handles production scheduling and tracking e Devices which are dependent on this machine e g the robot that tends the machin
80. 01 Analysis Report The Analysis Report is detailed information on the status of the entire system and is geared for the more experienced user The report contains a Log file summary the start and the finish of each action See below for an example of an Analysis Report Part Name Device Action Sub Part Name Target Index Status EXIGLASS_S ROBOT1 Pick EMPLATE 010001 RDR1 Start 11 13 48 Place BOT1 Pic EMPLATE 010001 ish 11 13 50 Place R1 TEMPLATE AS ee ee The following is a description of each of the columns in the Analysis Report r1 Jesse CYLIND rl r1 Heading Description Part Name The name of the part as defined in the Part Definition form or in the Virtual CIM Setup Device The name of the robot machine or conveyor that performs the operation as defined in the Machine Definition form Action Robot pick and place Assembly base and pack Conveyor deliver or machine the name of process as defined in the Machine Process Table Subpart Name Robot the number of a template or the name of a part Machine the name of a part or material Target Where the process should be performed Index Indicates the exact location on a device which has more than one location for a part Status The status of the action start or finish Time The time the action started or the time the
81. 5 8600 Fax 603 625 2137 e mail info intelitek com web site www intelitek com Table of Contents 1 Introduction VADO E M I ta cas sy hea teed hoes E DIA Ia aca 1 1 A bott OpenCCM a aaa R R E EN A O con eacasve date Aes 1 2 About This Mandalicias ita salad N 1 2 How This Manual is Organized pd 1 2 Who Should Use This Manual nielisi istegi aa e a iania 1 3 How to Use This Manual cccccccccssssssececcceceesensseceseccesenessneceeesecsesesenssaeeeseeeens 1 4 2 System Overview Opee M BB feist 6 816 Wenn meee Ree RR reer nee nn PORE ett ct UEE ao 2 1 Unique Peatures messi iii a airis 2 1 OpenCIM Additional Software Packages oonooncccnononooncnonoconccnnncnnncconcnnnncrnn cc rn nnnnos 2 2 Production Operations idad ds 2 3 OpenCIM Sample Application The Covered BOX ocoooccncoccccnocccononcnionnaconncconnncconnnos 2 3 Components of the OpenCIM Cell ceci aa 2 4 PUEDES ih AO SA ASS 2 5 Material Flow in the OpenCIM Ella did 2 6 ES eG NaS aa E es aah a A SEa SE 2 8 SOTA dada 2 9 ACE Robots ana Controls 2 11 Processins Mach INES tina rn 2 12 EMMA ee dad Ulloa a a N aaa eters er te ai 2 12 CIM Definition Modules sionista i 2 15 The CIM MARE A A E Sie AA 2 15 Th Station o A A anes eee es 2 16 PC Requirements in Opa A aes 2 16 Graphic Tracking iiiioniminid id lada 2 18 DG VICE DEE ds 2 19 ACE Device DAVE idas 2 20 NE Machine Device DAVE an 2 20 PLE Device Driyefi niontras eenn io Oise ee A
82. ACRO PRO PROGRAM P DEFINE SET ENDM MACRO END ENDGET END ENDM MACRO END_PUT END ENDM Controller MACRO GETID LABEL 1 READ ID IF SID GOTO ENDIF SET ENDM MACRO GETIDL LABEL 1 DEFINE IDL READ SID GRAM_GET The header of get programs Tel SI ST 1 GRAM_PUT The header of put programs Tet SI I 1 _GET tail of get programs tail of put programs D D protocol macros Get ID from D D to ID 2 SD 0 Check if the ID is zero invalid LI Get local ID for a not PCPLC program 2 SIDE IF SIDL 0 Check if the ID is zero invalid GOTO ENDIF DEFINE SET ENDM MACRO GETPAR 11 Get Parameter from D D PEND PDF FROM PDD PRINTLN READ SPAR 1 PRINTLN POST TO ENDM SPDD Controller manager protocol macros for global ID MACRO START Send start to manager PEND PDF FROM PDD PRINTLN PRINTLN SSTART SID PRINTLN POST TO PDD ENDM 9 10 SIDL hold the local ID instead of SID OpenCIM OpenCIM Programming User Manual 0201 MACRO FINISH PEND PDF FROM PDD PRINTLN PRINTLN SFINISH SID PRINTLN POST 1 TO PDD ENDM Send finish to manager MACRO END PEND PDF FROM PDD PRINTLN PRINTLN SEND SID 1 2 PRINTLN POST 1 TO PDD ENDM Send end to manager MACRO QC PEND PDF FROM PDD PRINTLN PRINTLN QC SID 1 2 PRINTLN POST 1 TO PDD ENDM Sen
83. AIL process The commands in this table are executed from top to bottom Processes that have a blank entry in their Subpart column operate on the last subpart listed previously For example in the figure below processes 3 4 and 5 all operate on the BOX subpart shown in line 2 Processes 7 and 8 operate on COVER 1 1 shown in line 6 Robot pick and place operations are not shown in the A Plan table The CIM Manager implicitly performs these operations when it needs to move a part from one station location to another e Aplan PART PROCESS PROD1 1 1 MAKE PROD1 1 1 1 GET PROD1 1 1 2 RDA PROD1 1 1 3 ONFAIL PROD1 1 1 4 LATHI PROD1 1 1 5 NEXT PROD1 1 1 6 TARGET 8 PHAN1 1 1 1 TARGET PHAN1 1 1 2 FREE PARTS TESTI I Check A SUBPART PROD1 1 1 BOx1 PHAN1 1 1 TEMPLET iol x TARGET INDEX DURAT PARAMETER 1 1 1 1 P 1 00 00 00 ASRS1 00 00 01 ASRS1 LATHE1 00 00 25 ASRS1 ASRS1 ASRS1 QUAN FIRST NEXT QUEU PRIO DUE TIME N OK Cancel al Figure 9 11 A Plan Table 9 71 User Manual 0201 OpenCIM OpenCIM Programming You can track the current status of production by watching the Program View screen on the CIM Manager PC This screen shows the commands that the CIM Manager executes to produce an order OPEN CIM MANAGER CIMLAB8 Eile Utility Programs Window View Help ioj x peuse tint e DA a Ele
84. B Numeric 5 PLNSTART Character 6 PLNFINISH Character 7 PLDURATION Character 8 ACTSTART Character 9 ACTFINISH Character 10 ACTDURATION Character 11 STATUS Numeric LEAFPART DBF File Structure 1 ID Numeric 2 NAME Character 3 ORDER_NO Numeric 4 DLIST Character 5 ACTION_POS Numeric 6 ACTION_SUB Numeric 7 ACTION_TYPE Numeric 8 STATUS Numeric CIMREP DBF File Structure 1 CODE Character 2 ORDER Character 3 ORDERSEQ Character 4 PART Character 5 PARTID Numeric 6 DEVICE Character 7 DEVICEID Numeric 8 ACTION Character 9 ACTIONID Numeric 10 SUBPART Character 11 SUBPARTID Numeric 12 WHICYH Character 13 INDEX Numeric 14 STATION Character XY N o o N 0 0 0 0 0 U e q ug 20 20 20 20 20 20 20 20 20 10 36 OpenCIM Inside OpenCIM 15 TIME Character 8 16 DATE Date 10 17 DURATION Character 8 Application to Report File Cross Reference Application Database File Name Report Name Report Template File Name Part Definition PART_DEF DBF Part Report part rpt PART_PRC DBF Subpart Report subpart rpt Machine Definition MACHINE DBF Machine Report machine rpt PROCESS DBF Process Report process rpt Order Entry ORDER DBF Order Report order rpt Storage Definition STORAGE DBF AS RS Report ASRS rpt ASRS CIM Manager CIMREP DBF Analysis Report Analysis rpt Created by CIM Manager and STORAGE DBF Location Status Locatio
85. Bit SetBit Modifies the bits of the specified output port SetBit portn maskl bo mask2 portn e Address of the output port to be 0x0000 OxFFFF modified maski An 8 character string containing 00000000 1 s and 0 s representing a bit 1 1111 J 11 mask typically the current value aa E de of output portn BVn A single character designating the gt AND bitwise operation to be performed OR XOR NOT An 8 character string containing 00000000 1 s and 0 s representing a bit 5 1111111 mask J v16 P16 Purpose The control lines of CNC machine are commonly mapped to bits in a PC s output port s When a bit is toggled on and off it controls the corresponding function on the CNC machine For example suppose bit 3 is mapped to the door on the CNC machine Setting bit 3 to one would close the door and setting it to zero would open the door By setting the appropriate bit s to the desired value the SetBit command allows you to control a CNC machine Function The SetBit command allows you to modify a set of bits in an output port in order to control the operation of a CNC machine The port n argument specifies the output port which contains the bit s that operate the control line s you are interested in setting Each I O port on a PC contains 8 bits mask1 can be set to either The current value of the output port BVn An a
86. C Command Parameters e g 500 R for a 500 millisecond delay Running a Command Use the mouse to scroll through the CNC Command List in order to find a Interpreter Program program Double click on a program name to run that program If the CNC machine is connected to the I O board in the PC you can observe the effects of a program by observing the line indicators in the PC Inputs and PC Outputs panels in the Control Panel In addition status messages and instructions generated by the program appear in the Status window PC Input Output Panel To display the PC Input Output Panel select from the main menu Operation Input Output Output Panel The Output panel allows you to observe and set the state On or Off of 16 CNC control lines Control lines may be hard wired to specific CNC functions Alternatively the CNC machine may be configured to activate a certain G code program associated with a control line Check the documentation of your CNC machine for specifics on the use of each control line The PC Output panel allows you to set CNC control lines on and off by clicking bits in the appropriate output port The layout of the panel reflects the way the control lines are mapped to bits in two designated PC output ports By using a mouse to click on the bits in the panel you can e Toggle the state of a control line User Manual 8 9 OpenCIM 0201 OpenCIM Device Drivers e Pulse a control line by clicking its bit waiting the des
87. CES QCL and DEVICES PCL 4 EPILOGn DNL You should not edit ACL object code by using the ATS utility or by backing up a program from a controller and modifying it Either of these methods would result in an ACL file that is very difficult to maintain Editing ACL object code i e an CBU file from the controller results in a program which is out of sync with the original DNL file This code is harder to read since all FDEFINE MACRO and INCLUDE statements have been expanded in the controller and all remarks have been deleted Note that the ATS utility can still be used for the following functions in the OpenCIM environment e Configure the controller e Back up and restore robot positions and downloaded ACL programs e Teach robot positions e Test a robot e Debug ACL programs by running them manually Adding a New Pick and Place Operation When you add a new device at a station e g CNC machine storage rack assembly jig etc you must write two new ACL programs GT xxx and PT xxx that enable a robot to pick up and deliver parts or templates from this device A program which directs a robot to pick up a part template from a specific location is called GT xxx The xxx represents the unique three digit device ID for a source location that is found in the file SETUP CIM Similarly a program which directs a robot to deliver a part template to a specific location is called PT xxx Once again xxx represents a unique devi
88. CL controller In this case you would use the ACL system file CIMSYSM instead of CIMSYS You would also need to adjust the sample code presented in this section to distinguish between the two robots These changes are beyond the scope of this discussion The following diagram illustrates the sequence of commands that are executed when a robot inserts a part into a CNC machine The commands shown in step 2 below are generated by the robot s PUT program for the CNC machine User Manual 9 53 OpenCIM 0201 OpenCIM Programming CIM Manager 2 activate CNC machine CNC Device Driver Open door Open vice Robof places pari in vte Close vice Robot opens grpper ta release the part Close door G Use robot to insert part in CNC ACL Device Driver Sync commands generated by robot s controller to PUT a part in the CNC Command Sequence When the production plan calls for machining a part the CIM Manager sends a single command telling the tending robot to insert the part in the CNC machine Y The PUT program in the robot s ACL controller sends a series of commands to open and close the door and the vise on the CNC machine so the robot can insert the part S When the robot signals that the part is in place the CIM Manager sends an activate command to the CNC machine Figure 9 6 Sequence of Commands when a Robot Tends a CNC Machine The following table describes the dialog that occu
89. Cannot Open Com n User Manual 0201 Solution If your barcode is operated by an ACL controller verify that in your Part Definition form you entered the following PROCESS column READC PARAMETERS column STEMPLATETYPE In the Machine Definition form verify that the field List of Preloaded Programs is not empty Verify that the ACL controller is on Verify that the motors are on Verify that no other application is using the same COM port e g ATS ACL Off line Exit Windows and start the ATS using the correct COM port If the problem still exists refer to the ATS manual Start Windows and then start the ACL device driver If the problem still exists exit the device driver and verify the COM port in the ACL INI file This error message indicates that the device driver could not open the serial port on the Station Manager PC Possible causes include The port is in use by another application The port number is invalid One of the serial port parameters is invalid 11 7 OpenCIM Errors and Troubleshooting Error Messages Several errors shown in the list below are related to setup problems The Virtual CIM Setup stores its information in the file SETUP CIM Code 9001 9002 9003 9004 9005 9006 9007 9008 9009 9010 9011 User Manual 0201 Description and Solution Undefined Part Set up this part using the Part Definition module Internal Error e Call
90. DM ENDIF The file WS1 DNL contains sample ACL source code This is the type of file you would edit when you want to change the way a robot moves ACL System Programs The LIB ACL directory contains the file CIMSYS SYS This file includes system programs for Name Identity Explanation TP Run HOMES 1 Prepares the robot to work in the OpenCIM environment CIM 2 Reserved for future use RESET 3 Resets the variables and the programs CLEAR 4 Reserved for future use User Manul DD OpenCCM 0201 OpenCIM Programming Name USER1 USER2 USER3 USER4 OGRI FU CGRI FU PCPLC SREST AUTO INITC CY Note Identity TP Run 5 6 7 8 9 10 11 12 13 14 15 16 17 Explanation Attaches the vectors CIM and CIMB to the teach pendant User defined program User defined program User defined program User defined program Reserved for future use Opens the gripper Closes the gripper The ACL device driver runs this program when it receives an asterisk from the controller Diagnostic The ACL device driver runs this program in order to download OpenCIM parameters to the ACL controller Pick and Place The system reset program This program runs each time the device driver is loaded and the ACL controller is turned on This program is activated each time you load the ACL device driver If you want to m
91. File Type CHECKCOMMUNICATION CIMREPORT E IMSAF EXE IMSETUP EXE IMSIMUL EXE PARTDEF 1 PLCDRIVE EXE RVPDRIVE EXE J J W Z SCHEDULE EXE SCRIPTER EXE STORAGEMANAGER EXE ULSDRIVER EXE CIMCELL CIMCELL DATA ORDER CFG APLAN DBF BACK DBF CIMREP DBF E EAFPART D BF MACHINE DBF ORDER DBF PART_DEF D BF PART_PRC D User Manual 0201 BF Description Utility program for testing TCP IP communications Report Generator program OpenCIM safety device driver Virtual CIM Setup program Graphic Display Program Loader CNC device driver Edits database files Loader program for device drivers License program Laser Scan Meter device driver Machine Definition module CIM Manager module MRP module Part Definition module PLC device driver ROBOTVISIONPro Device Driver Scheduler Module Activates Graphic Display commands Storage manager module Laser Engraver Device Driver Generic name for a subdirectory containing all data for one particular CIM cell as created by the Virtual CIM Setup Subdirectory con
92. G code task has not been assigned to a CNC machine e Use the Machine Definition module to assign this task to this CNC machine Reserved for future use Reserved for future use Unexpected ONFAIL process e Use the Part Definition module to edit the Part Definition table so that ONFAIL only appears immediately after a quality control process No ONFAIL process immediately after a quality control test e Use the Part Definition module to edit the Part Definition table so that ONFAIL appears immediately after this quality control process Reserved for future use Error in A Plan Place command e Internal Error Call Intlitek technical support Error in A Plan Next command e Internal Error Call Intelitek technical support Reserved for future use The parameter ConPallet maximum of pallets is not defined in the file SETUP CIM e Add ConPallet assignment to SETUP CIM Cannot start the CIM Manager because it is already running on this PC e Switch to the window in which the CIM Manager is running Reserved for future use Invalid status message Received an unexpected quality control result from a non QC device 11 11 OpenCIM Errors and Troubleshooting Code 9044 9045 9046 9047 9048 9049 9050 9051 User Manual 0201 Description and Solution e Check an ACL program or CNC script that might be sending an incorrect message Reserved for future use Invalid status message A bar cod
93. General CimSetupPath CIMLAB8 SETUP SETUP CIM Networking CimMapPath CIMLAB8 SETUP MAP INI CNCDriverDefinitions pe ee gt ai RS232 parameters used by the CNC device e ones is UN driver when it downloads G code to a CNC StopBits 1 machine You must set these parameters to KONZOLE SNe match the RS232 settings on the CNC machine gt CNC Variables ue SACD Parameter variables used by CNC script v3 programs These variables are used to write V4 portable CNC script programs For further de information see ULS Device Driver in Chapter 8 V16 a These 8 bit values which range from 0 255 are assumed to be the initial state of the control lines of a CNC machine when the system is turned on m ae I O port addresses on a Station Manager PC that are mapped to the status and control lines of a CNC machine using a special interface card These values should match the jumper settings on the I O card DEBUG E n Protocol Y PLC Device Driver Settings General CimSetupPath C OPENCIM32 SETUP SETUP CIM See this parameter in the ACL section above PLCDriverDefinitions BS OMRON The type of PLC being used This value determines what communications protocol is used between the device driver and the PLC SimulationStations 3 6 1 2 4 5 7 In Simulation or Manual mode this parameter sets the order in which the stations appear
94. Graphic Display View Program View Leaf View Pallet View Order View Storage View Device Part Action Subpart Ready PROD1 1 PROD1 1 1 PROD1 1 1 PROD1 1 1 PROD1 1 1 PROD1 1 1 PROD1 1 1 TEMP1 2 TEMP1 2 1 TEMP1 2 1 TEMP1 2 1 TEMP1 2 1 TEMP1 2 1 TopBatch MAKE PROD1 1 1 PLACE TEMPLATE RENAME BOx1 NEXT LATH1 BOx1 RDR1 B0Xx1 GET B0Xx1 MAKE TEMP1 2 1 PLACE TEMPLATE RENAME BOX NEXT MILLI BOX GET BOX 2 1 1 P 2 00 0C SEU TRACKING LOCATION D Program FilestEshediopencin 7 Figure 9 12 Program View Showing A Plan Used to Produce an Order The elements of the Program View screen are described in detail in Chapter 6 User Manual 0201 9 72 OpenCIM OpenCIM Programming 10 Inside OpenCIM OpenCIM Loader DDLoader EXE The OpenCIM Loader automates the start up of the Device Drivers under Windows The Loader runs on each workstation PC in order to automatically start up the OpenCIM programs on these PCs OpenCIM Device Drivers Started by the Loader Station Manager PCs e Each device driver running on this PC You can set up the programs you want the Loader to run in an INI file that you specify on the Loader s command line In order to display the Path and Command Line columns of the Loader select Show All Columns from the File drop down menu Clicking on the Loader s icon on the Program Manager screen would thus start up all the programs listed in this IN
95. I file The Loader should be used to start up all device drivers belonging to the same workstation on each Station Manager PC CIH DDLoader olx File mt e Driver Simulation Load Path Command Line CIMSAF O Y ABINACIMSAF EXE ACLDRIWER 11 Mo ABINMACLDRIVER EXE ACLYD1 INI 11 COM 1 C LSMDRIVER 13 V ABINILSMDRIVER EXE LSMVD1INI 13 COM 2 C Figure 10 1 Setting Up an Icon to Invoke the Loader with its INI File The name of this INI file typically corresponds to the station number as follows Workstation Naming Conventions WS1 INI Settings for production workstations WS2 INI The Loader looks through the INI file for the section entitled Loading and runs the programs maximum eight specified Use a text editor to edit the command line for each program in this INI file User Manual 10 1 OpenCIM 0201 Inside OpenCIM The following example of an INI file shows the command lines invoked by the Loader General CimSetupPath SETUP SETUP CIM Loading Load1 BIN ACLDriver EXE ACLVD3 INI 31 COM 2 Load2 BIN RVPDriver EXE RVPVD1 INI 33 COM 1 Loader Command Lines Each device or controller that is connected to a Station Manager PC requires a separate device driver running on that PC It is possible to have a controller attached to a Station Manager PC that supports multiple devices e g a robot and a bar code reader attached to an ACL controller In this case o
96. LS SET VISE CLOSE END PROGRAM_PUT CNC1 SYNC FAST MOVELD CIM 260 IF PART 2 ORIF PART 4 GOSUB GIJIN ENDIF MOVED CIM 260 MOVED CIMB 260 SET DOOR 0 CNCREQ CNC1 OPEN DOOR WAIT DOOR OPEN MEDIOM MOVED CIM 261 SPLINE CIM 262 263 SET VISE 0 CNCREQ CNC1 OPEN VISE WAIT VISE OPEN EDIOM 268 M 271 SET VISE 0 CNCREQ CNC1 CLOSE VISE WAIT VISE CLOSE MEDIOM MOVED CIM 270 MOVED CIM 262 FAST MOVED CIM 261 MOVED CIM 260 MOVED CIMB 1 SET DOOR 1 CNCREQ CNC1 CLOSE DOOR WAIT DOOR CLOSE FINISH OPEN END END_PUT 9 59 OpenCIM OpenCIM Programming Using CNC Script Programs to Respond to an ACL Program When a CNC script program has completed an operation requested by an ACL program it must send back an acknowledgment to the ACL program The following script statement sends this acknowledgment and is explained below SENDSTR V1 RUN DROPN SENDSTR Sends the acknowledgment message to the robot s ACL device driver using the OpenCIM network vi A script parameter variable containing the destination address of the robot which is to receive this acknowledgment This variable is assigned in a parameter file e g CNC1 INI when the CNC device driver starts up RUN DROPN A command to run the ACL program DROPN which sets a semaphore variable indicating that the CNC door is open This ACL program name corresponds to the operation being perfor
97. M Inside OpenCIM File Type SEND EXE TERM_ACL EXE SETUP DIR ASRSB PRB ASRSSQ PRB BELT PRB LSB100CM PRI LSB150CM PR LSB20 PRB NOCONECG PR NOCONECT PR ROTARY_B PR SERVOG_C PRI XYTAB PRB SCC_BELT PRB SETUP PAR A T O W W WWW Ww TS BAT ERM MAC NOFF CBU PAR CBU PAR14 CBU PAR9 CBU PARMK2 CBU BIN C4DLL DLL CIMSHED DLL DBCREATER DLL ERSCPW32 DLL SCPBW32 DLL SCPBW32A DLL SCPW32 DLL SCPW32A DLL VBC4DLL DLL LICMANAGER INI OPENCIM HLP ACLDRIVER EXE APLAN EXE User Manual 0201 Description Utility program to send a command to an ACL controller ATS terminal emulation program used to interact with an ACL controller A data file used by the TERM_ACL program ACL parameter files Location of the Robot parameters Batch file to load the TERM_ACL EXE On Off program for the controller File containing parameters for the controller File containing parameters for Robot ER 14 File containing parameters for Robot ER 9 File containing parameters for Robot MK2 Subdirectory containing OpenCIM program files EXE DLL HLP ICO TRK VBX Object code files containing a shared library of Windows programs Help file The ACL device driver The A Plan program 10 6 OpenCIM Inside OpenCIM
98. Manual 6 19 OpenCIM 0201 Operating the CIM The Text menu allows you to select the kind of captions you want to include in the graphic display Only one kind of text can be selected at a time None No text Select None to remove the currently displayed caption You may then select another kind of text Note that there is no checkmark in the menu to indicate your selection Name Name of machines and devices Ext ID External ID number as defined in the Virtual CIM Setup Pallets Displays the ID number of the pallets Templates Displays the ID number of the templates Parts Displays the ID number of the parts The File menu offers the following options Open Loads a new graphic CIM cell Do not use Exit Quits the Graphic Display module User Manul 620 pen CIM Operating the CIM 0201 CIM Cell Startup Operation in Simulation Mode To start the CIM cell do the following 1 2 3 4 From the OpenCIM DEMO group click CIM Manager and then Graphic Display From the Manager Control Bar click on Default Storage Optionally click the Scheduler Gantt Click the Green Load button to start and then to commence production click Run Operation in Real Mode NA Warning E UDS S Before starting actual production make sure you are in compliance with all the safety measures detailed in Chapter 3 Remove any templates on the conveyor and at station buffers Remove any parts left at stations in a
99. NC wait for GET program to set activate flag Set SSYNC reset the activate flag Figure 9 3 Synchronization Example for GET amp PUT Object Code User Manual 9 18 OpenCIM 0201 OpenCIM Programming QC Programs The ACL can only hold integers If you want to test integer quality control you can send your QC result to the ACL device driver Barcode once If you want to test a decimal number you need to send it string by string Integer Quality Control ACL Source ATS ACL Controller Format QCL Format CBU Format e ROGRAM OC 1 Receives the ID message number ETIDL KKEKKKKKKKKKKKK EL 11 from the ACL device driver D SID SIDI SIDI 3 This variable receives the QC result You send the result to the ACL device drivers 4 I The CIM Manager sends two values a package a higher limit and a lower limit Each package has its own sequence so that it can be identified by the ACL device driver These are the values that you defined in the Part Definition form and in the field parameters Il The ACL device driver sends the sequence for the package via the R5S232 link to the ACL controller MI The ACL controller runs a QC test and receives a value This value is sent back to the ACL device driver IV The ACL device driver verifies that User Manual 9 19 OpenCIM 0201 OpenCIM Programming the value it re
100. Numeric Character Character Character Character Character Character Character Numeric Character Character TEMPLATE DBF File Structure 1 BAR_CODE Character STORAGE DBF File Structure VD Wnt nun FB WY NY e e N ea 0 SERVERID SERVER SUBTYPE STATUS PARTID PARTNAME PARTPOS TEMPLTID TEMPLATE TEMPLTPOS Numeric Character Numeric Character Numeric Numeric Numeric Character Numeric Numeric Character Numeric Width 80 8 80 8 1 20 12 20 80 20 20 40 2 8 20 4 10 33 OpenCIM Inside OpenCIM User Manual 0201 ORDER DBF File Structure VD 0 1 n un FB WwW NY Rh a a e RW N KF O 15 SEQNO PART TEMS DON GI FAIL INPROCESS EXPDATE EX TIME Numeric Character Numeric Numeric Numeric Numeric Character Character Date Character Numeric Numeric Numeric Date Character APLAN DBF File Structure 1 2 3 4 5 6 7 8 CStOrder DBF Fil NY Dn fF W NY PART SEQNO PROCESS SUBPART T ARG GI T NDE gt DURATION PARAMETER CUSTNAME PART PRIORITY D DUEPERIOD Character Numeric Character Character Character Cha
101. OO1 2 CNCREQ CNC1 OPEN DOOR Pick and place command from the CIM Manager runs the ACL program PT001 to insert a part into the CNC machine The constant CNC1 equals 001 the device ID of the machine Activates CNC script program OPEN DOOR in CNC device driver 1 3 SENDSTR V1 RU Sends an acknowledgment by running the ACL program N DROPN 4 SET DOOR OPEN DROPN This line sends a run command to the ACL device driver whose address is specified in variable V1 Causes the program PT001 to resume The following ACL statement sends a command to a CNC machine CNCREQ CNC1 OP EN DOOR The macro and symbolic constant in this statement expand to PRINTLN SCNCRI EQ 001 OPEN DOOR User Manual 9 56 OpenCIM OpenCIM Programming Each item in this statement is explained below ACL Statement that Requests a CNC Operation PR INTLN SCNCREO 001 OP EN DOOR This ACL command sends a message to the robot s ACL device driver via a serial connection between the ACL controller and the Station Manager PC This string signals the ACL device driver that the rest of this message is a command intended for a CNC machine The ACL device driver interprets and formats the message accordingly The device ID of the CNC machine that the robot is tending used as part of the destination address This string is the name of the script program which the CNC
102. OpenCIM OpenCIM Offline OpenCIM Intro and OpenFMS Computer Integrated Manufacturing for Industrial Training Applications Software Version 2 5 User Manual Catalog No 100094 Rev C intelitek gt Copyright O 2002 by Intelitek Inc OpenCIM User Manual Cat 100094 Rev C January 2002 All rights reserved No part of this publication may be stored in a retrieval system or reproduced in any way including but not limited to photocopy photography magnetic or other recording without the prior agreement and written permission of the publisher Program listings may be entered stored and executed in a computer system but not reproduced for publication This manual is designed to provide information about the OpenCIM OpenFMS OpenCIM Offline and OpenCIM Intro systems and software Every effort has been made to make this book complete and as accurate as possible However no warranty of suitability purpose or fitness is made or implied Intelitek Inc is not liable or responsible to any person or entity for loss or damage in connection with or stemming from the use of OpenCIM OpenFMS OpenCIM Offline OpenCIM Intro and or the information contained in this publication Intelitek Inc bears no responsibility for errors which may appear in this publication and retains the right to make changes to the software and manual without prior notice INTELITEK INC 444 East Industrial Park Drive Manchester NH 03109 537 Tel 603 62
103. Part ID can be used with devices which require a numeric part identifier For example the ACL controller uses the Part ID to activate the appropriate control program to handle this part Subpart The name of a material used to produce the current part A subpart must be defined in its own Part Definition record A subpart can either be a raw material i e a Supplied Part or a part produced by the CIM i e a Phantom Part or a Product Some rows in the Part Process table require a Subpart name while others do not A Subpart name is required in the following circumstances e A Subpart name is required in row 1 of the Subpart column e A Subpart name is required for each part that is included in an assembly e A Phantom Subpart name is required after each quality control test in order to associate a name with the ONFAIL exception handler After the first row a subpart name is not required if the process being per formed operates on the same part that was listed in the previous row For example the first row could specify the name of a cube that is to be machined into a box The second row specifies a process that drills a hole in the box In this case the subpart field of the second row would be blank because the drill operates on the same subpart specified in row one User Manual 5 10 OpenCIM Preparing for Production CIM Utility Programs 0201 If you need more than one of a subpart add a separate row to the Part Process table for ea
104. Process table assume that the part has passed the quality control test Continue defining the normal production steps for this part 5 16 OpenCIM Preparing for Production CIM Utility Programs 0201 Storage Definition The CIM Manager must keep track of which parts are in storage and which templates are available to move these parts from station to station on the conveyer You can use the Storage Definition form to e Update the contents part and or template of storage locations e Create modify template codes 2 CIM Storage Manager C OpenCIM32 DEMO SETUP Ol x File Edit Help HEB A O a Storage Type ID Part Name Quantity EDIT EMPTY ASRS1 211 BOX EDIT RACK1 37 EMPTY 35 COVER To edit storage press lt lt EDIT gt gt Figure 5 5 Storage Manager Form Storage Manager Form The Storage Manager administrates all types of materials used in an OpenCIM cell There are three types of Storage ASRS automated storage and retrieval system Rack and Feeder ASRS The ASRS is the main storage device in an OpenCIM cell It serves as a warehouse for parts in various stages of production ASRS cells contain templates either empty or loaded with parts Rack This type of storage can contain parts in any stage of production Templates cannot be stored in racks Feeder Contains raw material only Main Menu File Contains these file options Save to DataBase Reset Storage Create Default Storage
105. Programs CC Important Data Files gt Read only gt Read Write p Real_Time Communication Figure 2 8 OpenCIM Software Model Information Flow User Manual 2 14 OpenCIM System Overview 0201 CIM Definition Modules The CIM Manager maintains the OpenCIM database which contains information on the physical and communication configuration of the cell inventory of raw materials and parts manufacturing processes part definitions and orders Interactive software lets you define e The layout of machines and stations in the CIM cell e Machines and the production processes they can perform e The bill of materials used to produce each part e An order which specifies the parts you want to produce e The contents of all storage locations The CIM Definition modules also allow you to back up and restore the above information The CIM Definition modules are usually run on the same PC used for the CIM Manager Each of these modules creates data files in a DBF format These files can be viewed and edited with a dBASE editor They can also be modified by a user supplied application e g using an MRP program to create an order file The CIM Manager The CIM Manager performs the following basic functions Evaluates the Production Fills in details in the production plan on how to produce the Plan parts submitted in an order Execute Production Plan Controls and monitors the CIM equipment to produce the parts as specified in
106. RILAB DBF SCRTIL DBF SCRSITIL DBF CNC_L TIL CNC_LSI TIL SCRPRJ DBF VC2_WM EXP CNC_L LAB EXAMPLE DBF NC_L BAT NC_SCR DBF NCSCRSI KCL NCSCRSI DBF C E C E User Manual Description Subdirectory containing all the CNC script and BATCH file examples Example file from the Tilburg system Example file from the Tilburg system Example file from the King College system 10 11 OpenCIM 0201 Inside OpenCIM MAP INI The setup file MAP INI performs the following functions e Contains the TCP IP configuration of the manager and all device drivers in an OpenCIM cell This information is required by each OpenCIM in order to enable communication with other OpenCIM entitities e Allows two or more devices to use the same device driver to send and receive messages A typical MAP INI has the following format Redirect 53 51 23 21 24 21 COMMMANAGER RemoteIP 200 1 1 RemotePort 700 COMMACL11 RemoteIP 200 1 1 RemotePort 711 COMMLSM13 RemoteIP 200 1 1 RemotePort 713 COMMACL21 RemoteIP 200 1 1 RemotePort 721 COMMACL24 RemoteIP 200 1 1 RemotePort 724 When a device driver starts it must access MAP INI in order to be able to communicate with other device drivers and the CIM Manager On each Station Manager PC the file path to MAP INI is contained in the parameter variable CimMapPath inthe Networking s
107. Reference Guide You must run the DOWNLOAD utility program on the Station Manager PC that is connected a to the controller in order to download programs because the downloader requires an RS232 Note connection to the controller However the ACL source code files can reside on any PC accessible via the network Before trying to download code with the DOWNLOAD utility be sure to close the ACL device driver for this controller Otherwise a conflict will occur when the ACL program tries to open the same serial port as the device driver User Manual 9 21 OpenCIM 0201 OpenCIM Programming Robot Programs The Robot Programs consist of all the relevant programs necessary to run the robot These programs are divided into two categories generic and unique generic referring to the fact that the program can be used by all the robots and unique referring to programs that are specific for the robot at that station The Robot Programs are located in two places e Generic C OPENCIM LIB ACL e Unique C AOPENCIM WSN ROBOT The following tables describe the file name conventions used for the ACL system programs and sample applications supplied with OpenCIM You should use these naming conventions in your own programming to simplify technical support You can use the ACL off line utility the Robot Programs window or the text editor of your choice to edit these files We recommend that you use a Robot Programs window when editing these files S
108. S OC ASRSSOR ASRSSOM ASRSCRC RACK DNB BUFFER D READER DNI D D 2224 QU EPILOG 224 WWW Ww CONVEYOR DN WSMN DNB FEEDE LATHE DNB WS DNB TRASH DNB MILL DNB CNV1 DNB ASRST 1 SPARE PROLOGM PROLOG DNI CNC PCB LATHE PCB MILL PCB CIMSYS SYS W README ACL CONFIG DLD LIB QC VC2_0C INI User Manual 0201 Description Data file used by the TERM_ACL program Subdirectory containing preconfigured setup files for common machines stations ACL programs etc library of ACL programs File associated with file extension Subdirectory containing a library of unique ACL source code utility programs and parameter files Listing of the Quality Control block programs and Communication block programs necessary for peripheral devices that connect directly to the ACL controller Listing of the download ACL source blocks that are later copied to the DNL Listing of the Process block programs necessary to communicate with devices e g CNC machine System program necessary to operate and communicate in the OpenCIM environment File extension in the OpenCIM environment Download utility Subdirectory containing examples of Quality Control INI files 10 10 OpenCIM Inside OpenCIM File Type LIB SCR SCRLAB DBF SC
109. Start from CNC CNC Finish from CNC ACL to CNC Request ACL to CNC String QC Result Device is ready CNC Task is loaded Device is unavailable 10 30 User Manual 0201 OpenCIM Inside OpenCIM OpenCIM Database Structure The OpenCIM database is compatible with the Xbase database management programs e g dBASE FoxPro and Clipper The OpenCIM database consists of the following files File PART_DEF DBF Description Created by the Part Definition program PART_PRC DBF MACHINE DBF PROCESS DBF TEMPLATE DBF STORAGE DBF ORDER DBF APLAN DBF IMREP DBF EAFPART DBF H AQ Created by the Machine Definition program Created by the Storage Definition program Created by the CIM Manager and is maintained by the Storage Definition program Created by the Order Entry program Created by the Order Entry program through the APLAN EXE program Created by the CIM Manager The following tables describe the structure of the files that compose the OpenCIM database Fid Field Name Type Width PART_DEF DBF File Structure PART DESCRIPT ID H EMPLATE D Q KS ETUPTIME vs O DUCT j TED VD 0 QQ Y bh QQ NY P ANTOM m o O n H N n Q Q WU U VW FP WN DW tx na io User Manual 0201 Char
110. THE L S B HHOME 7 END Define Positions The principle here is to have fewer positions for better performance and faster backup restore Definition of a CIM position vector P lower point P 10 highest point In the file PROLOG DNL all the positions are as follows 1 Divide all of the positions into groups of 10 ten 2 The template positions 1 through 20 are for conveyors and buffers e g conveyor 1 11 first buffer 2 12 etc Put Get 100 4 The last two spaces are used for OPENSPACE and OPENSPACE FOR TEMPLATE User Manual 9 15 OpenCIM 0201 OpenCIM Programming Example of how to define a position READ MORIN ISI POINTS KKKKKKKKKK DIMP CIM xxx TEMPLATE TEMPLATE GET PART FROM BFFR1 GET PART FROM BFFR1 GET PART FROM GET PART FROM Og La PUT PART AT BFFR1 PUT PART AT BFFR1 PUT PART AT ASMBUF PUT PART AT ASMBUF OPENSPACE OPENSPACE FOR TEMPLATE 3 4 5 6 7 8 9 9 0 Lia Ll 31 41 Sila 61 tke 81 gliz GET PUT Programs The GET PUT DNL files contain the pick and place programs GET PUT Program Structure The following table shows the sample GET and PUT programs found in the file DNL The customization instructions explain how to add your own code to complete these programs Example Programs Customization Instructions PROGRAM_GET xxx gt Replace the xxx with the device ID as defined in DEVICE DMC 7 move robot gt Insert a command to quickly move the r
111. WS Machine Type Action Robot controlled WS2 M Machine cuc No Fail 3 Ex Duration Parameters WS 00 00 12 1453 J Jig READC 00 00 05 WS1 Y Barcode 00 00 20 w53 D Device on 00 00 15 w53 V Vision 00 00 23 WS3 V Vision List Of Preloaded Programs MILL ax Part llocation MILLI E Buffers OnRacks On Conveyer Total Click Pa to save the currently displayed information to the database You can now generate and view a Machine or Process Report by using the Report Program Continue with the procedure Defining the Assembly to define the other process which is required to produce the covered box User Manual 5 6 OpenCIM Preparing for Production CIM Utility Programs 0201 o er e GA Note The assembly operation is usually performed by a jig device e such as a pneumatic jig not a machine Procedure B Defining the Assembly Process 1 In the Machine Definition form select JIGXY4 from the Machine Name drop down list this is the name of the device that performs assembly operations as defined in the Virtual CIM Setup The JIGXY4 record becomes the current record and appears in green in the Machine Process Table The workstation is shown as WS3 the machine type as J JIG the action type as ASSEMBLY and Robot controlled as NO and gray In the Process column type in the Process Name ASSY You will need to make sure either now or later that ASSY appears in the
112. While running the application a robot goes into impact protection and the CIM Device Error screen appears on your CIM Manger PC Go to the ACL device driver s control panel and type A for Abort Type Run Initc to initialize all relevant ACL programs Verify that the robot is in free space and then type Run Homes Wait until the robot has finished homing Return to the CIM Manger PC and select Ignore in the CIM Device Error screen Using the P P command run the last pick and place command The correct parameters are listed in the Task History box located on the ACL control panel Example 2 While running the application the CNC fails and the CIM Device Error screen appears on your CIM Manger PC 1 Go to the CNC device driver 2 Find the problem in the CNC machine and correct it 3 Load the machine again manually with its supplied part 4 Prepare the machine for Cycle Start 5 Return to the CIM Manger PC and select Ignore in the CIM Device Error screen Using the CNC device driver return to the last operation normally Operate0 Wait until the CNC finishes its G code Return manually to the last OpenCIM operation using that device driver User Manual 11 4 OpenCIM 0201 Errors and Troubleshooting Troubleshooting VA Warning If the installation and startup procedures detailed in your system user manual were closely followed your OpenCIM system will give you reliable service If a problem should occur
113. Xbase User Manual Explanation The name of a generic ACL program used to direct a robot to place a part at a designated location Any process used to check whether a part is satisfactory or not A set of storage compartments used at some stations to store parts either before or after they are processed at that station Each type of rack is assigned an ID number Each compartment in arack is identified by a unique number See Supplied Part A common low speed communication protocol which allows a wide variety of devices to communicate with each other typically in the range of 300 19 200 bps On a PC RS232 ports are referred to as COM1 COM4 A device that moves parts from place to place at a station Some robots are also capable of assembling parts A quality control device which optically scans a part to determine if it is satisfactory See RS232 A peripheral device which enlarges the working envelope of a robot by allowing it to move along a rail The slide base gives the robot an additional degree of freedom A location adjacent to the CIM conveyor which contains production and or storage equipment A part which undergoes some sort of processing in order to be included in a higher level part A part which is the starting point for making a product This part or material is purchased and inserted into a CIM storage location It will later be processed by the CIM cell Plastic trays which can hold various ty
114. a Model Search of object for Fail sign M_X_MODS Insptr PatLoad C OpenCIM32 MICROUSA WS3 X mod nsptr PatSetCur M_X_MODS nsptr ImgConvertType TO_8U nsptr MeasNew x Insptr PatFind f x 1 Then QCR Fail Else V mod is a Model Search of object for Pass sign M_Y_MODS Insptr PatLoad C OpenCIM32 MICROUSA WS3 V mod Insptr PatSetCur M_Y_MODS x Insptr PatFind If x 1 Then QCR Pass Else QCR Error End If End If Insptr PatClose Insptr ImgClose Insptr MeasClose Insptr CloseAll End Function 8 23 OpenCIM OpenCIM Device Drivers The ULS Device Driver The ULS device driver operates the ULS Laser Engraver In the same way that the CNC device driver controls all operations of a CNC machine the ULS device driver controls all operations of the Laser Engraver The ULS device driver communicates with the Laser Engraver via parallel and RS232 links It uses the parallel connection in order to download the appropriate engraving program CorelDraw or Freehand file to the device The serial RS232 is used to establish communications between the laser machine and the ULS device driver so that programs from the laser machine s memory can be selected and messages transmitted to and from the device driver When a part is to be placed on the laser table the CIM Manager sends a message to the device to descend to the lowest level and then rise to the loading level The robot always picks amp places a part from to t
115. a template from a storage cell use the Storage Definition form to register the change The following three procedures explain how to e Add a part to storage cell e Add a blank template to a cell e Clear the contents of a cell 0 Move the cursor to the desired cell and double click it 12 e Select the part to add from the Part name list box Procedure Inserting a Part ina 3 Click el to save this change Storage Cell 0 Move the cursor to the desired cell and double click it 12 e Select the Template number from the Template list box If the template is not Procedure defined proceed to define it Inserting a Blank Template in a Click to save the change Storage Cell 0 Move the cursor to the desired cell e e Y 2 Click the Clear Cell button Procedure Clearing a Storage Cell 3 Click el to save the change How to Define a Template Templates are special trays that can be customized with an array of pins to hold different parts Each part has a unique template type that can hold it A specific type of template can hold various types of parts that fit into its pin arrangement User Manual 5 19 OpenCIM 0201 Preparing for Production CIM Utility Programs Each template has a specific six digit type number standard series starting with 010001 to 010040 and ending with 090001 to 090040 that identifies it This number appears on an optional barcode sticker that is affixed to the side of t
116. a text editor to insert a symbolic constant into the file file DEVICE DMC DEVICE DMC For example connects the name of DEFINE ASRS 002 the device and the of the device In this example 002 is the device ID 3 digits required and ASRS is the symbolic name you will use throughout your ACL programs to refer to this device It is much easier to maintain ACL programs that use symbolic constants e g ASRS instead of literal device IDs 002 If a device ID ever changes it is only necessary to make the change in one place i e in the file DEVICE DMC You should observe the following conventions when assigning device IDs in order to simplify technical support 001 Pallet at this conveyor station 002 ASRS or other central storage 2 Copy the files from Ifyou have a workstation with an ACL robot then add the LIB ACL to directory ROBOTn WSn ROBOTn User Manual 9 25 OpenCIM 0201 OpenCIM Programming 2 Copy the files from ALIBIACL as follows 2 1 If the Type FLD 5 from SETUP CIM is A B C D F K L Q J M S X Y Z then copy from to ALIBACIWS BLK WSn ROBOTn WSn DNL LIB ACL PROLOG BLK WSn ROBOTn PROLOGn DNL ALIB ACL EPILOG BLK WSn ROBOTn EPILOGn DNL ALIB ACL CONFIG DLD WSn ROBOTn CONFIG DLD Refer to OpenCIM Setup File SETUP CIM for more information Physical Name is FLD 3 Logical Name is FLD 4 Rules for Creating DNL Files 2 2 If the Object Type
117. acter 20 Character 40 Numeric 4 Character 15 Character 15 Numeric Numeric 8 8 Logical 1 Logical 1 Logical 1 Numeric 6 Character 30 Numeric 8 10 31 OpenCIM Inside OpenCIM User Manual 0201 Fldi Field Name 14 PCTLOST MINORDER CAPACITY CATNUMBER SAFSTOCK Type Numeric Numeric Numeric Character Character PART_PRC DBF File Structure 1 2 3 4 5 6 VD Wnt nun bh WY NY Rh e a a a Ra Ra Ra Rasa O 0 NIH FP WN Re O PART Character SEQNO Numeric SUBPART Character PROCESS Character PARAMETERS Character ORDERING Logical MACHINE DBF File Structure SERVER Character COST Numeric NBUFFER Numeric NRACK Numeric NCONVEYOR Numeric NMAX Numeric QUETYPE Character QUEVEC1 Numeric QUEVEC2 Numeric QUEVEC3 Numeric QUEVEC4 Numeric QUEVEC5 Numeric QUEVEC6 Numeric NPRELOAD Numeric PRG1 Character DATE1 Date PRG2 Character DATE2 Date PRG3 Character DATE3 Date N Width 20 20 20 30 N wR BR ph hhh heroe a Co 80 80 10 32 OpenCIM Inside OpenCIM User Manual 0201 Fldi Field Name 21 22 23 24 25 PRG4 DATE4 PRG5 DATE5 LASTLOADED PROCESS DBF File VD 0 QDD YU FB WY NY a o DURATION NEED ROBOT Type Character Date Character Date
118. action was completed User Manual 5 39 OpenCIM 0201 Preparing for Production CIM Utility Programs Location Status Report The Location Status Report is a detailed listing of every location defined in the CIM system This report is used by the system administrator or the more experienced user for debugging the system There is more than one type of location e Locations defined in the Virtual CIM Setup Every ASRS compartment every station on the conveyor places on a buffer and places inside the machine e Every template a part of an assembly e g one part is on top of another part a gripper on a robot every part in the system The Location Status Report enables you to know exactly what and where something is in the system at a given time The following is an example of a Location Status Report IT O J een Empty peson op er o eo A E ee a es i m eepe E ases s 1 etexrezass sve Part on temptare o o remenare soxo001 a The following is a description of each of the columns in the Location Status Report Heading Location ID Index Part Name Status Template Number Type User Manual Description The name of the location The location ID numeric as defined in the Virtual CIM Setup Indicates the exact location on a device which has more than one location for a part The name of the part in this location as defined in the Part Defi
119. age Substitute the device ID of the robot which tends this machine for the 43 in this example One Robot Tending Two Machines If a single robot is tending two CNC machines make the following adjustments to the sample programs shown in this section e Inthe ACL controller use two separate global variables DOOR1 and DOOR2 for each machine instead of the single variable DOOR e Use two separate ACL programs DRON1 and DRON2 to set these variables instead of the single program DROPN The OPEN DOOR script programs on the CNC machines would call their associated ACL program DRON1 or DRON2 ACL Controller Backup and Restore Because there is always a chance that system files could be altered or destroyed we recommend keeping backup files of your OpenCIM system Should your OpenCIM system crash and need to be replaced the backup files can be used to restore the system These procedures should only be performed by the system supervisor The Backup procedure involves three stages 1 Back up the ACL controllers to the Station Manager PCs 2 Back up the Station Manager PCs to the CIM Manager PC 3 Back up the CIM Manager PC to diskettes Do not perform Backup procedures while the OpenCIM is running because currently oY A running programs may be aborted and data files may be in an unstable state Note Always keep robot positions ACL programs and parameters on disk Back up and restore the entire system regularly to en
120. ailable to the current process Check the Part Definition table A quality control result was received when no QC test was requested e Check if an ACL program or CNC script is sending an incorrect message OR e Someone has manually triggered a quality control result by running a program from the Control Panel of either the ACL or CNC device driver 11 9 OpenCIM Errors and Troubleshooting Code 9020 9021 9022 9023 9024 9025 9026 9027 9028 9029 User Manual 0201 Description and Solution Reserved for future use An unexpected status message was received There was no corresponding command message sent e Check if an ACL program has assigned an invalid value to the variable ID the task ID OR e Check if a CNC program has assigned an invalid value to the variable ID OR e Device driver internal error Call Intelitek technical support Reserved for future use Invalid storage index e Use the Setup module to increase the value of the Capacity field for this storage device OR e Use the Part Definition module to ensure that the storage index specified in the Parameter field of the Part Definition table is within the range of the Capacity field for this device Part is not available at this storage location e Use the Storage Definition module to update the storage contents OR e Abort this order if there are not enough parts to complete it Invalid location index for a machine e Use the Setup
121. aits for the PLC to inform it that the pallet has arrived The PLC holds the pallet at the station until the CIM Manager sends a release command The CIM Manager does not track the continuous flow of pallets as they move around the conveyor As with other devices the CIM Manager specifies what it wants but does not get involved in the details of how to carry out the request User Manual 8 29 OpenCIM 0201 OpenCIM Device Drivers PLC Messages The PLC device driver receives the following command messages from the CIM Manager and relays them to the PLC These commands correspond to the buttons on the PLC Control Panel Commands to the PLC Device Driver Description GetFree Orders the PLC to stop the next empty pallet at the specified station Used when a part or empty template needs to be picked up at this station including the ASRS station Release The CIM Manager allows a needed pallet continue on the conveyor if the station is busy when the pallet arrives Releasing the pallet prevents a traffic jam on the conveyor This can occur if the robot that loads unloads pallets is busy or if a pallet cannot be unloaded because the buffers are full The pallet s destination remains unchanged Pallet Carrying Template If the pallet s destination this station it will be stopped the next time it comes around to this station Empty Pallet If the pallet s destination 99 the next empty pallet to arrive at this station will be stopped
122. al support use only Number of Timer intervals to wait before a retry is sent For example Timer 1000 PassCount 3 gt delay before retry is 3000 ms Reserved for Intelitek technical support use only Number of milliseconds a device driver waits for confirmation from the CIM Manager that it has received a shutdown notification message A value of O zero causes the device driver not to send a shutdown message OpenCIM Inside OpenCIM ACL Device Driver Settings General CimSetupPath SETUP SETUP CIM ACLDriverDefinitions ACLDriverPromptNum 3 BaudRate 9600 Parity None DataBits 8 StopBits 1 Xonxoff Yes User Manual 0201 10 22 Tells the device driver where to find the following important OpenCIM setup files e OPENCIM INI Contains default parameter settings for all device drivers The file OPENCIM INI must appear in the same directory as the setup file named in this setting e SETUP CIM Lists all physical devices and their IDs The name SETUP CIM is the default name for this file This parameter setting must appear in each local INI file It is not needed in OPENCIM INL Number of times the device driver sends a query to an ACL controller to invoke the controller s command prompt gt Reserved for Intelitek technical support use only These are the standard RS232 settings for communicating with an ACL controller They should not be changed since they matc
123. alue into consideration when choosing among multiple machines that can run the same process Format is hh mm ss Parameters This string of arguments is passed to a machine control program associated with this process Ws The workstation in which the machine is placed Automatically displayed by the system as defined in the Virtual CIM Setup Machine Type The type of machine selected Automatically displayed by the system as defined in the Virtual CIM Setup Action Type A label that defines the characteristics associated with a process Select one of these Action Types in the data field above the table Action Type Description Assembly A process which involves the assembly of two or more subparts QC A process involving a test that reports a Pass Fail result to the CIM Manager If the result is Fail the rejected part is redone A quality control process requires an ONFAIL entry in the Part Processes table in the Part Definition form see Part Definition below CNC A process which has G Code program s associated with it The CIM Manager downloads the G code file specified in the File field to the CNC machine unless this file is already resident in the CNC machine Process A basic machine operation which does not require any special action beforehand or afterwards Runs the ACL program specified in the Program field Place A robot operation used for non standard operations performed by a robot The File and Program fiel
124. and Tracking Chapter 7 OpenCIM Setup Virtual CIM Setup module Not applicable to OpenCIM Intro Chapter 8 OpenCIM Device Drivers Not applicable to OpenCIM Offline and OpenCIM Intro User Manual 1 2 OpenCIM Introduction 0201 Chapter 9 Chapter 10 Chapter 11 Chapter 12 Chapter 13 OpenCIM Programming Inside OpenCIM Software and File information Troubleshooting Glossary Intelitek Software Licensing Who Should Use This Manual This manual is intended to be used by the following User Manual 0201 Students Students can operate the OpenCIM system to gain experience with computer integrated manufacturing CIM or Flexible Manufacturing Systems FMS By working with a complete CIM system students are encouraged to think globally about the manufacturing process Students can also concentrate on a particular aspect of a CIM system such as controlling robots CNC machines etc Industrial Management OpenCIM allows advanced users to implement and experiment Students Instructors with theories concerning optimal computer integrated manufacturing techniques such as e The effect of different machines which can perform the same process e Modifying a process by changing a machine s control program e Alternate part definitions OpenCIM can also be used in simulation mode to search for optimal production strategies by experimenting with the following e The causes of production bottlenecks
125. and still provides you with an efficient system The order of operation timing performed by the CIM is controlled by the CIM optimizing mechanisms which run concurrently and make decisions based on real time situations in the work cell You can manipulate the behavior of the CIM by changing any one mechanism or a combination of any of these optimizing mechanisms These optimizing mechanisms are e In each manufacturing order line in the order definition for each type of part you can decide how many parts of this type will be released from storage at the beginning of the manufacturing process in order to fill the buffers Initial Quantity e The release time of each additional part from the ASRS is not set in terms of time but rather in terms of the work part progress For example an additional similar part is fed to the system only when the previous part has reached a certain stage in its production plan This stage is marked by adding the command NEXT in the definition of the part production process The default used for a production plan is that the system will begin to feed the next part after the last manufacturing process defined for each part The default can be changed by adding the command NEXT in the Process column in the Part Process Table in the Part Definition form e Each machine has a queue of parts waiting to be processed by the machine When the machine is free it selects one of these parts according to a certain rule
126. ands that the CIM Manager sends to the PLC device driver Before using these buttons you must first select a station In order to select a station for the operations shown below use the list box of station numbers found along the right hand edge of the Control Panel Stops the specified pallet when it arrives at the specified station Select the desired pallet by clicking on the line with the correct pallet ID Then select a station before using this button Stops the next empty pallet that arrives at the specified station Select the desired station before using this button Allows a pallet that was unloaded at this station to continue on the conveyor and flags it as available i e assigns the pallet s destination station 99 Select the desired station before using this button Lowers the piston at the specified station to allow a pallet that is just passing through this station to continue moving along the conveyor You can also use this button to allow a needed pallet to pass if the station is currently busy Select the desired station before using this button It is NOT recommended to manually select GetFree or Deliver while the CIM is running in Real Mode If you do the CIM Manager will receive an unexpected status message indicating the arrival of a pallet that did not actually arrive The CIM Manager will attempt to recover from this situation by issuing a Free command for this pallet Pallet Command Box You can us
127. anging this value on the Control Panel affects the current session but does not save the new value to the INI file QC Device Settings Each quality control device driver uses a duplicate set of INI file parameter settings shown in the following figure These settings relate to e Format of a quality control log file e Running the device driver in Simulation mode e RS232 communication settings e Appearance of the device driver s Control Panel on screen When you want to simulate the operation of a QC device the QC device driver provides simulated test results to the CIM Manager stating whether a part passed or failed a QC test The parameter SimulationFailPercent allows you to set the default failure percentage that a QC device driver uses when running in Simulation mode The following sections discuss particular settings for each type of quality control device driver ROBOTVISIONpro Settings The ROBOTVISIONpro device driver works best with v2 3 or later of the ROBOTVISIONpro software Use the parameter Snap Yes to indicate version 2 3 or later You can use the Frame parameter to specify the frame area in the camera s field of view where the ROBOTVISIONpro system should scan for objects When you train the ROBOTVISIONpro to recognize a new object the ROBOTVISIONpro software assigns a unique Pattern ID Use this number as the test type when setting up the Parameter field in the Part Definition table Laser Scan Meter Setti
128. are drive C 1 Select My Computer 2 Right click Drive C 3 Select sharing 4 From the dialog box select share as and click OK In Station PCs Map the drive of the Manager PC where the OpenCIM software is installed through the network as follows 1 Select and right click My Computer 2 Select Map Network Drive 3 Select a free drive and write the path for the Manager s drive C For example Drive E path Manager C 4 Check Reconnect at Logon and click OK User Manual 4 7 OpenCIM 0201 Installation Other Software An OpenCIM system can include many devices which require additional software e g Vision Systems CNC machines CAD CAM etc Refer to the documentation and software installation instructions provided with each device ACL Controller Configuration The following procedure is valid only for ACL controller types A and B For other controllers refer to the documentation and software installation instructions provided with each device At each station which contains an ACL controller you will need to configure the controller and download the file ALL CBU from the Station Manager PC to the ACL controller This file contains all programs positions and parameters required for controller operation in the OpenCIM environment From the ATS main screen 1 Press lt Ctrl gt F1 to configure the controller 2 Press Y to confirm the prompt to configure the controller You are then prompted by
129. arn first hand how other disciplines such as Production Scheduling Manufacturing Resource Planning MRP Order Entry Systems and Database Management Systems Xbase can be used to optimize the production process In this version of OpenCIM three additional OpenCIM products are also available e OpenFMS for a small CIM system which may include a single robot and one or two CNC machines e OpenCIM Offline a simulation only version of OpenCIM e OpenCIM Intro an offline version which does not include the Setup Module About This Manual This manual is a complete reference guide to the OpenCIM system It explains how to install configure and operate the OpenCIM software Indications as to which information is not relevant to the additional OpenCIM products are provided in the appropriate sections This manual includes complete details on how to produce custom parts add your own computer controlled equipment and how to interface with other software How This Manual is Organized Chapter 1 Introduction to OpenCIM and this User Manual Chapter 2 Overview of the OpenCIM system and software Chapter 3 Safety Chapter 4 Installation of the OpenCIM hardware and software Chapter 5 Preparation for Production OpenCIM modules MRP Customer Manufacturing and Purchase Orders Part Definition Storage Definition Machine Definition Chapter 6 Operating the System OpenCIM modules CIM Manager CIM Scheduler Graphic Display
130. art ID 77 e Template Type 01 Click Save and check the Errors box The message Save done indicates there are no errors Select Product parts Select New to define a new product part Make the following entries e Part Name BOX e Part ID 75 e Sub part CUBE e Process PROG_BOX1 e Template Type 01 7 21 OpenCIM OpenCIM Setup e Click Save and check the Errors box The message Save done indicates there are no errors e Close the Parts Definition module 4 From Utility Programs select Storage Manager e Click on Edit ASRS e Choose any cell in the grid e Select CUBE from the Part Name drop down list and click OK e Repeat these steps three more times for other cells e Close the Storage Definition module to automatically update the storage database 5 Click the Create Storage icon to save this storage definition as the default 6 From Utility Programs select MRP e Select Create a new customer CUST A e Create two orders for this customer each one for two parts but for different supply dates To see a list of parts which can be ordered open the drop down list when the cursor 1s On the Part Name field Click to select a part For example Part Name Part Name Required Required Priority Priority Due Date Due Date e Save the order Click MRP This runs the MRP program which creates a Manufacturing Order e Select Manufacturing Order The Manufacturing Order screen is displayed e Sele
131. ate in real mode even if the hardware has not been activated or even if no hardware exists CIM Manager Device Driver Hardware Mode of Operation Simulation Not required Not required Real Mode All device drivers must be Not required loaded Hardware may be activated or it may be simulated by the device drivers at some or all stations User Manual 6 2 OpenCIM Operating the CIM 0201 CIM Manager Control Bar User Manual 0201 ET tinue a Green button Loads the production work order A Plan Opens communication channel This sends a command to reset INIT all device drivers The run arrow turns green indicating that it is available for use The production plan will appear in the Program View screen lO i me ll 09 pause tinue Figure 6 2 Production Control Bar Green arrow Starts executing the A Plan CIM production begins The pause button turns blue and the emergency button turns red indicating that they are available for use Blue bars Halts operation at any time causes the CIM Manager to stop sending commands to the device drivers and then wait until the Resume button which has turned red is pressed All device drivers complete the current command E Note CIM devices do not stop immediately when you click the Pause button Each device will complete its current operation before it stops Resumes operation after production has been paused Red button Stops pro
132. ature that it ensures the required G code is downloaded Removes a part from a CNC machine The Unload command is similar to the Place command This line is ignored It can be used for adding comments or blank lines to the A Plan Executes the process as defined in the Machine Process table Each user defined process that appears in a Part Definition table for this product also appears in the A Plan table 9 69 OpenCIM OpenCIM Programming The following A Plan commands shown in detail are representative of how to interpret the other commands Format MAKE lt ttl qty gt lt initial qty gt lt subsqnt qty gt lt priority type gt lt priority gt Description Defines the beginning of a loop used to produce the quantity ordered for each line in the Order table SUBPART Name of the product being ordered This name is made unique by a suffix which identifies the position of this part in the Part Definition tree Target Sequential number that corresponds to a line number in the Order table This number is incremented by one for each occurrence of a Make command in the A Plan table lt ttl qty gt Total number of products to be produced lt initial qty gt Number of parts produced in parallel when production of this part first begins lt subsqnt qty gt Number of parts produced in parallel after the initial quantity has been completed lt priority Priority method used to determine which part order type gt gets pr
133. ave the files in ASCII format It is recommended that you add a Robot Programs program group on a Station Manager PC This group should contain the following icons as shown in the figure below Tip e ATS Terminal emulation program which allows you to interact with the ACL controller connected to a Station Manager PC e Download Sends ACL programs from a Station Manager PC to an ACL Controller e Download Report e Notepad WS1 Allows easy editing of a station s configuration file e Additional Notepads for editing other DNL files ATS ASRS1 ASRS1 CNY CNV A Download Download EPILOG1 EPILOG1 PROLOG1 w51 REPORT PROLOGI ADAI DNC RDRIDNC RDA1 DNL RDR1 DNL m w51 Figure 9 4 Robot Programs Group Window User Manual 9 22 OpenCIM 0201 OpenCIM Programming Generic Robot Programs File Extension Meaning DNB DowNload ACL source Blocks that are later copied to the DNL DMC Defines amp MaCros An include file library file containing user supplied defines and macros The contents of this file are inserted in a DNL file at the point specified by an INCLUDE command SYS All of the SYStem programs necessary to operate and communicate in the OpenCIM environment QCB All the Quality Control Block programs and Communication Block programs necessary for peripheral devices that connect directly to the ACL controller PRB All the Process Block programs necessary to Communicate with devices e g CNC machine
134. bsolute bit mask value see description of mask2 below Typically mask1 would be set to the system variable BVn the current value of the output port Using BVn allows you to set only the bits you are interested in while preserving the values of the rest Alternatively you could set the port to an absolute value by specifying a bit mask for mask1 instead of BVn For example to reset the port to a known value you could specify the same bit mask value for mask1 and mask2 and use an OR operation between them This would assign the value of the bit masks to the output port regardless of the port s previous value User Manual 9 40 OpenCIM 0201 OpenCIM Programming You can set the value of any group of bits in an output port by using the appropriate bit mask mask2 and bitwise operator bo The mask2 argument is an 8 character string composed of 1 s and 0 s in ASCII text This argument can consist of either a string literal enclosed in quotation marks e g 10000000 or a parameter variable V1 V16 P1 P8 The following truth tables show the results of using each of the four C Language bitwise operators available amp AND Bitinmask1 Corresponding Bit Result after in mask2 SetBit 0 0 0 0 1 0 if 0 0 1 1 1 OR Bitin mask Corresponding Bit Result after inmask2 SetBit 0 0 0 0 1 1 1 0 1 1 1 1 A XOR Bitin mask Corresponding Bit Result after inmask2 SetBit 0 0 0 0 1 1 1 0 1 1 1 0 NOT
135. ce ID this time for the target location For each pick and place operation the CIM Manager sends a set of parameters to the ACL controller The ACL program PCPLC reads these parameters from the ACL device driver and User Manual 0201 9 24 OpenCIM OpenCIM Programming assigns them to a set of global variables These variables are used to pass the parameters to the appropriate GET and PUT programs A GET program s main function is to pick up a part template which involves the following e Direct the robot to grasp a part template e Move the robot to a safe position clear of the source device e Send a Start status message e Continue moving the robot to an intermediate point from which it can reach any device e Activate the PUT program A PUT program s main function is to place a part template in a designated location This operation involves the following steps e Wait for an activation signal from a GET program e Move the robot to the target location e Set the part template down at the target location e Move the robot clear of the target device e Send a status message that the part template is in place and ready to be processed e Move the robot to safe position from which it can reach any device e Send a status message that the robot is ready to perform the next operation To write a set of GET and PUT programs for a new device that has been defined in SETUP CIM follow the steps outlined below 1 Add the device to the 1 Use
136. ce a larger conveyor 8 m x 10 m into the CIM cell A grid will appear on the screen The set of numbers displayed on the left are the screen pixel coordinates of the cursor while the numbers on the right are metric coordinates in meters User Manual 7 4 OpenCIM OpenCIM Setup 0201 Bf When creating a conveyor use the mouse buttons as follows Note e Click with the right mouse button and drag to select menu options e Point and left click to place objects on the grid To select the starting point of the conveyor do the following Place the cursor on the grid and right click to open this icon menu The key icon is used to mark the starting point of the conveyor J 0 0 0 O tt E o l The spectacles icon opens another icon menu Do not attempt to nu o gt 4 manipulate the displayed values These settings are for technical to Cv AT support personnel only The grid icon toggles the grid display on and off Drag and select the key icon A wand pointer appears on the screen Use this cursor to click on a starting point for the conveyor It should be placed on the right side of the grid as shown in Figure 7 3 Adding Conveyor Segments A red dot appears on the grid Since the conveyor movement is normally counterclockwise the conveyor segments are added in the counterclockwise direction To create the conveyor do the following Again click on the right mouse button An
137. ceived is within the higher and lower limits of the original package values sent If the value is within the limits then the ACL device driver sends a message that the QC is OK If the value is not within the limits then the ACL device driver sends a FAIL message Process Programs The Process programs include all of the utility programs necessary to operate the ACL Input Output e g if you want to open the door of a CNC EPILOG EPILOGn DNL The EPILOGn DNL file can be used to modify initialization system programs INITC RESET in the following ways ACL Source Format ATS ACL Controller EPILOGn DNL CBU Format PROGRAM RESET GOSUB SREST GOSUB BCOFF STOP RVP RVP SUB D INITC Y PROGRAM INITC KKEKKKKKKKKKKKKKKKKKK TOP RVP GR OG GS Gs Gas SOG ORs OG B User Manual 1 TO PDD WwW o PHAA WWP rOA SE ELAY 30 UN STO STO STO STO STO STO STO STO STO STO STO STO STO STO STO STOP POST GOSUB SE END ga CORRS ORS CORRS CORRE CORRS Re GR CREE CRY aa a aaa o a a RY A 9 20 RVP T001 PT001 T003 PT003 T005 PT005 T006 PTOO6 r008 PTOO8 T009 PT009 T007 T007 1004 PTOO4 1 TO SPDD OpenCIM OpenCIM Programming ACLoff line Utilities Y Caution OpenCIM requires the use of the ACLoff line utility program ve
138. cess after uploading a G code program to a CNC machine Function TheWaitFile command waits until the specified file is created during a specified interval If the specified file has not been created during the specified interval the command times out The CNC Script Interpreter aborts program execution and generates the error message WM_CIMDDE_CNCERROR The CNC Device Driver relays this error message back to the CIM Manager Examples WaitFile Pl V1 WaitFile Vl P1 WaitFile V1 V2 WaitFile Pl P2 WaitFile C OPENCIM LOG DAT 5000 User Manual 9 48 OpenCIM 0201 OpenCIM Programming WaitString WaitString Suspends execution until the specified string arrives from Network Name WaitString String time to wait Inputs String e A string that specifies the e Any string beginning or end of an operation that contains an address in the OpenCIM environment time_to_wait e Number of milliseconds to CNCDriverTimer suspend program execution 2147483647 Vl V16 P1 P16 Purpose After performing an operation on a CNC machine it is usually necessary to wait for a status message in order to confirm that the operation was performed successfully Function The waitString command waits for a string during a specified interval If the CNC device driver doesn t receive the string during the specified interval the command times out The CNC Script Interp
139. ch file in a DOS box in a window i e not Full Screen To prevent communication errors make this a high priority task SIZ a A Warning Do not set this task to have exclusive control because this might cause problems with other device drivers running on this PC The CNC Control Panel The CNC Control Panel is a feature of the CNC Device Driver that allows you to perform the following functions e Run CNC programs interactively e Control CNC operations by setting bits on the Output Panel e Read the status of the CNC machine by examining bits on the input panel User Manual 8 8 OpenCIM OpenCIM Device Drivers 0201 CNC Device Driver CNC23 ml ES File Operation Help Control Mode Simulation Mode Start new session ABORT Skip all the actions Run Init INITC OPEN MILL VISE RUN OVISE Task History WAITSTA WISE_OPEN 18000000 CLOSE MILL VISE zl CNC LINT It s busy Action ignored Al CNC Task Parameter Failed to connect to MANAGER C OpenCIM32 B10_BIO WS2 172 16 12 239 Figure 8 4 CNC Device Driver Control Panel Running CNC Programs Interactively The CNC Control Panel allows you to run CNC programs created with the CNC Script Interpreter and view the results To run a Command Interpreter program using the Control Panel do the following o 1 Determine the parameter s if any that are to be passed into the program e Type these value s in the box labeled CN
140. ch unit A circular definition error will result 1f you enter a subpart name that matches the name of the part being defined 1 e Subpart Part This error will also occur if any of the subparts in turn contain a subpart that matches the Part Name being defined Process Enter the name of a production process that has been defined in the Process field of the Machine Definition screen If this process exists on more than one machine the CIM Manager selects the machine to use according to its production strategy e g minimize cost minimize production time etc Parameters The Parameters field specifies how to carry out this process when it is performed for the current part For quality control devices the parameter string is used to specify the type of QC test and the range of acceptable values For a machine that performs assembly operations the parameter string specifies where to put the part that is being added to the assembly If this target location contains compartments you can add an optional index for the compartment number The table below details how parameters are used 2b several devices type of test If maximum value is minimum va Uy omitted the minimum maximum value value represents the single acceptable value Laser Scan 1 type of test If maximum value is Meter minimum value maximum value omitted the minimum value represents the single acceptable value with a tolerance of 5 tar
141. click UNABLE User Manual 0201 OpenCIM OpenCIM Device Drivers Once a device driver has been loaded you cannot change its control mode You must exit the device driver and restart 1t in the desired mode Real Mode This mode is the default if no special mode switches are specified on the command line that invokes the device driver Simulation Use the SIMULATION switch on command line that invokes the device Mode driver Manual Mode Use the Com 0 switch on command line that invokes the device driver Standalone The Standalone mode enables you to input manager specific commands and Mode execute them directly to the controller without any intervention from other system components If a device driver is unable to open an RS232 port in order to communicate with its device it displays the following message in the Control Mode box Cannot Open Com n This error message indicates that the device driver could not open the serial port on the Station Manager PC Possible causes include e The port is in use by another application e The port number is invalid e One of the serial port parameters is invalid The CNC Device Driver The CNC Device Driver interfaces between the OpenCIM system and various types of machines such as a lathe or milling machine It receives command messages from the CIM Manager adjacent robots and other CIM devices In response it runs the corresponding CNC script program which operates
142. command names or for variable names in the argument list The following examples are equivalent SetBit PORT1 BV1 amp V16 SetBit PORT1 BV1 amp V16 Editing CNC Script Language Programs All CNC script programs for a station those that you write and those that come with the system are stored in the script file CNC_SCR DBF More than one CNC device driver can share the same script file This file normally resides either e On the server in a subdirectory designated for this station e On the station manager PC running the CNC Device Driver Use a dBASE editor to write your CNC programs to the appropriate CNC_SCR DBF file If a CNC device driver is running you must close it before you begin editing its CNC_SCR DBF file Otherwise you will get an Access Denied error message Enter the name of each CNC script program in the REQUEST column A program name can be up to 32 characters long It can contain any combination of letters numbers spaces and punctuation The ACTION column contains the CNC script commands that comprise a program There is no limit on the number of commands contained in a program The RETURN column is reserved for internal use Do not enter any values in this column This file uses the following format REQUEST ACTION RETURN Program Name 1 script command script command script command script command script command End Program Name 2 script command script comma
143. controller e g a barcode reader the name of the ACL program that activates this device should be specified in the Program field of the Machine Process table in the Machine Definition module User Manual 8 15 OpenCIM 0201 OpenCIM Device Drivers d It is possible to use a robot as a quality control device You can write special ACL Tips programs which perform quality control tests such as Have a robot try to place a part in a mold If the part is too big you can detect the collision If it is too small you can detect free play when the robot tries to move the part after it has placed it in the mold e You can measure the dimensions of a part by reading the span of the robot s gripper when it is holding the part The following table shows how to set up test parameters for each type of QC device driver QC Device Test Type Acceptable Range of Values ROBOTVISIONpro The system scans a part The number of objects the Camera looking for an object s that ROBOTVISIONpro system should was defined as a Pattern ID in find If the minimum and maximum the ROBOTVISIONpro values are the same the system software e g Are three must find this exact number in screws in place order for the part to pass the test Laser Scan Meter Checks the diameter of a Minimum and maximum values cylinder Test type 1 represent the tolerance surrounding the desired diameter There is a customized version of the quality control device driver for each of th
144. ct a Manufacturing Order from the list of numbers and click MO to submit the manufacturing order This creates an A Plan production work order for the order e Close the MRP module 7 Select Reports Generator from the Utility Programs menu e Select Part Report Click Print Report to display the report on the screen You may also select Subparts Process Analysis and A Plan to view other reports e Close the Reports Generator module 8 Click the CIM Modes icon The CIM Modes dialog box opens e Select Simulation mode and enter the simulation speed for example x5 e Select No in Send message to Graphic Display option This option refers to the external graphic display only the internal graphic display of the CIM Manager is always active e Click the green button to execute i e load the Manufacturing Order e Click the green Run button to activate 1 e run the production cycle User Manual 7 22 OpenCIM OpenCIM Setup 0201 e Congratulations Your CIM cell is in operation Look at the Order View Device View Program View and Pallets View and follow the progress of the production e Acknowledge the messages Part has been Finished and Order Finished e Close the production by clicking the red button 9 You will now repeat the production cycle and view it through the Graphic Display module 10 Open the CIM Modes dialog box Select Yes in Send message to Graphic Display option and save it Make sure that
145. d OK QC device on the serial port Cannot Open The QC device driver could not open its serial port on the Station Manager Com n PC User Manual 8 17 OpenCIM 0201 OpenCIM Device Drivers Simulation The QC device driver receives commands as usual but emulates a quality Mode control device by generating pass fail status messages automatically based on the value in the Fail field In this mode the device driver does not actually communicate with the QC device only with the CIM Manager Activation LSMDriver EXE LSMVD1 INI 13 COM 2 SIMULATION Manual Mode The QC device driver receives commands as usual but only generates pass fail status messages when you click on the Success or Fail buttons In this mode the device driver does not actually communicate with the QC device only with the CIM Manager Activation LSMDriver EXE LSMVD1 INI 13 COM 0 Standalone The Standalone mode enables you to input manager specific commands and Mode execute them directly to the controller without any intervention from other system components Controlling a QC Device from the Control Panel The buttons on the Control Panel allow you to send commands to the quality control device and status messages to the CIM Manager These buttons are described below Activates a test on the quality control device This button only functions in Real Mode It is useful for testing communications with the quality control device The respo
146. d air Refer to the instructions provided with the specific device and or OpenCIM cell Palletizing Racks and Buffers Normally buffers are mounted on the conveyor but for a specific station layout it is possible to attach them to a table Palletizing racks are used as a flexible storage that can be adapted to various parts by using sets of different sized pins Make sure the pins are arranged identically for each part of the same type in the palletizing rack Refer to the instructions provided with the OpenCIM cell Templates Templates are used to transport parts within the system Templates which have a grid of holes together with different sized pins allow flexible adjustment for different parts in a similar way to the palletizing racks Make sure the pins are arranged identically on all templates which will hold identical parts Refer to the instructions provided with the OpenCIM cell Wiring Wiring depends on the actual stations machines and devices included in your OpenCIM installation Most systems are installed by a trained engineer who will supply you with specific wiring documentation communication layout to enable you to easily understand and maintain the system Refer to the documentation and wiring instructions provided with the OpenCIM cell Network It is possible to operate the OpenCIM on any desktop or laptop PC which complies with the required hardware specifications in which a network board adapt
147. d quality control result to manager MACRO ERROR PEND PDF FROM PDD PRINTLN PRINTLN SERROR SID 1 2 PRINT PRINT PRINTLN POST ENDM Send robot error message to manager TO PDD Controller manager protocol macros for local ID MACRO STARTL Send start of local program to manager PEND PDF FROM SPDD PRINTLN PRINTLN SSTART SIDL PRINTLN POST ENDM TO PDD MACRO FINISHL Send finish of local program to manager PEND PDF FROM SPDD PRINTLN PRINTLN SFINISH SIDL PRINTLN POST 1 TO PDD ENDM MACRO ENDL Send end of local program to manager PEND PDF FROM SPDD PRINTLN PRINTLN SEND SIDL 1 2 PRINTLN POST 1 TO PDD ENDM MACRO QCL Send quality control result of local program to manager 9 11 OpenCIM OpenCIM Programming PEND PDF FROM PDD PRINTLN PRINTLN QC SIDL 1 2 PRINTLN POST 1 TO PDD ENDM MACRO ERRORL Send robot error message of local program to manager PEND SPDF FROM PDD PRINTLN PRINTLN SERROR SIDL 1 2 PRINT PRINT PRINTLN POST TO PDD ENDM Controller Other Devices protocol macros MACRO STOP Stop a device like conveyor or pcplc process STOP GT 1 STOP PT d ENDM MACRO CNCREQ Request from VC2_CNC PEND PDF FROM SPDD PRINTLN PRINTLN SCNCREQ 1 2 3 4 5 6 PRINTLN POST 1 TO PDD ENDM MACRO CNCSTR String to VC2_CNC PEND PDF FROM PDD PRINTLN PRINTLN SCNCSTR 1 2 3 4 5 6 PRINTLN POST 1 TO PDD EN
148. dea to verify that the PCs are connected to the network Click the Network Neighborhood icon on the PC desktop to see the names of the connected PCs If you don t see the PC names wait a few seconds and press F5 If the names still do not display check the network setup again 4 4 OpenCIM 0201 Software for CIM Manager PC The following procedure describes how to install one of the OpenCIM products You can cancel the setup process at any time by pressing Cancel The software will be installed in the path C program files intelitek opencim If you already have a previous version of the software in a directory of this name select a Notes a different directory name for the new installation Installation of multiple products on the same PC is permitted provided that you have a license for each product 1 Close all open applications 2 Insert the OpenCIM software CD into the CD ROM drive e Autorun begins the installation process as soon as you insert the CD unless you hold the SHIFT key while you insert the CD e If you have turned off Autorun you must specify the CD ROM drive from which to run the installation setup file which will begin the installation From the Windows Start menu choose Run Enter x install setup where x represents the CD ROM drive In the Welcome screen of the Installation Wizard choose Next 4 In the Installation Selection Window select the OpenCIM product that you want to install and then cho
149. device driver will execute The robot waits until this script program sends a response message indicating that 1t has finished performing the requested CNC operation You can check the name of CNC script programs by looking at the Command List on the CNC Control Panel When an ACL program needs to activate an operation on another device and wait for an acknowledgment it can use the CNC synchronization mechanism The sample ACL code below demonstrates an efficient way to implement this mechanism User Manual 0201 U ee oe ET DOOR 0 CNCREQ CNC1 OPI WA IT DOOR OPEN The global variable DOOR represents the status of the door on the CNC machine It can have one of the following values 0 Door status is about to change CNC request is pending OPEN Door is open CLOSE Door is closed The variable DOOR is used as a semaphore to signal that the CNC machine has completed the requested operation i e when a response has been received from the CNC machine This variable is reset to O here to indicate that a CNC request is pending EN DOOR This line uses an ACL macro explained above to send the command message OPEN DOOR to CNC machine 1 This line suspends execution of this ACL program until an acknowledgment is received from the CNC machine Note that this line does NOT assign the value of OPEN to the variable DOOR The string DOOR OPEN is a logical condition which must be satisfied before the
150. dex e Source Index Compartment number if source location is divided into cells Located to the right of the Source Index field is another field that displays the number of the compartment e Target ID Device ID of target location where the robot is to place the part template Located next to the Target ID field is a drop down list that allows you to select the Target ID by name and not by index e Target Index Compartment number if target location is divided into cells Located to the right of the Target Index field is another field that displays the number of the compartment e Note Can be used to send special instructions to assembly programs or user developed programs GY Note The names and the range that appear in the Pick and Place dialog box are taken from the INI file used by this device driver RUN PICK AND PLACE X Part ID 0 TEMPLATE y Source ID 211 JASRS1 y Source Index 15 1536 Target ID io CNV1 y Target Index 1 1 Note 0 Figure 8 6 Run Pick and Place Dialog Box Cancel User Manual 8 13 OpenCIM 0201 OpenCIM Device Drivers Play from Begins executing a series of pick and place commands stored in a special P P File text file designated for this robot ACL_xxx PNP The xxx is the device rr ID of this robot found in the title bar of the Control Panel These commands are sent one at a time This file can be used to thoroughly test a r
151. dit or create ACL programs This need arises when you e Install a new device at a station e Move a device or a robot to a new location e Add or change a process or part definition in the Machine Definition or Part Definition utility programs that relies on an ACL program e Add or change robot tasks or parameters For example speed slow medium fast or the way the robot moves linear circular etc e Add or change the parameters of the devices attached to the ACL controller This section describes how to write ACL programs in the OpenCIM environment These programs direct a robot or other device attached to an ACL controller to e Move an object from place to place pick and place operation e Perform certain system functions e g how to react in case of a robot collision e Perform some other production process e g bar code pneumatic screwdriver CNC interface etc The Pick and Place Strategy OpenCIM uses the pick and place strategy to minimize the number of custom ACL programs required to transfer parts between locations at a station Having fewer programs yields several benefits e Less programming effort to write the original programs e Fewer changes to be made in the event devices are added deleted or moved e Fewer problems and easier to debug since all GET and PUT programs share a common structure e Requires less memory in the ACL controller User Manual 9 1 OpenCIM 0201 OpenCIM Programming Instead o
152. drivers Modes of Operation Like the CIM Manager the device drivers can operate in either Simulation Mode or Real Mode In addition Manual Mode allows you to interact with the software and hardware In order to operate a device driver DD in Real Mode check the Load column next to the desired driver s Similarly to operate a device driver in simulation mode check the Simulation column next to the desired driver s CIM DDLoader olx File a mte CIMSAF ACLDRIVER 21 CNCDRIVER 23 Figure 8 2 DD Loader WS2 User Manual 8 2 OpenCIM OpenCIM Device Drivers 0201 Real Mode Simulation Mode Manual Mode Standalone Mode Normal operating mode The device driver is ready to communicate with both the CIM Manager and the physical device or its controller The message Connected OK is displayed after the device driver successfully receives the first message from the device either on a serial port or a PC I O card In Real Mode all communications between the device and other CIM entities occur automatically However it is also possible to manually send commands to the device using the Control Panel In Simulation mode the device driver receives commands as usual from the CIM Manager and emulates a device by automatically responding with the appropriate status messages The device driver does not actually communicate with the physical device The quality control device driv
153. ds and execute them directly to the controller without any intervention from other system components You can use the ACL Control Panel as a limited terminal to send commands to a controller Commands that you type in the text box labeled Send to Controller are sent out the PC s serial port when you press Enter Responses from the controller are displayed in the status window of the device driver This capability is useful for testing and debugging individual ACL programs Task History List The Task History box shows the last several commands sent to the controller You can scroll the background to see commands that have scrolled off the screen User Manual OpenCIM Device Drivers 8 12 OpenCIM 0201 Testing Pick and Place Commands The pick and place buttons of the Control Bar allow you to send commands to the robot to move parts around the station These buttons are described below Enter P P Allows you to manually send a pick and place command to the robot Command instead of the command being sent by the CIM Manager Selecting this button presents you with the Run Pick and Place dialog box This dialog box requests the following six parameters e Part ID Number of the part template to be moved template 0 e Source ID Device ID of source location where the robot is to pick up the part template Located next to the Source ID field is a drop down list that allows you to select the Source ID by name and not by in
154. ds will be blank User Manual 5 4 OpenCIM Preparing for Production CIM Utility Programs 0201 Robot controlled Cost per Hour Specifies if a robot is needed to perform the process For example if a welding action is performed by a robot specifying YES signals the CIM Manager that the robot is in use and is not free to perform another operation This option is available only if the machine selected can use a robot to perform a task and if the Action Type is Process Estimated hourly cost to run this machine The CIM Manager uses this as one of the criteria in order to decide on the optimum production method List of Preloaded Programs Tasks are control programs that can be downloaded to a machine e g G code to a CNC machine The CIM manager keeps track of which programs currently reside in a machine s memory If a certain process requires a machine control program that is not resident the CIM Manager instructs the CNC device driver to download it to the machine Max Preloaded Programs List of Preloaded Programs The number of control programs that can reside in a machines memory at one time Once this number is exceeded the CIM Manager begins overwriting programs in the machine s memory when it needs to download a new program The current status of control programs that are loaded in the machine s memory This box is for information purposes only it cannot be used to change the programs residing in a machine
155. duction It can be used as emergency button Resets storage or default storage Restores a predefined configuration of the storage from the backup database file Enters the CIM modes dialog box 6 3 OpenCIM Operating the CIM CIM Modes Dialog Box CIM Mode RealMode Simulation Mode Simulation Speed Current Speed xl FAST x72 E AAA i Tracking Mode p Send Message to Graphic Display IV Use Tracking mode C Yes No m Update Process Time Mode Duration Update No Duration Update SAVE CANCEL Figure 6 3 CIM Modes Dialog Box CIM Mode REAL In this mode there is message interchange between Manager and Device Drivers SIMULATION The production runs on the Manager There is no message interchange between any devices You can set the production speed for the simulation where 1 is the slowest and 100 is the fastest Tracking Mode Tracking Mode must be activated in order to generate a planned schedule for the current order This schedule is normally produced and displayed when the CIM Manager is operating in Simulation mode see CIM Scheduler later in this chapter for further information Graphic Specifies whether or not status messages are sent from the devices in Display operation to the Graphic Display module so that the display is updated accordingly GS Note If the Graphic Display is not activated on any PC click No otherwise the manager will work very slowly
156. duction command A plan action that was being carried out when the error occurred What the Problem Is All fields described in this section are optional For a given error message only those fields for which information is available will display Error The text of the error message generated by the control program e g ACL Message program G code etc that was running when the error occurred Error No The error code returned by the control program Program The name of the program that was running when the error occurred Name Program ID The ID number of the control program Program Line The line in the control program that generated the error Source The place where the current part resided prior to the error This field Location consists of a location ID followed by an index number if appropriate e g a slot number in a rack Target The place where the current part was to go next if the error had not Location occurred This field consists of a location ID followed by an index number if appropriate e g a slot number in a rack User Manual 11 2 OpenCIM Errors and Troubleshooting How to Proceed In order to continue operation two tasks must be accomplished e The part should be placed where the next process assumes the part is to be found e The proper messages must be sent to the CIM Manager so that it can activate the next process In most cases the safest and easiest way to accomplish these tasks is to
157. e e The Graphic Production Module which displays the machine s status The SendMsg command informs these entities when the CNC machine has completed processing a part when there is a problem that causes an alarm condition etc This command uses a set of predefined messages to perform this function Each message has an associated ID and destination device address You can generate real time status messages by inserting the SendMsg command throughout a program You can add your own custom messages to the message file For example this capability is useful if you are programming a robot to tend this CNC machine You could define a message to notify the robot when the machine is ready to receive a part and another message to inform the robot that the part is ready to be picked up You would use the SendMsg command to send these messages Function The SendMsg command sends predefined real time status messages to any CIM entity The argument msg_to_send specifies the ID number of a message stored in the file VC2_WM DBF This ID number is sufficient to deliver the message because there is a destination address associated with each message in this file Examples SendMsg 2582 This statement finds the message with the ID number of 2582 in the file VC2_WM DBEF It then sends this message to the destination device listed in this message record SendMsg P4 SendMsg V12 User Manual 9 39 OpenCIM 0201 OpenCIM Programming Set
158. e CIM conveyor and is designed to carry a template To transport a part to another station a robot places the template carrying the part on a pallet on the conveyor The OpenCIM conveyor carries pallets in a continuous circuit from station to station The conveyor is controlled by a PLC programmable logic controller Each pallet has an ID number which is magnetically encoded in a bar on the pallet In normal cell operation each pallet is stopped briefly when it arrives at a station so that its magnetic code can be read If the PLC determines that the pallet is needed at this station it informs the CIM Manager The pallet remains at this station until the CIM Manager sends a release command While a pallet is stopped the conveyor continues to transport other pallets which are moving between stations The location at which a pallet is stopped is called a conveyor station Each OpenCIM station has its own conveyor station which contains two pneumatically operated pallet stops a magnetic pallet arrival sensor a magnetic pallet in place sensor and a set of magnetic pallet code sensors Dee 000000000 2 0000000000000 0000 00 o o aa LA oo G Figure 2 6 Pallet at Conveyor Station Piston stops at each conveyor station can be raised to hold a pallet in place while the conveyor continues to cycle past the stations The PLC controls
159. e Date the time required by the Supplier as defined in the Part Definition form How to Define a Supplier When you define a Supplier you are defining the name of the supplier who will provide parts for the CIM cell 0 1 In the Purchase Order form click New Supplier to open the Supplier Data o box e Procedure 2 In the Supplier Data box fill in the Name of the Supplier and other Supplier Defining a New information e g address or phone number Click Save The box closes Supplier and this supplier s name is added to the Supplier List 3 If you want to make any changes to specific supplier information select the Supplier from the list click Edit Supplier and make the desired changes User Manual 5 30 OpenCIM Preparing for Production CIM Utility Programs 0201 How to Create or Modify a Purchase Order The following procedure explains how to edit or create a Purchase Order o Add a new purchase order to the list by clicking New Order 2 e Click the desired row in the Supplier column and open the supplier list Procedure Select the name of the desired Supplier Defining a Customer Click the desired row in the Part name column and open the part list Select Order the desired part for example BOX In the Required Quantity field enter the number of items ordered by the Supplier in this case 3 In the Due Date field enter a value in this case 2 i e the part is to be completed in two days This causes t
160. e eee 2 21 Quality Control Device Drivers ii bonne a A a 2 22 OpenCIM Communication Network coooocconncccnoncccnoncccnnnncnnnononnnancnnnnncnnncnnnnncnonnnencnnncnnnnnos 2 23 AN O TC 2 23 RS 292 iia T E 2 24 Mp ts Outp tS A A ade laa ae 2 25 A e re e E E bantam eased eda ea ERS 2 25 User Manual i OpenCIM 0201 Table of Contents 3 Safety General Safety Rules asii lalalala 3 1 Robotand ACL Controller Safety scanere i T ens E A 3 2 CNCE Machine Sid anos 3 2 ASRS O 3 3 ASRS Carousel unn aci 3 3 A Pht E Oi te Oe AO oe tl ate ud 3 3 Conveyor anid PLC Said Td Nip aci n E 3 3 4 Installation Beare A e ooets 4 1 Conveyor and Pale aiii ninas 4 1 Robots and Robot Controller ii 4 2 ASRS a a E A a E EEE E aE R 4 2 Barcode Readef ran caon n a a a N EE 4 2 Pneumatic DEVICES siii 4 2 Palletizinge Racks and Buble 4 E A A 4 3 BS 10 9 A eee Ree ene eee TRE Rr er eo T a etre en Sot 4 3 A I a ie a es a a BEG ade a 4 3 NetWork dias ads 4 3 Software asta ido ae 4 4 N tWwork SOU 4 4 Software for CIM Manager PC aid 4 5 Software for Workstation PCs cuidada esas 4 7 Other Software oma a era eg a dd 4 8 ACL Controller Configuration sesesssessesseeeseeessseessessessereseeessseessresseesseeesseesssees 4 8 IRODOE PO SIONS 2 50 E EEEE A EE E EES E EE E E ET 4 9 System Check orisun nn id 4 10 5 Preparing for Production CIM Utility Programs Machine and Process Definitions minis ridad Sonia 5 2 Machine D tinition Ra 5 2 Machine Process e
161. e figure below In this scenario the CIM Manager sends a command to move a part from buffer 2 to a ROBOTVISIONpro camera for a quality control test This pick and place command is sent to the ACL device driver The device driver in turn sends commands to the ACL controller to run the corresponding GET and PUT programs described below Free Movement Zone O First move at beginning of PTOOS Position of Robot 7 at end of GT003 PES nor O a 1 rot rd er ra ba cK tr T lt T rr Y by Y h wo ae Destination Device O Source Device ID 005 Location ID 003 Part ID 156 Figure 9 1 Robot Movements Controlled by Separate GET and PUT Programs GET from buffer 2 1 Move the empty robot arm in a straight line through the Free Movement Zone to a point directly above the buffer 2 Lower the arm and grab the part from the template sitting in the buffer 3 Raise the arm back up to the Free Movement Zone directly above the buffer User Manual 9 2 OpenCIM 0201 OpenCIM Programming PUT under the camera 1 Move the robot arm holding the part through the Free Movement Zone to a point above the ROBOTVISIONpro camera s viewing area 2 Lower the arm and set the part within the camera s field of view 3 Raise the arm back up to the Free Movement Zone directly above the camera At end of the GET the robot is holding the part in the Free Movement Zone while it waits for the PUT program to begin executing At the
162. e file FileName to the CNC machine using the RS232 port specified in the device driver s command line For machines capable of retaining more than one program you can specify the memory region where the current program is to reside If the parameters Loader and TaskLoadedMark have been defined the device driver uses the batch file specified by Loader to perform the download recommended Otherwise the device driver s internal downloader is used Examples DownLoadD C OPENCIM WS3 MILLPART G 1 This statement sends the file MILLPART G to memory region 1 in the CNC machine DownLoadD P1 P2 When testing a machine the following statement receives the G code file and memory region that were defined in the Parameter field of the device driver s Control Panel User Manual 9 34 OpenCIM 0201 OpenCIM Programming Draw Prints a line to the screen Draw line_of_text line_of_text e String to display in the CNC e 0 80 characters Status window Purpose Viewing status messages during the operation of a CNC machine can be helpful in troubleshooting problems and verifying the proper functioning of the machine Messages can also instruct the operator of the machine when a manual procedure must be performed These messages can be particularly helpful when dealing with machines which have either no display of their own or only a very limited status panel Function The Draw command prints the string 1ine_o
163. e icons needed to prepare and operate the Virtual CIM cell which you have just created The Windows Group looks like this E C WINDOWS Desktop OPENCIM CIM 1 Of x File Edit View Go Favorites Help cc gt y Fa j Back Forward Up Cut Copy Paste Address C CAwINDOWS Desktop OPENCIM CIM 1 7 m r z Ed Ed CIM Manager Graphic Loader of Loader of i WS2 OPENCIN Display WS CIM 1 Y 3 Loader of Open CIM Virtual CIM 53 Loader of w Help Setup WS3 Ink Shortcut y gt El My Computer 36 Save and exit the Virtual CIM Setup module User Manual 7 20 OpenCIM OpenCIM Setup 0201 Stage 2 Operating the CIM Cell This part of the tutorial will give you practical experience in using the CIM operation modules The following steps all relate to the CIM 1 program group which you have created in the Virtual CIM Setup User Manual 0201 1 Click on CIM Manager 2 From Utility Programs select Machine Definition In the Machine Definition form do the following From the Machine Name list select MILL 1 Make the following entries e Process Name PROG_BOX1 e File Name 1 GC e Program leave blank e Duration 00 00 25 Click Save Close the Machine Definition Module 3 From Utility Programs select Part Definition In the Part Definition screen do the following Select supplied parts Select New to define a new part Make the following entries e Part Name CUBE e P
164. e name is mandatory If no path is specified the current working directory is used as defined by the device driver s C command line switch MainWindowBkgndColors 0 0 0 MainWindowTextColors 255 255 255 See these parameters in the ACL section above User Manual 10 23 OpenCIM 0201 Inside OpenCIM CNC Variables v1 V2 v3 v4 v5 V6 ACL2 v16 BVO BV1 PORTO PORT1 1 0x500 0x501 CNCDriverDebuggerTimer 100 10 10 CNCDriverTimer CNCIdleProcTimer CNCIdle CNCIDLI BaudRate 9600 Parity None DataBits 8 StopBits 1 XonXoff No User Manual 0201 E porto 00000010 10 24 Parameter variables used by CNC script programs These variables are used to write portable CNC script programs For further information see CNC Device Driver in Chapter 8 These 8 bit values which range from 0 255 are assumed to be the initial state of the control lines of a CNC machine when the system is turned on VO port addresses on a Station Manager PC that are mapped to the status and control lines of a CNC machine using a special interface card These values should match the jumper settings on the I O card Refresh interval in milliseconds for display of input port values on the CNC Control Panel Reserved for Intelitek technical support use only This is an internal timer in milliseconds used during communications Reserved for Intelitek technical support use
165. e original DNL QCL or PCL files Device Definition The Setup directory contains a file which defines numbers to their ACL logical name This file includes all the devices in the system For example IFNDEF _DEVICE_DMC DEFINE _DEVICE_DMC DEFINE CNV1 001 DEFINE ASRS 003 DEFINE ASMBUF 004 DEFINE BFFRI 005 DEFINE FDR 006 DEFINE TRASH1 007 DEFINE RACK1 008 DEFINE RDR 009 DEFINE LATHE 010 DEFINE MILLI 011 ENDIF ACL Macro Programs The LIB ACL directory contains the file CIMSYS DMC This file includes the system programs and macros which you will use in writing your own ACL programs e Part ID Group PID e Robot Movements e Synchronization e Open Close Gripper e Speed e GET PUT Programs e QC Programs User Manual 0201 Process Programs 9 7 OpenCIM OpenCIM Programming The following listing is the source code of CIMSYS DMC This file contains system programs macros and global variable definitions that are needed when writing your own ACL programs User Manual 0201 ES HED ROBOTEC OpenCIM ACL Program This Is The Cim Macro File For All Stations Global definitions IFNDEF _CIMSYS_DMC DEFINE _CIMSYS_DMC DEFINE _CIMSYSM_DMC Part macro MACRO PID SET PID PART 1 SET PID PID 10 SET PID PID 1 ENDM Group B movement macros IF
166. e pallet is not currently present on the conveyor The Run status can also be assigned as a result of a Free command The pallet retains this status only until it reaches the next station at which time it changes to either Pass or Arrive A pallet with a Run status has a destination of 99 i e no destination has been assigned to it Assigned to an empty pallet that is being held at a station waiting to be loaded The pallet is stopped at the station as a result of a GetFree command Indicates that a loaded pallet has arrived at its destination 8 32 OpenCIM 0201 RIs A pallet required by this station has arrived but the station is too busy to Release deal with the pallet Usually this occurs as a result of a busy robot or when all the station s buffers are full Rather than hold up traffic on the conveyor the pallet continues on the conveyor If the pallet is carrying a template for this station it will be stopped the next time it comes around If the pallet is empty the next empty pallet will be stopped in its stead The Release status changes to either Pass or Arrive when the pallet reaches the next station Pss Indicates that the pallet just passed through a station that was not its Pass destination Controlling Pallets from the Control Panel The buttons at the bottom of the Control Panel allow you to send commands to control the movement of pallets on the conveyor The buttons described below correspond to the comm
167. e quality control devices listed above Since these three device drivers are essentially similar except for the internal message format used to communicate with the quality control device this section discusses the operation of all three In this discussion these device drivers are interchangeable and are referred to simply as the quality control device driver All QC device drivers look the same to the CIM Manager i e it sends the same type of command message to each type and receives the same type of pass fail status message from each A quality control device driver performs the following functions e Activates a test on a quality control device e Receives status messages from a quality control device and sends to the CIM Manager e Allows you to test and debug a quality control device by sending commands from the Control Panel e Emulates a quality control device in Simulation mode User Manual 16 OpenCIM OpenCIM Device Drivers 0201 The QC Control Panel The QC Control Panel is a feature of the QC device driver It allows you to perform the following functions e Determine the control mode the device driver is running in e Simulate the test results from a QC device Monitor test results in real time e Test the QC device by manually issuing command messages to it and observing the results LSM Device Driver LSM13 ioj x File View Operation Help VEXI Control Mode CIM Messages Simulation Mode OC Test Reque
168. e result was received when no operation was requested Result ignored e Someone has manually triggered a bar code result by running a bar code program from an ACL Control Panel OR e Check an ACL program or CNC script that might be sending an incorrect message Machine queue overflow Too many parts are waiting to use this machine Use the Order Entry module to decrease the initial quantity ordered for parts that use this machine Reserved for future use No status message was received after a command was sent because this device driver was reset e Select how you would like to continue from the options shown on the Device Error screen No status message was received after a command was sent because this device driver is not running e Select how you would like to continue from the options shown on the Device Error screen DBF handler error Request to use an inactive field e Internal Error Call Intelitek technical support DBF handler error Record number less than 1 e Internal Error Call Intelitek technical support 11 12 OpenCIM Errors and Troubleshooting Contacting Technical Support If you need to contact Intelitek or your local distributor for assistance please fill out a photocopy of the Problem Report Form below and fax it to us Contact information of authorized distributors can be found at http www intelitek com contact index html To Intelitek Technical Support Department From
169. e the PLC Control Panel as a limited terminal to send commands to a controller Commands that you type in the Pallet Command Box are sent out via the PC s serial port when you press Enter Responses from the PLC are displayed in the Status window of the device driver This capability which should only be used by PLC programmers is useful for testing and debugging PLC control programs User Manual 8 33 OpenCIM 0201 OpenCIM Device Drivers Simulating a Conveyor When you want to run a CIM simulation the PLC device driver can simulate the operation of pallets moving along the conveyor when running in Simulation mode or Manual mode You can set the following parameters in the appropriate INI file in order to customize the simulation of the conveyor e The number of pallets traveling on the conveyor SimulationStations e The number and order of stations around the conveyor SimulationPallets e The distance between stations SimulationPosPerStation e The direction in which the conveyor moves SimulationDirection User Manual 8 34 OpenCIM OpenCIM Device Drivers 0201 9 OpenCIM Programming ACL Programming for OpenCIM In the course of production OpenCIM uses a set of ACL programs which control the movement of robots and the operation of peripheral devices connected to an ACL controller When you want to teach a robot or other device to perform a new task or to achieve better performance at a task you need to e
170. ection of the INI file for this station To guarantee proper operation of OpenCIM be sure that the file MAP INI is accessible to CS all device drivers To be sure that the MAP INI file is accessible do the following Not j Open any device driver Check if the MAP INI file is updated by editing the TCP IP configurations of the DD opened You can use any ASCII text editor e g Windows Notepad to modify MAP INI The two types of entries in this file are described below User Manual 10 12 OpenCIM 0201 Inside OpenCIM Since only one device can be assigned to a device driver on a command line an ID entry in MAP INT is used to assign other devices to this device driver For example a bar code reader device 13 and a robot device 11 may be connected to the same ACL controller and thus share the same ACL device driver for passing OpenCIM messages The following command line assigns the robot to the ACL device driver ACLDriver EXE ACLVD1 INI 11 13 COM 2 The following MAP INI entry allows the bar code reader to share the use of this device driver REDIRECT 13 11 13 A device that is sharing the use of a device driver 11 The primary device that is assigned to a device driver on the command line that invokes the device driver User Manual 10 13 OpenCIM Inside OpenCIM 0201 SETUP CIM SETUP CIM is an ASCII file which defines all devices found in the OpenCIM system The file is loca
171. ed from a conveyor station e Finish Operation has been completed Target device may now receive its next command i e another Activate e Done End The machine is now ready to receive its next command YF Activate In Process Open CIM Start Manager Device Driver Finish a ARE Done End ROBOT Figure 6 9 Log View Flow Chart Example for ACL Device Driver You can control the amount of information that is displayed by editing the CIM Manager INI file By default the system is set to display only IN PROCESS and DONE messages which allow you to see which commands have been sent and which have been executed Pallet View The Pallet View is a complete list of every pallet in the CIM cell and a description of its current status Pallet View Of x Status Pat Product Template Pass i Pass Release BOX TEMPLATE 0100 Pass Pass Pass Pass Pass Ready Ready Ready Ready GD t O RD MN 040 wN 00 ki Figure 6 10 Pallet View User Manual 6 10 OpenCIM Operating the CIM 0201 The following is an explanation of each column in the Pallet View No Identification number of the pallet Status Describes the status of Ready Pallet has not yet reached a station Pass Pallet is moving has passed through the last station Stop Pallet has been stopped at a station to be unloaded Stop Free Pallet has been sto
172. edly via computer control e Exercise special caution in the vicinity of robots since they can start up without notice and move in unexpected ways e Members of a group should be careful not to crowd too close around moving equipment when observing the activities at a given station e Do not come near a moving device when it is in operation Be careful that hair clothes especially loose sleeves and jewelry are kept away from the mechanism e Do not stick your fingers into a device while it is in operation they may get caught in the mechanism e Keep the work area clean and free of clutter User Manual 3 1 OpenCIM 0201 Safety Do not exceed the loading capacity of a device Turn off a device before attempting adjustments performing maintenance or measuring a part Robot and ACL Controller Safety Extreme caution must be exercised in the use of OpenCIM robots Recklessness may cause physical harm to the operator and other people in the vicinity Note Set up a protective screen or guardrail around the robot Make sure the robot base is properly bolted to a table or pedestal Otherwise the robot may become unstable and topple during operation Do not use physical force on the robot arm to change its position or for any other reason Be sure the robot arm has sufficient space in which to operate freely especially during homing Before connecting any input or output to the controller and before approaching or handli
173. eduler Contents of all storage devices Conveyor template definitions as assigned in the Storage Definition module Listing of files for the Report Generator Each file is named according to the report and or application it applies to dBASE index files automatically generated by the programs which update the associated DBF files Subdirectory containing LOG files for the system Subdirectory containing installation and configuration related files Data file that associates PC network file names with workstation numbers Also used to assign multiple devices to a single device driver Configuration data file contains all devices and their associated parameters Assignment of device names to ACL program numbers Default device driver parameters File containing the configuration of the feeder File containing the configuration of the rack File containing the minimum number of empty pallets running in the conveyor 10 8 OpenCIM Inside OpenCIM File Type CIMCELL WSO CIM LOG CIM PRT WS CI T R Gi O INI M PNP IM LOG ROR LOG CIMCELL AC VC SA L LSMVD1 INI WSn LVD1 INI 2_0C INI CL_011 PRT SM_009 PRT SP PL LC_001 PRT CVD1 INI WS AC 1 INI L_011 PNP CIMCELL WSn a RE E WS ROBOTn PORT DLD 2 DNL TRASH1 DNL BF FR1 DNL RD RA R CNV1 DNL EPI R1 DNL CK1 DNL
174. ek robots runs ACL programs which tell the robot what path to follow and what to do once it reaches a destination This controller contains the power supply for the robot It moves the robot by controlling the power to the motors inside the robot The controller is a stand alone real time device with multitasking capabilities which allows simultaneous and independent operation of several ACL programs This multitasking ability allows the controller to function as a controller for a robot and peripheral devices e g barcode reader X Y table simultaneously Peripheral CIM devices connect to the controller s auxiliary TO ports and RS232 ports All ports robot I O RS232 can be controlled using ACL programs Processing Machines Processing machines process parts according to processing programs stored in their memory The CIM Manager keeps track of the programs that reside in a machine s memory and downloads a new program to process an upcoming part as needed OpenCIM can interface to machines that use either I O lines or an RS232 interface to control operations such as opening closing a door turning on off the machine etc Status lines report information such as whether a door is open or closed and when a process is finished CIM Control To understand how the OpenCIM cell is controlled it is necessary to look at its control elements the communication channels that each element uses to control the devices and the network that links
175. el e g by clicking on the Output panel or by selecting a task which starts the machine Warning The ACL Device Driver The ACL device driver relays messages between the OpenCIM network and the devices attached to an ACL controller such as e An Intelitek robot e An automatic screwdriver e A barcode scanner e AnX Y table This device driver receives command messages from the CIM Manager and adjacent CNC machines In response it runs the corresponding ACL program residing in the controller The ACL device driver communicates with the controller using an RS232 port on the Station Manager PC User Manual 8 10 OpenCIM OpenCIM Device Drivers 0201 The ACL device driver performs the following functions e Activates ACL programs e Receives status messages from ACL programs and relays them to the appropriate CIM entity e Allows you to interactively operate robots and peripheral devices attached to an ACL controller e Allows you to test and debug ACL programs by sending commands from the Control Panel e Emulates a robot in Simulation mode The primary ACL command is to run a set of pick and place programs which direct a robot to move a part from one location to another at a station ACL programs can also direct a robot to perform other tasks such as assembly operations or they can control peripheral ACL devices such as an automatic screwdriver The ACL User Interface The ACL User Interface is a feature of the ACL Device
176. elease more than one part the first time in order to fill the buffers for each of the machines In our example releasing two parts in the beginning of production and releasing one additional part each time a part finishes its process at M2 will give maximal throughput of the production line since machine M2 which forms the bottleneck will always be busy also minimizes the in process stock and leaves a free time slot for machines M1 and M3 to work on other parts with a lower priority from the same production process It can then be seen that the location of the NEXT command immediately after the longest process results in maximal utilization of the system On the other hand locating the NEXT command at the end of the production process will result in a system which uses more parts in the buffer thus continuing to deliver good throughput even in cases of failure inaccurate data or a combination of simultaneous production of different types of parts having different priority levels The timing for parts of different types it is possible that they share the same machines for part of their production process uses the same mechanism for each part and in addition uses the machine queue mechanism in order to decide which part will be processed first in a certain machine As a simple example the machine queue mechanism will choose a part having a higher priority level User Manual 9 64 OpenCIM 0201 OpenCIM Programming 0201 In the foll
177. ency To manually set the zero point 1 Press the Z button from the main menu on the machine or from the file display menu 2 Select the Focal Length option 3 Place the gauge on the table if a template is always used place the gauge on the template SIZ Warning To prevent impact be careful not to raise the table with the gauge directly under the lens carriage 4 Raise the table carefully to the position where the upper chamfered part of the gauge lies firmly against the side of the focus lens carriage 5 Continue raising the table to the point where the gauge tilts outwards 6 Gently lower the table to the exact point where the gauge straightens i e it is aligned with the side of the carriage This is the zero point of the laser engraver and the loading unloading position of the robot 7 Select the Set Focal Length option and confirm to set the zero point 8 Once you have set the zero point click OK in the ULS device driver to display this screen 10 x File View Operation Help or l Operation Mod _ Open CIM Message gt From Manager lt To Manager Device Driver Ready B rULS Universal Laser Syster Get Current RUH Ready stor 192 168 1 21 C program files O penCIM32 CIMLABB WS 74 como From the File menu these options are available DownLoad File Clear All Files T Properties v LogFile Exit Down
178. eport Selects a predefined part from the part name drop down list Selects a predefined part ID from the part ID drop down list 5 9 OpenCIM Preparing for Production CIM Utility Programs Part Table Part Type Select one of the following types for this part A part that can be ordered from the CIM The final part at the top of the part definition tree is always defined as a product Part is the product that is produced by the CIM system In some industrial software the term MAKE is often used to refer to the product Supplied A part received from an outside source i e a part not produced by the CIM therefore it does not require a process definition Supplied parts do not contain any entries in their Part Process tables A supplied part is found only at the bottom of the Part Definition tree In some industrial software the term BUY is often used to refer to the supplied part A part or subpart which has failed QC This definition allows the CIM Manager to issue instructions on how to handle a rejected part Phantom parts cannot be ordered Product Part Data Part Name A string which uniquely identifies this part i e two parts cannot have the same name The name should be easily recognizable to CIM users The string may contain the characters A Z 0 9 and underscore _ but no spaces Part ID A numeric value 1 999 which uniquely identifies this part i e two parts cannot have the same ID This
179. er Select the Subpart cell Choose BOX from the drop down list and type MILL2 as the Process 6 Add a new process row by right clicking on any cell into the current row and choose Insert After from the edit menu In the second row in subpart field choose COVER from drop down list and type ASSY as the Process In the Template Type field enter an identifying number for the type of template which will be dedicated to carrying this part e g 01 This data will be read and used by the Storage Definition program 8 It is not necessary to specify a Rack Feeder type for the final product 9 Your screen should now look like this CIM PART DEFINITION C OpenCIM32 DEMO WSO File Edit Help 0040108 meo Ae Product Parts Supplied Parts Phantom Parts poe T sume Ps Poo Servi res ro COVERED BER 55 E A IS Template Type Setup Time or horom 7 Ready 10 Click S to save 11 You can now generate and view a Part Definition Report by using the Report Program a The above listed procedures represent a simplified example When defining more complicated parts it may be necessary to Note e Enter products in the Subpart column of the Part Process Table Use only predefined process names in the Process column of the Part Process Table e Add parameters User Manual 5 15 OpenCIM 0201 Preparing for Production CIM Utility Programs How to Define Quality Control Processes Whenever
180. er has been installed providing that you have installed the software driver which enables the adapter to work with Windows for Workgroups see Network Setup below Network wiring which is documented in the communication layout is performed through a hub User Manual 4 3 OpenCIM 0201 Installation Software Installation Network Setup Once Windows has been installed and all PC devices CD ROM drive mouse graphic card network card etc have been set up on each PC that is to be used in the OpenCIM network do the following 1 User Manual Installation Define the Network Workgroups and computer names Computer names are case sensitive It is recommended that you use names such as these Network Workgroup CIM CIM Manager PC CIM MANAGER Station PCs CIM PC1 CIM PC2 etc on which the logical workstations WS1 WS2 etc of the CIM are located Set the TCP IP network protocol as your communication protocol Select the IP address as follows If your network Workgroup is part of a global network i e is connected to a server choose the option Obtain an IP address automatically If your network workgroup is local i e not connected to a server set the IP address for example as 200 1 1 1 and increment the last digit for each additional PC For all PCs in the CIM specify the same subnet mask for example 255 255 0 0 For details contact your network administrator If you are using more than one PC it is a good i
181. er Engraver PLC The CIM conveyor Device Driver Control Panel Device drivers are loaded automatically by the virtual loader DDLoader EXE which is activated whenever a CIM Manager or Start Station icon is activated This program loads all device drivers from command lines found in the Loading section of the device driver s INI file Refer to Chapter 10 for more details on the loader program All device drivers have the following features e A Control Panel for manually sending commands to the device and for viewing status information e A Virtual Device Driver status window for displaying status information error messages and responses from the device when appropriate User Manual 8 1 OpenCIM 0201 OpenCIM Device Drivers When a device driver is loaded its Virtual Device Driver status window and its Control Panel appear on the screen For example ACL Device Driver ACL11 Ol x File View Operation Help maal Control Mode Simulation Mode Start new session Send To Controller Task History Open CIM Messages Complete from P P File Message was Sent C OpenCIM32 DEMO4 WS1 172 16 12 239 Figure 8 1 Device Driver Control Panel ACL Close the status window in order to close the device driver De The device driver Control Panel is discussed in detail in the section on the ACL device Not driver The discussion there is applicable to all other device
182. er that sends this message This value must be one of the following in lower case dde_acl dde_cnc WM_INPUT The ID of the message to be sent NAME_WS Name of destination workstation that is to receive this message as specified in the file MAP IND NAME_DDE The type of device that receives this message e g dde_cim for the CIM Manager WM_ This number identifies the type of message being sent ID_DEVICE Device ID of the receiver as specified in the file SETUP CIM If a device does not appear in SETUP CIM this value will be 0 e g the CIM Manager the Graphic Tracking Module an ASRS NOTE A description of this message free text AY The term DDE stands for MS Windows Dynamic Data Exchange OpenCIM device drivers do not currently use DDE but this term remains in the above field names for vote backward compatibility The following table shows the standard OpenCIM messages contained in VC2_WM DBF External CIM Message Description Message 2225 Robot Start from ACL 2226 Robot Finish from ACL 2230 Robot End from ACL 2335 Pallet Stop from PLC 2336 Pallet Pass from PLC 2337 Error from PLC 2338 Atrive Free Pallet from PLC 2229 Error from ACL User Manul A nen CIM 0201 Inside OpenCIM External CIM Message Description Message 2339 2580 2576 2581 2582 2138 2137 2195 2358 2583 2359 Complex Pass Message from PLC to OLMT CNC End from CNC CNC Error from CNC CNC
183. ers randomly return either a successful or unsuccessful status message based on the parameter FailPercent All other device drivers always return a successful status message in Simulation mode In Manual mode the device driver receives commands as usual from the CIM Manager while you interactively emulate the device using the device driver s Control Panel The device driver does not generate status messages automatically they are generated only when you manually make selections from the Control Panel In Manual mode the device driver does not actually communicate with the physical device See the specific section about each device driver for details on how to use the Control Panel to send responses back to the CIM Manager The Standalone mode enables you to input manager specific commands and execute them directly to the controller without any intervention from other system components Device Driver Loading Options Normally device drivers are started from the Loader program that reads device driver command lines from an INI file Load2 C OPI For example ENCIM32 BIN ACLDriver Load3 C OP ENCIM32 BIN CNCDriver EXE ACLVD1 INI 21 COM 1 C EXE CNCVD1 INI 23 COM 2 C If you are activating a device driver in standalone mode cancel the TCP IP Network Messaging between the ACLDD and the manager To do so From the DD Control Panel select OPERATION MENU Select TCP IP status and
184. esis surrounding the command s argument list is missing No End statement was found for the current program in the Request column of CNC_SCR DBF The command name is not valid Check the spelling The program name is not valid Check the spelling The bit mask must be an 8 character string composed of 1s and Os Replace the invalid address with the variable PORTO or PORTI OR Check the value assigned to parameter variables PORTO and PORT1 in CNC INI There are either too few or too many values in the argument list for this command An argument contains a string value instead of a numeric value A character other than amp or was specified as a bitwise operator OpenCIM OpenCIM Programming CNC Script Language Commands DownloadD DownLoadD Sends a G Code file to the CNC machine via RS232 Name DownLoadD FileName MemArea Inputs FileName e Full DOS path of G code program 0 9999 to be sent to the CNC machine MemArea e Region in the CNC machine s ols memory where this program is to be loaded Purpose Normally a G code file is assigned to a CNC process in the Machine Definition module In this case the CIM Manager takes care of automatically downloading this file prior to invoking the process and the DownLoadD command is not needed You should only use the DownLoadD command if you cannot set up a downloading batch file Function The DownLoadD command sends the G cod
185. ess name Likewise do NOT use the same process name to refer to processes on different machines which do not perform the same operation on the same part The following reserved words cannot be used as Process names User Manual 0201 ALLOC GET PACK ASSEMBLY GET_FIX PLACE BASE MAKE PROCESS CNC MOVE QC DELIVER NEXT RENAME END_ASSEMBLY NOP TARGET FREE ONFAIL TRANSFER 5 3 OpenCIM Preparing for Production CIM Utility Programs File A file containing the G code program or other program associated with this process This file name can include a valid DOS directory path If no path 1s specified the CIM Manager expects to find this file in the current working directory associated with the device driver for this machine A file can contain one machine control program Different machines that perform the same process will have their respective control programs stored in different files Program The name of the machine control program associated with the process being defined This Program Name is used by an ACL controller which is Operating a machine Fail Your estimate of the number of rejected parts that will result when this process is run on this machine 0 100 The CIM Manager takes this value into consideration when simulating a quality control process Duration The number of minutes this process takes to produce one part The CIM Manager takes this v
186. essage indicates that the destination device can now proceed to process the part template even while the robot continues to move back to its idle position The Finish message can be used to speed up time critical operations in a manner similar to the Start message For example as soon as a robot has placed a template on a conveyor pallet and moved out of the way the PUT program can send a Finish message The CIM Manager can then release the pallet even while the robot continues to move to its final resting position The Finish message is sent by the macro FINISH User Manual 9 4 OpenCIM 0201 OpenCIM Programming End The PUT program sends an End message to report that the robot has completed this pick and place operation and is now available for the next command The End message is sent by the macro END The macros for all three messages Start Finish and End take care of returning the command sequence number stored in the parameter variable ID This value allows the CIM Manager to identify the source of the message d In order to avoid delaying the conveyor unnecessarily send the Start and Finish messages as Tip soon as possible when writing GET and PUT programs that deal with moving a part template to from a conveyor pallet For most other devices the Finish and End messages typically come one right after the other at the end of the PUT program You can monitor the progress of ACL programs at run time by l
187. esses parts at a station CNC machines such as lathes and mills process parts according to user supplied G code programs A peripheral device which aids the robot in material handling tasks e g a linear slidebase that supports a robot an X Y table a tool adapter various grippers such as pneumatic or suction models etc 2 6 OpenCIM 0201 An example of an OpenCIM cell is shown schematically in the following figure 4 10 STATIONS aio wes 17 eee S mo A O ULARAS DNG A Bel gt Saat ma Ba OOO Figure 2 3 Sample OpenCIM Cell User Manual 0201 2 7 OpenCIM System Overview Material Flow in the OpenCIM Cell Material handling tasks can be divided into two groups Primary Material Handling Transportation of parts between stations Secondary Material Handling of parts within a station such as placing a template Handling on the conveyor removing a part from a feeder inserting a part in a CNC machine or assembling parts In an OpenCIM cell the primary material handling tasks are usually performed by the conveyor A robot in combination with its peripherals performs the secondary material handling tasks at each station When a robot removes a template from the conveyor it typically places it on a buffer A buffer is a tray designed to hold a template when it is re
188. eter variable V1 V16 P1 P8 Examples Draw2 P3 V2 Draw2 V16 V5 Draw2 Part ready P8 User Manual 9 36 OpenCIM 0201 OpenCIM Programming PulsBit PulsBit Turns on the designated bits of an output port for a specified duration Purpose PulsBit portn maskl mask2 time_to_puls portn Address of the output port to be e 0x0000 modified OxFFFF maskl An 8 character string containing 00000000 1 s and 0 s representing a bit 11111111 mask All bits set to 1 are held V Zz V 6 high for the duration of bcm ue time_to_puls An 8 character string containing 00000000 1 s and 0 s representing a bit 11111111 mask All bits set to 1 are held A 6 high for the duration of EA time_to_puls time_to_puls e Number of milliseconds to pause CNCDriverTimer program execution while asserting 2147483647 vI V16 P16 the specified high bits Some operations of a CNC machine are time based as opposed to operations that signal their completion via a status line The PulsBit command provides a convenient way of executing an operation for a specified time period For example after a part has been machined it may be necessary to rinse it with water for 30 seconds before removing it from the CNC machine The PulsBit command can be used to turn on the bit which controls the rinse cycle for the required period of time
189. etup module You will be prompted to save the current placement of objects To delete a Virtual CIM cell setup highlight the name of the cell in the Select Item menu and press Delete You cannot delete a cell that is currently open When you delete a cell from the Select Item menu the subdirectory and all files in it will be deleted 7 2 OpenCIM 0201 Viewing The Virtual CIM Setup module uses the same method as the Graphic Display module for manipulating the view of the CIM cell o To change the angle of the overhead scene place the cursor on the vertical gt scroll bar and drag it up and down Procedure Torotate the scene place the cursor anywhere on the screen and Manipulating the e Click the right mouse button and drag to the right to rotate the display Graphic Display counterclockwise e Click the right mouse button and drag to the left to rotate the display clockwise To zoom the scene place the cursor anywhere on the screen and e Click the right mouse button and drag up to zoom in e Click the right mouse button and drag down to zoom out E Click on ViewlRedirect Camera e Click any object in the scene It now becomes the center point for the Procedure display manipulation The view changes to an overhead scene if it is not Changing the Focus already which you can now manipulate as described above of the Graphic Display User Manual 7 3 OpenCIM 0201 OpenCIM Setup Edit Menu New Object Once
190. evice group A Position before P1 Position before P2 Position before P3 Position before P4 Position before P5 Position before P6 Position before P7 Position before P8 Position before P9 Time needed for group B New group B position Last group B position Time constant variable for group B Temporary new position for group B Temporary last position for group B Last position in the device group B Position before PB1 Position before PB3 9 14 OpenCIM OpenCIM Programming e ACL Controller User Variables OpenCIM User Variables oY Note From the ATS type LISTVAR to display a list of variables The local variables are e OpenCIM Local System Variables ACL Controller Variables Variable Description SI SIDL ID Local e OpenCIM User Defined Local Variables ACL Controller Variables If you want to modify one of the ACL System program files enter these changes in the unique PROLOGn DNL file only e g If you want to change the SPFA go to the EPILOGn DNL file and type SETSPFA 80 PROLOG PROLOGn DNL In the PROLOGn DNL file you can modify system programs such as Global System variables e g SPSA speed slow group A predefined positions or any other settings that need to be predefined for a particular station The following examples show how the PROLOGn DNL file can be modified Modify Operating System Programs KKKKKKKKK HOME KKKKKKKKKKKK T PROGRAM HOMES Y HOMING THE ROBOT HOME HOMING
191. f more than one device is attached to a controller you can specify the ID of any one of these devices e g the robot s ID in the case of an ACL controller The RS232 port on the Station Manager PC that the device driver uses to communicate with the device Com ports 1 4 are supported Com parameters baud rate parity etc can be assigned in the initialization file IniFile in the section for this device For example CNCDriverDefinitions A port value of 0 zero indicates that the device driver is to operate in Manual mode This optional switch starts up the device driver in Simulation mode In this mode the device driver emulates a robot by automatically generating status messages in response to command messages You can invoke a device driver in any one of the following ways e Use the OpenCIM Loader to automatically start up a set of device drivers listed in the Loading section of an INI file e Inthe Windows Program Manager click on an icon which is defined to run the device driver e In the Windows Program Manager select File Run and enter the device driver command User Manual 0201 line 10 3 OpenCIM Inside OpenCIM OpenCIM Directory Structure Each PC on which the OpenCIM software has been installed has the same directory structure The figure below shows the OPENCIM directory structure path listing before any CIM system is created by the Virtual CIM Setup E E Intelitek E O Opencim ac
192. f writing individual ACL programs to move a part between two locations a point to point approach the pick and place strategy provides a more systematic method that requires only two programs for each location a GET and PUT A GET program picks up a part from a location A PUT program places a part at a specific location GET and PUT programs for different locations are designed to work together to allow the robot to take a part from any location GET and deliver it to any other location PUT For example if there are six locations at a station it would require 30 point to point programs to cover all the possible combinations of moving a part between any two locations The pick and place approach requires only 12 programs 6 GETs and 6 PUTs A Free Movement Zone is the key to getting GET and PUT programs to work together This zone is a region approximately Y2 meter above work surface in which the robot can move freely and quickly between locations without encountering any obstacles The first operation in a GET or PUT program is to move the robot in a straight line to a position directly above the location where it is needed From there a program uses a set of detailed ACL commands to maneuver the robot arm to a point where it can pick up or place a part at a specific location When a GET or PUT begins executing it assumes that the robot arm is in the Free Movement Zone waiting for a command A typical pick and place scenario is shown in th
193. f_text in the CNC Status window This window appears on the PC running the CNC Device Driver The Draw command prints each string on a new line The message string can be from 0 80 characters long This argument can consist of either a string literal enclosed in quotation marks e g Drilling in progress ora parameter variable V1 v16 P1 P8 Examples Draw P3 Draw V5 Draw Door Open User Manual 9 35 OpenCIM 0201 OpenCIM Programming Draw2 Draw2 Prints 2 lines to the screen Draw2 text_line 1 text_line_2 text_line_1 e First string to display in the e 0 80 characters CNC Status window BOX IR 2 e Second string to display in the e 0 80 characters CNC Status window Purpose When there is more than one line of text to display it is convenient to use the Draw2 command to print two lines of text with one command call Using the Draw2 command is also faster than making two successive calls to the Draw command This can be an advantage when running in a busy real time environment Function The Draw2 command prints the strings text_line_1and text_line_2 in the CNC Status window This window appears on the PC running the CNC Device Driver The Draw2 command prints each string on a new line Each message string can be from 0 80 characters long These arguments can consist of either a string literal enclosed in quotation marks e g Machine overheated or a param
194. files use the same structure as standard Windows INI files such as WIN INI These programs read their respective INI files at initialization time If you make a change to a program s INI file after it has started you must end the program and restart it for the change to take effect Default values for all devices are stored in the file OPENCIM INI Settings for individual devices can be made in a local INI file which is specified on the device driver loader s command line If the same parameter appears in both OPENCIM INI and a device driver s local INI file the local setting takes precedence All parameters must appear in either OPENCIM INI or in a local INI file The OPENCIM32 CIMLABA SETUP OPENCIM INI file for the CIMLAB4 setup is shown below General CimSetupPath SETUP SETUP CIM CimSetupDir SETUP CimLibDir LIB CimDataDir DATA CimWorkDir data CimReportDir DATA Networking CimMapPath SETUP MAP INI Timer 300 Attempt sCount 3 PassCount 3 OffDelay 3 EchoFilter 1124 Simulation PCPLC 20 7 15 ASRS1 NumberOfRows 6 NumberOfCols 6 NumberOfGrids 2 FirstGridWithMinIndex Bottom LocationMinIndexGrid LeftBottom DirectionIncIndexGrid Right WndStatus PROGDEF 0 ORDERDER 0 STRGDEF 0 DEVICEDEF 0 User Manual 10 18 OpenCIM 0201 Inside OpenCIM LOGDEF 0 PALLETEDEF 0 LEAFDEF 0 EVENTDEF 0 MANAGERDEF 0 HYSTORYDEF 0 CIMMODES TRACKINGMODE 0 UPDATEDURATION 0 SENDTOGRAPH 0 SIMULATION
195. g View The Log View is a transcript of the Leaf View It details all messages which have been sent and received by the CIM Manager BOx 1 1 IN PROCESS 3645R51 PLACE TEMPLATE 010003 on CNW1 1 BOx 1 1 DONE 3645R51 PLACE TEMPLATE 010003 on CNV1 1 B0X 1 1 IN PROCESS CNV1 DELIVER TEMPLATE to CNV1 2 BOx 1 1 DONE CNV1 DELIVER TEMPLATE to CNW1 2 BOx 1 1 IN PROCESS ROBOT2 PLACE TEMPLATE on BFFR1 COVER 1 1 IN PROCESS FDR1 GET COVER FDA1 COVER 1 1 DONE FDR1 GET COVER FDR1 COVER 1 1 IN PROCESS CIM RENAME COVER 1 1 DONE CIM RENAME COVER 1 1 IN PROCESS CIM To4ssembly COVERED_BOX 1 1 JIGXY4 ASSY COVER 1 1 DONE CIM To4ssembly COVERED_BOX 1 1 JIGXY4 ASSY BOx 1 1 DONE ROBOT2 PLACE TEMPLATE on BFFR1 BOx 1 1 IN PROCESS ROBOT2 PLACE BOX on MILL1 BOX 1 1 TASK LOAD MILL1 MILL2 BOX MILLI GCODE2 NC BOX 1 1JDONE ROBOT2 PLACE BOX on MILLI Figure 6 8 Log View Each line in the Log View will have one of the following status reports e Activated CIM Manager has determined that a command can be sent to a machine e g a robot or CNC machine User Manual 6 9 OpenCIM 0201 Operating the CIM e In Process command has been sent to the machine for example GET part from device A source and PUT part in device B target e Start Operation has started Source device may now receive its next command i e another Activate Used for example to notify CIM Manager that a pallet can be releas
196. g box and select Unlock e If you have email service but not on the same computer on which the software is installed a Notepad window containing all required details will open Fill in the requested user information optional and then transfer the text file to your email program Send to info intelitek com Subject line Intelitek Software License To ensure automatic processing use this exact subject line and do not edit the automatically generated text in the message You may add text and comments to the end of the message Once you receive the unlock code enter it in the Registration dialog box and select Unlock e Fax or Phone If you do not have Internet or Email service select Get Unlock Code and select By Fax or Phone A Notepad window containing all required details will open Fill in the requested user information optional and then print out the document Contact your local dealer or Intelitek with the printed information Protect your license Every unlock code is unique It will become invalid and cause the software to stop functioning when you change a physical component in your PC e g hard disk network card CPU format your disk or install a new operating system e If you want to upgrade your PC and keep your software operational you must first transfer the license unlock code to another PC e Once you have upgraded your system reinstall the software if necessary and transfer the license back If
197. get location Places subpart assembly args inaez BOX in location 2 The following system variables can be used in the Process definition Variable Description SPARTID Part ID as defined in the Part Definition form STEMPLATEID The Template ID six digits defined in the Storage Definition form STEMPLATETYPE The Template Type two digits defined in the Storage Definition form SPRIORITY The Priority defined in the Manufacturing Order SDURATION The Duration defined in the Machine Definition form User Manual 5 11 OpenCIM 0201 Preparing for Production CIM Utility Programs Sequence This field lets you specify whether this process must be performed in the order in which it appears in the Part Process table This field must contain a T true Description A description of the part being defined that explains what it is and where it is to be used Template The Template type 01 99 whose pin arrangement can accommodate this Type part Rack If this part is to be stored temporarily in a rack during processing specify Feeder which types of racks are capable of accommodating this part Rack Type gt Types 200 Rack types are defined in the Virtual CIM Setup You can specify multiple rack types in this field each one separated by a comma e g 201 202 203 Selections are made by choosing from a drop down list or by typing in the entry Supplied Part Data When you select S
198. h the fixed settings in the controller OpenCIM Inside OpenCIM MainWindowBkgndColors MainWindowTextColors 0 0 0 MainWindowBkgndColors 0 0 0 MainWindowTextColors 0 255 0 Color settings for the background and text colors in the device driver s Status window When a Station Manager PC is running several device drivers simultaneously these parameters allow you to set each one to a different color in order to distinguish between them The three numbers represent a color using the RGB color scheme Red Green Blue Values range from 0 255 A O zero indicates the absence of red green or blue respectively and 255 signifies a primary color at full intensity For example Green 0 255 0 White 255 255 255 Black 0 0 0 Do not set the text color to the same value as the background color This combination would cause the text to become invisible CNC Device Driver Settings General CimSetupPath C OPENCIM32 SETUP SETUP CIM See this parameter in the ACL section above CNCDriverDefinitions CNCScriptFilePath CNC_SCR DBF CNCScriptDebugFilePath CNC_SCRS DBF These files contain the CNC script programs which appear in the CNC Command List on the Control Panel This first parameter specifies a file that is used when the CNC device driver is operating in Real Mode The second parameter is an alternate file used when the device driver is operating in Simulation or Manual mode The fil
199. hat it has completed the operation The previous table shows the sequence of events in a set of PUT and GET programs that communicate with a CNC machine The sample ACL code shown in this section demonstrates how to write these programs and implement the CNC synchronization mechanism You must code this synchronization mechanism into each of the following programs Note the order in which programs are activated as shown in the figure below ACL The PUT and GET programs which tell the robot how to insert and remove Controller parts from a CNC machine CNC Device CNC script programs executed by the CNC device driver which are Driver activated by a robot request For example OPEN DOOR CLOSE DOOR OPEN VISE CLOSE VISE ACL A group of short ACL programs which set a semaphore variable that Controller announces that the CNC machine has completed the requested operation e g DROPN door open DRCLS door closed VCOPN vise open VCCLS vise closed User Manual 9 55 OpenCIM 0201 OpenCIM Programming CIM Manager PROGRAM PUT CNC1 CNCREQ CNC1 OPEN DOOR Program DROPH WAIT DOOR OPEN vag ACL Controller 2 SET DOOR OPEH END ACL Controller PROGRAM OPEN DOOR PULSBIT PORTO BVO 00001000 600 SENDSTR Vl RUN DROPH CNC Device Driver Figure 9 7 Sequence of Program Activation During CNC Synchronization Sequence of Program Activation 1 RUN GTxxx RUN PT
200. have tables with slotted surfaces or predrilled holes to facilitate the mounting of the robots and devices Conveyor and Pallets Refer to the instructions provided with your conveyor and or OpenCIM cell Set up the conveyor within reach of the power supply and the air supply Assemble the conveyor and attach the conveyor buffers at each station Make sure the conveyor is assembled so that it moves clockwise or counterclockwise depending on your specific system layout User Manual 4 OpenCIM 0201 Installation Place the pallets supplied with the system anywhere along the conveyor with the arrow on the pallet pointing in the direction of movement of the conveyor Robots and Robot Controllers ASRS For detailed instructions on connecting the robot and controller refer to the User s Manual supplied with the robot controller In addition refer to the instructions provided with your OpenCIM cell The basic steps for installing an ACL robot and controller for use in the OpenCIM cell are 1 Open the controller and install the auxiliary multi port communication card in the controller according to the instructions in the User s Manual supplied with the robot controller 2 If the station contains an I O box connect it to the ACL controller e g Controller Type A as follows e Make sure the ribbon cable is plugged into the I O box connector marked for the controller at the station e g Controller Type A e Thread the
201. he A Plan includes the intervening steps required to move parts from machine to machine and from station to station When an order is submitted the Order Entry module automatically creates the A Plan by combining the appropriate material handling commands described below with the user defined processes from the Part Definition table A Plan Commands The following discussion of the A Plan assumes that e The default storage device is a single ASRS used to house empty templates raw materials and finished parts e The default assembly device is a jig machine which is used to hold parts that are in the process of being put together by a robot The list below shows each command that can appear in the A Plan table Related commands are grouped together These groups are labeled in the Purpose column Purpose A Plan Description Command Loop for Producing MAKE Defines the beginning of a loop used to produce the Multiple Parts of the number of products ordered Same Type NEXT Marks the point at which production of the next ordered part begins Note that production of the next part may begin before the current part has finished User Manual 9 68 OpenCIM 0201 OpenCIM Programming Purpose A Plan Command Template Commands DELIVER FREE Assemble Two Parts BASE PACK E NDPACK E H Storage Commands GI STORE RENAME Robot Commands PLACE LOAD UNLOAD Com
202. he MRP to instruct the CIM to begin production immediately 6 Click Save to save the order for this Supplier GS Note To order other products at this time add a new line by right clicking on the last cell in the order choosing Insert After and repeating steps 2 6 7 If you want to order more parts in the same order add a new line by right clicking on the last cell in the order choose Insert After and repeat steps 2 6 8 After you have finished filling in the order for a specific customer create the order by clicking MRP 9 Click the PO button to activate the Report Generator which will display or print the Purchase Order How to Send a Purchase Order When you click PO the MRP program prompts you to enter the date or dates for which you to print out Purchase Orders Since you do not want to send orders too far in advance which will commit the purchase and since you do not want to send a number of orders day after day the MRP allows you to consolidate your orders for a period of time say a week Once the dates are entered the OpenCIM Report Generator menu appears on the screen Refer to Purchase Order Report later in this chapter User Manual 5 31 OpenCIM 0201 Preparing for Production CIM Utility Programs Reports OpenCIM provides a powerful yet flexible report generator This utility program allows you to view and print information from the various OpenCIM databases You can access nine types of
203. he MS DOS command interpreter with the string specified at the function s input Examples MSDOS V1 MSDOS P1 MSDOS LOADER BAT FILE DAT MSWINDOWS MSWINDOWS Launches any MS WINDOWS executable file Name MSWINDOWS St ring Inputs String e Any valid MS Windows e Any valid MS Windows command line command line Purpose The command provides an interface from OpenCIM to the MS WINDOWS operating system Function The MSWINDOWS command launches the MS WINDOWS executable file according to the string specified at the function s input Examples MSWINDOWS V1 NDOWS P1 MSWINDOWS C WINDOWS NOTEPAD EXE C OPENCIM DATA LOG S n 2 User Manual 9 51 OpenCIM 0201 OpenCIM Programming ABORT ABORT Unconditionally aborts the current CNC Device Driver program Name Purpose Using this command is the only way to abort a CNC Device Driver program without the CIM Manager Function The ABORT command unconditionally aborts the current CNC Device Driver program Examples ABORT User Manual 9 52 OpenCIM 0201 OpenCIM Programming Interfacing a Robot with a CNC Machine When a robot inserts a part into a CNC machine it must coordinate its movements with the Operation of the machine using a CNC synchronization mechanism This mechanism is used when a robot sends a command message to a CNC machine telling it to
204. he Machine Process Table Program File Name The column File in the Machine Process Table User Manul SB OpenCCM 0201 Preparing for Production CIM Utility Programs ASRS Report The ASRS Report shows the contents of the ASRS It is generated from information that was entered in the Storage Definition form The following is an example of an ASRS Report Name mE Part Name S Status Template ms o een e EC ET Pases e emasa 0 Pore on Tenpiave onoo iss s _ rosxrcmass_sor fo Port on Tenpiace 010005 fasns 6 enznsciass_sue TOC 620006 Each of the column headings in the ASRS Report relates to a specific field in the Storage Definition form as follows ASRS Report Storage Definition Form Field Name Index Part Name Part ID Status Template Number User Manual Name of storage location The number displayed in parentheses below the ASRS grid e g ASRS 15 This is an internal index used in communication between the CIM Manager and the ASRS robot controller and not the Index of the graphically displayed ASRS cell The name of the part residing in the current storage cell as defined in the Part Definition form refer to cell in grid Part ID as defined in the Part Definition form Status of the storage cell Empty Empty Template or Part on Template The six digit template number 5 38 OpenCIM Preparing for Production CIM Utility Programs 02
205. he operations performed in the CIM cell in both Production Graphic Displays the Manager and in the 3D views User Manual 6 18 OpenCIM Operating the CIM 0201 Views The Graphic Display module offers two types of views e An overhead view e An elevated side view AN When the Simulation window opens it always displays the view that was displayed when xe you last closed either the Graphic Display or the Virtual CIM Setup window To manipulate the views do the following o To change the angle of the overhead scene place the cursor on the vertical A scroll bar and drag it up and down It is recommended that you click on the Pro ed re vertical scroll bar up and down arrows Manipulating the To rotate the scene place the cursor anywhere on the screen and Graphic Display e Click the right mouse button and drag to the right to rotate the display counterclockwise e Click the right mouse button and drag to the left to rotate the display clockwise To zoom the scene place the cursor anywhere on the screen and e Click the right mouse button and drag up to zoom in e Click the right mouse button and drag down to zoom out b Click on View Redirect Camera e Click any object in the scene It now becomes the center point for the Procedure display manipulation The view changes to an overhead scene if it is not Changing the Focus already which you can now manipulate as described above of the Graphic Display User
206. he same level SIZ Warning Do not place any objects in the laser machine s front cabinet When the table descends to its lowest level it could crash into objects that may have been placed there Downloading Print Files The laser has two connectors at the back a 9 pin connector from the device driver and an LPT port for connecting to the computer from which the CorelDraw or Freehand files are downloaded The laser has two methods of file storage one file saves only one file to the memory and when a new file is downloaded it replaces the old one when multiple files are stored in the laser memory each file is numbered sequentially according to the download order SIZ fie A Warning Working with multiple files in on line mode could cause the wrong file to be activated In one file mode the fileload bat file enables the CIM Manager to automatically download the specific file that is required for the process and later activate other files as ordered by the CIM Manager User Interface When you activate the ULS device driver you are reminded to set the machine s Z axis zero point ULS Device Driver xi STOP Move the Laser surface to focus This will set the Z axis in the ULS to zero When ready press OK User Manual 8 24 OpenCIM OpenCIM Device Drivers 0201 At this point the laser s focal length should always be 2 inches This ensures that the laser is focused and produces maximum effici
207. he template that faces the barcode scanner if a barcode check is requested The first leftmost two of the six digits represent the template type number All six digits are used as an ID number for the specific template 0 1 Enter the Template Definition in the ASRS form by clicking the Template Definition button o Procedure i 2 Click the Add a new template button Adding a Template Code 3 Type the template s two digit number 4 Click A to save the change Feeder Definition Click EDIT in the leftmost column of the FDR row to display the Feeder Definition form CIM Feeder Definition FDR1 ID 35 xi File H o Part Name Type Capacity Quantity Mio BE 10 Figure 5 6 Feeder Definition Form During OpenCIM production operations the message Part not currently available may be displayed This indicates that the part feeder or the ASRS has run out of the required part Part Name The names of all the parts that have been associated with the specified type of feeder as defined in the Part Definition form Type The number that identifies a certain type of feeder as defined in the Virtual CIM Setup Capacity The number of units of this type of part material which can be placed into the feeder as defined in the Virtual CIM Setup Quantity The number of units currently loaded in the feeder You must manually update the value of this field whenever you add parts to or remove par
208. hes even when the machine is not being used Never attach chuck keys to a machine with a chain or similar connector Always work with sharp tools ASRS Safety ASRS Carousel ASRS Note Do not place your hand or any other object in or near the main drive belt located under the lowest level of the ASRS carousel while the device is operating The belt is extremely dangerous and can cause severe injury Make sure that the carousel has been disconnected from the AC power supply before approaching the motor and belts Do not enter the robot s working envelope or touch the robot when the system is in Operation Use caution when moving the ASRS robot by means of the teach pendant To halt movement of the ACL robot which tends the ASRS unit do any of the following e Press the Abort or Emergency Stop key on the teach pendant or e Press the controller s red Emergency button or e Use the ACL command A lt Enter gt Opening any of the plexiglass doors which enclose the ASRS will automatically and immediately halt all movement of the ASRS robot Upon closing the door movement will resume Conveyor and PLC Safety User Manual 0201 Be sure you know the location of the conveyor s power ON OFF switch To immediately stop the conveyor simply shut off this switch Keep hands and objects away from the conveyor drive unit Do not tamper with the conveyor motor Do not remove the conveyor motor covers under any
209. hich comprise an OpenCIM cell It discusses each component individually and also how all components work together OpenCIM Description Unique Features This section gives the background for understanding what is special about OpenCIM and basic operations performed in the OpenCIM system OpenCIM software provides unique industrial capabilities not found in other educational CIMs User Manual 0201 OpenCIM feels familiar to first time users because it is based on the standard Windows Graphic user interface OpenCIM allows for targeted training at a given station or device OpenCIM is realistic because 1t uses equipment found in actual industrial CIMs OpenCIM resembles industrial CIMs in its ability to grow by using distributed processing at each production station Distributed processing also makes for a more robust system Even if the PC performing the central manager function goes down each machine can still be operated in a stand alone mode OpenCIM uses a sophisticated network of PCs which allows various devices to perform multiple operations simultaneously This network also allows CIM devices to communicate with each other OpenCIM provides you with a powerful yet flexible report generator This utility program allows you to access nine types of predefined reports or gives you the option of creating your own user defined reports OpenCIM uses the latest object oriented techniques in e Defining the CIM Layou
210. hine or robot e Machine running out of supplies for a given process The Device Error screen gives you complete information about what was happening at the time that the problem occurred It identifies the current part that was being processed current process when the error occurred You can then choose what to do in order to recover from the error User Manual 11 1 OpenCIM 0201 Errors and Troubleshooting This screen is divided into the following sections e Where the problem occurred top e What the problem is middle e How to proceed bottom Where the Problem Occurred Station The name of the workstation PC where the problem occurred e g WS 03 Part The ID of the current part that was being processed when the error occurred Device The name of the robot or machine that experienced the problem Next Process The name of the process that was to be performed on the Next Machine described below By examining the Process table for the current part you can determine exactly where the production process was interrupted select the current part on the Part Definition form Order ID The entry in the Order table that was interrupted by the error Next l The name of the next machine that was to process the current part This Machine information is especially useful when a robot error occurs The Next Machine field tells you where the robot was supposed to deliver the current part when the error occurred Action The CIM pro
211. his robot If any subsequent program attempts to move this robot it will terminate with a run time error e The ACL device driver automatically executes the DIAG program This program should is loaded at initialization time as part of CIMSYS SYS e The DIAG program sends a status message to the CIM Manager to reports the collision See Sample ACL Programs for a listing of the DIAG program The CIM Manager displays the Device Error screen to alert the operator Emergency Refer to your system user manual for details User Manual 9 27 OpenCIM 0201 OpenCIM Programming CNC Programming for OpenCIM CNC Script Language Introduction The CNC Script Language is a language which allows you to write programs to control a CNC machine These programs can initiate machine operations by turning the machine s control lines on and off Programs receive information from the machine via status lines These control lines and status lines are connected to a station manager PC via an interface board This board maps the control lines to output ports on the PC and maps the status lines to input ports Each line corresponds to a bit in an I O port CNC script programs communicate with a CNC machine by reading and writing these bits The CNC Script Interpreter is part of the CNC Device Driver When the CNC Device Driver receives a system message containing a CNC command it finds the corresponding program in the file CNC_SCR DBF and runs it
212. ice View is a complete list of every robot and machine including QC devices in the CIM cell and a description of the current action being performed by each Device View Ai x STOP S07 PLACE BOX on MILLI STOP STOP POOP acopeanc O STOP STOP Figure 6 7 Device View User Manual 6 8 OpenCIM Operating the CIM 0201 The following is an explanation of each column in the Device View DEVICE Name of the device or machine as defined in the Virtual CIM Setup Status When a part is being produced one of the following symbols appears at the current stage of production RUN Command sent waiting for acknowledgment Start Device has begun processing this part device driver has responded with Start message Finish Device finished processing this part device driver has responded with Finish message End Device ended processing this part device driver has responded with End message Stop Device is ready for next command Load Device is loading the processing program from the Backup or the Database ACTION The movement or operation command which is currently being executed by the device For robots the action is commonly the placement of a part For machines the action is usually the name of the process as defined in the Machine Definition form Station The number which identifies the workstation where the device is located ID The Device ID number as defined in the Virtual CIM Setup Lo
213. icenses are not interchangeable e g the OpenCIM Offline will not work with the license for OpenCIM The label with the CD Key on the CD indicates the product name 9 Full details on Intelitek software licensing are provided in Chapter 13 Follow the necessary instructions for the licensing procedure you require registering your software transfering a license from one PC to another PC returning a license to Intelitek so you can retrieve 1t later 10 To install the OpenCIM package in the default installation directory c program files intelitek opencim choose Next Alternatively choose Browse select a different installation directory and then choose Next 11 Choose Next to start the installation 12 When prompted restart your computer to complete the installation The product currently installed is indicated by the unique name in the screen title bars The product name can also be found in the About option of the Help menu Software for Workstation PCs In order to be able to use OpenCIM modules on a station PC you must install specific files from the OpenCIM installation CD From the Installation Selection Window described in Software for CIM Manager PC select the WorkStation Environment option To use OpenCIM modules on a station PC be sure to do the following In Manager PC Allow all workstations in the local network to access the Manager PC Drive in which OpenCIM is installed by sharing the drive For example to sh
214. icon menu will open The first six icons represent segments of the conveyor Segments are added and connected in consecutive order To insert a straight segment select either the horizontal or vertical bar Using the left mouse button place the pointer on the square whose upper left hand corner marks the end of the segment you want to add Note the placement of the cursor in the figure below in order to align the segment at the bottom with the segment at the top The white curved arrow in the blue circle is used to reverse the direction of conveyor movement When this icon is selected conveyor movement is clockwise and the segments will be added accordingly Undo The green curved arrow cancels the last segment s added to the conveyor Undo is available after the first segment has been placed on the grid OK This button will appear when you have completely connected all segments of the conveyor The spectacles icon opens another icon menu Do not attempt to manipulate the displayed values These settings are for technical support personnel only User Manual 7 5 OpenCIM 0201 OpenCIM Setup Using the icon menu select and connect each segment of the conveyor 289 395 2 89 3 95 x
215. id to be acting as a station manager These OpenCIM device drivers perform the following functions e Translate OpenCIM commands into instructions understood by station devices e Translate status information from a device into OpenCIM messages and relay these messages to the appropriate OpenCIM entities e Allow the user to interactively control devices such as CNC machines robots and other station devices e Download G code programs to a CNC machine If desired the station computer can be used to operate the station as a stand alone manufacturing cell Each device driver on a station PC has a control panel which provides this capability PC Requirements in OpenCIM The OpenCIM system provides great flexibility in the way in which PCs are used around the cell You can control the degree of distributed processing in the OpenCIM environment based on how you assign the following software modules to PCs e CIM Manager e Device Manager i e OpenCIM device drivers e Graphic Tracking In a busy CIM cell performance is enhanced by installing most of the above software modules on a separate PC In this scenario each station would have a dedicated Station Manager PC A LAN is used to connect all of the PCs that are running OpenCIM software The OpenCIM software modules use this LAN to exchange information At the other extreme all of the above OpenCIM software modules could be loaded on one PC high performance Multiple OpenCIM softwa
216. in the CIM cell in both Simulation and Real mode As each device performs an operation its device driver transmits status messages to the CIM Manager reporting the outcome For example e A device driver responds to a command sent from the CIM Manager e A device driver responds to a command sent from another device driver e g when a CNC device driver responds to commands sent by a robot s ACL device driver to open and close its door e The PLC device driver sends a Pass message indicating that a pallet that is not needed at this station has just gone by Pass messages are generated only to allow the Graphic Tracking module to update its conveyor display and are not used by the CIM Manager or any other CIM entity The CIM Manager relays these messages to the Graphic Tracking module which then updates its display accordingly For example it can show e Parts as they move from device to device e g a robot picking up a part from a template and putting it in a CNC machine e Pallets moving around the conveyor The Graphic Tracking module can display the movement of pallets on the conveyor based on the status messages it receives as each pallet passes a conveyor station The Graphic Tracking module estimates the position of pallets as they travel between stations and updates its display accordingly It synchronizes its display with the actual pallet position every time a pallet passes a conveyor station 2990 U e Se Figu
217. in the SETUP CIM FLD 5 is A B C D F K L J Q M S X Y Z then copy from to LIB ACL FLD 3 DNB WSn ROBOTn FLD 4 DNL 2 3 If FLD 5 is L Q or Y then copy from to LIB ACL FLD 3 QCB WSn ROBOTn FLD 4 QC 2 4 If FLD 5 is D or M then copy from to LIB ACL FLD 3 PRB to WSn ROBOTn 3 Create two new icons From the Robot Programs window drag an icon a new icon to edit the DNL and to appears download the DNL Select the new icon click once and press Alt Enter the Program Item Properties dialog box appears Type in the name of the new device in the Description field Type in the name of the new device in the command line for the Edit icon or type in the new Download file name for the Download icon Select OK 4 Editing the DNL QCL 1 From the Robot Programs window select the icon of the file and PRL files you want to edit the file is displayed 2 Type in the positions Verify that the new positions you are entering do not already exist and that all the details of the position can be found in PROLOG DNL 3 Set the accurate speed Replace the xxx in the first line of the GET and PUT programs with the device name that was defined in DEVICE DMC Note the period preceding PROGRAM and the space and the period preceding the device name the leading period indicates a macro or symbolic constant For example User Manual 9 26 OpenCIM 0201 OpenCIM P
218. in this section define the OpenCIM directory structure on the central server PC Location of the original OpenCIM data and program files These data files can be copied to the SETUP directory to restore the system to its original state Location of data files which define the OpenCIM configuration e g machine processes part definitions etc Location of data files including log files which are updated during OpenCIM production Location of report output Other software applications can interface here to pick up OpenCIM production data The location of the OpenCIM map file which contains e The name of all workstation PCs e A list of all devices which share the use of a device driver e g a robot and an automatic screwdriver all connected to the same ACL controller OpenCIM Inside OpenCIM INI Parameter Timer 1000 PassCount 3 OffDelay 3 ASRS Device Driver Settings Structure NumberOfRow 6 NumberOfCols 6 NumberOfGrids 2 FirstGridWithMinIndex Bottom LocationMinIndexGrid LeftUp DirectionIncIndexGrid Right User Manual 0201 10 21 Description The frequency at which a program checks its mailslot for messages to transmit or receive The CIM Manager must check its mailslot more frequently than the programs with which it communicates device drivers or Storage Definition module CIM Manager 200 600 ms Device drivers 400 1000 ms Reserved for Intelitek technic
219. ines show the physical connections between robots and other objects i e devices that are within the robot s reach Green lines indicate which software is running on a PC Click on a PC To see the green lines select Show Connection from the Parameter Configuration menu User Manual 7 11 OpenCIM 0201 OpenCIM Setup External ID Location Properties User Manual OpenCIM Setup 2 re Figure 7 10 Workstation Connections Unique numerical Device ID that identifies each device in the system The software defines IDs automatically in sequence as the devices are created in the Virtual CIM You can however modify this ID in order to structure the numbering of the devices for example in relation to the station they are located in see example in the tutorial Identifies the location of a feeder when it is placed and used within an ASRS unit In an actual CIM cell a feeder can only be placed on an ASRS carousel not in the ASRS Defines the Workstation WSn at which the object s device driver is connected and running Also defines the INI file associated with the object s device driver This INI file contains the definitions and parameters for the object and is invoked by the device driver s Loader command line amp WorkStation ws y A Init File Name Figure 7 11 Defining Workstation for Device Driver Once Properties have been defined for a device driver other options in the Paramete
220. int coordinates are associated with the station PC connected to an ACL controller These points can change whenever a new product is defined an existing product definition changes or a robot or any other device is moved Gcode and process These files contain the process program of the CNC machines programs files or and other processing machines QC script files These files contain the Quality Control procedures User Manual 10 38 OpenCIM 0201 Inside OpenCIM 11 Errors and Troubleshooting In this chapter you will learn about e Handling device errors e Troubleshooting the PCs LAN and the hardware in the OpenCIM environment e Contacting Intelitek for assistance Device Error Handling The Device Error screen appears whenever a problem is detected with a specific machine or a robot This screen allows you to determine how to deal with an error without having to reset the entire CIM CIN DEVICE ERROR o C Past TEMPLATE N0S4ON Machis ROSOT1 Net Poos PROCESS Ore CM OARDER me Next Machine AQ 2 Actors METE IMPACT PROTECTION asar 3 Emu Wo 53 Proper Pu id Saumo ASAS 3 Taget CONVEYOR Erer M Pat on Sosece yv Total Lost of Past Port in Gepper Procexr usoperative P t on Target Machine enoparaties o Figure 11 1 Device Error Screen Device errors can be caused by various factors including e Robot collision e Device breakdown e Defective part which does not properly fit into a mac
221. irectory is created in the CIM Manager and then it is copied to the Station Manager A subdirectory is created for each machine at that workstation A system with three workstations WS1 WS2 WS3 may be set up as follows for example e The WS1 subdirectory contains all INI files DBF files and GRP files that are unique to workstation 1 ROBOT 1 contains all the ACL programs specific to workstation 1 e The WS2 subdirectory contains all INI files DBF files and GRP files that are unique to workstation 2 ROBOT 2 contains all the ACL programs specific to workstation 2 GCODE contains all the G code programs necessary for the CNC machine e The WS3 subdirectory contains all INI files DBF files and GRP files that are unique to workstation 3 PLC contains all PCL programs The table below lists the files found in a typical OpenCIM system grouped by subdirectory The subdirectory generically called CIMCELL represents a typical CIM cell File Type ACL CIMSYS DMC CIMSYSM DMC DOWNLOAD EXE User Manual 0201 Description Subdirectory containing a library of generic ACL source code utility programs and parameter files Source code of standard ACL system programs for a single robot attached to an ACL controller Source code of standard ACL system programs for multiple robots attached to the same ACL controller ACLoff line downloader utility program that sends DNL files to an ACL controller 10 5 OpenCI
222. ired interval and clicking it again to restore it to its original state Input Panel The Input panel allows you to observe the state On or Off of 16 CNC status lines Status lines may be hard wired to specific CNC components Alternatively the CNC machine may use a G code program to set the state of a status line Check the documentation of your CNC machine for specifics on the meaning of each status line The layout of the panel reflects the way the status lines are mapped to bits in two designated PC input ports The PC Input panel displays the state of CNC status lines It cannot be used to change the value of a status line Only the CNC machine can change the value of a status line Program History List You can view a list of programs that were run by clicking on the drop down list box labeled Task History Closing the Control Panel It is a good idea to close the Control Panel in order to prevent others from tampering with it while the CNC machine is active Use one of the following standard Windows methods for closing a window e Double click the control bar in the X of the Control Panel window e Click the control bar and select Close e Press Alt F4 while in the Control Panel window You should always close the Control Panel if you are going to leave the CIM unattended Otherwise someone might cause damage if they inadvertently activate a machine such as a CNC machine by making selections on the Control Pan
223. is typically used as the main source of raw material for the cell The ASRS can also serve as a warehouse for parts in various stages of production Storage cells in the ASRS contain templates either empty or loaded with parts A CIM cell may contain any number of ASRS stations Part feeders can also be used to supply raw materials at various stations around the cell The ASRS model is specifically designed to work in the OpenCIM environment This unit contains a dedicated cartesian robot with an additional rotary axis that moves between two sets of storage racks Each rack has a set of shelves divided into storage cells that are designed to hold part templates The robot which is controlled by a standard ACL Controller B moves templates between the conveyor and storage cells Figure 2 5 The ASRS Robotic Storage Station The ASRS carousel is a three tier rotating warehouse which is tended by a robot and controlled by an ACL controller The ASRS36 is a cartesian robot with an additional rotary axis It has a set of storage racks divided into six levels with six cells each The robot which is controlled by a standard ACL Controller A moves the parts between the shelves and the conveyor The ASRS rack has a small number of cells and is designed for use in a Micro CIM work cell User Manual 2 9 OpenCIM 0201 System Overview Conveyor and Pallets A pallet is a tray which travels on th
224. isplay 4 Logical Name 5 Type A ASRS M Machine B Buffer O Conpallet C Conveyor P Part D Device e g screwdriver Q Quality Control F Feeder R Robot PEA S User Defined P U Undefined Tig V Vision K Rack LL S an Met X Trash Laser Scan Meter Y Barcode Z AGV 6 Capacity 7 Subtype type of objects it can hold or Connectivity used with Feeder Rack Conpallet and Buffer 8 Location ID for graphic display 9 Location Position for graphic display 10 Number of Robots that can access this device 11 Robot s Name 12 Robot s Position 13 Steady Flag User Manual 10 15 0201 Type Numeric Numeric Character Character Character Numeric Numeric Numeric Numeric Numeric Character Numeric Logical Width Remarks 3 20 20 20 Multiple field 2 Multiple field OpenCIM Inside OpenCIM The following is an example of a SETUP CIM file User Manual 0201 l 11 1 SORAS SQRAS1 R 1 211 1 ASRS ASRS1 A 72 ER9 ROBOT5 R 1 0 MK3 ROBOT3 R 1 0 ER14 ROBOT4 R10 0 0 0 0 21 31 41 0 0 P 1 1 CNV1 CNV1 12 24 23 33 49 47 44 45 43 48 22 32 42 46 50 2 3 4 1 2 2 3 4 4 4 4 4 4 2 3 4 4 0 LANE PLANE 0 0 0 0 CMM CMM1 Q 1 0 0 VISION VSN1 V 10001 RACK RACK RACK RACK2 JIG JIG1 J TRASH TRASH M2AS BFFR1 M2AS BFFR2 M2AS BFFR3 FEEDER FDR1 SPARE CONPA K K 1 Ele B B B 1 101 1 102 0 0 X 2 2 2 Qe Us C40004
225. ith this form are described in detail in this section CIM Machine Defition D OpenCIM321TAU ws0 Ebo o AE Machine Definition WS Machine Type Action Robot controlled Cost wst Y Barcode ac y No Fail Machine 4 Type 05000005 si Y Barcode QC Action Cost Duration Parameters WS Program Machine Name Process File RoR READ_BARCODE LATHE_1 LATHE1 05 00 00 10 WS3 M Machine CNC 1 LATHE_2 LATHE2 05 00 00 10 WS3 M Machine CNC CHECK_BRASS_SUP BRASS_S QCR 05 00 00 10 WS4 V Vision QC 1 PU OE Paba Engan ADRI Bor Ready Figure 5 1 Machine and Process Definition Form Machine Definition Form Main Menu File Contains these file options Save All Save Selected Machine Print Machine Report Exit from Machine Definition screen The first three options also appear as tool buttons in the Toolbar see below Edit Contains these row editing options Insert Before Insert After Delete Row You can also access these options by right clicking the process list cell you want to edit Help On line help User Manual 5 2 OpenCIM Preparing for Production CIM Utility Programs 0201 Toolbar e Fl HH 3 M1 fisi Saves all machine records to disk Saves the selected machine record to disk Automatically resizes the columns to accommodate long values when the window is maximized Print machine
226. l 0201 Description The address of the first input and output ports on the PC used to communicate with a CNC machine The address of the second PC input and output ports on the PC used to communicate with a CNC machine 9 29 Example V8 60000 Vl Door Open v16 701000111 Default Value 0x500 for both input and output ports 0x501 for both input and output ports OpenCIM OpenCIM Programming Passing Run Time Parameters to Programs Up to eight run time parameters can be passed to a CNC script program Each parameter contains a value that is O to 80 bytes long The parameter names P1 P8 are fixed You specify a string of parameter values when you invoke a CNC script program Parameters in this string are separated by commas The first value in the string is assigned to the parameter variable P1 the second to P2 etc The parameter string can be a maximum of 32 characters long including the comma separators The rules regarding parameter values described in the previous section also apply to run time parameter values The following sample parameter string contains both numeric and string values 1000 Please wait 60 Finished The way in which you specify the parameter string depends on which of the following methods you are using to invoke the CNC script program Network Message A CIM message sent to a CNC Device Driver contains two strings the name of the CNC script program immediately followed by i
227. le click on an object in the Virtual CIM the object s Configuration Parameters menu appears The following figure shows some of the variations of the Configuration Parameters menu Note that only one menu can be opened at a time Once defined and saved these parameters are written to OpenCIM INI files as described in Chapter 10 User Manual 7 8 OpenCIM OpenCIM Setup 0201 Figure 7 6 Parameter Configuration Menus The following is a list and description of all parameters that can be defined The parameters for many objects do not normally require manipulation The Tutorial at the end of this chapter demonstrates the recommended sequence and actions for setting object parameters Menu ltem Description Capacity Defines the number of items that the device can hold You must define a value for feeders racks and trash bin for most other objects you can accept the system defined value When selecting new objects select Buffer 2 for a buffer whose capacity is two items and select Buffer 1 for a buffer that can contain only one item The capacity parameter is thus already defined as 2 and 1 respectively Figure 7 7 Defining Capacity User Manual 7 9 OpenCIM 0201 OpenCIM Setup CommPort Connectivity User Manual OpenCIM Setup For ACL device drivers the settings must be as follows BaudRate 9600 Parity None DataBits 8 StopBits 1 XonXoff No These are the standard RS232 settings for communicati
228. lect Edit Delete Object and click on the buffer you placed at Station 1 The buffer will be erased The ASRS36 does not require a buffer but a temporary buffer was created at Station 1 causing the buffers at the other stations will be named BFFR2 and BFFR3 respectively 24 Rotate the buffer at Station 3 90 Adjust the location of other buffers so that they are attached to the conveyor and within reach of the robot at the station 25 At station 3 add a Rack Feeder and Trash The following figure will guide you in properly placing all the objects at this station 26 Save your work at this point 27 Add workstations PCs for each station Start with the Manager PC and then continue with the Station PC s for Station 1 2 and 3 28 Scale Tables for the workstations and arrange them as shown in next figure User Manual 7 18 OpenCIM OpenCIM Setup 0201 29 Add device drivers near the PC at each station e For each robot at the station including the ASRS36 add an ACL device driver e For a CNC machine lathe mill add a CNC device driver e For the Vision Camera add a RVP device driver e For the Conveyor add a PLC device driver Place it at Station 1 The Jig X Y and Screwdriver are controlled by the ACL controller and its device driver and do not require device drivers of their own 30 For each device driver you will need to sets its properties and connections Click on each object in order to o
229. load File Downloads file to the laser machine Select File Selects a file for engraving User Manual 8 25 OpenCIM 0201 OpenCIM Device Drivers Clear All Files Deletes all engraving programs from the laser machine Properties Displays the properties of the communications port Log File If checked creates a log file of all the messages sent during a session Exit Exits the device driver From the Operation menu you can specify the TCP IP status between the CIM Manager and the device driver The device driver can be in one of three states Ready yellow Disabled red Working green Control Modes Like all the device drivers the ULS device driver can operate in Real Simulation and Manual modes it can also be operated in standalone mode Real Mode User Manual OpenCIM Device Drivers Normal operating mode The device driver relays command messages to the Laser Engraver from the CIM Manager In turn it broadcasts start finish end status messages from the device to the CIM Manager Laser Engraver Device Driver CNC73 Of x File View Operation Help we Operation Mode _ Open CIM Messages gt From Manager lt To Manager UN Line m Device Driver I Ready e gt ULS Universal Laser System Select Rie and Get Goren AE Zi RUH Ready STOP 172 16 12 76 C OpenCIM32 CIMLABBIWS7 como 5 In the CIM Manager Part Definition the use
230. lso note that the same part at the same location may require two different robot positions before and after an assembly operation Response Messages from ACL Programs to the CIM Manager The programs GET and PUT send status messages to the CIM Manager via the ACL device driver as described in the table below The code that actually sends these messages is contained in the macros START END FINISH found in the example programs PROGRAM_GET XXX and PROGRAM_PUT XXX Your only concern regarding response messages is to put these macros in the proper place when writing your own GET and PUT programs Status Message Description Start The GET program sends a Start message to report that the robot has grasped the part template and has moved clear of the source device This Start message indicates that the source device can continue with other processing even while the robot continues to move The Start message can speed up time critical operations in the CIM For example strategic placement of the Start message can be used to expedite the flow of pallets on the conveyor As soon as a robot has lifted a template from a pallet the GET program sends a Start message The CIM Manager can then release the pallet even while the robot continues to move the template The Start message is sent by the macro START Finish The PUT program sends a Finish message to report that the robot has placed the part template at the destination device The Finish m
231. m III 500 MHz PC 32 MB RAM CD ROM drive Windows 98 2000 2 GB hard disk SVGA 15 monitor Fully Windows compatible LAN interface card USB port Two available RS232 ports An additional expansion slot Ifa PC is used for multiple functions the PC must be powerful enough to keep up with flow of information in the OpenCIM real time environment For example a very high performance PC would be required to simultaneously run the CIM Manager program control the conveyor function as a Station Manager and show the Graphic production display in real time Tracking The Graphic Display and Tracking module provides a graphic display of a working OpenCIM cell showing the progress of a part as it travels on the conveyor from station to station The screen display includes detailed representations of station elements such as computers controllers CNC machines and robots as shown in the following figure This module updates its display in response to real time status messages emanating from the CIM Manager and active device drivers The Graphic Tracking PC can be used in the following ways User Manual In real time mode to observe the flow of parts around the CIM cell In simulation mode to observe the results of different production strategies on screen without actually operating the CIM equipment The Graphic Display of a working OpenCIM cell is displayed in the CIM Manager window It can also be displayed on another PC in th
232. m the CNC machine In this case the command Wait 120000 can provide the required delay before the CNC script program signals the CIM Manager that the part is ready Function When the CNC Script Interpreter encounters the Wait command it pauses for the indicated amount of time before executing the next program statement The argument time_to_wait specifies the number of milliseconds the interpreter waits before resuming execution This argument can be either an integer or a parameter variable V1 V16 P1 P16 The minimum time_to_wait is the value of the parameter CNCDriverTimer found in CNC INL Examples Wait 2000 This statement causes the CNC Script Interpreter to pause for 2 seconds Wait V16 Wait P8 The length of the pause resulting from each of these two statements depends on the values of variables V16 and P8 User Manual 9 43 OpenCIM 0201 OpenCIM Programming WaitBit WaitBit Suspends execution until the specified bit s are set to one or until the specified bit pattern appears on an input port WaitBit portn mask time_to_wait portn e Address of the output port tobe 0x0000 modified OxFFFF mask An 8 character string containing 00000000 1 s and 0 s representing a bit 111111117 mask v v16 P P16 time_to_wait Maximum number of CNCDriverTimer milliseconds to suspend program 2147483647 Vl V16 P1 P16 execution while waiting for a bit pa
233. m which knows how to communicate with a given piece of equipment that is connected to a PC It translates commands from other programs into a format understood by the device It also translates information coming from the device into a format understood by other programs OpenCIM uses device drivers to communicate with robot controllers CNC machines and quality control devices The act of sending a file s from one computer system to another A device which dispenses parts at station typically to a robot Flexible Manufacturing System refers to either a CIM cell or a station in a CIM cell A region approximately Y2 meter above the work surface in which the robot can move freely and quickly between locations without encountering any obstacles See also Pick and Place A program that directs the operation of a CNC machine See also Control Program Used in the context of programming robot positions using ACL A group refers to a set of axes of movement that apply to a device e g robot X Y table The device can move along all axes in its group simultaneously The name of a generic ACL program used to direct a robot to pick up a part at a designated location A procedure used to reset a robot to known starting position A text file containing settings for various OpenCIM parameters Parameters are grouped into sections The structure of OpenCIM INI files is similar to that of other standard Windows INI files such as WIN INI
234. med For example DRCLS door closed VCOPN vise open The following sample CNC script program shows how this statement appears at the end of the script after the requested operation has completed PROGRAM OPEN DOOR PULSBIT PORTO BVO 00001000 600 DRAW OPENING THE DOOR WAITBIT PORTO 00000010 20000 DRAW DOOR IS NOW OPEN SENDSTR V1 RUN DROPN END Figure 9 8 Sample CNC Script Program that Sends an Acknowledgment to a Robot Writing Portable CNC Script Programs If you have multiple CNC machines which use the same commands you can reuse the same CNC script file e g CNC_SCR DBF to control these machines Follow the example below which shows how to write portable CNC scripts using a parameter variable to specify a destination address Portable SENDSTR V1 DROPN Not Portable SENDSTR WS3 ACL43 DROPN Use a text editor to assign V1 in a parameter file e g CNC1 INI as follows V1 ACL43 User Manual 9 60 OpenCIM 0201 OpenCIM Programming The elements in this example are explained below WSs The name of the Station Manager PC as found in the file SETUP CIM running the CNC device driver Substitute the appropriate workstation number for the 3 in this example ACL The type of communication channel used to send messages to this device Use ACL for any device attached to an ACL controller 43 The device ID that indicates which device driver is to receive this mess
235. ment MRP reports but cannot modify the CIM cell configurations Production Operations The following operations are performed in the CIM cell when producing a product Supplied parts raw materials are loaded into storage locations Manufacturing orders are generated by the CIM Manager or by an external production scheduling package such as Fourth Shift or MAPICS Parts are removed from the ASRS and transported on the conveyor to production stations Robots take parts from the conveyor and move them to various production machines e g CNC machines at a station machine tending Typical production tasks include e Processing in a CNC machine e Assembling two or more parts e Quality control tests Robots return processed parts to the conveyor for transportation to the next station Finished products are removed unloaded from the cell OpenCIM Sample Application The Covered Box The following Covered Box sample application is used in this manual to demonstrate the concepts of the OpenCIM system The steps shown below are explained in more detail as each topic is introduced later in this manual The sample application produces a simple covered box from a small solid cube and a matching cover Each component part is assumed to be in place on a separate template in the ASRS User Manual 0201 2 3 OpenCIM System Overview Assembly Operation Covered Box CNC Milling Operation Cube Cover Figure
236. ment Line NOP User Defined Process Process Name User Manual 0201 Description Tells the PLC to stop a specific template at a station Releases an empty template so it can be returned to the ASRS Commands a robot to place the first part to be assembled in a jig The CIM Manager waits for all subparts that belong to this assembly to arrive before placing the base part in the jig Commands a robot to place a subsequent part to be assembled onto the base part in the jig The CIM Manager waits for the Base command to finish before it starts executing a Pack command Signals the end of an assembly operation Reserves a part that is being stored in the ASRS Sends a part to the ASRS or other storage location to be stored Assigns the name shown in the Part field to a finished part This command appears in the A Plan immediately after the last user defined process from a Part Definition table has been performed Commands a robot to move a part or template from one location at a station to another i e a pick and place operation This command is used to insert parts into devices such as a laser scan meter or robot vision system However it is NOT used when placing a part in an assembly jig see Base Pack above or a CNC machine see Load below Uses a robot to insert a part into a CNC machine and downloads the appropriate G code to the machine if required The Load command is similar to the Place command with the added fe
237. moved from the conveyor The standard buffer is attached to the outer rim of the conveyor Once the template is on the buffer the robot can remove a part from the template and take it to a station device The following scenario describes the basic flow of parts within the CIM cell e In response to production orders the CIM Manager issues instructions to release parts from the ASRS and move them from station to station for processing e A robot at each station takes parts from the conveyor and places them in station machines e After a part has been processed at the station the robot places the part back on the conveyor where it moves to the next station according to its production plan Templates Templates are plastic trays which can hold various types of parts They allow parts to be transported on the conveyor f Figure 2 4 An Empty Template A template contains a matrix of holes in which pins are placed to fit the dimensions of a part Each arrangement of pins defines a unique template type Each part may only be held by its assigned template The handle located on top of or in front of the template facilitates grasping by a robot s gripper An optional barcode sticker on the side of the template shows the template s ID code When barcodes are used a barcode reader can verify the identity of each template inserted or removed from the ASRS User Manual 2 8 OpenCIM System Overview 0201 Storage An ASRS station
238. n rpt ASRS Report APLAN DBF Aplan Report Aplan rpt User Manual 10 37 OpenCIM 0201 Inside OpenCIM Software Backup Since system files could be altered or destroyed 1t is recommend that you keep backup files of your OpenCIM system The backup files can be used to restore the system if necessary The backup procedure involves three stages 1 Back up the ACL controllers to the Station Manager PCs detailed in Chapter 8 2 Back up the Station manager PCs to the CIM Manager PC 3 Back up the CIM Manager PC to diskettes or to another PC s hard disk GS These procedures should be performed by the system supervisor only Notes Do not perform Backup procedures while the OpenCIM is running because currently running programs may be aborted and data files may be in an unstable state Always keep robot positions ACL programs and parameters on disk Backup and restore the entire system regularly to ensure good backup at all times The following procedure backs up a cimcell directory o Back up the ACL controllers to a backup folder in each WSn folder in gt the Manager PC Procedure Place all relevant data of a Cimcell under its folder in the Manager PC Backing up the 3 Compress the cimcell folder using Winzip OpenCIM System Make copies of the compressed folder to 1 44 diskettes and keep them away from the Manager PC It is recommended that you also make separate backup files of the following items Robot Points Robot po
239. n you first activate the MRP the Customer Order form appears You can switch to the other order forms Manufacturing and Purchase by clicking the appropriate tab A customer order is a list of the parts products ordered by a customer The Customer Order form shown below lets you create view and modify a list of customers and their orders Parts must be defined in the Part Definition form before they can be ordered by customers CIH MRP C OpenCIM32 DEMO DATA File Edit Customer Help De ft o B Customer Order Manufacturing Order Purchase Order Part Name COVERED_BOX Figure 5 9 Customer Order Screen Toolbar The following buttons apply only to the Customer Order table Any changes you make using these buttons will not be stored in the database until you click Save Adds a blank row to the Order table Automatically resizes the columns to accommodate long values when the E Saves the selected Customer Order to the database ti window is maximized Adds a new customer to the customer list Edits the information of the selected customer Creates the selected customer order and saves it to the database s amp lo GS Note You can only order parts that have been defined as type Product or Supplied Phantom parts cannot be ordered User Manual 5 23 OpenCIM 0201 Preparing for Production CIM Utility Programs Order List Required The number of units required by the customer Quantity Priority The priori
240. nCIM Device Drivers PLC Device Driver PLC1 ioj x File View Operation Help SIMULATION MODE y Station Last Station Start new session Init OLMT Pallet s Table PLC Driver Initialization Device Driver in Fast Debug Mode passed by PASS S 3 PHS 0099 5 0099 SH0099 PASS 542 PH4 PASS SH3 PH P 0005 S 0099 Pss PH0006 S 0099 Pss P 0007 SHOD99 Pss PR0008 540099 Pss PHODO9 SHOD99 N A P 0010 S 0099 N A Dennt4 cHnnao NIA Station 2 X Get Free Release if fae P o002 y Deliver Failed to connect to MANAGER from knot PLC1 For Help press F1 C OpenCIM32 CIM 1 wS4 1 9600n81 4 Figure 8 11 PLC Control Panel 3 Ojal u Pallet Status Display The Pallet Status display shows the status location and destination station for each pallet on the conveyor This display is updated each time the PLC stops a pallet and identifies it at a station A code of 99 indicates an empty pallet that is available for use i e it has no destination The status of a pallet listed in the Status column can be one of the following Pallet Status Run Arr Arrive Stp Stop User Manual OpenCIM Device Drivers Description This is the default condition for all pallets when the CIM starts up This status remains in effect until a pallet passes its first station and an update message from the PLC is received If the Run status for a pallet never changes this indicates that th
241. nd When the CIM Manager wants to run a CNC program it issues a Run command to the appropriate CNC Device Driver at a station The device driver finds the program in the file CNC_SCR DBEF and executes it User Manual 9 31 OpenCIM 0201 OpenCIM Programming User Manual 0201 Request Return go in RS232 receive end go in auto end start for 0001 end open door end close door end open clamping device end close clamping device end feedhold end start for 0002 end pinole out end pinole in Action pulsbit Draw pulsbit q q q q q q q q q q q q q q q q q q waitbit porto raw pulsbit raw raw2 waitbit porto pulsbit porto raw raw2 waitbit porto pulsbit porto raw raw2 waitbit porto pulsbit porto raw raw2 waitbit porto pulsbit porto raw raw2 pulsbit porto raw2 waitbit porto pulsbit portl raw raw2 waitbit porto pulsbit portl raw raw2 waitbit porto pulsbit portl raw raw2 port0 bv0 port0 bv0 port0 bv0 start for 0001 vl6 bv0 open door v16 bv0 gt close door vl6 bv0 00000001 go to RS232 receive 00000010 go in auto 00000100 00001000 00010000 00100000 500 500 500 machine is r
242. ne planned S tl S Cl Stat Finish Duration Start Finish Duration o 2 4 6 8 10 12 14 1 S COVERED_BOX 1 1 1 000528 001048 00 05 20 000200 000700 000500 mummi Ba O MILLI 00 05 28 00 08 00 00 02 32 00 02 00 00 04 44 00 02 44 O JIGXY4 00 08 00 00 10 48 00 02 48 00 04 44 00 07 00 00 02 16 gt I Base Time 11 19 43 20011618171 Figure 6 13 CIM Scheduler Gantt Chart The Scheduler can display two kinds of production schedules e Planned This schedule is normally produced and displayed when the CIM Manager is Operating in Simulation mode Tracking mode must be activated from the CIM Mode dialog box see CIM Mode Dialog Box earlier in this chapter e Actual This schedule is normally produced and displayed when the CIM Manager is operating in Real mode The Tracking mode is deactivated The left side of the Scheduler screen is a textual description while the right side is a graphic representation Gantt chart of the production schedule Click and drag on the vertical lines in the table to increase and decrease column widths User Manual 6 14 OpenCIM Operating the CIM 0201 Menu Options The following options are available in the Display menu y e When the Scheduler operates on line it displays data from the CIM Manager No data is displayed until the CIM Manager commences On Line production Off Line e When the Scheduler operates off line it displays information fr
243. ng the robot make that the controller s main power switch is turned off Before opening the controller housing be sure to unplug the controller power cable from the AC power outlet It is not sufficient to switch off the power the power supplies inside the controller still contain dangerously high voltages Before removing any fuses be sure to turn off the controller and unplug the controller power cable from the AC power outlet To immediately abort all running programs and stop movement of all axes e g robots e Press the Abort or Emergency Stop key on the teach pendant or e Use the ACL command A lt Enter gt or e Press the controller s red Emergency button CNC Machine Safety The following are general safety instructions for the use of CNC machines Be sure you adhere to the safety rules for the specific machines included in your cell User Manual Safety Always wear safety goggles when near the machine Be aware that some materials such as the brass bars spray chips while being processed Make sure all persons near the machine are protected Keep children and visitors away Set up the machine so that children or visitors unfamiliar with the machine cannot start it Protect the machine against unintentional use by removing the switch key Chuck parts and tools firmly and safely Perform measuring and chucking work only when the machine is at a standstill 3 2 OpenCIM 0201 Remove adjusting key and wrenc
244. ng buttons apply only to the Purchase Order table Any changes you make using these buttons will not be stored on disk until you click Save i Adds a blank row to the Purchase Order table m Saves the selected purchase order in database f Auto resizes the part list columns s Allows you to add a new supplier to the Supplier list Allows you to edit the information of the selected supplier 0 Creates the selected purchase order and saves it in the database User Manual 5 29 OpenCIM 0201 Preparing for Production CIM Utility Programs The following fields compose the Purchase Order table Part Name The name of the part you want supplied This field corresponds to the Part field on the Part Definition screen GS Note You can only order parts that have been defined as type Supplied Quantity The number of units you want to receive from the supplier Cost The cost per unit as defined in the Part Definition form Due Date The date on which the part must be received from the supplier G gt Note In a commercial CIM environment this deadline is normally expressed as a specific date and time In an educational CIM environment it is an advantage to have the Due Time relative to the time an order was submitted A relative time allows the same order to be resubmitted day after day without the need to edit this field each time Send Date The deadline for sending the Purchase Order to the supplier Calculated by subtracting from the Du
245. ng for Production CIM Utility Programs 5 12 OpenCIM 0201 Rack If this part is to be stored in a feeder specify which types of feeder are capable Feeder of accommodating this part Feeder Type gt 100 Feeder types are defined in Types the Virtual CIM Setup You can specify multiple feeder types in this field each one separated by a comma e g 101 102 103 Selections are made by choosing from a drop down list or by typing in the entry Similarly if this part is to be stored temporarily in a rack during processing specify which types of racks are capable of accommodating this part See Rack Type definition above How to Define a Part In order to define a part it is important that you understand the entire operation A part is only the starting point This part supplied raw material moves within the CIM system according to a predefined path the part is processed with another part and the product is then created In order to define a part you need to e Define the supplied material s e Define the process that must be performed on the material s e Define how to assemble the parts processed and supplied materials These concepts can be better explained by referring back to the OpenCIM sample application of producing a simple covered box from a small solid cube and a matching cover From this example we can determine that Raw Material 1 Box Raw Material 2 Cover Product Covered_Box o In the Part Type form
246. ng with ACL controllers both Controller A and Controller B These settings should not be changed since they match the fixed settings in the controller For the PLC device driver the settings will be one of the following OMROM PLC Allen Bradley PLC BaudRate 9600 BaudRate 9600 Parity Even Parity None DataBits 7 DataBits 8 StopBits 2 StopBits 1 XonXoff No XonXoff No These are the RS232 parameters used by the PLC device driver when it communicates with the PLC You must set these parameters to match the RS232 settings on the PLC Connects all objects and their associated device drivers Also connects robots to all objects which are physically within their reach and to all objects which can be connected by means of an RS232 cable When you click on Connectivity the Connections menu opens Connections ROBOT1 X Possible Connections Active Connections lt gt ACLYD lt gt CNV1 1 lt gt ACLVD2 lt gt FDR1 lt gt ACLVD3 ET Remove lt Cancel Figure 7 8 Defining Connections One or more connections can be added or deleted at a time e To make a connection highlight the device driver name s for the selected object click Add and then OK e To remove a connection highlight the device driver name s for the selected object click Remove and then OK Active Connections A list of all connections that have already been established between this and other object
247. ngs A laser scan meter is a straightforward quality control device that performs only one type of test Use a test type of 1 for this device when entering values in the Parameter field of the Machine Process table or the Part Definition table User Manual 8 19 OpenCIM 0201 OpenCIM Device Drivers User Manual General CimSetupPath C OPENCIM SETUP SETUP CIM LSMDriverDefinitions OCReport Yes OCReportTemplateFile VC2_QC INI OCReportFileName OCReportFileMarker OCReportFileDeleteOnStart SimulationFailPercent 20 BaudRate 9600 Parity None DataBits 8 StopBits 1 XonxXoff No MainWindowBkgndColors 40 150 100 MainWindowTextColors 100 50 200 Figure 8 9 Sample INI File Settings for a Laser Scan Meter 8 20 OpenCIM Device Drivers OpenCIM 0201 ViewFlex Device Driver The ViewFlex Device Driver interfaces between the OpenCIM network and the Vision Machine System as a quality control device Each quality control test is defined as a separate process in the Machine Definition module The quality control test consists of three parts e File the Script File bas that contains the Program Function to be executed e Program the Function from the File that returns the results of the quality control process to the OpenCIM Manager as Pass Fail or Error e Fail Simulate test results only in Simulation Mode by determining the Pass Fail according to the percentage of failure that was input The
248. nition form Status of the specified location Empty Part on Template Empty Template or Part The number of the template at this location The type of device as defined in the Virtual CIM Setup 5 40 OpenCIM Preparing for Production CIM Utility Programs 0201 A Plan Report The A Plan Report is a detailed description of the manufacturing process to be performed by the CIM system The A Plan is created when you click MO in a completed Manufacturing Order form The A Plan is a table of sequential instructions which the CIM Manager executes in order to produce the products being ordered This report is intended for the more experienced user See Experimenting with Production Strategies Using the A Plan in Chapter 8 for detailed information on how the part will be produced The following is an example of an A Plan Report Part El Process Subpart Target Duration Parameters CIM_PROD 1 MAKE PROD 1 1 Al dpi 00 00 00 User Manual 5 41 OpenCIM 0201 Preparing for Production CIM Utility Programs Purchase Order Report As explained earlier in this chapter clicking on the PO icon in the MRP program activates the Report Generator which will display or print the Purchase Order You can also generate a Purchase Order directly from the Report Generator menu without activating the MRP program When Purchase Order is selected a submenu allows you to print or display either all or some of y
249. nly one device driver is required e g an ACL device driver In this section the term device can also refer to a controller with multiple devices The list below shows the name of the program that corresponds to each OpenCIM device driver e ACL device driver ACLDriver EXE e CNC device driver CNCDriver EXE e Laser Scan Meter device driver LSMDriver EXE e ROBOTVISIONpro device driver RVPDriver EXE e PLC device driver PLCDriver EXE e ULS Device Driver ULSDriver EXE e ViewFlex Device Driver VFDriver EXE The table below describes the command line switches you can specify when you invoke a device driver or program module These switches let you specify the device data files and control mode that apply to a program All device drivers share the following command line format xxxDriver EXE IniFile DevID COM n Simulation where xxx is the type of device driver User Manual 10 2 OpenCIM 0201 Inside OpenCIM IniFile DevID COM n Simulation The name of the initialization file containing parameter definitions for this particular device These parameter definitions override global values set in the file OPENCIM INI The unique ID number of the device as defined in the Setup program This number is used to identify the device when communicating with the CIM Manager or with another CIM device e g a CNC machine being tended by this robot I
250. nse from the device appears in the device driver s Status window This button resends the last command message from the CIM Manager as shown in the fields Low High and Type described below If no command message has yet been received the default values are Type 1 High 0 Low 0 Generates a status message to the CIM Manager indicating that a part passed its quality control test Used in Manual mode Generates a status message to the CIM Manager indicating that a part failed its quality control test Used in Manual mode The following fields on the Control Panel show the parameters associated with the last command that was sent to the quality control device These values are used when you select the Check button described above to manually send a command to the device Low The minimal acceptable test value High The maximum acceptable test value Type An ID number specifying which sort of quality control tests the device should perform The Fail field allows you to control how the device driver responds when it is operating in a simulated mode User Manual 8 18 OpenCIM OpenCIM Device Drivers 0201 Fail Used only in Simulation mode Randomly determines how often the simulated test result will be Success or Fail 0 always successful 100 always failure Pass fail results are generated randomly The default failure percentage is read from the parameter SimulationFailPercent in the device driver s INI file Ch
251. o move the robot to its standard idle position in the Free Movement Zone E z U y This macro informs the CIM Manager that the robot is ready to perform the next GET operation E z D_PUT gt The following figure shows an example of GET and PUT programs after customization PROGRAM_GET FAST MOVED CIM SLOW OPEN MOVED CIM CLOSE MOVED CIM START END_GET PROGRAM_PUT SYNC FAST MOVED CIM SLOW MOVED CIM OPEN MOVED CIM FINISH END END_PUT Figure 9 2 Sample GET and PUT Programs After Customization User Manual 9 17 OpenCIM 0201 OpenCIM Programming Synchronizing the GET and PUT The ACL device driver activates the appropriate GET and PUT programs simultaneously Since a robot must first pick up a part before it can place it the GET program must execute before the PUT program A synchronization mechanism is used to suspend the PUT program until the GET program is finished The synchronization mechanism is handled automatically with macros if you base your ACL programs on the sample GET and PUT programs found in CIMACL DNL The following sample code shows the synchronization code after macro expansion PROGRAM GT001 Get Template from Conveyor KKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKK Set SSYNC 0 causes PUT program to wait Set activates PUT program PROGRAM PTO001 Put Template in Buffer KKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKK Wait SY
252. oad a part into the CNC machine e The CNC device driver receives a command to process a part e The device driver activates the appropriate output line to turn on the machine e The device driver waits for the operation to complete by monitoring a status line e The device driver sends a status message back to the CIM Manager e The CIM Manager instructs the robot to remove the part in the CNC machine The following sample scenario demonstrates the role of the CNC device driver 1 The CIM Manager sends a command to the CNC device driver to download a G code file needed to machine an upcoming part User Manual 2 20 OpenCIM System Overview 0201 2 When a robot is ready to insert a part into the CNC machine its ACL program sends commands to the CNC machine to e Open the door of the CNC machine e Open the chuck vice of the CNC machine 3 The robot inserts the part into the chuck vice The ACL program sends commands to the CNC machine to e Close the chuck vice of the CNC machine e Close the door of the CNC machine 4 The CIM Manager waits for status lines to indicate that the part is in place ready to be machined 5 The CIM Manager sends a signal to the CNC machine via the CNC device driver to begin machining the part 6 The CNC device driver waits for a status line to indicate that the machining operation is complete 7 The CNC device driver sends an Operation Complete status message to the CIM Manager The Manage
253. obot s ability to retrieve and deliver parts from every device at a station Pick and place commands involving every device can be stored in the pick and place file Playing this file would then allow you to observe if the robot was able to properly access every device Complete This display activates when you select the Play button It shows what from P P File percentage of the pick and place file has already been executed Save P P Saves a pick and place text file containing all pick and place commands Cmds found in the Task History box This file is saved in the current working E directory under the name ACL_xxx PNP Close P P Terminates the playback of a pick and place file File Closing the ACL Control Panel You can close the Control Panel window in order to prevent others from tampering with it while the robot is turned on Use one of the following standard Windows methods for closing a window e Double click the control bar in the X of the Control Panel window e Click the control bar and select Close e Press Alt F4 while in the Control Panel window e You should always close the Control Panel if you are going to leave the CIM unattended Warning Otherwise someone might cause damage if they inadvertently activate the robot by making selections on the Control Panel e g by clicking on the Play From P P File button User Manual 8 14 OpenCIM OpenCIM Device Drivers 0201 Quality Control Device Drivers A quality
254. obot to a point above the source device in the Free Movement Zone grab part template Insert commands to lower the robot arm to the source device and grab the part template Use the part ID and index parameters PART INDXG as needed to grab the object move robot gt gt Insert commands to move clear of the source device START gt This macro informs the CIM Manager that the source device is free move robot gt Insert commands to continue moving the robot to a point above the source device in the Free Movement Zone where the PUT program will take over END_GET This macro activates the PUT program User Manual 9 16 OpenCIM 0201 OpenCIM Programming PROGRAM_PUT xxx gt gt Replace the xxx with the device ID as defined in DEVICE DMC SYNC This macro waits for the GET program to finish moving the robot that is carrying the part template into position move robot gt Insert a command to quickly move the robot to a point above the target device in the Free Movement Zone move robot Insert commands to lower the robot arm to the target device Use the part ID and index parameters PART INDXP as needed to set the part template in its place deliver Insert commands to move clear of the target device part template FINISH This macro informs the CIM Manager that the part is in place and the target device is ready to be activated move robot Insert commands t
255. ode is found in the Registration dialog box To receive the unlock code for the software you installed you must send Intelitek both the CD key and the PC specific code The Registration dialog box provides several methods for obtaining the unlock code e Automatic from Intelitek website e If Internet access is available on the PC do the following In the Registration dialog box select Get Unlock Code and select From Intelitek com The software will automatically connect to Intelitek s website The unlock code will automatically be installed on your PC and you will see a message that the software is now licensed 13 1 OpenCIM Intelitek Software Licensing e If you have Internet access but not on the same computer on which the software is installed do the following Using your Internet browser go to http www intelitek com support software licenses index html Enter your CD key and the PC specific code as instructed The unlock code will be displayed automatically Enter the unlock code in the Registration dialog box and select Unlock e Email uses Intelitek s software licensing service In the Registration dialog box select Get Unlock Code and select By Email e If email is available on the PC a new email message containing all required details will open Fill in the requested user information optional and click Send The licensing service will send back an unlock code Enter the unlock code in the Registration dialo
256. odify one of the ACL System program files enter these changes in the unique PROLOGn DNL file only ACL Variables In the ACL controller there are three types of global variables and two types of local variables The global variables are e ACL Controller System Variables Variable Description IN 16 Input status ENC 6 Encoder TIME Time LTA Last time for group A LTB Last time for group B MF LAG Motion Bitmap ERROR Error OUT 16 Output status ANOUT 6 Direct analog current to axis For more information refer to the ACL Reference Guide User Manual 9 13 OpenCIM 0201 OpenCIM Programming e ACL Controller User Variables OpenCIM System Variables User Manual 0201 Variable ERRPR G ri ERRL S S S S S 5 P P P P P P P P P H uuu ean aa SYNC PDD PDF PFA PMA PSA PFB PMB PSB D DEV2 NDXG INDXP NOTE 2 3 4 5 6 7 8 9 10 tH D un H Description Error program Error line Synchronization Pend post printing to ACL programs Pend post printing to ACL programs Speed fast group A Speed medium group A Speed slow group A Speed fast group B Speed medium group B Speed slow group B ID message number from the ACL device driver Part number Part ID group Get device number Put device number Get device index Put device index Note number Last position in the d
257. oduced first Valid methods are P Produce orders with the highest priority first D Try to finish all parts by their Due Time B Consider both priority and due time when determining the sequence of production lt priority gt Priority of this order 1 9 A priority of 1 is most urgent 9 is least urgent When lt priority type gt is set to either P or B the CIM Manager uses lt priority gt to determine the sequence in which to produce orders Example MAKE BOX 1 1 3 2 1 1 P 1 Note See the NEXT command User Manual 9 70 OpenCIM 0201 OpenCIM Programming GET Format GET lt subpart gt lt storage location gt Description Reserves a part in a storage location that is needed to produce the current order The default storage location is the ASRS Parts can also be stored in a storage rack a part feeder or some other designated location If no part is available a warning message appears on the CIM Manager screen and a Wait status symbol on the Production screen lt subpart gt The subpart in a stora being reserved lt storage location gt The place in the CIM want to order the part If this field is omitted Example the ASRS is assumed Note See also STORE and RENAME ge location that is cell from where you You can view edit a table of A Plan commands that is created when you submit an order Parts that have a 1 in the column can be produced in parallel except for a part associated with an ONF
258. oduction can reduce inventory levels and lead times Integration with suppliers and customers can provide even greater benefits e Downloading machining instructions including tool changes from CAM computer aided manufacturing systems to CNC machines computer numerically controlled reduces machine setup times and increases machine utilization The trend among manufacturers today is to produce smaller batches of more varied products Without CIM automation this trend would result in higher costs associated with increased setup time and additional labor There is a shortage of qualified CIM technicians and engineers Manufacturers demand graduates who understand the integration of all elements of a CIM Intelitek s OpenCIM system addresses this need by providing an industrial level training system for the educational environment User Manual 1 1 OpenCIM 0201 Introduction About OpenCIM OpenCIM is a system which teaches students the principles of automated production using robotics computers and CNC machines It also allows advanced users to search for optimal production techniques by experimenting with different production techniques OpenCIM offers a simulation mode in which different production strategies can be tested without actually operating the CIM equipment OpenCIM provides a realistic expandable environment through interfaces to third party hardware CNC machines robots peripheral equipment etc Students can le
259. om Manager Data is displayed as either Actual or Planned depending on the definition in the Scheduler section of the CIM Manager s INI file ee Shows the activities of machines and the parts they process Shows the progress of parts and the machines which process them Si Displays current order on the screen at Display IV Start M Finish V Duration Interval 5 y Options M Start M Finish Y Duration min Figure 6 14 Scheduler Display Options Zoom Value of time interval compression in Gantt chart display Show Checked items are displayed in the textual display How to Create a Planned Production Schedule To create a planned production schedule do the following pa Activate the CIM Manager e From the CIM Modes Dialog Box activate the tracking mode Procedure Reset storage Generating a Activate the CIM Scheduler Planned Production Schedule Click Start Click Run Wait for the CIM Manager to complete an entire production cycle g Tip To speed up the simulation change the value of the simulation speed in CIM Modes Dialog Box After you have generated a planned schedule you can run the CIM Manager in real mode in order to track and display the actual schedule and see how it compares with the planned schedule User Manual 6 15 OpenCIM 0201 Operating the CIM Graphic Display and Tracking The OpenCIM Graphic Display module shows a real time 3D animation of the operations being performed
260. on as the pallet passes Repeat the same test for each pallet Using the control panel deliver one of the pallets to one of the stations and release it refer to The PLC Device Driver for more details on operating the PLC device driver Verify that the PLC is on Verify that you are able to operate the PLC from the control panel Verify that your MAP INT is correct Verify that your MAP INT is correct Verify that the RVP is in the automatic mode and you received the prompt gt Try to operate the CNC machine from own board Verify that the CNC is in the mode designated by your system user s manual Try to operate the CNC machine from the CNC device driver Verify that your MAP INT is correct Verify that your MAP INT is correct Check the OpenCIM Debug dialog box If Error 8 is displayed then reboot your PC Using the File Manager verify that the directory OPENCIM32 on the main PC is a shared directory Verify that your PC is connected to the main PC according to your identification in all your local INI files OpenCIM Errors and Troubleshooting Problem 10 The barcode fails a good template 11 The CIM Manager is running but gets stuck after the CNC process 12 The ACL driver can not establish communication with the robot 13 A device driver is unable to open an RS232 port in order to communicate with its device and displays the following message in the Control Mode box
261. on with an actual OpenCIM system all users should read the background information in Chapters 1 and 2 and the safety guidelines in Chapter 3 The installation instructions in Chapter 4 are intended for instructors and technical personnel who will be handling software and hardware installation Chapters 5 and 6 are organized to help all users begin using the OpenCIM system as quickly as possible The material is presented in the order required to prepare and operate the OpenCIM system and Procedures guide you through the basic steps of software operation Chapter 7 presents the Virtual CIM module and teaches you how to set up the CIM by means of a graphic editor Chapters 8 and 9 allow advanced users to do their own production experiments beyond the scope of the sample applications in order to explore new CIM techniques Chapter 10 provides details about the OpenCIM software files and directory structure These chapters provide the information necessary for customizing the OpenCIM environment Detailed information on error handling and troubleshooting is provided in Chapter 11 while Chapter 12 presents explanations of abbreviations and terminology used in the OpenCIM system The OpenCIM software is protected by a licensing agreement Full details on Intelitek software licensing are provided in Chapter 13 User Manual 1 4 OpenCIM Introduction 0201 2 System Overview This chapter describes the hardware and software components w
262. only Polling interval in milliseconds for checking the alarm status of a CNC machine Reserved for Intelitek technical support use only This setting checks for an alarm condition on the specified input port If the value of the input port matches this mask the CNC device driver sends the following alarm message to the CIM Manager WM_CIMDDE_CNCERROR with the error value CNCALARM RS232 parameters used by the CNC device driver when it downloads G code to a CNC machine You must set these parameters to match the RS232 settings on the CNC machine OpenCIM Inside OpenCIM User Manual Loader C CNC_L BAT TaskLoadedMark C OPENCIM WS3 TASK CNC LSM Device Driver Settings General CimSetupPath C OPENCIM SETUP SETUP CIM LSMDriverDefinitions QCReport No QCReportTemplateFile VC2_QC INI QCReportFileName QCReportFileMarker OCReportFileDeleteOnStart SimulationFailPercent 20 10 25 Include the Loader parameter when you want to use your own program to download G code to a CNC machine instead of using the device driver s built in downloader The Loader file name must be a batch file The last command in this file should create the flag file specified in TaskLoadedMark This flag file signals that the download is complete The device driver automatically deletes this flag file each time it invokes the Loader batch file See this parameter in the ACL
263. onment can handle different combinations of parts in different quantities and priority levels that need to be produced in a proficient manner In the example illustrated above in Optimizing the Scheduling in OpenCIM the transmission time was neglected However the OpenCIM system still takes the transmission time into account through the use of its optimization mechanisms This can become a significant point when CIM systems have short process times and the transmission time cannot be overlooked Machines robots storage locations and even conveyors have their own priority queue which you can control in order to increase the performance of the production schedule e g in the example given above we assumed that all four parts were sent to machine simultaneously because we ignored the transmission time However in the real CIM the optimization mechanisms insure that machine 1 will work on the part with the highest priority level because the ASRS will know to send the part with the highest priority level from the four parts that it was ordered to release by the CIM Manager The Optimization Approach is completely distributed Each machine can continue to work independently as long as there are parts in its queue Computational overload does not occur on any of the station PCs even with very large CIM cells 9 67 OpenCIM OpenCIM Programming Experimenting with Production Strategies Using the A Plan The A Plan is a table of
264. ooking at the Program Leaf or Device Views in the CIM Manager program When a robot is performing a pick and place command the following messages let you follow the progress of the GET and PUT programs as they execute Run Time Message ON OFP Description The Start macro in the GET program has executed The Finish macro in the PUT program has executed The End macro in the PUT program has executed Box Pick and Place Parameters The CIM Manager sends a set of parameters to an ACL device driver whenever it issues a pick and place command The device driver in turn activates the PCPLC program in the ACL controller which receives these parameters and assigns them to the following global variables Pick 8 Place Parameter SID PART SD User Manual 0201 EV1 Description A sequence number generated by the CIM Manager for each command a pick and place command in this case Whenever an ACL program sends a status message it includes this command ID so that the status message can be associated back to the original command The ID number of the part that the robot is to handle This number corresponds to the Part ID field on the Part Definition form For each type of part the instructions for how the robot is to grasp the part are stored in an array e g CIM The part ID can be used to calculate an index into this array A template is identified with a Part ID of zero The device ID of the s
265. ooonocccnnocccooncccnoncconnccononcconancninns 6 15 Graphic Display and Track io 6 16 Tool Barot Graphic Display isso ideas 6 17 MU il 6 19 CIM Cell Startup na AAA 6 21 Operation in Simulation Mode a 6 21 Operation ti Real Mode ias 6 21 7 OpenCiM Setup A A E 7 1 File MenU isis linia dba 7 1 VIE A A mau E RS 7 3 Edit Menus New Obi aies aeai aae Enes 1 4 Contgurati n Parametels suda E E eT ceca hes 7 8 Edit Menu Additional Options cceccccsecscssscesesssssessesssccsssstesonsnessnecessacceees 7 13 Create Me id 7 14 NEW ta E e es e E edo fed 7 15 LO A ea 7 15 Tutorial iaa ciesti mein ale an 7 15 stage 1 Designing the CIM Cell 7 16 Stage 2 Operating the CIM Cel etnia aora 7 21 g8 OpenCiM Device Drivers Overview of Device DAVE ed 8 1 Device Driver Control Panel saci accessed A n 8 1 User Manual iii OpenCIM 0201 Table of Contents Modes Gl Upper aries dais 8 2 Device Driver Loading Options a wcccsieistecsesasnacceseicenesseessbceedsdocsaisasdvenevasenccesdlabuweteasies 8 3 ee ENE Device DI nas 8 4 Running the CNC Device Driver to da da ai eee 8 5 DO Wal a eo 8 6 The CNC Control Patel noise ir danita E R ici 8 7 The ACL Device DA o 8 9 Th ACE User Tierra nai aa 8 10 Closing the ACL Control Panel coi 8 13 Quality Control Device Driver Sci iia 8 14 TheQC C ntrol Bala E A A AA ss 8 16 QC Device CUM distan 8 18 VERE DE Das 8 20 AQUUS MEN Sit idilio 8 20 MI stain dasha sce E a gall Paces adage N cera aes 8 21 Sam
266. or example CIM TIME 16202542 Indicates amount of time that has passed 162 seconds or 2 minutes 42 seconds since the Run button was pressed PLACE Device start at 7 ROBOT2 Indicates Robot 2 will send a Start message in 7 seconds and a Finish message in 15 seconds PLACE Device finish at 15 ROBOT2 Message History External Messages Intemal Messages CIM w 4 gt No Message cm NOt Figure 6 13 Message History Dialog Box The Message History View allows you to view three types of messages External Messages All messages that the CIM Manager sends to drivers via the TCP IP protocol and vice versa Internal Messages Enables you to check CIM Manager setup parameters e g path to database files path to utilities simulation speed etc CIM Warnings All warnings issued by the CIM Manager The last message is highlighted in yellow When a warning message is issued the Message History dialog box opens The most frequently issued warning message is Part not currently available Update storage User Manual 6 13 OpenCIM 0201 Operating the CIM CIM Scheduler The CIM Scheduler allows you to view various production schedules and determine the most efficient one The Scheduler is a Gantt utility that displays the exact timing and scheduling of the different phases of production H CIM Scheduler Browser C OpenCIM32 DEMO SETUP iol x File Display Help PE El gree Part Machi
267. ose Next Installation Please select software OpenClM Intro OpenClM Offline OpenFMS WorkStation Environment Description OpenCiM lt Back Cancel Figure 4 1 Installation Selection Window De The WorkStation Environment option is used by Intelitek technical support personnel to install system components necessary to run device drivers from a PC which is not the CIM rele Manager PC See Software for WorkStation PCs below User Manual 4 5 OpenCIM 0201 Installation 5 Review the Intelitek software license agreement You must accept the terms of this agreement in order to complete the installation If you do not accept the agreement you cannot proceed with the installation To accept choose I accept and then choose Next to open the User Information Window Figure 4 2 User Information Window 6 Enter the User Name Company and the Serial number printed on the CD The serial number is made up of 12 characters in the following format XXXX XXXX XXXX If you are using the product for evaluation type Evaluation in the Serial field 7 Choose Next The Intelitek Software License window is displayed Product OpenC IM Company COMPANY NAME User USER NAME CD Key 1111 1111 1111 To complete the installation you need to enter r Lici Figure 4 3 Software License Window User Manual 4 6 Installation OpenCIM 0201 8 Each OpenCIM package has its own license the l
268. our purchase orders S CIM Report Generator C 10penCI E3 File Edit Help De 0413 RepotName Destination Note A O Print To Window Print To Window Print To Window Print To Window Print To Window Print To Window Print To Window Print To Window Print To Window Figure 5 13 Generating Purchase Order Report User Defined Report The User Defined Report allows you to design and customize a report to the exact specifications of your CIM system You can create an unlimited number of User Defined Reports The Report Generator program employs Seagate Microsoft Crystal Report also available in Visual Basic to generate the OpenCIM reports The Crystal Report program necessary to create your own user defined report is not included with the OpenCIM software and must be purchased separately Refer to the documentation provided by the Microsoft Visual Basic Crystal Report for instructions on how to create a report User Manual 5 42 OpenCIM Preparing for Production CIM Utility Programs 0201 6 Operating the CIM This chapter describes the CIM modules that are used for operating the OpenCIM system and controlling production These icons comprise the second OpenCIM group after installation is complete a Activates the CIM Manager program Cim Manager Activates the graphic display and tracking of the CIM cell Graphic Display an Activates the Loader which loads the station device driver programs For full
269. ource location where the robot will pick up the part template 9 5 OpenCIM OpenCIM Programming Pick 8 Place Parameter INDXG SDEV2 INDXP SNOTE Description For a source device that has multiple compartments e g a storage rack this parameter specifies in which compartment or buffer the robot will find the part template The device ID of the target location where the robot will place the part template For a target device that has multiple compartments e g a storage rack this parameter specifies in which compartment or buffer the robot should place the part template For pick and place operations that are generated automatically when an order is submitted the SNOTE parameter is reserved for future use This parameter is available for user defined purposes to send special instructions to a GET or PUT program When a pick and place operation appears in the Part Definition table the NOTE parameter contains the contents of the Parameter field from this table You can therefore write ACL programs which recognize this parameter It is your responsibility to put the corresponding code in ACL programs that reacts to this parameter For example if a part is particularly delicate you can use NOTE to signal the GET and PUT programs to move more slowly and grip the part less tightly Writing ACL Source Code The Robot programs are comprised of all the associated programs necessary to run the robot
270. ow to Recover a Failed Device viii id 11 4 TEODORA A AERA de KEE id 11 5 Error Messages do e E E 11 8 Contacting Technical Support oaa A aa ees 11 13 Glossary Abbreviations eicae dt ES T a Siaa 12 1 Terminology ssar E Ea OE A EA A AEE S TE E EER 12 3 Intelitek Software Licensing User Manual v OpenCIM 0201 Table of Contents Introduction About CIM To stay competitive factories are increasingly automating their production lines with Computer Integrated Manufacturing CIM systems A CIM cell is an automated assembly line that uses a network of computers to control robots production machines and quality control devices The CIM cell can be programmed to produce custom parts and products CIM provides many advantages e Computer integration of information gives all departments of a factory rapid access to the same production data e Accessibility of production data results in faster response to change which in turn shortens lead times increases the company s responsiveness to customer demands and competition and improves due date reliability e Computer aided scheduling optimizes the use of the shop floor This improves the utilization of machine tools and reduces work in progress and lead times e Real time production data can be used to optimize the production processes to improve quality using techniques such as statistical process control e Computer analysis and prediction of material requirements for pr
271. owing figure a further example of the process scheduling is given the same example but with a different level of detail Part P1 is the part described above and part P2 is processed by machines M1 3 minutes process time and M4 2 minutes process time The order included four parts of each type and the initial quantity of both parts is two 2 Part P1 is defined with a higher priority than part P2 The user did not use the NEXT command for either part so the system is using the default of putting the NEXT command after the last process defined for each part Machine Duration pap A 1 909 16 98 1 10 10 20 2012029 28 EJ p Pag Pra P13 Figure 9 10 Process Scheduling P1 1 is the first part of type P1 P1 2 is the second part of type P1 P2 1 is the first part of type P2 P2 2 is the second part of type P2 Time Machine Description 0 M1 CIM Manager invoked 2 parts of type P1 and 2 parts of type P2 were sent from storage M1 selects 1 of the 4 parts based on priority level P1 1 to begin processing 2 M1 Finished processing P1 1 and selects one of the 3 parts remaining in the buffer based on the highest priority level to begin processing P1 2 M2 P1 1 is sent from M1 for processing 4 M1 Finished processing P1 2 and selects from the queue based on priority level one of the two remaining parts P2 1 to begin processing M2 P1 2 is sent from M1 to wait in the buffer of M2 7 M1 Finished processing P2 1 Part P2 2 is
272. parameters used by the QC device driver when it communicates with the controller for the quality control device You must set these parameters to match the RS232 settings on the device s controller See these parameters in the ACL section above See this parameter in the ACL section above ngame Frame number as defined on the Frame Definition screen in the Setup menu of the ROBOTVISIONpro software See the ROBOTVISIONpro documentation for details Snap No BaudRate 9600 Parity None DataBits 8 StopBits 1 XonXoff No MainWindowBkgndColors 150 150 150 MainWindowTextColors 255 255 255 SimulationFailPercent 50 OCReport Yes OCReportTemplateFile VC2_0C INI QCReportFileName OCReportFileMarker OCReportFileDeleteOnStart ViewFlex Device Driver Settings General ScriptPath e opencim32 cimcell ws3 For older versions prior to v2 3 of the ROBOTVISIONpro software set this value to Yes For v2 3 and later set 1t to No For best results use only v2 3 and later RS232 parameters used by the QC device driver when it communicates with the controller for the quality control device You must set these parameters to match the RS232 settings on the device s controller See these parameters in the ACL section above See this parameter in the Laser Scan Meter section above See these parameters in the Laser Scan Meter section above 10 26 OpenCIM User Manual 0201 Inside OpenCIM ULS Device Driver Settings
273. part of this chapter presents the menus and screen elements of the Virtual CIM Setup module You are then encouraged to perform the Tutorial which will enable you to practice using this module and create a Virtual CIM Click the Virtual CIM Setup icon to open the Setup screen A number of menus are available However many menu items will not be available until a setup has been created or loaded File Menu New Opens the New OpenCIM Item box which prompts you for the name of the CIM cell you want to create The name you provide will become a subdirectory of your OpenCIM installation directory e g C OPENCIM32 cellname Do not use a name that already appears in the OpenCIM installation directory Open Opens the Select Item menu By default this menu displays the manufacturer supplied DEMO It also displays the names of any CIM cells created by the user If you click on DEMO the Scene Window will appear on the screen as shown in the following figure User Manual 7 1 OpenCIM 0201 OpenCIM Setup Save Exit User Manual OpenCIM Setup Virtual CIM Setup DEMO Figure 7 1 DEMO Virtual CIM Setup SY Note When the Scene window opens it will always display the view that was displayed for the particular setup e g DEMO when you last closed the Virtual CIM Setup module or the Layout you have saved using the Save layout option Saves the current placement of all objects in the CIM cell Exits the Virtual CIM S
274. pen the corresponding parameter configuration menu and do the following e Click on Properties Select the number of the workstation at which the device driver is running e g WS1 for ASRS36 and PLC e Click on the device driver and enter the commport settings e Click on Connectivity e Connect the PLC device driver PLCVD1 to the conveyor CNV1 e Connect each ACL device driver ACLVDn to its corresponding robot ROBOTn e Connect each CNC device driver CNC VDn to its corresponding CNC machine MILLn or LATHEn 31 For each robot select Connectivity and make the connections to all objects which are physically within its reach Connect each robot to the conveyor station CNV 1 n the station buffer BFERn and all machines and devices at its station Make sure the appropriate device driver is connected to the robot If you unable to make a connection move the robot and device closer to each other and try again User Manual 7 19 OpenCIM 0201 OpenCIM Setup 32 Connect the Screwdriver and the Vision Camera to the Jig XY only 33 For the Feeder e SubType Set to 101 e Capacity Set to 10 34 For the Rack e SubType Set to 201 e Capacity Set to 9 35 From the Create menu do the following e Select Loader Section e Select Setup Click OK at the prompt to overwrite the SETUP CIM file e Select ACL DMC File e Select ACL Programs e Select Windows Group This will create a new program group which contains all th
275. pes of parts They allow parts to be transported on the conveyor An operation which uses a robot to remove a part from a CNC machine The entire area in which a robot can reach Any database management program that is compatible with the dBASE standard for file formats and commands 12 6 OpenCIM Glossary 13 Intelitek Software Licensing The software is protected by a licensing agreement Once installed you can use the fully operational software for a 30 day evaluation period To continue using the software after this period you need an unlock code from Intelitek To obtain an unlock code you need to complete three steps 1 Install the software from the CD 2 Send the CD key and the PC specific code to Intelitek 3 Upon receipt of the unlock code enter it in the Registration dialog box The sections below provide detailed instructions on how to use the software license Register your software and receive a PC specific unlock code for each license purchased Protect your license Transfer a license from one PC to another PC Return a license to Intelitek so you can retrieve it later Frequently asked questions Register your software and receive a unlock code User Manual 0201 During the software installation you will be prompted to enter the CD key This number is found on the CD case Make sure to keep the CD key in a safe place The installation procedure generates a PC specific code This c
276. ple Scipt isir nite i eer a nd ie 8 22 The UES Device DAVET rain drid 8 23 Downloading Print Files raras 8 23 MA A E aE A A 8 23 C ntrol Mos a ios cat a a a R 8 25 The PLG Device DVER icon 8 28 PLE Message il aa 8 29 Th PEG Control Pan ae 8 30 simulatine a Convertido lisas 8 33 9 OpenCIM Programming ACL Programming for Open IM ii AE cael vee 9 1 Fhe Piekcand Place Strate Sy i aia 9 1 Overview of a Pick and Place Command ceeecceeesceeeseceeeeeceeneeeesaeeeseeeeneeeeaees 9 3 Teaching RODOt POSiONS bctcsetediet eto adie io 9 4 Writing ACL Source Codina caian gin aiii 9 6 O O 9 19 ACLoff line Uttar dic iaa 9 21 Adding a New Pick and Place Operation ooooonnocccnnoccconoccnoncccnonccnnnnncnnnn cono nccnanncnnns 9 24 CNC Programming for OpenCIM 0 0 cece eeeseeceesceceeneeceeceeceseeecsceeseneececeeceeeeeceeeeeeseeeee 9 28 ENE Script LAA lt x eh a Meee GEOG Sd ads 9 28 CNC Script Language Commands jiccissssceawisjedaassassacsveusgvadaveesdcasvsgsian es dagedaeasasnaasoacs 9 34 Download aso 9 34 DW idad 9 35 DRAW OO 9 36 PuisB isis A ci n 9 37 A A A eA 9 39 SetB O geena a ts Bio polo e ads 9 40 tica 9 43 Wa tBit atari 9 44 User Manual iv OpenCIM 0201 Table of Contents 10 11 12 13 Wait B10Z ost Rai 9 46 WatElecDiana dai 9 48 NALES E 9 49 Sd MINS oes eg ester ce cake cect are sats ace sues tose oleae an shed lads steels ses 9 50 ES BOS O NEARE eset cogs aaa tease sat eas eos eee cea 9 51 MS WINDOW SO siii i
277. pped at a station to be loaded Released Pallet has been released from a station To Station Number of the next workstation which pallet will reach If pallet status is Free the destination is Station 999 PART Name of part or subpart being carried by pallet Product Name of final product to which part belongs Template Identification number of the template being carried by the pallet Last Station Number of the last workstation which pallet has passed through Sim Place Simulated position a sector location on the conveyor as used in the simulated graphic display Leaf View The Leaf View provides a detailed description of the production activities of the CIM cell describing the current operation being performed on each item and the operation that will immediately follow Leaf View olx Status Part ID BarCode LeafID L1 E Action gt Next Process _ a BOx 1 MILL2 BOX MILL1 H i 1 10003 2 BOX TEMPLATE 01000 of COVERED_BOX 1 1 gt Assembly COVERED_BOX 1 1 JIGXY4 ASSY 214 213 COVER 1 To4ssembly COVERED_BOX 1 1 JIGXY4 ASSY 2 0 3 COVER of COVERED_BOX 1 1 gt Assembly COVERED_BOX 1 1 JIGXY4 ASSY 216 Sub Part of Part Figure 6 11 Leaf View User Manual 6 11 OpenCIM 0201 Operating the CIM The following is an explanation of each column in the Leaf View Subpart of Name of the part and the name of the final product to which it belongs PART ACTION The action currently in progres
278. r A station where parts are put together The resulting new part is called an assembly Peripheral equipment and devices at an Assembly Station include an automatic screwdriver Welder X Y table part feeders various robot grippers etc Quality Control Inspection of parts using machine vision laser scan meter height gauge continuity tester CMM caliper or other QC machines Various functions may be combined at one station such as quality control and assembly Stations contain devices that perform production activities such as material processing or inspection The following elements are generally present at a station Robot Robot Controller Station Manager PC Machine Robot Peripheral User Manual System Overview A device which moves parts around a station e g inserts parts into a CNC machine and or performs assembly operations For example an ACL controller which controls the robot and certain optional peripheral devices e g X Y table barcode scanner A Station Manager PC where the device drivers are located that e Translate OpenCIM production messages and commands to from each station device e g the ACL controller e Provide a user interface for controlling station devices by manually sending OpenCIM commands e g to CNC machines or an ACL controller e Function as a terminal for devices that use an RS232 interface for setup and programming such as the ACL controller A device that proc
279. r Configuration menu become available 7 12 OpenCIM 0201 QC Report The Quality Control device driver allows you to write the results of a QC test to an ASCII text file that can be input to a spreadsheet program e Delete on Start This switch controls whether a new quality control report file will be created each time this device driver is activated If checked Yes the previous file is deleted 1f not checked No results are appended to the existing report file Quality Report Box X 7 Delete On Start Cancel Figure 7 12 Defining Quality Control Report Rotate Rotates a displayed object to any degree Useful for example to properly attach buffers to the conveyor or to logically orient a PC in the Virtual CIM display Sub Type System defined parameter Normally you do not need to manipulate this parameter Variables The default values for the variables used by the CNC script Write Load Creates the WSn INI file for the particular workstation Edit Menu Additional Options Setup IDs Allows you to change the ID number of a device Double click on the highlighted line and enter a new number at the prompt ROBOT SGRAS2 00 J on amp WM oO Figure 7 13 Edit Setup IDs Menu User Manual 7 13 OpenCIM 0201 OpenCIM Setup New Object Delete Object Drag Object Create Menu Windows Groups Setup Loader Section ACL DMC File ACL Programs User Manual OpenCIM Setup Once you have changed an ID
280. r in turn sends a command to the ACL controller to signal the robot that it can now remove the part from the CNC machine 8 The ACL program sends commands to the CNC device driver to e Open the chuck e Open the door 9 The ACL program directs the robot to remove the part It then sends a status message to the CIM Manager signaling that the unloading is finished The CNC device driver can communicate with a machine using either an RS232 interface or a special I O board in the Station Manager PC For an I O interface each status line and command line for a machine is connected to this board In most cases the CNC device driver uses the ACL device driver and controller to communicate with the machine on RS232 and I O level Since CNC machines from different manufacturers have different sets of status lines and command lines the CNC device driver uses a flexible control language called the CNC Language Interpreter CLINT for interacting with the machine This language allows you to adapt the device driver to the features and wiring configuration of a specific machine by writing a set of customized routines When a part arrives at a CNC machine the CNC device driver receives a command to run the corresponding CLINT routine to process this part PLC Device Driver The PLC device driver communicates with the programmable logic controller which directs the operation of the conveyor This device driver receives messages from the CIM Manager abo
281. r specifies the name of the engraving program as the filename and the Z axis as the parameter The current Z axis is displayed during operation 8 26 OpenCIM 0201 Simulation The device driver emulates real mode by communicating with the CIM Mode Manager The Laser Engraver is disabled in this mode Manual Mode In this mode each command received from the CIM Manager displayed in the Action field must be confirmed by the user click Do Laser Engraver Device Driver CNC73 J lolx File p on Help User Manual 8 27 OpenCIM 0201 OpenCIM Device Drivers Standalone In this mode the user is in direct control of the laser machine without any Mode interference from the CIM Manager It is therefore the user s responsibility to verify that the laser is operational Laser Engraver Device Driver CNC73 The _ sto button can be pressed at any stage during the operation User Manual 8 28 OpenCIM OpenCIM Device Drivers 0201 The PLC Device Driver The PLC device driver relays messages between the OpenCIM network and the programmable logic controller which controls the operation of the conveyor These messages pertain to the movement of pallets on the conveyor This device driver runs on a PLC Manager PC which is usually designated as workstation 99 This PC is connected to the PLC via an RS232 link The PLC device driver e Receives a command message and tells a PLC control program to execute the
282. r the conveyor on the floor Select File Save to save your work Select Edit New Object Storage ASRS36 Click the left mouse button near Station 1 The ASRS36 appears on the screen This object is the robot that has a storage rack with 36 shelves Click on the ASRS36 The object s parameter configuration submenu opens Select Rotate Enter 90 The lower small frame should be outside the conveyor Adjust the orientation and position of the ASRS36 Add Tables for the workstations Add objects to Stations 2 and 3 At Station 2 select Robots ER 9 and enter 1 0 meters at the prompt for LSB robot will be mounted on a linear slidebase At Station 3 select Robots ER 14 and cancel at the prompt for LSB During the selection and placement of new objects wait for the cursor to settle in place Avoid double clicking Your screen should now look like this 21 Using the same procedure you used for placing robots at stations add the following objects to the CIM cell At Station 2 CNC Mill At Station 3 Jig XY Screwdriver and Vision Camera User Manual 0201 7 17 OpenCIM OpenCIM Setup As you work rotate and reposition the objects on the shop floor Use Redirect View and Zoom to help you with the placement of objects Save your work regularly when creating the CIM cell 22 Add station buffers Buffer 2 around the conveyor in the following order e Station 1 e Station 2 e Station 3 23 Se
283. racter Character Character e Structure Character Character Numeric Numeric Numeric Date Character 2 20 20 o 0 UY wow 00 20 20 20 20 20 80 20 20 10 10 34 OpenCIM Inside OpenCIM 8 MANINDEX Numeric Customer DBF File Structure 1 CUSTNAME Character 2 DESC Character 3 ADDRESS Character 4 PHONE Character 5 FAX Character 6 EMAIL Character Orderlist DBF File Structure 1 SEQNO 2 PCONTROL Character 3 DESC Character PURCHASE DBF File Structure 1 SUPPLIER Character 2 PART Character 3 SPART Character 4 TEMS Numeric 5 COST Numeric 6 DUEDATE Numeric 7 SENDDATE Numeric SUPPLIER DBF File Structure 1 SUPPLIER Character 2 DESC Character 3 ADDRESS Character 4 PHONE Character 5 FAX Character 6 EMAIL Character REPORT DBF File Structure 1 NAME Character 2 REPORTNAME Character 3 DESTINATION Character 4 NOTE Character SCHEDULER DBF File Structure 1 PART Character User Manual 0201 8 20 80 40 25 25 25 80 20 20 NN NWN W 20 80 40 25 25 25 20 120 30 80 20 10 35 OpenCIM Inside OpenCIM User Manual 0201 2 PROCESS Character 3 MACHINE Character 4 ORDERNUM
284. re Defining the Product as described below When to Define a Subpart New Part Use the following criteria to help determine when to create a subpart at an intermediate stage of production by entering a name in the Subpart field e Define a new subpart if it is needed in the production of other products e Define a new subpart to enable an order to be placed for this part e g for use as a spare part e Define a new subpart if it requires a different template type e Define a new subpart if it is to be used in the assembly of some other product How to Define an Assembly Process An assembled part assembly always has at least two rows The Subpart name specified in row 1 is referred to as the original material The assembly is always performed at or by a machine such as a pneumatic vise which is often defined as JIG in the list of Machine Names in the Machine Definition form The process for the subpart in the second row must be defined in the Machine Definition form as Action Type Assembly pa 1 In the Part Type form select Product parts e 2 From Main Menu select FILE NEW PART or click the New button on Procedure the toolbar Defining the Product 3 Tn the Part Name field enter COVERED_BOX the name of the product User Manual 5 14 OpenCIM Preparing for Production CIM Utility Programs 0201 4 In the Part ID field enter a unique ID for this product for example 3 or accept the default ID numb
285. re 6 15 Graphic Display on Manager User Manual 6 16 OpenCIM Operating the CIM 0201 Tool Bar of Graphic Display Mi z P x x N a E Pr CIM Explore Displays the names of any CIM cells created by the user Save Group Creates a Window group Setup Creates or overwrites the SETUP CIM file Load Creates WSn INI files for each station New Object Opens dialog box with all available objects Delete Object Deletes currently selected object Drag Object Allows dragging of object from one location to another Show Name Shows name of the object Show ID Shows ID of the object Show Position Shows coordinates from bottom left corner Redirect Camera Top Drag 3D Frame About The Graphic Display of a working OpenCIM cell is displayed in the CIM Manager window and it can also be displayed on another PC in three different 3D views in the same time on the same screen as shown in the figure below User Manual 0201 6 17 OpenCIM Operating the CIM E demo demo 02B Graphic Display Socket Window File Text View Help 2 010015489850 p Y a alexa 30 n AP E Caspe By Microsot Caca open Scream PONEN 1455 Figure 6 16 Graphic Display Following is the correct procedure for graphically tracking production pa Click Graphic Display e Open the CIM Manager Click the Green Load button Click Run Green Procedure arrow Graphic Tracking of Now you can observe t
286. re modules can run on the same PC in the multi tasking environment provided by Windows In this case inter module communication is internal where services are provided by the operating system When a single PC is used no LAN is required although Network Settings for the PC still have to be configured for TCP IP Intermediate configurations are also possible For example one PC may be used to run both the CIM Manager module as well as the PLC device driver A single Station Manager PC may be connected to devices at different stations User Manual 2 16 OpenCIM System Overview 0201 a eG CIM Graphic Manager Tracking Stajon Conveyor Co veyer anager anager Device Drivers PLC Device Driver Robot CNC etc A Station Manager LAN Device Drivers Robot QC etc Figure 2 9 OpenCIM Modules Distributed Among PCs Conveyor CIM Manager Station Manager Device Drivers Robot CNC QC etc Conveyor Manager PLC Device Driver Graphic Tracking Figure 2 10 OpenCIM Modules Concentrated in One PC Minimum PC requirements for a dedicated CIM Manager PC are Pentium III 500 MHz PC 64 MB RAM CD ROM drive Windows 98 2000 2 GB hard disk e SVGA 17 monitor User Manual 2 17 OpenCIM 0201 System Overview Fully Windows compatible LAN interface card USB port Two available RS232 ports Minimum PC requirements for dedicated Station Manager PCs and a Conveyor Manager PC are Note Graphic Pentiu
287. ree different 3D views at the same time on the same screen 2 18 OpenCIM System Overview 0201 Minimum PC requirements for Graphic Display and Tracking PC e Pentium III 500 MHz PC e 64 MB RAM e CD ROM drive e Windows 98 2000 e 2 GB hard disk e SVGA 17 monitor e Fully Windows compatible LAN interface card Device Drivers Each device at a station is controlled by an OpenCIM device driver program running on the Station Manager PC A device driver translates OpenCIM messages in two directions e OpenCIM instruction messages into a set of commands understood by the target device e A response from the device into an OpenCIM status message After a device driver translates an instruction into a command it sends the command to the destination machine or robot OpenCIM instructions can come from e The CIM Manager e Other OpenCIM device drivers e The device driver s user interface e User application programs When a device returns a response the device driver translates this information into a standard OpenCIM message format It then relays this information as follows e Device status information to the CIM Manager e Real time production data to the Graphic Tracking module e Designated messages from a device to a user defined process that is monitoring this device e Specific messages to other device drivers A separate copy of a device driver is run on a Station Manager PC for each device at the station Each device driver
288. reter aborts program execution and generates the error message WM_CIMDDE_CNCERROR The CNC Device Driver relays this error message back to the CIM Manager Examples WaitString V1 V2 WaitString V1 P1 WaitString P1 V1 WaitString Test is done 10000 User Manual 9 49 OpenCIM 0201 OpenCIM Programming SendString SendString Sends a string to the specified OpenCIM device e g to a robot Name SendString Address String Inputs Address e Name of the workstation in e Any of the OpenCIM the OpenCIM environment predefined commands String e String to be sent to be sent to e Any string that contains an the defined address address in the OpenCIM environment Purpose When a program is to be run in the ACL controller a string recognizable by the ACL controller is sent to the ACL controller and the address tells the controller where to send the string Function The SendString command sends predefined commands to any CIM entity Examples SendString P1 P2 SendString Vl V2 SendString V1 P1 SendString WSO DDE ACL 25 RUN SSCNC User Manual 9 50 OpenCIM 0201 OpenCIM Programming MSDOS MSDOS Performs any MS DOS command MSDOS String Inputs String e Any valid MS DOS e Any valid MS DOS command command Purpose The command provides an interface from OpenCIM to the MS DOS operating system Function The MSDOS command launches t
289. rid and click the left button A red dot appears this is the conveyor starting point Click the right mouse button Drag and select the vertical segment Point the cursor to a spot above the starting point and click Click the right mouse button Select an arc up and left segment The conveyor is created in the direction of movement normally counter clockwise Continue selecting and adding segments to the conveyor until it is complete Use the green curved arrow to UNDO any mistakes Avoid using too many UNDOs When the conveyor is complete click the right mouse button and then OK Click the right mouse button and select S to create a station Point to a location just above the starting point of the conveyor not on the curve Click the left mouse button Accept the prompt for Station number 1 7 16 OpenCIM OpenCIM Setup 0201 12 13 14 15 16 17 18 19 20 Repeat the previous step for two more stations Add the stations in consecutive order around the conveyor When all three stations are marked around the conveyor click the right mouse button and select the file icon from the pop up menu to save the conveyor Confirm the Save prompt The grid closes and a cube cursor appears on the screen Bring the cursor to the center of the screen and click The conveyor appears in the Scene Window The red cross marks the center of the shop floor Click on the conveyor and drag with the left mouse button to cente
290. rogramming Generic Unique PROGRAM_GET xxx gt PROGRAM_GET ASRS PROGRAM_PUT gt PROGRAM_PUT 1 Use a teach pendant or other means to train the robot how to move and grasp 2 Enter the coordinates of the source and target locations in the appropriate array 3 Determine how the robot should grip the part template 4 Fill in the appropriate robot movement commands in the GET and PUT programs If the location has multiple compartments or buffers you can use the variables INDXG and INDXP to help calculate the array index for CIM the array that contains all robot positions These index parameters specify the cell location when dealing with a storage rack or ASRS 5 Use standard ACL procedures for teaching a robot to grab and release a part from the source and target locations When a robot wants to insert or remove a part in a CNC machine it must tell the machine when to open its door and chuck so the robot can enter the machine The GET and PUT programs associated with a CNC machine must communicate with CNC script programs that open and close the door and chuck on the machine Robot Errors Crash When the ACL controller detects that a robot has collided with something it responds as follows e The controller goes into COFF mode Controller Off and immediately stops all motors on this robot e The controller immediately terminates all programs which are trying to move t
291. rom a template and placing it in a CNC machine The coordinates for each pick and place operation are defined in advance and assigned a Location ID The CIM Manager sends a pick and place command to the controller which includes two Location IDs source and target The actual path a robot follows when moving from a source location to a target is defined in an ACL program residing in the ACL controller The CIM is not involved with the complexities of robot movement it only sends pick and place commands which specify the action to take not how to take it The ACL device driver can also activate user supplied ACL programs residing in the controller These programs are commonly used to control peripheral devices attached to the ACL controller For example a barcode scanner can be attached to an RS232 port or a CNC machine can be connected to a set of I O ports on the controller CNC Machine Device Driver OpenCIM uses a CNC device driver to interface with any CNC machine that uses I O lines or an RS232 interface to receive commands and report machine status This device driver can be adapted to work with any such CNC machine using a built in language to write short interface routines The CNC device driver can control a machine read the status of a machine send status messages to other CIM entities and download G code programs to the machine using an RS232 interface The normal sequence of events is e The CIM Manager instructs the robot to l
292. rotection Error Assertion Failed An Error has occurred in your application OpenCIM tells you that it e This is not a real problem This occurs when someone has received an unknown clicks the mouse on one of the OpenCIM device drivers message and activates a procedure The system is running but Verify that the ACL controller is in the CON mode the robot is not responding e Verify that ACL Controller A is in Motors ON e Try to run the failed command again from the control panel of the ACL device driver e Verify that your MAP INI is correct 11 5 OpenCIM Errors and Troubleshooting Problem 4 User Manual 0201 While the system is running a pallet stops in the wrong destination or does not stop in the correct position The system is running but the PLC is not responding The system is running but the RVP is not responding The system is running but the CNC does not respond You try to run the system and the yellow Wait message appears after waiting there is still no change One of the OpenCIM applications is unable to locate one of its source files in the setup directory Solution Turn the PLC off and then turn it on again Verify for each pallet that it stops and releases at each station Start the PLC device driver Place only one pallet on the conveyor and follow the report on the PLC device driver control panel Verify that the correct pallet ID is reported for each stati
293. rs between a robot and its CNC machine This table shows the sequence of CNC commands generated by the PUT and GET programs that insert and remove a part from a machine Robot Action Robot CNC Request Response PUT Part into CNC Machine Robot brings part to entrance of CNC machine and waits Open Door Door Open for door to open Robot enters CNC machine with part and waits for viseto Open Vise Vise Open open Robot places part in vise and waits for vise to close Close Vise Vise Closed Robot releases part withdraws from CNC and waits for Close Door Door Closed door to close User Manual 0201 9 54 OpenCIM OpenCIM Programming Robot Action Robot CNC Request Response Robot signals CIM Manager that part is ready to be machined The CIM Manager turns on the CNC machine The robot does NOT directly turn on the CNC machine by sending an activate command Instead the CIM Manager sends the activate CNC command message to the machine so that it can take care of downloading the G code needed to process this part GET Part from CNC Machine Robot moves to entrance of CNC and waits for door to Open Door Door Open open Robot enters CNC grasps part and waits for vise to open Open Vise Vise Open Robot removes part from CNC machine Writing ACL Programs that Talk to a CNC Machine The CNC synchronization mechanism is used when a robot must order a CNC machine to perform an operation and wait until the machine signals t
294. rsion 1 65 or later The following ACL features are used when writing structured ACL code for OpenCIM e Symbolic constants FDEFINE e User defined macros HMACRO ENDM e Include files AINCLUDE e Download Flags e IF e IFDEF e F IFNDEF e ELSE e ENDIF e Parameter passing using global variables e Synchronization between programs running simultaneously e Using the ACLoff line utility program to send ACL source code to the ACL controller You should be familiar with the system information contained in the include files CIMSYS SYS and CIMSYS DMC before you start writing your own ACL programs for the OpenCIM environment This file contains system macros programs and global variable definitions which perform the following functions e Synchronize the running of GET and PUT programs e Start and end GET and PUT programs e Error handling e Send status messages to the CIM Manager to a CNC machine and to other CIM entities You should NOT edit the CIMSYS SYS or CIMSYS DMC files without guidance from Intelitek technical support The program DOWNLOAD EXE sends ACL source code files to the controller While it is sending programs to the ACL controller this downloader checks syntax and substitutes the program code associated with DEFINE MACRO and INCLUDE These three language directives function similarly to their counterparts in C or Assembly language For more details see the ACLoff line program User s Manual and the ACL
295. rt on a PC is a low speed data communications port that typically transmits and receives information at the rate of 300 19 200 bits per second bps Data is transmitted serially i e one bit at a time There is a separate line for transmitting and receiving data The following OpenCIM devices use RS232 connections User Manual Station Station Manager PCs use RS232 to Manager PCs e Download Programs to Processing machines e Pass OpenCIM messages to from an ACL controller e Provide a terminal interface for programming ACL controllers e Pass OpenCIM messages to from other station devices such as QC systems PLC The PLC Manager PC uses RS232 to e Send pallet destination information to the PLC e Send commands to the PLC e Receive status messages from the PLC Peripheral Peripheral devices can be attached to the RS232 ports of an ACL Devices controller e g barcode reader 2 24 OpenCIM System Overview 0201 Inputs Outputs I O connections can be used to turn production devices on and off and to transmit binary information about the status of a device A separate wire carries each I O signal I O connections use a low voltage DC signal The exact voltage depends on the specifications of the devices being connected I O connections are used for signaling purposes only An output signal should never be used to directly drive a piece of electrical equipment In this case an output signal should be buffered through a relay or o
296. ry to submit an order when any one of the following conditions exists e An undefined part is referenced on the Manufacturing Order form e An undefined subpart is referenced in a Part Process table e An undefined machine process is referenced in a Part Process table User Manual 5 28 OpenCIM Preparing for Production CIM Utility Programs 0201 Purchase Order Form A purchase order is a list of the parts that need to be supplied to the CIM cell so that it can complete the Customer Order The Purchase Order form shown below can be generated by the MRP program according to the customer orders currently in the system You can view and modify or simply accept the Purchase Order or define a completely new one The Purchase Order form lets you create view and modify a list of suppliers Parts must be defined in the Part Definition form before they can be ordered from suppliers Each row in the Purchase Order table represents a total quantity of a particular part which needs to be purchased by a specified date so that all customer orders are filled CIM MAP C OpenCIM32 DEMO DATA Iof x File Edit Supplier Help Det SA ol FROM fs 10 E Customer Order Manufacturing Order Purchase Order 7 7 Due Send Supplier PatName Quertiy Cot Due Das al BOX Purchase order Figure 5 11 Purchase Order Screen Toolbar You can switch to the other order forms by clicking the appropriate tab above the table The followi
297. s 7 10 OpenCIM 0201 Possible Connections A list of all objects to which this object can be connected For robots this list will also display all devices that are in physical reach of the robot i e that are in the Work Volume of the robot and all objects that can be connected by means of an RS232 cable Possible Connections for Robots will also display all the ACL device drivers within the CIM cell since robot controllers can communicate with any PC in the CIM cell Normally you should select only one ACL device driver per robot Do not select ACL device drivers that are not intended for this robot If you want to connect an object not a device driver to the robot and the object is not within reach of a robot reposition it on the screen until you see the object s name appear in the list of possible connections Conversely if you move an object too far away from a robot the connection will be severed A warning will prompt you to reposition the objects and reestablish the connections if desired Figure 7 9 Robot Connections Tip To see which device driver belongs to an object click on the object From the object s Parameter Configuration menu select ConnectivitylOK A line connecting the object and its associated device driver appears on the screen Alternately click on a device driver to find its associated device Green lines show the connections between device drivers and their associated objects Red l
298. s Viewflex ROBOTVISIONpro e Coordinate Measuring Machine CMM e Laser scan meters barcode readers calipers These device drivers receive instructions from the CIM Manager to perform a predefined quality control check on a part These instructions specify the type of test to perform and the range of acceptable results The quality control tests for each part are defined according to the instructions for each quality control device A quality control device driver translates OpenCIM messages into commands understood by its associated quality control device The device driver can communicate with quality control devices attached to either a Station Manager PC or ACL controller via an RS232 interface or YO port When the quality control device performs a test it sends the result back to the quality control device driver on the Station Manager PC The device driver translates the message into a standard OpenCIM format It then sends this status message to the CIM Manager The control panel of each quality control device driver lets you observe the results of each quality control test It also allows you to interactively issue commands to a quality control device or send status messages to the CIM Manager User Manual 2 22 OpenCIM System Overview 0201 OpenCIM Communication Network This section describes in detail each of the following communication networks I O RS232
299. s upper line and the next process to be gt NEXT performed on the part For example PROCESS MILL 2 process defined in the Machine Definition form COVERED_BOX part name MILL 1 name of machine which will perform operation as defined in the Machine Definition form Status When a part is being produced one of the following symbols appears at the current stage of production a Command sent waiting for acknowledgment ON Device has begun processing this part device driver has responded with Start message OFF Device finished processing this part device driver has responded with Finish message a The blue box indicates operation completed device driver has responded with End message WAIT CIM Manager is waiting for another operation to complete before sending this command Part ID An internal ID index for the part generated by the CIM Manager BARCODE The ID number of the template which is carrying the part Leaf ID An internal ID index generated by the CIM Manager LI Ln Additional information about other leaves Event View The Event View is used only when the CIM Manager is operating in simulation mode it contains data only after the Run button is pressed The Event Queue is a list of events that will be generated by OpenCIM s simulation engine in order to ensure proper functioning of the simulation EVENT VIEW X Figure 6 12 Event View User Manual 6 12 OpenCIM Operating the CIM 0201 F
300. s 9 51 ABORTO dad 9 52 Interfacing a Robot with a CNC MachiN cocoococnnocccnoncncnnnnononanononcnononcncnnncnnonncnnnnnccnnnnccnns 9 53 Writing ACL Programs that Talk to a CNC MachiN ccoccononnnnonnnononannninnnononcnncnnnos 9 55 One Robot Tending Two Machines c ccessecesssceesececssececseeeeeseeeesseeeenaeeeneeeenes 9 61 ACL Controller Backup and Restore iii di di ei keeles 9 61 Optimizing the Scheduling in OpenCIM eee eeecesesecessseecesseeceeneeceeceeceeeeeceeneeeeteeeesaes 9 63 Benefits of the Optimization Approach eee ceesseceeneceeeeceeneeceeneeceeneeceeeeeneeeees 9 67 Experimenting with Production Strategies Using the A Plan oooonocnnoccnoncconccnnoncnonononcnnnos 9 68 O 9 68 Inside OpenCIM OpenCIMLoader DD L ad r EXE AS 10 1 Epader Command ines 0 finas 10 2 OpenCIM Directory ia cd 10 4 MAP IN Lornsniaial ab ias 10 12 SETUP o acudo e 10 14 DEVICE DM Esad 10 17 A cg oy pctacicieas oa coals avesanen E san geaden a caaehad vac E a nana ah O 10 18 VC2 WM DBE ni psneedvesaanasdaz na a ATEA ATA A TA ATA 10 29 OPE CIN Das SU a E R dana e 10 31 Application to Report File Cross Reference cceccesseeseccesscecenseccensecesonseccenseccensees 10 37 o UD asset yaoi coy EE EEA E ENE E EE E T 10 38 Errors and Troubleshooting Device Error Handle escindida n a a R a 11 1 Where the Problem OU aa 11 2 What the Problem Isiiri noroi essiri lili 11 2 How To PROC Cece sae ea anasto E li EEE Ea 11 3 H
301. s all the software modules and features of OpenCIM and is intended to support systems with one robot tending one or two machines and quality control devices The following items are not included in the Virtual FMS Setup module nor can they be configured for online operation Included in OpenFMS All types of robots Slidebases linear conveyors XY and linear positioning tables ASRS 36 and all smaller storage device and part feeders All CNC machines ViewFlex machine vision system electronic calipers laser scan meter Automatic gluing application Automatic screw driving application User Manual 2 2 System Overview Not included in OpenFMS Closed loop conveyor ASRS and ASRS carousel Laser engraver Coordinate measuring machine electronic height gauge barcode reader Hydraulic robot and pressing station Pneumatic part feeding sorting station Process control station OpenCIM 0201 OpenCIM Offline OpenCIM Offline is the simulation version of OpenCIM The user can design and run an unlimited variety of CIM or FMS cells in simulation mode It does not support hardware or online operation Device drivers are not included in this package OpenCIM Intro OpenCIM Intro is similar to the OpenCIM Offline package but does not include the Virtual CIM Setup module The user can run all the demo CIM systems included in the software and can perform manufacturing management such as part definition storage manage
302. s how to edit or create a Manufacturing Order z Select the order date number from the Order List e Click the desired row in the Part Name column and open the product list Procedure Select the product required by the customer Editing and Inthe Total Quantity field enter the number of items that need to be Submitting a Manufacturing Order produced in this case 5 In the Initial Quantity field enter the number of parts to be extracted from the ASRS when production begins normally 1 or 2 In the Priority field enter 1 indicating the highest priority In the Due Date field enter a value which is one greater than the value in the Order List in this case 2 indicating that the product will be manufactured today ready for shipment tomorrow GY Note To order other products at this time add a new line by right clicking the last cell in the order choosing Insert After and repeating steps 2 6 6 Click Save to save the entries without changing the last submitted production plan A Plan 7 Click the MO icon to submit this order and create a new production plan You can now operate the CIM Manager and start production How to Submit an Order Before you click MO and submit the manufacturing order make sure that the following CIM definitions are up to date e Machines and Processes e Parts e Storage After setting up these CIM elements you can initiate production You will receive an error message if you t
303. section above Enables disables creation of a log file for capturing results from this quality control device If set to No all other QC report parameters below are ignored Name including path of the file that defines the format of the quality control log file Name including path of the quality control log file itself A flag file including path which indicates that the quality control log file has been updated A user application can delete this flag file after processing the log file The next time the flag file appears the application knows that there is new log file data to process This switch controls whether a new quality control log file will be created each time this device driver starts up If Yes the previous log file is deleted If No results are appended to the existing log file When the device driver is operating in simulation mode this value determines what percentage of the simulated quality control tests are randomly reported as failures This setting provides the default value that appears in the Fail box on the QC Control Panel The range is 0 100 0 test always passes 100 test always fails OpenCIM Inside OpenCIM BaudRate 9600 Parity None DataBits 8 StopBits 1 XonXoff NO MainWindowBkgndColors 40 150 100 MainWindowTextColors 100 50 200 ROBOTVISIONpro Device Driver Settings General CimSetupPath C OPENCIM SETUP SETUP CIM RVPDriverDefinitions RS232
304. selected from the queue to begin processing M4 P2 1 is sent from M1 to begin processing 9 M2 Finished processing P1 1 and begins to process P1 2 M3 P1 1 is sent from M2 to begin processing M4 Finished processing P2 1 the last process so the NEXT command is performed and P2 3 is waiting on the buffer of M1 10 M1 Finished processing P2 2 and P2 3 is selected from the queue to begin processing M4 P2 2 is sent from M1 to begin processing User Manual 9 65 OpenCIM OpenCIM Programming Time Machine Description 12 M3 Finished processing P1 1 M4 Finished processing P2 2 The NEXT command is activated and part P1 3 is waiting on the buffer of M1 13 M1 Finished processing P2 3 and P1 3 is selected from the queue to begin processing M4 P2 3 is sent from M1 to begin processing 14 M1 The NEXT command is performed so P2 4 is waiting on the buffer 15 M1 Finished processing P1 3 and P2 4 is selected from the queue to begin processing M2 P1 3 is sent from M1 to wait in the buffer of M2 M4 Finished processing P2 3 The NEXT command is activated and P2 4 is waiting on the buffer of M1 16 M2 Finished processing P1 2 and P1 3 is selected from the queue to begin processing M3 P1 2 is sent from M2 to begin processing 18 M1 Finished processing P2 4 The machine remains idle because there are no parts waiting in its queue M4 P2 4 is sent from M1 to begin processing 19 Ml Receives P1 4 which was released from the ASRS as a result of the
305. sequential instructions which the CIM Manager executes in order to produce the products being ordered It is created when you submit an order You can also edit this table manually with a dBASE editor Just as you can compile and run a program without ever examining the associated assembly code so you can submit an order and run the OpenCIM production line without dealing with the A Plan However advanced users may want to understand the mechanics of OpenCIM production in order to optimize certain critical areas This section explains the structure of the A Plan and how to modify it The A Plan is based on processes and operations that have been set up in the Part Definition table For each ordered part the A Plan lists the procedures required to produce that part The relationship between the Part Definition table and the A Plan is similar to the relationship between source code written in a high level programming language and the resulting assembly language output after compilation Dealing with the source code is the easiest way to understand and change a program However dealing with the assembly language output might be appropriate for advanced users who need to optimize certain critical areas or who want to understand more fully what is happening at the hardware level Similarly the Part Definition table provides an overview of the CIM production process while the A Plan lists the underlying details In addition to user defined processes t
306. st Low High Type Fal o z i CADpenCIM32ADEMONWS514 172 16 12 23 Read 7 Figure 8 8 Control Panel for a Quality Control Device Driver Control Modes for Quality Control Device Drivers A QC device driver like all other device drivers can pass actual messages or can generate simulated messages In Real Mode the device driver relays messages between the OpenCIM system and the quality control device In one of the simulation modes the QC device driver can be used to emulate a quality control device or to test a device For more details refer to Device Driver Loading Options The table below shows the messages that can appear in the Control Mode box on the Control Panel In each mode the device driver treats command messages the same whether they originate from the CIM Manager or from selections you make from the device driver s Control Panel The activation examples show command lines from the Loader s INI file used to start the device driver in the designated mode Bold command line switches highlight the specific switch used to invoke that mode Real Mode Normal operating mode The device driver relays command messages to the QC device from the CIM Manager In turn it broadcasts pass fail status messages from the device to the OpenCIM network Activation LSMDriver EXE LSMVD1 INI 13 COM 2 Real Mode The QC device driver shows that it has received the first message from the Connecte
307. ster production scheduling and capacity planning Manufacturing Resource Planning MRP ID coordinates and integrates manufacturing resources together with engineering marketing and financial resources About OpenCIM MRP The OpenCIM MRP program is used to create and define three types of orders e Customer Orders products ordered e Manufacturing Orders items to be produced e Purchase Orders items to be purchased from suppliers In general OpenCIM MRP allows you to create a list of customers and define the products ordered by each customer Once Customer Orders are created the MRP program automatically creates a Manufacturing Order and a Purchase Order You can view and modify or simply accept the Manufacturing Order or define a completely new one When the Manufacturing Order is submitted the MRP creates an A Plan file or production work order For further details see A Plan Report later in this chapter In addition the MRP creates a Purchase Order for items that must be supplied to the CIM The OpenCIM Report Generator can be used to display and print the Purchase Order The following figure is a flow chart of the MRP program Select Customer Customer Order Purchase Order Manufacturing Order Select Supplier Select Order Print Order Report Generator Figure 5 8 MRP Flow Chart User Manual 5 22 OpenCIM Preparing for Production CIM Utility Programs 0201 Customer Order Form Whe
308. sure good backup at all times User Manual 9 61 OpenCIM 0201 OpenCIM Programming How to Back Up an ACL Controller An entire backup of the ACL controller includes all robot parameters positions and programs To back up the controller do the following 0 From the ATS main screen on the Station Manager PC press Shift 6 F10 for Backup The Backup Manager screen appears Procedure Make sure the Backup Directory field is correct before proceeding Backing Up the ACL Controllers Select Parameter in Backup Restore Type Parameter in the File Name field and press Enter Press F3 for backup a warning message appears stating that A11 running programs will be aborted Are you sure Y N Type Y asterisks appear and move across the bottom of the screen representing a time bar When the time bar lapses Done appears on the screen confirming that the backup copy has been completed successfully Press Enter until the cursor selects Positions in Backup Restore Type Position in the File Name field and press Enter Repeat steps 5 and 6 for the backup of Positions Press Enter until the cursor selects Programs in Backup Restore Type Programs in the File Name field and press Enter Repeat steps 5 and 6 for the backup of Programs Press Enter until the cursor selects All in Backup Restore Type A11 in the File Name field and press Enter Repeat steps 5 and 6 for
309. t Bin E cima 3 DATA E E LOG SETUP B wso E O ws 36ASRS1 E O ws2 5 RoBoT2 E ws3 siexyv4 5 ROBOTS O ws 4 O CIMLAB4 5 CIMLABS 3 Cimsetup E RESOURCE 5 Demo E 5 RESOURCE 8 amp ue S OC_TREE 3 DATA E Glos setup OB wso Figure 10 2 OpenCIM Directory Structure Folders with data that is relevant only to a specific station e g WS1 WS2 can be located on the CIM Manager PC if you want to centralize the system data or on that station PC It is recommended to use the first structure i e data is kept in a single location which facilitates backup User Manual 10 4 OpenCIM 0201 Inside OpenCIM For every cell created by the Virtual CIM Setup a subdirectory which contains the following subdirectories is created Subdirectory DATA DOC LOG SETUP WSO WSn VC2_WM DBF CIMCELL INI VC2 INI CIMCELL O2B CIMCELL O2C CIMCELL O2P Description Contains data files that change during the normal operation of the CIM Contains all documentation relevant to this particular system Contains a log of the system Contains all the files that change when setting up the CIM cell Workstation Manager Contains all data files that are unique to this station OpenCIM network messages file These files contain graphic information of the cell The WSn subdirectories represent each of the workstations in the CIM cell A WSn subdirectory is created in two phases First the subd
310. t Click on a Graphic object and drag it to the appropriate location on the CIM layout screen e g Drag a robot in order to place it beside a CNC machine e Defining an Object s Properties Click on an object to set its properties e g the type of parts a machine can handle e Graphic Production Tracking Uses Graphic objects to simulate CIM operation on screen 2 1 OpenCIM System Overview e OpenCIM is more comprehensive than other limited function CIMs It can use a variety of equipment including e A variety of robots e Processing machines e Quality control devices machine vision laser scan meter height gauge CMM caliper e Automated storage and retrieval systems ASRS e Peripheral devices barcode scanner X Y table electric screwdriver laser engraver etc e Custom devices by allowing you to easily set up your own device interfaces e OpenCIM offers Graphic production tracking allowing you to observe each production operation on a central display e OpenCIM provides an open environment for advanced users who want to e Add their own devices e Design their own products e Interface their own software e g MRP and cost analysis e Analyze CIM production data e OpenCIM is a robust system that enables recovery from errors without the need to reset the entire CIM cell OpenFMS OpenCIM Additional Software Packages OpenFMS is designed for use with flexible manufacturing systems OpenFMS include
311. t Table from the General category and edit its features 2 Point and click on a spot near the first conveyor station to place the first table Repeat this step for tables at all the stations around the conveyor 3 Click and drag on the cursor to adjust the location of the table in the scene The coordinates that appear on the table and any other object that you manipulate mark the center point of the table relative to the cross at the center of the shop floor User Manual 7 7 OpenCIM 0201 OpenCIM Setup Figure 7 5 Adding Tables Robots As indicated at the beginning of this chapter after the conveyor is created you should add the ASRS robots machines and other devices By default the system automatically assigns numbers to the robots and all other objects in the order of creation You should therefore place your first robot either the ASRS or an ASRS tending robot at Station 1 the second robot at Station 2 and so on Point and click on a spot at the first station to place the first robot Repeat this step for each station around the conveyor Double click on a robot to open its Configuration Parameters menu As you can see the Robot Configuration Parameters menu differs from the Table Configuration Parameters menu Each object in the Virtual CIM has a particular Configuration Parameters menu The following section describes all items that may appear in this menu Configuration Parameters Whenever you doub
312. tails about each hardware component CIM cells are composed of the following basic elements User Manual Conveyor Device that transports parts from station to station Production Work Locations around the cell where parts are processed and stored by Stations machines and robots Robots move parts between the conveyor and station machines CIM Manager The PC that contains the CIM Manager software which coordinates the functioning of all devices in the cell using a LAN Station Manager A PC that controls the different devices at a station and has a communication link with the CIM Manager Device control is performed by OpenCIM device drivers that run on this PC A device driver controls the operation of a device at the station in response to commands from the CIM Manager and other CIM elements 2 4 OpenCIM System Overview 0201 Other Software Tools OpenCIM Modules Virtual CIM Setup CIM Manager with integrated Part Definition Machine Definition Storage Definition MRP Scheduler Gantt Reporter Graphic Tracking modules Third Party Software Other production related software that interfaces to OpenCIM such as Production Scheduling Manufacturing Resource Planning MRP and MRP ID Order Entry Systems Data Base Management Systems Xbase etc Typically a separate PC is dedicated to running or controlling each of the above elements While two or more functions can be combined on a PC the following discussion assumes
313. taining data files used by the OpenCIM system DBF is a file in dBASE format Internal configuration parameters used by the Order Entry module A Plan commands generated by last order submitted The REF BAT batch file uses this data file to restore STORAGE DBF Report format specifications Internal information used by the CIM Manager to display active production operations in Leaf View List of machines as defined in the Machine Definition Records that appear in the Order table Records that appear on the Part Definition screen Records that appear in the Part Process table 10 7 OpenCIM Inside OpenCIM File Type PROCESS DBF REPORT DBEF SCHEDULER BDF STORAGE DBF TEMPLET DBF ANALYSIS RPT APLAN RPT ASRS RPT LOCATION RPT MACHINE RPT ORDER RPT PART RPT PROCESS RPT STORAGE RPT SUBPART RPT MACH_MAC CDX P_DEF_AP CDX PROC_AP CDX PDEF_PAR CDX PROC_PAR CDX P_DEF_OR CDX MACH4TAG CDX P_PRC_AP CDX ORDER_AP CDX PART4TAG CDX PARTD_AS CDX CIMCELL LOG CIMCELL SETUP MAP INI SETUP CIM DEVICE DMC OPENCIM INI FDR1 INI RACK1 INI CONPALET INI User Manual 0201 Description Records that appear in the Machine Process table in the Machine Definition module Records that appear in the Report table Information used by the sch
314. td 5 3 A oes ctaceuclcads seu cca A a a Be cus saan ancge nee 5 8 Part Definition For iii sects aaacaseadesdacsisusiad ea decdaataivatactedeeds 5 9 A O RA 5 10 SOFAS A acavanandeutyean sgeabecnaeeeghoeunres 5 17 Storage Manager Form ci 5 17 Storage Data Table sisicsssccstissassuceassvateasyavadtaivnnaecesnaceavasdeveaeadeotaavesndceedeseaveanasagen cavers 5 18 A A a a e 5 22 About MRP o rer e tap tabedute sens pean onde ar sGeaay aE A putea E EEE EEEE 5 22 SA E R R E Ra 5 22 Customer Order Porn ati idad 5 23 Manttacturnme Order Form deol ast a lee ie adel 5 25 Purchase Order PO iaa 5 29 User Manual ii OpenCIM 0201 Table of Contents REPOS do a 5 32 Part Definition Reporta a n E NE T 5 33 a a R nT a E E E E 5 34 Manufacturing Order Repo ERAS aces 5 35 Machine RU cei ca oes E A cau tedau ace sntasuctitta E E A 5 36 PROCESS REPO Lina aaa 5 37 ASRS REPO A da 5 38 Analysis Report a 5 39 Location Status REPO s a NTE N E EE E aS 5 40 A zPlan Report msiciiion ia iii ia 5 41 Purchase PEE IRE DOIN cash idad 5 42 User Detined REPO diana aan eins 5 42 6 Operating the CIM CIM Main aS usar 6 2 Modes o Opera la NS 6 2 CIM Manager Control Bar w ccccss cecatetsasaccessaccssteanevsceestaceuensecvaatedassnedessncesvastessacesens 5 3 PO LIS WS sree aaa AA AA AAA E 6 5 CIM Se He UR 5 56 soe de sea cae cel e i ee et est eee fe set das ea ded nese See cle he aaa 6 14 MENU ODUONS 2h eect Be ee OS 6 15 How to Create a Planned Production Schedule oo
315. ted in the path C OP a space The SETUP CIM file for the CIMLAB4 Virtual CIM is shown below 5 51 52 53 54 0 0P E PLANE 0 1 2 CNV1 CNV1 a a Us 1 1 2 2 2 3 3 4 OOMsUvyNnNPR PP BP PB PB SP ss ENC ROBOT2 R P ROBOT3 R ROBOT4 R Aww A el ERXY XYJIG J RNDAS RNDAS1 A READER RDR1 Y MILL_S MILL1 M2AS LATH FFR2 B LATHE1 M M2AS FEEDE RACK RACK1 K 9 RACK RACK2 K 2 TRASH TRASH1 X JIG JIGI J 1 0 VISION VSN1 V SCREWD SDRV1 D ER5P ROBOT1 R ER9 ROBOT2 R 1 ER5P ROBOT3 R ER7 ROBOT4 R 1 SPARE CONPA SPARE CONPA M100 M2AS BFFR1 B2000 2000 FFR4 B2 0001 B S M2AS BFFR3 B 20001 B ER FDR1 F 1 201 0 20 1 P ROBOT1 R100 0 0 000 0 10000 0 0 0 0 c 4 0 0 0 1 RO 54 o 1 0 1 1 T 0100 T LOL BOL 102 0 0 1 LO Ad 001 0001 E OSO ed 0000 0000 0000 0000 LET O 16 1 LET O 16 1 0 0 0 0 M32 sys_name sS ROBOT1 0 ROBOT2 0 ROBOT3 0 ROBOT4 0 0 BOT4 0 0 ROBOT1 0 0 ROBOT1 0 0 RO RO RO RO ROBOT2 0 0 BOT2 0 0 BOT2 0 0 ROBOT3 0 BOT3 0 0 BOT4 0 0 ROBOT4 ROBOT4 0 ROBOT4 0 ROBOT4 0 ROBOT4 0 0 XYJIG 0 0 0 0 0 0 XYJIG 0 0 10 14 ETUP The fields in this file are separated by User Manual 0201 OpenCIM Inside OpenCIM Fid Field Name 1 Device Object Location ID Do not skip numbers make all IDs sequential 2 Station Number 3 Physical Name for graphic d
316. the number of ACL programs required to move parts between two locations at a station Each location has a GET and PUT program associated with it The GET program picks up a part from the location The PUT program places a part at this location All GET and PUT programs for a robot are designed to work together to transfer a part from any location to any other location A device having several electrical inputs and outputs A PLC switches its outputs on and off in response to the state of its inputs and the programming of its embedded computer In the OpenCIM system a PLC is used to control the conveyor See Position The path a robot follows is made up of a set of predefined points Each point along this path is called a robot position The coordinates of each point are taught by using a teach pendant or by running a special ACL program while leading the robot by the nose and recording each stopping point along the path A production activity e g lathing milling assembly QC check etc performed by a machine on a part A part which results from the processing of a raw material Something that is manufactured by the CIM cell The CIM begins production in response to orders placed for products 12 5 OpenCIM Glossary Term PT Quality Control Rack Raw Material RS232 Robot Robot Vision Serial Port Slidebase Station Subpart Supplied Part Template Unload Working Envelope
317. the use of dedicated PCs Stations The OpenCIM cell is composed of a set of stations located around a conveyor as shown schematically in the figure below Machine Station Storage Fesembly ac Station Figure 2 2 Schematic Example of an OpenCIM Cell Each station is controlled by a Station Manager PC A CIM Manager PC coordinates the activities of all stations The number of stations may vary from cell to cell A typical educational OpenCIM cell ranges from up to eight stations arranged around one conveyor to as few as a single station consisting of a robot tending a machine The software can be adapted to more stations and conveyors User Manual 2 5 OpenCIM 0201 System Overview Production commands are sent from the CIM Manager computer to the device drivers via the Station Manager PC Status messages generated by devices are interpreted by the device driver and sent back to the CIM Manager Just as each industrial cell is an individual application of CIM technology every OpenCIM cell has its own configuration Generally the following stations are usually found ASRS Station Machine Station Assembly Station QC Station Automated Storage and Retrieval System An automatic warehouse which supplies raw materials to the OpenCIM cell stores parts in intermediate stages of production and holds finished products Station where materials are shaped formed or otherwise processed e g using a CNC machine or laser engrave
318. the Virtual CIM Setup For further information see Edit Menu New Object in Chapter 7 ASRS Definition Click EDIT in the leftmost column of the ASRS row to display the ASRS Storage Definition form CIM Storage Definition ASRS1 ID 211 ioj xi File Edit Template Definition HS Bro 1x1 lt 0 1 Ty 80x o geox OoOO TEMPLATE 010001 TEMPLATE 010005 Da TEMPLATE 010004 BOX TEMPLATE 010007 ar TEMPLATE 010002 TEMPLATE 010006 dy COVER TEMPLATE 020001 Ay BOX D COVER TEMPLATE 010003 TEMPLATE 020002 D COVER TEMPLATE 020003 Cel 17 Index 5 Shelf C Figure 5 6 ASRS Definition Form Use the following edit options to configure the ASRS User Manual 5 18 OpenCIM Preparing for Production CIM Utility Programs 0201 Edit Cell Edits the selected cell You can fill the cell with a defined part on a template or fill the cell with an empty template You also can edit a cell by double clicking on any cell to open the Cell Edit form Delete Part Deletes the part placed in the template leaving 1t empty Clear Cell Clears the contents of the current cell i e erases both template and part from this cell Template Opens the Templates form where you can define a new template type or Definition delete an existing one The standard Windows options copy paste undo redo etc are also available How to Modify the Contents of an ASRS Storage Cell Whenever you add or remove a part or
319. the backup of All Verify that all the backup files you copied can be found in the WSn Robotn directory The backup file extension is CBU e g POSITION CBU User Manual 9 62 OpenCIM 0201 OpenCIM Programming Optimizing the Scheduling in OpenCIM This section explains how the OpenCIM system determines which part to take out of the storage and when and which part will go to be processed in a specific machine and when A few criteria exist to determine the efficiency of any CIM system Such criteria are known as target functions of the different algorithms or of the system For example e Minimum delay in fulfilling orders delivery time e High utilization rate of the machines e Minimal cost of the manufacturing process At the end of this section we will see how the performance of the OpenCIM system can be altered so the system performance becomes optimal according to one of the three criteria listed above or a combination of them the Optimization Approach There are two types of scheduling methods In the first method the schedule is defined in advance and a detailed schedule is set for each machine In the second method a set of rules is defined according to which the system acts and during run time decisions are made according to this set of rules The Optimization Approach used by the OpenCIM implements this second method which enables the system to overcome failures imprecision and inaccurate assumptions
320. the locations in the CIM cell Index Indicates the exact location on a device which has more than one location for a part For example the conveyor CVN1 has three indices one for each station the robot identified as ROBOT2 has only one index the ASRS1 has an index for each of its cells Status Graphic illustration of the contents of the location as defined in the PART and TEMPLATE columns For example MILL1 has a part named BOX PART Status of the specified location either Empty or the Name of the part if it exists at the location TEMPLATE Status of the specified location either Empty or the ID of the template if it exists at the location Device ID Device ID number defined in the Virtual CIM Setup or assigned by the CIM Manager during production Program View The Program View is a copy of the A Plan or production work order You can track the current status of production by watching the Program View This screen shows the commands that the CIM Manager executes to produce an order These commands are executed in bottom up order Program View Ol x Part Action Subpart Parameters P1 TopBatch COVERED_B0x 1 MAKE COVERED_B0X 1 1 1 1 1 1 P 1 00 00 00 COVERED_BOX 1 1 PLACE TEMPLATE COVERED_BOX 1 1 RENAME BOX COVERED_B0x 1 1 NEXT COVERED_BOX 1 1 End_Assembly COVERED_BOX 1 1 COVERED_BOX 1 1 ASSY COVER 1 1 COVERED_BOX 1 1 BASE BOX COVERED_BOX 1 1 Assembly COVERED_BOX 1 1 COVERED_BOX 1 1 MILL2 BOX COVERED_BOX 1 1
321. the machine The device driver responds with status messages about the CNC machine to CIM elements which have registered for these messages The CNC Device Driver performs the following functions Device Driver Function By Using e Sends commands to a CNC machine the CNC Script Interpreter e Tests and debugs Command Interpreter programs the CNC Control Panel e Sends CNC status messages to other CIM elements the OpenCIM Network e Loads G code programs into a CNC machine anRS232 connection The CNC Device Driver controls machines connected in either of the following ways e A machine connected to an internal I O controller board in the Station Manager PC e A machine connected to an ACL controller User Manual 8 4 OpenCIM OpenCIM Device Drivers 0201 An internal I O board maps 16 CNC control lines to two output ports on the PC It also maps 16 CNC status lines to two input ports on the PC These I O port addresses are stored in the file CNCVD1 INL A CNC machine that receives commands via an RS232 interface can be connected to a serial port on an ACL controller You can write an ACL program to control the machine and activate this program by sending commands to the ACL device driver using the CNC script language Running the CNC Device Driver Loading the CNC Device Driver CNC device drivers are loaded automatically by the DD Loader DDLoader EXE This program loads all device drivers from command lines found in the Loading section
322. the operation of these pneumatically driven piston stops using input from pallet detection sensors located at the conveyor station The PLC keeps track of pallets which are empty and those which are carrying parts It sends the destination station of each pallet to the PLC default destination for each pallet is 99 allowing the pallet to continuously circle on the conveyor Magnetic code readers at each station enable the PLC to identify the pallet ID numbers Through a look up table the CIM Manager can instruct the PLC If Then the PLC stops the pallet if Pallet is empty A template containing a part is ready to be picked up at this station Pallet carries an empty A part with no template needs to be picked up at this station template Pallet carries a template This part needs to be delivered to this station with a part If the part carried by the pallet does not require processing at the station the pallet is allowed to continue on the conveyor Even though a pallet may be needed at a station the CIM Manager may direct the PLC to release it if the robot that handles templates at this station is busy Otherwise a bottleneck could occur on the conveyor since other pallets would not be able to pass until the robot becomes available The PLC would then stop the next appropriate pallet and try again User Manual 2 10 OpenCIM System Overview 0201 If the robot is free it is instructed to remove the template containing the part from
323. the production plan The CIM Manager program provides centralized control of on line production activities It sends commands to station devices and receives responses which enable it to track the flow of parts during production After the production plan has been prepared you can issue commands to start and stop production from the CIM Manager When you start production the CIM Manager begins sending commands over the LAN to Station Manager PCs in order to e Direct the flow of parts between stations on the conveyor e Gather at a station e g in a storage rack the parts that are needed in order to perform an assembly operation e Synchronize processes which can be performed concurrently and those which must be performed consecutively The CIM Manager runs a virtual machine that corresponds to each physical machine in the CIM This virtual machine keeps track of the status and parts queue at the physical machine The CIM Manager uses this information to decide when to send routing messages to bring parts to the machine User Manual 2 15 OpenCIM 0201 System Overview The Station Manager A Station Manager PC can be connected to a variety of robots and machines It runs a separate device driver in order to communicate with the controller for each device connected to this PC These device drivers run simultaneously in individual windows using the multitasking capabilities of MS Windows A PC running a set of OpenCIM device drivers is sa
324. ther device to prevent overloading the circuit The following CIM devices use I O connections e PLC to raise and lower piston stops e Magnetic sensors at conveyor stations used to send pallet IDs to the PLC e Processing machines to operate the machine and report its status e Devices attached to an ACL controller s I O ports e g an automatic screwdriver a pneumatic gripper for a robot etc Integration In the previous sections you were given an overview of the entire cell This section describes the integration of various systems and devices by considering the sequence of events when a part moves from station to station for processing When the user activates a production order the CIM Manager builds a production plan This plan includes the parts to be processed the stations where they are to be processed and the production activities they will undergo In the sample scenario presented below a cube moves from storage in the ASRS to a CNC station where it is machined into a box The table below provides a step by step description of the flow of information throughout the CIM associated with making a box Note that operations which are listed in the same grid take place concurrently Message Source Message Message Content Destination Command messages in normal typeface Status messages in italics ASRS Station CIM Manager gt PLC Stop the next empty pallet that arrives at the ASRS station PLC gt CIM Manager Empty
325. tion is true It then proceeds to execute the next command The WaitBit command monitors the port for the period of time specified in the argument time_to_wait in milliseconds This argument can be either an integer or a parameter variable V1 V16 P1 P16 The minimum time_to_wait is the value of the parameter CNCDriverTimer found in CNC INI If neither of the above conditions occurs during this interval the command times out The CNC Script Interpreter aborts program execution and generates the error message WM_CIMDDE_CNCERROR The CNC Device Driver relays this error message back to the CIM Manager Examples WaitBit PORT1 1000001 2000 This statement causes the CNC Script Interpreter to check port 1 for up to 2 seconds If status lines O and 7 in this port are high the condition is true and execution resumes with the next CLINT statement If this match does not occur within 2 seconds an error is generated WaitBit PORTO V3 P2 The variables PORTO and V3 contain the address of the input port and the bit mask respectively Variable V3 is assigned its value at initialization time from the file VC2_CNC INI The time out interval P2 is specified at run time when this program is invoked User Manual 9 45 OpenCIM 0201 OpenCIM Programming WaitBitZ WaitBitZz Suspends execution until the specified bit s are set to zero WaitBitZ portn mask time_to_wait
326. ts parameter string CNC Control Panel The string containing the list of parameters is specified in the Parameters window of the Control Panel The CNC Device Driver initializes the values of run time parameters read from the file CNC INI The values of run time parameter variables do not change after they have been passed into a CNC script program System Variables System variables BVO and BV1 are used to read the current value of their respective output ports during execution of a script program These variables are global to all CNC script programs for a device driver These system variables are assigned in the device driver s INI file in the section CNCDriverDefinitions These 8 bit values which range from 0 255 are assumed to be the initial state of the control lines of a CNC machine when the system is turned on The following table shows the CNC script system variables and their default values i e the values used if no assignment appears in CNC INI System Variable Description Default Value BVO The current status Port Value of output port 0 9 BV1 The current status Port Value of output port 1 0 Command Arguments and Syntax Numeric command arguments can take one of the following forms Integer 0 2147483647 Parameter Variable V1 V16 P1 P8 User Manual 9 30 OpenCIM 0201 OpenCIM Programming Spaces that appear in a command s argument list are ignored Case is not significant in the spelling of
327. ts from the feeder The CIM Manager automatically updates this field during production Exits and saves any changes 0 Exits without saving any changes User Manual 5 20 OpenCIM Preparing for Production CIM Utility Programs 0201 Rack Definition Click EDIT in the leftmost column of the RACK row to display the Rack Definition form CIM Rack Definition RACK1 1D 37 File Part Name Type Capacity Quantity JEMPTY y E 9 9 Figure 5 7 Rack Definition Form Part Name This list contains the names of all the parts that are associated with the specified type of feeder as defined in the Part Definition form Type The number that identifies a certain type of rack as defined in the Virtual CIM Setup Capacity The number of units of this type of part material which can be placed in the rack as defined in the Virtual CIM Setup Quantity The number of units currently loaded in the rack You must manually update the value of this field whenever you add parts to or remove parts from the rack The CIM Manager automatically updates this field during production Exits and saves any changes Exits without saving any changes User Manual 5 21 OpenCIM 0201 Preparing for Production CIM Utility Programs MRP About MRP Material Requirements Planning MRP enables manufacturers to calculate the material requirements from a list of items they intend to sell MRP provides a tool for floor control ma
328. ttern Purpose After performing an operation on a CNC machine it is frequently necessary to wait for a status line to signal that the operation was successfully performed Status lines from a CNC machine are connected to an I O board which maps each line to a bit in a PC input port By examining the value of these input port bits it is possible to determine information about a machine such as Status Line Example An operation is completed Bit 0 Drilling in progress 0 Hole drilled 1 An alarm condition has occurred Bit 1 Normal temperature 0 Machine overheated 1 The position of a component on a CNC machine Bit 2 Door open 0 Door closed 1 The WaitBit command allows you to read a set of status lines in order to monitor the Operation of a CNC machine Function The WaitBit command monitors an input port portn It compares the value of this port with the bit mask argument mask This command waits for the specified interval for one of the following conditions to be true e An exact match occurs between all 8 bits of the input port and the bit mask User Manual 9 44 OpenCIM 0201 OpenCIM Programming e A bit equal to 1 in mask matches up with the corresponding bit equal to 1 in the output port For example bits 7 and 5 below meet this condition e 10100000 mask 11110000 lt BVn When one of these conditions is true the Command Interpreter prints in the Status window Condi
329. turing Order Report The Manufacturing Order Report displays all production orders for a particular date The report is generated from the information that was entered in the Manufacturing Order form The following is an example of a Manufacturing Order Report Date Part Name Total Number Initial Priority Final Storage of Ordered Parts Number Location to Produce if not ASRS Each of the column headings in the Order Report relates to a specific field in the Manufacturing Order form as follows Manufacturing Order Report Manufacturing Order Form Part Name The column Part There can be more than one part listed Total Number of Parts The column Total Qty Ordered Each Total Qty listed corresponds to a specific part ordered Initial Number to Produce The column Tnitial Qty Each Initial Qty listed corresponds to a specific part ordered Priority The column Priority The Priority level from 1 9 listed corresponds to a specific part ordered Final Storage Location if not Refers to the final storage location listed in the column Note ASRS for a specific part User Manual 5 35 OpenCIM 0201 Preparing for Production CIM Utility Programs Machine Report The Machine Report lists the names of all machines in the OpenCIM cell This report is generated from the information that was entered in the Machine Definition form Following is an example of a Machine Report Machine Name
330. ty of this order 1 9 A priority of 1 is most urgent 9 is least urgent The CIM manager program uses this priority value to determine the sequence in which to produce orders Different parts may have the same priority Due Date The shipping deadline for the part MRP will generate a Manufacturing Order and Purchase Order that will ensure completion of the part by the end of the day preceding the deadline Ge Note In a commercial CIM environment this deadline is normally expressed as a specific date and time In an educational CIM environment the Due Date is relative to the time an order is submitted A relative time allows the same order to be resubmitted day after day without the need to edit the date field How to Define a Customer When you define a Customer you are defining the name of the customer for whom a finished product or products will be made by the CIM cell O 1 Inthe Customer Order form click New Customer The Customer Data box o opens Procedure 2 In the Customer Data box fill in the Name of the customer and other Defining a New customer information e g address or phone number Click Save The box Customer closes and this customer s name is added to the Customer List 3 If you want to make any changes to specific customer information select the customer from the list click Edit Customer and make the desired changes User Manual 5 24 OpenCIM Preparing for Production CIM Utility Programs 0201
331. uctions provided with each device Refer to documentation and position teaching instruction supplied with your OpenCIM installation In addition refer to the User s Manual supplied with the robot controller The teaching of robot positions is performed from ATS You must home the robot before you teach positions 1 Enter the ACL command RUN HOMES 2 Wait until the robot has completed the homing twice All positions used in the OpenCIM belong to the vector CIM n The size of the vector can vary from station to station The standard size is n 500 To teach the robot the positions required for the application you must attach this vector to the teach pendant 3 Enter the ACL command ATTACH CIM 4 When you have finished recording the positions use the ATS Backup Manager to save the programs positions and parameters to disk Save each item as a separate file 5 Make the following selections and entries e Backup directory C opencim microcim wsi1 roboti1 for example Backup Restore ALL File name all Press Enter again Press F3 to SAVE to disk e Backup Restore PROGRAMS File name programs Press Enter again Press F3 to SAVE to disk e Backup Restore POSITIONS File name position Press Enter again Press F3 to SAVE to disk e Backup Restore PARAMETERS File name paramete Press Enter again Press F3 to SAVE to disk User Manual 4 9 OpenCIM 0201
332. unning 00000001 10000 500 door is opened 00000010 10000 500 door is closed 00000100 10000 500 open clamping device vl6 bv0 close vl6 bv0 Nes feedhold bv0 start LA Mas bv0 pinole out VEG bv0 gt pinole in vl6 9 32 eee ALARM 00100000 00000001 01000000 clamping device 10000000 00000001 for 0002 00000010 00000100 10000 500 10000 500 10000 500 machine is running 10000 500 Nos pinole is out gt 01000000 10000 500 pinole is in 10000000 10000 Figure 9 5 Sample CNC Programs in the file CNC_SCR DBF clamping device is opened 00001000 clamping device is closed waitbit port0 00010000 OpenCIM OpenCIM Programming CNC Script Error Messages The error messages listed below appear in the CNC Status window when the CNC Script Interpreter encounters an invalid statement User Manual 0201 expected OR expected End of program not found Invalid command name Program not found Invalid system variable Use BVO or BV1 Invalid bit mask Invalid port address Use PORTO or PORT1 parameter variable Unexpected number of arguments Unexpected string in argument Unrecognized bitwise operator 9 33 e A parenth
333. upplied as the Part Type the Part Process table is replaced by a form that allows you to define the supplied part Part Name A string which uniquely identifies this part i e two parts cannot have the same name The name should be easily recognizable to CIM users The string may contain the characters A Z 0 9 and underscore _ but no spaces Part ID A numeric value 1 999 which uniquely identifies this part i e two parts cannot have the same ID This Part ID can be used with devices that require a numeric part identifier For example the ACL controller uses the Part ID to activate the appropriate control program to handle this part Supplier The name of the supplier from whom the raw material supplied part is Name purchased Supplier The supplier s catalog number for the raw material supplied part Catalog Number Minimum The smallest quantity of this part which can be purchased from the supplier at Order a time Safety Stock The number of units of this material part required by the CIM cell to guarantee production without interruption Cost The cost of one unit of the raw material supplied part Supply time The amount of time it takes the supplier to deliver this material part to the days CIM cell Description A description of the part being defined that explains what it is and where it is to be used Template The Template type 01 99 whose pin arrangement can accommodate this Type part Prepari
334. ut the contents and destination of the pallets traveling on the conveyor The PLC device driver translates these messages into commands understood by the PLC User Manual 2 21 OpenCIM 0201 System Overview When the PLC detects a pallet arriving or leaving a station it sends a status message to the PLC device driver on a station PC This device driver in turn translates the message into a standard OpenCIM format It then broadcasts the message to the CIM Manager the Graphic Tracking module and any user applications which have registered for this type of message The control panel of the PLC device driver lists the destination of each pallet and can show which pallet is at each station It also lets you interactively issue commands to stop a pallet at a station The PLC is normally connected to one of the Station Manager PCs using an RS232 connection This PC communicates with the CIM Manager PC using the LAN OpenCIM can accommodate any type of PLC If a PLC cannot support the pallet look up table in its memory this information is stored on the PLC Manager PC However better performance results when the look up table is stored in the PLC This arrangement eliminates the serial communication overhead associated with performing frequent look ups every time a pallet passes a station Quality Control Device Drivers OpenCIM uses a set of device drivers to communicate with different types of quality control devices such as e Vision System
335. verTimer found in CNCVDn INI If neither of the above conditions occurs during this interval the command times out The CNC Script Interpreter aborts program execution and generates the error message WM_CIMDDE_CNCERROR The CNC Device Driver relays this error message back to the CIM Manager User Manual 9 46 OpenCIM 0201 OpenCIM Programming Examples WaitBitZ PORT1 10000001 2000 This statement causes the CNC Script Interpreter to check port 1 for up to 2 seconds If status lines O and 7 in this port are low the condition is true and execution resumes with the next CLINT statement If this match does not occur within 2 seconds an error is generated WaitBitZ PORTO V3 P2 The variables PORTO and V3 contain the address of the input port and the bit mask respectively Variable V3 is assigned its value at initialization time from the file CNC VDn INI The time out interval P2 is specified at run time when this program is invoked User Manual 9 47 OpenCIM 0201 OpenCIM Programming WaitFile METIO Suspends execution until the specified file is created Name WaitFile String time_to_wait Inputs String e Any valid MS DOS file name e Any valid MS DOS file name time_to_ walt e Number of milliseconds to e CNCDriverTimer suspend program execution 2147483647 Vl V16 Pl P16 Purpose The command is generally used to get a status message in order to continue execution of the pro
336. witches highlight the specific switch used to invoke that mode Real Mode Real Mode Connected OK Cannot Open Com n Simulation Mode Manual Mode Standalone Mode ACL Commands Normal operating mode The device driver relays command messages to the ACL controller from the CIM Manager CNC machines etc In turn it broadcasts status messages from the controller to the OpenCIM network Activation ACLDriver EXE ACLVD3 INI 31 COM 1 The ACL device driver shows that it has received the first message from the ACL controller on the serial port The ACL device driver could not open its serial port on the Station Manager PC The ACL device driver receives commands as usual but emulates a robot and a barcode reader by generating status messages automatically In this mode the device driver does not actually communicate with the ACL controller only with the CIM Manager and other devices that send it commands Activation ACLDriver EXE ACLVD3 INI 31 COM 1 SIMULATION The ACL device driver receives commands as usual but only generates status messages when you double click on a line in the Task History box In this mode the device driver does not actually communicate with the ACL controller only with the CIM Manager and other devices that send it commands Activation ACLDriver EXE ACLVD3 INI 31 COM 0 The Standalone mode enables you to input manager specific comman
337. y pallet at station 1 Empty pallet has arrived at Station I Deliver Stop loaded pallet at station 2 Loaded pallet has arrived at Station 2 Free Allow empty pallet to leave station 2 The PLC Control Panel Description The CIM Manager sends a command to the PLC to stop the next empty pallet that arrives at the specified station The PLC responds with a status message when an empty pallet has arrived After the ASRS robot loads a part template on the pallet the CIM Manager sends a command to the PLC specifying that the PLC should stop this pallet at station 2 The PLC releases the pallet from the ASRS station 1 The PLC sends a status message to the CIM Manager when the pallet arrives at the station After a robot removes the template from the pallet the CIM Manager sends a command to the PLC to release this empty pallet This empty pallet is now tagged as available i e destination 99 It circulates on the conveyor until the CIM Manager sends a request to the PLC for an empty pallet return to step 1 The PLC Control Panel is a feature of the PLC device driver It allows you to perform the following functions User Manual 0201 Monitor the location and destination of every pallet on the conveyor Test the PLC and conveyor by manually issuing command messages to the PLC Simulate the movement of pallets on the conveyor Determine the control mode the device driver is running in 8 31 OpenCIM Ope
338. you activate the external Graphic Display see step 13 otherwise the CIM will run slowly 11 Click the Default or Reset Storage icon 12 Click the Graphic Display icon from CIM 1 Window Group The CIM Simulation screen will appear You will see the CIM cell you created by means of the Virtual CIM Setup in three different 3D views 13 Return to the CIM Manager screen e Click the green button to execute i e load the Manufacturing Order e Click the green Run button to activate 1 e run the production cycle e You also can see your CIM cell in operation by means of the Graphic Display User Manual 7 23 OpenCIM 0201 OpenCIM Setup 8 OpenCIM Device Drivers ES This chapter is not applicable to OpenCIM Offline and OpenCIM Intro Note Overview of Device Drivers Device drivers are the link between the CIM Manager and the devices in the CIM cell The device drivers are used to perform the following functions e Relay command and status messages during production between a device and the OpenCIM network e Simulate a device e Testa device OpenCIM device drivers can run on both Station Manager PCs and the CIM Manager PC depending on the configuration of the CIM system Device Driver Devices Controlled CNC A single CNC machine ACL Devices connected to and controlled by an ACL controller e g robot automatic screwdriver barcode reader Quality Control ROBOTVISIONpro Laser Scan Meter ViewFlex ULS Las
339. you include a quality control process in a Part Definition you must make provisions for how to handle the rejected part if it fails the quality control test by defining a special part quality control exception handler While a rejected part is being processed the CIM Manager begins producing a replacement part CIM PART DEFINITION C OpenCIM32 DEMO WSO File Edit Help 040439 nos ap al Product Parts Supplied Parts Phantom Parts GOVERED_BOX details Template Type Rack Feeder for A H Figure 5 4 Including a Quality Control Check in a Part Definition Table Entry Explanation PROCESS VIEWFLEX Quality Control Test SUBPART REJECTED Quality Control Test Failed exception handler PROCESS SCREWING Quality Control Test Passed continue from here The following procedure details the steps involved in handling rejected parts 1 2 Procedure Setting Up the QC Exception Handler User Manual In the Process column of the Part Process table in the Part Definition form enter a quality control test i e a process whose Action Type is defined as QC in the Machine Definition form for example Viewflex In the next row of the table in the Process column enter ONFAIL In the Subpart column of this row enter a unique name for the part e g Rejected and make sure it has been defined as a Phantom part Click Save when you are finished For all subsequent rows in the Part

Download Pdf Manuals

image

Related Search

Related Contents

GE CRx25P Brochure  

Copyright © All rights reserved.
Failed to retrieve file