라즈베리파이 Raspberry Pi - 라즈베리파이 OS 설치하기

이미지
 라즈베리파이를 이용하려면 마이크로 SD 카드에 라즈베리파이 OS를 설치해야 합니다. 마이크로 SD 카드에 라즈베리파이 OS를 설치하는 방법에 대해 알아보겠습니다. 라즈베리파이 OS를 설치하는 것은 PC를 사용하기 위해 PC에 윈도우나 리눅스를 설치하는 것과 동일하다고 생각하면 됩니다. 라즈베리파이 OS 설치 준비물 최소 16GB 이상의 마이크로 SD Card 마이크로 SD Card Reader Raspberry Pi Imager 다운로드  라즈베리파이 OS 설치는 Raspberry Pi Imager를 이용합니다. 먼저 Raspberry Pi Imager를 다운로드해서 PC에 설치해야 합니다. Raspberry Pi Imager는 아래 링크에서 다운로드할 수 있습니다. Raspberry Pi Imager 다운로드 URL의 표시된 부분에서 PC의 OS에 맞는 파일은 다운로드합니다. 이 글에서는 Windows OS를 기준으로 설명합니다. Raspberry Pi Imager 설치 다운로드 받은 Raspberry Pi Imager 파일을 더블클릭해서 파일을 실행합니다. Install 버튼을 클릭해서 설치를 진행합니다. 설치가 완료되면 Finish 버튼을 누르면 설치가 완료됩니다. 사용했던 마이크로 SD 카드를 포맷하려면 아래 URL에서 SD Memory Card Formatter를 설치한 후 포맷을 하면 됩니다. SD Memory Card Formatter  다운로드 Raspberry Pi Imager 실행 및 설정 Raspberry Pi Imager를 실행하면 아래 그림과 같이 실행됩니다. 라즈베리파이 디바이스에서 보유하고 있는 라즈베리파이 보드를 선택합니다.(Raspberry Pi 3을 선택했습니다.) 운영체제에서 설치할 Raspberry Pi OS를 선택합니다. 라즈베리파이 보드에 따라서 추천하는 Raspberry Pi OS가 달라집니다. Raspberry Pi 3을 선택하면 설치 OS로 Bullseye 32bit 버전을 추천합니다. 저장소에서 PC에 인식한 마

아두이노 - 데이터형 Data Type

이미지
변수를 선언할 때 알고 있어야 할 데이터형에 대해서 알아보겠습니다. 데이터형 데이터형은 변수를 선언할 때, 변수에 저장될 값의 크기에 따라 선택합니다. 아두이노 코드는 C/C++ 기반이지만, Microcontroller(MCU)의 Bit에 따라 데이터형의 크기가 다릅니다. 코드가 실행되는 시스템에 따라 데이터형이 다릅니다. 아두이노 우노 R3(ATmega328P)와 아두이노 우노 R4(RA4M1)의 데이터형 데이터형 확인 코드 아래 코드는 sizeof 함수를 이용해서 데이터형의 크기를 확인하는 코드입니다. 각 데이터형의 크기를 시리얼로 출력합니다. // Check data type void setup() { // put your setup code here, to run once: Serial.begin(9600); } void loop() { // put your main code here, to run repeatedly: Serial.print("bool : "); Serial.println(sizeof(bool)); Serial.print("char : "); Serial.println(sizeof(char)); Serial.print("byte : "); Serial.println(sizeof(byte)); Serial.print("int : "); Serial.println(sizeof(int)); Serial.print("word : "); Serial.println(sizeof(word)); Serial.print("long : "); Serial.println(sizeof(long)); Serial.print("short : "); Serial.println(sizeof(short)); Serial.p

파이참 Pycharm 설치하기

이미지
 파이썬 프로그래밍에 필요한 통합개발환경(IDE, Integrated Development Environment)중 하나인 파이참 Pycharm 설치를 해보겠습니다. 1. 파이참 Pycharm community Edition 다운로드 아래 링크에서 파이참을 다운로드하면,pycharm-community-2023.3.2 버전이 다운로드됩니다. 24년 1월 24 기준으로 다운로드 파일 이름은 pycharm-community-2023.3.2.exe입니다.(Windows OS 기준) Pycharm 다운로드  https://www.jetbrains.com/pycharm/download/ 2. 다운로드한 설치 파일 실행 Next 버튼을 클릭합니다. 3. Choose Install Location 기본 설치 폴더에 설치합니다. Next 버튼을 클릭합니다. 4. Installation Options 바탕 화면에 바로가기 만들기를 선택하고, 파일 탐색기에서 파이썬 파일 확장자를 더블클릭하면 Pycharm이 열리도록 Create Associations를 선택합니다. 5. Choose Start Menu Folder 기본 이름을 그대로 두고, Install 버튼을 클릭합니다. 6. Installing 설치 상태를 보여줍니다. 7. 설치 완료 수동 재부팅을 선택하고 Finish 버튼을 클릭하면, 설치가 완료됩니다. 파이썬 프로그래밍에 필요한 Pycharm을 설치해 봤습니다.

파이썬 Python 설치하기 - Anaconda 설치

이미지
 파이썬 프로그래밍을 배우기 위해 필요한 파이썬을 설치하는 방법에 대해 알아보겠습니다. 윈도우 OS 환경에서 파이썬을 설치하는 방법을 다룹니다. 파이썬 설치하기 / 아나콘다 설치하기 파이썬 배포판 중에 널리 사용되는 아나콘다를 설치합니다. 아나콘다는 파이썬의 무료 오픈소스 배포판으로 파이썬을 포함한 데이터 사이언스나 머신 러닝 관련 분야에서 사용하는 패키지가 사전 설치되기 때문에, 데이터 사이언스나 머신 러닝 관련 분야에서 널리 사용되고 있습니다. 1. 아나콘다 설치 파일 다운로드 아래 링크에서 아나콘다를 다운로드하면, Anaconda 최신 버전(2023.09-0, 파이썬 버전 3.11)이 다운로드됩니다. 24년 1월 23일 기준으로 다운로드 파일 이름은 Anaconda3-2023.09-0-Windows-x86_64.exe입니다.(Windows OS 기준) 아나콘다 설치 파일 다운로드  https://www.anaconda.com/download 2. 다운로드한 설치 파일 실행 Next 버튼을 클릭합니다. 3. License Agreement I Agree 버튼을 클릭합니다. 4. Select Installation Type Default 선택(Just Me)을 확인하고 Next 버튼을 클릭합니다.  5. Choose Install Location 사용하지 않은 소프트웨어를 선택할 수 있으면 좋겠지만 소프트웨어 설치를 선택할 수 있는옵션이 없고 5.7GB 용량을 차지합니다.   Default로 설정된 폴더를 바꾸지 않고 Next 버튼을 클릭합니다. 6. Advanced Installation Options Install 버튼을 클릭합니다. 7. Installing Next 버튼을 클릭합니다. Finish 버튼을 클릭하면, 아나콘다 설치가 완료됩니다. 기본적으로 설치되는 소프트웨어는 파이썬 패키지를 관리하는 소프트웨어인 Anaconda Navigator, Spyder(IDE), Jupyter Notebook, 기본 설치 패키지가 설치되어 5.7GB 용량을 차지합

아두이노 IDE 시리얼 모니터 - 아두이노 시작하기

이미지
 C로 작성한 스케치가 제대로 동작하는지 디버깅하거나 코드를 테스트할 때 사용할 수 있는 아두이노 IDE 시리얼 모니터에 대해 알아보겠습니다. 시리얼 모니터 아두이노 IDE에 포함되어 있는 시리얼 모니터는 아두이노 보드와 컴퓨터 사이의 시리얼 통신을 모니터링하고 디버깅하는데 사용합니다. 아두이노 IDE로 코드를 작성할 때 시리얼 통신을 위한 관련 코드를 추가하고, 아두이노 보드에 업로드하면 Serial 객체를 사용하여 시리얼 데이터로 변수값이나 출력하고 싶은 내용을 보내고 받을 수 있습니다. 아두이노 IDE 오른쪽 상단의 아이콘을 클릭하면, 하단에 시리얼 모니터 창이 나타납니다. 아두이노 IDE 시리얼 모니터 시리얼 모니터 설정 송신 메시지 1)번에 시리얼 모니터에서 아두이노 보드로 보낼 송신 메시지를 입력합니다. Line encoding 2)번 line encoding은 1번에 송신 메시지 뒤에 추가해서 보낼 데이터를 설정합니다. 예를 들어 송신 메시지로 'Hello'를 보낼 경우, Hello 뒤에 보낼 데이터를 설정합니다. No line encoding은 송신 메시지 뒤에 보낼 데이터가 없을 경우 선택합니다. 새 줄은 송신 메시지 뒤에 New Line(10, Line Feed라고도 합니다.)을 보낼 경우, 선택합니다. 송신 데이터는 72(H) 101(e) l(108) l(108) o(111) NL(10)이 됩니다. 이 숫자들은 Ascii code에 정의되어 있습니다. Ascii Code 캐리지 리턴은 송신 메시지 뒤에 Carriage Return(13)을 보낼 경우, 선택합니다. Both NL & CR은 송신 메시지 뒤에 CR(13)과 NL(10)을 보낼 경우, 선택합니다. 송신 메시지 뒤에 데이터를 붙이는 이유는, 송신 데이터를 구분하기 위해서 입니다. 이 데이터가 송신 데이터의 끝이라는 것을 알려줍니다. 송신 메시지를 반복적으로 보낼 경우를 생각하면 사용하는 이유를 알 수 있습니다.  통신속도 3번은 통신 속도를 설정합니다. 시리얼

C 언어 - 아두이노 시작하기

 프로그래밍은 프로그래밍 언어의 명령을 모아 놓아 원하는 기능 혹은 동작을 하도록 하는 것입니다. 아두이노에서는 코드 혹은 명령을 모아 놓은 것을 스케치라고 합니다. 아두이노를 프로그래밍할 때 사용하는 C언어에 대해 알아보겠습니다. digitalWrite(13, HIGH); delay(500); digitalWrite(13, LOW); 함수 이 명령들은 작성된 순서대로 위에서 아래로 실행됩니다. 첫 번째 줄에서는 13번 핀의 출력을 HIGH로 설정합니다. 13번 핀에는 아두이노 보드에 있는 LED와 연결되어 있으므로 이 명령이 실행되면 LED가 켜지게 됩니다. 다음 두 번째 줄에서 500밀리 초 동안 대기한 후 세 번째 줄에서 13번을의 출력을 LOW로 설정해서 LED가 다시 꺼집니다. 위 코드를 살펴보면 알 수 있듯이 함수 이름을 지정할 때는 공백이 포함되지 않은 한 단어로 된 이름을 사용해야 합니다. digitalWrite는 아두이노 보드의 출력 핀을 설정하는 내장 함수입니다. 내장함수는 아두이노에 포함되어 있는 함수를 말합니다. 함수 이름은 대소문자를 구별한다는 점도 기억해야 합니다. digitalWirte로 써야지 DigitalWrite로 쓰면 안됩니다. digitalWrite 함수는 wiring_digital.c에 정의되어 있습니다. void digitalWrite(uint8_t pin, uint8_t val) digitalWrite 함수를 사용할 때는 설정할 핀 번호(uint8_t pin)와 핀 상태(uint8_t val)를 지정해 주어야 합니다. 이 두 가지 정보를 '인수'라고 합니다. 인수는 함수가 호출될 때 함수에 전달되는 값을 의미합니다. 함수의 매개변수들은 전체가 괄호로 묶여야 하고, 괄호 안에 있는 각 매개변수는 쉼표(,)로 구분지어야 합니다. 함수의 인수가 하나일 경우에는 쉼표가 필요없습니다. 각 줄은 세미콜론(;)으로 끝나야 합니다. 세미콜론은 한 명령의 끝을 표시합니다. uint8_t는 unsingned int

아두이노 우노 Arduino Uno - 아두이노 시작하기

이미지
 아두이노 보드 중에 가장 많이 사용하는 아두이노 Uno 보드에 대해서 알아보겠습니다. 아두이노 우노 Arduino Uno 아래 그림에서 아두이노 우노 보드를 볼 수 있습니다. 이 보드에 있는 여러 가지 부품에 대해 알아보겠습니다. 아두이노 우노 마이크로컨트롤러 Microcontroller 아두이노 우노 보드에는 ATmega328이라는 마이크로컨트롤러 칩이 사용됩니다. 이 칩은 직사각형 모양의 검정색 칩으로 28개의 핀을 가지고 있습니다. 마이크로컨트롤러 내부에는 있는 CPU(중앙 처리 장치)는 플래시 메모리에 저장되어 있는 프로그램 명령어를 가져와서 실행하는데 RAM에 있는 데이터를 가져와서 변경한 후 다시 저장하는 작업을 합니다. 마이크로컨트롤러에 내장된 EEPROM 메모리는 비휘발성 메모리로 아두이노 보드를 껐다가 다시 켤 경우에도 EEPROM에 저장되어 있는 데이터는 사라지지 않고 그대로 유지됩니다. ATmega328 블럭 다이아그램 마이크로컨트롤러 왼쪽 위에는 모서리가 둥근 은색 사각형 부품은 크리스탈 오실레이터로, 16MHz(1초 1600만번)의 클럭을 발생시켜서 한번의 클럭마다 덧셈이나 뺄셈 같은 수학 연산을 수행합니다. 맨 위 왼쪽을 보면 리셋 스위치가 있습니다. 이 스위치를 누르면 Reset 신호가 마이크로컨트롤러의 Reset 핀에 전달되어 마이크로컨트롤러의 Flash 메모리에 저장되어 있는 프로그램을 처음부터 시작합니다. USB 커넥터 오른쪽을 보면 USB 인터페이스 칩이 있습니다. 이 칩은 USB 신호레벨을 아두이노 보드에서 사용할 수 있는 레벨로 변환해 주는 역할을 합니다. 아두이노 우노 호환 보드에서는 정품 보드와 다른 USB 인터페이스 칩을 사용하기 때문에 USB 인터페이스 칩 드라이버 설치하는 작업이 추가적으로 필요합니다. 드라이버를 다운로드 받을 수 있는 방법은 다른 포스트를 통해 확인이 가능합니다. 아두이노 호환 보드 드라이버 설치 아두이노 전원 아두이노에 전원을 공급하는 방법은 2가지 방법이 있습니다. USB 커넥터를 이용하는

마이크로컨트롤러 Microcontroller - 아두이노 시작하기

이미지
 이번에는 아두이노의 핵심 역할을 하는 마이크로컨트롤러 Microcontroller에 대해 알아보겠습니다. 아두이노 우노의 마이크로컨트롤러 아두이노 우노의 마이크로컨트롤러는 마이크로칩 Microchip(원래 아트멜 Atmel)이라는 회사에서 만든 ATmega328P이라는 마이크로컨트롤러입니다. 마이크로컨트롤러 마이크로컨트롤러는 하나의 칩으로 구현된 작은 컴퓨터로 한 개의 CPU, 데이터를 저장하기 위한 RAM, 프로그램 데이터를 저장하기 위한 EEPROM 혹은 Flash Memory, 여러 개의 입출력 핀을 가지고 있습니다. 입출력 핀은 출력으로 다른 장치를 제어하거나 입력으로 다른 장치를 연결하는데 사용됩니다. 입출력 핀을 입력 핀으로 설정하면, 스위치가 눌렸는지 확인할 수 있는, 신호가 High인지 Low인지 확인할 수 있는 디지털 입력과 전압을 감지하는 아날로그 입력으로 사용할 수 있습니다. 입출력 핀을 출력 핀으로 설정하면 출력 핀을 Low(0V)나 High(5V)로 설정하여 Off 또는 On 상태로 지정할 수 있습니다. 출력 핀으로 LED를 켜고 끄거나, 모터 드라이버를 이용해서 모터를 제어할 수 있고 아날로그 출력(0 ~ 5V) 전압도 제어할 수 있습니다. 아두이노 우노 스펙 아두이노 우노 아두이노 우노에 장착된 ATmega328P에 대해서 알아봤습니다.