コード例 #1
0
reset_active = False  # csak arra van hasznalva, hogy skippelje a vonalakat

pause_event = threading.Event()  # magyarazat: lasd. gateway
pause_event.set()  # not blocking by default; True = not paused, False = paused

picar.setup()

REFERENCES = [394, 329, 395, 402, 397]
#REFERENCES = [270,290,300,290,270]
#REFERENCES = [330,330,330,330,330]
refFile = "../referenceConfig"

fw = front_wheels.Front_Wheels(db='../wheel_config')
#fw.debug = True

bw = back_wheels.Back_Wheels(db='../wheel_config')
forwardSpeed = carconfig.getForwardSpeed()

lf = Line_Follower.Line_Follower()

fw.ready()
bw.ready()
#45
fw.turning_max = 50



logging.basicConfig(filename='car.log', level=logging.DEBUG, \
                    format="%(asctime)s %(message)s:")
logging.info("log started")
'''
コード例 #2
0
ファイル: pid_car.py プロジェクト: Luisx09/EXP2-CarControl
#!/usr/bin/env python
import rospy
from picar import front_wheels, back_wheels
from picar.SunFounder_PCA9685 import Servo
import picar
from time import sleep
import numpy as np
from std_msgs.msg import Float64

bw = back_wheels.Back_Wheels()
fw = front_wheels.Front_Wheels()
pan_servo = Servo.Servo(1)
tilt_servo = Servo.Servo(2)
picar.setup()

bw.speed = 0
fw.turn(90)
pan_servo.write(90)
tilt_servo.write(90)
motor_speed = 100

curr_speed = 0
curr_dir = 0


def fw_movement(data):
    curr_speed = data.data

    if curr_speed > 0:
        bw.speed = int(round(curr_speed))
        bw.backward()
コード例 #3
0
picar.setup()

REFERENCES = [200, 200, 200, 200, 200]
#calibrate = True
calibrate = False
forward_speed = 80
backward_speed = 70
turning_angle = 40

max_off_track_count = 40

delay = 0.0005

fw = front_wheels.Front_Wheels(db='config')
bw = back_wheels.Back_Wheels(db='config')
lf = Line_Follower.Line_Follower()

lf.references = REFERENCES
fw.ready()
bw.ready()
fw.turning_max = 45


def straight_run():
    while True:
        bw.speed = 70
        bw.forward()
        fw.turn_straight()

コード例 #4
0
ファイル: traverse1.py プロジェクト: kevinxin90/sf
 def __init__(self):
     self.fw = front_wheels.Front_Wheels()
     self.bw = back_wheels.Back_Wheels()
     self.speed = 30
コード例 #5
0
ファイル: views.py プロジェクト: Rogerwlk/SunFounder_PiCar-V
* Website     : www.sunfounder.com
* Update      : Cavon    2016-09-13    New release
**********************************************************************
'''

from django.shortcuts import render_to_response
from driver import camera, stream
from picar import back_wheels, front_wheels
from django.http import HttpResponse
from django.http import JsonResponse
import picar

picar.setup()
db_file = "/home/pi/SunFounder_PiCar-V/remote_control/remote_control/driver/config"
fw = front_wheels.Front_Wheels(debug=False, db=db_file)
bw = back_wheels.Back_Wheels(debug=False, db=db_file)
cam = camera.Camera(debug=False, db=db_file)
cam.ready()
bw.ready()
fw.ready()

SPEED = 60
bw_status = 0

print stream.start()


def home(request):
    return render_to_response("base.html")

コード例 #6
0
ファイル: views.py プロジェクト: adammoss/SunFounder_PiCar-V
from control.utils import Capture

from picar import back_wheels, front_wheels
import picar

import json
import cv2
import git
import glob
import os
import logging

try:
    picar.setup()
    fw = front_wheels.Front_Wheels(debug=False, db=settings.CONFIG_FILE)
    bw = back_wheels.Back_Wheels(debug=False, db=settings.CONFIG_FILE)
    cam = camera.Camera(debug=False, db=settings.CONFIG_FILE)
    cam.ready()
    bw.ready()
    fw.ready()
    straight_angle = fw._straight_angle
    min_angle = fw._min_angle
    max_angle = fw._max_angle
except:
    fw = None
    bw = None
    cam = None
    straight_angle = 90
    min_angle = 45
    max_angle = 135
    print('[!] Cannot setup picar, are your running on a Raspberry Pi?')
コード例 #7
0
class PiCarController:
    force_turning = 0  # 0 = random direction, 1 = force left, 2 = force right, 3 = orderdly

    fw = front_wheels.Front_Wheels(db='config')
    bw = back_wheels.Back_Wheels(db='config')
    fw.turning_max = 45

    forward_speed = 100
    backward_speed = 100

    back_distance = 10
    turn_distance = 20

    timeout = 10
    last_angle = 90
    last_dir = 0

    turning_angle = 8

    current_angle = 100
    moving = False
    turning = False

    def debug(self, func):
        print(func)
        print("is moving - {}".format(self.moving))
        print("is turning - {}".format(self.turning))

    def on_press(self, key):
        self.debug("on_press")
        if key in [Key.up, Key.down, Key.left, Key.right]:
            if key == Key.down and self.moving is False:
                self.moving = True
                print("down")
                self.bw.backward()
                self.bw.speed = self.backward_speed
            elif key == Key.up and self.moving is False:
                print("up")
                self.moving = True
                self.bw.forward()
                self.bw.speed = self.forward_speed
            elif key == Key.left and self.turning is False:
                self.turning = True
                print("left")
                if self.current_angle - self.turning_angle > 50:
                    self.current_angle -= self.turning_angle
                    self.fw.turn(self.current_angle)

            elif key == Key.right and self.turning is False:
                self.turning = True
                print("right")
                if self.current_angle + self.turning_angle < 150:
                    self.current_angle += self.turning_angle
                    self.fw.turn(self.current_angle)

    def on_release(self, key):
        self.debug("on_release")
        if key in [Key.up, Key.down, Key.left, Key.right]:
            if key == Key.down and self.moving is True:
                self.moving = False
                print("down - stop")
                self.bw.stop()
            elif key == Key.up and self.moving is True:
                self.moving = False
                print("up - stop")
                self.bw.stop()
            elif key == Key.left and self.turning is True:
                self.turning = False
                print("left - stop")

            elif key == Key.right and self.turning is True:
                self.turning = False
                print("right - stop")

        if key == Key.esc:
            # Stop listener
            return False