步驟1:脈寬調(diào)制(PWM) )
對(duì)于那些不熟悉PWM的人來(lái)說(shuō),它并不像聽(tīng)起來(lái)那樣可怕。對(duì)于我們簡(jiǎn)單的電機(jī)控制應(yīng)用程序而言,它真正的意思是生成一定頻率的方波,然后更改占空比。占空比定義為輸出與波形周期相比為邏輯高電平的時(shí)間比率。您可以在上圖中清楚地看到,頂部波形為10%占空比,中間波形為50%占空比,底部波形為90%占空比。每個(gè)波形上覆蓋的虛線表示電機(jī)看到的等效直流電壓。鑒于Arduino具有內(nèi)置的PWM功能,生成這種類型的DC電機(jī)控制確實(shí)非常簡(jiǎn)單。使用PWM的另一優(yōu)點(diǎn)是,它有助于防止電動(dòng)機(jī)在使用直直流電時(shí)可能發(fā)生的突然啟動(dòng)。 PWM的一個(gè)缺點(diǎn)是有時(shí)在PWM的頻率下會(huì)聽(tīng)到來(lái)自電動(dòng)機(jī)的聲音。
步驟2:硬件
第一張圖片顯示了開(kāi)關(guān)和LM298電機(jī)驅(qū)動(dòng)器模塊的Arduino連接。 Arduino內(nèi)部有弱上拉電阻,因此開(kāi)關(guān)不需要上拉電阻。方向開(kāi)關(guān)是一個(gè)簡(jiǎn)單的SPST(單刀單擲)開(kāi)關(guān)。油門和制動(dòng)開(kāi)關(guān)顯示為常開(kāi),瞬時(shí)接觸按鈕。
第二張圖顯示了藍(lán)牙模塊和LM298電機(jī)驅(qū)動(dòng)器模塊的Arduino連接。藍(lán)牙TXD輸出直接連接到Arduino RX串行輸入。
第三張圖片是L298N雙H橋模塊。 LM298模塊具有一個(gè)板載5伏調(diào)節(jié)器,可通過(guò)跳線將其啟用。 Arduino和藍(lán)牙需要+5伏特,但我們需要+12伏特來(lái)驅(qū)動(dòng)電機(jī)。在這種情況下,我們將+12伏特施加到L298N的“ + 12V電源”輸入,我們將保留“ 5V使能”跳線。這允許5伏調(diào)節(jié)器輸出到模塊上的“ +5功率”連接。將其連接到Arduino和藍(lán)牙。別忘了將+12輸入和+5輸出的接地線連接到模塊“電源GND”。
我們希望電機(jī)的輸出電壓根據(jù)產(chǎn)生的PWM變化。 Arduino,而不僅僅是完全打開(kāi)或關(guān)閉。為此,我們從“ ENA”和“ ENB”上移除跳線,并將我們的Arduino PWM輸出連接至模塊上的“ ENA”。請(qǐng)記住,實(shí)際的使能引腳是最靠近板邊緣的引腳(“輸入”引腳旁邊)。每個(gè)使能的背面引腳為+5伏,因此我們要確保不連接該引腳。
模塊上的“ IN1”和“ IN2”引腳分別連接到各自的Arduino引腳。這些引腳控制電機(jī)方向,是的,有充分的理由讓Arduino控制它們,而不是簡(jiǎn)單地將開(kāi)關(guān)連接到模塊。
第3步:藍(lán)牙模塊
此處顯示的圖片是藍(lán)牙的典型圖片可用模塊。在尋找要購(gòu)買的產(chǎn)品時(shí),您可以搜索“ HC-05”和“ HC-06”。兩者之間的差異在于固件,通常是板上的引腳數(shù)。上圖是HC-06模塊的圖片,帶有簡(jiǎn)化的固件,僅允許進(jìn)行非常基本的配置。它也被設(shè)置為“從屬”藍(lán)牙設(shè)備。簡(jiǎn)單來(lái)說(shuō),這意味著它只能響應(yīng)來(lái)自“主”設(shè)備的命令,而不能自行發(fā)出命令。 HC-05模塊具有更多配置可能性,可以設(shè)置為“主”設(shè)備或“從”設(shè)備。 HC-05通常具有六個(gè)插針,而不是上面為HC-06所示的四個(gè)插針。 State引腳并不是很重要,但是如果要進(jìn)行任何配置,則需要Key引腳(有時(shí)會(huì)使用“ EN”之類的其他名稱)。通常,如果您可以使用默認(rèn)的9600波特率,并且不需要為模塊指定具體名稱,則無(wú)需對(duì)模塊進(jìn)行任何配置。我在幾個(gè)項(xiàng)目中都使用了這些項(xiàng)目,因此我要相應(yīng)地命名它們。
配置藍(lán)牙模塊需要您購(gòu)買或構(gòu)建RS-232串行端口或USB端口的接口。我不會(huì)在這篇文章中介紹如何構(gòu)建一個(gè),但是您應(yīng)該可以在網(wǎng)上找到信息。或者只是購(gòu)買一個(gè)接口。配置命令使用的AT命令有點(diǎn)像過(guò)去電話調(diào)制解調(diào)器中使用的命令。我在此處隨附了一個(gè)用戶手冊(cè),其中包含每種模塊類型的AT命令。要注意的一件事是HC-06需要大寫(xiě)命令,并且命令字符串必須在1秒內(nèi)完成。這意味著某些較長(zhǎng)的字符串(例如更改波特率)將需要剪切并粘貼到終端程序中,或者您需要設(shè)置要發(fā)送的文本文件。僅當(dāng)您嘗試發(fā)送配置命令時(shí),才需要大寫(xiě)。常規(guī)通信模式可以接受任何8位數(shù)據(jù)。
步驟4:軟件
對(duì)于手動(dòng)版本和藍(lán)牙而言,該軟件都非常簡(jiǎn)單版。要選擇藍(lán)牙版本,只需取消對(duì)“ #define BT_Ctrl”語(yǔ)句的注釋即可。
當(dāng)我編寫(xiě)PIC代碼時(shí),我嘗試使用PWM頻率并最終穩(wěn)定在500 Hz。我發(fā)現(xiàn)如果頻率太高,則LM298N模塊無(wú)法對(duì)脈沖做出足夠迅速的反應(yīng)。這意味著電壓輸出不是線性的,可能會(huì)發(fā)生較大的變化。 Arduino內(nèi)置了PWM命令,但它們僅允許您更改占空比而不是頻率。幸運(yùn)的是,該頻率約為490 Hz,因此足夠接近我在PIC上使用的500 Hz。
火車油門的“特征”之一是具有加速和制動(dòng)的動(dòng)量感模擬真實(shí)火車的工作方式。為此,在軟件的手動(dòng)版本的循環(huán)中插入一個(gè)簡(jiǎn)單的時(shí)間延遲。使用所示的值,從0到12伏或從12伏回到零大約需要13秒鐘??梢院苋菀椎貙⒀舆t更改為更長(zhǎng)或更短的時(shí)間。動(dòng)量無(wú)效的唯一情況是更改方向開(kāi)關(guān)。為了保護(hù)起見(jiàn),只要更改此開(kāi)關(guān),PWM占空比就會(huì)立即設(shè)置為0%。實(shí)際上,這使得“方向”開(kāi)關(guān)也可以用作緊急制動(dòng)器。
為確保立即處理“方向”開(kāi)關(guān),我將其代碼放入了中斷處理程序中。這也使我們可以使用“更改時(shí)中斷”功能,因此更改從低到高還是從高到低都沒(méi)有關(guān)系。
該軟件的藍(lán)牙版本使用單字母命令來(lái)啟動(dòng)前進(jìn),倒車,剎車和油門功能。實(shí)際上,收到的命令將替換手動(dòng)開(kāi)關(guān),但會(huì)導(dǎo)致相同的響應(yīng)。我用于藍(lán)牙控制的應(yīng)用程序被Next Prototypes稱為“藍(lán)牙串行控制器”。它使您可以配置虛擬鍵盤(pán)并為每個(gè)按鍵設(shè)置自己的命令字符串和名稱。它還允許您設(shè)置重復(fù)頻率,因此我將“制動(dòng)”和“油門”按鈕設(shè)置為50ms,以提供約14秒的動(dòng)量。我禁用了“前進(jìn)”和“后退”按鈕的重復(fù)功能。
-
控制器
+關(guān)注
關(guān)注
114文章
17113瀏覽量
184362 -
Arduino
+關(guān)注
關(guān)注
190文章
6498瀏覽量
192207
發(fā)布評(píng)論請(qǐng)先 登錄
瑞薩電子推出RA2T1系列微控制器


車載整機(jī)控制器 工程機(jī)械主機(jī)控制器#碩博電子#國(guó)產(chǎn)控制器
《ESP32S3 Arduino開(kāi)發(fā)指南》第二章 Arduino基礎(chǔ)知識(shí)

工程機(jī)械控制器廠家 控制器國(guó)產(chǎn)替代 #國(guó)產(chǎn)控制器#控制器廠家#控制器品牌

工程機(jī)械控制器如何選型?控制器選型指南 #控制器 #車載控制器 #整車控制器 #控制器選型

Y1620工程機(jī)械主機(jī)控制器 車載智能控制器 CAN總線 #工程機(jī)械控制器 #整車控制器 #車載控制器
瀾起科技CXL?內(nèi)存擴(kuò)展控制器芯片通過(guò)CXL 2.0合規(guī)性測(cè)試
如何使用Arduino實(shí)現(xiàn)CAN總線通信呢
stm32與Arduino的比較
如何選擇合適的PID控制器
位移傳感器在火車軌道上的應(yīng)用

國(guó)產(chǎn)控制器廠家 整車控制器 以太網(wǎng)控制器 CAN控制器 國(guó)產(chǎn)化替代

車載智能控制器 工程機(jī)械控制器 CAN總線控制器 碩博電子 #控制器 #can總線 #國(guó)產(chǎn)化替代
MSP430G2x01-Q1 MSP430G2x11-Q1混合信號(hào)微控制器數(shù)據(jù)表

MSP430G2x53-Q1汽車類混合信號(hào)微控制器數(shù)據(jù)表

評(píng)論