Я использую код для использования двух веб-камер и Raspberry Pi, чтобы сделать серию фотографий и сохранить их с восходящими именами. то, что я пытаюсь сделать, это получить либо увеличивающиеся имена картинок для отображения на замазке, либо что-либо связанное с картинками, так как для этого проекта мы используем pyserial, чтобы доказать, что программа работает, и так как мы используем картинки, нам нужны заголовки картинок или размер файла, чтобы показать на замазке. Я также использую fswebcam, если это поможет
То, что я уже пробовал, - это просто получение данных для отправки напрямую в putty, используя примеры кодов. Я также пытался кодировать и декодировать данные, но лучше всего получить его, так как он отображает / dev / ttyAMA0 в тоннах или что программа работает
import os
import datetime
import serial
import time
from threading import Thread
def picFunc():
os.system("fswebcam -d /dev/video0 -r 1920x1080 -S 25
/home/pi/Documents/Pictures/%s.jpeg"
%datetime.datetime.utcnow().strftime("%Y-%m-%d-%H:%M:%S"))
os.system("fswebcam -d /dev/video1 -r 1920x1080 -S 25
/home/pi/Documents/Pictures2/%s.jpeg"
%datetime.datetime.utcnow().strftime("%Y-%m-%d-%H:%M:%S"))
t=5 # initialise the pause between pictures in seconds
count=10 # initialise the number of pictures to be taken
i=1 # initialise (reset) the counting sequence
totalTime=(t*count) # Calculate the time in seconds
ser = serial.Serial(
port='/dev/ttyAMA0',
baudrate = 1200,
parity=serial.PARITY_NONE,
stopbits=serial.STOPBITS_ONE,
bytesize=serial.EIGHTBITS,
timeout=1
)
ser.xonxoff =False
ser.rtscts= False
ser.dsrdtr = False
try:
ser.isOpen()
except Exception:
print('error open serial port: ' + str(Exception))
exit()
print(ser.portstr)
serialcmd = ('')
print(serialcmd)
#ser.write(bytes(str(serialcmd).encode(encoding='utf-8',
errors='ignore')))
#out = ser.read(125).decode(encoding='ascii', errors='ignore')
#print('recevied:' + out)
# Take a series of pictures one every t seconds
while (i<=count):
# initialise variables
leftTimeH=0
leftTimeM=0
leftTimeS=0
# taking a picture by calling a command line prompt
x=Thread(target=picFunc)
x.start()
totalTime=(t*(count-i)) # Calculate the time in seconds
print (i) # print the current count value to show progress
while (totalTime>=3600):
leftTimeH=leftTimeH+1
totalTime=totalTime-3600
while (totalTime>=60):
leftTimeM=leftTimeM+1
totalTime=totalTime-60
leftTimeS=totalTime
percentDone=((i/count)*100)
percentDone=round(percentDone,2)
message1=("Time left to finish " +repr(leftTimeH) +" Hours " +
repr(leftTimeM) +" Minutes and " + repr(leftTimeS) +" Seconds")
message2=(""+repr(percentDone) + "% Completed!")
print (message1)
print (message2)
ser.write(bytes(str(message1).encode(encoding='utf-8',
errors='ignore')))
out = ser.read(125).decode(encoding='ascii', errors='ignore')
print('recevied:' + out)
i=i+1
time.sleep(t)
print ("Finished!") # print to show when finished
результаты, которые я получаю при запуске этого кода, вместо того, чтобы выводить его в putty, он просто отображает
% Запустите webcam.py
/ DEV / ttyAMA0
и это все