320 likes | 697 Views
Framework for CAD/CAM/PDM Applications. the Synergy of STEP and Java TM Technology. Lothar Klein LKSoftWare GmbH http://www.lksoft.com. Java and all Java-based trademarks and logos are trademarks or registered trademarks of
E N D
Framework for CAD/CAM/PDM Applications the Synergy of STEP and JavaTM Technology Lothar Klein LKSoftWare GmbH http://www.lksoft.com Java and all Java-based trademarks and logos are trademarks or registered trademarks of Sun Microsystems, Inc. in the United States and other countries. JSDAI is a trademark of LKSoftWare GmbH
News from the Standardization ISO published ISO/TS 10303-27:2000 "Implementation methods: Java programming language binding to the standard data access interface with Internet/Intranet extensions"
Standard Data Access Interface(SDAI, ISO 10303-22) • SDAI defined an Abstract Application Programming Interface (API) for EXPRESS defined data • Programming Language bindings to • C++ ISO 10303-23 • C ISO 10303-24 • Fortran (canceled) ISO 10303-25 • IDL (on hold) ISO 10303-26 • complete Java (TS) ISO 10303-27 • lightweight Java (no activity) ISO 10303-29 • Abstract Test Methods for SDAI Implementations (WD) ISO 10303-35
STEP- SdaiEdit ... Book SQL Database e.g. ORACLE 3D- PDM 3D- Reusable Software ... Viewer Bean Component (Beans) SDAI (Part 22+27) Extensions JSDAI - JDBC Bridge RO Opr RW RO JSDAI-Server SdaiSession external dictionary part21-files application repo +map data data JSDAI- Applications JSDAI- Implementation
SDAI_session_schema jsdai.lang Core SDAI Structure SdaiSession (simplified) servers S[1:?] SdaiRepository SDAI_dictionary_schema jsdai.dictionary native_schema SchemaInstance associated_models S[0:?] SdaiModel ESchema_definition underlying_schema parent_schema (INV) instances owning_model late EEntity EEntity_definition binding ... EAttribute early ECartesian_point EProduct binding An application schema
Features of JSDAI • unlimited number of SdaiRepositories, SdaiModels and SchemaInstances • internet access to JSDAI-Server and JSDAI-SQL bridge • transaction level 2 (commit, abort, underlying locking) • JSDAI-Library based on EXPRESS short forms,includes almost all STEP & PLIB schemas (> 100) • late binding for flexible schema support,based on full featured dictionary (meta data) • early Binding for easy application programming • ARM-AIM-Mapping Data + Mapping Operations • Collaborative usage: SdaiEvent, -Source, -Listener • 100% pure JavaTM
Repo A Repo B SI BY, Schema Y SI AX, Schema X SI BX, Schema X Model A1, Model B1, Schema X Schema X Model A2, Model B1, Schema X Schema Y
Extended SDAI with Network support JSDAI-Server / JSDAI-SQL-Bridge JSDAI-Client Network connection known_servers S[1:*] Repository Repository Persistent storage Model Model Entity Instance Entity Instance
Requirements for STEP databases • STEP data can be more efficiently stored in specialized files • need to search for *some* kind of data; e.g. person, product, product_definition_formation (version), product_definition (sub-types) • no need to search for e.g. detailed geometry don't blow up database tables with instances of types such as cartesian_point • but *all* data must be integrated together • merge/extract tools needed from/to exchange structures(STEP-File part21, STEP-XML part28)
STEP DataBase an ongoing project at LKSoft • a fixed set of 21 SQL tables, suitable for any kind of EXPRESS defined data, including the cumbersome SELECTs, all kind of AGGREGATEs and "complex" instances • Access through JDBC (= Java SQL API) • support distributed populations over several databases/repositories • Based on a "late binding architecture" Fully compatible with - STEP-file (part21)- SDAI (part22)- STEP-XML (part28)
Late binding database architecture • all entity instances are in one tableattributes are stored in separate tables • all relations between entities are in one table:direct forward and inverse accessalso in the case of aggregates and selects • some minimal set of dictionary information:single and complex entities, defined types • explicit SDAI informationSdaiModel, SchemaInstance, Repository • preliminary specification in ISO TC184/SC4/WG11/N144 (too be published)
JSDAI-SQL-Bridge (under development) • a middle-tier to link JSDAI clients with STEP-database • accessing of all entity instances in one SdaiModel at a time • entity instances without query requirements (e.g. geometry) can be stored in binary large objects (blob) on SdaiModel basis • just Java JSDAI Client JSDAI-SQL Bridge Rational Database
Merging exchange structures into database • Data, coming from STEP-File (part21) must be merged with data which is already in the data base • merging data from different STEP schemas issupported through EXPRESS short forms • data must be structured so that it can be extracted again into exchange structures. This can be done by • some intelligent algorithm • relating the individual instance to intended exchange structures • grouping data according to SDAI in SdaiModelgrouping SdaiModels to SchemaInstances
SchemaInstance-I SchemaInstance-II Exchange I Exchange II Exchange structures (STEP-File, -XML) Product-X Version-1 Assignment Person-A Product-X Version-2 Assignment Person-A Extract Merge Database (integrated) 2 X 1 A Products Versions Assignments Persons
3D-Viewer Bean based on Java3DTM and IR42 (Geometry and topology)
Comparison of PCB data formats/models Functionality IPC- D350 GERBER, HP-GL, DXF ODB++, GenCAM EDIF STEP- AP210 Evolution
AP210 activities • Reference examplesap210_pcb1.stp, a single sided PCBap210_pcb2.stp, a double sided PCB (under work) • ConverterGERBER => CircuitCAM => AP210 • Development ToolSdaiEdit (AIM instances, ARM view) • Viewer (editing later)STEP-Book AP210 • GERBER-X export • visit http://www.ap210.com
AP210 - Reference examples ap210_pcb1.stp (800 instances) ap210_pcb2.stp (under work, ~ 1050 instances)
(GERBER=>) CircuitCAM => AP210 Converter • A kind of re-engineeringGERBER has much less information than AP210 requires • Restricted to single and double sided PCB • Requires very "good" GERBER/GERBER-X data- flashed pads- tracks drawn with one aperture- power planes as polygon (not filled) • Further data preparations needed in CircuitCAM • 90% of the work done, some connectivity information missing
STEP-Book AP210 • viewing AP210 data to end users • intended to support any detail of AP210 • 2D and 3D • PDM • assembly, connectivity, different kind of views, ... • work for local data and for data in remote databases • need more AP210 data for further testing • basis for a CAM station for manufacturing • export to GERBER • link to CircuitCAM
SdaiEdit • developer tool to view and edit STEP data on EXPRESS-level • full support of SDAI conceptsSdaiRepository, SdaiModel, SchemaInstance, Transaction • walking through STEP data on AIM level • walking through AIM-data on ARM level