본문 바로가기

포트폴리오

아두이노로 쉽게 만드는 노트북 시건장치

728x90
반응형
SMALL

학교 대회 출품용으로 RFID 방식 노트북 시건장치를 만들었다.

시건장치 모습

사진의 하얀 버튼이 잠그는 버튼이고, 파란 부분에 RFID 칩을 가져다 대면 서브모터가 돌아가 잠금이 해제되는 방식이다.

#include <MFRC522.h>
#include <Servo.h>
#include <SPI.h>
#define SS_PIN 10
#define RST_PIN 9
#define DOOR_PIN 8
#define openpin 2

Servo myServo;

#define REGCARD 2 //등록된 카드 개수

int per [][4] = {
  {103, 156, 147, 174}, //카드 1
  {21, 141, 179, 107}, //열쇠고리

};

MFRC522 rc522(SS_PIN, RST_PIN);

int doorstate = 0;
int doorst = 0;

void setup() {
  pinMode(2, INPUT_PULLUP);
  myServo.attach(3);
  Serial.begin(9600);
  SPI.begin();
  rc522.PCD_Init();                              // Init MFRC522 card
  Serial.println("doorlock started!");
  pinMode(DOOR_PIN, INPUT);
  pinMode(openpin, INPUT_PULLUP);
}

void loop() {
  if(digitalRead(openpin)==LOW)
  {
    noteclose();
  }
  if (!rc522.PICC_IsNewCardPresent()) return;    // Look for new cards
  if (!rc522.PICC_ReadCardSerial()) return;  // Select one of the cards
  for (int k = 0; k < 2; k++)
  {
    if (rc522.uid.uidByte[0] == per[k][0])
    { 
      if (rc522.uid.uidByte[1] == per [k][1] && rc522.uid.uidByte[2] == per [k][2] && rc522.uid.uidByte[3] == per [k][3])
      {
        dooropen();
      }
    }
  }
  if (doorstate == 0)
  {
    unknowncard();
  }
  doorstate = 0;
}

void noteclose()
{
    Serial.println("door close!");
    myServo.write(90);
}

void dooropen()
{
  Serial.println("door opened!");
   myServo.write(0);
  doorstate = 1;
}

void unknowncard()
{
  Serial.println("Unknown card...");
  Serial.println("PLZ Register card tag -- ");
  Serial.print(rc522.uid.uidByte[0]);
  Serial.print(",");
  Serial.print(rc522.uid.uidByte[1]);
  Serial.print(",");
  Serial.print(rc522.uid.uidByte[2]);
  Serial.print(",");
  Serial.print(rc522.uid.uidByte[3]);
  Serial.println("");
}

코드는 요런 식으로 어찌 저찌 코딩하면 된다. 따로 코드 리뷰는 하지 않는다...

시건 장치를 고정시켜주는 트레이

대부분을 3D프린터로 만들었기 때문에 3D 빌딩을 위해 

https://www.thingiverse.com/

 

Thingiverse - Digital Designs for Physical Objects

Thingiverse is a universe of things. Download our files and build them with your lasercutter, 3D printer, or CNC.

www.thingiverse.com

여기서 파일을 다운받아 약간의 수정 후 3D 프린터로 뽑아내면 된다.

 

뽑아내는 중...

15~30분이면 작업 완료!!

잠금 장치 부분
장치 받침 부품

두 번째 부품(장치 받침 부품)의 앞부분에는 서브모터가 들어가고 나머지 직사각형 모양에는 회로기판과 선들 등이 들어가게 된다.

완성품,,,

조금 조잡해 보이지만. 가장 중요한 부분은 저 기판과 RFID 리더 그리고 잠금장치 그리고 아두이노이다.

9V짜리 배터리로는 서브모터의 전력 소비를 이겨낼 수 없어서 편의점에서 4000mA짜리 보조배터리를 연결하였더니

매우 잘된다!

꼭 알아야 하는 점은 서브모터가 전력 소비가 은근히 크다는 거!

완성품의 동영상, 시연 영상이다.

최종 시연 연상

파란색 저 칩이 RFID 칩이다. 참, 동영상 퀄리티는 발전할 예정이다.. 이번 동영상의 퀄리티보단..

노트북 역할을 해준 저 노트북 모형은 사실 다이소에서 나무 식판 두 개를 이어 붙인 것이다.

아두이노 코딩, 시건장치 프린팅, 받침 부분 프린팅 취합 까지 하여 대략 3일정도 걸린 듯하다.

저 작품으로 교내 대회 상을 탔다. 생애 첫 발명품 경진대회 작품치곤 생각 밖으로 잘 나와서 뿌듯했다.


3D 프린트를 사용하게 해 준 친구에게 너무 고맙고

작품 만드는 걸 지도해줘서 진짜 너무 도움이 컸다...


다음 아두이노 작품의 퀄리티는 올라갈 예정이다.

아 참 이 제품은 이미 나온 발명품이라고 한다. 근데 RFID 노트북 시건장치는 내가 최초 아닐까?

노트북 시건장치는 이미 있는 발명품인 거 인정한다.

반응형
LIST