일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- 아두이노
- ssh파일
- ssh원격
- 티스토리
- 확률공부
- 베이즈법칙
- 텍스트 검색
- Arduino
- ssh전송
- 파이썬 웹 개발
- CSV
- 웹 크롤링
- 파이썬 가상환경
- 파이참 가상환경
- 머신러닝
- 초대장
- BeautifulSoup
- Python
- ultrawave sensor
- 스케치
- 초음파
- 확률모델
- MEGA2560
- 파이썬 장고
- 아두이노 스케치
- 파이썬
- bs4
- non block
- urlretrieve
- 베이즈이론
- Today
- Total
목록프로젝트/아두이노 (5)
잡
초음파 센서를 사용할때 일반적으로 pulseIn을 사용하게 된다.그러나 이 함수는 신호가 들어올 때 까지 기다리므로 프로그램 전체가 일시적으로 정지하게 된다.물론 물체가 가까우면 상관이 없으나, 거리가 먼 경우 기기의 작동이 느려지는 것을 눈으로 확인할 수 있다. 실제 거리에 따라 모터의 속도가 달라짐을 확인할 수 있다. 이러한 문제를 해결하는데 가장 좋은 방법은 역시 인터럽트를 사용하는것.즉, 초음파 센서에서 트리거를 통해 보낸 후 수신은 하드웨어 인터럽트를 이용해 감지하여 시간을 측정하고 그 시간을 토대로 거리를 확인하는 방법이다.
아두이노를 사용해서 거리를 측정할 필요가 있을 경우에는 대체적으로 초음파센서를 활용한다.저렴한 가격에 괜찮은 성능을 보여주기 때문에 사용하기 좋다. 초음파센서는 초음파 송신부와 수신부로 나뉜다.일반적으로 거리를 측정하는 방법은 송신부에서 보낸 신호를 수신부에서 받을때까지 걸리는 시간을 체크하게 된다. 송신을 담당하는 핀은 Trig이고, echo는 수신하게 된다.송수신 신호의 간격을 음속에 곱하여 속도를 얻게 되며, 식은 다음과 같다. 시간 = time x 0.034 / 2 위 내용을 바탕으로 소스를 구현하였으며, 서보모터와 결합하여 회전하면서 거리를 수신할 수 있도록 하였다.여기에는 pulseIn함수를 사용하며, 말 그대로 신호에 입력변화를 감지하는데까지 걸린 시간을 확인한다.따라서 이 시간동안 프로그램..
서보모터를 이용하는 이유중에 하나는 정확한 제어라고 생각한다. PWM신호를 통해 원하는 각도만큼 혹은 속도만큼 제어가 가능하다.운이 좋게도 서보모터에는 대체적으로 모터드라이버가 들어있어, 큰 어려움 없이 제어가 가능하다.아두이노에서는 서보모터와 관련된 라이브러리를 제공하고 있어 더욱 편하게 코딩할 수 있다. 위 소스에 대해 간략하게 설명하면, 우선적으로 Servo 객체를 선언한다.각 객체를 attach함수를 사용하여 초기화 하는데, 변수는 서보모터의 신호선이 들어가는 디지털 포트를 입력해주면 된다.또한, 서보모터에서 각도는 write 함수를 통해 입력할 수 있고, 입력된 각도에 맞춰 서버모터가 회전하게 된다.위 예제에서는 0에서 180까지 또 180에서 0까지 각도를 변경하게 된다. 서보모터에서 허용되는..
아두이노 스케치를 시작하고 나면 위와 같은 화면이 나온다. setup부분은 초기 아두이노 포트등 여러 셋팅을 진행하는 함수를 작성하면 되고이후 loop에서 반복적으로 프로그램을 동작하게 된다. 따라서 처음 필요한 전처리문을 삽입하고핀모드나 주파수설정 M/S 설정등을 setup에서 설정해준후,본 함수를 loop에 작성하면 된다. 위 사진의 소스를 동작시키면 간단하게 28번 포트를 출력으로 설정한 후,주기적으로 신호를 출력하게 된다. 다음으로 컴퓨터에 연결된 아두이노 보드의 종류와 포트를 선택해주면 준비가 끝난다. 28번 포트를 빵판에 연결하고 나서 소스를 아두이노 보드에 올리면
이번 프로젝트의 기본 베이스는 아두이노다.물론 라즈베리파이를 쓰기도 하겠지만, nRF24L01 모듈을 쓰면서 원격으로 제어를 하는 것이 주를 이루기 때문에대부분의 작업은 아두이노로 작업하게 된다. 이전까지 여러 프로젝트를 진행했지만 대부분 하드웨어와는 관련 없는 부분이 많았다.그래서 아두이노에 대해 잘 모른다.천천히 아두이노 공부를 시작해야겠다. 우선 아두이노 스케치 IDE를 설치하는 방법 1. https://www.arduino.cc/ 에 접속한다. 2. 상단 메뉴중 SOFTWARE를 클릭 3. 각각 운영체제에 맞게 설치한다. 개인적으로 Windows Installer 나 Windows Zip으로 다운받으면 시간이 많이 걸리기 때문에윈도우 app을 통해 다운받는 것을 추천한다. 아무래도 앱스토어 처럼 ..