목차 일부
1. 라즈베리파이 소개
1.1 라즈베리파이 개요
(1) 라즈베리파이 4 구성
1.2 라즈비안 OS 설치
(1) 마이크로 SD 메모리 포맷
(2) Raspberry pi Imager 다운로드
(3) 라즈비안 설치
(4) 라즈베리파이 환경 설정
(5) 라즈베리파이 WiFi 설정
(6) 라즈비안 업데이트
(7) ...
더보기
목차 전체
1. 라즈베리파이 소개
1.1 라즈베리파이 개요
(1) 라즈베리파이 4 구성
1.2 라즈비안 OS 설치
(1) 마이크로 SD 메모리 포맷
(2) Raspberry pi Imager 다운로드
(3) 라즈비안 설치
(4) 라즈베리파이 환경 설정
(5) 라즈베리파이 WiFi 설정
(6) 라즈비안 업데이트
(7) 한글 폰트, 입력기(IBUS) 설치
(8) 한글 입력 설정 및 문제 해결
1.3 네트워크로 접속하기
(1) SSH 사용
(2) VNC 사용
(3) VNC를 사용한 파일 전송
(4) FTP서버 구축하기
(5) 삼바(Samba) 서버 구축 하기
2. 라즈베리파이 활용
2.1 리눅스 기본 명령어
(1) 셸과 프롬프트
(2) 파일 명령어
(3) 파일 위치 찾기 명령어
(4) 파일 만들기 명령어
(5) 파일 보기 명령어
2.2 사용자와 권한
(1) 사용자 그룹
(2) 사용자 관리
(3) 파일, 디렉토리 권한
2.3 패키지 설치 및 관리도구
(1) 패키지 정보 업데이트
(2) 패키지 전체 설치
(3) 패키지 설치
(4) 패키지 삭제
(5) 패키지 정보 보기
2.4 vi 에디터
3. 파이썬 기초
3.1 파이썬 개요
3.2 파이썬 시작하기
(1) 파이썬 개발 환경(IDE) 실행하기
(2) 파이썬 코드 작성
(3) IDE 환경에서 파이썬 코드 실행
(4) Shell 프롬프트에서 파이썬 코드 실행
3.3 윈도 파이썬 실습 환경
(1) 윈도용 파이썬 IDLE 설치
(2) 파이썬 프로그램 실행
3.4 파이썬 자료형
(1) 숫자형 자료
(2) 문자형 자료
(3) 리스트(List)
(4) 튜플(Tuple)
(5) 딕셔너리(Dictionary)
3.5 파이썬 연산자
(1) 사칙연산
(2) 정수만 구하는 나눗셈 연산자
(3) 나머지 연산자
(4) 거듭제곱 연산자
(5) 논리 연산자
(6) 비교 연산자
3.6 파이썬 제어문
(1) if 문
(2) for 반복문
(3) while <조건식> 반복문
3.7 사용자 입력 및 출력
(1) 사용자 입력
(2) print() 함수 출력
(3) format 메소드
3.8 파이썬 함수
(1) 함수의 정의
(2) 함수의 인자와 리턴값
(3) 언패킹 인자값 전달
(4) 가변 인자값 전달
(5) 여러 개의 값 리턴
(6) 변수의 통용 범위
3.9 파이썬 클래스
(1) 클레스 정의
(2) 클래스 사용
3.10 파이썬 모듈
(1) 파이썬 모듈화
(2) 파이썬 내장 모듈
4. 라즈베리파이 GPIO 및 센서 활용
4.1 라즈베리파이 GPIO
(1) RPi.GPIO 설치
(2) GPIO 이해하기
(3) GPIO HAT 소개
4.2 디지털 출력
(1) LED
(2) 저항
4.3 디지털 입력
(1) 버튼(스위치)
4.4 인터럽트(이벤트) 입력
(1) 인터럽트(이벤트)
4.5 초음파 센서
(1) 초음파 센서 원리
(2) 초음파 센서 거리 계산
4.6 PWM 출력 LED 제어
(1) 펄스폭 변조(PWM: Pulse Width Modulation)
4.7 PWM 버저 제어
4.8 PWM DC 모터 제어
(1) DC 모터의 구조
(2) DC 모터 방향 제어
(3) DC 모터 속도 제어
(4) L9110 모터 드라이버 기능
4.9 PWM 서보모터 제어
(1) 서모모터의 제어 원리
5. 시리얼 통신(Serial Communication)
5.1 시리얼 장치
(1) 라즈베리파이 시리얼 장치
(2) UART0 장치 활성화
(3) PY-SERIAL 라이브러리 설치
(4) PC용 시리얼 프로그램 설치
(5) PC와 시리얼 통신
6. 블루투스 통신(Bluetooth Communication)
6.1 블루투스란?
6.2 스마트폰과 블루투스 통신
(1) 라즈베리파이 블루투스 장치
(2) 블루투스 장치 페어링
(3) 안드로이드 디바이스용 블루투스 통신 앱 설치
(4) 라즈베리파이와 블루투스 연결 및 데이터 통신
7. SPI 통신
7.1 SPI 통신 구조
(1) 동기, 비동기 통신 방식
(2) SPI 통신 방식
7.2 MCP3008 아날로그 입력
(1) 아날로그 입력
(2) MCP3008 회로 연결
7.3 가변저항 입력
(1) SPI 통신 활성화
(2) spidev 라이브러리 설치
(3) 가변저항 ADC, 전압 출력
7.4 LM35 온도 센서
8. I2C 통신
8.1 I2C 통신 구조
(1) I2C 통신 방식
(2) I2C 통신 읽기, 쓰기
8.2 MPU9250 지자기/자이로/가속도 센서 I2C 통신
(1) I2C 통신 활성화
(2) I2C 디바이스 주소 확인
(3) I2C 통신 속도 변경
(4) 자이로/가속도/지자기 데이터 출력
(5) OpenGL 3D 랜더링
9. 플라스크 웹 서버
9.1 웹 서버 역할
9.2 플라스크 웹 서버
(1) 플라스크 웹서버 설치
(2) 플라스크 테스트
(3) 웹 페이지 추가하는 방법
(4) HTML 페이지 작성하기
9.3 GET, POST 요청
(1) GET 방식 파라미터
(2) POST 방식 파라미터
9.4 웹 GPIO 제어
(1) LED ON/OFF 제어
(2) 서보모터 제어
10. MariaDB 데이터베이스
10.1 MariaDB
(1) MariaDB 설치
(2) root 계정 설정
(3) DB 사용자 권한 설정
10.2 HeidiSQL 접속
(1) 외부 접속 허용 설정
(2) heidiSQL 설치
10.3 테이블 생성
(1) temperature 테이블 생성
(2) user_info 테이블 생성
10.4 데이터베이스 쿼리(Query)
(1) INSERT 문
(2) SELECT 문
(3) UPDATE 문
(4) DELETE 문
10.5 웹 온도 서비스
(1) mysql-connector 설치
(2) mysql-connector 테스트
(3) 온도 센서 데이터 DB 저장
(4) 온도 센서 데이터 웹 서비스
(5) 온도 센서 데이터 웹 서비스 – 날짜 검색 추가
10.6 플라스크 그래프(Chart.js) 그리기
(1) Chart.js 사용
(2) Chart.js 그래프 예제
(3) 온도 변화 라인 그래프 그리기
11. 라즈베리파이 카메라 활용
11.1 라즈베리파이 카메라
(1) 카메라 인터페이스 활성화
(2) 카메라 동작 테스트
(3) 파이썬 카메라 제어
11.2 카메라 모션 감지
(1) motion 모듈 설치
(2) motion 모듈 설정 파일
(3) motion 스트리밍 확인
(4) 원격으로 카메라 제어하기
12. 구글 어시스턴트 인공지능 스피커
12.1 구글 어시스턴트 설정
(1) 마이크와 스피커 설정
(2) 개발자 프로젝트 생성
(3) 장치 모델 등록
(4) API 및 서비스 사용 활성화
(5) 사용자 인증 정보 설정
(6) SDK 설치 및 샘플 코드
12.2 구글 어시스턴트 사용
12.3 음성으로 LED 제어
13. OpenCV 활용
13.1 OpenCV 4.5 설치
(1) 라즈베리파이 OpenCV 4.5 설치
13.2 OpenCV 기본 활용
(1) 이미지 표시하기
(2) 그레이 스케일 변경
13.3 OpenCV 카메라 활용
13.4 인공지능 안면, 눈 인식
13.5 OpenCV 모션 인식
13.6 OpenCV 모션 인식 스트리밍
13.7 카카오톡 메시지 보내기
(1) 카카오 계정 로그인
(2) 애플리케이션 추가
(3) 카카오 로그인 활성화
(4) 접근 권한 관리 설정
(5) 메시지 토큰 발급받기
13.8 모션 인식 스트리밍과 침입 탐지
14. 인공지능 및 텐서플로우 라이트(Tensorflow Lite)
14.1 인공지능 및 텐서플로우 라이트(Tensorflow Lite)
14.2 텐서플로우 라이트 (Tensorflow Lite) 객체 감지 모델 실행
14.3 라즈베리파이(Raspberry Pi)에서 텐서플로우 라이트(Tensorflow Lite)
실행 방법
부 록
더보기 닫기