Home in evidenza BIM e progettazione. Guida pratica alla lettura di un file IFC

BIM e progettazione. Guida pratica alla lettura di un file IFC

In questo articolo andremo a descrivere il file IFC attraverso un esempio in PRO_SAP per meglio comprendere come questo sia composto e quali dati contenga

45
file ifc BIM

Il formato IFC è il principale formato di interscambio del metodo Open BIM. In quanto tale è un formato aperto e non proprietario, ovvero accessibile a software di differenti case produttrici. E’ disponibile anche nel software di calcolo strutturale PRO_SAP ed è sempre più utilizzato dai professionisti nella pratica quotidiana per lo scambio di informazioni tra le varie figure che collaborano alla realizzazione dei progetti.

In questo videocorso vengono illustrati i flussi di lavoro BIM tramite una applicazione PRO_SAP. Viene inoltre dettagliata la struttura dello SCHEMA IFC, che è gerarchica, ovvero è organizzato in superclassi e sottoclassi che ereditano le proprietà delle entità superiori, allo scopo di fornire al progettista anche strumenti per capire i contenuti dei file di interscambio.

>> Vorresti rimanere aggiornato sulle ultime soluzioni progettuali? Clicca qui e iscriviti alle newsletter di Ediltecnico

L’ente che si occupa di definire e aggiornare gli standard IFC è Building Smart International (BSI), il cui capitolo italiano IBIMI si occupa della promozione del BIM tra tutti gli attori del settore delle costruzioni collaborando direttamente con essi per una definizione più chiara e pratica della metodologia OpenBIM nel panorama italiano. 2S.I. è socio collettivo di IBIMI e in quanto tale partecipa attivamente al gruppo di lavoro strutture.

Non perderti: Strutture esistenti: cosa fare se le verifiche per carichi statici non sono soddisfatte?

Un esempio pratico

All’interno dello schema IFC esistono diverse tipologie di rappresentazione degli elementi e in questo articolo vogliamo indagare quali sono e come queste influiscono nell’importazione in ambiente FEM. Alcune di queste rappresentazioni infatti sono di difficile se non impossibile importazione rendendo necessario l’utilizzo di semplificazioni.

Vediamo l’esempio pratico di una colonna dorica può essere rappresentata in diversi modi all’interno del modello informativo:

  1. attraverso la rappresentazione BREP che consente di rappresentare nel dettaglio i capitelli;
  2. attraverso la rappresentazione SWEPTSOLID che considera un elemento ad asse rettilineo e sezione circolare costante;
  3. attraverso la rappresentazione ADVANCEDSWEPTSOLID che considera un elemento ad asse rettilineo e sezione circolare variabile.

Risulta evidente che la prima è molto dettagliata, ma non è adeguata ad una modellazione ad elementi finiti perché tale livello di dettaglio risulta inutile ai fini del calcolo; sarebbe possibile importare il volume solido ed effettuare una meshatura di elementi solidi, ma si appesantirebbe il modello.

La seconda rappresentazione invece consente una conversione automatica in un elemento Beam ad asse rettilineo e sezione costante. Sarebbe quindi opportuno tenere sempre a mente, quando si va a esportare un modello tridimensionale in un file BIM (.IFC), per quale tipologia di software questo debba essere esportato e quale risultato si voglia ottenere.

La gestione dei file IFC in PRO_SAP

Il software di calcolo strutturale PRO_SAP è in grado di importare ed esportare file BIM (.IFC) e la tecnologia è in continua evoluzione, anche grazie ai suggerimenti dei clienti. Il comando “Aiuto per BIM” consente di correggere in automatico la geometria importata per consentire agli elementi finiti di essere collegati automaticamente in corrispondenza dei nodi.

Allo stato attuale acquisisce elementi IFC secondo le istruzioni “buildingSMART International Modeling Support Group – IFC 2x Edition 3 Model Implementation Guide”, nello specifico la lettura è stata predisposta per:

  1. IFCBUILDINGSTOREY costituiscono i piani di riferimento
  2. IFCWALLSTANDARDCASE vengono convertiti in muri (D3)
  3. IFCSLAB vengono convertiti in solai o gusci (D3)
  4. IFCCOLUMN vengono convertiti in pilastri (D2)
  5. IFCMEMBER vengono convertiti in elementi inclinati (D2)
  6. IFCBEAM vengono convertiti in travi (D2)
  7. Vengono convertiti in linee di costruzione i seguenti IFCBUILDINGELEMENT:
  • “IfcBuildingElementProxy”
  • “IfcRamp”
  • “IfcPile”
  • “IfcFooting”
  • “IfcPlate”

Cosa sono nello specifico questi elementi e come sono strutturati?

In questo articolo andremo a descrivere il file IFC attraverso un esempio in PRO_SAP per meglio comprendere come questo sia composto e quali dati contenga, con lo scopo di dare ai professionisti che ne fanno uso maggiore consapevolezza circa le operazioni che si vanno svolgendo.

Analizzeremo nello specifico le proprietà che caratterizzano l’entità IFCCOLUMN, come queste siano riportate all’interno del file IFC e come la scelta di alcune di esse possa influire sulla corretta importazione del file.

Per fare ciò ci serviremo della documentazione online fornita da Building Smart International (BSI), l’ente che si occupa di definire e aggiornare gli standard IFC, e di un file IFC rappresentante un telaio in c.a. generato con PRO_SAP che può essere letto con un programma di editing di testi come Blocco Note.

Le proprietà principali

Innanzitutto bisogna sapere che il file IFC è strutturato secondo uno schema ben preciso basato sulla specializzazione delle classi. Questo significa che ogni elemento ha origine da una classe generica dotata di certe proprietà, che si divide successivamente in sottoclassi specifiche dotate di ulteriori proprietà.

 

Ad esempio la classe IfcColumn è una specializzazione della classe IfcBuildingElement, che è una specializzazione della classe IfcElement, che è una specializzazione della classe IfcProduct, che è una specializzazione della classe IfcObject, che è una specializzazione della classe IfcObjectDefinition che a sua volta è una specializzazione della classe IfcRoot.

Andiamo dunque a vedere tramite la documentazione ufficiale di BSI quali sono le proprietà dell’entità IFCCOLUMN e da quale superclasse queste sono ereditate. La lista si trova in fondo alla pagina relativa alla specifica entità:

Quelle che ci interessano e che possiamo indagare direttamente andando a leggere il file IFC sono quelle definite sotto la scritta “ENTITY + nome della superclasse”.

La descrizione della IfcColumn, così come di tutti gli elementi, parte da una classe di base astratta chiamata IfcRoot nella quale sono definite le proprietà GlobalID, OwnerHistory, Name e Description ovvero le proprietà identificative di cui è dotato ogni elemento della struttura, a prescindere dalla sua tipologia.

Successivamente dalla entity IfcObject eredita la sola proprietà ObjectType, dalla entity IfcProduct eredità le proprietà ObjectPlacement e Representation, e così via. Affianco a ciascuna di essere sulla destra troviamo la tipologia di proprietà, ovvero a quale tipologia di Entity questa appartenga, e altre informazioni come il loro numero ( SET OF / SET [0:n] ) o se questa proprietà sia opzionale o meno.

Le proprietà riportate sotto la voce INVERSE sono invece le proprietà inverse attraverso le quali è possibile ricondursi ad altre entità che collegano tra di loro i vali elementi del file, come la proprietà HasAssociations che tramite l’entità IfcRelAssociatesMaterial (specializzazione della classe IfcRelAssociates leggibile nello schema soprariportato) associa l’entità IfcColumn all’entità IfcMaterial.

Tramite Blocco Note apriamo quindi il file e andiamo in cerca proprio dell’entità IFCCOLUMN. La riga che troveremo e le successive strettamente connesse ad essa sono riportate nella seguente immagine:

Notiamo subito come ogni riga corrisponde ad una entità preceduta da un numero identificativo (#29) e dalle proprietà dell’entità (racchiuse tra parentesi) che corrispondono esattamente alle proprietà che andremo a studiare tramite la documentazione ufficiale di BSI.

Le proprietà dell’entità IFCCOLUMN indagata sono le seguenti:

  1. ‘3SVAoPaHfFm5TfJw2QpyKE’ ( GlobalID ): una stringa alfanumerica che identifica in modo inequivocabile l’elemento specifico.
  2. #15 ( OwnerHistory ): richiama il numero identificativo della entità IfcOwnerHistory che la rappresenta. Non ci dilungheremo sulla funziona di questa proprietà ma è possibile leggerne le varie caratteristiche sempre all’interno della documentazione proposta.
  3. ‘ele D2 1’ ( Name ): Nome dell’elemento fornito dal software rappresentata da una entità IfcLabel, ovvero stringa alfanumerica con il solo scopo di essere compresa dall’utente ma di nessuna importanza per la computazione meccanica del modello.
  4. ‘setDescription’ ( Description ): Descrizione dell’elemento rappresentata da una entità IfcText, ovvero una stringa alfabetica con il solo scopo di essere compresa dall’utente ma di nessuna importanza per la computazione meccanica del modello.
  5. ‘setObjectType’ ( ObjectType ): Tipologia dell’elemento rappresentata da una entità IfcLabel;
  6. #34 ( ObjectPlacement ): Entità di tipo IfcObjectPlacement che descrive la posizione dell’elemento, che deve a sua volta essere analizzata nella medesima modalità che stiamo adottando in questo momento.
  7. #35 ( Representation ): Entità di tipo IfcProductRepresentation che descrive la rappresentazione geometrica dell’elemento e che dettaglieremo più avanti.
  8.  $ ( PredefinedType ): Tipo predefinito dell’elemento rappresentato de una entità IfcColumnTypeEnum. Le tipologie predefinite sono le seguenti:

Il simbolo $ rappresenta il campo vuoto quindi nel caso d’esempio ci si pone nella tipologia NOTDEFINED.

Un esempio di proprietà inversa che possiamo notare dallo screen soprariportato invece è presente alla riga #41=IFCRELASSOCIATESMATERIAL che collega le entità #29=IFCCOLUMN (la quale come abbiamo visto non possiede una proprietà diretta che ne descrive il materiale) e l’entità #42=IFCMATERIAL dotata come una proprietà di una stringa alfanumerica che ne descrive il nome.

Gli altri elementi precedentemente riportati come gli IFCBEAM, IFCWALLSTANDARDCASE, IFCSLAB sono strutturati in maniera analoga e condividono con l’IFCCOLUMN le principali caratteristiche, pertanto non verranno trattati nello specifico all’interno di questo articolo.

La rappresentazione geometrica degli elementi

Nell’esempio della colonna dorica abbiamo visto come le informazioni relative alla rappresentazione possano rendere più agevole l’importazione. Vediamo in dettaglio ora che le informazioni relative alla rappresentazione geometrica degli elementi siano contenute all’interno della proprietà Representation rappresentata dall’entità IfcProductRepresentation che si vuole ora approfondire seguendo il medesimo approccio utilizzato in precedenza, partendo quindi dalla lista delle sue proprietà:

L’ultima proprietà Representations corrisponde alla riga #36=IFCSHAPEREPRESENTATION che è un sottotipo della classe IfcRepresentation e le sue proprietà principali sono:

Le proprietà principali tra queste sono la RepresentationIdentifier, che determina se l’elemento è un corpo tridimensionale (Body) piuttosto che un asse (Axis) o un superifice (Surface), e la RepresentationType che va a indicare secondo quale modalità viene descritta la geometria dell’elemento.

Le principali RepresentationType per gli elementi solidi (Body) sono le seguenti:

  • SweptSolid: estrusione di un profilo lungo una direttrice rettilinea o curva, quindi lungo l’asse dell’elemento, utilizzata per rappresentare elementi con sezione costante;
  • AdvancedSweptSolid: estrusione di un profilo lungo una direttrice rettilinea o curva, quindi lungo l’asse dell’elemento, utilizzata per rappresentare elementi con sezione variabile;
  • Brep: insieme di superfici, comunemente dette facce, che assemblate racchiudono il volume dell’elemento. Comunemente utilizzata per la rappresentazione di elementi con forme complesse che non possono essere rappresentati tramite semplice estrusione.

Altre RepresentationType che è possibile incontrare sono le seguenti, le quali fanno a loro volta riferimento alle RepresentationType precedentemente descritte combinate tra di loro;

  • CSG: Operazioni booleane tra solidi e piani;
  • clipping: Sottrazione booleana tra solidi e piani, comunemente utilizzata per rappresentare elementi tagliati;
  • MappedRepresentation: Mappa di elementi predefiniti (non definiti all’interno della singola entità) che vengono riutilizzati più volte nella rappresentazione di vari elementi.

Nel caso della nostra colonna la RepresentationType è di tipo SweptSolid che chiama quindi l’entità #37=IFCEXTRUDEDAREASOLID.

Di cui ci interessa principalmente la proprietà SweptArea descritta dall’entità IfcProfileDef, superclasse della tipologia IfcRectangleProfileDef che troviamo nel nostro specifico caso, contente tutti i parametri utili per la costruzione della sezione estrusa.

Allo stato attuale PRO_SAP rappresenta gli elementi assiali con RepresentationType di tipo Brep tramite linee di costruzione dalle quali sarà poi possibile andare a creare manualmente gli elementi D2, quindi quando possibile e se permesso dal software di Export è preferibile scegliere sempre una rappresentazione di tipo SweptSolid per gli elementi che sono effettivamente riconducibili a sezioni estruse, come d’altronde succede effettivamente per la maggior parte degli elementi strutturali salvo casi eccezionali.

Per quanto riguarda gli elementi bidimensionali come IFCSLAB e IFCWALLSTANDARDCASE vale la medesima osservazione fatta in precedenza sulle rappresentazioni di tipo Brep, mentre quando la rappresentazione utilizzata è di tipo SweptSolid il software riconosce i nodi estremi dell’elemento per trasformarlo in una mesh di elementi D3 di dimensioni prossime ai 50 cm dotati di spessore pari alla lunghezza di estrusione per gli elementi SLAB e al lato corto della sezione rettangolare estrusa per gli elementi WALL.

Per gli elementi SLAB è possibile selezionare l’importazione come elementi solaio o mesh di elementi D3.

Una volta che PRO_SAP ha letto il file IFC e prima di effettuare l’importazione viene riportato il numero di elementi per ciascuna tipologia di entità, rendendo possibile selezionare quali di queste si vogliono importare e quale risultato si vuole ottenere a seconda della rappresentazione utilizzata. Questo consente all’utente un efficace controllo sull’acquisizione dei dati per il modello di calcolo.

Le versioni di PRO_SAP

Le funzionalità per il BIM sono disponibili gratuitamente in PRO_SAP, anche nelle versioni free. Le versioni free, utilizzabili anche per scopi professionali, consentono di utilizzare PRO_SAP nella sua completezza (compresi BIM, relazioni di calcolo e disegni esecutivi).

In particolare la versione e-TIME si può utilizzare liberamente il sabato, la domenica e dalle 20 alle 8 tutti gli altri giorni e comprende tutti i moduli di PRO_SAP.

Articolo dell’Ing. Antonio Limena, sviluppatore presso 2S.I.

Per ulteriori informazioni
2si.it

Consigliamo

Foto:iStock.com/Akacin Phonsawat


Condividi

Scrivi un commento

Please enter your comment!
Please enter your name here