xbee 통신
프로그램 버전 : Arduino - 1.0
사용된 Xbee 모듈은
http://www.sparkfun.com/products/8664 이다
Xbee 모듈의 설정은
http://www.sparkfun.com/datasheets/Wireless/Zigbee/XBee-Manual.pdf 참고
기본 설정된 값은
Xbee 모듈과 컴퓨터와 UART방식으로 9600bps 로 통신하고
(물론 설정을 변경해 통신속도를 바꿀수 있다. 변경방법은 위 Manual.pdf참고)
Xbee 모듈간은 250000bps로 통신한다.
Xbee라고 다를것 없이 아두이노에서의 스케치는
softwareserial 라이브러리를 이요해서 TX, RX핀을 설정하고
다른 통신모듈과 같이 스케치 하면 된다.
(다른 통신모듈과 통신 거리, 속도, 가격 등이 다르므로
사용 목적에 맞게 선택하면 된다.)
Xbee 모듈 2개, Xbee 쉴드, Xbee explorer 사진이다.
모듈을 쉴드와, explorer에 끼우고
모듈을 장착한 쉴드를 아두이노 UNO보드에 끼운 사진이다.
각각 쉴드가 장착된 아두이노는 com4번과
explorer에 기운 Xbee는 com8번에 연결되었다.
(장치관리자에서 확인)
즉 com4-아두이노-Xbee <------통신------> Xbee-com8
결국은 한 컴퓨터의 com4에서 com8번으로 통신을 구현 했지만
이는 통신의 확인을 위한 작업 이고
응용하면
Xbee연결된 아두이노를 센서나 모터를 연결하여 외부에 두고
Xbee를 통해 컴퓨터로 센서 값이나 모터를 제어할 수 있다.
Xbee가 장착된 아두이노와 Xbee가 연결된 pc와의 통신
스케치 소스
-------------------------------------------------------------------------------
/*Xbee가 장착된 아두이노와 Xbee가 연결된 pc와의 통신*/
#include <SoftwareSerial.h>
SoftwareSerial XbeeSerial(2,3); //아두이노 2,3번 핀을 통해 통신
int a,b;
void setup(){
Serial.begin(9600);
XbeeSerial.begin(9600);
}
void loop(){
if(Serial.available()>0){
a = Serial.read(); // 시리얼 모니터에 입력된 값을 a에 저장
XbeeSerial.println(a); // Xbee를 통해 다른Xbee가 연결된 pc에 값 출력
delay(100);
}
if(XbeeSerial.available()>0){
b = XbeeSerial.read(); // Xbee가 연결된 pc에서 입력한 값 b에 저장
Serial.println(b); // Xbee를 통해 아두이노Xbee로 값을 보내고 시리얼 모니터에 출력
delay(100);
}
}
-------------------------------------------------------------------
작동영상
(Serial 모니터는 아두이노, 컴포트 마스터는 Xbee-explorer와 연결 되었다.)
'아두이노_프로세싱 > 아두이노' 카테고리의 다른 글
도트매트릭스(dot matrix) 제어 1 (3) | 2012.06.27 |
---|---|
아두이노간 xbee통신 (4) | 2012.06.27 |
스마트폰 + 블루투스 + 아두이노자동차 배선 (4) | 2012.06.27 |
안드로이드 스마트폰 + 블루투스 통신 + 아두이노 자동차 (15) | 2012.06.26 |
RC(radio control) + 아두이노 3 (2) | 2012.06.26 |