In Part 1 of this series, we described a multi-arm robot or unmanned ground vehicle (UGV) and the use of Syndeia, the MBSE interoperability platform from Intercax, to transform text-based requirements from a Jama repository into a SysML model in Cameo Systems Modeler (No Magic). In Part 2, we created an alternate model-based representation in SysML of requirements governing arm motion and used Syndeia again to transform them into a native CAD file. In this part, we will repeat the “Requirements by Geometry” for the transport configuration of the UGV. We will also use graph database technology and pattern-matching query language to explore a section of the Digital Thread that we have built.
As part of the larger model use cases, the UGV must be deployed from and retrieved into a vehicle-mounted housing for transportation to the field of operations. During transport, the arms and other equipment must configure themselves to fit inside that housing. This represents a second set of geometric requirements, which are captured in a second SysML block diagram, shown in Figure 1.
Figure 1 Transport_Reqts block structure (Cameo)
This is quite similar to the Arm_Reqts diagram in Figure 1 in Part 2, except that the arm geometries represent the folded configuration to minimize volume within the transport housing, and the keepout zone has been replaced with a bounding box representing the inner dimensions of the transport housing.
Figure 2 NX CAD file for transport configuration
Figure 2 shows the CAD file generated by Syndeia from the SysML blocks. Shaded elements include the UGV body, the antenna, and two other cylinders representing the folded arms during transport. The wireframe box around them represents the internal dimensions of the transport housing.
Pattern-Matching Queries for the Digital Thread
As models become larger and more interconnected, it becomes increasingly difficult to identify and document the extended chains of connection, e.g. Jama to Cameo to NX, that characterize the Digital Thread. The emergence of powerful graph databases and pattern-matching query languages offers a practical solution. Syndeia uses these to provide fast real-time feedback on the progress of building the Digital Thread.
For our example, Syndeia has exported both the inter-model (Jama-Cameo and Cameo-NX) and the internal SysML relationships (Cameo) to a Neo4j Community Edition database. The resulting graph has 1304 nodes (model artifacts) and 2706 edges (relationships). Using theNeo4j browser interface, we can enter and execute queries using the Cypher pattern-matching query language, which returns answers within 1 ms for each of the examples below.
Figure 3 Neo4j Cypher query, Show all Jama requirements (connected to other elements by Syndeia)
Figure 3 shows the results of our first query, how many Jama requirements are part of our Digital Thread? There are seven at this stage. This does not include all the requirements in the Jama repository, only those that are connected across tool boundaries (in this case, to SysML elements in Cameo). The results can be displayed as tables and exported as text, as needed.
Figure 4 Neo4j Cypher query, Show all satisfied Jama requirements (connected to SysML <satisfy> relationships)
Figure 4 asks, how many Jama requirements are satisfied? In this case, the query is looking for a specific pattern, Jama requirement, connected to a SysML requirement, connected by a SysML <satisfy> dependency to a SysML block. There are four such Jama requirements (red circles) connected to seven total SysML blocks (green circles), which are also NX_Part_Features shown in earlier SysML block definition diagrams.
Figure 5 Neo4j Cypher query, Show all satisfied Jama requirements (connected to SysML <satisfy> relationships and NX parts)
Figure 5 asks finally, show all Jama requirements that are linked to NX files representing those requirements. There are four Jama requirements linked ultimately to two NX parts (blue circles). In each case, finding this relationship requires tracing a chain of four separate steps in a network with over 2700 links, but modern pattern-matching query engines are optimized for this type of search.
The “Requirements by Geometry” process described in this blog series is only part of the larger benefits from building and querying a Digital Web. It enhances communication and information exchange between team members, in this case, system engineer and mechanical designer. It allows project managers real-time visibility of the status of system development. As development proceeds, the mechanical engineers can invert the process and model-transform their 3D CAD models into SysML, making model attributes such as mass and size available to the system engineer for requirements verification.
Ongoing work at Intercax will extend Syndeia’s capabilities. In the upcoming release 3.3, we will see:
- New software tool interfaces
- New use cases supported for existing interfaces
- Tighter integration and more flexible interfaces for graph queries.
Watch our website to learn more.