Skip to content

12. 센서

센서 명령는 *Sensor로 지정한다. 고유이름을 가지며 이름은 중복하여 지정할 수 없다. *Sensor로 모델내 임의 위치에서 변위, 속도, 가속도, 변형률을 출력할 수 있도록 해주는 센서 객체를 정의할 수 있다.

*Sensor

Sensor를 지정

*Sensor, Type=type, Name=name
 ...
Keyword line
  • Type=type: 좌표계 종류
    • Point: 포인트 측정점의 집합 센서를 정의
    • Line: 스플라인 상의 다수의 측점의 집합 센서를 정의
    • TrackTwist: 트랙내 면틀림 센서를 정의
  • Name=name: Sensor 명칭

Sensor 명령은 유한요소 모델내 임의 위치 및 방향으로의 변형률, 변위, 속도, 가속도 등의 필드값의 출력이나 특수 해석 용도로 사용된다. Sensor는 여러 측점의 집합을 의미하며, 자신만의 고유한 이름을 갖는다. Sensor는 특정위치에서의 변형률, 변위, 속도, 가속도를 층정하는 표준센서(standard sensor)와 특수센서로 크게 구분된다. 표준센서는 사용자가 직접 위치와 방향을 지정하는 PointSensor와 스플라인을 지정한 후 스플라인 상에서 그 위치를 지정하는 LineSensor로 구분할 수 있다. LineSensor에서 방향은 스플라인에서 계산되는 접선 방향 벡터를 이용하게 된다. 특수센서에는 현재 면틀림센서가 있다.

▪ 출력 용도 지정된 Sensor는 Output, Print, *History 명령으로 Sensor 명칭을 지정하면 그 내부의 센싱 포인트에서의 값 들을 출력할 수 있다.

▪ 특수 해석 용도 *Step, Type=ModelUpdating에서 계측된 측정값과 비교하는 해석값을 지정하는 용도로 사용된다. 이때 사용할 수 있는 센서는 표준센서만 가능하다.

*Sensor, Type=Point

주어진 점에서 변형률, 변위, 속도, 가속도를 리포팅하는 PointSensor 정의

*Sensor, Type=Point, Name=name
  Strain|Displacement|Velocity|Acceleration, hostElset
  id, x, y, z, dx, dy, dz
  ...
First dataline
  • Strain|Displacement|Velocity|Acceleration: 센서유형 선택
  • hostElset: 측정점이 존재하는 부모요소집합
Second dataline and subsequent datalines
  • id: 측정점 고유번호(required). 측정점 고유번호는 중복 불가
  • x, y, z, dx, dy, dz: 측정점 좌표 및 방향 벡터(required). 주어진 방향벡터는 단위벡터로 정규화됨
Example
*Sensor, Type=Point, Name=sensor1
 Strain, girder
 1, 1,   0.0, 0, 1,0,0   # id, x, y, z, dx, dy, dz
 2, 5,  -2.3, 0, 1,0,0   
 3, 10,  0.0, 0, 1,0,0


*Step
...
*Output
 D, sensor1         
*Print File=Case1.prn 
 D@Left, sensor1    
*History, File=history.csv
 D-X@N10    # Dx at node 10
 sensor1    # sensor1의 측정점에 대한 값

*Sensor, Type=Line

스플라인 상에서 변형률, 변위, 속도, 가속도를 리포팅하는 LineSensor 정의

*Sensor, Type=Line, Name=name
 Strain|Displacement|Velocity|Acceleration, hostElset, spline, startId
 s1, s2, ..., n@s
 ...
First dataline
  • Strain|Displacement|Velocity|Acceleration: 센서유형 선택
  • hostElset: 측정점이 존재하는 부모요소집합
  • spline: 센서 측정점이 배치되는 스플라인(required)
  • startId: 측정점의 시작 고유번호(optional, default 1)
Second dataline and subsequent datalines
  • s1, s2, ...: 센서 설치 위치, 센서의 방향벡터는 스플라인에서 계산되는 방향벡터
  • n@s: 편의를 위해 제공되며, 이전 위치로부터 n 개만큼 s 간격으로 지정하는 것을 의미
Example
*Construction, Type=Spline, Name=spline
 0,  0,  0
 10, 0.8,0
 20, 0,  0

*Sensor, Type=Line, Name=lineSensor1
 Strain, girder, spline, 1
 0, 1, 2, 5
 3@3         # 8, 11, 14를 의미

*Step
...
*History, File=history.csv
 D-X@N10    # Dx at node 10
 lineSensor1    # lineSensor1의 측정점에 대한 값

*Sensor, Type=TrackTwist

트랙 내 면틀림

*Sensor, Type=TrackTwist, Name=name
  line1, line2, spacing, advance, startId
First dataline
  • line1, line2: 궤도를 구성하는 Beam 요소로 elset (required)
  • spacing: 사각 블록의 진행방향 길이. 보통 3 m 적용(required)
  • advance: 사각 블록이 옮겨가는 거리, 보통 spacing/10 (required)
  • startId: 측정점의 시작 고유번호(optional, default 1)

보요소로 구성된 궤도의 면틀림을 구할 수 있다. 두 라인은 직선이고 평행해야 하며 길이가 같아야 한다. 설계기준에서 spacing은 궤도 면틀림의 대상 길이로 보통 3m이며, 적용하는 단위에 따라 기입한다. advance는 사각 블록이 옮겨가는 거리이다. 각 사각블록당 1개의 면틀림값을 출력한다. 즉 센서포인트는 (트랙길이 – spacing)/advane이다. 이때 센서포인트의 아이디는 1부터 시작한다. 예를 들어 30 m 길이 레일에서 spacing = 3 m , advance = 0.5 m 이면, (30-3)/0.5 = 54개의 센서포인트가 생성된다.

■ 주의 트랙을 구성하는 보요소로부터 면틀림 또는 측점의 변위를 계산할 때 형상함수를 항상 B3D2H요소 (Bernoulli 보)의 형상함수를 사용한다. 전단변형을 고려하는 B3D2MH를 사용하더라도 B3D2H의 형상함수를 사용하는 데, 레일이 충분히 slender하다는 가정하기 때문이다.

Example
*Sensor, Type=TrackTwist, Name=TrackIrr
 line1, line2, 3, 0.3

*Step, TYPE=Dynamic, Name=DYN
 ...
*Output
 D, TrackIrr

*History, Name=TrackOutput
 DYN
 TrackIrr