Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- import random
- import email
- import smtplib
- import email.utils
- import os
- import picamera
- import RPi.GPIO as GPIO
- from time import sleep
- import sys, pygame, time
- from picamera import PiCamera
- camera = PiCamera()
- from email.mime.multipart import MIMEMultipart
- from email.mime.text import MIMEText
- from email.mime.base import MIMEBase
- from email.mime.image import MIMEImage
- from email import encoders
- USERNAME = "birzhan7777@gmail.com"
- PASSWORD = "password"
- MAILTO = "bio.serikov@gmail.com"
- """
- def takePhoto(name):
- camera.start_preview()
- camera.capture(name)
- """
- def recordVideo(vakit):
- camera.image_effect = 'colorswap'
- camera.annotate_text = "Hello Almas"
- camera.resolution = (600, 400)
- camera.framerate = 10
- place = "/home/pi/Desktop/"
- VideoName = str(random.randint(1, 1000000))
- VideoName += ".h264"
- place += VideoName
- camera.start_preview()
- camera.start_recording(place)
- time.sleep(vakit)
- camera.stop_recording()
- camera.stop_preview()
- return VideoName
- def get(x):
- k = 0
- if pos[1] >= height / 2:
- k = 2
- for i in range(2):
- if i * width / 2 <= pos[0] and pos[0] <= (i + 1) * width / 2:
- return i + k + 1
- def sendPhoto(name):
- img_data = open(name, 'rb').read()
- msg = MIMEMultipart()
- msg['Subject'] = 'Subject'
- msg['From'] = USERNAME
- msg['To'] = MAILTO
- text = MIMEText("test")
- msg.attach(text)
- image = MIMEImage(img_data, name = os.path.basename(name))
- msg.attach(image)
- s = smtplib.SMTP('smtp.gmail.com:587')
- s.ehlo()
- s.starttls()
- s.ehlo()
- s.login(USERNAME, PASSWORD)
- s.sendmail(USERNAME, MAILTO, msg.as_string())
- s.quit()
- def SendVideo(name):
- msg = MIMEMultipart()
- msg['Subject'] = 'Subject'
- msg['From'] = USERNAME
- msg['To'] = MAILTO
- attachment = open(name, "rb")
- part = MIMEBase('application', 'octet-stream')
- part.set_payload(attachment.read())
- encoders.encode_base64(part)
- part.add_header('Content-Dispoistion', 'attachment; filename = "%s"' % os.path.basename(name))
- msg.attach(part)
- s = smtplib.SMTP('smtp.gmail.com:587')
- s.ehlo()
- s.starttls()
- s.ehlo()
- s.login(USERNAME, PASSWORD)
- s.sendmail(USERNAME, MAILTO, msg.as_string())
- s.quit()
- def rotate():
- GPIO.output(13, GPIO.HIGH)
- GPIO.output(19, GPIO.LOW)
- GPIO.output(26, GPIO.HIGH)
- Motor1A.ChangeDutyCycle(100)
- Motor1B.ChangeDutyCycle(0)
- GPIO.output(16, GPIO.LOW)
- GPIO.output(20, GPIO.HIGH)
- GPIO.output(21, GPIO.HIGH)
- Motor2A.ChangeDutyCycle(0)
- Motor2B.ChangeDutyCycle(100)
- def Video_sdelai():
- rotate()
- #SendVideo(recordVideo(15))
- GPIO.setmode(GPIO.BCM)
- pygame.init()
- size = width, height = 300, 200
- prev_time = time.time()
- GPIO.setup(13, GPIO.OUT)
- GPIO.setup(19, GPIO.OUT)
- GPIO.setup(26, GPIO.OUT)
- GPIO.setup(16, GPIO.OUT)
- GPIO.setup(20, GPIO.OUT)
- GPIO.setup(21, GPIO.OUT)
- Motor1A = GPIO.PWM(13, 10)
- Motor1B = GPIO.PWM(19, 10)
- Motor1E = GPIO.PWM(26, 10)
- Motor2A = GPIO.PWM(16, 10)
- Motor2B = GPIO.PWM(20, 10)
- Motor2E = GPIO.PWM(21, 10)
- speed = 0
- Motor1A.start(0)
- Motor1B.start(0)
- Motor1E.start(100)
- Motor2A.start(0)
- Motor2B.start(0)
- Motor2E.start(100)
- last = [0, 0]
- end = 0
- screen = pygame.display.set_mode(size)
- positions = []
- side = 0
- while end == 0:
- now = time.time()
- for event in pygame.event.get():
- if event.type == pygame.QUIT:
- GPIO.cleanup()
- pygame.quit()
- sys.exit()
- if event.type == pygame.MOUSEBUTTONDOWN:
- pos = pygame.mouse.get_pos()
- now = time.time()
- positions.append(pos)
- if event.type == pygame.MOUSEBUTTONUP:
- pos = pygame.mouse.get_pos()
- now = time.time()
- positions.append(pos)
- if now - prev_time >= 1:
- positions = []
- prev_time = now
- last = pos
- side = get(last)
- if side == 1:
- Video_sdelai()
- print("Turn around and record video")
- elif side == 2:
- print("Turn around and make 4 photos")
- elif side == 3:
- print("U-turn")
- else:
- print("make circle")
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement