예전 및갤시절 유리구두 인증이랑 chastikey도 알려주고 타임로터도 올리던 놈임

그리 어렵지않고 소스도 올려줄거고 제작비도 5만원 안팎이니까 해봐라

최대한 응애난이도로 설명해줌

그리고 UFO.SA도 대응가능하니 참고바람


필수품

굴러다니는 8기가 이상 sd카드

라즈베리파이3 이상 4만5천정도? 

l298n 모터 드라이버 모듈 https://www.icbanq.com/P008559954 2600원

점퍼 케이블 암/암 수/암 한세트씩 


있으면 좋은것

진동기 개조후 감쌀 수축튜브

dc 잭 케이블 https://www.icbanq.com/P008244918 품절이긴한데 비슷한거 찾아봐

dc배럴 잭 어댑터 https://www.icbanq.com/P005672291 이것도 용산이나 구로가면 싼거있는데 그거써라

보조배터리 2A나오는거 핸드폰 충전기로 구동해도좋지만 무선을 좋아한다면야


이제부터 제작임

1.라즈베리 준비

라즈베리파이 세팅은 구글링해서 배워와라

팁이라면 그냥 라즈베리에 모니터 마우스 키보드 꼽고 작업해라 무선으로 환경잡는거 겁나빡세다

라즈베리 화면만 보이면 블루투스를잡든 와이파이를잡든 네트워크 금방 잡으니까 너무 어려워 하진마라


한번 아이피주소 알아내면 공유기에 연결하고 vnc로 무선작업 가능하니까 처음만 좀 고생해라

os만 잘구우면 실패할일없음


2. 회로연결



저거대로 연결하되 12v에 가는 빨간선을 라즈베리의 5v 선에만 연결하면 끝이다 당연히 모터그림은 진동기에 연결하는거고

우리가 쓸건 대용량 모터가아니라 ㅈ만한 로터니까 라즈베리자체의 5v만으로도 충분함

대신 라즈베리전원으로 보조배터리를 사용한다면 2A이상 나오는거 써야 안정적임


3. 코드작성

이건 내가 작성해둔 코드를 그냥 올려줄게

설명도 옆에 달아줄테니 읽어보고 라즈베리파이에서 파이썬으로 실행하셈


import RPi.GPIO as GPIO

import sys

import time

import csv                     #파이썬의 라이브러리들인데 GPIO는 설치해야할수도있음 구글링


GPIO.setmode(GPIO.BCM)    

af=20          #af=a front,ab=a back ap=a power 라는뜻임 구분하기쉽게해둔것뿐

ab=21         #a는 모터드라이버 a에 연결할핀들 b는 b에 연결할 핀들 번호임

ap=16         #위에 올려준 핀번호맵 보고 니가 원하는데에 꼽은다음 번호만 수정하셈


bf=13

bb=19

bp=26


GPIO.setup(af,GPIO.OUT)      #여기서부턴 핀설정 초기화

GPIO.setup(ab,GPIO.OUT)

GPIO.setup(ap,GPIO.OUT)


GPIO.setup(bf,GPIO.OUT)

GPIO.setup(bb,GPIO.OUT)

GPIO.setup(bp,GPIO.OUT)


pwmL=GPIO.PWM(ap,100)

pwmL.start(0)


pwmR=GPIO.PWM(bp,100)

pwmR.start(0)                    


def rotor(r):                        #모터의 회전방향을 결정하는함수

    if r==0:                         #UFO.SA 대응할려고 넣음

        GPIO.output(af,True)

        GPIO.output(ab,False)

        GPIO.output(bf,True)

        GPIO.output(bb,False)

    if r==1:

        GPIO.output(af,False)

        GPIO.output(ab,True)

        GPIO.output(bf,False)

        GPIO.output(bb,True)


rotor(0)


f=open("pattern.csv","r")  #여기서부터 파일처리 csv 이름 꼭 pattern.csv 로 해야 인식한다


mid=[]

timer=[]

power=[]


read=csv.reader(f)


m=int(input('ufo is 0 time is 1'))       #0입력하면 UFO.SA모드고 1입력하면 타임로터 모드임

if m==0:                                     #UFO 변수설정

    for row in read:                        #power.append가 파워 설정하는 변수임

        timer.append(float(row[0])/10) #너무 쌔다 싶으면 int(row[])를 2로나누든 0.몇을 곱하든 값을 줄이셈

        mid.append(int(row[1]))

        power.append(int(row[2]))      


if m==1:                                     #타임로터 변수설정

    for row in read:

        timer.append(float(row[0]))

        power.append(int(row[1])/10)


    

s=int(input('start is 1'))           #준비가 다끝나면 다시 1 입력해서 시작

                                        #물리적인 스위치가 없으니까 여기서 치는 엔터가 타임로터의 PGM스위치 역할임


time.sleep(timer[0])               #여기서부터 실질적 구동부 

i=0

if m==0:            #UFO구동부분

    while 1:    

        rotor(mid[i])

        pwmL.ChangeDutyCycle(power[i])

        pwmR.ChangeDutyCycle(power[i])

        time.sleep(round(timer[i+1]-timer[i],3))

        i=i+1

        if timer[i]==timer[len(timer)-1]:

            break

if m==1:          #타임로터 구동부분

    while 1:    

        pwmL.ChangeDutyCycle(power[i])

        pwmR.ChangeDutyCycle(power[i])

        time.sleep(round(timer[i+1]-timer[i],3))

        i=i+1

        if timer[i]==timer[len(timer)-1]:

            break


GPIO.cleanup()  #다 기동하면 종료하는데 전원 뽑아도 상관은없다 


4.사용법

어차피 위에서 라즈베리 세팅하다 vnc가 뭔지 어케쓰는지 익혔을테니 넘어가고



먼저 /home/pi 위치에 파이썬 실행파일과  pattern.csv를 같이놓고


왼쪽위에서 4번째에있는 콘솔버튼을 누르고 프로그램 이름을 이렇게 타이핑하셈

python2든python3이든 상관없음 되는걸로 치셈



아까 코드에서 설명해준대로 입력하면 바로 작동함 음성하고 타이밍 맞는지 확인하고 즐기셈


모바일에선juiceSSH라는 앱을 사용하셈 vnc말고 저 콘솔만 띄워줌 연결은 ip주소 vnc랑 똑같이 하면댐

그럼 저렇게 콘솔만 뜨고 빠르게 실행가능함 음성재생 해두고 타이밍 지시에 엔터만 눌러주면 핸드폰 잠그고 즐기면댐


6. 그래서 내꺼는 어떻냐구?



아직 케이스를 다 못만들어서 방치중임 

저렇게 잭으로 개조 해놓으면 다시쓰기 편하니까 알아두고

SA는 진품을 뜯어서 저렇게 만들어둔거임 저래도 잘만 돌아가더라


끝으로

나도 2018년부터 타임로터 만들려고 고생했었는데 찾는애들 잇길래 한번 도전해보라고 이렇게 올린다

안되는건 여기서 질문하지마셈 라즈베리에 l298n 모듈로 모터 어떻게 돌리냐고 딴데다 질문하셈

나도 실력20 구글 80이야 



그리고 타임로터용으로 가장 추천하는건

RJ190022임 최면은아니고 오나서포

컨셉은 흔하디흔한 쌍둥이 오나서포인데 진동기를 사용하는게 특징임

개쩌는게 타임로터로 들으면 보통의 오나서포에서 맛보지못하는 몬가...몬가를 느낄수있음

얘네들이 말하는대로 진동하니까 신기하면서 그냥 슨도메랑은 또 기분다르고 졸라민감해짐