Implementation of a SaaS based simulation platform using open standards and open source software...

Preview:

DESCRIPTION

Slideshow presented at the 12th Product Data Exchange NASA/ESA workshop - May, 18-21 2010, Oslo - Norway

Citation preview

1

Implementation of a SaaS based simulation platform using open standards and open source software.

12th NASA-ESA Workshop on Product Data ExchangeJotne, May,18th – May, 20th 2010, Oslo - Norway

Thomas Paviot (Supméca)*, Jelle Feringa (TU Delft)***tpaviot@gmail.com; **jelleferinga@gmail.com

12th NASA/ESA Workshop on Product Data Exchange 2May 2009, 19th

Agenda

The pythonOCC project: a python library for CAD/CAE development

CAD services A Service oriented architecture intended to

design and simulation exchanges Demo Questions

The diagnostic : poor end-user computing capabilities with CAD softwares

12th NASA/ESA Workshop on Product Data Exchange 3May 2009, 19th

CAD softwareEnd-user level(VB scripting,VB automation)

Modeling kernelDeveloperLevel (C++)

End-user computing?

What we did (2008->2009 - PDE2009)

12th NASA/ESA Workshop on Product Data Exchange 4May 2010, 19th

Developerlevel

pythonOCCA python library for CAD/CAE

Features: 2D/3D modeling Data Exchange

(STEP/IGES/STL) Basic GUI features

Features recently added (2009->2010)

12th NASA/ESA Workshop on Product Data Exchange 5May 2010, 19th

Meshing features (Quad, triangles, 2D and 3D)

Parametric modeling features

Current work Making pythonOCC being interoperable with other

components of the IT system: STEP file format is supported Strong, robust, well defined workflows to support the

exchange of STEP files Additional need for deeper integration and a more

dynamic solution Our current objective:

Use the webservices and SOA technologies to connect software components (high abstraction level, clear separation between the service and the implementation)

Rely on free and open source softwares : open source = open semantics Less licensing issues (data are exchanged but licenses are also

propagated through the system)

The process : add cadservices to pythonOCC, add public SOA layer to non-service oriented softwares

12th NASA/ESA Workshop on Product Data Exchange 6May 2010, 19th

CAD services

12th NASA/ESA Workshop on Product Data Exchange 7May 2010, 19th

What is a CAD service? A remote procedure call that holds CAD semantics

Granularity of CAD services? Low level Brep topology services: create_vertex,

create_edge, create_face etc. Mid-level design function services: make_extrusion,

make_revolution, make_pipe, boolean_fuse etc. High level templated CAD services: make_car(wheels=4,

automatic_gear_box=True etc.) Standardization of CAD Services?

OMG CAD Service, 2001 : not much granular – frozen project?

STEP AP203ed5 produral design and parametric representation could be mapped to webservices

Difficult to standardize any kind of service whereas needs can not be standardized in a general way.

Use case: the « cell table » (Vivid Gallery, Rotterdam)

12th NASA/ESA Workshop on Product Data Exchange 8May 2010, 19th

Use case: the « cell table » designed with pythonOCC

12th NASA/ESA Workshop on Product Data Exchange 9May 2010, 19th

The problem to solve : what is the rigidity of the table?

The SaaS design/simulation environment A set of business servers (SOAP servers) One controller to synchronize (clients)

12th NASA/ESA Workshop on Product Data Exchange – pythonOCC/STEP-PLCS framework 10May 2010, 19th

The implementation

12th NASA/ESA Workshop on Product Data Exchange – pythonOCC/STEP-PLCS framework 11May 2010, 19th

Demo (1/3): launching central component

11th NASA/ESA Workshop on Product Data Exchange – pythonOCC/STEP-PLCS framework 12April 2009, 29th

Demo (2/3): automated meshing with Salomé

11th NASA/ESA Workshop on Product Data Exchange – pythonOCC/STEP-PLCS framework 13April 2009, 29th

Demo (3/3): simulation with code-aster

11th NASA/ESA Workshop on Product Data Exchange – pythonOCC/STEP-PLCS framework 14April 2009, 29th

Conclusion

Benefits Dynamic programming Multi-platform Agile CAD/CAE development Use a wide range of other free and open source

libraries

12th NASA/ESA Workshop on Product Data Exchange – pythonOCC/STEP-PLCS framework 15May 2010, 19th

The use of open source software and open standards is suitable for the implementation of webservices dealing with CAD and simulation

Further information : http://www.pythonocc.org