SIM800L GPRS 모듈을 아두이노와 AT 명령어로 연동하기
부품 및 소모품
| 부품 |
수량 |
| 아두이노 우노 (Arduino UNO) |
1 |
| SIM800L GPRS 모듈 |
1 |
| 1N4007 고전압/대전류 다이오드 |
1 |
모듈 전원 보호용 |
필요 도구
- 디지털 멀티미터 (Mastech MS8217 등)
- 브레드보드 170핀
- 서보 모터용 프리미엄 수-수 점퍼 와이어
프로젝트 소개
아두이노로 휴대폰 연결 기능을 구현하고 싶다면 GPRS 모듈을 사용하는 것이 가장 간편합니다. 기존 프로젝트들은 오래된 휴대폰을 활용하는 경우가 많지만, 커스터마이징이 어렵습니다. SIM800L 모듈을 아두이노와 함께 사용하면 원하는 대로 프로젝트를 만들 수 있습니다.
배선 (가장 중요!)
배선 실수로 모듈이 타버릴 수 있으니 신중하게 연결하세요.
- 아두이노와 SIM800L 모듈 연결 (상세 이미지 참조)
- 안전을 위해 아두이노 5V 핀에서 다이오드(1N4007)를 거쳐 SIM800L에 전원 공급 (순방향: 아두이노 → 다이오드 → 모듈 VCC)
- SIM 카드 방향 확인 (슬롯 표면에 인쇄됨)
코딩 및 AT 명령어 테스트
- 아두이노 IDE 실행
- 코드 업로드 (아래 참고)
- Tools > Serial Monitor 열기
- 설정: 보드레이트 9600, 줄바꿈 'Both NL & CR' 선택
- 모듈 작동 확인: 다른 전화기로 SIM 번호에 걸어 다이얼 톤 들리는지 확인
- 시리얼 모니터에
AT 입력 후 Enter → OK 응답 확인
- 이후 수천 가지 AT 명령어로 SMS, 통화, 데이터 통신 등 테스트 가능
코드
/* SIM800L GPRS 모듈 AT 명령어 테스트
Programmed by iakbasnayaka for www.setnfix.com */
#include <SoftwareSerial.h>
SoftwareSerial Sim800l(10, 11); // RX, TX
void setup() {
Serial.begin(9600);
Sim800l.begin(9600);
}
void loop() {
while (Sim800l.available()) {
Serial.write(Sim800l.read());
}
while (Serial.available()) {
Sim800l.write(Serial.read());
}
}
커스텀 파트 및 인클로저
모듈 전원 공급 시 1N4001 다이오드 필수 사용 (이미지 참조)
회로도
회로도 이미지 참조 (다이오드 포함)