0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

樹莓派和L293D的直流電動(dòng)機(jī)控制

454398 ? 來(lái)源:wv ? 作者:快科技 ? 2019-09-26 10:44 ? 次閱讀

步驟1:材料和工具

樹莓派和L293D的直流電動(dòng)機(jī)控制

材料

Raspberry Pi 3(RPi)

L293D控制IC

面包板

跳線電線,公對(duì)公(M/M)和母對(duì)公(F/M)

直流電動(dòng)機(jī)

9v電池

**在此項(xiàng)目中,必須訪問(wèn)Raspberry Pi桌面??梢酝ㄟ^(guò)將監(jiān)視器,鍵盤和鼠標(biāo)插入RPi或使用SSH連接來(lái)完成。**

該項(xiàng)目無(wú)需任何工具,因?yàn)檫@些連接都不是永久性的,無(wú)需使用跳線和面包板。如果要制作永久的,更耐用的版本,只需用烙鐵和一些導(dǎo)線進(jìn)行相同的連接即可。

步驟2:背景信息。

**這是所有背景信息。如果您不關(guān)心如何完成此操作,而只是想在不學(xué)習(xí)的情況下進(jìn)行操作,請(qǐng)?zhí)恋?步。**

在此項(xiàng)目中,我們使用的是python腳本Raspberry Pi可將GPIO輸出設(shè)置為L(zhǎng)293D電機(jī)控制器IC,并以任意速度在任一方向上運(yùn)行DC電機(jī)。

首先, Raspberry Pi是具有40個(gè)GPIO引腳的開源信用卡大小的計(jì)算機(jī)。 GPIO代表“通用輸入/輸出”,這意味著這些引腳可以發(fā)送電信號(hào)來(lái)驅(qū)動(dòng)硬件或接收它們并讀取傳感器數(shù)據(jù)。我們將它們用作輸出,以將信號(hào)發(fā)送到L293D IC芯片,該芯片只是用于控制直流電動(dòng)機(jī)的芯片。沒(méi)什么特別的。

Python是一種計(jì)算機(jī)編程語(yǔ)言,可與Javascript或C ++相提并論。我們將使用非常簡(jiǎn)單的python命令,不需要任何計(jì)算機(jī)編程知識(shí)。

控制電動(dòng)機(jī)速度的方法是使用稱為PWM的python模塊。代表脈沖寬度調(diào)制。 PWM的意思是通過(guò)在高電平和低電平之間切換設(shè)定的時(shí)間量來(lái)控制電壓接通的時(shí)間量。電壓高的時(shí)間稱為“占空比”或“占空比”,無(wú)論該百分比是電動(dòng)機(jī)運(yùn)行的功率百分比。

要查看PWM作為輸出的外觀,請(qǐng)參考上圖。

L293D電機(jī)IC使用兩個(gè)引腳(稱為輸入)感測(cè)所需的輸出方向,以及另一個(gè)引腳(使能)感測(cè)開/關(guān)。因此,在我們的代碼中,在使能引腳為ON的情況下,如果我們希望電動(dòng)機(jī)正轉(zhuǎn),則將輸入1設(shè)置為“ True”或“ HIGH”,將輸入2設(shè)置為“ False”或“ LOW”。如果希望它向后旋轉(zhuǎn),我們將輸入1設(shè)置為“ False”或“ LOW”,將輸入2設(shè)置為“ True”或“ HIGH”。如果兩個(gè)輸入均為True或均為False,則電動(dòng)機(jī)將不會(huì)運(yùn)行。

這就是我們控制方向的方式,但是速度呢?我們說(shuō)的是PWM對(duì)嗎?因此,我們將僅對(duì)兩個(gè)輸入進(jìn)行脈寬調(diào)制,對(duì)嗎?我們可以,但是太復(fù)雜了。由于IC具有一個(gè)使能引腳來(lái)控制其開/關(guān)狀態(tài)的Enable引腳,因此我們可以將兩個(gè)輸入都保持為運(yùn)行狀態(tài),而僅調(diào)制Enable引腳,并且IC只會(huì)根據(jù)我們?cè)贓nable引腳中設(shè)置的占空比來(lái)輸出功率。這樣,我們可以簡(jiǎn)化代碼,減少出錯(cuò)的地方。

因此,在Raspberry Pi上,我們將在GPIO板上使用3個(gè)GPIO輸出引腳,一個(gè)3.3V電源和一個(gè)一根接地針。輸出引腳中的2個(gè)用于IC上的輸入,一個(gè)用于使能。

現(xiàn)在我們知道會(huì)發(fā)生什么,現(xiàn)在該開始進(jìn)行接線了。

步驟3:硬件設(shè)置

上面的圖片可能看起來(lái)像是混亂的電線,但不要擔(dān)心。

首先要做的是將L293D芯片放在試驗(yàn)板上。面包板的中間應(yīng)有一個(gè)縫隙,如一個(gè)縫隙,并且IC芯片應(yīng)將其一半左右的引腳很好地跨在上面,因此它與板平行。

接下來(lái),這很重要將電線插入正確的面包板插槽,因此我建議對(duì)電線進(jìn)行顏色編碼。我將紅色用于正極電源連接,將黑色用于負(fù)極電源連接(接地),將藍(lán)色用于RPi的輸入,將橙色用于電動(dòng)機(jī)的輸出。

您可能會(huì)注意到有兩套電源線。這是因?yàn)橹绷麟妱?dòng)機(jī)應(yīng)至少在9V和400mA的電流下運(yùn)行,而電動(dòng)機(jī)控制IC的電壓應(yīng)在5V或3.3V且小于20mA。因此,在這種設(shè)置中,IC芯片需要3.3V的電源,并通過(guò)接地(負(fù)電源插頭)連接到RPI。然后它還具有9V的電源和來(lái)自電池的接地,然后通過(guò)芯片將其路由到電動(dòng)機(jī)。 重要提示:請(qǐng)勿嘗試從RPi汲取9V和400mA電流或通過(guò)IC芯片運(yùn)行9V。這可能會(huì)損壞RPi和/或L293D。為確保將電壓路由到正確的引腳,請(qǐng)使用上圖。

要知道IC芯片的哪一端,請(qǐng)?jiān)谂c上圖相對(duì)應(yīng)的一端尋找一個(gè)小半圓缺口。

現(xiàn)在,您擁有L293D IC在面包板上,首先我們將M/F跳線連接到RPi。因此,在面包板上,將跳線的公端放入旁邊的插槽中:Vss,Enable 1,Input 1,Input 2和左側(cè)的GND引腳。應(yīng)該有5根電線準(zhǔn)備連接到RPi。有關(guān)引腳號(hào),請(qǐng)參見上圖?,F(xiàn)在,將電線從Vss(我希望您將其變成紅色)連接到Pi或1號(hào)針上的5V電源。接下來(lái),將GND跳線(再次希望是黑色的)連接到GND引腳或引腳6。之后,將輸入1跳線連接到GPIO2或引腳#3。然后將跳線從輸入2連接到GPIO3或引腳5。最后,將Enable 1跳線連接到GPIO4或引腳7。到了,再也沒(méi)有M/F跳線了!到一半了!

所以,現(xiàn)在抓住M/M跳線。其中之一應(yīng)從IC的Vs引腳到9V的正端。有很多方法可以將其保留在電池上,但是只要金屬兩端牢固接觸,膠帶就可以使用。用黑色M/M跳線將電池的負(fù)極端連接到IC的另一個(gè)GND引腳。最后,只需將IC上的兩個(gè)輸出引腳連接到電動(dòng)機(jī)的兩端即可!而已!現(xiàn)在,一切都按照所需的方式進(jìn)行了布線,不再需要任何硬件工作。上軟件。

步驟4:軟件設(shè)置

首先,我們需要在Pi上打開一個(gè)程序來(lái)編寫代碼。我們將使用IDLE 2,因此請(qǐng)轉(zhuǎn)到桌面的左上角,依次單擊“菜單”,“編程”和“ Python 2(IDLE)”。您應(yīng)該看到帶有未命名文檔的空白文本編輯器。

我們需要做的第一件事是導(dǎo)入GPIO模塊。因此,在第一行中,準(zhǔn)確鍵入對(duì)CaSe敏感的

import RPi.GPIO as GPIO

這將導(dǎo)入GPIO模塊

下一步,我們需要一個(gè)名為“ sleep”的命令,因此編寫

from time import sleep

下一步,我們需要命名所有引腳,因此通過(guò)寫入設(shè)置命名模式

GPIO.setmode(GPIO.BOARD)

,這會(huì)將名稱設(shè)置為電路板模式,從而只需根據(jù)上圖中間的數(shù)字命名引腳。

現(xiàn)在我們需要將引腳設(shè)置為輸出,所以現(xiàn)在寫

GPIO.setup(03, GPIO.OUT) GPIO.setup(05, GPIO.OUT) GPIO.setup(07, GPIO.OUT)

現(xiàn)在設(shè)置pwm命令類型

pwm=GPIO.PWM(07, 100)

下一步以0占空比啟動(dòng)脈沖寬度調(diào)制,因此它尚未運(yùn)行

pwm.start(0)

其余代碼根據(jù)我們想要的方式而變化運(yùn)行馬達(dá)。對(duì)于第一遍,我們將在代碼中設(shè)置預(yù)定義的指令。稍后,我將說(shuō)明如何編寫代碼,讓您輸入所需的方向,任務(wù)和持續(xù)時(shí)間。

因此,到目前為止,我們將編寫一個(gè)代碼,該代碼以50%的功率向前運(yùn)行2秒,然后以75%的功率向后運(yùn)行3秒。

首先,要設(shè)置向前寫入的方向

GPIO.output(03, True) GPIO.output(05, False)

現(xiàn)在,我們將PWM占空比設(shè)置為50%。寫入

pwm.ChangeDutyCycle(50)

然后打開使能引腳

GPIO.output(07, True)

然后將代碼休眠2秒鐘,以便電動(dòng)機(jī)運(yùn)行

sleep(2)

現(xiàn)在關(guān)閉使能引腳

GPIO.output(07, False)

然后反轉(zhuǎn)輸入以將其設(shè)置為反轉(zhuǎn)

GPIO.output(03, False) GPIO.output(05, True)

然后將PWM占空比更改為75%

pwm.ChangeDutyCycle(75)

,然后重新啟用啟用功能

GPIO.output(07, True)

使代碼休眠3秒鐘

sleep(3)

然后再關(guān)閉使能引腳

GPIO.output(07, False)

停止脈沖

pwm.stop()

并清除所有GPIO通道。

GPIO.cleanup()

就是這樣!現(xiàn)在,您有了一個(gè)代碼,它將使電動(dòng)機(jī)以50%的速度向前運(yùn)轉(zhuǎn)2秒,然后以75%的速度向后運(yùn)轉(zhuǎn)3秒。按F5,然后保存以測(cè)試您的代碼!

*注意:您可能會(huì)收到一條錯(cuò)誤消息,指出所選的GPIO通道已在使用中。這不會(huì)影響您的項(xiàng)目,您可以通過(guò)在代碼中寫入“ GPIO.setwarnings(False)”來(lái)使警告停止出現(xiàn)。*

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問(wèn)題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • 直流電動(dòng)機(jī)

    關(guān)注

    7

    文章

    198

    瀏覽量

    23339
  • L293D
    +關(guān)注

    關(guān)注

    4

    文章

    50

    瀏覽量

    20350
  • 樹莓派
    +關(guān)注

    關(guān)注

    121

    文章

    1963

    瀏覽量

    107079
收藏 人收藏

    評(píng)論

    相關(guān)推薦
    熱點(diǎn)推薦

    直流電動(dòng)機(jī)的電磁轉(zhuǎn)矩和電樞電流由什么決定?

    直流電動(dòng)機(jī)作為將電能轉(zhuǎn)換為機(jī)械能的核心設(shè)備,其性能關(guān)鍵取決于電磁轉(zhuǎn)矩與電樞電流的特性。這兩者的關(guān)系及決定因素涉及電動(dòng)機(jī)內(nèi)部電磁作用與外部電路參數(shù)的復(fù)雜交互,需從基本原理、結(jié)構(gòu)設(shè)計(jì)及運(yùn)行條件等多維
    的頭像 發(fā)表于 04-28 17:36 ?555次閱讀
    <b class='flag-5'>直流電動(dòng)機(jī)</b>的電磁轉(zhuǎn)矩和電樞電流由什么決定?

    電機(jī)控制專用集成電路PDF版

    直流電動(dòng)機(jī)精密速度控制的鎖相環(huán)集成電路作了專門介紹。 控制電機(jī)中的信號(hào)類元件自整角機(jī)、旋轉(zhuǎn)變壓器、感應(yīng)同步器等均屬模擬型控制元件,在計(jì)算機(jī)控制
    發(fā)表于 04-22 17:02

    直流電機(jī)參數(shù)免費(fèi)發(fā)放

    直流電動(dòng)機(jī)直流發(fā)電機(jī)、直流調(diào)壓發(fā)電機(jī)三種,適用于一般正常的工作環(huán)境。電動(dòng)機(jī)作一般傳動(dòng)用,發(fā)電機(jī)作為一般直流電源用,調(diào)壓發(fā)電機(jī)作蓄電池組充電
    發(fā)表于 02-28 01:25

    直流電機(jī)

    直流電機(jī)(direct current machine)是指能將直流電能轉(zhuǎn)換成機(jī)械能(直流電動(dòng)機(jī))或?qū)C(jī)械能轉(zhuǎn)換成直流電能(直流發(fā)電機(jī))的旋
    發(fā)表于 02-27 01:06

    直流電機(jī)的基本工作原理與結(jié)構(gòu)

    本章主要討論直流電機(jī)的基本結(jié)構(gòu)和工作原理,討論直流電機(jī)的磁場(chǎng)分布、感應(yīng)電動(dòng)勢(shì)、電磁轉(zhuǎn)矩、電樞反應(yīng)及影響、換向及改善換向方法,從應(yīng)用角度分析直流發(fā)電機(jī)的運(yùn)行特性和
    發(fā)表于 02-27 01:03

    無(wú)刷直流電機(jī)的工作原理

    無(wú)刷直流電動(dòng)機(jī)的工作原理普通直流電動(dòng)機(jī)的電樞在轉(zhuǎn)子上,而定子產(chǎn)生固定不動(dòng)的磁場(chǎng)。為了使直流電動(dòng)機(jī)旋轉(zhuǎn),需要通過(guò)換向器和電刷不斷改變電樞繞組中電流的方向,使兩個(gè)磁場(chǎng)的方向始終保持相互垂直,從而產(chǎn)生恒定
    發(fā)表于 02-27 01:00

    直流伺服電動(dòng)機(jī)的分類和結(jié)構(gòu)

    直流伺服電動(dòng)機(jī)的分類和結(jié)構(gòu) 直流伺服電動(dòng)機(jī)按其結(jié)構(gòu)原理不同,可分為傳統(tǒng)型直流伺服電動(dòng)機(jī)和低慣量型
    的頭像 發(fā)表于 01-07 10:22 ?923次閱讀
    <b class='flag-5'>直流</b>伺服<b class='flag-5'>電動(dòng)機(jī)</b>的分類和結(jié)構(gòu)

    家用電器中使用的電動(dòng)機(jī)類型

    隨著科技的發(fā)展,家用電器已經(jīng)成為我們?nèi)粘I钪胁豢苫蛉钡囊徊糠?。這些設(shè)備中,電動(dòng)機(jī)作為核心動(dòng)力部件,其性能直接影響到家電的工作效率和使用壽命。 1. 直流電動(dòng)機(jī)(DC Motor) 直流電動(dòng)機(jī)
    的頭像 發(fā)表于 11-27 09:40 ?1973次閱讀

    電磁式直流電動(dòng)機(jī)是什么?它具有什么特點(diǎn)?

    電磁式直流電動(dòng)機(jī)是一種將電能轉(zhuǎn)換為機(jī)械能的設(shè)備,它利用電磁力來(lái)驅(qū)動(dòng)轉(zhuǎn)子旋轉(zhuǎn)。這種電動(dòng)機(jī)廣泛應(yīng)用于各種工業(yè)和民用領(lǐng)域,如機(jī)床、電動(dòng)車輛、家用電器等。 一、工作原理 電磁式直流電動(dòng)機(jī)的工作
    的頭像 發(fā)表于 10-23 10:35 ?898次閱讀

    直流電動(dòng)機(jī)基本構(gòu)造是什么?分類有哪些?

    直流電動(dòng)機(jī)是一種將直流電能轉(zhuǎn)換為機(jī)械能的裝置。它廣泛應(yīng)用于各種工業(yè)、交通、家庭等領(lǐng)域。直流電動(dòng)機(jī)的基本構(gòu)造和分類如下: 基本構(gòu)造 直流電動(dòng)機(jī)主要由以下幾部分組成: a) 定子:定子是
    的頭像 發(fā)表于 10-22 10:15 ?1163次閱讀

    亞太地區(qū)是最大的微型直流電動(dòng)機(jī)市場(chǎng),占有大約37%份額

    根據(jù)Global Info Research項(xiàng)目團(tuán)隊(duì)最新調(diào)研,預(yù)計(jì)2030年全球微型直流電動(dòng)機(jī)產(chǎn)值達(dá)到20610百萬(wàn)美元,2024-2030年期間年復(fù)合增長(zhǎng)率CAGR為6.4%。
    的頭像 發(fā)表于 09-05 14:54 ?419次閱讀

    無(wú)刷直流電動(dòng)機(jī)調(diào)速的實(shí)現(xiàn)

    無(wú)刷直流電動(dòng)機(jī)(Brushless DC Motor, BLDC)的調(diào)速實(shí)現(xiàn)是一個(gè)復(fù)雜而精細(xì)的過(guò)程,它依賴于先進(jìn)的電子技術(shù)和控制策略。以下將從無(wú)刷直流電動(dòng)機(jī)的基本原理、調(diào)速方法、控制
    的頭像 發(fā)表于 08-26 14:44 ?1808次閱讀

    使用L293D電機(jī)驅(qū)動(dòng)器控制直流電機(jī)

    直流電機(jī)是指能將直流電能轉(zhuǎn)換成機(jī)械能(直流電動(dòng)機(jī))或?qū)C(jī)械能轉(zhuǎn)換成直流電能(直流發(fā)電機(jī))的旋轉(zhuǎn)電機(jī)。當(dāng)
    的頭像 發(fā)表于 06-21 15:55 ?2867次閱讀
    使用<b class='flag-5'>L293D</b>電機(jī)驅(qū)動(dòng)器<b class='flag-5'>控制</b><b class='flag-5'>直流電</b>機(jī)

    直流電動(dòng)機(jī)的工作特性

    直流電動(dòng)機(jī)作為現(xiàn)代工業(yè)中廣泛應(yīng)用的重要設(shè)備,其工作特性直接關(guān)系到設(shè)備的性能和使用效果。直流電動(dòng)機(jī)的工作特性主要包括額定工作狀態(tài)下負(fù)載電流、電壓、功率因數(shù)、效率等參數(shù)的變化情況,以及電機(jī)的啟動(dòng)、調(diào)速、制動(dòng)等操作特性。本文將對(duì)直流電動(dòng)機(jī)
    的頭像 發(fā)表于 06-21 11:18 ?1944次閱讀

    直流電動(dòng)機(jī)與三相異步電動(dòng)機(jī)的區(qū)別

    電動(dòng)機(jī)作為現(xiàn)代工業(yè)自動(dòng)化的基石,其種類繁多,各具特色。其中,直流電動(dòng)機(jī)和三相異步電動(dòng)機(jī)是兩類廣泛應(yīng)用的電動(dòng)機(jī)類型。它們?cè)诮Y(jié)構(gòu)、工作原理、性能特點(diǎn)及應(yīng)用領(lǐng)域等方面均有所不同。本文將對(duì)這兩
    的頭像 發(fā)表于 06-18 17:14 ?3956次閱讀

    電子發(fā)燒友

    中國(guó)電子工程師最喜歡的網(wǎng)站

    • 2931785位工程師會(huì)員交流學(xué)習(xí)
    • 獲取您個(gè)性化的科技前沿技術(shù)信息
    • 參加活動(dòng)獲取豐厚的禮品