메뉴 건너뛰기

정보자료게시판

장비/디자인/구조

지그비 통신_COORDINATOR API에서 ROUTER AT로 명령 보내기

by 라키 posted Sep 16, 2018
?

단축키

Prev이전 문서

Next다음 문서

크게 작게 위로 아래로 댓글로 가기 인쇄
?

단축키

Prev이전 문서

Next다음 문서

크게 작게 위로 아래로 댓글로 가기 인쇄

지그비 통신_COORDINATOR API에서 ROUTER AT로 명령 보내기

목표

지그비-아두이노-PC가 연결된 송신부 지그비가 건전지-LED-지그비가 연결된 수신부 지그비에게 명령을 내려 LED를 껐다 켰다 하는 구조 만들기

테스트 소스

int led=13;

void setup() {
  pinMode(led,OUTPUT);
  Serial.begin(9600);
}

void loop() {
  digitalWrite(led, HIGH);
  setRemoteState(0x5);
  delay(5000);
  digitalWrite(led,LOW);
  setRemoteState(0x4);
  delay(5000);
}

void setRemoteState(char value)
{
  Serial.write(0x7E); // start byte
  Serial.write((byte)0x0); // high part of length (always zero)
  Serial.write(0x10); // low part of length (
  Serial.write(0x17); // 0x17 is a remote AT command
  Serial.write((byte)0x0); // frame id set to zero for no reply
  // ID of recipient, or use 0xFFFF for broadcast
  Serial.write((byte)0x0);
  Serial.write((byte)0x0);
  Serial.write((byte)0x0);
  Serial.write((byte)0x0);
  Serial.write((byte)0x0);
  Serial.write((byte)0x0);
  Serial.write(0xFF);
  Serial.write(0xFF);

  Serial.write(0xFF);
  Serial.write(0xFE);

  Serial.write(0x02);

  Serial.write('D');
  Serial.write('3');

  Serial.write(value);

  long sum = 0x17 + 0xFF + 0xFF + 0xFF + 0xFE + 0x02 + 'D' + '3' + value;
  Serial.write(0xFF - (sum & 0xFF));
}

수신부 지그비 회로 구성

  • 1.2V 건전지 3개로 3.6V 출력을 만듦(Ni-Mh 충전 건전지 2개 2.4V로는 센서가 정상 감지 못함)
  • D3번-LED-저항(220옴)을 연결
  • 각 3.6V 전원을 연결해줌

수신부 지그비 설정(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로(단순 통신 모드임)로 각 설정함

송신부 지그비 회로 구성

  • 지그비 아두이노 쉴드를 사용하면 비교적 쉬움(먼저 아두이노 쉴드를 이용해 지그비에 프로그램이 업로드 된 다음에는 빵판으로 아두이노와 연결하면 작동함!)
  • 아두이노에 아두이노 쉴드를 꽂고, 그 위에 지그비를 꽂음. 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와 연결해 센서가 정보를 받아 자동으로 릴레이를 동작시키고 그 정보를 Blynk로 알려주면 핸드폰으로 동작상태를 확인

참고한 영상


List of Articles
번호 분류 제목 글쓴이 날짜
56 장비/디자인/구조 [아두이노] 릴레이 Digital Write, LOW 시 릴레이 On(전원 공급), 왜? 숨마 2022.03.20
55 장비/디자인/구조 스크린타임 특정 사이트 항상 허용 숨마 2022.03.20
54 장비/디자인/구조 배경 사람 등 지우기 어플 숨마 2022.03.20
53 장비/디자인/구조 Lellki 지그비 멀티탭 설정하기 숨마 2022.03.21
52 장비/디자인/구조 Blynk 대신 Arduino IoT Cloud를 써볼까?? 숨마 2022.03.27
51 장비/디자인/구조 더존 자료수집 및 자동분개 수집실패 숨마 2022.04.01
50 장비/디자인/구조 기다리고 있는 것들, 구매한 것들 간단 코멘트 숨마 2022.04.04
49 장비/디자인/구조 민팃 휴대폰 팔기 숨마 2022.04.06
48 장비/디자인/구조 XE | 쓰기 버튼 클릭시 권한이 없습니다 대신 로그인 화면으로 이동하기 숨마 2022.04.19
47 장비/디자인/구조 xe 소셜 로그인, 세상 편하다. 1 MsjcLaki 2022.04.21
46 장비/디자인/구조 SKT 3G 통화품질 불량, 갑자기 서비스 없음 MsjcLaki 2022.04.21
45 장비/디자인/구조 xe 소셜로그인 설정 기본 자료 MsjcLaki 2022.04.21
44 장비/디자인/구조 미래에셋페이 결제 오류 MsjcLaki 2022.04.22
43 장비/디자인/구조 egv70 대기 중 MsjcLaki 2022.05.01
42 장비/디자인/구조 코스트코 수납상자 철거 중 1 Summa 2022.05.05
41 장비/디자인/구조 싱크대 상부장 위로 여닫이 고정 안될때 Summa 2022.05.12
40 장비/디자인/구조 서재 실링팬 설치기 file Summa 2022.05.13
39 장비/디자인/구조 텐트 실링 삭아서 떨어질때 Summa 2022.05.20
38 장비/디자인/구조 트로드프리 온오프 버튼 잘 동작 안할때 Summa 2022.05.30
37 장비/디자인/구조 이케아 트로드프리 숏컷 버튼 1 Summa 2022.05.31
Board Pagination Prev 1 ... 6 7 8 9 10 11 12 13 14 15 Next
/ 15
위로