본문 바로가기
728x90

전체 글110

서보모터 함수선언과 제어 1. 아두이노 함수 선언 아두이노는 C언어 기반으로 void 함수이름(){ } 형식으로 문법을 선언할 수 있다. 2. 함수 선언과 각도 제어 아두이노에서 함수를 선언하여 특정 작업을 수행하는 코드 블록을 만들 수 있습니다. 이 예제에서는 move90과 move180이라는 두 개의 함수를 선언하여 서보모터를 각각 90도와 180도 위치로 움직이게 합니다. 먼저, Servo.h 라이브러리를 포함시키고 서보모터 객체를 생성합니다. 그 다음, setup() 함수에서 서보모터를 특정 핀에 연결합니다. loop() 함수 내에서는 두 개의 사용자 정의 함수를 번갈아가며 호출하여 서보모터가 0도에서 90도, 그리고 0도에서 180도로 움직이게 합니다. 사용자 정의 함수 move90()과 move180() move90(.. 2024. 3. 25.
아두이노 서보모터 활용 1. 서보모터란 ?     서보모터(Servo Motor)는 회전 각도를 정밀하게 제어할 수 있는 모터로, 로봇팔, 자동문, RC(라디오 컨트롤) 장난감 등     다양한 곳에 사용됩니다.      특히 제한된 범위 내에서 위치를 정확하게 제어해야 할 때 많이 활용됩니다.  2. 서보모터의 작동 원리     서보모터는 DC 모터, 제어 회로, 위치 센서로 구성되어 있습니다. 위치 센서는 모터의 현재 위치를 감지하고,     이 정보를 제어 회로에 전달하여 원하는 위치로 모터를 정밀하게 조정할 수 있습니다.       가. DC 모터 : 서보모터의 핵심 구성 요소로, 전기적 에너지를 기계적 에너지로 변환합니다.        나. 제어 회로 : 입력 신호에 따라 모터의 회전 속도와 방향을 제어합니다.    .. 2024. 3. 18.
아두이노 배열(자료구조)로 피에조 스피커 활용하기 1. 배열이란 ?      배열(Array)은 여러 개의 데이터를 한 곳에 모아서 저장하는 방법입니다.      예를 들어, 우리가 도, 레, 미, 파, 솔, 라, 시의 음계를 각각 따로따로 변수에 저장하는 대신,      배열을 사용하면 이 모든 음을 하나의 리스트에 저장할 수 있습니다. 2. 배열의 특징 :동일한 타입의 데이터를 저장합니다. 예를 들어, 모두 정수이거나 모두 문자여야 합니다.인덱스를 사용하여 배열의 특정 요소에 접근할 수 있습니다. 인덱스는 0부터 시작합니다.        예를 들어, '도', '레', '미' 음을 배열로 저장한다면: notes[0]은 262 (도)notes[1]은 294 (레)notes[2]는 330 (미)를 의미합니다.       1. 인덱스(Index)란 ?   .. 2024. 1. 26.
math 라이브러리 활용 1. math 라이브러리 파이썬의 math 라이브러리는 수학적인 연산을 수행하는 함수와 상수들을 제공하는 표준 라이브러리 모듈 중 하나 이 라이브러리를 사용하면 다양한 수학적인 작업을 수행할 수 있다. 가. 수학적 연산 : math 라이브러리는 다양한 수학적 연산을 수행할 수 있도록 다양한 함수를 제공 예를 들어, 삼각함수 (sin, cos, tan), 제곱근 (sqrt), 로그 (log), 지수 (exp), 올림 (ceil), 내림 (floor), 절댓값 (fabs) 등을 계산할 수 있다. 나. 상수 : math 라이브러리는 몇 가지 유용한 수학적 상수도 제공한다. 예를 들어, 파이 (π) 값을 가져오려면 math.pi를 사용할 수 있다. 2. 두점 사이의 거리 or 피타고라스 활용 가. 두점사이의 거.. 2023. 11. 28.
mediapipe hands 활용 1. 핸즈모델 좌표 활용 하기 좌표에 따라 조건문을 활용하여 아래와 같이 왼쪽과 오른쪽을 구분해 보자. 좌표에 따라 왼쪽, 오른쪽 구분 2023. 11. 22.
cv2.line() 함수로 선 만들기 1. cv2.line( ) 함수 활용하기. cv2.line(선을 그릴 이미지, 선의 시작 좌표, 선의 끝 좌표, 선의 색상 (b,g,r) , 선굵기 ) # 이미지의 중간에 세로로 흰색 줄을 그립니다. height, width, _ = frame.shape middle_x = width // 2 # 이미지의 가로 중간 지점 cv2.line(frame, (middle_x, 0), (middle_x, height), (255, 255, 255), 2) # 흰색 줄 그리기 위 코드 cv2.line 함수는 다음 인수를 받습니다. - frame : 선을 그릴 이미지 - (middle_x, 0) : 선의 시작점 좌표 (가로 중간, 화면 맨 위) - (middle_x, height) : 선의 끝점 좌표 (가로 중간, .. 2023. 11. 14.
미디어 파이프 핸즈 1. 핸즈 모델 활용하기. 미디어파이프는 구글에서 개발한 오픈소스 미디어 처리 프레임워크로, 비디오 및 오디오 데이터의 실시간 처리와기계 학습을 위한 강력한 도구를 제공합니다. 미디어파이프는 머신러닝 모델의 입력으로 다양한 미디어 데이터를 효율적으로 처리하고 분석하는 데 사용됩니다. 2. 핸즈 모델 기본코드 ========================================================================# 미디어파이 핸즈import cv2import mediapipe as mp# 미디어 파이프의 Hand 모델을 로드합니다.mp_drawing = mp.solutions.drawing_utilsmp_hands = mp.solutions.handscap = cv2.Vi.. 2023. 11. 3.
AI hello bot (face detection + 음성출력) import 2023. 11. 3.
(face 객체인식) 인공지능 hello bot 만들기 1. pyglet 피글렛 라이브러리 활용 https://swmakerjun.tistory.com/50 pyglet (피글렛) 활용 음원 파일 재생 1. pyglet Pyglet은 파이썬 프로그래밍 언어를 사용하여 멀티미디어 및 그래픽 응용 프로그램을 개발하기 위한 크로스 플랫폼 라이브러리입니다. 주로 비디오 게임, 시뮬레이션, 교육 소프트웨어 등 swmakerjun.tistory.com 전 시간 피글렛 라이브러리를 활용하여 MP3 파일 재생하는 코드를 활용하도록 하자. 1) import pyglet ( 피글렛 라이브러리 호출 ) 2) face_check 변수 선언 : 얼굴 체크하는 변수를 선언한 이유는 얼굴이 객체인식되어 무한 반복 mp3 중복 출력을 방지하기 위해서 이다. 3) 얼굴 객체인식 검출된 부.. 2023. 9. 27.
728x90
반응형