태터데스크 관리자

도움말
닫기
적용하기   첫페이지 만들기

태터데스크 메시지

저장하였습니다.

<==이전 포스트(1편) 보러가기

<==이전 포스트(2편) 보러가기

<==이전 포스트(3편) 보러가기

 

이번 포스트는 앞서 소개한 TI의 C2000용 DSP 라이브러리 4종 중 SGEN 폴더에 들어 있는 Signal Generator Library 에 대해서 간단하게 살펴보겠습니다.

 

 

SGEN (Signal Generator Library)

SGEN은 실시간 신호 생성 용도로 사용되는 라이브러리로 "Sin(정형파) / Ramp(톱니파) / Trapezoidal(사다리꼴파) / Profile(사용자정의 파형) " 4가지 파형을 생성할 수 있습니다. 정수형 데이터를 사용하기 때문에, FPU 유무 상관없이 모든 TMS320F28x 계열 프로세서에서 사용할 수 있습니다.

 

 

 

그리고, Sin 신호 생성에는 Look-up 테이블 참조 방식의 연산방식을 사용하기 때문에 연산속도 또한 아주 빠릅니다. Look-up 테이블 방식을 사용하는 것으로 발생하는 오차를 Linear Interpolation(선형보간) 기법을 사용해서 줄여주는 코드도 포함되어 있습니다. 또한 modulo 연산 카운터 방식을 사용하기 때문에 신호 생성시 발생하는 카운터 오버플로우 문제없이 정확하게 주파수를 제어 할 수 있습니다. 주파수외 신호의 Gain과 Offset도 임으로 조정 가능합니다.

 

라이브러리 폴더에 들어가보면, 2016-10-25 현재에는 V101 버전 하나만 있는 것을 볼 수 있습니다. 버전 폴더 안으로 들어가면, 다시 여러가지 폴더로 구분되어 있는데, 각 폴더마다 라이브러리 사용에 필요한 소스, 헤더, 예제, 라이브러리 파일들이 들어 있습니다.

 

라이브러리 사용을 위해서 가장 먼저 해야할 일은 항상 해당 라이브러리의 가이드 문서를 살펴보시는 것 입니다. ControlSUITE 를 기본경로에 설치하셨다면, 다음과 같은 경로에서 문서를 찾아 볼 수 있습니다. controlSUITE 를 설치하시지 않는 분들도 문서를 보실 수 있도록 해당 문서를 첨부 했습니다.

 

 

가이드 문서 경로 : C:\ti\controlSUITE\libs\dsp\SGEN\v101\doc

 

Signal Generator Library 사용자 가이드 PDF 파일:

sgen_mdl.pdf


 

위의 사용자 가이드에 TI의 Signal Generator Library 가 제공하는 기능과 사용법이 아주 자세하기 설명되어 있습니다. 여기서는 간단하게 해당 라이브러리에 어떠한 연산기능들이 있는지 간단히 살펴 보겠습니다. 본인이 필요로하는 연산 기능이 있는지 잘 살펴보세요.

 

 

Standard THD Sin Generator

  • SGENT_1: Single Channel SIN Generator (Table look-up)
  • SGENT_2: Dual Channel SIN Generator (Table look-up)
  • SGENT_3: 3Φ SIN Generator (Table look-up)
  • SGENT_3D: Dual 3Φ SIN Generator (Table look-up)

 

Low THD Sin Generator

  • SGENTI_1: Single Channel SIN Generator (Table look-up and Linear Interpolation)
  • SGENTI_2: Dual Channel SIN Generator (Table look-up and Linear Interpolation)
  • SGENTI_3: 3Φ SIN Generator (Table look-up and Linear interpolation)
  • SGENTI_3D: Dual 3Φ SIN Generator (Table look-up and Linear Interpolation)

 

High precision Sin Generator

  • SGENHP_1: High Precision Single SIN Generator (Table look-up and Linear Interpolation)
  • SGENHP_2: High Precision Dual SIN Generator (Table look-up and Linear Interpolation)

 

Other Generator

  • RMPGEN: Ramp Generator
  • TZDLGEN: Trapezoidal generator
  • PROFILE: Profile generator

 

Sin Generator 연산은 Standard THD / Low THD / High precision 3가지 버전으로 구분되어 있습니다. THD는 Total Harmonic Distortion의 약어로 원신호 대비 출력신호의 왜곡율을 나타냅니다. THD 는 낮을 수록 원신호에 가까운 깨끗한 신호가 입니다. 그리고 각 버전 별로 Single Channel / Dual Channel / 3Φ / Dual 3Φ 로 또 나뉘어 집니다. 말그대로 1상 / 2상 / 3상 / 6상 의 sine 신호를 생성할 수 있습니다. (High precision 는 3Φ / Dual 3Φ 출력 안됨)

 

Standard THD Sin Generator는 Look-up 테이블 연산 방식에서 보간법을 사용하지 않고 그대로 출력하는 방식입니다. 16bit modulo 카운터를 를 사용하지만, 상위 8bit만을 Index로 사용합니다. 연산속도가 빠르긴 하지만, 그만큼 원신호 대비 출력신호의 오차가 제법 생깁니다. 오차에 대한 자세한 내용은 라이브러리 사용자 가이드를 살펴보세요.

 

Low THD Sin Generator는 Look-up 테이블 연산 방식에서 보간법을 사용하여 출력하는 방식입니다. 보간방식은 선형 보간(Linear Interpolation)법을 사용합니다. 16bit modulo 카운터를 를 사용하며, 상위 8bit를 Index로 사용하고 하위 8bit를  Look-up 테이블 보간을 위해서 사용합니다. Standard THD Sin Generator 비하면, 연산시간이 좀더 걸리지만, 원신호 대비 오차율은 많이 줄어 듭니다.

 

High precision Sin Generator는 Look-up 테이블 연산 방식에서 보간법을 사용하여 출력하는 방식입니다. 보간방식도 선형 보간(Linear Interpolation)법을 사용합니다. 32bit modulo 카운터를 를 사용하며, 상위 8bit를 Index로 사용하고 이어지는 하위 15bit를  Look-up 테이블 보간을 위해서 사용합니다. 따라서 좀더 정밀한 주파수 출력이 가능합니다. Low THD Sin Generator 비하면, 연산시간이 좀더 걸리지만, 원신호 대비 오차율은 더 많이 줄어 듭니다.

 

 

그밖에 연산(Other Generator)은 Ramp / Trapezoidal / Profile  3가지 신호를 생성할 수 있습니다. Ramp Generator는 아래 그림과 같이 증감 방향과 파형의 Frequency / Gain / Offset 를 조절할 수 있습니다.


 

 

Trapezoidal Generator는 아래 그림과 같이 사다리꼴 모양의 파형을 생성하고, 파형의 Frequency / Gain / Offset 를 조절할 수 있습니다.

 

 

 

 

 

Profile Generator는 앞서 Trapezoidal Generator와 유사하지만, 아래 그림과 같이 신호의 상태 시간을 좀더 세밀하게 설정해서 조절할 수 있습니다. 마찬가지로 Gain과 Offset 조절 가능합니다.

 

 

 

 

 

 

다음 포스팅에서는 마지막으로 VCU 라이브러리에 대해서 살펴보겠습니다.

 

Posted by syncworks

댓글을 달아 주세요