일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | ||||||
2 | 3 | 4 | 5 | 6 | 7 | 8 |
9 | 10 | 11 | 12 | 13 | 14 | 15 |
16 | 17 | 18 | 19 | 20 | 21 | 22 |
23 | 24 | 25 | 26 | 27 | 28 | 29 |
30 | 31 |
- 비짓재팬웹
- 교토 가볼만한곳
- 강릉
- 대전 신세계
- 서울 맛집
- 순천
- 오사카 여행
- 일본 후쿠오카 여행
- 하와이 액티비티
- 교토 여행
- 코엑스
- 아쿠아리움
- 영동 가볼만한곳
- 다낭 호이안 올드타운 맛집
- 하와이 가볼만한곳
- 하와이 여행
- 호텔 스카이파크
- 하와이 카페
- 낙산공원
- 교토역 스타벅스
- 제주도 여행계획
- 동해
- 엠버호텔
- 서울 가볼만한곳
- 오사카 가볼만한곳
- 제주도 여행 계획
- 다낭 호이안 올드타운 카페
- 하와이 맛집
- 베트남 다낭 태교 여행
- 제주도 가볼만한곳
- Today
- Total
나의 여행과 일상 일기장
(3) 캡스톤디자인 3강_라즈베리파이와 아두이노 시리얼 통신 본문
1. 라즈베리파이와 아두이노 시리얼통신
https://stackoverflow.com/questions/47735693/python-cannot-import-name-serial 문제해결
라즈베리파이에 직접적인 조도센서 연결에 어려움이 있었다 <- 납땜을 해야 했고 전용케이블을 구입 해야 했기 때문에 기존의 아두이노를 이용해서 라즈베리파이와 시리얼 통신하는 쪽으로 방향을 잡았다.
라즈베리파이와 아두이노 시리얼통신을 이용해서 아두이노로부터 값을 받아오려고 함
라즈베리파이와 아두이노 연동완료
2. 조도센서 시리얼통신
오픈소스HW 과목을 참고하여 구현
조도센서에 완전 밀착할 정도로 손을 가까이 대야 인식가능
1) 아두이노 코드(arduino_serial)
int lightPin = 0;
void setup(){
Serial.begin(9600);
}
void loop(){
Serial.printIn(analogRead(lightPin));
delay(1000);
}
//계속 loop문을 돌면서 라즈베리파이에 아날로그값을 넘겨준다.
2) 라즈베리파이 파이썬 코드(serialard.py)
import serial
port='/dev/ttyACMO'
SerialFromArduino = serial.Serial(port, 9600)
SerialFromArduino.flushInput()
while True:
input_s = serialFromArduino.readline()
print(input_s)
//아두이노의 아날로그값을 라즈베리파이에서 디지털 값으로 변환하여 출력
3) 사진
3. 조도센서와 라즈베리파이 파이카메라 연동(최종)
http://www.3demp.com/community/boardDetails.php?cbID=233 블로그 참고(파이썬으로 파이카메라 제어)
https://m.blog.naver.com/PostView.nhn?blogId=dokkosam&logNo=221168232261&proxyReferer=https%3A%2F%2Fwww.google.com%2F 블로그 참고 <- 저항을 사용해야 조도센서 인식이 더 잘된다.
1) 라즈베리파이 파이썬 코드(serialard.py)
import serial
from picamera import PiCamera
from time import sleep
camera = PiCamera()
port='/dev/ttyACMO'
SerialFromArduino = serial.Serial(port, 9600)
SerialFromArduino.flushInput()
while True:
input_s = serialFromArduino.readline()
print(input_s)
if(input_s <'150':
camera.start_preview()
sleep(3)
camera.rotation =180
camera.capture('/home/pi/capture/pic.jpg')
camera.stop_preview()
else:
continue
//조도값이 150 보다 작으면 파이캠이 촬영하고 파일을 '/home/pi/capture/pic.jpg' 형식으로 저장
// 조도값이 150 이상이면 while문을 계속 돈다.
//조도센서와 파이카메라는 연동 완료, 3주차는 초음파 센서를 연동하여 데이터베이스에 값을 넣을 수 있게 해야 한다.
4. 초음파센서와 라즈베리파이 연동(라즈베리파이와 바로 연결하는 방법, 라즈베리파이와 아두이노 연동하는 방법)
https://tony2012.tistory.com/17 블로그참고
1) 아두이노 코드(arduino_micro)
int trig = 9;
int echo = 8;
void setup(){
Serial.begin(9600);
pinMode(trig, OUTPUT);
pinMode(echo, INPUT);
}
void loop(){
DigitalWrite(trig, HIGH);
DelayMicroseconds(10);
DigitalWrite(trig, LOW);
int distance = pulseIn(echo, HIGH) * 17 / 1000;
Serial.print(distance);
delay(1000);
}
//trig(보내는 값), echo(되돌아오는 값)으로 거리를 구할 수 있다.
2) 라즈베리파이 파이썬 코드(serialmicro.py)
import serial
ser = serial.Serial('dev/ttyACOM', 9600);
while 1:
dustval = ser.readline();
print dustval;
// 아두이노 초음파 센서의 아날로그값을 디지털값으로 변환하여 출력 한다. 실행 결과 초음파센서는 잘 작동된다.
3) 사진
'일상일기' 카테고리의 다른 글
(6) 캡스톤디자인 6강_조도센서, 초음파센서, 번호판인식 수정 및 프로토타입 (0) | 2022.04.25 |
---|---|
(5) 캡스톤디자인 5강_차량 번호판 인식 (0) | 2022.04.25 |
(4) 캡스톤디자인 4강_라즈베리파이 tensorflow 설치 (0) | 2022.04.24 |
(2) 캡스톤디자인 2강_라즈베리파이 환경에서 LAMP설치 (0) | 2022.04.24 |
(1) 캡스톤 디자인 1강_라즈베리파이 리눅스 및 카메라 모듈 설치 (0) | 2022.04.23 |