2

У меня есть камера Raspberry Pi, и я часто использую Raspberry Pi, но камера имеет тенденцию перегреваться. Есть ли терминальная команда, чтобы выключить камеру и включить ее снова, когда она мне понадобится?

Он управляется не через USB, а через разъем камеры CSI.

1 ответ1

3

RPI не имеет шины PCI, поэтому мы не можем использовать стандартную команду Linux для выключения встроенной камеры. Просто для полноты картины я покажу вам, как сделать обе вещи в RPI и на обычном ПК.

RPI

Камера RPI может быть отключена при загрузке. Там есть файл /boot/config.txt , где вам понадобится этот параметр:

start_x=0             

при установке start_x=1 включается.

Если вы хотите сделать это на ходу, вы можете попробовать (у меня нет такой возможности) следующее в приглашении pyhton:

 import picamera
 from time import sleep
 sleep(500)

и посмотрите, решит ли это на самом деле вашу проблему с перегревом. Конечно, вам нужно будет установить

  sudo apt-get install python-picamera

ПК с шиной PCI

Команда

 echo 0 > /sys/bus/usb/devices/1-1.3/bConfigurationValue

чтобы выключить его, и, конечно, echo 1 > ... чтобы снова включить его. Единственная проблема заключается в том, что адрес шины 1-1.3 является правильным для моего компьютера. Вы найдете свой адрес, посмотрев на вывод

 # lsusb -t 
  ...............
  :  Bus 01.Port 1: Dev 1, Class=root_hub, Driver=ehci-pci/3p, 480M                                                                                                                                                                                                             
     |__ Port 1: Dev 2, If 0, Class=Hub, Driver=hub/6p, 480M                                                                                                                                                                                                                    
     |__ Port 2: Dev 4, If 0, Class=Wireless, Driver=btusb, 12M                                                                                                                                                                                                             
     |__ Port 2: Dev 4, If 1, Class=Wireless, Driver=btusb, 12M                                                                                                                                                                                                             
     |__ Port 3: Dev 3, If 0, Class=Video, Driver=uvcvideo, 480M                                                                                                                                                                                                            
     |__ Port 3: Dev 3, If 1, Class=Video, Driver=uvcvideo, 480M  

В этих выходных данных вы видите объект Class=Video , расположенный на шине 1, dev 3. Теперь вы можете перейти к

 # cd /sys/bus/usb/devices/; ls 
 1-0:1.0  1-1.2      1-1.3      2-0:1.0  2-1.5      2-1.6:1.0   2-1.6:1.2  2-1.6:1.5  2-1.6:1.8  3-2      3-3:1.0  4-0:1.0  usb3

Единственное устройство 1-3 - это 1-1.3 . Вы входите в каталог и дважды проверяете, что это ваша видеокамера

# cat id{Vendor,Product}
   1bcf
   288e

который вы можете сравнить с выводом

 # lsusb 
  ................
  Bus 001 Device 003: ID 1bcf:288e Sunplus Innovation Technology Inc. 

Поиск Google показывает, что 1bcf действительно является VideoCam. 1-1.3 - это код для вставки в приведенную выше команду.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .