목록전체 글 (12)
JW's
- 4거리 신호등 중 붙어있는 3방향의 신호 각 4개를 제어 - 일정한 시간이 흐르면 다음 step으로 넘어가야 함. 반복됨. - 한방향 기준으로 파란불->노란불->빨간불/좌회전-> ….... 이렇게 1번의 step이 무한반복 - 1 set이 지날때마다 LED 4개의 바이너리 카운트 표시 - 1111이 최대이며, 그 다음은 0000 - 메인보드 내의 리셋 스위치 - 단, 리셋 스위치는 누른 후 땔 때에만 작동 - 파란불이 꺼질때까지 남은시간을 7segment에 표시 - 각 거리의 신호에 맞는 횡단보도 LED 꺼지기 2초전에는 빠르게 깜빡이게함 (파란불) - 외부보드에 Skip 스위치 기능 #ifndef SRC_MAIN_H_ #define SRC_MAIN_H_ #endif #ifndef SRC_BSP_BS..
먼저 통신을 위해 웹 서버를 구축한다. (명령어) sudo ./ngrok --region us http 5000 지역은 us로 설정했고, 포트 번호 5000을 사용한다. 명령어 실행 후에는 아래와 같이 통신이 시작된다. 그리고 Alexa console로 이동해서 생성된 url을 Endpoint에 작성한다. 그 후에는 intent 설정을 한다. Python 코드로 해당 intent에 따라 수행될 GPIO 동작들을 설정한다. from flask import Flask, render_template from flask_ask import Ask, statement from gpiozero import LEDBoard import time led = LEDBoard(18) app = Flask(__name__)..
먼저 Google STT / TTS를 사용하기위해 Google Cloud에서 계정을 만들고 API 설정해줍니다. import argparse from gpiozero import LED from time import sleep import os # 18번 LED이용 led = LED(18) # STT (Speech To Text를 위한 코드) def transcribe_file(speech_file): """Transcribe the given audio file.""" from google.cloud import speech import io client = speech.SpeechClient() # [START speech_python_migration_sync_request] # [START spe..
from time import sleep from gpiozero import PWMLED from signal import pause # 각 신호등별 led 지정 green= PWMLED(14) yellow = PWMLED(15) red = PWMLED(18) flag =0 # 초록불 3초 def led_green(): green.on() sleep(3) green.off() # 노란불 1초간격 깜빡임(0.5초 켜짐/ 0.5초 꺼짐) 5번 def led_yellow(): yellow.blink(0,0,0.5,0.5,5) sleep(5) # 빨간불 6초 def led_red(): red.on() sleep(6) red.off() while True: # 초록불 led_green() # 노랑불(깜빡) le..
import cv2 import os from tensorflow.keras.preprocessing.image import img_to_array from tensorflow.keras.models import load_model from tensorflow.keras.applications.mobilenet_v2 import preprocess_input import numpy as np # Haar Cascade 알고리즘 - 얼굴을 감지하는 객체 감지 알고리즘으로 미리 학습되고 훈련된 아래 xml 파일을 사용했다 #유사하르특징 사용 : 눈 쪽은어둡고 눈 아래쪽은 밝게 나옴 눈 사이는 밝고 눈부분은 어두움 -> 이러한 음영 특징을 자동으로 모아 캐스케이드 분류기가 작동하게 된다. #haaracasca..
#!/usr/bin/python3 from asyncio import subprocess from datetime import datetime from itertools import count from turtle import update import subprocess import pifacecad from time import sleep from pifacecad.tools.scanf import LCDScanf import pygame from pyowm.owm import OWM switch=0 input_time = [] time_match_flag=0 # 알람소리를 위한 설정 pygame.mixer.init() sound=pygame.mixer.Sound("/home/pi/alarm_sound..
PiCamera , OpenCV, 가상환경(virtualenv) 을 통한 마스크 인식 import cv2 import os from tensorflow.keras.preprocessing.image import img_to_array from tensorflow.keras.models import load_model from tensorflow.keras.applications.mobilenet_v2 import preprocess_input import numpy as np cascPath = os.path.dirname( cv2.__file__) + "/data/haarcascade_frontalface_alt2.xml" faceCascade = cv2.CascadeClassifier(cascPath..
먼저 qtcreator를 이용해 UI를 만들어줍니다. MainWindow 0 0 344 600 MainWindow 2 16 16 Qt::Horizontal 0 0 344 20 toolBar TopToolBarArea false 그 후 원하는 기능이 작동되도록 코드를 작성합니다. import sys from PyQt5 import QtWidgets, uic import pifacecad cad = pifacecad.PiFaceCAD() cad.lcd.backlight_on() formClass = uic.loadUiType("Dials.ui")[0] class MainWindow(QtWidgets.QMainWindow, formClass ): def __init__(self, *args, obj=None,..