HW(아두이노, micro python)
Search
Duplicate
Share
HW(아두이노, micro python)
YangPhago’s Mains(양파고)
목차(클릭하세요)
절친한 친구라고 설명하는 아두이노 책들이 많은데??
팩트 체크 해봅시다!
1. 아두이노 관련 기초지식
1-1. 어원
•
이탈리아어:
아르두이노 디브레아에서 유래
•
유럽 이탈리아의 북서부 지역의 이브레아라고 하는 작은 도시에 있는 IDII(=Interaction Design Institute Ivrea)에 있던 인물들이 개발
•
아두이노라는 이름이 아두이노 프로젝트에 선택된 이유
1-2. 아두이노가 만들어진 년도
•
2005년
2. 우노 R4와 개발환경 2.x
절칠한 친구? 아두이노
목차(클릭하세요)
R4버전을 오류없이 사용하려면 IDE버젼을 최신으로 유지해야 함
1. R4를 구매하는 결정적 이유
1-1. 매우 매력적인가??
•
물론, 마이크로 비트를 모방했다하면 할말이 없겠지만
1-2. 테트리스 애니메이션으로 test
docs.arduino.cc
A step-by-step guide to install the board package needed for the UNO R4 WiFi board.
•
UNO R4 WiFi에는 테트리스 애니메이션이 사전 로드되어 있음
•
애니메이션을 test해보기
2. LED 제어 익히기
docs.arduino.cc
Get off the ground with the Arduino UNO R4 WiFi built-in LED matrix. Learn the different techniques for controlling it, create animations, graphics or even games.
2-1.
UNO R4 WiFi LED 매트릭스 사용의 전체흐름
Uno R4 시작하기
목차(클릭하세요)
delay함수가 이상한 이유: 매개변수에 정한 시간(밀리 초) 동안 프로그램 멈춤. (1초는 1000 밀리 초)
멈춘동안 다른 그 어떤것도 하지 못함
1. delay()함수의 딜레마
Q. 아두이노에서 다음과 같은 상황이 가능할까?
•
초록불은 1초마다 깜빡이고, 빨간불은 버튼 클릭시에만 불이 켜지는??
이런 식의 작동방식이 떠오르겠지만, 결론은 안됨
•
왜? 안될까?
delay()함수를 사용하게 되면 delay시간동안 아무것도 하지 않고 “기다리기 때문”에 하나의 동작이 끝나야 다음 동작을 하게 됨
결론: 여러가지의 동작(=작업)을 동작하려는 시간에 정확하게 동작하게 하기 위해서는 delay가 없는 코드를 사용해야 함
1-1. 해결방안 3가지
1.
시간 분할 방식 (Time Division Multiplexing)
:
2.
인터럽트 기반 방식
millis()를 활용한 아두이노 중수되기
목차(클릭하세요)
이 페이지에서 설명하는 방식은 반드시 같은wifi에 연결필요 웹 브라우저 화면의 변경을 아두이노 안에서 html태그를 이용해 제어할 수 있음
WiFiClient클래스를 통해 client객체를 만들고, clinet객체를 조정하는 방식
[참조 사이트]
•
docs.arduino.cc
•
네이버 블로그 | 대한민국 No.1 전자부품 쇼핑몰 엘레파츠 공식 블로그
아두이노 우노 R4 WiFi - WiFi 연결하기
•
네이버 블로그 | 즐거움의 시작, 디바이스마트~♪
[Blynk 2.0] #1 아두이노 IOT WeMos D1 R1 & Blynk2.0으로 WiFi 제어하기 (LED 예제)
1.
아두이노 우노 R4 WiFi - WiFi 연결하기
1-1. 아두이노 우노 R4 WiFi를 네트워크에 연결해 원격으로 제어/데이터를 전송해보기
[주의점] 아두이노 우노 R4 WiFi는 2.4GHz 대역만 지원합니다.
(WiFi - 5GHz 사용 불가)
1-2.관련 라이브러리
•
WiFi는 사용을 위한 "WiFiS3.h" 라이브러리가 이미 존재함
1-3.예제_ SimpleWebServerWiFi
아두이노 IoT( wifi)기초예제 변형
목차(클릭하세요)
[참고 사이트]
(주)창의와교육
네이버 블로그 | 즐거움의 시작, 디바이스마트~♪
[Blynk 2.0] #1 아두이노 IOT WeMos D1 R1 & Blynk2.0으로 WiFi 제어하기 (LED 예제)
두 방식 비교표
1. Blynk란?
1-1. IoT 프로젝트를 위한 앱 빌더 플랫폼
•
스마트폰 앱으로 아두이노/ESP32 같은 하드웨어를 원격 제어할 수 있게 해주는 클라우드 기반 IoT 플랫폼
•
기존 예제와의 차이점?
1-2.
Blynk의 주요 구성 요소
Blynk 2.0 서비스는 크게 세 가지 부분으로 작동
•
Blynk App & Web Dashboard (인터페이스):
사용자가 스마트폰이나 PC 화면에서 버튼을 누르거나 그래프를 보는 곳
Blynk2.0으로 WiFi 제어하기
목차(클릭하세요)
반복문, 조건문, 클래스 등 기초적인 파이썬 문법을 이해했다는 가정하에
1. 네오픽셀
•
"개별 제어 가능한 RGB LED 다수가 원형으로 배열된 모듈 - 단 1개 핀으로 수십 개 LED 제어"
•
핵심:
•
참고 네오픽셀링은 8개부터 60개까지 다양함
1-1. pypy키트 기준 네오픽셀
•
총 12개의 LED가 연결된 네오픽셀링
•
GPIO 14번 핀에 연결되어 있음
1-2.네이픽셀링 켜기(기본)
•
홀수 led는 빨강, 짝수 LED는 노랑색으로 변경
2. 네오픽셀링 그라디에이션
[pyphy]2.네오픽셀
목차(클릭하세요)
VSC와 약간의 차이
[참고 주소]
https://docs.google.com/presentation/d/1ysLB7i02ymuARCsNSVMB4UTziY_HSr-H/edit
1. Thonny 인터페이스 환경
2. Thonny 개발환경 인터페이스
목차(클릭하세요)
사실 피지컬 컴퓨팅 교육은 중학교- 마이크로비트, 고등학교-아두이노가 최적화 과정인데 고등학교 교육과정에서 실제로 더 많은 활용가치를 가지는 파이썬을 피지컬 컴퓨팅과 융합하기 위한 고민중 [해결책1]-라즈베리파이 피코, ESP32, 파이보드, 마이크로 비트 등이 존재함 [해결책2] 근데 또 해결책1의 경우에는 회로 연결하느라 정작 코드작동 로직이나 센서와 엑츄에이터 상호작용에는 신경을 덜 쓰는 문제를 해결하기 위해 파이파이 키트를 기반으로 글을 연재
마이크로 파이썬은 라즈베리파이 피코, ESP32보드, 파이파이키트 등을 제어하기 위한 프로그래밍 언어
1. 마이크로 파이썬의 이해
링크:
https://micropython.org/
MicroPython - Python for microcontrollers
MicroPython is a lean and efficient implementation of the Python 3 programming language that includes a small subset of the Python standard library and is optimised to run on microcontrollers and in constrained environments.
1-1. 왜 존재하는가?
•
작은 컴퓨터(마이크로컨트롤러)에서 파이썬을 돌릴 수 있게 만든 경량 버전”
핵심 기능은 같지만, 제한된 자원(메모리, 저장공간)에 맞게 최적화됨
특히, 마이크로 파이썬에는 하드웨어를 제어할 수 있는 모듈(Machine 등)이 포함되어 있음
일반 파이썬 vs 마이크로파이썬
주의
마이크로 파이썬 사용 불가:
1.micro 파이썬 시작하기
목차(클릭하세요)
핀맵과 함께 보는 것을 추천
micro 파이썬 기초 핵심 요약
1. 하드웨어 제어 (machine 모듈)
하드웨어 제어의 가장 기본이 되는 핀 설정과 입출력 함수를 모아 놓은 모듈
•
대부분의 코드에 from machine import Pin가 상단위치
1-1.디지털 입출력 (Pin)함수
LED를 켜거나 버튼 입력을 받을 때 사용
•
핀 설정 메서드 (Pin.OUT: 출력, Pin.IN: 입력)
•
Pin
객체는 단순히 디지털 제어뿐만 아니라, 다른 고급 기능들을 활성화하기 위한 '기본 재료'로도 필수적으로 사용
참고: led.on() 또는 led.off() 함수도 사용가능
[pyphy]1.micro 파이썬 기초문법&함수
목차(클릭하세요)
파이파이키트 자체가 센서, 엑츄에이터가 이미 연결되어 있으므로 핀맵 정보 필요
실시간 정보를 받아 시간대별 센서 정보를 저장하는 작업은 상당한 난이도 필요
1.
센서(Sensor) 핀 연결 정보(4개)
1-1. 터치 센서, 컬러인식 센서, 온습도 센서, 조도센서
1-2.특이점
•
컬러인식 센서는 I2C통신 방식 사용
I2C통신 방식
•
2개 핀(SDA, SCL)으로 여러 센서 제어 가능
•
SDA (Serial Data): D21
•
SCL (Serial Clock): D22
•
여러 센서를 체인 형태로 연결 가능 (주소 다름)
2. 액추에이터(Actuator) 핀 연결 정보(3개)
[pyphy]3.센서&엑츄에이터 핀맵_cds실습
목차(클릭하세요)
피지컬AI는 아두이노Q로 시작하기 초소형·고성능
엣지 디바이스 AI(Edge AI)
플랫폼 아두이노 UNO Q로 리눅스의 지능과 MCU의 행동력을 결합한 하이브리드 코딩의 신세계
1. 참고사이트
1-1. 아두이노 공식 사이트
docs.arduino.cc
1-2.공식 사이트 한글번역본
•
현재 2분의 개발자분께서 공식사이트의 설명을 한글로 번역해주심
다시 보는 Arduino Uno Q
1장 Arduino UNO Q 주요 특징 및 사양 한눈에 보기 - 다시 보는 Arduino Uno Q
'개발자/ArduinoUnoQ' 카테고리의 글 목록
코딩, 전자회로, PCB 설계를 한 번에 마스터할 수 있는 올인원 키트! 코딩, 전자회로 기초, PCB 설계를 학습할 수 있는 종합 실습 도구입니다. ● 경기도 안양시 동안구 엘에스로 92, 19동 202호 ● 전화 031-479-6633 ● email: kimbongzo@gmail.com
1-3.개발자분들
•
실제 사용을 바탕으로 한 재구성
그래도 아두이노 컨셉은 지켰다, Arduino UNO Q 핸즈온
은은하게 느껴지는 똥맛.. Arduino UNO Q의 구석구석을 살펴보고 인공지능 기능을 테스트해봤습니다.
아두이노에 Home Assistant 설치하고 LED 껐다켜보기 (feat. Arduino UNO Q)
아니 아두이노에도 Home Assistant 설치 된다니까?!!! 내가 해봤다고!!!
1-4.대망의 사용자 까페
[uno_Q]1.입문기
목차(클릭하세요)
1. 핀맵
1-1. 전원 부분
[전원공급 방식]
•
UNO Q는 다음 3가지 방식으로 전원 공급이 가능
[재부팅]
•
전원이 인가되면
자동 부팅
되며, 전원 버튼을 따로 누를 필요는 없음
•
상단 전원 버튼은
5초 이상 길게 누르면 리눅스(MPU) 부분만 재부팅
[전원버튼]
1-2.
USB-C 커넥터
•
보드에 전원을 공급하고 프로그래밍하는 것 외에도 다양한 용도로 사용할 수 있는 USB-C 커넥터를 잘 사용해야 함
[uno_Q] 0.하드웨어 기본 사양
아두이노 Basic
mirco 파이썬
아두이노 + 인공지능