gpiozero.exc.PinPWMUnsupported:引脚 GPIO7 不支持 PWM(Raspberry Pi 4B)

问题描述 投票:0回答:4

我正在开发我的第一个 Raspberry Pi 项目,同时学习创建巡线机器人的课程。 就是课程。我按照所有说明操作并按照描述连接了引脚,但是当我在 Raspberry Pi 操作系统上运行代码时,它会抛出错误:

gpiozero.exc.PinPWMUnsupported:引脚 GPIO7 不支持 PWM 这是代码:

from gpiozero import Robot
from time import sleep

my_robot = Robot(left=(7,8), right=(9,10))

my_robot.forward()
sleep(1)
my_robot.stop()

我尝试寻找解决方案并检查了官方文档,但没有帮助。我该如何解决这个问题?

python raspberry-pi gpiozero
4个回答
3
投票

出现此错误的可能原因是用户将gpiozero安装到虚拟环境中而没有安装pin库。 gpiozero的内置引脚接口不支持PWM。您需要安装 RPi.GPIO 才能获得正常体验:

pip install gpiozero rpi-gpio

文档中提到了这一点:https://gpiozero.readthedocs.io/en/stable/faq.html#why-do-i-get-pinfactoryfallback-warnings-when-i-import-gpiozero


1
投票

当尝试在 pipelinev 中运行 gpiozero 的 CamJamKitRobot 和 Robot 类时,我遇到了同样的问题(虚拟环境可能会出现同样的问题,但我没有尝试过)。在 pipelinev 之外运行脚本(因此只需使用系统安装的 pip 软件包)为我解决了这个问题。


-1
投票

经过多次检查,GPIO引脚和软件都没有问题。电机连接到 L289N 驱动电机模块,该模块“没有从电池获得足够的电力”,这就是错误的原因。如果有人有相同或相似的硬件连接并遇到此问题,检查 L289N 模块是否已开机(它应该打开模块上的红色 LED)


-1
投票
https://www.raspberrypi-spy.co.uk/2018/02/basic-servo-use-with-the-raspberry-pi/

上的指南使用微伺服 WS-SG90 和 Raspberry Pi 3B+ 并使用了 gpiozero Python 库并遇到了相同的异常。就我而言,这是由于以非 root 用户身份运行程序引起的。用

sudo
运行程序使舵机转动。另一种选择是将
PiGPIOFactory
pigpiod
一起使用,不需要以提升的权限运行程序。
    

© www.soinside.com 2019 - 2024. All rights reserved.