현재, 국내 CNC 공작 기계의 서보 모터 에는 일반적으로 증분 인코더가 장착되어 있으며 증분 엔코더의 정확도는 너무 높지 않고 출력은 평행 신호입니다. 정확도를 향상 시키려면 인코더의 설계를 높여야합니다. 평행 신호의 출력을 늘리고 증가시켜 서보 장치와 인코더 사이의 장거리 통신에 도움이되지 않습니다. 절대 엔코더는 정확도가 증분 엔코더의 정확도보다 몇 배나 높다는 점을 제외하고 사용됩니다. 고속 직렬 커뮤니케이션은 장거리 통신을위한 통신 라인을 절약합니다. 인코더의 다른 쪽 끝에서 CPLD 및 절대 엔코더는 고속 직렬 통신에 사용됩니다. 그런 다음 CPLD는 수신 된 인코더 정보를 병렬 데이터 전송으로 변환합니다. 서보 장치의 DSP는 산술 제어를 수행합니다. 이 논문은 CPLD와 절대 인코더 사이의 고속 직렬 통신의 소프트웨어 및 하드웨어 설계를 제공합니다.
하드웨어 디자인
하드웨어는 주로 전원 공급 장치, CPLD 및 주변 회로 및 절대 인코더 인터페이스 회로의 세 가지 모듈로 구성됩니다.
전원 모듈
전원 모듈은 그림 1과 같이 스위칭 전원 공급 장치 회로와 DC/DC 전원 공급 장치 칩으로 구성됩니다.

그림의 스위칭 전원 공급 장치는 220V AC 그리드 전압을 +5V, +15V, -15V로 변환합니다. 스위칭 전원 공급 장치는 전원 그리드의 다양한 간섭을 걸러 낼 수 있으며, 스위칭 전원 공급 장치의 변압기는 220V AC이고 출력은 + 5V, + 15V, -15V가 분리되어 있으며 내부 회로는 TL431을 사용하여 조정합니다. 스위치 튜브의 전도 펄스 폭이 있으므로 스위칭 전원 공급 장치의 간섭, 안전, 안정성 및 전압 조절이 더 좋습니다. TPS7333은 DC/DC 칩입니다. +5V DC 전압은 CPLD에서 사용하기 위해 +3.3V의 안정적인 DC 전압으로 변환됩니다. TPS7333은 더 나은 전환 효율, 신뢰성 및 전압 조절을 가지고 있습니다. 전압 범위 +3.77V- +10V에서 사용할 수 있습니다. +3.3V를 변환하면 입력 전압이 너무 높아서 CPLD가 소진됩니다.
CPLD 및 주변 회로 모듈
CPLD 및 주변 회로 모듈은 주로 CPLD, CPLD 프로그래밍 다운로드 인터페이스 회로 (JTAG 인터페이스), DSP 인터페이스 회로, 활성 크리스탈 발진기, 레벨 변환 회로 및 ADM485 및 주변 회로 (엔코더와의 통신을 담당하는 인터페이스 회로)로 구성됩니다. . 그림 2).

이 디자인 CPLD는 Altera의 Max II에 속하는 Altera의 EPM570T144C5를 사용합니다. Max II는 Max I보다 비용이 낮으며 전력이 적습니다. 장치는 더 많은 매크로 셀을 가지며 장치 지연은 6ns 내에 제어됩니다. 높은 비용 성능으로 EPM570T144C5에는 570 개의 마크로셀이 있습니다. 칩의 핀 수는 144 개이며 그 중 116 개는 I/O 포트를 사용할 수 있으므로이 칩의 자원이 충분합니다. CPLD는 주로 절대 인코더와의 고속 직렬 통신을 담당하며 DSP 명령에 의해 제어되어 인코더 데이터 및 기타 정보를 DSP에 동시에 전달합니다.
JTAG 인터페이스는 주로 실행 파일을 CPLD로 다운로드하고 PC에 Altera Company -Quartus II의 개발 환경을 설치 하고이 개발 환경에서 작성된 VHDL 프로그램을 컴파일하여 컴파일이 오류가 없도록하는 데 사용됩니다. 그리고 기능이 구현됩니다. 다운로드 케이블을 JTAG 인터페이스에 연결하고 Quartus II가 제공 한 프로그래밍 다운로드 도구를 통해 CPLD 보드를 다운로드하십시오.
DSP 인터페이스는 8 개의 데이터 라인, 3 개의 주소 라인 및 1 개의 제어 라인으로 구성됩니다. 8 개의 데이터 라인은 인코더 데이터 및 기타 정보 전송을 담당합니다. 3 개의 주소 라인은 CPLD 터미널에서 DSP 명령을 전송하고 디코딩을 담당합니다. CPLD는 디코딩 된 명령에 따라 인코더 데이터 또는 기타 정보를 DSP를 통해 8 개의 데이터 라인으로 전송합니다. 제어 라인은 주로 CPLD 및 DSP의 동기 제어를 완료합니다.
20m 활성 크리스탈 발진기는 주로 CPLD에 대한 참조 클록을 제공합니다. 시계 신호의 구동에 따라 CPLD는 인코더와 통신하기 위해 2.5MB/s의 보드 속도를 생성하고 일부 논리 제어 신호에 대해 10mHz 시계를 생성합니다. 20mHz의 클럭 주파수를 제공하려면 전원 공급 장치에서 3.3V DC 전압이 필요합니다.
CPLD의 코어 및 I/O 포트에는 ADM485 및 절대 인코더에 필요한 공급 전압이 3.3v의 공급 전압이 필요하기 때문에 레벨 시프팅 회로는 주로 3.3V로 5V 또는 5V ~ 3.3V를 변환하는 데 도움이됩니다. 공급 전압과 I/O 포트 드라이버 회로는 모두 5V이므로 레벨 변환 칩 LVC4245A로 3.3V를 5V 또는 5V ~ 3.3V로 변환해야합니다.
ADM485 및 주변 회로는 CPLD와 절대 인코더 고속 통신 간의 하드웨어 연결입니다. ADM485의 작동 전압은 5V이고 최대 통신 속도는 5MB/s입니다. 도킹 통신을 위해 2 개의 ADM485 칩을 사용하면 통신 라인의 간 회의 능력을 향상시킬 수 있으며 가장 긴 전송 거리는 1.2km에 도달 할 수 있습니다. 주변 회로는 그림 3에 나와 있습니다. 점선의 오른쪽 절반은 절대 엔코더의 주변 회로에 속합니다. 풀업 및 풀다운 저항은 1k Ohms이고, 현재 제한 저항은 220 옴, ADM485 SDAT는 데이터 출력 핀입니다. ADM485는 SRQ입니다. DE의 DE는 외부 제어 핀 이며이 핀은 CPLD에 의해 제어됩니다. RS-485 통신 프로토콜은 반중이므로 ADM485는 데이터를 전송하거나 데이터를 수신하는 상태에있을 수 있습니다. ADM485가 De High 일 때 ADM485는 데이터 출력 상태에 있습니다 (즉, CPLD는 데이터를 수신합니다). ADM485의 DE가 낮은 수준 인 경우 ADM485는 데이터 입력 상태에 있습니다 (즉, CPLD는 데이터를 보냅니다).
