반응형

분류 전체보기 764

[아두이노] 파이썬 Pyserial로 Blink 예제 실행하기 (PC to Arduino)

목차 이번 과정은 아두이노 보드와 컴퓨터(PC)를 USB 케이블을 이용해서 연결하고 파이썬(Python)의 Pyserial로 명령을 아두이노에 전달하고 아두이노는 이를 실행하는 예제를 해보겠습니다. 이 실습을 진행하기 위해서는 아래의 과정이 필요합니다. 1. 아두이노 보드 프로그램 : Serial 통신에서 특정 명령어가 전달되면 Blinking 예제 실행 2. 컴퓨터(Visual Studio)로 파이썬 작성하고 Serial로 특정 명령어 전달 1. 아두이노 보드 프로그램 : Serial 통신에서 특정 명령어가 전달되면 Blinking 예제 실행 우선 이번 코드는 아두이노의 시리얼(Serial) 통신을 열고 아래 명령이 들어오면 LED를 0.5초 단위로 깜빡이면서 켜거나 꺼지는 코드를 작성할 것입니다. 1..

[아두이노] String함수: indexof, substring, length (텍스트 검색, 위치 찾기)

목차 이번 포스트는 문자열 (String) 관련 함수들 중에 중요 함수에 대해 알아보도록 하겠습니다. 함수를 코드로 돌리고 확인은 Arduino에서 제공하는 시리얼 모니터로 하겠습니다. 시리얼(Serial) 통신 사용 방법 및 모니터링 방법은 아래 링크를 참조하시면 됩니다. (https://scribblinganything.tistory.com/512) Arduino String 함수 : indexOf indexOf 함수는 문자열에서 원하는 문자(Character)나 부분 문자열(String)을 검색해주고 해당 문자의 위치를 index 번호 0부터 시작해서 시작 위치를 정수(integer)로 알려 줍니다. indexOf 함수의 Syntax는 아래와 같습니다. 문자열변수.indexOf("찾을 문자", 찾기..

[Python]텍스트를 음성으로 변조(변환)하기 (gTTS 모듈)

목차 파이썬 gTTS, playsound 설치 파이썬(Python)에서 제공하는 모듈 중에 gTTS라는 모듈이 있습니다. gTTS는 Google Translate’s Text-to-Speech API 의 약자로 구글 번역에서 만든 text to speech 를 연결해주는 API 입니다. 텍스트(Text)를 소리나게 출력하기 위해 우선 텍스트에서 음성 파일로 변환할 수 있는 gTTS를 아래와 같이 설치 합니다. pip install gtts 다음으로 음악 파일을 읽어주는 playsound 라는 라이브러리(Library)를 설치합니다. pip install playsound 파이썬 텍스트 음성 파일로 저장하고 출력하기 gtts 함수는 사용법이 간단합니다. 인자 값(Parameter)으로 아래와 같은 값을 입..

파이썬(Python) 2022.05.10

[아두이노]1초마다 프로그램 동작 시키기(millis(),delay(), scheduling, 스케쥴링)

목차 Arduino 스케줄에 따라 프로그램 동작 시키기 원하는 시간(Timing)에 원하는 코드(Code)를 실행시키는 방법에 대해 알아보겠습니다. 일반적으로 Atmega 칩에서 이러한 스케쥴링(Scheduling)을 하기 위해서는 타이머 인터럽트(Timer Interrupt)를 사용해서 원하는 시간에 특정 코드가 동작하게 만들어 줍니다. 아두이노(Arduino)에는 다행이도 millis 라는 함수를 사용해서 해당 라인에 왔을때 당시 시간을 밀리세컨드(milli second)로 Return 해줍니다. Delay 함수는 입력 값으로 밀리세컨드를 입력 값으로 받아서 그 시간동안 다른 코드를 진행하지 않고 홀드(Hold) 해서 시간을 보냅니다. 아래의 예제 코드를 통해 쉽게 이해할 수 있습니다. Arduino..

[아두이노]메모리가 부족할 때 처리방법(프로그램 저장 공간, 전역 변수, 지역변수)

목차 Arduino 메모리(Memory) 공간이 작을 때 아두이노 스케치에서 코드를 작성하고 컴파일(Compile)을 진행하면 아래와 같은 메세지를 받을 수 있습니다. 스케치는 프로그램 저장 공간 3242 바이트(10%)를 사용. 최대 32256 바이트. 전역 변수는 동적 메모리 226바이트(11%)를 사용, 1822바이트의 지역변수가 남음. 최대는 2048 바이트. 앞서 아두이노를 구성하는 메모리(Memory) 공간에 대해 살펴 보았습니다. 메모리에 대해 잘 이해가 안되시면 괄호안의 링크를 참조하시길 바랍니다. (https://scribblinganything.tistory.com/519) 여기서 프로그램 저장 공간은 프로그램 메모리(Program Memroy, Flash Memory)를 의미 합니다...

[아두이노]메모리 종류와 기능 (Program Memory, Flash Memory, EEPROM)

목차 아두이노(Arduino) 메모리란? : 종류 아두이노는 위 그림과 같이 3가지의 메모리로 구성됩니다. Program Memory Data Memory EEPROM 아두이노(ATmega168)의 경우 Program Memory의 사이즈는 32KByte 이고 Data Memory는 2KByte의 크기이고 EEPROM은 0.5KByte 입니다. 아두이노(Arduino) 메모리란? : 기능 Program Memory는 플래시 메모리(Flash Memory)라고도 하는데 사용자가 스케치 소프트웨어에서 작성한 코드는 Program Memory로 올라 갑니다. Data Memory는 SRAM(Static Random Memory)로 구성되어 있는데 장점은 CPU에 가까이 위치하여 속도가 빠릅니다. 하지만 리셋(..

[닌텐도 스위치 게임 리뷰] 닌텐도 스위치 스포츠(Nintendo Switch Sports)

목차 닌텐도 스위치 스포츠(Nintendo Switch Sports) 구성품 평소에 게임을 많이 하지 않지만 닌텐도 댄스(Dance) 만큼은 즐기고는 있었습니다. 그러던 중에 닌텐도에서 스위치 스포츠라고 정말 몸만 써서 하는 운동 게임을 출시하는 것을 보고 바로 질렀습니다. 우선 구성품은 위에 사진과 같이 왼쪽에 케이스와 작은 게임칩과 다리에 센서를 묶을 수 있는 스트랩으로 이루어 져있습니다. 오른족이 닌텐도 스위치는 기본으로 가지고 있어야지 할 게임을 시행할 수 있습니다. 게임 종류는 아래와 같습니다. 발리볼(Volley Ball) 배드민턴(Badminton) 축구(Soccer) 볼링(Bowling) 칼싸움 테니스(Tennis) 축구의 경우 허벅지에 스트랩을 감고 해야하기 때문에 2인 플레이를 위해서는..

[아두이노]시리얼 통신: 컴퓨터에서 보드로 메세지 주고 받기(Send, Recieve, Serial)

목차 Arduino : Serial Communication 으로 PC와 데이터 주고 받기 이번 시간에는 Serial 통신 방법을 사용해서 컴퓨터의 USB 포트를 통해 메세지(Message)를 주고 받는 방법을 알아보겠습니다. 하드웨어 구성은 링크를 참조 하시면 됩니다. (https://scribblinganything.tistory.com/512) 코드는 간단하기 때문에 아래 예제 코드를 통해 설명하겠습니다. 예제 코드>> void setup() { Serial.begin(9600); while (!Serial) { ; } } void loop() { if (Serial.available() !=0 ) { String a_var = Serial.readStringUntil('\n'); String b_..

[아두이노] String함수: toInt, toFloat, toUpperCase, toLowerCase

목차 이번 포스트는 문자열 (String) 관련 함수들 중에 중요 함수에 대해 알아보도록 하겠습니다. 함수를 코드로 돌리고 확인은 Arduino에서 제공하는 시리얼 모니터로 하겠습니다. 시리얼(Serial) 통신 사용 방법 및 모니터링 방법은 아래 링크를 참조하시면 됩니다. (https://scribblinganything.tistory.com/512) Arduino 문자열 toInt 함수 toInt 함수(Function)는 문자열(String)을 정수(Integer)로 변경해줍니다. 정수로 변경 뒤에 수식(math)으로 처리하기 용이 합니다. 아래 예제 코드를 통해 쉽게 이해할 수 있습니다. 참고로 Integer 정수는 8비트(bits) 보드에서 사이즈는 2바이트로 16비트 입니다. 예제 코드>> vo..

[체중계 리뷰]인바디 다이얼 체중계 Review (Inbody H20B)

목차 인바디 다이얼 체중계 장단점 리뷰 위에 제품은 제가 구매한지 벌써 2년이 지난 제품입니다. 화장대 밑에 지저분하게 배치해 놓았는데 실용도 만큼은 최고인 제품입니다. 매일 측정하면서 체지방률을 검사하면 압박이 장난이 아닙니다. 사실 단점은 크게 없습니다. 화장대에 놓아서 머리카락이 위로 자주 올라가고 손잡이 부분 아래에 먼지가 끼는 정도가 단점일 듯 합니다. 그 외에는 장점만 있는 듯 합니다. 아래에 제가 생각하는 장점에 대해 간단하게 나열해보겠습니다. 1. 짧은 측정 시간 : 5~10초 2. 오래가는 배터리 수명 3. LCD 화면으로 간단하게 결과 확인 4. 인바디(Inbody) 앱 연동으로 추적 관리 우선 측정은 내 프로필을 장비에 입력합니다. 간단하게 키와 나이 정도만 입력하시면 됩니다. 그리고..

반응형