11. 스텝모터(power transistor)작성자 : 양태광1. 스텝 모터: 펄스 모양의 전압에 의해 일정 각도 회전하는 전동기. 회전 각도는 입력 펄스 신호의수에 비례하고, 회전 속도는 입력 펄스 신호의 주파수에 비례하는 것이 특징이다.2. 장점: ① 디지털 신호로 직접 오픈 루프제어를 할 수 있고, 시스템 전체가 간단하다.② 펄스 신호의 주파수에 비례한 회전 속도를 얻을 수 있으므로 속도제어가 광범위 하다.③ 기동, 정지, 정-역회전, 변속이 용이하며 응답 특성도 좋다.단점: ① 고속 운전시 탈조하기 쉽다.② 어느 주파수 에서는 진동, 공진 현상이 발생하기 쉽고, 관성이 있는 부하에 약하다.③ 보통의 driver도 구동시에는 권선의 인덕턴스 영향으로 인하여 권선에 충분한 전류를흘리게 할 수 없으므로 pulse비가 상승함에 따라 torque가 저하하며 DC motor 에 비해 효율이 떨어진다.3. 스텝 모터의 구조스텝모터는 모터의 구조에 따라서 아래와 같이 3가지로 분류된다1) PM[Permanent Magnet Type]형: PM형은 회전자를 영구 자석으로 사용하고, 고정자 권선에서 만들어지는 전자력으로 당겨 붙어서 회전한다. 이 Pm형은 영구 자석을 사용하고 있기때 문에 무여자시에도 유지토크가 크다는 점이 특징이다. 영구 자석의 종류에 따라 스텝 각이 1.8, 7.5.15,30,34,90도로 나타난다.2) VR[Variable Reluctance Type]형: VR형도 연철 또는 성층 강판으로 회전자가 만들어져있고, 톱니바퀴형의 회전자와 고정자 권선에서 만들어지는 전자력으로 끌어 붙여 회전한다. 이motor는 무여자 일 때는 자력이 어느 곳에서도 발생하지 않으므로 유지torque는 0이 된다.3) Hybrid Type형: Pm형과 VR 형을 복합한 타입으로 여작극 및 이것과 대항한 Rotor의 주변에 다수의 톱니모양의 이빨이 있고 여기에 축방향으로 자화된 영구자석이 넣어져 있다.일반적으로 하이브리드형은 고정밀도와 큰 토크및 미소 스텝각등 많은 우수한 특징을 가지고있어서 OA 나 FA 관계에서는 널리 사용되고 있다. 스텝각은 0.8, 1,8도를 갖는다.4. 스텁모터의 상여자 방식여자[excitation]: 일반적으로 권선에 전류를 흘려서 기자력을 주는 것.1상 여자방식: 고정자의 1개 코일만을 차례로 여자하며 모터를 구동하는 방식으로 구동방식은 아래 그림과 같다.2) 2상여자 방식: 고정자의 2개 코일을 아래 그리과 같이 동시에 여자하여 모터를 구동하여 모터를 구동시키는 방식. 1상 여자방식에 비해 2배의 입력신호를 필요로 하게 되어 에너지 효율은 떨어지지만 damping 특성이 양호하므로 가장 널리 이용이 되고 있다.3) 1-2상 여자법: 1상여자와 2상여자를 교대로 행하는 것으로 구동원리는 아래 그림과 같다.1-2 상 여자방식의 1펄스에 대한 스텝각은 1상여자와 2상여자 방식의 스텝각의 반이되는특징을 갖는다. 이 여자 방식은 정밀하게 위치제어를 하고자 하는 시스템에 많이 쓰인다.TX/RX 제어include#includechar cw1[]={0x01,0x02,0x04,0x08};// 1상여자 정방향 (축을 기준 으로 시계방향)char ccw1[]={0x08,0x04,0x02,0x01};// 1상여자 역방향 (축을 기준으로 반시계 방향)char cw2[]={0x09,0x03,0x06,0x0c};// 2상여자 정방향 (축을 기준 으로 시계방향)char ccw2[]={0x0c,0x06,0x03,0x09};
10. 시리얼통신 RS485작성자 : 양태광1. 병렬통신과 직렬통신- 병렬통신: 송신하고자 하는 비트에 대응되는 전송성이 각각 따로 있어서 비트 블록을 한번에전송< 장점>: 단위 시간에 다량의 데이터를 바른 속도로 전송< 단점>: 전송이 길어지면 에러 발생 가능성이 높음- 직렬통신: 동일한 전송선을 통해서 한 비트씩 전송하는 방식< 장점>: 단위시간에 다량의 데이터를 빠른 속도로 전송< 단점>: 전송이 길어지면 에러 발생 가능성이 높음2.RS 485 통신의 특징Half Duplex 방식으로 이루어 진다.하지만 RS-485의 경우 에는 송신과 수신이 같은 회선을 사용하므로 한쪽이 송신하면 다른쪽은 수신만 할 수 밖에 없다.- 최고 1.2km 까지 통신이 가능하다.거리에 비해서 통신 속도가 떨어진다는 점에 유념, 통신속도는 현장에 맞추어 결정해야 함.- RS485에서는 TRXD+, TRXD- 2가닥을 사용하여 통신한다.2가닥의 통신 선로를 통해 송신또는 수신을 한다.- Differential mode 로 송수닌을 하게된다. Differential 이라는 것은 말뜻 그래도 두 선의전위 차이를 이용하여 데이터를 보내는 것을 말한다. 즉 두 라인의 전위차가 0.2V이상이되면 논리적으로 1,-0.2V이하가 되면 논리적으로 0을 의미하게 된다는 것이다.- RS485의 가장 큰 특징은 N:N 통신이 가능하며 최대 32개의 노드 연결이 가능 하다.RS485의 경우 어떠한 장비도 마스터가 될 수 있으며 또한 슬레이브도 될 수 있다.3. 반이중 통신, 전이중 통신- 반이중 통신: 양방향 통신이 가능하지만 어느 한쪽이 송신하는 경우 상대편은 수신만 가능한통신 방식 (무전기나 모뎀을 이용한 통신에서 사용)- 전이중 통신: 동시에 양방향 르로 데이터 전송이 가능한 통신방식, 하나의 전송매체를 두개의 회선으로 사용하거나 전송 방향에 따라 별도의 전송매체를 사용4. DTE(Data Terminal Equipment, 데이터 단말장치)- 데이터처리에 관련된는 장비를 송수신 양측에서 데이터가 최종적으로 처리된다는 의미에서DTE 라고 한다.(PC, Micom Board 처럼 스스로 data를 보내거나 받는 장치이다.)5. DCE(Data Communication Equipment, 데이터 통신장비)- 사용자-네트웨크 인터페이스의 네트워크 측으로 구성되는 통신 네트워크 장비의 연결수단DTE의 Data를 전송로를 통하여 주고받도록 해주는 장치.TX/RX 제어#include #include void Putch(char ch) //tx of avr{PORTB|=0x01;// 송신 enableUDR0 = ch;// 송신데이터 버퍼 TXB0에 저장한다.while(!(UCSR0A & 0x20));}// 송신데이터 버퍼에 저장되면 UDR0는 순간 0으로 되고 송신이 끝나면 다시1로 set된다.송신을 시작해서 송신이 끝날때 까지 다른 문자를 입력할때 UDR0가 0,1 인지를 파악하고 UDR0이 0이 검출되면 전송중인 데이터가 있으니깐 데이터가 다 전송될때 까지 대기하고, UDR0이 1이 검출되면 전송할 준비가 되어있다라는 의미
7. 시리얼통신 RS232 B작성자 : 양태광1. USARTUniversal Synchronous and Asynchronous Receiver and Transmitter의 약자USART와 관련된 AVR의 포트는 TXD,RXD,XCK인데 XCK를 사용하지 않으면 사실상UART이다.-USARTA: 포트의 송수신 종작을 제어하거나 송수신 상태를 저장하는 기능을 수행한다.-RXC: USART Receive Complete, 수신 버퍼에 데이터가 있을때 set된다.-TXC: USART Transmit Complete, 송신이 완료되었을때 set된다.-UDRE:USART Data Register Empty,UDR이 새 데이터를 받을 수 있을때 set 된다.-FE:Framing Error, 수신버퍼 UDRn을 읽을 때까지 유효하며, UCSRnA레지스터를 라이트 하면 이 비트는 무조건0으로 클리어된다.-DOR:Data OverRun, 수신버퍼가 찼을 경우set 된다.-PE: Parity Error,수신버퍼에 현재 저장되어 있는 데이터를 수신하는 동안에 패리티 에러가 발생하였음을 나타내는 상태플랙이다.- U2x:Double the USART Transmission Speed, 비동기 모드에서만 유효한것으로USART 포트의 클록분주비를 16에서8로 절반만큼 낮추어 전송속도를 2배 높인다.- 동기 통신: 2개의 디바이스 사이에서 동기를 취하고 그 타이밍에 따라 데이터를 송수신한다. 데이터의 교환이 없는 사이도 제어용의 신호가 흐르고 있으므로 상대와의 동기를유지하는 것이 가능-MPCM:Multi-Processor Communication Mode, 다중 프로세서 모드를 사용한다.문자열 받기#include void putch (char data){while(!(UCSR0A&0x20));UDR0=data;}void getch(){while(!(UCSR0A&0x80));data=UDR0;return data;}int main(void){int i,j;i=0;j=0;char text[50];DDRD=0xfb;UCSR0A=0x00;UCSR0B=0x18;UCSR0C=0x06;UBRR0H=0;UBRR0L=103;while(1){text[i]=getch();if(text[i]==’r’){for(j=0;j
7. 시리얼통신 RS232 A작성자 : 양태광시리얼 통신직렬이라는 의미로 데이터 전송의 경우에는 데이터가 차례로 보내진다. 이 때문에 Ground선 이외의 데이터 전송에는 1개 선으로 족하지만 그만큼 데이터 전송속도가 저하된다.2. RS-232C컴퓨터가 외부와 자료를 주고받기 위하여 국제적으로 표준화한 테이터 통신규격의 하나이다. 데이터를 직렬전송 방식으로 전송할 때 통신회선에서 사용하는 전기적인 신호의 특성과연결장치의 형상 등 물리적인 규격을 정하고 있다.3. USARTUniversal Synchronous and Asynchronous Receiver and Transmitter의 약자USART와 관련된 AVR의 포트는 TXD,RXD,XCK인데 XCK를 사용하지 않으면 사실상UART이다.-XCK: (USART External Clock input/output): 직렬통신 포트 USART가 동기 모드로 동작 할때의 송수신 클럭 신호-비동기 통신: 통신을 하는 양쪽 장치가 데이터를 주고 받을 때 일정한 속도를 유지하는 것이 아니라, 약정된 신호에 기준하여 동기를 맞추는 통신방법.- 동기 통신: 2개의 디바이스 사이에서 동기를 취하고 그 타이밍에 따라 데이터를 송수신한다. 데이터의 교환이 없는 사이도 제어용의 신호가 흐르고 있으므로 상대와의 동기를유지하는 것이 가능ECHO BACK#include char temp;void putch (char ch){while ((UCSR0A&0x20)==0x00);UDR0=ch;}char getch (void){while((UCSR0A&0x80)==0x80);return UDR0;}int main(void){DDRE=0xfe;UBRR0H=0;UBRR0L=103;UCSR0A=0x00;UCSR0B=0x18;UCSR0C=0x06;temp=UDR0;while(1){temp=getch();putch(temp);}USART control and status register BUSART control and status register CRXCIEn,TXCIEn 비트- 송수신 완료 인터럽트 인에이블 비트→ 인터럽트를 사용하지 않으므로 0이다.UDRIEn-송신 데이터 준비완료 인터럽트 인에이블 비트→ 인터럽트를 사용하지 않으므로 0이다.RXENn-수신기 인에이블 비트이다.→1이면 수신 가능상태가 되어 동작한다.TXENn-송신기 인에이블 비트이다.→ 1이면 송신기 인에이블 비트이다.UCSZn2-전송 데이터 길이 선택 비트UCSRnC 레지스터의 UCSZn1,UCSZn0과 같이 사용된다.UMSELn: 클리어(0)이면 비동기모드, 셋(1) 이면 동기 모드로 설정된다.→ 비동기 모드를 사용하니깐 클리어 시켜준다.UPMn1,UPMn0: 패리트 모드를 사용여부→클리어 시켜준다.USBSn:stop 비트의 길이를 설정 0이면 1비트, 1이면 2비트로 설정된다.->1 이므로 stop비트는 2비트로 설정한다.UCSZn1,UCSZn0: UCSRnB의 UCSZn2와 함께 전송 데이터 비트수를 결정한다.->1이므로 8bit이다.UCPOLn: 동기모드에서만 사용된다.시리얼 통신 속도(보레이트)를 설정하기 위한 레지스터 이다.2개의 레지스터로 구성되어있다.전체는 16비트로 구성되어 있으나 보레이트를 설정하기 위해서는 bit0~bit11까지 12비트를 설정한다. 보레이트를 설정할때 레지스터에 데이터를 써야 하는데 UBRRnH에 먼저쓰고 UBRRnH에 먼저쓰고 UBRRnL에 나중에 써야한다. 만약 상위 바이트(UBRRnH)부터 쓰지 않는다면 보레이트가 설정되지 않으니 주의해야 한다.