樹莓派小車筆記(書)

參考 王進德,Raspberry Pi 入門與機器人實戰,北京大學出版社,2018.07,TP316.85 229.

第六章 Python攝像頭控制

  • webcam網絡攝像頭。
  • pi支持USB的網絡攝像頭,也有專門爲相機預留的接口CSI(Camera Serial Interface)。
  • 安裝攝像頭(lsusb指令查看當前USB口使用情況)
  • 安裝用於捕捉影像的工具fswebcam
    $ sudo apt-get install fswebcam
    使用舉例:
    創建output目錄:
    $ mkdir /home/pi/output
    捕捉影像:
    $ fswebcam -r 1280*960 --no-banner ~/output/camtest.jpg
  • 可以用crontab指令創建循環工作制度,指令格式爲:
    min hour day month week /location/command 2>&1
    編輯調度:
    $ crontab -e
    設置舉例:(每一分鐘和每五分鐘,配合下方時間戳腳本食用)
    * * * * * /home/pi/output/timelapse.sh 2>$1
    */5 * * * * /home/pi/output/timelapse.sh 2>$1
  • 撰寫時間戳腳本:
    編寫腳本程序:
    $ sudo nano timelapse.sh
    輸入腳本程序內容:
    #!/bin/bash
    DATE=$(date "+%Y-%m-%d_%H%M")  # 獲取當前系統時間
    fswebcam -r 1280*960 --no-banner /home/pi/output/img_$DATE.jpg  # 捕捉影像
    
    離開nano編輯器,更改文件權限:
    $ chmod -x timelapse.sh
    運行腳本的指令:
    $ ./timelapse.sh
  • 查看圖片用xdg-open指令。
  • 錄製視頻用avconv工具,安裝:
    $ sudo apt-get install libav-tools
    使用舉例:
    $ avconv -f video4linux2 -r 25 -s 1280*960 -i /dev/video0 ~/output/test.avi
  • 播放視頻用omxplayer軟件(Raspbian自帶),比如:
    $ omxplayer ~/output/test.avi
  • Pygame包含一系列Python模塊,可用來編寫影音遊戲。
    import pygame
    import pygame.camera
    
  • 連接Pi相機模塊
    用針軟線連至CSI端口(斷電連接)。
    安裝問題可參考網址:
    https://www.raspberry.org/help/camera-module-setup/
    隨後在設置中啓用相機模塊,並重啓Pi。
  • 用raspistill捕捉影像,比如(查看指令參數可用–help):
    $ raspistill -o ~/output/cam_module.jpg
    在其後加-hf -vf參數,可將圖像水平和垂直翻轉;
    加-t 2000 選項,可設置延時捕捉影像時間;
    加-w 1024 -h 768指令,是分辨率約束(默認以最大分辨率捕捉)。
  • 用raspivid用來錄製視頻,比如(捕捉5s):
    raspivid -o ~/output/test.h264 -t 5000
  • 縮時攝影

第七章 伺服馬達控制

  • 伺服馬達,舵機,servo motor。

第十章 直流馬達控制

  • DC motor
    • 轉速特性。單位:r/min或rad/s。
      r/min * 0.10472 = rad/s
      rad/s * 9.54929 = r/min
      
    • 轉矩特性。單位牛頓米Nm或千克重·釐米kgf·cm。
      kgf·cm * 0.0980665 = Nm
    • 電壓特性。可以在額定電壓50%~125%之間運行。
  • 馬達驅動芯片L298N
    • 可驅動兩個直流馬達或一個步進馬達。

    • 驅動電壓7~12V。內置78M05穩壓芯片(JP1短接時啓用)。

    • 用INT和INT控制Motor A的控制邏輯:

      ENA IN1 IN2 功能
      H L H 右轉
      H H L 左轉
      H H H 停止
      H L L 停止
      L X X 停止
    • 若要控制直流馬達的轉速,將PWM信號輸入ENA腳即可。

  • 其他馬達驅動板比如RaspiRobot board V3,含周邊組件。
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章