장거리 RF 통신 모듈 APC220
Zigbee 처럼 복잡한 프로토콜에 대한 이해 없이도 간편하게 사용할 수 있는 RF 모듈들이 꽤 있습니다. HC-11 433MHz RF 모듈이 대표적인 예입니다만 이보다 조금 더 고급형(?) 모듈로도 1:N 네트워크를 구성할 수 있습니다. HC-12, APC220 모듈이 대표적입니다. 고급형 모듈이래봐야 커버리지가 넓다 뿐이지 사용법 자체는 비슷합니다.
여기서 소개할 모듈은 APC220 모듈입니다. 먼저 스펙을 보면
- Transmit distance up to 1000m (line of sight) @9600 bps
- 256 bytes data buffer
- High sensitivity (-112dbbm @9600 bps)
- GFSK modulation
- UART/TTL interface
- Embedded watch dog
- Size: 37 x 17 x 6.5 mm
도달 거리가 1000m 까지니 실외 활동이나 RC 장치에 사용하기 좋아보입니다.
연결 방법도 쉽습니다. 일단 Pin out 을 보면…
1, 2, 4, 5 핀만 일반적인 Serial 연결 방법대로 연결해주면 됩니다.
위 이미지에서는 아두이노의 D0, D1 핀(하드웨어 시리얼)과 연결했는데 다른 디지털핀 2개에 연결하고 SoftwareSerial 라이브러리를 이용해서 제어해도 됩니다. 이 편이 더 일반적인 방법이겠네요.
위 처럼 D0, D1 핀에 연결하면 Serial 클래스 함수들로 데이터를 전송할 수 있습니다. 아래 예제는 echo 예제입니다. APC220으로 수신한 데이터를 그대로 다시 돌려주는 예제입니다.
//The sketch is tested on: Romeo v2 (Leonardo) void setup() { Serial.begin(9600); //Set serial baud rate to 9600 delay(100); Serial.println("Hello!"); //print out hello string } void loop() { delay(100); // short delay if(Serial.available()) { Serial.write(Serial.read()); } }
APC220은 기본 설정이 아래와 같이 맞춰져 있습니다. 참고하세요.
- Baud Rate: 9600 bps
- Bits: 8
- Parity: None
- Stop bit: 1
- RF Frequency: 431 MHz
- Air Rate: 9600 bps
- Output Power: 20mw
FTDI (USB to UART) 모듈을 이용해 PC에 연결하면 PC에서 전용 프로그램을 실행해 제어할 수 있습니다.
RFMagic 프로그램 APC22X_V12A.exe 를 설치해서 데이터 송수신을 모니터링 할 수 있습니다. Download RF-Magic Configure software
참고자료
- 아래 링크로 가시면 자세한 설정 변경 방법이 있으니 참고하세요.
- http://www.dfrobot.com/wiki/index.php?title=APC220_Radio_Data_Module(SKU:TEL0005)
- 상세한 내용은 스펙 문서를 참고하세요.
- http://www.dfrobot.com/image/data/TEL0005/APC220_Manual_en.pdf