반응형

분류 전체보기 764

random time history 파형 (field 가속도 값 PSD로 바꿔 보기)

Random time history 파형 랜덤 시간 파형은 예를 들어 간단히 설명하면 차량에 가속도 센서를 붙이고 시험자가 원하는 길에서 주행을 하면서 측정한 필드 값이다. 필드 값은 현실 상황을 가장 잘 반영하는 파형이라고 할 수 있다. Random time history waveform을 사용하는 이유는 아래와 같다. 1. 제품의 failure의 원인(cause) 파악 2. 시험 방법 검증 3. 현재 시험 방식과 현실(real-world) 시험 방식 비교 Random 시간파형(Field 측정값) 을 사용하여 PSD(Power Spectral Density) 만들기 예제 참고로 PSD에 대한 자세한 내용을 알고싶다면 괄호안에 링크를 참조하길 바란다.(https://scribblinganything.ti..

파이썬에서 DB에 비밀번호 암호화(hash)해서 저장하기(flask,mongodb)

hash 암호화 해서 DB에 저장하는 법 파이썬에서 웹페이지를 만들때 사용자의 암호를 평문으로 데이터베이스에 저장하면 안된다. 암호화 방법 중에 가장 많이 사용하는 방법으로 hash를 사용하는 방법이 있다. 나는 hash를 사용해서 암호화를 사용하는방법에 대해서 예제를 통해 구현하려고 하기 때문에 hash에 대한 자세한 설명은 생략하고 자 한다. hash 란 간단한 의미? hash에는 SHA-1, SHA-256, SHA-512 등 다양한 기법이 있는데 간단하게 말하면 입력으로 일정한 값이 있으면 출력은 입력의 사이즈에 상관없이 일정한 크기로 나온다. 그리고 입력에 1비트만 바뀌어도 출력은 완전 다른 값이 나온다. 물론 길이는 동일하다. 앞서 말한 hash 기법에 따라 출력 길이나 출력이 나오는 값이 달라..

flask와 mongodb를 사용해서 회원가입페이지 간단히 만들어보기(signup)

회원 가입 페이지 만들기 이번예제의 목표는 flask와 mongodb를 연동해서 사용하는 것이다. 구성은 가입할수 있는 html 페이지를 만들고 가입 신청을 하면 mongodb에 저장하고 저장한 값을 print로 읽어 볼 것이다. 이번 예제에서 구현할 기능은 아래와 같다. html에서 email과 password 입력하는 form 테이블 만들기 값을 입력하지 않으면 flash 로 경고창 띄우기 데이터베이스(mongodb)에 저장하고 읽기 비록 간단한 예제이지만 구현하기 위해 flask 기본, flash 사용방법, mongodb 설치가 필요하다. 각 각에 대한 설명은 아래 링크를 보면 간단한 예제와 함께 설명 되어 있으니 참조하길 바란다. flask 기본 : https://scribblinganything..

[Python] MongoDB 설치, 파이썬과 연동(robomongo/robo 3t)

목차 Mongodb, robomongo 윈도우에 설치 Mongodb 설치 과정 1. 괄호안의 사이트를 들어가서 아래 그림1과 같이 "On-premises", "platform: Windows", "Package:msi" 로 설정하고 msi 파일을 다운 받는다. (https://www.mongodb.com/try/download/community). 내 컴퓨터에 mongodb를 윈도우 버전으로 설치하는 파일을 받는 것이다. 2. Next 를 누른다. (그림2) 3. 체크박스를 체크하고 Next를 누른다. (그림3) 4. Complete 를 실행한다. 설치하고자 하는 폴더를 변경하고 싶으면 Custom을 실행한다(그림4) 5. 그림5와 같이 설정하고 Data와 Log를 다른 폴더로 관리한다. 여기서 폴더 경..

sinc 함수란? (파이썬으로 그래프 그려보기)

Sinc function 이란? sinc(x) = sin(πx) / πx ------- 식(1) Sinc function을 수식으로 표현하면 식(1)과 같이 나온다. Sinc 함수를 처음 접하게 된 계기는 샘플링 된 신호를 다시 Continuous 한 신호로 변경하는데 Sinc interpolation을 사용하면서 이다. Interpolation에 대한 간략한 설명은 링크를 참조하길 바란다. (https://scribblinganything.tistory.com/193) 파이썬 코드로 Sinc 함수 그려 보기 식(1)을 우선 Python을 통해 그래프로 그려보자 코드>> import matplotlib.pyplot as plt import numpy as np x = np.linspace(-4, 4, 4..

파이썬(Python) 2021.06.15

Interpolation 이란? (Lagrange interpolation 설명 및 파이썬으로 구현해보기)

Interpolation 이란? 샘플링(sampling)이란 연속적인(Continuous) 신호를 컴퓨터에서 처리하기 위해 이산(discrete) 신호로 변경하는 작업이다. 가령 온도 센서가 있으면 컴퓨터가 온도 센서를 읽기 위해 ADC(analog to digital conversion) 과정을 거쳐서 디지털 값을 컴퓨터가 읽게 된다. 인터포레이션(Interpolation)은 샘플링에 반대 되는 개념이다. 그림1과 같이 샘플링 된 값을 다시 연속적인 신호로 바꾸는 작업이다. 여기서 중요한 부분은 얼마나 원 신호에 가깝게 복원하는가 이다. (waveform approximation) 라그랑지안 다항식 보간법 (Lagrange polynomial interpolation) 라그란주, 라그랑주, 라그랑지안 ..

파이썬(Python) 2021.06.14

[Python] MySql 생성, 삭제, 검색 (pymysql, create, delete, search 예제 포함)

목차 데이터베이스(Database, DB) 생성(Create) 코드>> import pymysql db_connect = pymysql.connect( host='localhost', port=3306, user='kc', passwd='toor', charset='utf8' ) db_connected = db_connect.cursor() sql_cmd = 'create database users_db;' print(db_connected.execute(sql_cmd)) 결과>> print 값은 1로 나옴, 하나가 생성되었다는 의미 주석>> 그림1과 같이 MySQL에서 제공하는 CMD를 이용해서 database 를 "show databases;"로 확인하였고 users_db가 생성됨을 알 수있다. 코드..

Rainflow counting 이란?

Rainflow Counting Algorithm 정의 / 의미 레인플로우 카운팅 알고리즘은 피로(Fatigue) 분석에 사용됩니다. 그림1과 같이 시간에 따른 응력(stress) 변화가 그림처럼 전개 되면 피로 분석이 쉽지 않다. Rainflow Counting algorithm은 여러 성분이 포함된 그래프를 단순한 형태의 stress reversal (양과 음으로 변환하는 형태)로 바꾸어 준다. y축은 stress, strain 등 가해지는 입력에 따라 다양하게 적용 가능하다. Rainflow counting 전개는 아래 그림2와 같이 진행 된다. 그림2의 위에 그림은 그림1과 같은 그래프를 눕혀 놓은 것이다. 시간이 흐름에 따라 0 -> 1 -> 2 -> 3 -> 2' -> 4 -> 5 식으로 전개..

여러가지공부 2021.06.09

(파이썬)subprocess, os.system, re.findall, re.search를 사용한 간단 예제 - wifi 비번찾기

컴퓨터에 저장된 와이파이 비밀번호 파이썬으로 출력하기 예제의 목적 및 구현 방법 예제는 앞서 "cmd" 명령프롬프트로 구현한 wifi 비밀번호 찾기를 python으로 구현한것이다. 해당 예제는 괄호안에 링크를 참조하길 바란다. (https://scribblinganything.tistory.com/188) cmd에서 우리가 사용하는 명령어를 쉘이라고 하고 파이썬에서는 쉘 명령어를 os 모듈 또는 subprocess 모듈에서 지원해 준다. os 모듈과 subprocess 모듈의 차이점은 사실 비전문가 입장에서 사용방법을 제외하고는 거의 유사하다. 가령 나중에 나올 예제에서 chcp, netsh 라는 쉘명령어는 os.system에서 실행되지만 subprocess.run에서는 netsh은 되지만 chcp는 실..

Fatigue Damage 란? 분석 방법 (피로도, 피로 손상, SN curve, FDS)

피로손상 (Fatigue Damage) 피로 손상이란? UUT(Unit under test)는 다음의 2가지 원인에 의해 손상된다. Unit이 가지는 Stress limit을 넘어선 충격 장기간(Long term)에 피로(fatigue)로 인한 손상(damage) 시험 시간을 줄이기 위해 동일한 양의 피로 손상(Fatigue Damage)을 UUT에 가속으로 가한다. 피로도 계산 방법 (Fatigue Calculation) - SN curve, Miner's 법칙 MIL-STD-810G 에 따르면 시험 시간을 줄이기 위해 가장 일반적으로 사용되는 방법은 Miner Palmgren의 가설(hypothesis)이다. Power law(지수)로 fatigue의 관계를 정리하기 때문에 Log-Log plot에서..

여러가지공부 2021.06.07
반응형