지그비 통신(COORDINATOR API-ROUTER AT) 정리
목표
건전지-센서-지그비가 연결된 센서 지그비의 신호를 지그비-아두이노-PC가 연결된 수신부 지그비가 받아 감지하는 구조 만들기
지그비 통신 테스트 소스
int readValue=0;
void setup() {
Serial.begin(9600);
}
void loop() {
if(Serial.available() > 21) {
for(int i=0; i<22; i++){
Serial.print(Serial.read(),HEX);
Serial.print(", ");
}
Serial.println();
Serial.println();
}
}
센서 지그비 회로 구성
- 1.2V 건전지 3개로 3.6V 출력을 만듦(Ni-Mh 충전 건전지 2개 2.4V로는 센서가 정상 감지 못함)
- LED-BUTTON-저항(220옴)을 연결해 버튼을 누르면 LED가 켜지는 구조를 만듦
- 각 3.6V 전원을 연결해줌
- AD4-LED의 양극으로 연결
센서 지그비 설정(ROUTER AT로 설정)
- XCTU 다운로드(https://www.digi.com/resources/documentation/digidocs/90001526/tasks/t_download_and_install_xctu.htm)
- 맥용 XCTU 프로그램도 있음
- 셋팅으로 들어가면 XBEE S2C, 작성일 기준으로, Product Family는 XB24C로, Function set 은 ZIGBEE TH Reg, Firmware Version은 4060임
- Help에서 Update Check, Update, Install 다 해주는 걸 권장하는데 시간이 좀 걸림
- ID(PAN ID) 는 아무 숫자나 해도 되는데 수신부 지그비와 일치시켜야. 여기서는 1234로
- JV(Channel Verification)은 enable(통상 채널 확인 하고 시작함)로,
- CE(Coordinator Enable)은 disable로(Router 설정임),
- AP(API enable)은 Transparent mode로(단순 통신 모드임),
- D4(Pin 11)은 Digital input[3]으로(D4로 입력신호를 받을 것임),
- IR(IO Sampling Rate)는 3E8(1초마다 수신부 지그비로 정보를 보낼 것임)로 각 설정함
수신부 지그비 회로 구성
- 지그비 아두이노 쉴드를 사용하면 비교적 쉬움(빵판으로 아두이노 연결 및 인식 시도했지만, 실패)
- 아두이노에 아두이노 쉴드를 꽂고, 그 위에 지그비를 꽂음. USB 선으로 PC와 연결
- 아두이노 쉴드에는 XBEE/USB 스위치와 RUN/PROG 스위치가 있음. 아두이노 IDE에서 프로그램을 업로드할때는 USB 쪽으로 놓고, 실행할때는 XBEE로 놓음
- RUN/PROG는 RUN으로 놓음
수신부 지그비 설정(Coordinate API로 설정)
- ID(PAN ID)는 위에서 적은 1234로
- JV(Channel Verification)은 enable로,
- CE(Coordinator Enable)은 enable(수신부 지그비는 Coordinator임)로,
- AP(API enable)은 API enable로 각 설정
잘 안될때
- 지그비가 배터리를 적게 소모해서 일단 진행하고 있는데 생각보다 설정이 복잡하고, 모듈이 상당히 비싼 편임
- 이제 ESP32와 연결해야 하는데 가능할지.
ZIGBEE S2C 명칭 및 가격
상품주문번호 | 상품정보 | 상품금액(수량) | 배송비/판매자 |
---|---|---|---|
2018091433086980 | XB24CZ7WIT-004 XBee® ZB TH(S2C) 와이어 안테나 재구매 | 75,900원 (3개) | 무료 테솔 (031-713-5988) 판매자 문의 |
참고한 영상
-
https://www.youtube.com/watch?v=odekkumB3WQ
- 친절하게 잘 설명해주고 있음