D10d3 icon

Robot Control

D10d3 | PRO | 11/14/16 12:29:59 AM UTC | 0 ⭐ | 890 👁️ | Never ⏰ | []
Python |

3.31 KB

|

None

|

0 👍

/

0 👎

import RPi.GPIO as gpio
import time
from time import sleep
import os
from sense_hat import SenseHat
sense = SenseHat()
 
 
 
def init():
    gpio.setmode(gpio.BOARD)
    gpio.setup(33,gpio.OUT)
    gpio.setup(35,gpio.OUT)
    gpio.setup(37,gpio.OUT)
    gpio.setup(38,gpio.OUT)
 
def forward(tf):
    init()
    gpio.output(33,False)
    gpio.output(35,True)
    gpio.output(37,False)
    gpio.output(38,True)
    time.sleep(tf)
    gpio.cleanup()
 
def back(tf):
    init()
    gpio.output(33,True)
    gpio.output(35,False)
    gpio.output(37,True)
    gpio.output(38,False)
    time.sleep(tf)
    gpio.cleanup()
 
def right(tf):
    init()
    gpio.output(33,False)
    gpio.output(35,True)
    gpio.output(37,True)
    gpio.output(38,False)
    time.sleep(tf)
    gpio.cleanup()
 
def left(tf):
    init()
    gpio.output(33,True)
    gpio.output(35,False)
    gpio.output(37,False)
    gpio.output(38,True)
    time.sleep(tf)
    gpio.cleanup()
 
def sensors():
    t = sense.get_temperature()
    p = sense.get_pressure()
    h = sense.get_humidity()
    f = ((t * 9)/5)+32
 
    t = round(t, 1)
    p = round(p, 1)
    h = round(h, 1)
    f= round(f, 1)
 
 
    print "Temperature Celsius = %r" % (t)
    print "Temperature Fahrenheit = %r" % (f)
    print "Pressure = %r Millibars" % (p)
    print "Humidity = %r Percent" % (h)
 
    orientation = sense.get_orientation_degrees()
    print("p: {pitch}, r: {roll}, y: {yaw}".format(**orientation))
 
def control():
    valid = False
    light = 0
    while not valid:
        os.system('clear')
        print "Robot Control"
        print ""
        print "-=SENSORS=-"
        sensors()
        print ""
        print "-=MOTOR CONTROLS=-"
        print "Drive Forward Left: Q"
        print "Drive Forward Right: E"
        print "Drive Forward: W"
        print "Drive Back: S"
        print "Turn Left: A"
        print "Turn Right: D"
        print ""
        print"Toggle Light: L"
        print "Exit: Z"
        input = raw_input("Command>")
        if input == "w":
            s = float(raw_input("Seconds?>"))
            forward(s)
        elif input =="s":
            s = float(raw_input("Seconds?>"))
            back(s)
        elif input =="a":
            s = float(raw_input("Seconds?>"))
            left(s)
        elif input =="d":
            s = float(raw_input("Seconds?>"))
            right(s)
        elif input == "q":
            left(0.5)
            forward(0.5)
            left(0.5)
            forward(0.5)
        elif input == "e":
            right(0.5)
            forward(0.5)
            right(0.5)
            forward(0.5)
        elif input == "z":
            quit()
        elif input =="l":
            if light == 0:
                light = 1
                O = [255, 255, 255]
                grid = [
                O, O, O, O, O, O, O, O,
                O, O, O, O, O, O, O, O,
                O, O, O, O, O, O, O, O,
                O, O, O, O, O, O, O, O,
                O, O, O, O, O, O, O, O,
                O, O, O, O, O, O, O, O,
                O, O, O, O, O, O, O, O,
                O, O, O, O, O, O, O, O
                ]
                sense.set_pixels(grid)
            else:
                light = 0
                sense.clear()
 
control()

Comments

  •  icon
    01/01/70 12:00:00 AM UTC
    Plain Text |

    0 B

    |

    👍

    /

    👎