====== Adin ======
''Variable = Adin(Channel)''
| //Variable : 결과가 저장될 정수형 변수 // |
| //Channel : AD입력 채널 (I/O 포트번호가 아님) // |
==== 설명 ====
입력중인 아날로그 값을 읽어서 지정한 변수에 저장합니다.
==== 사용예 ====
Const Device = CB280 '이 예제프로그램은 CB280에서 실행가능합니다.
Dim A As Integer
Input 24 'CB280의 경우 24번포트가 AD채널0번입니다.
Wait 500
Do
A = Adin(0) '0번 채널에서 A/D변환을 해서 변수 A에 저장합니다.
Debug Dec A,Cr '결과를 Debug창에 표시합니다.
Wait 500
Loop
==== 추가설명 ====
=== 코어모듈에서의 AD입력 ===
코어모듈의 모델별로 AD입력채널 포트가 다릅니다.
이 표에서 나열한 A/D는 모두 10비트 AD입니다. 결과값은 0부터 1023사이의 값이 됩니다.
^채널 ^CB210 ^CB220 \\ CB320 ^CB280 \\ CB380 ^CB290 ^CT1721C ^CB405 \\ CB400 ^CB405RT ^
|0 |I/O 16 |I/O 0 |I/O 24 |I/O 8 |I/O 0 |I/O 16 |I/O 16|
|1 |I/O 17 |I/O 1 |I/O 25 |I/O 9 |I/O 1 |I/O 17 |I/O 17|
|2 |I/O 18 |I/O 2 |I/O 26 |I/O 10 |I/O 2 |I/O 18 |I/O 18|
|3 |I/O 19 |I/O 3 |I/O 27 |I/O 11 |I/O 3 |I/O 19 |I/O 19|
|4 |I/O 20 |I/O 4 |I/O 28 |I/O 12 |I/O 4 |I/O 20 |I/O 20|
|5 |I/O 21 |I/O 5 |I/O 29 |I/O 13 |I/O 5 |I/O 21 |I/O 21|
|6 | |I/O 6 |I/O 30 |I/O 14 |I/O 6 |I/O 22 |I/O 22|
|7 | |I/O 7 |I/O 31 |I/O 15 |I/O 7 |I/O 23 |I/O 23|
|8 | | | | | |I/O 32 | |
|9 | | | | | |I/O 33 | |
|10 | | | | | |I/O 34 | |
|11 | | | | | |I/O 35 | |
|12 | | | | | |I/O 36 | |
|13 | | | | | |I/O 37 | |
|14 | | | | | |I/O 38 | |
|15 | | | | | |I/O 39 | |
=== CB405RT에서의 AD입력 ===
CB405RT는 추가적으로 16비트 AD 8채널이 내장되어 있습니다.
^핀번호 \\ (I/O포트번호가 아님) ^채널 ^
|45 |0|
|46 |1|
|47 |2|
|48 |3|
|49 |4|
|50 |5|
|51 |6|
|52 |7|
다음은 CB405RT에서 16비트 AD입력을 받아 Debug터미널에 표시하는 예제프로그램입니다.
CB405RT에서는 Adin대신 Hadin함수를 사용합니다.
#include "CB405RT"
Dim A As Integer
Wait 500
Do
A = HAdin(0) '0번 채널에서 A/D변환을 해서 변수 A에 저장합니다.
Debug Dec A,Cr '결과를 Debug창에 표시합니다.
Wait 500
Loop
=== 코어모듈에서 AD사용시 주의사항 ===
코어모듈의 AD변환기는 추가적인 LPF 및 프로텍션 회로가 필요합니다.
코어모듈에 직접 센서를 연결할 경우 예상치않은 결과값이 입력되거나, 정전기 유입등으로 인해 코어모듈이 파손될 수 있습니다.
AD입력 보호회로와 LPF(노이즈 제거회로)를 추가하신뒤 사용하시기 바랍니다.
=== MSB시리즈에서의 AD입력 ===
일부 MSB시리즈 (예: MSB612RA-DC)에서는 A/D입력 기능을 갖추고 있으며, 내부에 LPF와 보호회로가 들어있습니다.
따라서, 곧바로 센서등과 연결할 수 있습니다.
MSB612RA-DC모델의 경우 0~3채널은 0~20mA입력, 4~7채널은 0~10VDC입력입니다.
다음은 MSB6124A-DC모델에서의 AD사용 예제 프로그램입니다.
#Include “MSB6XX”
Dim A As Integer
Wait 500
Do
A=Adin(0) ' 0~20mA입력을 받아서 A에 결과값을 저장합니다.
Debug Goxy,5,3
Debug dec5 A
Delay 200
Loop
[[cubloc:|명령어 목록으로 가기]]