我有以下问题:
大局:通过broswer控制步进电机。步进电机通过debian连接到Fox Board上。在主板上运行着一台apache the服务器。
我有一个HTML网站与表单,其中用户输入电机的参数。submit按钮启动一个python脚本,该脚本执行与电机的通信。引擎将一些数据传递给python脚本。脚本在iframe中将此信息发送回HTML页面。
web page with form -->
parameters input by user -->
submit -->
python script is started -->
motor does s
我有一个python代码,它通过RS232读取串行数据。
import serial
import time
ser = serial.Serial('/dev/ttyUSB0', 2400, timeout=1)
while True:
str1 = ser.read(1)
if str1 == '':
print 'no data on line'
else:
print str1
这个还我
no data on line
no data on line
no data on line
no data on line
2
在接口中,关于设置电机的极性如下所示:
极性
设置电动机的极性。在正常极性下,正占空比将导致电机顺时针旋转。在极性相反的情况下,正的占空比将导致电机逆时针旋转。有效值为正常和反转。
import ev3dev.ev3 as ev3
import numpy as numpy
m = ev3.LargeMotor('outA')
time = numpy.random.normal(loc=5.0, scale=1.0, size=None)
time = time * 1000
speed = 180 / ( time / 1000 )
m.run_timed(time_sp=
我有一个关于生成器和/或python的执行模型的问题。
考虑到以下情况:
def g(filename):
with open(filename) as handle:
for line in handle:
yield some_trasformation_on(line)
我的主要困惑是:如果
res = g()
print(next(res))
只打过一次电话?句柄是否在程序的生命周期内保持打开状态?如果我们把稀缺的资源分配到发电机身上怎么办?线?数据库句柄?
也许我认为发电机就像引擎盖下的功能。
树莓Pi初学者
我正在编写图形用户界面应用程序(使用PyQt5)来控制直流电机。到目前为止,我能够控制我的电机通过电机驱动器和改变它的速度在终端(使用脉宽调制)。
当我想在我的图形用户界面应用程序中使用我的电机控制器代码时,问题就出现了,因为当我运行电机运动函数时,我的time.sleep(x)停止了整个GUI应用程序,所以我不能改变电机的速度。
我发现线程可能会拯救我的问题,但我不知道如何在线程运行时修改速度。
这是我运行马达的代码:
import RPi.GPIO as GPIO
import time
GPIO.setmode(GPIO.BCM)
# set pins as outp
正如标题所说,我想在我的Windows的Raspberry Pi上运行一个脚本。PC和Raspberry Pi 4 (Raspbian )之间的连接应该使用以太网电缆来完成。Rasperry Pi不能在网络中永久运行。那么SSH连接是不可能的,这是正确的吗?背景:树莓Pi连接到相机和步进电机。根据拍摄对象的位置,步进电机被移动,然后拍摄一张照片。然后,这张照片将通过网络电缆发送回PC。Raspberry Pi (旋转步进电机和图像捕获)上的脚本是用Python实现的,功能齐全。一般情况下,是否可以使用以太网电缆运行Pi脚本并将生成的图像传输回来?使用Windows,我希望启动这个脚本并在稍后显
也可以对数据进行流水线处理,
只使用发电机
📷
管道中的示例生成器:
def grep(source, pattern=None):
patternObject = re.compile(pattern)
for line in source:
if patternObject.search(line):
yield line
或
只使用协同线
📷
管道中的协同线示例:
@coroutine
def grep(pattern):
print "Looking for %s" % pattern
while True: