Material/pl

Ta dokumentacja nie jest ukończona. Prosimy o pomoc w tworzeniu dokumentacji.

Strona Model polecenia GUI wyjaśnia jak powinny być dokumentowane polecenia. Przejrzyj stronę Category:UnfinishedDocu, aby zobaczyć więcej niekompletnych stron, takich jak ta. Zobacz stronę Category:Command Reference aby poznać wszystkie komendy.

Zobacz stronę wytycznych Wiki dla FreeCAD aby dowiedzieć się, jak edytować strony Wiki, i przejdź do strony Pomóż w rozwoju FreeCAD, aby dowiedzieć się o innych sposobach, w jakie możesz wnieść swój wkład.

Informacje ogólne

Ta strona dotyczy systemu danych materiałów w programie FreeCAD.

Obecnie jest edytowana, aby odzwierciedlić zmiany w systemie materiałów, który jest w trakcie opracowywania.

Streszczenie

W odróżnieniu od poprzednich wersji, materiały nie są już implementowane jako prosty słownik. Poprzedni system miał zaletę prostoty, ale wadą były ograniczone możliwości opisywania właściwości materiałów.

W nowym systemie, właściwości są definiowane oddzielnie jako seria plików YAML. Następnie właściwości są łączone w opis właściwości z wartościami określonymi dla wymaganych właściwości. Nowsze typy danych, takie jak tablice, oznaczają, że nie można już uzyskać do nich dostępu za pomocą prostych słowników. Zamiast tego, do uzyskania dostępu do właściwości materiału i wartości danych używane jest API. Pozwala to na większe możliwości niż było to możliwe wcześniej.

Przybory

Istnieje kilka dobrych zasobów, które ułatwiają obsługę materiałów:

Właściwości

W przeciwieństwie do poprzedniego standardu materiałów, właściwości materiałów są jasno zdefiniowane. Zostały one zaprojektowane tak, aby były szczegółowe i rozszerzalne. Właściwości mogą dziedziczyć wiele właściwości, dodając tylko te, które się różnią. Poprawi to wyszukiwanie i uprości wdrażanie.

Obecnie nie ma dedykowanego edytora właściwości. Można je edytować za pomocą dowolnego narzędzia YAML lub prostego edytora, takiego jak nano lub Notatnik.

Pliki definiujące właściwości są nazywane modelami.

Przykładowy plik YAML modelu właściwości

Model:
  Name: 'Linear Elastic'
  UUID: '7b561d1d-fb9b-44f6-9da9-56a4f74d7536'
  URL: 'https://en.wikipedia.org/wiki/Linear_elasticity'
  Description: >
    Materials that are linearly elastic obey Hooke's law i.e. the stress and
    strain relationship is linear
  DOI: "10.1016/j.ijplas.2004.06.004"
  Inherits:
    - Density:
      UUID: '454661e5-265b-4320-8e6f-fcf6223ac3af'
    - IsotropicLinearElastic:
      UUID: 'f6f9e48c-b116-4e82-ad7f-3659a9219c50'
  AngleOfFriction:
    Type: 'Quantity'
    Units: 'deg'
    URL: 'https://en.wikipedia.org/wiki/Friction#Angle_of_friction'
    Description: >
      Further information can be found at
      https://en.wikipedia.org/wiki/Mohr%E2%80%93Coulomb_theory
  CompressiveStrength:
    Type: 'Quantity'
    Units: 'kPa'
    URL: 'https://en.wikipedia.org/wiki/Compressive_strength'
    Description: "Compressive strength in [FreeCAD Pressure unit]"

Właściwości nie są zawarte w jednym dużym pliku definicji, ale są szczegółowe i zazwyczaj skupiają się na konkretnym zadaniu. Modele dzielą się na dwie podstawowe kategorie:

Każdy model ma unikalny identyfikator, czyli UUID, który służy do wewnętrznego odwoływania się do niego. Spójność tego UUID jest ważna, ponieważ zmiana go dla jednego dokumentu może mieć wpływ również na inne dokumenty. Zasadniczo dodawanie elementów do definicji nie wymaga zmiany identyfikatora, ponieważ mogą one nadal być używane w innych dokumentach, ale zmiana wartości wymagałaby nowego UUID.

Opcjonalny adres URL może zawierać link do szczegółowego opisu właściwości materiału. Biorąc pod uwagę, że jest to opis właściwości, a nie samego materiału, powinien on być w tym momencie dość ogólny. Krótszy opis, zazwyczaj jedno lub dwuwierszowy, może również zostać zawarty w opisie modelu.

Każdy materiał może również zawierać identyfikator DOI (Digital Object Identifier), który poprzez stronę https://www.doi.org/ odsyła do publikacji naukowej lub podobnego interesującego obiektu.

Dziedziczenie

Dziedziczenie to nowa funkcja. Istnieją dwa główne przypadki użycia.

Jednym z przykładów zastosowania jest możliwość modyfikowania modeli bez naruszania innych dokumentów. Na przykład w przypadkach, gdy typ właściwości jest inny, można zdefiniować pochodny model właściwości, który zmienia tylko tę konkretną właściwość bez naruszania istniejących dokumentów, które się do niej odwołują.

Drugim przykładem zastosowania jest grupowanie właściwości w sposób umożliwiający wyszukiwanie. Na przykład wszystkie obiekty fizyczne mają gęstość i w wielu przypadkach będzie to jedyna dostępna informacja na temat danego materiału. W przypadkach, w których dostępne są właściwości elastyczności liniowej, chcielibyśmy również je uwzględnić. W jeszcze innym przykładzie, gdzie elastyczność jest różna w różnych kierunkach, jak w przypadku drewna, możemy zdefiniować kolejny model, który jest pochodną gęstości. Informacje nie są powielane w trzech modelach właściwości. Dodatkowo możemy wyszukać materiały, które mają właściwość gęstości i zwrócić wszystkie trzy modele.

Powyższy przykład dziedziczy po dwóch innych definicjach właściwości. Odbywa się to poprzez określenie słowa kluczowego "Inherits", po którym następuje lista nazw modeli i identyfikatorów. Jeśli nie ma dziedziczenia, sekcja ta może zostać pominięta.

Właściwości

Właściwości definiuje się poprzez podanie nazwy właściwości, po której następuje seria deskryptorów. Deskryptor "Typ" jest zawsze wymagany. Pozostałe deskryptory są wymagane tylko wtedy, gdy są niezbędne do uzupełnienia informacji o typie. Adres URL i opis są opcjonalne, ale zaleca się ich podanie, jeśli to możliwe.

Opis właściwości
Nazwa Opis
Typ Rodzaj właściwości. Zobacz następną sekcję.
Kolumna Kolumny w tablicach 2D lub 3D. Zobacz opis poniżej.
Jednostki Jednostki powiązane z typem ilości.
URL Link do szczegółowego opisu właściwości.
Opis Krótki opis właściwości.

Typy właściwości

Typy właściwości
Typ Nazwa Opis
Ciąg znaków Ciąg znaków.
Liczba całkowita Liczba całkowita bez znaku.
Liczba zmiennoprzecinkowa Liczba zmiennoprzecinkowa.
Adres URL Adres URL, taki jak https://www.freecad.org.
Wielkość Wielkość we FreeCAD, która zawiera wartość w postaci liczby zmiennoprzecinkowej oraz jednostki odpowiednie dla właściwości.
Kolor Ciąg znaków w formie (r,g,b,a) lub (r,g,b), gdzie r=czerwony, g=zielony, b=niebieski, a=alfa jako wartości zmiennoprzecinkowe między 0 a 1.
Plik Ścieżka do pliku.
Lista plików Lista ścieżek plików. Zobacz opis poniżej.
Obraz Osadzony plik obrazu zapisany jako Base64. Może to skutkować bardzo dużym plikiem karty materiałowej.
Lista obrazów Lista osadzonych plików obrazów zapisanych jako Base64. Może to skutkować bardzo dużym plikiem karty materiałowej. Zobacz opis poniżej.
Lista Lista wartości ciągu znaków.
Wieloliniowy ciąg znaków Ciąg znaków zajmujący wiele linii.
Tablica 2D Dwuwymiarowa tablica. Zobacz opis poniżej.
Tablica 3D Trójwymiarowa tablica. Zobacz opis poniżej.

Listy

Istnieją trzy typy list: „List”, „FileList” i „ImageList”. W rzeczywistości, wszystkie trzy są takie same, z tą różnicą, że używają różnych edytorów. W przypadku „FileList” każdy wpis ma selektor pliku. Podobnie, „ImageList” otwiera edytor obrazów. „ImageList” różni się tym, że jest bardzo dużą reprezentacją obrazu w postaci łańcucha tekstowego i może generować wyjątkowo duże pliki kart materiałowych. Używaj ostrożnie.

Tablice 2D

Tablice mają pewne unikalne cechy w porównaniu z innymi typami właściwości. Każda kolumna tablicy musi być opisana, co oznacza konieczność dodania właściwości 'Columns'. Ta właściwość jest wtedy listą właściwości opisujących każdą kolumnę.

Tablice 2D mają minimum 2 kolumny i wspierają tylko typ właściwości 'Quantity'. W przyszłości można to rozbudować o inne typy właściwości.

Wartości w tablicy są określone poprzez podanie wartości z pierwszej kolumny.

TestArray2D3Column:
  Type: '2DArray'
  Columns:
    Temperature:
      Type: 'Quantity'
      Units: 'C'
      URL: ''
      Description: "Temperature"
    Density:
      Type: 'Quantity'
      Units: 'kg/m^3'
      URL: 'https://en.wikipedia.org/wiki/Density'
      Description: "Density in [FreeCAD Density unit]"
    InitialYieldStress:
      Type: 'Quantity'
      Units: 'kPa'
      URL: ''
      Description: >
        Saturation stress for Voce isotropic hardening [FreeCAD Pressure unit]
  URL: ''
  Description: >
    2 Dimensional array showing density and initial yield stress with temperature

Tablice 3D

Tablice 3D są podobne w implementacji do tablic 2D opisanych w poprzednich sekcjach. Występuje słowo kluczowe 'Columns', po którym znajduje się lista właściwości opisujących kolumny. Pierwsza kolumna opisuje głębokość, czyli trzeci wymiar tablicy, a pozostałe kolumny opisują kolejne kolumny. Można to traktować jako indeksowaną listę tablic dwuwymiarowych.

Ponieważ dwuwymiarowa tablica wymaga co najmniej 2 wymiarów, potrzeba minimum 3 kolumn.

Dostęp do wartości w tablicy uzyskuje się podając najpierw głębokość a następnie wartość z pierwszej kolumny tablicy 2D (druga kolumna tutaj).

TestArray3D:
  Type: '3DArray'
  Columns:
    Temperature:
      Type: 'Quantity'
      Units: 'C'
      URL: ''
      Description: "Temperature"
    Stress:
      Type: 'Quantity'
      Units: 'MPa'
      URL: ''
      Description: "Stress"
    Strain:
      Type: 'Quantity'
      Units: 'MPa'
      URL: ''
      Description: "Strain"
  URL: ''
  Description: >
    3 Dimensional array showing stress and strain as
    a function of temperature

Uwaga o tablicach

To są nowe rozwiązania, niedostępne dotychczas. W przyszłości może zostać dodanych wiele możliwości, które obecnie nie są zaimplementowane. Przykładowo, tablice z kolumnami ciągów znaków są potencjalnie przydatne, ale niezaimplementowane obecnie.

Interpolacja jest ważną funkcją, która obecnie nie jest zaimplementowana. Na przykład tablica z wartościami wierszy równymi 1 i 2 zwróci tylko dokładne dopasowania. Zatem wyszukiwanie wartości 1,5 spowoduje błąd. W przyszłości, tablice będą określały wartość przybliżoną poprzez interpolację dostępnych danych.

Baza danych materiałów

Biorąc pod uwagę, że powyższy standard jest zaimplementowany, bezsensowne byłoby przechowywanie wszystkich właściwości w obiektach wielokrotnie. Zasadniczo, można zbudować bazę danych materiałów z nazwą jako kluczem głównym. Dzięki temu, jeśli nie masz żadnych specjalnych wymagań dotyczących materiału, wystarczy zdefiniować np. Name=Steel, a FreeCAD pobierze wszystkie właściwości z tej bazy danych. Każda dodatkowa właściwość ustawiona w mapie zastępuje tę z bazy danych.

W przyszłości, możemy przechowywać taką bazę danych gdzieś w sieci i zbudować ogólną otwarto-źródłową bazę danych materiałów.

Aktualnie, myślę o bazie danych zbudowanej w mini zestawie danych zawierającym zestaw "podstawowych" materiałów i ich podstawowe właściwości oraz o pełnej wersji opartej na SQLite.

Material.py

Ponieważ obsługa właściwości materiałów jest żmudnym zadaniem, powinniśmy zaimplementować moduł front-end w Pythonie o nazwie Material.py [source]. Będzie to miejsce, w którym zostaną zaimplementowane wszelkiego rodzaju metody pomocnicze do obsługi materiałów.

Ten moduł powinien być zaimplementowany w taki sposób, aby mógł działać zarówno we FreeCAD, jak i samodzielnie z linii poleceń (mapa właściwości materiału musi być podana jako mapa Pythona).

Format pliku karty materiałowej FreeCAD

Praca z materiałami często wymaga importowania i eksportowania definicji materiałów. Dlatego potrzebny jest format pliku. Ponieważ mamy jedynie formę klucz/wartość, możemy użyć prostego, łatwego do odczytania i przetwarzania formatu pliku. W związku z tym, wybrano format ini-file. Jest on ustandaryzowany i istnieją już dostępne parsery. Przykładowo moduł Config parser w Pythonie.

Każda definicja materiału znajduje się w pliku z rozszerzeniem .FCMat. Niektóre z tych plików są częścią źródeł FreeCAD i są kompilowane do pliku binarnego. Ma to na celu zmniejszenie narzutu przy dystrybucji i dostępie. Pliki mogą być jednak również umieszczane i wyszukiwane w różnych lokalizacjach, aby umożliwić dodawanie niestandardowych definicji materiałów.

Przykładowy plik .FCMat

; last modified 1 April 2001 by John Doe

Name=Steel_Cast
Father=Steel
Source=Some material book everyone knows (or not); Some comment

[EN10027]
; steel standard EN 10027-1
Name=S235JR+AR

[Graphic]
EmissiveColor = 255,255,255

Właściwości materiałów

Poniżej znajduje się opis uzgodnionych właściwości materiałów. Zachęcam do dodania podsekcji dotyczącej właściwości materiałowych z Twojej dziedziny specjalizacji.

Ogólne

Ogólne właściwości materiałów
Nazwa właściwości Opis Jednostka/Typ danych
Nazwa Unikalna nazwa właściwości, zgodnie z zasadami opisanymi powyżej ciąg ASCII 7-bitowy
Materiał nadrzędny Nazwa grupy materiałowej, do której należy ten materiał. Jeśli zdefiniowane, ten materiał dziedziczy wszystkie właściwości materiału nadrzędnego. Zatem jeśli nie są zdefiniowane inne właściwości, używane będą właściwości materiału nadrzędnego. ciąg ASCII 7-bitowy
Opis Miejsce na dłuższy opis materiału ciąg ASCII 7-bitowy
Ciężar właściwy Ciężar właściwy (jednostkowy) to ciężar na jednostkę objętości materiału. Zobacz stronę: Ciężar właściwy N/m^3
Dostawca Określa markę lub dostawcę materiału ciąg ASCII 7-bitowy
URL produktu Adres URL, pod którym można znaleźć więcej informacji o materiale ciąg ASCII 7-bitowy
Cena jednostkowa Cena na jednostkę tego materiału. Jednostki mogą być bardzo różne (USD/m 3, EUR/sztukę, itd.) ciąg ASCII 7-bitowy

Do zrobienia: dodać właściwości z systemem klasyfikacji materiałów (metal, stop, minerał, drewno, ...)

Mechaniczne

Właściwości materiałów stosowane w inżynierii mechanicznej lub budownictwie
Nazwa właściwości Opis Jednostka/Typ danych
Moduł Younga Moduł Younga, nazywany również modułem na rozciąganie lub modułem sprężystości, jest miarą sztywności materiału sprężystego i wielkością używaną do charakteryzowania materiałów. Zobacz stronę: Moduł Younga N/(mm^2) (MPa)
Współczynnik Poissona Opisuje zwężenie materiału pod wpływem rozciągania jako ułamek jego wydłużenia. Zobacz stronę: Współczynnik Poissona bezwymiarowy (-)
Granica plastyczności Naprężenia, przy których w materiale ciągliwym (jak stal) zaczynają powstawać odkształcenia plastyczne (nieodrwacalne). Zobacz stronę: Granica plastyczności N/(mm^2) (MPa)
Wytrzymałość na rozciąganie Poziom naprężeń, przy którym materiał ulega zerwaniu. Dla materiałów ciągliwych, może to być po doświadczeniu znacznych odkształceń plastycznych (zobacz Granicę plastyczności). Dla materiałów kruchych, granica plastyczności pokrywa się z wytrzymałością na rozciąganie. Zobacz stronę: Wytrzymałość na rozciąganie N/(mm^2) (MPa)
Punkty z krzywej plastyczności Używane w obiekcie nieliniowego materiału w MES do opisu krzywej naprężenie-odkształcenie z jednoosiowego rozciągania materiału ciągliwego. Wartości są wprowadzane jako pary (naprężenie, odkształcenie plastyczne), gdzie pierwsza kombinacja to (granica plastyczności, 0) a ostatnia (wytrzymałość na rozciąganie, odkształcenie przy zerwaniu). Zobacz stronę: Krzywa naprężenia (N'*mm^-2 (MPa), bezwymiarowe (-)
Wytrzymałość na ściskanie osiowe Wytrzymałość na ściskanie betonu, definiowana jako wytrzymałość kostki o wymiarach 150 mm testowanej przez 28 dni. Zobacz stronę: FCK N/(mm^2) (MPa)
Kąt tarcia Kąt tarcia wewnętrznego materiału of a granular materiału ziarnistego, takiego jak piasek lub beton, używany w kryterium uplastycznienia Mohra-Coulomba. Zobacz stronę PHI °
Twardość Miara odporności materiału na zlokalizowane odkształcenia plastyczne (trwałe) spowodowane wciskaniem wgłębnika lub ścieraniem. Zobacz stronę Twardość brak dedykowanych jednostek we FreeCAD
EN-10027-1 W przypadku stali, gatunek stali zgodnie z definicją w standardzie europejskim nr 10027-1. ciąg ASCII 7-bitowy

Do zrobienia: dodać kolejne właściwości mechaniczne stosowane w projektowaniu.

Graficzne

Ta sekcja definiuje właściwości materiałów związane z wizualną reprezentacją materiału.

wygląd
Nazwa właściwości Opis Jednostka/Typ danych
Kolor otoczenia Kolor otoczenia w modelu kolorów Coin3D float,float,float zakres: 0.0-1.0
Kolor rozproszenia Kolor rozproszenia w modelu kolorów Coin3D float,float,float zakres: 0.0-1.0
Kolor odbicia Kolor odbicia w modelu kolorów Coin3D float,float,float zakres: 0.0-1.0
Kolor emisji Kolor emisji w modelu kolorów Coin3D float,float,float zakres: 0.0-1.0
Kolor przekroju Kolor pokazywany, gdy materiał jest przecinany w modelu kolorów Coin3D float,float,float zakres: 0.0-1.0
Stopień połysku Kolor otoczenia w modelu kolorów Coin3D float zakres: 0.0-1.0
Przezroczystość Kolor otoczenia w modelu kolorów Coin3D float zakres: 0.0-1.0
Cieniowanie wierzchołkowe Program cieniowania wierzchołkowego, zgodnie z definicją w GlSl wieloliniowy ciąg znaków ASCII 7-bitowy
Cieniowanie pikseli Program cieniowania pikseli, zgodnie z definicją w GlSl wieloliniowy ciąg znaków ASCII 7-bitowy

Termiczne

Właściwości termiczne
Nazwa właściwości Opis Jednostka/Typ danych
Przewodność cieplna Przewodność cieplna (współczynnik R lub lambda) wskazująca zdolność materiału do przekazywania ciepła W/(m*K)
Współczynnik rozszerzalności cieplnej Współczynnik rozszerzalności cieplnej opisujący wzrost wymiarów materiału na skutek wzrostu temperatury. µm/(m*K)
Ciepło właściwe Ciepło właściwe wskazujące ilość ciepła potrzebnego do zwiększenie temperatury jednostki masy materiału o jeden stopień. J/(kg*K)

Architektura i BIM

Właściwości materiałów używane w projektowaniu architektonicznym
Nazwa właściwości Opis Jednostka/Typ danych
Kod standardu XXXX Gdzie XXXX jest nazwą standardu (np. pochodzącą z repozytorium standardów BlenderBIM). Przykładowo, StandardCodeUniclass2. Wartość jest unikalnym kodem tego materiału w danym standardzie. Ta właściwość może się pojawiać kilka razy, z różnymi kodami standardów ciąg znaków ASCII 7-bitowy
Standard ochrony pożarowej Standard ochrony pożarowej materiału ciąg znaków ASCII 7-bitowy
Klasa ochrony pożarowej Klasa odporności ogniowej materiału w powyższym standardzie ciąg znaków ASCII 7-bitowy
Klasa transmisji dźwięku Klasa transmisji dźwięku tego materiału ciąg znaków ASCII 7-bitowy
Wykończenie Typ wykończenia/pokrycia tego materiału ciąg znaków ASCII 7-bitowy
Kolor Specyfikacja koloru tego materiału. Nie musi to być kolor wyświetlany w widoku 3D, ale może to być np. nazwa koloru podana w katalogu dostawcy ciąg znaków ASCII 7-bitowy
Jednostki na powierzchnię Liczba jednostek tego materiału potrzebnych do pokrycia określonej powierzchni. Przykładowo, dla cegieł, 45 cegieł/m² jednostki/m^2

Do zrobienia