본문 바로가기
정보공유

소프트박스 라즈베리파이 교육키트 개발환경 설정

by 날고싶은커피향 2019. 2. 25.

소프트박스 라즈베리파이 교육키트 개발환경 설정



소프트박스 라즈베리파이 교육키트 개발환경 설정
1. 소프트박스 라즈베리파이 교육키트 Lecture 04. 라즈베리파이 개발환경 20181127 update
2. 2 Gateway – Raspberry Pi
3. 3 라즈베리 파이는 영국의 라즈베리 파이 재단이 학교에서 기초 컴퓨터 과학 교 육을 증진시키기 위해 만든 싱글 보드 컴퓨터. 라즈베리 파이는 그래픽 성능이 뛰어나면서도 저렴한 가격 초기 Model A, 현재 Model A+, Model B+, Model B Raspberry Pi Raspberry Pi 1 Model A라즈베리파이 재단 로고 Raspberry Pi compute Module Raspberry Pi 1 Model A+ Raspberry Pi 2 Model B Raspberry Pi 2 Model B+
4. Raspberry Pi 3 B+ Raspberry Pi 3 B Raspberry Pi 2 Raspberry Pi B+ Raspberry Pi A+ Ethernet Port Gigabit Ethernet over USB 2.0 (max. throughput 300Mbps) Yes Yes Yes No GPIO 40 pin 40 pin 40 pin 40 pin 40 pin GPU Videocore IV Videocore IV Videocore IV Videocore IV Videocore IV Max Power Dr aw/voltage 2.5A @ 5V 2.5A @ 5V 1.8A @ 5V 1.8A @ 5V 1.8A @ 5V Processor Chi pset Broadcom BCM2837B0, Cortex-A53 64Bit SoC at 1.4GHz Broadcom BCM283 7 64Bit Quad Core Processor powered Single Board Comp uter running at 1.2G Hz Broadcom BCM2 837 64Bit Quad C ore Processor po wered Single Boa rd Computer runn ing at 900MHz Broadcom BCM2 835 32Bit SoC fu ll HD multimedia applications proc essor Broadcom BCM 2835 32Bit SoC full HD multimed ia applications pr ocessor Processor Sp eed QUAD Core @1.4 GHz QUAD Core @1.2 GHz QUAD Core @90 0 MHz Single Core @70 0 MHz Single Core @7 00 MHz RAM 1GB LPDDR2 SD RAM 1GB SDRAM @ 40 0 MHz 1GB SDRAM @ 400 MHz 512 MB SDRAM @ 400 MHz 256 MB SDRAM @ 400 MHz Storage MicroSD MicroSD MicroSD MicroSD MicroSD USB 2.0 4x USB Ports 4x USB Ports 4x USB Ports 4x USB Ports 1x USB Port WiFi Dual-band 2.4GHz and 5 GHz IEEE 802.11.b/g/n/ac wireless LAN Built-in No No No Bluetooth LE Bluetooth 4.2/BLE Built-in No No No Comparison Chart
5. 5 Arduino vs RaspberryPi Micro Controller No Micro Computer Yes 성격 리눅스 C C, C++, Java, Python, NodeJS, Ruby ... 개발 언어 No Yes카메라 Limit Yes무선환경
6. 7 Raspberry PiB+구성 40 Pin GPIO Header Broadcom BCM2835 & 512MB RAM 4 USB Ports 10/100 Base T Ethernet Socket DSI Display Connector Micro SD Card Slot 5V Micro USB HDMI Monitor CSI Camera Connector 3.5mm jack Audio/composite video
7. 40 Pin GPIO Header Broadcom BCM2835 & 512MB RAM 4 USB Ports 10/100 Base T Ethernet Socket DSI Display Connector Micro SD Card Slot 5V Micro USB HDMI Monitor CSI Camera Connector 3.5mm jack Audio/composite video 라즈베리파이용 카메라 모듈을 연결하는데 이용 (후면) OS 설치 및 저장소로 사용 하는 Micro SD 카드 외부 장치를 연결하거나 센서 및 외부 H/W 를 제어하는데 사용 USB 장치 (키보드, 마우스, 무선랜 등) 를 연결 Raspberry PiB+연결 8
8. Raspberry PiB+사양 제품사양(Model B+) Product Name Raspberry Pi Model B+ Chip Broadcom BCM2835 SoC Core architecture ARM11 CPU 700 MHz Low Power ARM1176JZFS Applications Processor GPU Dual Core VideoCore IV® Multimedia Co-Processor Provides Open GL ES 2.0, hardware -accelerated OpenVG, and 1080p30 H.264 high-profile decode Capable of 1Gpixel/s, 1. 5Gtexel/s or 24GFLOPs with texture filtering and DMA infrastructure Memory 512MB SDRAM Operating System Boots from Micro SD card, running a version of the Linux operating system Dimensions 85 x 56 x 17mm Power Micro USB socket 5V, 2A Ethernet 10/100 BaseT Ethernet socket Video Output HDMI (rev 1.3 & 1.4) Composite RCA (PAL and NTSC) Audio Output 3.5mm jack, HDMI USB 4 x USB 2.0 Connector GPIO Connector 40-pin 2.54 mm (100 mil) expansion header: 2x20 strip Providing 27 GPIO pins as well as +3.3 V, +5 V and GND supply lines Camera Connector 15-pin MIPI Camera Serial Interface (CSI-2) Display Connector Display Serial Interface (DSI) 15 way flat flex cable connector with two data lanes and a clock lane Memory Card Slot SDIO 9
9. Raspberry Pi OS 10 RASPBMC SNAPPY UBUNTU CORE
10. Why Rasbian 11 Raspbian • Raspbian 은 Debian Linux 계열임 • 가장 인기있는 ubuntu linux 도 debian linux 계열 • 패키지 지원 및 관련 라이브러리들이 풍부함 • 라즈베리파이 OS 중 가장 많이 활용되고 있음 • 관련 블로그, 학습서, 고객지원이 가장 많은 OS 임 Raspbian Download • http://downloads.raspberrypi.org/raspbian_latest 기타 OS 다운로드 • http://www.raspberrypi.org/downloads/
11. 12 개발환경 1. 운영체제(OS) : Rasbian – Debian Wheezy 리눅스 환경 2015-01-31 릴리즈 2. Window 환경에서 개발하기 편리함 – Putty, SAMBA 설치 3. RASBMC(멀티미디어), SNAPPY UBUNTU CORE, RISC OS 등 환경 다양 4. 이클립스(안드로이드 앱 개발환경)에서 개발 가능 5. 센서/액츄에이터 제어 firmware 개발 6. 서버설치 – Apache, PHP, MySQL, FTP – Web 프로그래밍 7. 지원언어 : C, C++, JAVA, Python, Java Script, Node.js 모든 개발 환경 가능 8. 안드로이드 App – 라즈베리 파이 연동 프로그램 개발 9. 다양한 Dongle 지원으로 IoT 개념 이해 – Ethernet , Wi-Fi, Bluetooth, BLE…
12. MicroSDCard 13 Micro SD 카드 준비 • Rasbian 이미지 크기가 2GB 정도이나, 설치 및 테스트를 위해 최소 8GB 이상의 Micro SD 카드를 준비 할 것을 권장 • Class 4가 저렴한 가격에 형성되어 있으나, 쓰기 및 읽기 성능을 위 해 Class 10 혹은 UHS-I 스펙의 Micro SD 카드를 이용할 것을 권장. • Raspbian 설치 후 반드시 Expand Filesystem 을 할것 (기본 설정 참고) • MicroSD 카드를 Notebook 혹은 Desktop 의 리더기를 통해 읽고 쓰기 위 해서는 반드시 SD Card Adaptor 가 포함되어야 함 Class 최소성능 일반적인 용도 Class 2 2 MB/s SD 영상 기록 Class 4 4 MB/s HD 영상 기록 Class 6 6 MB/s Full HD 영상 기록 Class 10 10 MB/s 연속적인 HD 이미지 기록 UHS-1 10 MB/s 실시간 방송 UHS-3 30 MB/s Ultra HD 영상 기록
13. 라즈비안 wheezy다운로드 라즈베리 공식 홈페이지에서 라즈비안을 다운받습니다. http://www.raspberrypi.org/downloads 14
14. win32diskimager 다운로드 win32diskimager 를 다운받습니다. http://sourceforge.net/projects/win32diskimager/ 15
15. SD카드에쓰기–Image백업 win32diskimager 를 실행해서 SD카드에 다운받은 라즈비안을 담습니다. 라즈비안 img 파일을 선택해주고 현재 SD카드가 연결되어 있는 드라이브를 확인해준 후에 write 버튼을 눌러 SD카드에 라즈비안 운영체제를 넣어줍니다. 소요시간은 5분 내외입니다. 원래 용량이 얼마였건간에 56MB로 줄어듭니다. 이 것은 나중에 설정으로 변경이 가능하니 신경을 안 써도 됩니다. 백업은 반대로 저장될 폴더 이름과 이미지 파일 이름을 입력하고 Read 클릭하면 저장됨. 16
16. 17 개발환경 구축방법- 라즈베리 파이의 IP 주소를 얻는 과정 1. 2. Ethernet Cable 3. PC/NoteBook HDMI Monitor PC/Notebook유무선공유기 4. PC/Notebook UART(RS-232) to USB보드 USB 키보드/마우스 5. 라즈베리파이를 공유기로 설정한다. ~~ 끝~
17. 개발환경 1– HDMI모니터연결 18 Gateway(R-Pi) WiFi 동글 사용시 공유기 설정을 참고하여 라즈베리 파이 wlan0 설정 필요함. HDMI 케이블 USB 키보드/마우스 Micro USB 5V 전원 반드시 2.5A 이상
18. 19 개발환경구축 2 - Notebook과UART to USB Ethernet Cable 5V Micro USB UART(RS-232) 통신 연결 NoteBook USB 포트연결 IP주소 IP주소 PC
19. 20 개발환경구축 4–LanCable직접연결 Ethernet Cable 5V Micro USB PC
20. 21 LanCable직접연결 - 노트북 연결 1. 인터넷 연결 공유 설정 2. 제어판 –> 네트워크 및 공유 센터 어댑터 설정 변경
21. 22 LanCable직접연결 - 노트북 연결 1. 무선 네트워크 연결 아이콘을 마우스 반대편 클릭 –> 속성 2. LAN 케이블을 라즈베리 파이와 PC 로 직접 연결한다. 공유탭에서 “다른 네트워크 사용자가 이 컴퓨터의 인터넷 연결을 통해 연결할 수 있도록 허용”을 체크하고 확인 클릭 PC 재부팅 윈도 PC가 정상적으로 인터넷을 공유할 수 있도록 재부팅한다.
22. 23 LanCable직접연결 - 노트북 연결 SSH (또는 VNC) 접속 PuTTY 또는 VNC Viewer를 실행하고 라즈베리 파이에 접속 PC의 명령 프롬프트 실행하고 아래 명령어 입력 >arp -a 여기에선 192.168.137.22가 라즈베리 파이 IP주소
23. 24 LanCable직접연결 - PC연결 자동 개인 IP 주소 지정(APIA) 범위의 IP 주소를 확인 여기에선 169.254.74.67 의 다음 번호 169.254.74.68 을 라즈베리 파이 IP주소로 한다.
24. 25 LanCable직접연결 - PC연결 SD 카드를 PC 에서 읽어 cmdline.txt 수정 “cmdline.txt ” 파일을 열어 가장 마지막 라인에 IP 주소를 추가한다. rootwait 다음에 아래의 IP 정보( 169.254.x.1 ~ 254 )를 수동으로 추가합니다. ip=169.254.74.68 저장후 SD 카드를 라즈베리 파이에 넣고 부팅 후 확인
25. 26 네트워크연결 -> 로컬영역 연결 -> 속성창에서 Internet Protocol Version4(TCP/IPv4) 선택 마지막 방법 “cmdline.txt ” 파일을 열어 가장 마지막 라인에 IP 주소를 추가한다. rootwait 다음에 특수문자 지우고 ip=192.168.137.3 이나 ip=192.168.137.4 를 수동으로 추가합니다. 라즈베리 파이의 SD 카드를 PC의 USB 포트에 연결하여 cmdline.txt 파일 수정
26. 27 LanCable직접연결 - PC연결 PuTTY 접속화면 – id : pi password : raspberry --> 보이지 않는다.
27. UART부팅과접속(HDMI지원모니터가없을경우) HDMI 지원 모니터가 없을 경우 UART(RS232) 를 이용하여 로그인 및 접속하여 라즈베리 파이의 아이피 주소를 획득한 후 테스트 한다. 1. 구글에서 cp2104 검색 2. CP2104 Mini Evaluation Kit | Silicon Labs 으로 이동 3. Software Downloads 4. CP210x VCP Drivers Drivers for Windows and Mac and Linux 5. Download for Windows XP/Server 2003/Vista/7/8/8.1 (v6.7) 다운로드 후 설치 28
28. Xwindow와터미널 29 X윈도우 : 표준 GUI 로 유닉스의 기본 윈도우 시스템 리눅스의 기본 쉘 pi@raspberry~$ _ : Shell 프롬프트
29. UART부팅과접속 6. usb to UART 보드 연결 7. 제어판 – 장치관리자에서 COM 포트 확인 8. 부팅 후 로그인 Raspberrypi login : pi Password : raspberry  화면에 보이지 않는다 9. $ifconfig 명령어로 아이피 주소 적어둔다. 라즈베리 파이 IP 주소 : 30
30. Network 확인 31 유/ 무선네트워크 연결 확인 $ ifconfig eth0 유선 네트워크 정보 wlan0 무선 네트워크 정보 기본적으로 우선이나 무선 하나만 연결한다.
31. 터미널접속(Putty) -터미널접속 알아낸 ip주소를 Host Name에 적고 SSH를 선택한 후 Open을 눌러서 접속합니다. 32 Putty는 SSH, Telnet 등의 원격 접속을 위한 Opensource S/W 이다. 다운로드 주소 http://the.earth.li/~sgtatham/putty/latest/x86/putty.exe 2. Open 을 눌러주면, 라즈베리파이에 접속된다. 3. login id ( 기본 : pi ) 와 password ( 기본 : raspberry)를 입력한다. Password 는 화면에 보이지 않는다. 1. 접속할 라즈베리파이의 IP를 확인하고, 입력해 준다. (SSH 접속은 22 포트 활용)
32. Raspberry Pi 기본정보 33 프로그램 패키지 목록 업데이트 $ sudo apt-get update 설치된 프로그램 중 버전 업 된 프로그램 업데이트 $ sudo apt-get upgrade OS버전 확인하기 $ cat /proc/version CPU버전 확인하기 $ cat /proc/cpuinfo SD 카드 용량 확인 $df –a 혹은 $df -h 그래픽 인터페이스 (x-window) 실행 $ startx
33. Command Form What it does sudo apt-get update sudo apt-get update 패키지 목록 업데이트 sudo apt-get upgrade sudo apt-get upgrade 프로그램 업데이트 sudo Sudo 명령어 Super User cat /proc/version cat /proc/version OS버전 확인하기 cat /proc/cpuinfo cat /proc/cpuinfo CPU버전 확인하기 df –a 혹은 $df -h df –a 혹은 $df -h SD 카드 용량 확인 startx startx Linux GUI (x-window) 실행 Raspberry Pi 기본정보
34. Linux기본명령어 Command Form What it does date date 현재 년 월 일 시 출력 pwd pwd 현재 작업 위치 출력(/home/pi) cd cd FolderName 정해진 폴더로 이동 cd .. cd .. 바로 직전 상위 폴더로 이동 cd cd 루트 폴더로 이동(/home/pi) ls 혹은 ls –l ls, ls -l 파일 목록 출력 mkdir mkdir 폴더이름 폴더를 생성 echo “hello” > file.txt 다이렉션 myfile.txt 파일 생성 cp cp file1 file2 파일 복사 mv mv file3 file4 파일 이름 변경 rm rm file5 file6 파일 삭제 rm 폴더 rm 폴더 폴더 삭제 rm -r rm -r 파일삭제 폴더삭제 clear clear 화면 clear
35. 36 나노에디터(nanoeditor)사용법 실행 nano 파일이름.c 화살표 키를 눌러 편집할 곳으로 이동하여 편집. 저장 Ctrl+O 끝내기 Ctrl+X 하면, 정말로 끝낼 것인지를 묻는 화면에서 Y 를 누르고 저장하려는 파일명을 확인한 후에 엔터 를 누르고 빠져나옴. 자르기와 붙이기 한줄 자르기 : Ctrl+k 붙이기 : Ctrl+u 여러줄 자르기 : Ctrl+^ 를 누르고 화살표로 블럭을 설정한 후에 Ctrl+k 찾기 Ctrl+w
36. 정적(static) IP설정1 37 현재 네트웤 설정을 확인하기 위해 /etc/network/interfaces 내용을 확인한다. $sudo nano /etc/network/interfaces 명령 pi@raspberrypi ~ $ more /etc/network/interfaces auto lo iface lo inet loopback ### eth0 iface eth0 inet dhcp ### wlan0 allow-hotplug wlan0 iface wlan0 inet manual wpa-roam /etc/wpa_supplicant/wpa_supplicant.conf iface wlan0 inet dhcp #iface default inet static #address 192.168.1.15 #netmask 255.255.255.0 #gateway 192.168.1.0 끝내기 Ctrl+X 하면, Y 를 누르고 엔터.
37. 정적(static) IP설정2 38 아래 내용과 같은 수정하고 ctrl –x 누르면 저장하냐고 물어오면 y 누르고 같은 파일 이름이므로 enter 를 입력하고 빠져 나온다. 리부팅 후 적용된다. pi@raspberrypi ~ $ more /etc/network/interfaces auto lo iface lo inet loopback ### eth0 #iface eth0 inet dhcp ### wlan0 allow-hotplug wlan0 iface wlan0 inet manual wpa-roam /etc/wpa_supplicant/wpa_supplicant.conf iface wlan0 inet dhcp iface default inet static address 192.168.1.15  할당받은 IP 주소 netmask 255.255.255.0 gateway 192.168.1.0
38. 무선랜wifi동글설정 Wifi 동글(ipTIME N100mini)을 USB포트에 연결 39
39. 무선랜 설정–GUI 상태에서 아래의 명령어를 실행하여 라즈베리파이의 네트워크를 확인한다. $ifconfig $startx 를 실행하여 GUI 화면에서 Wi-Fi 설정 유틸리티 실행 [Scan] 실행 [PSK] 필드에 비밀번호를 입력하고 [connect] 하면 네트워크에 연결된다. 40 출처:raspberry Pi Cookbook
40. /etc/network/interfaces 파일설정 아래의 파일을 편집하여 무선 네트워크 설정을 수정합니다. $sudo nano /etc/network/interfaces 41 auto wlan0 iface wlan0 inet static address 원.하.는.주소 netmask 255.255.255.0 gateway 공.유.기.주소 wpa-ssid “SSID이름" wpa-psk “비밀번호" 예) ssid : huins_edu 비밀번호 : huind12345
41. Rasbian 기본명령어 42 그래픽 인터페이스 (x-window) 실행 $ startx 프로그램 패키지 목록 업데이트 $ sudo apt-get update 설치된 프로그램 중 버전 업 된 프로그램 업데이트 $ sudo apt-get upgrade OS버전 확인하기 $ cat /proc/version CPU버전 확인하기 $ cat /proc/cpuinfo
42. Rasbian 기본명령어 43 펌웨어 확인 $ vcgencmd version 펌웨어 업데이트 $ sudo rpi-update OS 재부팅 재 부팅을 위해 다음 두가지 명령 중 하나를 선택하여 사용 가능 $ sudo reboot $ sudo shutdown –r now OS 종료 종료를 위해 다음 두가지 명령 중 하나를 선택하여 사용 가능 $ sudo halt $ sudo shutdown –h now
43. Rasbian 기본설정 44 Raspberry Pi 기본 설정 하기 $ sudo raspi-config
44. Rasbian 기본설정 45 Expand File System Raspbian 이 설치된 SD 카드의 파일 시스템을 확장하는 기능. 기본 배포판의 메모리를 4GB만 활용. 4GB 이상의 SD 카드를 이용하는 경우 반드시 설정. Change User Password 라즈베리파이 초기 암호는 raspberry 이고, CirculOS 의 초기 암호는 1234 임. 보안을 위해 사용자 암호를 변경하고자 하는 경우 사용. Enable Boot to Desktop/Scratch 초기 부팅 시에 윈도우 환경 (X Window), Scratch 교육환경, Console 모드 로 부팅할지 여부 선택. 메이커 구성을 위해서는 Console 로 시작해야 함. Internationalisation Options Change Locale – 지역 설정 옵션. 한국어 변환이 가능하지만, 기본 설정 권장 Change Timezone – 시간대를 설정하는 옵션. Asia 에서 Seoul 을 설정. Change Keyboard Layout – 키보드 구성 변경 옵션. 변경이 필요 없음.
45. Rasbian 기본설정 46 Enable Camera 라즈베리파이에 카메라를 연결한 경우 사용을 위해 활성화 하는 옵션. 설치 시 Enable 로 변경해야 함 Add to rastrack 전 세계 라즈베리파이 이용자 분포 확인을 위한 옵션. 이름, 메일, 지역을 입 력 하면 Rastrack (www.rastrack.co.uk) 사이트에 등록됨 Advanced Option 라즈베리파이의 고급 사용자 설정 화면. 뒷 부분에서 다룸 About raspi-config Change Locale – 지역 설정 옵션. 한국어 변환이 가능하지만, 기본 설정 권 장 Change Timezone – 시간대를 설정하는 옵션. Asia 에서 Seoul 을 설정. Change Keyboard Layout – 키보드 구성 변경 옵션. 변경이 필요 없음.
46. Rasbian 고급설정 47 9. Advanced Option 선택 시 보임
47. Rasbian 고급설정 48 Overscan 디스플레이 화면에 크기를 맞출 수 있는 기능을 설정 Hostname 호스트 이름을 변경하는 옵션 (기본 값 : raspberrypi) Memory Split GPU 와 CPU 가 사용할 메모리를 할당하는 옵션. X 윈도우 화면을 사용하지 않고 메이커 보드로 활용하는 경우, GPU 메모리를 16MB 로 설정하면 된다. SSH Secure Shell 의 약자로, 네트워크 구성이 된 경우 다른 컴푸터에서 터미널 창 으로 원격으로 접속할 수 있음. Device Tree 리눅스 상에서 하드웨어를 기술하기 위한 데이터 구조. 기본적으로 사용하지 않음.
48. Rasbian 고급설정 49 SPI (Serial Peripheral Interface Bus) GPIO 의 SPI 기능을 활성화 할지 여부. SPI 사용을 위해서는 활성화 해야 함. I2C (Inter-Integrated Circuit) GPIO 의 I2C 기능을 활성화 할지 여부. I2C 사용을 위해서는 활성화 해야 함. Serail Serial 을 통해 Shell 에 접근할 수 있을지 여부. 기본적으로 활용하지 않음. Audio Audio 출력을 Audio 단자(3.5mm) 혹은 HDMI 로 할지 설정하는 옵션. 기본 값은 Auto 이지만, 라즈베리파이 오디오 실습을 위해 3.5 mm로 설정 할 것 Update 라즈베리파이 설정 툴을 최신 버전으로 업데이트 하는 기능
49. 다운로드 주소 http://www.chiark.greenend.org.uk/~sgtatham/putty/download.html Putty는 SSH, Telnet 등의 원격 접속을 위한 Opensource S/W 이다. Putty설치와접속 다운로드 받은 곳에서 압축풀고 실행 50
50. 터미널접속(Putty) -터미널접속 알아낸 ip주소를 Host Name에 적고 SSH를 선택한 후 Open을 눌러서 접속합니다. 51 2. Open 을 눌러주면, 라즈베리파이에 접속된다. 3. login id ( 기본 : pi ) 와 password ( 기본 : raspberry)를 입력한다. 1. 접속할 라즈베리파이의 IP를 확인하고, 입력해 준다 (SSH 접속은 22 포트 활용)


반응형