메뉴 건너뛰기

정보자료게시판

장비/디자인/구조

지그비 통신_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
번호 분류 제목 글쓴이 날짜
공지 각종 사진들 Summa 2025.07.22
공지 꾸준히 하는 취미를 가져보기로 한다 Summa 2025.04.02
933 클라우드 플레어 방화벽 설정 Summa 2025.08.11
932 장비/디자인/구조 홈페이지 속도 지연 feat. 클라우드플레어 Summa 2025.05.28
931 메일 서버 시놀로지 메일플러스의 구조 Summa 2025.05.27
930 라이믹스 홈페이지들 상태 이상 2 Summa 2025.05.23
929 SSL 서비스에 있어 클라우드 플레어의 놀라운 점 Summa 2025.05.20
928 전기요금 아끼는 방법 - 전기요금 절약 프로젝트 Summa 2025.05.17
927 구글 제미나이 오류 Summa 2025.05.16
926 KT 인터넷 전화기 IP375 초기화하기 1 file Summa 2025.05.15
925 장비/디자인/구조 냉장고 교체 전력소비량 feat. 오래된 냉장고 Summa 2025.04.15
924 삼성 냉장고 와이파이 연결 안됨 feat. 스마트싱스 Summa 2025.04.15
923 홈팟미니 이상 해결 Summa 2025.04.01
922 맥 Numbers 넘버스에서 홈택스 txt 파일 올리기 Summa 2025.03.31
921 아이폰 듀얼심 문자 안될때 해결 방법 Summa 2025.03.26
920 장비/디자인/구조 시놀로지 클라우드플레어 DDNS 설정 Summa 2025.03.17
919 여행/맛집/음식 집밥 그리고 밥솥 Summa 2025.02.26
918 장비/디자인/구조 단렌즈를 포기하게 된 결정적 이유 Summa 2025.02.26
917 장비/디자인/구조 공부폰 / 공신폰 만드는 방법 1 Summa 2025.02.16
916 2번 서버 다운 Summa 2025.02.03
915 장비/디자인/구조 워드프레스 멀티사이트 만들기 Summa 2025.01.10
914 장비/디자인/구조 올해 산것 중 제일 잘 산것 - 전기자전거 Summa 2024.12.31
Board Pagination Prev 1 2 3 4 5 6 7 8 9 10 ... 47 Next
/ 47
위로