새소식

컴퓨터공학 💻/JAVA

JAVA 자바 (16) - 사물 인터넷 'IOT' 프로그램 만들기

  • -

만약 내가 집에 들어갈 때 1층에 아파트가 자동으로 대기하게 만들고 시큐리티가 자동으로 꺼지게 되며 라이트가 자동으로 켜지게 되는 자동화 프로그램을 만들고 싶다고 가정하자. 

 

순차적으로 내가 작성한 코드를 실행시켜 자동화시키는 것. 이런 행위를 프로그래밍이라고 한다. 

 

 

Programming 프로젝트 안에 OkJavaGoInHome 이라는 가상의 IOT프로그램을 위한 파일을 생성한다.

그리고 업로드되어있는 압축파일을 압축을 풀고 org폴더를 드래그하여 Programming 프로젝트에 붙여 넣는다. 

 

※업로드 파일 출처 : 생활코딩 egoing님 Github https://github.com/egoing/java-iot

 

폴더안의 java 파일들을 이용하여 나의 애플리케이션을 만드는 것이다.

 

 

우선 iot폴더안의 Elevator.java를 불러와야 한다. 최상단에 import를 입력하고 파일의 위치를 입력한다. 그리고 Elevator라는 데이터 타입을 가진 myElevator 변수를 입력하고 세상 어디에 있는 Elevator인지를 컴퓨터가 알 수 있도록 위치를 입력한다.

 

 

 

변수 myElevator에 . 을 입력하면 이클립스가 추천 항목을 제안한다. Elevator를 1층으로 호출해야 하기 때문에 1층으로 올라갈 Elevator를 보내라는 의미로 .callForUp을 선택하고 층 수 1을 입력한다. 

 

 

 

다음으로 시큐리티를 해제하기 위해 어느 위치에 있는 시큐리티인지를 알려주기 위해 Elevator와 마찬가지로 위치를 입력해주고 해제의 의미인 .off() 를 입력한다. 

 

() 같은 것은 method라고 한다. 

 

 

파일을 빠르게 불러오는 방법이 있다. 예를 들어 Light를 입력하고 Ctrl + Spacebar를 누르면 이클립스가 Light라는 이름의 부품들을 보여준다. 

 

 

그중 Lighting이라는 이름의 class파일을 선택하면 이클립스가 import문까지 자동으로 완성시켜준다.

 

 

그 다음 마지막 라이팅 hallLamp(변수명)가 자동으로 켜질 수 있도록 위와 마찬가지로 코드를 작성한다. 나의 집 302동 1802호 안에 있는 Hall Lamp라는 뜻이다. 

 

출력하면 의도한대로 엘리베이터가 1층으로 오고, 시큐리티가 꺼지며, 홀 램프의 라이트가 순차적으로 자동화되어 켜지게 된다. 

 

 

"나의 집 302동 1802호" 문자열에 대한 중복을 없애기 위해 변수 id값에 부여하고 최대한 코드를 정리한 모습을 볼 수 있다.

 

 

 

 

 

 

이 글의 내용은 생활코딩(https://opentutorials.org/course/3930)에서 배운 내용을 개인적인 사용을 위해 재가공하여 정리한 글임을 밝힙니다.

 

Contents

포스팅 주소를 복사했습니다

이 글이 도움이 되었다면 공감 부탁드립니다.