마하전자기술연구소 LOGO

제품검색 고객센터053-604-2355
기술자료실

Home > 기술자료실 기술자료실

제 목 25. 리모트 계측 로가-유니트
첨부파일

 

                  PIC16C73에 32 K아르바이트의 SRAM를 접속해 계측 데이터의
                  기록을 해, 시리얼 통신으로 PC와 접속을 할 수 있는 유니트
                  입니다. 4 채널의 데이터를 8000회 기록할 수 있습니다.
 


리모트 계측 로가-유니트

PIC16C73를 사용한 PC에 접속하는 계측 로가-입니다.
4 채널의 아날로그 데이터 를 일정 간격으로 측정해
32 K아르바이트의 메모리에 격납합니다.




【개요】

PIC16C73JW를 사용한 계측 로가-로, 4 채널의 아날로그 데이터 를
지정한 일정 간격으로 측정해, 그 데이터를 32 K아르바이트의 스태틱
RAM에 격납 기록합니다.
PC와 시리얼 통신으로 접속해, 기록한 측정 데이터의 읽어들여,
계측 간격 설정등을 실시할 수가 있습니다.

【로가-유니트의 사양】

이번 제작한 계측 로가-유니트의 기능 사양은 아래와 같이가 되고 있습니다.

·전원  :DC6~12 V
      소비 전류 PC 접속 상태로 상시 약 35 mA
·계측  :4 채널 8비트 A/D변환
      최대 입력은 가변 가능 약 0.5 V~3V
·간격  :계측 주기 간격은, 10 msec 단위로 10 msec~1sec

·기억용량:32 K바이트스타틱메모리

·PC 접속:USA RT에 의한 시리얼 통신 접속
        non-proceduat


【구성, 회로】

전체의 회로 구성은 밑그림과 같이 되어 있습니다. 아날로그 신호를 증폭
하는 앰프부, 전체를 제어하는 PIC, 데이터를 격납하는 메모리, 주소
신호를 공급하는 카운터, PC와의 접속을 하는 RS232C 인터
페이스부트 전원으로부터 완성되어 있습니다.

PIC는 할 수 있는 한 고속으로 의 아날로그 신호의 수집을 할 수 있도록(듯이), 클락
(은)는 20 MHz를 사용했습니다. 이것으로 풀 스피드로 하면, 1 msec 이하에서의
고속으로 의 데이터 수집도 가능합니다.
반대로, 훨씬 긴 주기에 계측 하도록 하면, 소비 전력도 적기 때문에
현장에서 몇일이나 데이터 수집을 실시할 수도 있습니다.



이것을 실현하는 회로도는 아래와 같이가 되고 있습니다. 아날로그 앰프의 부분은
4 채널분이므로, 같은 앰프가 4 회로분 있습니다. 이 앰프에는,
5 V단전원으로 거의 0 V에서 5 V까지 출력이 가능한 나쇼세미의LMC662
사용했습니다.
메모리에는 완전 정적인 32 K아르바이트 용량이 있는, NEC의μPD43256A
(을)를 사용했습니다만, 이것에는 콘파치 제품이 몇사인가 있기 때문에 어떤 것에서도
OK입니다.

PIC에는
PIC16C73를 사용했습니다만, 사실이라면, 최신 기종의PIC16F873
사용하고 싶은 곳입니다. 이것이라면 플래쉬 메모리로 개발도 하기 쉽고,
무엇보다도A/D변환이 10비트있으므로, 아날로그 계측 로가-로서
실용적인 정밀도로 할 수가 있습니다.

 ★ 계측 로가-회로도(클릭하면 직접 볼 수가 있습니다)

 ★ 계측 로가-패턴도(다운로드해 WinBoard로 봐 주세요)

    (WinBoard에 대해서는 이쪽에 설명이 있습니다)

【SRAM와의 접속】

이번 로가-는 데이터 기억용으로서 32 K아르바이트의 SRAM를 사용했습니다.
이 IC메모리와의 접속은, 밑그림과 같이 하고 있습니다. 즉, 주소
지정은 외부부착의 카운터 IC(74 HC393)로 실시합니다. 이 주소용
카운터의 제어는 포토 C(RC4, 5)로 실시합니다만, 클리어와 카운트업
만으로 제어하고 있습니다.
 데이타 버스는 직접 포토 B에 접속해 리드/라이트의 제어는 포토 C
(RC2, 3)(으)로 실시합니다. 동작의 자세한 것은 아래와 같이로 합니다.
이 때 포토 B는 상시 입력 모드로 해둘 필요가 있습니다. 그렇게 하지 않으면
출력끼리가 연결되게 되어 큰 전류가 PIC로부터 흘러 버립니다.
주소의 카운트업의 신호(RC5)의 출력을 RC0에도 입력해, 타이머 1
의 카운트업 신호로서도 사용합니다. 이 타이머 1으로 메모리에 써 입응
(이)다 데이터 개수의 관리를 합니다.




CS

OE

WE

메모리 동작 모드

H

×

×

비선택

L

H

H

출력 디스에이불

L

×

L

라이트

L

L

H

리드

(1) 리드 동작
   ·주소 카운터를 클리어 한다  ----> RC4를 1으로 하자 마자 0에 되돌린다
   ·포토 B를 입력 모드로 한다
   ·SRAM의 OE단자를 Low로 한다 ----> RC2에 0을 출력
--→·포토 B로부터 입력         ----> Wreg에 수중에 넣는다
|   ·SRAM의 OE를 바탕으로 되돌린다     ----> RC2를 1에 되돌린다
----·주소를 카운트업한다  ----> RC5를 1으로 하자 마자 0에 되돌린다

(2) 라이트 동작
   ·주소 카운터를 클리어 한다  ----> RC4를 1으로 하자 마자 0에 되돌린다
   ·포토 B를 출력 모드 한다
--→·기입 데이터를 포토 B에 세트
|   ·SRAM의 WE를 순간 Low로 한다 ----> RC3를 0으로 하자 마자 1에 되돌린다
----·주소를 카운트업한다  ----> RC5를 1으로 하자 마자 0에 되돌린다    


【조립해 외관】

완성된 계측 로가-유니트의 외관은, 아래와 같이 사진과 같이 1매
의 프린트 기판상에 모든 부품이 실장되고 있습니다.
기판 사이즈는 75×100 의 Sunhayato의 포저티브 감광 기판 10 K 그
입니다.


중심으로 PIC16C73가 배치되고 있습니다.
상부가 USA RT의 PC 인터페이스
좌측이 SRAM와 주소용의 카운터 IC
우측이 아날로그 입력용의 앰프 회로입니다.

앰프 회로에는 각각 게인 조정용의
볼륨이 붙어 있어 각각 독립
에 최대 입력 전압을 설정할 수 있습니다.

시리얼 인터페이스용으로는, MAX232C
(을)를 사용했으므로 주위를 전해 콘덴서가
둘러싸는 것 같은 기분이 들었습니다.

프린트 기판의 뒤편입니다.
메모리의 주위의 패턴이 많아, 핀간이나
IC의 사이에 상당한 가는 패턴을
통하고 있습니다.
EDA 툴사와 이것들이 편하게 할 수 있습니다.


전체의 기판상의 레이아웃은 밑그림과 같이 되어 있습니다.



【프로그램의 개요】

프로그램 전체적으로는 PC의 시리얼 연결기에 접속해, PC
(으)로부터 리모트 콘트롤 해 사용하는 「리모트 계측 로가-」(이)라고 하는 기능으로 만들어
있습니다.
 PC로부터의 커멘드와 기능은 아래 표와 같이 했습니다만, 이것은 자유롭게
프로그램으로 추가 변경할 수 있기 때문에 챌린지해 봐 주세요.
파라미터등의 데이터 체크는 생략 하고 있기 때문에 주의.
이 근처는 사용하는 (분)편이 자유롭게 생각해 변경해 받으면 좋을까 생각합니다.

커멘드

파라미터

기능

1(31)

없음 이니셜라이즈
각종 내부 파라미터를 초기화한다

2(32)

××
(10 진수 2자리수)
계측 주기의 설정
10 msec 단위×(파라미터치 01~99)

3(33)

없음 로그 개시
설정한 주기에 계측 해, 보존한다

4(34)

없음 데이터 업 로드
3으로 격납한 로그 데이터를 16 진수 2자리수의 4조를 정리해 CSV 형식에서 PC에 보낸다

5(35)
( ) 안ASCII

없음 연속 계측
지정한 주기로, 계측 해 동시에 PC에
계측 데이터를 보낸다. 4 채널 1조로
각 16 진수 2자리수 4조, CSV 형식


 프로그램의 기본적인 흐름은 밑그림의 플로차트(flow chart)와 같이 되어 있습니다.
메인 루틴에서는, 상시 USA RT의 수신을 체크해 수신 데이터가 있으면
그것을 수중에 넣어, PIC의 Bank2 레지스터 에리어에 격납합니다. 그리고 동시에
개행 코드의 확인을 하고 있습니다. 수신한 데이터가 개행 코드이면,
그때까지 수신한 데이터의 내용의 해독으로 옮겨, 각 커멘드에 따른 처리에
진행됩니다. 이 통신에는 세치기는 사용하고 있지 않습니다.

 실제의 계측은 인터벌 타이머의 세치기의 타이밍에 실행합니다.
즉, 10 msec 주기의 인터벌 타이머 세치기의 회수를 카운트 해
지정한 계측 간격이 되면, 실제의 계측을 실행해 메모리에 데이터를
격납합니다. 4 채널분 연속해 계측 실행을 하고 있습니다.
이 메모리리드·라이트때에, 포토 B의 입출력 모드를 변경하기 위해(때문에),
Bank를 바꿀 필요가 있습니다만, 여기서 중요한 주의가 있습니다.
Bank가 바뀌어 Bank1의 한중간에, 인터벌 타이머의 세치기가
들어가면(자), 세치기 처리가 정상적으로 행해지지 않고, 비정상인 처리를 해 버립니다.
거기서, 이 Bank 전환중의 사이는, 세치기 금지로 해 실행할 필요가
있습니다.( 나도 당분간 이것으로 고민했습니다. )

계측의 회수의 카운트는 타이머 2를 사용하고 있습니다. 즉, 메모리아드레스
의 카운트업 지령이 되는 신호로 동시에 타이머 2의 카운트업도 실행
해, 메모리에 격납한 데이터 개수를 카운트 하고 있습니다.
PC로부터의 데이터 전송 커멘드때로는, 이 타이머 2의 개수만
데이터를 송신합니다.

PC와의 송수신을 위해서(때문에), 몇개의 메세지를 출력하도록(듯이)
했습니다. 이 메세지의 데이터는 테이블을 사용해 RETLW 명령으로
차례차례 꺼내도록(듯이) 했습니다. (TEXT와 TABLE 써브루틴으로 실행)


상기 프로그램 플로우에 따른 프로그램의 원시 파일은 아래와 같이입니다.
다운로드해 MPLAB로 사용해 주세요.


  ★ 계측 로가-프로그램 파일










목록보기

www.1chip.com, www.1chip.co.kr
www.micom114.com
자료실바로가기

대구광역시 북구 산격2동 1629 산업용재관 10동 13호 (2층) / Tel. 053-604-2355 / Fax. 053-383-2354 / E-mail. maha@paran.com