포트폴리오

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

톰 클란시스 2019. 6. 12. 03:32
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