-
Ryan 라즈베리파이 도전기 : 9. 라즈베리파이 슈도코드프로젝트/2018_장애인주차구역단속시스템_일지 2018. 8. 7. 14:52
라즈베리파이에 사용할 센서 그리고 센서를 원하는 목적에 맞는 코드를 작성하기에 앞서서 어떻게 코드를 작성하는게 좋은가 고민을 하다가, 슈도코드를 작성하게 되었습니다.
의사코드(슈도코드, pseudocode[1])는 프로그램을 작성할 때 각 모듈이 작동하는 논리를 표현하기 위한 언어이다. 특정 프로그래밍 언어의 문법에 따라 쓰인 것이 아니라, 일반적인 언어로 코드를 흉내 내어 알고리즘을 써놓은 코드를 말한다. 의사(疑似)코드는 말 그대로 흉내만 내는 코드이기 때문에, 실제적인 프로그래밍 언어로 작성된 코드처럼 컴퓨터에서 실행할 수 없으며, 특정 언어로 프로그램을 작성하기 전에 알고리즘의 모델을 대략적으로 모델링하는 데에 쓰인다.
의사코드는 실제 프로그래밍 언어처럼 엄밀한 문법을 따를 필요가 없기 때문에 다양한 변종이 존재한다. 그러나 보통 사용자가 많은 C나 리스프, 포트란 프로그래밍 언어등의 문법을 본딴 모양이 많다. 엄밀한 묘사가 불필요한 부분에는 자연어가 자유롭게 쓰이기도 한다.
컴퓨터 과학의 전공 서적에서는 다양한 언어 구사자들이 모두 이해할 수 있도록 특히 의사코드를 많이 사용하여 설명한다. 또한 보통 의사코드는 저자마다 그 문법이 다르기 때문에, 책의 서두에는 의사코드의 문법이 간략히 설명되어 있기도 하다.
Import RPI.GPIO as gpio //파이 RPI.GPIO 라이브러리
Import time // time 라이브러리
From picamera import picamera // 파이카메라
From time import sleep // time , sleep
Trig=13 // 초음파 입력
Echo=19 // 초음파 출력
GPIO.setup(trig,gpio.out) //gpio trig 설정
GPIO.setup(echo,gpio.in) //gpio echo 설정
GPIO.setmode(GPIO.BCM) // BCM 설정
GPIO.setmode(18,GPIO.out) //출력 설정
카메라 =0 // 카메라 촬영 횟수변수
Try: // 오류제거
While(true) // 계속 작동해야되서 while문 탈출x
초음파 5초마다 작동
// 실시간으로 탈출하면 밧데리 문제있어서 5초로 지정
if(초음파 작동거리<기본거리 && 카메라 2회 미만)
// 기본 작동 알고리즘
//
사진촬영
카메라++(변수)
서버로 사진 파일 전송
5분뒤 다시 작동 // ㅋㅏ메라 2번 찍으면 정지.
if(초음파 작동거리==기본거리)
// 작동거리가 같으면 초기화
// 2회 찍고 차량 빠진경우
변수 0으로 리셋
if(초음파 작동거리==기본거리)
// 작동거리가 같으면 초기화
//
변수 0으로 리셋
if(사진가져오기 버튼 클릭) // 버튼 누르면 사진 가져오기
사진촬영
파일전송
Exept:
오류 발생시 제외처리
1.해당 구역 사진 가져오기(클릭)2.사진 촬영 및 파일 전송3.앱으로 사진 받기
참고 사이트 & 블로그
http://www.todaymart.com/m/17
'프로젝트 > 2018_장애인주차구역단속시스템_일지' 카테고리의 다른 글
Ryan 라즈베리파이 도전기 : 11. 링크모음 (0) 2018.08.23 Ryan 라즈베리파이 도전기 : 10. 라즈베리파이 포트포워딩 (0) 2018.08.20 Ryan 라즈베리파이 도전기 : 8. 비슷한 아이디어를 가진 회사: 장애인 주차구역 단속시스템 (0) 2018.08.01 Ryan 라즈베리파이 도전기 : 7. 카메라센서, 초음파센서 그리고 부제센서 (0) 2018.08.01 Ryan 라즈베리파이 도전기 : 6. 자료조사 및 추가부품 구매 (0) 2018.08.01 댓글