반응형 분류 전체보기171 [센서 모니터링 시스템] 10. React 개발환경 구성 Intro 아래의 글을 참고하여 개발환경을 구성했다. https://velog.io/@u-nij/Spring-Boot-React.js-개발환경-세팅 Spring Boot + React.js 개발환경 연동하기 Spring Boot와 React.js를 연동해 개발환경을 만들고, 빌드해서 jar 파일로까지 만들어보는 과정입니다. velog.io React APP 생성 시작하기 전 npx 명령어를 사용하기 위해 Node.JS를 설치해야 한다. 아래의 링크에서 다운로드 받을 수 있다. https://nodejs.org/ko/download/ 다운로드 | Node.js Node.js® is a JavaScript runtime built on Chrome's V8 JavaScript engine. nodejs.or.. 2022. 8. 19. [센서 모니터링 시스템] 9. 라즈베리파이 Request 구현 라즈베리파이 Request 구현 센서 데이터 측정과 서버 API가 준비되었으니 이제 측정한 센서 데이터를 서버로 전송해보자. requests 패키지를 사용할 것이기 때문에 만약 없다면 설치해준다. pip3 install requests 우선 조회 API를 통해 request / response가 잘 되는지 확인하자. 원래 PC에서 무선랜카드로 핫스팟을 틀어서 SSH에 연결했었는데, 인터넷을 찾아보니 Windows10에서 핫스팟을 틀 경우 내부적으로 IP를 변경되어 연결된 기기에서 Windows로 Ping을 못한다고 한다. 그래서 휴대폰에서 핫스팟을 틀고, 라즈베리파이와 PC를 휴대폰에 연결했다. https://superuser.com/questions/1354338/cant-ping-when-mobile.. 2022. 8. 18. [센서 모니터링 시스템] 8. Service, REST Controller 개발 Intro 이전에 Repository를 만들었으니, 이제 Service와 Controller를 만들면 된다. DTO 생성 Service에선 RequestDTO를 받아 Repository를 제어하고, Entity를 다시 DTO로 변환해서 반환해주는 역할을 한다. 때문에 Service 및 Controller에서 반환해줄 DTO 클래스를 새로 만들어야 한다. SensorDto.java Sensor 엔티티에서 클라이언트에게 넘겨주지 않아도 되는 ID와 Client를 제외하였다. package com.example.sensormonitoringserver.dto; import com.example.sensormonitoringserver.entity.Sensor; import lombok.AllArgsConstr.. 2022. 8. 18. [센서 모니터링 시스템] 7. Repository 개발 Intro 이제 Entity를 저장하고 불러오는 Repository를 만들어야 한다. 프로젝트에 Spring Data JPA를 적용시켰기 때문에 간단하게 만들 수 있다. Spring Data JPA Repository 생성 ClientRepository.java package com.example.sensormonitoringserver.repository; import com.example.sensormonitoringserver.entity.Client; import org.springframework.data.jpa.repository.JpaRepository; public interface ClientRepository extends JpaRepository { } 클라이언트는 기본 제공되는 함수.. 2022. 8. 17. [센서 모니터링 시스템] 6. Spring 서버 기본환경 설정 Intro 디바이스 코드는 어느정도 됐으니 이제 Request를 수신할 서버를 만들어야 한다. 지금 당장은 센서 데이터 CREATE / READ 까지만 가능하도록 만들 예정이다. 프로젝트를 시작하기 전 PostgreSQL을 사용하기 위해 아래의 사이트에서 설치하자. https://www.enterprisedb.com/downloads/postgres-postgresql-downloads Download PostgreSQL PostgreSQL Database Download www.enterprisedb.com 프로젝트 생성 우선 아래의 Dependencies들을 추가하여 프로젝트를 생성했다. Spring Web Spring Data JPA Spring Validation Lombok Spring Boot.. 2022. 8. 17. [센서 모니터링 시스템] 5. MPU6050(가속도 센서) 모듈 개발 MPU6050 모듈 개발 이제 가속도 센서 모듈을 개발해야 한다. 데이터시트(레지스터 맵) 는 아래의 링크를 통해 다운받을 수 있다. http://www.datasheet.kr/ic/735136/MPU-6050-datasheet-pdf.html MPU-6050 데이터시트 PDF - InvenSense MPU-6050 데이터시트 PDF - (MPU-6050/-6000) Register Map and Descriptions. www.datasheet.kr MPU6050이 워낙 유명한 센서라 라이브러리가 있나 해서 찾아봤는데 역시나 있었다. https://pypi.org/project/mpu6050-raspberrypi/ mpu6050-raspberrypi A Python module for accessing.. 2022. 8. 17. [센서 모니터링 시스템] 4. CCS811(공기질 센서) 모듈 개발 CCS811 모듈 개발 2가지 센서 중 첫번째인 공기질 센서 모듈을 개발할 것이다. 이 센서는 공기 중 이산화탄소, 유해물질을 측정한다. 아래 사이트에서 데이터시트를 다운로드 받을 수 있다. https://www.alldatasheet.co.kr/datasheet-pdf/pdf_kor/1047395/AMSCO/CCS811.html CCS811 Datasheet(PDF) - ams AG Ultra-Low Power Digital Gas Sensor for Monitoring Indoor Air Quality, CCS811 Datasheet www.alldatasheet.co.kr 우선 각 레지스터와 비트들에 대한 값을 변수에 넣어줘야 한다. 그냥 상수로 써도 되지만, 변수에 넣는게 나중에 알아보기 쉽다. .. 2022. 8. 17. [센서 모니터링 시스템] 3. I2C 포트 제어하기 I2C 포트 제어하기 I2C 센서들과 통신하기 위해 포트를 열어줘야 한다. 라즈베리파이 설정 창을 열어 I2C를 열어준다. sudo raspi-config 그 다음 I2C 제어를 위한 패키지들을 설치해준다. sudo apt-get install i2c-tools sudo apt-get install python3-smbus 아래 명령어를 통해 현재 연결된 Slave들의 주소를 확인할 수 있다. i2cdetect -y 1 //i2c-1 i2cdetect -y 0 //i2c-0 아래와 같이 0x68 (MPU6050), 0x5B(CCS811) 2개가 뜨는것을 볼 수 있다. ajw@raspberrypi:~ $ i2cdetect -y 1 0 1 2 3 4 5 6 7 8 9 a b c d e f 00: -- -- .. 2022. 8. 17. [센서 모니터링 시스템] 2. 라즈베리파이 개발환경 구성 라즈베리파이 개발환경 구성 라즈베리파이를 사용하기 위해 우선 OS를 설치해야 한다. 예전에는 OS 이미지 파일을 통째로 받아서 다른 프로그램을 사용해 SD카드에 구워줬지만, 이제 라즈베리파이에서 툴을 지원해준다. https://www.raspberrypi.com/software/raspberry-pi-desktop/ Raspberry Pi Desktop for PC and Mac – Raspberry Pi From industries large and small, to the kitchen table tinkerer, to the classroom coder, we make computing accessible and affordable for everybody. www.raspberrypi.com 라즈.. 2022. 8. 17. 이전 1 ··· 4 5 6 7 8 9 10 ··· 19 다음 반응형