Exemplo n.º 1
0
import numpy as np
import sys, select
import cv2
import time
import os
import RPi.GPIO as GPIO
from minisumo_motorcontrol2 import Motors_Class
from lineSense2 import lineSensor_Class
from shortrangemethod import shortrange_Class
from minisumo_motorcontrol3 import Motors_Class2
#anything less than 15 switch to short range sensors
motor1 = Motors_Class()
lineSensors = lineSensor_Class()
shortrange = shortrange_Class()
motor2 = Motors_Class2()
cap = cv2.VideoCapture(0)
SPICLK = 18
SPIMISO = 23
SPIMOSI = 24
SPICS = 25


class longrange_Class:
    def __init__(self):

        GPIO.setmode(GPIO.BCM)
        global SPICLK
        global SPIMISO
        global SPIMOSI
        global SPICS
Exemplo n.º 2
0
import numpy as np
from lineSense2 import lineSensor_Class
from minisumo_motorcontrol2 import Motors_Class
from minisumo_motorcontrol3 import Motors_Class2
import sys, select
import cv2

lineSensors = lineSensor_Class()
motors= Motors_Class()
motors2= Motors_Class2()
cap = cv2.VideoCapture(0)

# take first frame of the video
ret,frame = cap.read()

# setup initial location of window
r,h,c,w = 250,150,400,150  # simply hardcoded the values
track_window = (c,r,w,h)

# set up the ROI for tracking
roi = frame[r:r+h, c:c+w]
hsv_roi =  cv2.cvtColor(frame, cv2.COLOR_BGR2HSV)
mask = cv2.inRange(hsv_roi, np.array((0., 60.,32.)), np.array((180.,255.,255.)))
roi_hist = cv2.calcHist([hsv_roi],[0],mask,[180],[0,180])
cv2.normalize(roi_hist,roi_hist,0,255,cv2.NORM_MINMAX)


# Setup the termination criteria, either 10 iteration or move by atleast 1 pt
term_crit = ( cv2.TERM_CRITERIA_EPS | cv2.TERM_CRITERIA_COUNT, 10, 1 )
direct='w'
lastdist=0
Exemplo n.º 3
0
import time
from lineSense2 import lineSensor_Class 
from minisumo_motorcontrol2 import Motors_Class
from longrangemethod import longrange_Class
from shortrangemethod import shortrange_Class
lineSensors= lineSensor_Class()
motors= Motors_Class()
longrange= longrange_Class()
shortrange= shortrange_Class()

motors.motor_move("w",4)

while(True):
	if(1==lineSensors.check1()):
		motors.motor_move("x",0)
		time.sleep(1)
		motors.motor_move("s",4)
	elif(1==lineSensors.check2()):
		motors.motor_move('x',0)
		time.sleep(1)
		motors.motor_move('s',4)
	elif(1==lineSensors.check3()):
		motors.motor_move('x',0)
		time.sleep(1)
		motors.motor_move('s',4)
	elif(1==lineSensors.check4()):
		motors.motor_move('x',0)
		time.sleep(1)
		motors.motor_move('s',4)
	elif(shortrange.rngsens()>3):
		motors.motor_move('x',0)
Exemplo n.º 4
0
from lineSense2 import lineSensor_Class
from longrangemethod import longrange_Class
from shortrangemethod import shortrange_Class
from minisumo_motorcontrol2 import Motors_Class
from accelerometer import Accel

lineSensors = lineSensor_Class()
motors = Motors_Class()
longrange = longrange_Class()
shortrange = shortrange_Class()

short = shortrange.rngsens
longone = longrange.rangesens
# l1 = lineSensors.check1()
# l2 = lineSensors.check2()
# l3 = lineSensors.check3()
l4 = lineSensors.check4()
results = Accel.mag_accel()

# test variables
# l1 = 0
# l2 = 1
# l3 = 1
# l4 = 1

# short = 12
# long = 60
# ax = -4

axtotal = results[0]
aytotal = results[1]
Exemplo n.º 5
0
import time
from lineSense2 import lineSensor_Class
from minisumo_motorcontrol2 import Motors_Class
from longrangemethod import longrange_Class
from shortrangemethod import shortrange_Class
lineSensors = lineSensor_Class()
motors = Motors_Class()
longrange = longrange_Class()
shortrange = shortrange_Class()

motors.motor_move("w", 4)

while (True):
    if (1 == lineSensors.check1()):
        motors.motor_move("x", 0)
        time.sleep(1)
        motors.motor_move("s", 4)
    elif (1 == lineSensors.check2()):
        motors.motor_move('x', 0)
        time.sleep(1)
        motors.motor_move('s', 4)
    elif (1 == lineSensors.check3()):
        motors.motor_move('x', 0)
        time.sleep(1)
        motors.motor_move('s', 4)
    elif (1 == lineSensors.check4()):
        motors.motor_move('x', 0)
        time.sleep(1)
        motors.motor_move('s', 4)
    elif (shortrange.rngsens() > 3):
        motors.motor_move('x', 0)
Exemplo n.º 6
0
from lineSense2 import lineSensor_Class
from longrangemethod import longrange_Class
from shortrangemethod import shortrange_Class
from minisumo_motorcontrol2 import Motors_Class
from minisumo_motorcontrol3 import Motors_Class2
from accelerometer import Accel
import time	
lineSensors= lineSensor_Class()
Accel1 = Accel()
motor1= Motors_Class()
motor2 = Motors_Class2()
longrange= longrange_Class()
shortrange= shortrange_Class()

try:
	while True:
		motor1.motor_move('a', 3)
		motor2.motor_move('a', 3)
		shortrange.rngsens()
		lineSensors.check1()
		lineSensors.check2()
		lineSensors.check3()
		lineSensors.check4()
		longrange.rangesens()
except KeyboardInterrupt:
	GPIO.cleanup()
		
	
Exemplo n.º 7
0
import time

#load files

from lineSense2 import lineSensor_Class
from longrangemethod import longrange_Class
from shortrangemethod import shortrange_Class
from minisumo_motorcontrol2 import Motors_Class
from minisumo_motorcontrol3 import Motors_Class2
from accelerometer import Accel

#Create objects	and variables
lineSensors= lineSensor_Class()
motors= Motors_Class()
motors2 = Motors_Class2()
longrange= longrange_Class()
shortrange= shortrange_Class()
mouse_data = mouse_pos(stat,x,y)
first = 'y'
origin = 'y'

##can move this function into the lineSensors class
def checkLines():
	if lineSensors.check1() == 1:
		motors.motor_move('a', 4)
		motors.motor_move('a', 4)
		detect = 1
	elif lineSensors.check2() == 1:
		moving('x')
		motors2.motor_move('x', 0)
		motors.motor_move('a', 4)
Exemplo n.º 8
0
from minisumo_motorcontrol2 import Motors_Class
from minisumo_motorcontrol3 import Motors_Class2

motors=Motors_Class()
motors2=Motors_Class2()
while(1):
	direct = raw_input()
	motors.motor_move(direct,6)
        motors2.motor_move(direct,6)
Exemplo n.º 9
0
from lineSense2 import lineSensor_Class
from longrangemethod import longrange_Class
from shortrangemethod import shortrange_Class
from minisumo_motorcontrol2 import Motors_Class
from minisumo_motorcontrol3 import Motors_Class2
from accelerometer import Accel
import time
lineSensors = lineSensor_Class()
Accel1 = Accel()
motor1 = Motors_Class()
motor2 = Motors_Class2()
longrange = longrange_Class()
shortrange = shortrange_Class()

try:
    while True:
        motor1.motor_move('a', 3)
        motor2.motor_move('a', 3)
        shortrange.rngsens()
        lineSensors.check1()
        lineSensors.check2()
        lineSensors.check3()
        lineSensors.check4()
        longrange.rangesens()
except KeyboardInterrupt:
    GPIO.cleanup()
Exemplo n.º 10
0
from lineSense2 import lineSensor_Class
from longrangemethod import longrange_Class
from shortrangemethod import shortrange_Class
from minisumo_motorcontrol2 import Motors_Class
from minisumo_motorcontrol3 import Motors_Class2
from accelerometer import Accel
import time
import RPi.GPIO as GPIO
lineSensors = lineSensor_Class()
Accel1 = Accel()
motor1 = Motors_Class()
motor2 = Motors_Class2()
longrange = longrange_Class()
shortrange = shortrange_Class()

#create file


def moving(dir):
    if dir == 'x':
        motor1.motor_move('x', 0)
        motor2.motor_move('x', 0)
    if dir == 'a':
        motor1.motor_move('a', 5)
        motor2.motor_move('a', 5)
    if dir == 's':
        motor1.motor_move('s', 8)
        motor2.motor_move('s', 8)
    if dir == 'd':
        motor1.motor_move('d', 5)
        motor2.motor_move('d', 5)
Exemplo n.º 11
0
from minisumo_motorcontrol2 import Motors_Class
from minisumo_motorcontrol3 import Motors_Class2

motors = Motors_Class()
motors2 = Motors_Class2()
while (1):
    direct = raw_input()
    motors.motor_move(direct, 6)
    motors2.motor_move(direct, 6)
Exemplo n.º 12
0
from lineSense2 import lineSensor_Class
from longrangemethod import longrange_Class
from shortrangemethod import shortrange_Class
from minisumo_motorcontrol2 import Motors_Class
from minisumo_motorcontrol3 import Motors_Class2
from accelerometer import Accel
import time
import RPi.GPIO as GPIO	
lineSensors= lineSensor_Class()
Accel1 = Accel()
motor1= Motors_Class()
motor2 = Motors_Class2()
longrange= longrange_Class()
shortrange= shortrange_Class()

#create file

def moving(dir):
	if dir == 'x':
		motor1.motor_move('x', 0)
		motor2.motor_move('x', 0)
	if dir == 'a':
		motor1.motor_move('a', 5)
		motor2.motor_move('a',5)
	if dir == 's':
		motor1.motor_move('s',8)
		motor2.motor_move('s',8)
	if dir == 'd':
		motor1.motor_move('d', 5)
		motor2.motor_move('d', 5)
	if dir == 'w':