无码av无码专区线,大胆人gogo体艺术高清私拍,日本特级婬片免费,久久无码av影视,免费人成视频在线观看视频网站,日韩黄色片在线观看,成??人免费午夜无码视频在线观看

深圳市博揚(yáng)智能裝備有限公司 自動化系統(tǒng)集成商及解決方案提供商
全國服務(wù)熱線
0755-26993877
博揚(yáng)問答
.
聯(lián)系我們

http://m.paimaitong.com.cn

地址:深圳市寶安區(qū)新安街道67區(qū)甲岸科技園1號廠房1區(qū)5樓
手機(jī):15012713703

咨詢熱線0755-26993877

如何使用樹莓派控制伺服電機(jī),控制伺服電機(jī)的方法?

發(fā)布時(shí)間:2023-05-11 18:03:45人氣:

  連接伺服電機(jī)可能是許多項(xiàng)目中的一項(xiàng)基本任務(wù),例如構(gòu)建定制機(jī)器人??梢圆捎枚喾N方法將伺服電機(jī)與Raspberry Pi連接起來。本文介紹了其中的兩種,并解釋了伺服電機(jī)的工作原理。這些知識將使讀者能夠使用不同的微控制器,甚至是簡單的基于555定時(shí)器的電路來控制伺服系統(tǒng)。


  伺服電機(jī)是如何工作的?


  通常,伺服系統(tǒng)具有三個(gè)輸入,其中兩個(gè)為位于塑料體內(nèi)的電機(jī)供電。第三個(gè)輸入控制伺服轉(zhuǎn)動多少。


  通常,輸入信號是脈寬調(diào)制(PWM)信號,其頻率不會隨時(shí)間變化。相反,當(dāng)PWM輸入信號的占空比發(fā)生變化時(shí),伺服電機(jī)會旋轉(zhuǎn)到某個(gè)角度。本例中使用的舵機(jī)總共可以轉(zhuǎn)動180度(每個(gè)方向90度)。當(dāng)占空比為5%(一毫秒長的高脈沖)時(shí),伺服旋轉(zhuǎn)到其最小位置。如果占空比變?yōu)?0%(這是一個(gè)兩毫秒長的高脈沖),伺服會一直向右旋轉(zhuǎn)。之間的占空比與-90和+90之間的不同角度相關(guān)。但是,這些數(shù)字可能因不同的伺服系統(tǒng)和制造商而異。因此,始終有必要查閱伺服的數(shù)據(jù)表。


  請注意,Raspberry Pi不應(yīng)為伺服提供電壓。相反,使用外部電源來驅(qū)動伺服電機(jī),因?yàn)镽aspberry Pi的GPIO引腳可能無法提供足夠的電源來使電機(jī)以可接受的速度轉(zhuǎn)動。


  如何用樹莓派控制伺服電機(jī)?


  要使樹莓派控制伺服電機(jī),請將伺服器的+5 V和GND線連接到外部電源,將剩余的信號線連接到樹莓派的任何I/O引腳。


  不要忘記將Raspberry Pi的任何GND引腳也連接到電源的地。

20210909164705.png

  如上所述,伺服系統(tǒng)通常需要一個(gè)PWM信號來告訴它們轉(zhuǎn)向哪里。因此,有多種方法可以將舵機(jī)旋轉(zhuǎn)到特定角度。一種方法是使用包含伺服模塊的gpiozero庫。您可以使用pip在Raspberry Pi上安裝該庫。如果尚未安裝rpi.gpio包,也請下載它。否則,gpiozero庫將無法工作:


  復(fù)制代碼


sudo apt-get install python3-rpi.gpiosudo pip3 install gpiozero


  完成后,就可以執(zhí)行以下腳本:


  復(fù)制代碼


from gpiozero import Servofrom time import sleep

servo = Servo(25)try:	while True:
    	servo.min()
    	sleep(0.5)
    	servo.mid()
    	sleep(0.5)
    	servo.max()
    	sleep(0.5)except KeyboardInterrupt:
	print("Program stopped")


  如您所見,該庫允許您快速將伺服轉(zhuǎn)向三個(gè)預(yù)定義位置之一。這個(gè)簡單的python腳本首先導(dǎo)入所需的庫。然后,它定義伺服在開始無限循環(huán)之前連接到引腳25,在該無限循環(huán)中,伺服旋轉(zhuǎn)到其最小、中間和最大位置。在角度變化之間,腳本等待半秒。


  但是,庫也可以通過直接將舵機(jī)的值設(shè)置為-1和1之間的數(shù)字來指示舵機(jī)轉(zhuǎn)向舵機(jī)最小值和最大值之間的任何位置。負(fù)值對應(yīng)于舵機(jī)的最小位置,一個(gè)代表舵機(jī)的最大旋轉(zhuǎn):


  復(fù)制代碼


from gpiozero import Servo
from time import sleep

servo = Servo(25)val = -1try:	while True:
    	servo.value = val
    	sleep(0.1)    	val = val + 0.1
    	if val > 1:        	val = -1except KeyboardInterrupt:
	print("Program stopped")


  這個(gè)簡單的腳本與前一個(gè)腳本的工作方式類似。然而,它在每次循環(huán)迭代中直接設(shè)置舵機(jī)的值,而不是使舵機(jī)旋轉(zhuǎn)到三個(gè)預(yù)定義位置之一。


  請注意,此庫僅代表使用Raspberry Pi控制伺服的一種方式。同樣,您也可以使用不同的庫,例如pigpio,并直接操縱進(jìn)入伺服器的PWM輸出信號,使其轉(zhuǎn)向指定位置。


  控制多個(gè)舵機(jī)的另一種方法


  任何樹莓派編號的I/O引腳都能夠控制伺服系統(tǒng)。但是,如果您想控制更多的伺服系統(tǒng),或者您的項(xiàng)目需要GPIO引腳用于其他用途,那么也可以使用伺服控制器板。


  這些模塊通常通過I2C與微控制器或類似設(shè)備通信,因此可以僅使用Raspberry Pi的兩個(gè)GPIO引腳來控制許多伺服系統(tǒng)。但是,您可以購買許多不同類型的模塊,它們的工作方式通常大不相同。因此,您應(yīng)該查閱模塊的數(shù)據(jù)表以了解如何使用它。


  概括


  與普通直流電機(jī)不同,伺服系統(tǒng)通常不能旋轉(zhuǎn)完整的360度。相反,它們在某個(gè)最小和最大角度之間轉(zhuǎn)動。具有恒定頻率的脈寬調(diào)制輸入信號控制旋轉(zhuǎn)。該信號的占空比直接對應(yīng)于電機(jī)的角度。當(dāng)輸入信號的占空比增加時(shí),伺服會向其最大位置旋轉(zhuǎn)。樹莓派可以通過軟件直接同時(shí)控制多個(gè)舵機(jī)。每個(gè)編號的GPIO引腳都可以管理一個(gè)舵機(jī)。但是,不建議使用Raspberry Pi為伺服器供電。相反,它們應(yīng)該連接到外部電源。伺服控制器板是一次控制大量伺服的不錯(cuò)選擇。


推薦資訊

              无码av无码专区线,大胆人gogo体艺术高清私拍,日本特级婬片免费,久久无码av影视,免费人成视频在线观看视频网站,日韩黄色片在线观看,成??人免费午夜无码视频在线观看 亚洲精品无码aⅴ片 色欲综合久久天天综合 国产尤物精品不卡 黄色网站在线观看高清无码 天天噜啦在线播放