제 연구 범위는 기계 학습, 특히 인공 신경망을 사용하여 용접으로 인한 잔류 응력을 예측하는 효율적인 대리 모델을 개발하는 데 중점을 둡니다. 우리의 주요 초점은 용접 시뮬레이션을 위한 데이터 생성을 자동화하여 효율성을 향상시키는 방법을 해결하는 것입니다. Python 스크립트와 매크로 함수를 사용하여 데이터 생성을 자동화하면 시뮬레이션 설정 시간이 크게 단축되어 대규모 데이터 세트를 생성할 수 있다는 것을 확인했습니다.
또한 인공 신경망 기반 회로 모델은 용접으로 인한 잔류 응력을 정확하게 예측하여 0.0024의 상대 평균 제곱근 오차를 달성합니다. 0.0024의 상대 평균 제곱근 오차를 달성합니다. 당사의 프로토콜은 Python 스크립트 및 매크로 기능을 통해 데이터 생성을 자동화하여 시뮬레이션 설정 및 데이터 추출에 필요한 시간과 노력을 줄임으로써 이점을 제공합니다.
이를 통해 일관성을 보장하고 기계 학습 모델을 학습하기 위한 광범위한 데이터 세트를 만들 수 있습니다. 시작하려면 Abaqus를 열고 파일을 클릭한 다음 작업 디렉토리 설정을 클릭하여 작업 디렉토리를 설정합니다. 그런 다음 매크로 관리자 작업 파일을 순차적으로 클릭하고 열 기록이라는 매크로를 만듭니다.
용접 시편에 대한 모델을 작성합니다. 단일 용접 비드 on plate 구조 벤치마크 케이스를 예로 들어 보겠습니다. 파트를 클릭한 다음 파트 작성을 클릭합니다.
XY 평면에서 정사각형 스케치를 돌출하여 시편의 변형 가능한 3D 절반 모델을 작성합니다. 이제 부품을 클릭하고, 데이텀 평면을 생성하도록 이동하고, 기본 평면에서 오프셋을 선택합니다. 용접의 시작점과 끝점을 지정하려면 비드 길이를 기준으로 YZ 평면에서 오프셋을 지정합니다.
그런 다음 XY 평면과 XZ 평면에서 각각 간격띄우기를 지정하여 비드 깊이와 너비에 대한 두 개의 추가 데이텀 평면을 작성합니다. 부품을 클릭하고 Partition cell use datum plane 옵션을 선택하여 4개의 데이텀 평면을 사용하여 표본의 셀 파티션을 생성합니다. 그런 다음 파트를 클릭하고 솔리드 돌출 생성을 선택합니다.
데이텀 평면 중 하나에 스케치를 생성하여 표본의 위쪽 표면 아래에 있는 용접 비드 부분을 정의합니다. 비드 치수를 따르는 호와 두 선을 사용합니다. 스케치를 비드 길이의 깊이로 돌출시켜 컷을 작성합니다.
그런 다음 내부 경계 유지를 선택한 상태에서 스케치를 비드 길이로 돌출시킵니다. 부품을 클릭한 다음 데이텀 평면 생성(Create datum plane)을 선택하고 기본 평면에서 오프셋합니다. 데이텀 평면 중 하나에서 한 선으로 두 개의 호를 사용하여 용접 비드를 스케치합니다.
부품을 클릭하고, 파티션 셀을 선택하고, 데이텀 평면을 사용하여 찾을 4개의 데이텀 평면을 사용하여 표본의 셀 파티션을 생성합니다. 스테인리스강 AISI 316 LN의 재질을 정의하려면 속성을 클릭하고 재질을 생성한 다음 일반 메뉴에서 밀도를 정의하고 온도 종속 데이터를 사용하여 열 메뉴에서 전도성 및 비열을 정의합니다. 그런 다음 모델에 재료를 지정합니다.
속성을 클릭한 다음 단면을 생성하여 정의된 재질로 균일한 솔리드 단면을 생성합니다. 속성을 클릭하고 섹션을 할당하여 생성된 섹션을 모델에 할당합니다. 이제 단계를 클릭한 다음 생성 단계를 클릭하여 기간이 26.43이고 고정 시간 증분이 0.1인 용접이라는 열 전달 단계를 생성하여 형상의 비선형성이 없도록 합니다.
초기, 최소 및 최대 증분 크기가 각각 0.1, 0.05 및 5로 설정된 적응형 시간 증분을 사용하여 70의 기간으로 냉각 1이라는 또 다른 열 전달 단계를 만듭니다. 각각 0.1, 0.05 및 5로 설정합니다. 마지막으로, 초기, 최소 및 최대 증분 크기가 각각 5, 1 및 100으로 설정된 적응형 시간 증분을 사용하여 기간이 2, 000인 냉각 2라는 열 전달 단계를 만듭니다.
모델 속성을 설정하려면 모델, 속성 편집을 클릭합니다. 을 클릭하여 속성 설정에 액세스합니다. 절대 영도를 273.15로 설정합니다.
절대 영도를 273.15로 설정합니다. 슈테판-볼츠만 상수를 5.67 x 10의 11의 거듭제곱으로 지정합니다. 단계를 클릭하고 필드 출력을 생성하여 전체 모델에 대한 노드 온도 요청을 설정합니다.
그런 다음 assembly를 클릭하고 인스턴스를 만들어 종속 인스턴스를 만듭니다. 그런 다음 상호 작용을 순차적으로 클릭하고 상호 작용 및 표면 필름 조건을 생성하여 대칭 평면을 제외한 모델의 모든 표면에서 필름 계수가 15이고 싱크 온도가 20인 표면 필름 조건 상호 작용을 생성합니다. 시작 단계를 용접으로 설정합니다.
이제 상호 작용, 상호 작용 및 표면 복사를 순차적으로 클릭하여 대칭 평면을 제외한 모델의 모든 표면에서 방사율 0.7과 주변 온도 20의 표면 복사 상호 작용을 만듭니다. 시작 단계를 용접으로 설정하고 하중 모듈에서 하중을 정의합니다. 하중을 클릭하고 하중 열 및 본체 열 플럭스를 작성하여 용접 단계에서 시작하여 두 냉각 단계 동안 비활성화되는 사용자 정의 본체 열 플럭스 하중을 작성합니다.
그런 다음 load, create predefined field, other 및 field를 클릭하여 초기 단계부터 미리 정의된 온도 필드를 생성하여 실내 온도 20을 나타냅니다. 메쉬 모듈에서 메쉬를 생성하려면 메쉬를 클릭하고, 부품이 될 개체를 선택하고 부품을 시드하여 글로벌 크기 0.0024로 부품을 시드합니다. 메쉬를 클릭한 다음 가장자리를 시드하여 비드 깊이와 비드 너비의 가장자리를 3의 숫자로 시드합니다.
호의 가장자리에 숫자 3을 할당하고 비드 길이의 가장자리를 0.0015 크기로 시드합니다. 그런 다음 메쉬를 클릭하고, 메쉬 컨트롤을 할당하고, 비드 영역에 대한 자유 기술과 함께 TET 모양 요소를 사용합니다. 메쉬를 클릭하고, 요소 유형을 할당하고, 요소 유형을 DC 3D 10으로 설정한 다음, 부품을 메쉬합니다.
메쉬를 사용한 다음 미세 메쉬 영역 내에서 X축과 동일선상에 있는 0.0015 크기의 가장자리, 0.0011 크기의 Y축 가장자리, 0.00075 크기의 Z축 가장자리를 시드합니다. 및 크기가 0.00075인 Z축 가장자리. 이제 메쉬를 클릭한 다음 할당된 메쉬 컨트롤을 클릭하여 스윕 기술과 함께 육각형 요소를 사용하여 나머지 영역에 대한 메쉬 컨트롤을 할당합니다.
그런 다음 메쉬를 클릭하고, 요소 유형을 할당하고, 요소 유형을 DC 3D 20으로 설정한 다음 부품을 메쉬합니다. 작업, 작업 생성을 클릭하여 열 해석이라는 작업을 작성하고 D 플럭스 사용자 서브루틴을 첨부합니다. 매크로 기록을 중지합니다.
abaqusMacros라는 Python 파일이 있는지 확인합니다. py는 작업 디렉토리에 생성됩니다. 마지막으로 작업, 작업 관리자 및 제출을 클릭합니다.
ThermalAnalysis라는 결과 파일. ODB가 생성됩니다. BD 라인을 따른 종방향 응력은 아크 이동 길이, 아크 고급 속도 및 순 에너지 입력 속도의 다양한 조합에 걸쳐 일관된 변동을 보였으며 응력은 표면에 더 가깝게 최고조에 도달하고 더 깊은 깊이에서 감소했습니다.
유한 요소 시뮬레이션과 인공 신경망 예측 간의 불일치 대부분은 0에서 2 메가파스칼 범위 내에 있었으며 테스트 데이터의 45.2%를 차지했습니다. 훈련 데이터 포인트가 더 적은 스트레스 수준 빈은 특정 빈의 절대 잔차에서 볼 수 있듯이 테스트 데이터 세트에서 더 높은 최대 불일치를 보였습니다. 인공 신경망 예측은 유한 요소 시뮬레이션 결과를 평균 제곱 오차 0.0024와 밀접하게 일치시켰습니다.