More actions
imported>hskim327 No edit summary |
imported>hskim327 No edit summary |
||
| Line 25: | Line 25: | ||
* ZeroBot이랑은 어떻게 연동할까? - 천천히 생각해봅시다 | * ZeroBot이랑은 어떻게 연동할까? - 천천히 생각해봅시다 | ||
=== 7.24 === | |||
* 약 10m의 거리에서 파워를 제공받다보니 파워부족으로 컨트롤이 잘안됨 | |||
** 0 ~ 180도로 반복할때 10번 중 2번 정도가 중간에 되돌아옴 | |||
** 예제 코드 | |||
1 import RPi.GPIO as GPIO | |||
2 import time | |||
3 pin = 18 | |||
4 GPIO.setmode(GPIO.BCM) | |||
5 GPIO.setup(pin, GPIO.OUT) | |||
6 p = GPIO.PWM(pin, 50) | |||
7 | |||
8 p.start(7.5) | |||
9 try: | |||
10 while True: | |||
11 p.ChangeDutyCycle(7.5) | |||
12 time.sleep(2) | |||
13 p.ChangeDutyCycle(12.5) | |||
14 time.sleep(2) | |||
15 p.ChangeDutyCycle(2.5) | |||
16 time.sleep(5) | |||
17 except keyboardInterrput: | |||
18 p.stop() | |||
19 GPIO.cleanup() | |||
* 별도의 전원필요할듯(5v) | |||
== 문제점 == | == 문제점 == | ||
* ZeroBot이 죽었을 경우 | * ZeroBot이 죽었을 경우 | ||
Revision as of 07:38, 24 July 2015
- 트윈콥터 제작 전 연습삼아서 ZeroPage에서 놀고 있는 라즈베리파이2(라파이)를 이용하여 ZP실문을 여는 아주 간단한 IOT도전
기획
- Slack-ZeroBot에게 문열라는 명령어를 주면 문을 열 수 있도록 함(ex- ZeroBot OpenDoor)
사용된 부품
- 라파이2(테스트용으로 라파이B+)
- 서보모터 - 한양대 자동차 대회때 사용하고 남은 1개 사용
- UTP선(약 10m) - 원래는 8개 선 중 4개는 랜선 3개는 서보모터 컨트롤하려다가 귀찮아서 3개만 사용
- 빵판(브레드보드) - 납땜하기 귀찮고 나중에 뭘 추가할지 몰라서...
설계
- 사용 언어 : 파이썬(해보니 C보다 훨~~~~~~~~~~~~~~~~씬 쉬움)
- 입구에 있는 버튼 하나만 눌러주면 문이 열리므로 스위치는 서보모터 하나로 단순하게 제작
- 세콤이 멍청하게 버튼 뜯을 수 있게 해놨을리도 없고 그래서 직접연결 안하고 이렇게 하는겁니다
- 무선동글을 이용하기에는 구입이 귀찮기도 하고 다른 무선신호가 많은 6피의 특성상 유선으로 할 예정
- 추후에 기능을 추가 할 수 있도록 라파이랙에 라파이를 두고 UTP선을 길게 뽑아서 서보모터만 입구버튼 상단에 장착
- 프로그램은 서보모터를 회전시켜 입구 앞에 있는 열림버튼은 눌렀다가 원위치 시킴
구현
- ip는 ZP에 할당받은 대역폭 중 하나를 사용
- 코드
아직안함ㅋ
- ZeroBot이랑은 어떻게 연동할까? - 천천히 생각해봅시다
7.24
- 약 10m의 거리에서 파워를 제공받다보니 파워부족으로 컨트롤이 잘안됨
- 0 ~ 180도로 반복할때 10번 중 2번 정도가 중간에 되돌아옴
- 예제 코드
1 import RPi.GPIO as GPIO 2 import time 3 pin = 18 4 GPIO.setmode(GPIO.BCM) 5 GPIO.setup(pin, GPIO.OUT) 6 p = GPIO.PWM(pin, 50) 7 8 p.start(7.5) 9 try: 10 while True: 11 p.ChangeDutyCycle(7.5) 12 time.sleep(2) 13 p.ChangeDutyCycle(12.5) 14 time.sleep(2) 15 p.ChangeDutyCycle(2.5) 16 time.sleep(5) 17 except keyboardInterrput: 18 p.stop() 19 GPIO.cleanup()
- 별도의 전원필요할듯(5v)
문제점
- ZeroBot이 죽었을 경우
- 직접 라파이에 접근하여 문을 연다
- Slack이 막힐 경우
- 설마;;;
- 불순한 의도로 라파이에 ssh로 접근하여 트롤링 해놓는 경우
- 노력이 가상해서 봐준다
- 물리적으로 라파이 전원 or 인터넷을 사용 못하게 하는 경우
- 현장범이면 빠따로....
- 다시 연결해야지....
그냥 귀찮아서 학생증으로 열고만다;;
