【 레오나르도활용#4】어두워 지면 PC 종료 시키기! (Leonardo)
아두이노 레오나르도(Leonardo)를 이용하여 주변이 어두워지면, PC를 자동으로 종료 시켜 보도록 하자. 원리는, 레오나르도 보드는 키보드(마우스)와 같은 장치로 인식되며, <Keyboard.h> 함수를 활용하여, 키보드 키값을 PC로 입력할 수 있다. 이에 따라 '윈도우 종료 단축키를 활용하거나, shutdown.exe 명령과 조합하면 PC를 쉽게 종료시킬 수 있다.
본 내용에서는 윈도우 운영체제를 기준으로 하지만, 내용을 잘 참고하면, 다른 OS의 PC도 종료 가능 할 것이다.
Let's get it~!
▶ 선수 학습 :
1. [아두이노 기초#3] 포토레지스터(CDS)제어 (cds 광센서 참조) ☜ (클릭)
2. [레오나르도 활용#1] 레오나르도 보드 사용법(보드 스팩& 설치-연결 참조) ☜ (클릭)
3. [레오나르도 활용#3] 어두워지면 PC화면 잠그기 (레오나르도 보드& 단축키사용 참조) ☜ (클릭)
▶ 실습 목표 :
1. [ 레오나르도 보드에 광센서(cds)를 연결하여 제어할 수 있다. ]
2. [ 키보드 키 값 제어 함수에 대해 이해할 수 있다. ]
3. [ 레오나르도 보드를 이용해 PC를 제어(종료)할 수 있다. ]
▶ 실습 회로도면 :
(이미지 클릭하면 확대 가능)
▶ 프로그램 코드 및 설명 1 :
/* 어두워지면 자동 PC 종료 시전하기 */
/* 어두울 때 자동 PC 종료 시키기 */
#include <Keyboard.h>
const int CDS = 0; //cds 센서를 A0 포트에 연결
const int PC_Off = 10;
void setup ( ) {
Keyboard.begin(); //키보드 컨트롤 관련 함수 선언
Serial.begin(9600);
}
void loop ( ) {
int Brightness = analogRead(CDS); //조도값을 읽음
Serial.println(Brightness);
// PC_Off 값 이하가 되면 종료 배치파일(단축키) 실행
if(Brightness < PC_Off) {
Keyboard.press(KEY_LEFT_CTRL); // '왼쪽 윈도우 키'
Keyboard.press('x'); //소문자'x', ASCII값 (120)도 가능
delay(200); // 일정시간 값이 입력 되도록 시간지연
Keyboard.releaseAll( ); // 키를 계속 누르지 있지 않도록 함
delay(200);
Keyboard.press('u'); // ‘u’ 단축키 누르기|
delay(200);
Keyboard.releaseAll( );
delay(200);
Keyboard.press('u'); // ‘u’ 단축키 한번 더 누르기|
delay(200);
Keyboard.releaseAll( ); delay(200); }
} // ※ 단, 윈도가 업데이트 필요한 상태이면 업데이트를 완료해야 적용 됨
※ ASCII 코드 값 참고
※ Arduino 제공 레퍼런스 참조 (키보드 관련 함수 등)
https://www.arduino.cc/reference/en/language/functions/usb/keyboard/
Functions
Keyboard.begin()
Keyboard.end()
Keyboard.press()
Keyboard.print()
Keyboard.println()
Keyboard.release()
Keyboard.releaseAll()
Keyboard.write()
▶ 아두이노 파일다운 :
(다운받아서 압축을 풀어 사용하세요)
▶ 단축키 실행 바로가기 파일 만들기 ( shutdown.exe )
(바로가기 파일 만들기에 관한 내용은 영상에서도 자세히 설명되어 있음)
① 바탕화면에서, 마우스 우큭릭 → 새로만들기 → 바로가기 클릭
② 항목 위치 입력 란에, 다음을 입력 : ' shutdown.exe -s -f -t 60 '
→ 띄어 쓰기 주의! 옵션 : -s (윈도우 종료) , -f (실행중프로그램도 강제종료)
-t 60 (60초 후 종료, 1시간 후 종료는 3600, 즉시 종료는 0 입력)
③ 바로가기 이름 제목에 PC종료(아무 이름 입력 가능)
④ 바로 가기 키 부분에 마우스 커서를 클릭 해놓고 Ctrl +Alt 키를 누르면서 'x' 키를 누르면 자동으로 단축키가 입력됨
⑤ 바로가기 단축키는 Shift 도 가능하고, x 아닌 다른 문자 등의 조합, 2키 조합, 모두 가능, 단 윈도우 응용프로그램 등에서 사용하는 단축키와 겹칠 수 있기에 사용하지 않는 단축키로 지정하면 되고, 'x' 와 같은 알파벳은 소문자를 입력해도 자동으로 대문자로 입력이 된다. 하지만 아두이노 프로그램에서는 반드시 소문자로 입력해야 함.
⑥ 만들어진 "PC 종료" 바로가기 아이콘
이제 'Ctrl+Alt+x' 키를 실행해도, 또는 이 파일을 직접실행 더블 클릭 실행하여도 PC가 종료 될 것이며,
아두이노와 CDS 센서를 이용하여 어두워지면 자동으로 PC를 종료시켜볼 수 있다.
★ 바로가기( shutdown.exe ) 파일 활용의 장점 :
바로가기 파일 없이, 윈도우 단축키 만으로도 종료가 가능하나, 운영체제 별로 단축키가 다르기 때문에 불편하고, shutdown.exe 바로가기를 만들면 단축키를 원하는대로 지정 고정 시킬 수 있어서 좋다.
▶ 영상강좌 :
(유튜브로 보기)
(전체화면 보기로 보세요)
'아두이노 > 5. 아두이노-프렌즈' 카테고리의 다른 글
【 아두이노ProMini#1】 아두이노 프로미니 사용하기~! ( Arduino Pro Mini) (0) | 2019.06.27 |
---|---|
【 레오나르도활용#5】 조이스틱 마우스 만들기! (Leonardo) (4) | 2019.06.12 |
【 레오나르도활용#3】어두워 지면 PC 화면 잠그기 (Leonardo) (3) | 2019.06.10 |
【 Leonardo #3】 Visualize Temperature& Brightness Data on your PC with Leonardo (0) | 2019.05.28 |
【 레오나르도활용#3】 온도& 밝기값 PC로 비주얼화 하기 (Leonardo) (0) | 2019.05.24 |