<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>
關(guān) 閉

新聞中心

EEPW首頁(yè) > 工控自動(dòng)化 > 設計應用 > 如何用RaspberryPi Pico來(lái)控制直流電機?

如何用RaspberryPi Pico來(lái)控制直流電機?

作者: 時(shí)間:2021-04-28 來(lái)源:EETOP 收藏

由樹(shù)莓派基金會(huì )剛剛發(fā)布的RaspberryPi Pico(樹(shù)莓派Pico)是一個(gè)小巧而強大的板子,它可以為用戶(hù)提供了創(chuàng )建大大小小的項目的機會(huì )。其中一個(gè)項目是機器人,為此我們需要用到馬達。那么我們如何用RaspberryPi Pico來(lái)控制呢?我們可以把它們直接連接到GPIO嗎?

本文引用地址:http://dyxdggzs.com/article/202104/424990.htm

答案是否定的。RaspberryPi Pico的GPIO引腳無(wú)法提供所需的電流,如果嘗試連接,很可能會(huì )損壞Pico。為此我們需要一個(gè)電機驅動(dòng)器,充當Pico和電動(dòng)機之間的橋梁。我們打開(kāi)/關(guān)閉兩個(gè)PicoGPIO引腳,讓它們控制電機驅動(dòng)器,電機驅動(dòng)器輸出較大的電流來(lái)控制電機運動(dòng)。

對于這個(gè)小項目,將需要以下準備

運行MicroPython的Raspberry Pi Pico安裝在您的電腦上的Thonny4 x公對公跳線(xiàn)半尺寸或全尺寸面包板電機驅動(dòng)板。在我們的案例中,我們使用了DRV8833芯片,但L298或L9110S芯片應該也可以。5V / 6V。我們使用了一個(gè)微型齒輪金屬電機,電機需要2根公對公的跳線(xiàn)來(lái)連接到面包板上。

如何用RaspberryPi Pico來(lái)控制直流電機?

使用RaspberryPi Pico的直流電動(dòng)機的硬件設置

我們在該項目中使用的芯片是DRV8833,選定的特定版本是為面包板制作的,但是還有許多其他版本,包括設計用于嵌入機器人的版本。市場(chǎng)上還有其他電機控制器,例如L298D和L9110S,所有這些電機控制器都有相同的輸入/輸出約定。

如何用RaspberryPi Pico來(lái)控制直流電機?

將Raspberry Pi Pico放入面包板,使微型USB端口掛在面包板的末端。將DRV8833電機控制器放入面包板,使插針位于中間通道的兩側。使用跳線(xiàn)將Raspberry Pi Pico的VBUS引腳連接到DRV8833的VCC引腳。這將直接通過(guò)USB提供的5V為電機控制器供電。將Raspberry Pi Pico的GND引腳連接到DRV8833的GND引腳。將Raspberry Pi Pico的GPIO 14連接到DRV8833的IN1。將Raspberry Pi Pico的GPIO 15連接到DRV8833的IN2。將OUT1和OUT2連接至電動(dòng)機的引腳

如何用RaspberryPi Pico來(lái)控制直流電機?

Raspberry Pi Pico直流電動(dòng)機的軟件設置


import utimefrom

machine import Pin

2.創(chuàng )建兩個(gè)對象,motor1a和motor1b。這些將存儲用作輸出的GPIO引腳號,以控制DRV8833電機控制器。

motor1a = Pin(14, Pin.OUT)

motor1b = Pin(15, Pin.OUT)

3.創(chuàng )建一個(gè)使電動(dòng)機“前進(jìn)”的函數。為此,我們需要將一個(gè)引腳拉高,另一個(gè)引腳拉低。這繼而將我們的預期方向傳達給電機控制器,并且相應的輸出引腳將緊隨其后,迫使電機沿設定方向移動(dòng)。

def forward():

motor1a.high()

motor1b.low()

4.創(chuàng )建一個(gè)向后移動(dòng)的函數。這會(huì )看到GPIO引腳狀態(tài)反轉,從而導致電動(dòng)機沿相反方向旋轉。

def backward():

motor1a.low()

motor1b.high()

5.創(chuàng )建一個(gè)停止電動(dòng)機的函數。通過(guò)將兩個(gè)引腳都拉低,我們告訴電動(dòng)機控制器停止電動(dòng)機的所有運動(dòng)。

def stop():

motor1a.low()

motor1b.low()

6.創(chuàng )建一個(gè)最終的“測試”函數,該函數將調用先前的函數并運行一個(gè)測試程序,該程序將使電動(dòng)機“向前”旋轉兩秒鐘,再“向后”旋轉兩秒鐘。然后它將停止電動(dòng)機。

def test():

forward()

utime.sleep(2)

backward()

utime.sleep(2)

stop()

7.創(chuàng )建一個(gè)for循環(huán),該循環(huán)將連續5次運行此測試函數

for i in range(5):

test()

將代碼作為motor.py保存到Raspberry Pi Pico,然后單擊綠色箭頭以運行代碼。電機將雙向旋轉五次。



關(guān)鍵詞: 直流電機

評論


相關(guān)推薦

技術(shù)專(zhuān)區

關(guān)閉
国产精品自在自线亚洲|国产精品无圣光一区二区|国产日产欧洲无码视频|久久久一本精品99久久K精品66|欧美人与动牲交片免费播放
<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>