프로그래밍 언어 기말 프로젝트 : Tic-Tac-Toe 게임 인공 지능 알고리즘 만들기목차 코딩 목표 코드 설명 기타 게임 준비 게임 작동 게임 마무리 전체 코드1. 코딩 목표1 tic-tac-toe 게임이란 ? • tic-tac-toe 게임은 2 명의 경기자가 오른쪽과 같은 보드를 이용하여서 돌 아가며 O 와 X 를 놓는 게임이다 . • 같은 글자가 가로 , 세로 , 혹은 대각선 상에 놓이면 이기게 된다 코딩 목표1 기존 tic-tac-toe 코드의 문제점 게임 보드의 모양이 딱 떨어지지 않아 가독성이 부족하다 . 좌표입력이 2 차원 배열의 좌표 값을 직접 하나하나 입력 해야 해서 불편하다 . 이전 순서의 게임 보드도 계속 남아 있어 보기 불편하다 . 정확하지 않은 좌표를 입력하면 게임진행에 오류가 생기지만 이에 대한 대비가 없다 .AI 와 대결 1 기타 문제점 개선점 알고리즘을 작성해 컴퓨터가 다음 수를 결정하도록 변경 . 잘못된 좌표 입력하지 못하게 방지 . 게임의 편의성 개선 . ( 가독성 , 좌표 입력 방식 ) 전적 기록 기능 , 난이도 조절 , 다시하기 기능 등 기능 추가 .2. 코드 설명코드 설명 코드의 대략적인 순서도 2 총 410 줄 게임 준비 게임 작동 게임 마무리 3 파트로 나눠진다 대략 게임준비 ( 반복문 ){ 게임작동 ( 반복문 ){ 실제 게임 실행 } 게임 마무리 ( 게임반복여부 확인 ) } 위 구조로 되어있다 .2 게임 모습 1) 게임 준비2 게임 보드 초기화 ( 생성 ), 난이도 조절 #define ROW 3 #define COL 3 //~~~~~~~~( 기타 코드 생략 )~~~~~~ int board[ ROW ][ COL ]; int x, y, i ; //~~~~~~~~( 기타 코드 생략 )~~~~~~ for (y = 0; y COL; y++) { for (x = 0; x ROW; x++) { board[y][x] = ‘ ’ ; } } 게임 보드를 2 차원 배열로 구성하고 배열을 이중 for 문을 사용해 (‘ ’) 공백문자로 초기 (location - 1) % COL ; If (location 1 || location 9) { printf ( “ 좌표를 잘못 입력했습니다 .n( 아무숫자나 입력한 뒤 좌표를 다시 입력하세요 .: )bb” ); scanf_s ( “%d” , tmp ); continue ; } Else if (board[x][y] == Q || board[x][y] == X ) { printf ( “ 이미 놓은 자리입니다 .n( 아무숫자나 입력한 뒤 좌표를 다시 입력하세요 .: )bb” ); scanf_s ( “%d” , tmp ); continue ; } else { board[x][y] = Q ; } 사용자로부터 location 값을 받아 x = (location - 1) / ROW ; y = (location - 1) % COL ; 를 통해서 x, y 좌표로 나눈 다음 해당 게임 보드에 사용자의 말 (@) 을 대입한다 . 좌표를 잘못 입력 했을 때 continue ; 를 통해 반복문을 다시 실행시켜 좌표를 다시 알맞게 입력할 수 있다 . 2) 게임 작동2 AI 알고리즘 AI 순서일 때 해당 순서 때마다 AI 좌표 배치 우선 순위 배열을 만들고 게임 보드의 상황과 조건에 따라 각 배열별로 우선도 점수를 받아서 최대 우선도 점수를 가진 배열을 해당 순서의 최선의 수로 판단하는 알고리즘이다 . 우선도 조건은 ( 난이도 조절을 위한 랜덤 값 모서리 우선 가로 막기 공격하기 세로 막기 공격하기 대각선 막기 공격하기 ) 이 있다 . 최선의 수를 판단하는 모습 2) 게임 작동2 AI 알고리즘 for (i = 0; i 9; i++) { // ================= 변수를 줘서 실수를 유도 ========= ai_priority_board [ i ] = rand() % 6; printf ( nai_priority_board [%d] = %.2fn , i , ai_priority_board [ i ]); // ====================== 모서리에 : # 가 승리했습니다 !n ); game_count ++; defeat++; } } else { printf ( n 무승부입니다 .n ); game_count ++; darw ++; } 가로 , 세로 , 대각선 중 한 줄이라도 3 칸이 같은 말이 놓여있으면 누군가 이긴 것이고 some_win 값이 1 이 돼서 게임 작동 부분 반복문 탈출 이 게임은 본인의 순서일 때만 승리 할 수 있으므로 승리 ( some_win ==1) 했을 때 순서가 짝수 순서면 플레이어 승리 순서가 홀수 순서면 AI 승리 아무도 못이기고 9 번의 순서가 지나갔으면 무승부 2) 게임 작동3 3) 게임 마무리부분 전적 기록 출력 다시하기 기능 ㅍ win_rate = (victory / ( float ) game_count ) * 100; restart = 0; printf ( nn ); printf ( 현재 전적 %d 전 %d 승 %d 패 %d 무 n , game_count , victory, defeat, darw ); printf ( 승률 %.2f%% n , win_rate ); printf ( n ); printf ( n 다시 시작하시겠습니까 ?.nn( 멈추기 = 0, 다시시작 = 1)n 입력 : ); scanf_s ( %d , restart); if (restart == 0) break ; else if (restart == 1 ) system( cls ); continue ; } 승리 판별에서 승 , 패 , 무 받은 값을 이용해 전적을 출력하고 다시하기 여부를 입력 받아 게임 전체 반복문을 (break ; or continue ;) 멈출지 다시 할지 결정기타 전체 코드기타 전체 코드기타 전체 코드 #include stdio.h #include stdlib.h #include math.h #include time.h #define ROW 3 #define COL 3 #define Q 64 // @ 표시 #define X 35 // # 표시 #define PRI===== if (turn % 2 == 0) { printf ( n%c 차례입니다 .n 좌표를 입력하세요 . : , (turn % 2 == 0) ? Q : X); scanf_s (%d, location); x = (location - 1) / ROW; y = (location - 1) % COL; if (location 1 || location 9) { printf ( 좌표를 잘못 입력했습니다 .n( 아무숫자나 입력한 뒤 좌표를 다시 입력하세요 .: )bb); scanf_s (%d, tmp ); continue; } else if (board[x][y] == Q || board[x][y] == X) { printf ( 이미 놓은 자리입니다 .n( 아무숫자나 입력한 뒤 좌표를 다시 입력하세요 .: )bb); scanf_s (%d, tmp ); continue; } else { board[x][y] = Q; } }// ==================AI 알고리즘에 따라서 컴퓨터좌표 입력 =============== else if (turn % 2 == 1) { float ai_priority_board [9] = { 0.0, }; float highest_priority_location [1] = { 0.0 }; int highest_index = 0; for ( i = 0; i 9; i ++) { // ====================== 변수를 줘서 실수를 유도 ====================== ai_priority_board [ i ] = rand() % 6; // ====================== 모서리에 가점 ====================== switch ( i ) { case 0: ai_priority_board [ i ] += 4; break; case 2: ai_priority_board [ i ] += 4; break; case 6: ai_priority_board [ i ] += 4; break; case if (board[1][1] == X) { location = 1 * 3 + 1; ai_priority_board [location - 3] += ((PRIORITY_POINT-35)/ level_down ); ai_priority_board [location - 1] += ((PRIORITY_POINT-35) / level_down ); ai_priority_board [location + 1] += ((PRIORITY_POINT-35) / level_down ); ai_priority_board [location + 3] += ((PRIORITY_POINT-35) / level_down ); } } if (board[1][1] == board[2][2] ((board[1][1] == X) || (board[1][1] == Q))) { location = 0 * 3 + 0; ai_priority_board [location] += (PRIORITY_POINT / level_down ); } if (board[0][2] == board[1][1] ((board[1][1] == X) || (board[1][1] == Q))) { location = 2 * 3 + 0; ai_priority_board [location] += (PRIORITY_POINT / level_down ); } if (board[2][0] == board[1][1] ((board[1][1] == X) || (board[1][1] == Q))) { location = 0 * 3 + 2; ai_priority_board [location] += (PRIORITY_POINT / level_down ); } if (board[2][0] == board[0][2] ((board[2][0] == X) || (board[2][0] == Q))) { location = 1 * 3 + 1; ai_priority_board [location] += (PRIORITY_POINT / level_down ); w}
보의 전단력 실험1. 실험 제목보의 전단력 실험2. 실험 일시3. 실험 장소4. 실험 목적다리, 기계 등 구조물부터 자연 사물까지 대부분의 재료는 횡하중을 받는다. 횡하중과 전단력의 관계에 대해 실험 장치를 이용해서 하중의 크기와 작용 위치에 따라 보가 받는 전단력을 측정, 계산해보고 전단력에 대해 이해한다.5. 실험 이론?보 (Beam)수직재의 기둥에 연결되어 하중을 지탱하고 있는 수평 구조부재를 보(beam)라 한다. 보의 종류는 보가 어떻게 지지되어 있느냐에 따라 구분된다.① 정정보 : 보의 지지점에서 반력을 정역학적인 방법으로 결정할 수 있는 보(단순지지 보, 내다지 보, 외팔보)그림 1 단순보② 부정정보 :보의 지지점에서 반력을 정역학적인 방법만으로는 결정할 수 없고 변형에 대한 저항성과 관련된 보의 성질을 고려해야 하는 보(연속보, 지지된 외팔보, 양단 고정보)그림 2 연속보?반력 (Reaction force)보에 하중이 작용할 때 지지점에 생기는 힘. 반력의 크기는 힘의 평형식을 통해 구할 수 있다.?전단력 (Shearing force)재료 내의 서로 접근한 두 평행면에 크기는 같으나 반대 방향으로 작용하는 힘, 이 힘의 작용으로 2면 간에 서로 미끄럼 현상을 일으키는데 이 힘을 전단력이라 한다. 단위는 [N]이다.그림 3 전단력 부호?전단력 선도(Shearing Force Diagram ? S.F.D)보(beam)의 하중이 작용할 때, 각 단면의 전단력을 빔의 전체 길이에 걸쳐 표시한 그림.6. 실험 방법실험 장치장비명 : STR - 3그림 4 실험장치?실험에 쓰이는 하중그림 5 하중왼쪽 ? 추 걸이 (10g)오른쪽 ? 추 (개당 10g)(중력가속도`(g)`=`9.81m/s ^{2} `)실험 방법① 보의 전단력 측정 장치의 전원을 켜고 영점을 조절한다. (센서가 매우 예민하니 주의할 것,±0.1N이라면 프레임을 살짝 두드리면 된다.)② 임의의 위치에 추를 건다. 추를 걸고 흔들리지 않게 한다.(지지점에서 바로 옆 걸쇠 사이 거리는 4cm, 걸쇠 TIMES 0.48m+2.4525N TIMES 0.28m`-`R _{a} TIMES 0.44m`=`0##`R _{a} `=` {1.962N` TIMES 0.48m+2.4525N TIMES 0.28m} over {0.44m} `=`3.7010N##R _{b} `=4.4145N`-`R _{a`} `=4.4145N``-`3.7010N`=`0.7135N`1)##sum _{} ^{} F _{y} `=`0`;##-1.962N`-2.4525N`+`3.7010N`-V`=`0##`V`=`-0.7135N2)##sum _{} ^{} F _{y} `=`0`;##-0.7135N+V`=`0##`V`=`0.7135N실험 전단력 0.7N, 이론 전단력 0.7135N오차율 ={vert 0.7135N-0.7N vert } over {0.7135N} ` TIMES `100`=1.8858%실험 2-----------------------sum _{} ^{} F _{y} `=`0`;##-2.943N`-1.962N`+`R _{a} `+R _{b} `=`0##`R _{a} `+R _{b} `=`4.905Nsum _{} ^{} M _{B} `=`0`;##2.943N` TIMES 0.52m+1.962N TIMES 0.04m`-`R _{a} TIMES 0.44m`=`0##`R _{a} `=` {2.943N` TIMES 0.52m+1.962N TIMES 0.04m} over {0.44m} `=`3.6565N##R _{b} `=4.905N`-`R _{a`} `=4.905N``-`3.6565N`=`1.2485N`1)##sum _{} ^{} F _{y} `=`0`;##-2.943N`+`3.6565N`-V`=`0##`V`=`-0.7135N2)##sum _{} ^{} F _{y} `=`0`;##-1.962N+1.2485+V`=`0##`V`=`0.7135N실험 전단력 0.7N, 이론 전단력 0.7135N오차율 ={vert 0.7135N-0.7N vert } over {0.7135N} ` TIMES `100`=1.8855N``-`2.6532N=`2.7423N`1)##sum _{} ^{} F _{y} `=`0`;##-2.4525N``+`2.6532N`-V`=`0##`V`=0.2007`N2)##sum _{} ^{} F _{y} `=`0`;##-2.943N+2.7423+V`=`0##`V`=`-0.2007N실험 전단력 0.2N, 이론 전단력 0.2007N오차율 ={vert 0.2007N-0.2N`vert } over {0.2007N} ` TIMES `100`=0.3285%실험 4번---------------------sum _{} ^{} F _{y} `=`0`;##-1.962N-2.4525N-2.943N``+`R _{a} `+R _{b} `=`0##`R _{a} `+R _{b} `=7.3575Nsum _{} ^{} M _{B} `=`0`;##1.962N` TIMES 0.48m+2.4525N TIMES 0.38m`#+2.943N TIMES 0.08m-`R _{a} TIMES 0.44m`=`0##`R _{a} `#=` {1.962N` TIMES 0.48m+2.4525N TIMES 0.38m`+2.943N TIMES 0.08m} over {0.44m}#=`4.7935N##R _{b} `=7.3575N`-`R _{a`} `=7.3575N``-`4.7935N=`2.5640N`1)##sum _{} ^{} F _{y} `=`0`;##-2.943N`-1.962N`+4.7935N`-V`=`0##`V`=`0.3790N2)##sum _{} ^{} F _{y} `=`0`;##-2.943N+2.5640+V`=`0##`V`=`-0.3790N실험 전단력 0.3N, 이론 전단력 0.3790N오차율 ={vert 0.3790N-0.3N`vert } over {0.3790N} ` TIMES `100`=20.8491%실험 5---------------------sum _{} ^{} F _{y} `=`0`;##-1.962N-2.4525N-2.943N``+`R _{a} `+R _{b} `=`0##`R _{a} `+R 2.4525N-2.943N`+6.5326N`-V`=`0##`V`=`-0.8249N2)##sum _{} ^{} F _{y} `=`0`;##+0.8249N+V`=`0##`V`=`-0.8249N실험 전단력 0.9N, 이론 전단력 0.8249N오차율 ={vert `0.8249N-0.9N``vert } over {0.8249N} ` TIMES `100`=9.0999%실험 6-----------------------sum _{} ^{} F _{y} `=`0`;##-1.962N-2.4525N-2.943N``+`R _{a} `+R _{b} `=`0##`R _{a} `+R _{b} `=7.3575Nsum _{} ^{} M _{B} `=`0`;##1.962N` TIMES 0.48m+2.4525N TIMES 0.54m`+2.943N TIMES 0.08m#-`R _{a} TIMES 0.44m`=`0##`R _{a} `#=` {1.962N` TIMES 0.51m+2.4525N TIMES 0.48m`+2.943N TIMES 0.08m} over {0.44m} `#=`5.6853N##R _{b} `=7.3575N`-`R _{a`} `=7.3575N``-`5.6853N=`1.6722N`1)##sum _{} ^{} F _{y} `=`0`;##-1.962N`-2.4525N+5.6853N`-V`=`0##`V`=`1.2708N2)##sum _{} ^{} F _{y} `=`0`;##-2.943N+1.6722N+V`=`0##`V`=`-1.2708N실험 전단력 1.2N, 이론 전단력 1.2708N오차율 ={vert `1.2708N-1.2N``vert } over {1.2708N} ` TIMES `100`=5.5743%실험 7--------------------sum _{} ^{} F _{y} `=`0`;##-1.962N-2.4525N-2.943N``+`R _{a} `+R _{b} `=`0##`R _{a} `+R _{b} `=7.3575Nsum _{} ^{} M _{B} `=`0`;##1.962N` T} F _{y} `=`0`;##-2.943N+3.2774N+V`=`0##`V`=`-`0.3344N실험 전단력 0.4N, 이론 전단력 0.3344N오차율 ={vert `0.3344N-0.4N``vert } over {0.4N} ` TIMES `100`=19.6058%표 1 실험 결과 정리거리(m)하중(N)실험전단력(N)Ra(N)Rb(N)이론전단력(N)오차율(%)1번 실험Ra 왼쪽0.73.70100.71350.71351.88580.041.962Ra 오른쪽0.162.45252번 실험Ra 왼쪽0.73.65651.24850.71351.88580.082.943Rb 왼쪽0.041.9623번 실험Ra 오른쪽0.22.65322.74230.20070.32850.062.4525Rb 왼쪽0.082.9434번 실험Ra 왼쪽0.34.79352.56400.379020.84910.041.962Ra 오른쪽0.062.4525Rb 왼쪽0.082.9435번 실험Ra 왼쪽0.96.53260.82490.82499.09990.041.962Ra 오른쪽0.062.45250.12.9436번 실험Ra 왼쪽1.25.68531.67221.27085.57430.041.9620.12.4525Rb 왼쪽0.082.9437번 실험Ra 오른쪽0.44.08013.27740.334419.60580.041.9620.12.4525Rb 왼쪽0.062.943그래프 1 실험값과 이론값 그래프그래프 2 오차율 그래프7. 고찰실험 결과를 보면 0.3295% ~ 20.8491%의 오차가 나왔다. 실험에서 오차가 발생한 이유는 실험 장치의 유효숫자가 소숫점 한자리까지 표시돼서 절단오차 발생해 이론값과 실험값이 차이가 생겼고, 이론값을 계산할 때 추의 질량을 정확한 200g, 250g, 300g으로 계산했지만 실험장치에 걸리는 실제 질량은 200.4g, 251.2g, 299.8g으로 질량의 차이가 있어 오차가 발생했다. 오차를 줄이려면 이론값을 계산할 때 실제 추의 질량으로 계산한다. 그리고 측정된 결과값들을 보면 소숫점 한자리인 결과값들이 .
기계공학과, 금요일 1~2교시, 2021년 11월 19일1기계공학과, 금요일 1~2교시, 제출날짜 2021.12.03브리넬 경도 실험1. 실험 제목브리넬 경도 실험2. 실험 일시3. 실험 장소4. 실험 목적경도는 변형에 대한 저항을 의미하며 금속에서 이 특성은 영구변형 또는 소성변형에 대한 저항을 측정하는 것이다. 공학에서 널리 사용되는 압입저항의 측정을 목적으로 한다. 경도 시험은 측정 시간이 짧고 측정 방법이 간단하며, 시편 제작이 용이하다. 보통 비파괴적으로 할 수 있는 이점 때문에 생산 현장용 및 연구 수단으로 널리 이용되고 있다. 충격경도 시험에는 일정한 형상과 중량을 갖는 다이아몬드 해머가 일정한 높이에서 시험편에 낙하되었을 때 반발 높이로부터 경도를 측정한다. 압입경도 시험에서는 브리넬, 로크웰, 비커스, 마이어, 누프 경도시험 등이 있다. 지난 로크웰 경도 실험에서는 압입 깊이(h)를 통해 경도를 측정했지만 이번 브리넬 경도 시험에서는 압입자국의 지름(d)를 통해 경도를 측정할 것이다.5. 실험 이론경도 (Hardness)어떤 단단한 표준물체인 시험편에 누르개로 힘을 가했을 때 시험편에 나타나는 변형에 대한 저항력의 크기이다. 경도 시험은 인장 시험과 더불어 기계적 시험방법 중에서 가장 널리 사용되는 것으로, 주로 금속재료에서 많이 사용된다. 경도 시험은 시험편을 파괴하지 않으면서도 간편하고 용이하게 실시할 수 있기 때문에 인장 시험방법을 대체하여 금속재료의 특성을 분석하는데 중요한 시험방법 중에 하나이다. 경도 시험을 통해서 재료의 강도와 성질을 알 수 있으며 경도 시험의 종류에는 크게 압입, 반발, 긋기 등으로 나눌 수 있다. 압입 경도시험에는 브리넬 경도 시험, 비커스 경도 시험, 로크웰 경도 시험, 누프 경도 시험, 마이어 경도 시험이 있고, 반발 경도 시험에는 쇼어 경도 시험, 펜듈럼 경도 시험이 있고, 긋기 경도 시험에는 모오스 경도 시험, 마르텐스 경도 시험이 있다.브리넬 경도 (Brinell hardness)압입 경도 시험중의 하나이며 1900년에 스웨덴의 브리넬 (J. A. Brinell) 박사에 의해 개발되었으며, 구형(동그라미 모양) 누르개를 일정한 시험 하중으로 시험편에 압입시켜 시험하며, 이 때 생긴 압입자국의 표면적을 시험편에 가한 하중으로 나눈 값이 브리넬 경도 값으로 정의된다.실험에 사용하는 공식이번 실험에서 D는 10mm로 고정 (EMPTYSET 10 사이즈의 볼을 이용함)그림 1브리넬 경도 공식HB ={시험`하중(P)`} over {영구오목의표면적(A)} `=` {P} over {pi Dh}그림 2그림 3alpha `+` beta `=`90 DEGTRIANGLE PBC와TRIANGLE CBA는 닮음tanalpha ={d/2} over {D`-`h} ={h} over {d/2} ->Dh`-`h ^{2} `= {d ^{2}} over {4}Dh`-`h ^{2} `-` {d ^{2}} over {4} `=`0 에서 근의 공식( {-b` +- sqrt {b ^{2} -4ac} `} over {2a} )을 위 식에 적용하면h= {D` +- sqrt {D ^{2} -d ^{2}} `} over {2} 가 되므로HB`=` {P} over {pi Dh} `= {2P``[kgf]} over {pi D(D`- sqrt {D ^{2} `-`d ^{2}} )}*h`
샤르피 충격 실험1. 실험 제목샤르피 충격실험2. 실험 일시3. 실험 장소4. 실험 목적샤르피 충격 실험은 충격량에 대한 재료의 인성이나 취성을 측정하기 위한 실험으로, 재료의 인성이나 취성은 정적 인장시험으로 어느정도 추정이 가능하나 정적 인장시험의 결과만으로는 동적하중 , 사용온도 등 의 기계적 성질의 변화를 충분히 알 수 없으므로 샤르피 충격 실험을 이용하여 재료의 인성과 취성을 측정한다.5. 실험 이론샤르피 충격실험은 충격 굽힘 시험법으로 노치가 있는 시혐편을 양단 힌지롤 고정한 다음 시험편의 노치 부분이 정확하게 중앙에 오도록 수평으로 놓는다. 이때 회전중심을 중심으로 회전하는 해머로 시험편의 중앙점에 충격하중을 가하여 시험편을 파단시키고 그 때의 소모된 흡수에너지 값으로 충격치를 나타내는 방법이다.그림 1그림 2m: 해머의 질량 30kgg: 중력 가속도 9.81m//m ^{2}W: 해머의 무게 (30kg BULLET 9.81m/s ^{2} =294.3N)a: 해머를 들어 올렸을 때 각도 (파단 전)b:시험편을 절단하고 상승했을 때 각도(파단 후)R: 축 중심부터 해머 중심 G까지의 거리(0.75m)A : 노치부의 단면적1cm BULLET 0.8cm`=`0.8cm ^{2}시편에 흡수된 에너지값은 파단 전, 후의 위치에너지 변화량을 이용해 계산한다.1) 파단 전 해머의 위치에너지그림 3 파단 전 위치에너지h _{1`} `=`R`+`R`cos( pi -a)=`R``-`R`cos(a)=`R(1``-``cos(a)) ....... 식 (1)2) 파단 후 해머의 위치에너지그림 4 파단 후 위치에너지h _{2`} `=`R`-`R`cos(b)=`R(1``-``cos(b)) ....... 식 (2)위치에너지 = mgh시편에 흡수된 에너지 E = 위치에너지 변화량=mgh _{1} -mgh _{2}=mg(h _{1} `-`h _{2} )(식 (1), (2) 대입)=mg[R``(1-cos(a)`)-R`(1-cos(b)``)`]=mgR``(`cos(b)-cos(a)``)=mgR``(`cos(b)-cos(a)``)=WR``(`cos(b)-cos(a)``)THEREFORE `E`=W TIMES R``(`cos(b)-cos(a)``)샤르피 충격 시험값은 다음과 같다.U = E/A(cm²)실험 관련 성질? 인성 (toughness)재료 파괴에 대한 질긴 정도. 파괴까지에 가해진 단위 체적당 에너지로 표시된다.? 취성 (brittleness)파괴 시 탄성 한도를 넘어서 항복점 이후에 소성구간에 접어들면서 심한 변형이 생기는 일 없이 바로 파괴에 이르는 재료? 연성 (ductility)파괴 시 탄성 한도를 넘어서 항복점 이후에 소성구간에 접어들면서 하중 능력을 잃지 않으면서 영구변형이 어느 정도 지속되는 재료항복응력 < 극한강도 이며 인성이 크다? 노치 취성 (notch brittleness)구조물에 노치가 없을 때는 충분한 연성을 나타내지만, 노치가 있으면 취약해지고, 파괴현상이 일어난다. 이와같은 취약성을 노치 취성이라고 한다.(a) 취성 (b) 연성응력 ? 변형률 선도 예시5. 실험 방법실험장치?장비명 : DTI ? 603실험방법① 시험장치를 견고한 바닥에 수평으로 설치한다.② 시편의 노치부(파여있는 부분)를 해머가 시편을 때리는 반대 방향으로 놓고 노치부 부분과 해머날이 정중앙에 위치하도록 한다.③ 실험 전 해머가 수직으로 놓여 있을 때 지침계(빨강, 검정)가 0점에 위치하였는지 확인한다.④ 핸들을 이용해 해머를 원하는 각도로 올린다.⑤ 훅을 제쳐 암에 붙어 있던 해머를 낙하시킨다.⑥ 시편에 충격이 가해졌을 때 빨간 지침계가 위치한 각도를 확인한다.⑦ 브레이크를 이용하여 왕복 운동을 정지시킨다.※ 시편을 놓을 때 홈 부위가 해머날에 반대방향으로 위치해야하며, 해머날과 홈의 꼭지점이 일치해야 한다.6. 실험 결과결과값계산`E`=W TIMES R``(`cos(b)-cos(a)``), U = E/A(cm²)1) 시편 s20c(1) 예각파단 전 각도 a = 80DEG파단 후 각도 b = 46.5DEG`E`=W TIMES R``(`cos(b)-cos(a)``)`=`294.3N` TIMES 0.75m``(`cos(46.5 DEG )-cos(80 DEG )``)=151.4781JU = E/A(cm²)=151.4781J/0.8cm ^{2}=189.3476(2) 둔각파단 전 각도 a = 110DEG파단 후 각도 b = 86.5DEG`E`=W TIMES R``(`cos(b)-cos(a)``)`=`294.3N` TIMES 0.75m``(`cos(86.5 DEG )-cos(110 DEG )``)=118.6531JU = E/A(cm²)=118.6231J/0.8cm ^{2}=148.27892) 시편 s45c(1) 예각파단 전 각도 a = 80DEG파단 후 각도 b = 70.5DEG`E`=W TIMES R``(`cos(b)-cos(a)``)`=`294.3N` TIMES 0.75m``(`cos(70.5 DEG )-cos(80 DEG )``)=47.1347JU = E/A(cm²)=47.1347J/0.8cm ^{2}=58.9184(2) 둔각파단 전 각도 a = 110DEG파단 후 각도 b = 97DEG`E`=W TIMES R``(`cos(b)-cos(a)``)`=`294.3N` TIMES 0.75m``(`cos(97 DEG )-cos(110 DEG )``)=64.7904JU = E/A(cm²)=68.7904J/0.8cm ^{2}=80.9880실험 결과표표 3s20cs45c파단전 a(DEG )파단후 b(DEG )파단전 a(DEG )파단후 b(DEG )예각8046.58070.5둔각11086.511097표 4s20cs45c각도80DEG 110DEG 80DEG 110DEG충격흡수량(J)151.4781118.623147.134764.7904충격값(J/cm ^{2})189.3476148.278958.918480.9880그림 10 s20c 80도 파단면(1)그림 11 s20c 80도 파단면(2)그림 12 s20c 110도 파단면(1)그림 13 s20c 110도 파단면(2)그림 14 s45c 80도 파단면(1)그림 15 s45c 80도 파단면(2)그림 16 s45c 110도 파단면(1)그림 17 s45c 110도 파단면(2)7. 고찰실험에서 오차가 발생하는 원인은 결과값을 측정할 때 눈금을 잘못 읽어 오차가 발생하거나 충격값 계산에서 실험 장치의 회전축에 저항과 공기저항을 고려해 계산하지 않았고, 시편을 정확히 중앙에 위치시키지 못하여 해머날이 노치부의 중앙을 타격하지 못해 오차가 발생한다. 오차를 줄이기 위해서는 시편을 두지 않은 상태로 장치를 작동시켜 저항값을 구한 다음 에너지 계산 공식에 넣어 실험을 반복 수행해 오차를 줄이는 방법이 있다.이 실험은 충격량에 대한 재료의 인성이나 취성을 측정하기 위한 실험이다. 실험 결과는 충격 흡수량이 s20c 시편 각도 80도에서 151.4781J, 110도에서 118.6231J, s45c 각도 80도에서 47.1347J, 110도에서 64.7904J가 나왔고, 충격값이 s20c 시편 각도 80도에서 189.3476
레이놀즈(Reynolds)수 실험실험 일시실험 장소요 약이 실험은 실헝장치를 통해 관내유동에서 유체의 유속에 따라 달라지는 흐름의 형태를 관찰하고 측정한 레이놀즈(Reynolds)수를 비교해 레이놀즈수와 유동의 흐름의 상관관계를 이해하는 실험이다. 실험장치에서 관의 직경, 물의 물성과 같이 동일한 조건에서 유속만 바꿔가며 실험을 10회 실행했다. 유속이 느릴 때, 잉크가 퍼지지 않고 평행한 층류 유동을 관찰 할 수 있었고, 유속이 빠를 때, 와류가 있고 불규칙한 운동을 보이는 난류 유동을 관찰 할 수 있었다. 또한 측정값들로 계산한 레이놀즈수와 비교해봤을 때 대체로 레이놀즈 수에 따른 이상적인 분류 기준에 맞았다. 실험을 통해 레이놀즈수를 이해하고 레이놀즈 수 크기에 따른 흐름의 형태, 특징을 이해했다.1. 실험 목적이 실험은 레이놀즈수와 유동의 흐름의 상관관계를 이해하는 실험이다. 원형 관내 유동에서 실험 장치로 유동 흐름의 모양을 관찰하고 유량을 측정한다. 실험 측정 값으로 레이놀즈(Reynolds)수를 계산하고 레이놀즈수에 따른 유동의 형태를 시각적으로 관찰한다. 그리고 레이놀즈수에 의한 흐름 분류와 실험으로 관찰한 흐름 형태를 비교해 레이놀즈수와 흐름의 상관관계를 이해하고, 층류, 난류, 천이영역 유동의 특성을 이해한다.2. 실험 이론레이놀즈(Reynolds)수오스본 레이놀즈(Osborne Reynolds, 1842-1912)의 이름을 따 명명된 무차원수로 보통 층류 유동에서 난류 유동으로의 전환을 예측하는데 주로 사용된다. 레이놀즈 수는 관내 유동에서부터 항공기 날개 위의 공기 흐름까지 광범위한 적용이 가능하며, 정의는 다음과 같다.(원형 관)Re``=` {rho V`D} over {mu } = {V`D} over {nu } ```` -> ` {관성력} over {점성력}rho ` : 밀도(density)V`` : 평균 유속(average velocity)D` : 관 직경(tube diameter)mu : 점성계수(viscosity)nu : 동점성계수(kinematic viscosity)이와 같이 레이놀즈수는 점성력에 대한 관성력의 비이며 유체 밀도 및 점성 계수, 유체의 속도 그리고 특성길이에 의존적이다.표 1 유동 종류에 따른 구분원형관비원형관(개수로)평판Re= {pVD} over {mu } `#``````````= {VD} over {nu }Re= {4pVR _{h}} over {mu }#```````````= {4VR _{h}} over {nu }Re= {pVL} over {mu }#``````````= {VL} over {nu }층류구간Re < 2100Re < 500Re