色哟哟视频在线观看-色哟哟视频在线-色哟哟欧美15最新在线-色哟哟免费在线观看-国产l精品国产亚洲区在线观看-国产l精品国产亚洲区久久

電子發(fā)燒友App

硬聲App

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

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

3天內(nèi)不再提示
創(chuàng)作
電子發(fā)燒友網(wǎng)>電子資料下載>電子資料>DIY ULN2003電機(jī)驅(qū)動器

DIY ULN2003電機(jī)驅(qū)動器

2022-07-11 | zip | 0.02 MB | 次下載 | 2積分

資料介紹

PCB圖如下:
pYYBAGKyeYGAUp0nAABYqisDbUg919.png
pYYBAGKyeYSAQUgoAAAmE3Y-Xko683.png

poYBAGKyeYiAKm2JAACA5sCf0zk750.png
pYYBAGKyeYuAMmweAADgvAqtOyg092.png

成分

ULN2003LVPWR
德州儀器
× 1
741C083510JP
CTS電阻器產(chǎn)品
× 1
106CKR063M
CDE/伊利諾伊電容器
× 1
SMBJ5.0CA
SMC 二極管解決方案
× 1
16針公頭 × 1
C503B-RBS-CW0Z0AA2
科銳LED
× 1

描述

DIY ULN2003電機(jī)驅(qū)動器

ULN2003驅(qū)動板

28BYJ-48 是您能找到的最便宜的步進(jìn)電機(jī)之一。雖然它不是超級準(zhǔn)確或功能強(qiáng)大,但它是用于小型項(xiàng)目或只想了解步進(jìn)電機(jī)的絕佳電機(jī)。

該電機(jī)通常用于自動調(diào)節(jié)空調(diào)機(jī)組的葉片。它有一個(gè)內(nèi)置的變速箱,可以提供一些額外的扭矩并大大降低速度。

您可以在下面找到本教程中使用的步進(jìn)電機(jī)和驅(qū)動器規(guī)格

pYYBAGKyeZ6AQuLBAABCloYivPo285.gif

重要提示:制造商通常指定電機(jī)具有 64:1 的齒輪減速。Arduino 論壇的一些成員注意到這是不正確的,因此他們拆開一些電機(jī)來檢查實(shí)際的齒輪比。他們確定確切的齒輪比實(shí)際上是 63.68395:1,這導(dǎo)致每整圈大約有 4076 步(在半步模式下)。

我不確定是否所有制造商都使用完全相同的變速箱,但您可以調(diào)整代碼中每轉(zhuǎn)的步數(shù),以匹配您的型號。

pYYBAGKyeaGAF3e2AACxBcEdUAg382.png

Adafruit Industries 小型減速步進(jìn)電機(jī)使用與 28BYJ-48 相同的外形尺寸,但具有不同的齒輪比。它有一個(gè)大約 1/16 的減速齒輪組,每轉(zhuǎn) 513 步(在全步模式下)。您可以下載它的數(shù)據(jù)表

控制 28BYJ-48 步進(jìn)電機(jī)的基本 Arduino 示例代碼

您可以使用 Arduino IDE 將以下示例代碼上傳到您的 Arduino。

此示例使用 Stepper.h 庫,該庫應(yīng)與 Arduino IDE 一起預(yù)裝。此草圖將步進(jìn)電機(jī)沿一個(gè)方向轉(zhuǎn)動 1 圈,暫停,然后沿另一個(gè)方向轉(zhuǎn)動 1 圈。

// 包括 Arduino Stepper.h 庫:

#include

// 定義每次旋轉(zhuǎn)的步數(shù):

常量 int stepsPerRevolution = 2048;

// 接線:

// ULN2003 驅(qū)動器上的引腳 8 到 IN1

// ULN2003 驅(qū)動器上的引腳 9 到 IN2

// ULN2003 驅(qū)動器上的引腳 10 到 IN3

// ULN2003 驅(qū)動器上的引腳 11 到 IN4

// 創(chuàng)建名為“myStepper”的步進(jìn)器對象,注意引腳順序:

步進(jìn)器 myStepper = Stepper(stepsPerRevolution, 8, 10, 9, 11);

無效設(shè)置(){

// 將速度設(shè)置為 5 rpm:

myStepper.setSpeed(5);

// 以 9600 的波特率開始串行通信

序列號.開始(9600);

}

無效循環(huán)(){

// 向一個(gè)方向旋轉(zhuǎn)一圈:

Serial.println("順時(shí)針");

myStepper.step(stepsPerRevolution);

延遲(500);

// 向另一個(gè)方向旋轉(zhuǎn)一圈:

Serial.println("逆時(shí)針");

myStepper.step(-stepsPerRevolution);

延遲(500);

}

代碼說明:

草圖首先包含 Stepper.h Arduino 庫。關(guān)于這個(gè)庫的更多信息可以在 Arduino 網(wǎng)站上找到。

// 包括 Arduino Stepper.h 庫:

#include

接下來,我定義了電機(jī)旋轉(zhuǎn) 1 圈需要多少步。在本例中,我們將在全步模式下使用電機(jī)。這意味著旋轉(zhuǎn) 360 度需要 2048 步(參見上面的電機(jī)規(guī)格)。

// 定義每次旋轉(zhuǎn)的步數(shù):

常量 int stepsPerRevolution = 2048;

接下來,您需要創(chuàng)建 Stepper 類的新實(shí)例,它表示連接到 Arduino 的特定步進(jìn)電機(jī)。為此,我們使用函數(shù)?

步進(jìn)器(步驟,pin1,pin2,pin3,pin4)

?其中steps是每轉(zhuǎn)的步數(shù),pin1到pin4是電機(jī)連接的引腳。要獲得正確的步進(jìn)順序,我們需要按以下順序設(shè)置引腳:8、10、9、11。

// 創(chuàng)建名為“myStepper”的步進(jìn)器對象,注意引腳順序:

步進(jìn)器 myStepper = Stepper(stepsPerRevolution, 8, 10, 9, 11);

在這種情況下,我將步進(jìn)電機(jī)稱為“myStepper”,但您也可以使用其他名稱,例如“z_motor”或“l(fā)iftmotor”等。?

步進(jìn)電機(jī) = Stepper(stepsPerRevolution, 8, 10, 9, 11);

. 您可以創(chuàng)建多個(gè)具有不同名稱和引腳的步進(jìn)電機(jī)對象。這使您可以輕松地同時(shí)控制 2 個(gè)或更多步進(jìn)電機(jī)。

在設(shè)置中,您可以使用功能以 rpm 為單位設(shè)置速度?

設(shè)定轉(zhuǎn)速(rpm)

. 28byj-48 步進(jìn)電機(jī)的最大速度在 5 V 時(shí)約為 10-15 rpm。

無效設(shè)置(){

// 將速度設(shè)置為 5 rpm:

myStepper.setSpeed(5);

// 以 9600 的波特率開始串行通信:

序列號.開始(9600);

}

在代碼的循環(huán)部分,我們簡單地調(diào)用?

步驟(步驟)

?以由電機(jī)確定的速度將電機(jī)轉(zhuǎn)動特定步數(shù)的功能?

設(shè)定轉(zhuǎn)速(rpm)

?功能。將負(fù)數(shù)傳遞給此函數(shù)會反轉(zhuǎn)電機(jī)的旋轉(zhuǎn)方向。

無效循環(huán)(){

// 向一個(gè)方向旋轉(zhuǎn)一圈:

Serial.println("順時(shí)針");

myStepper.step(stepsPerRevolution);

延遲(500);

// 向另一個(gè)方向旋轉(zhuǎn)一圈:

Serial.println("逆時(shí)針");

myStepper.step(-stepsPerRevolution);

延遲(500);

}

帶有 Arduino 和 AccelStepper 庫的 28BYJ-48 步進(jìn)電機(jī)的示例代碼

在以下三個(gè)示例中,我將向您展示如何控制步進(jìn)電機(jī)的速度、方向和步數(shù)。在這些示例中,我將使用 AccelStepper 庫。

Mike McCauley 編寫的 AccelStepper 庫是一個(gè)非常棒的庫,可用于您的項(xiàng)目。優(yōu)點(diǎn)之一是它支持加速和減速,但它也有很多其他不錯(cuò)的功能。

你可以下載這個(gè)庫的最新版本?AccelStepper-1.59.zip

您可以通過轉(zhuǎn)到 Arduino IDE 中的 Sketch > Include Library > Add .ZIP Library... 來安裝庫。

另一種選擇是導(dǎo)航到工具 > 管理庫...或在 Windows 上鍵入 Ctrl + Shift + I。庫管理器將打開并更新已安裝庫的列表。

pYYBAGKyeaSAVOJbAAA1gVyxWZw976.png

您可以搜索“accelstepper”并查找 Mike McCauley 的庫。選擇最新版本,然后單擊安裝。

poYBAGKyeaiAA1iNAACe0IaD4xc000.png

1.連續(xù)旋轉(zhuǎn)示例代碼

以下草圖可用于以恒定速度連續(xù)運(yùn)行一個(gè)或多個(gè)步進(jìn)電機(jī)。(不使用加速或減速)。

您可以通過單擊代碼字段右上角的按鈕來復(fù)制代碼。

/* 使用 ULN2003 驅(qū)動板、AccelStepper 和 Arduino UNO 控制 28BYJ-48 步進(jìn)電機(jī)的示例草圖:連續(xù)旋轉(zhuǎn)。更多信息:https://www.makerguides.com */

// 包含 AccelStepper 庫:

#include

// 電機(jī)引腳定義:

#define motorPin1 8 // ULN2003 驅(qū)動器上的 IN1

#define motorPin2 9 // ULN2003 驅(qū)動器上的 IN2

#define motorPin3 10 // ULN2003 驅(qū)動器上的 IN3

#define motorPin4 11 // ULN2003 驅(qū)動器上的 IN4

// 定義AccelStepper接口類型;半步模式下的 4 線電機(jī):

#define MotorInterfaceType 8

// 使用引腳序列 IN1-IN3-IN2-IN4 進(jìn)行初始化,以便將 AccelStepper 庫與 28BYJ-48 步進(jìn)電機(jī)一起使用:

AccelStepper stepper = AccelStepper(MotorInterfaceType, motorPin1, motorPin3, motorPin2, motorPin4);

無效設(shè)置(){

// 設(shè)置每秒最大步數(shù):

stepper.setMaxSpeed(1000);

}

無效循環(huán)(){

// 以每秒步數(shù)為單位設(shè)置電機(jī)的速度:

stepper.setSpeed(500);

// 以 setSpeed() 設(shè)置的恒定速度步進(jìn)電機(jī):

stepper.runSpeed();

}

代碼如何工作:

同樣,第一步是將庫包含在?

#include

.

// 包含 AccelStepper 庫:

#include

下一步是定義 ULN2003 到 Arduino 的連接。

該聲明?

#定義

?用于為常量值命名。編譯程序時(shí),編譯器會將對該常量的任何引用替換為定義的值。所以你提到的任何地方?

電機(jī)引腳1

,編譯器會在編譯程序時(shí)將其替換為值 8。

// 電機(jī)引腳定義:

#define motorPin1 8 // ULN2003 驅(qū)動器上的 IN1

#define motorPin2 9 // ULN2003 驅(qū)動器上的 IN2

#define motorPin3 10 // ULN2003 驅(qū)動器上的 IN3

#define motorPin4 11 // ULN2003 驅(qū)動器上的 IN4

下一步是為 AccelStepper 庫指定電機(jī)接口類型。在這種情況下,我們將以半步模式驅(qū)動 4 線步進(jìn)電機(jī),因此我們將接口類型設(shè)置為“8”。您可以在此處找到其他接口類型。如果您想以全步模式(每轉(zhuǎn)少步)運(yùn)行電機(jī),只需將 8 更改為 4。

// 定義AccelStepper接口類型;半步模式下的 4 線電機(jī):

#define MotorInterfaceType 8

?

接下來,您需要使用適當(dāng)?shù)碾姍C(jī)接口類型和連接創(chuàng)建 AccelStepper 類的新實(shí)例。為了獲得正確的步進(jìn)順序,我們需要按以下順序設(shè)置引腳:motorPin1、motorPin3、motorPin2、motorPin4。

在這種情況下,我將步進(jìn)電機(jī)稱為“步進(jìn)器”,但您也可以使用其他名稱,例如“z_motor”或“l(fā)iftmotor”等。?

AccelStepper liftmotor = AccelStepper(MotorInterfaceType, motorPin1, motorPin3, motorPin2, motorPin4);

. 您可以創(chuàng)建多個(gè)具有不同名稱和引腳的步進(jìn)電機(jī)對象。這使您可以輕松地同時(shí)控制 2 個(gè)或更多步進(jìn)電機(jī)。

// 使用引腳序列 IN1-IN3-IN2-IN4 進(jìn)行初始化,以便將 AccelStepper 庫與 28BYJ-48 步進(jìn)電機(jī)一起使用:

AccelStepper stepper = AccelStepper(MotorInterfaceType, motorPin1, motorPin3, motorPin2, motorPin4);

在代碼的設(shè)置部分,我們使用函數(shù)定義最大速度(步/秒)?

設(shè)置最大速度()

. 每秒超過 1000 步的速度可能不可靠,因此我將其設(shè)置為最大值。請注意,我指定了步進(jìn)電機(jī)的名稱('stepper'),我想為其定義最大速度。如果您連接了多個(gè)步進(jìn)電機(jī),您可以為每個(gè)電機(jī)指定不同的速度:?

stepper2.setMaxSpeed(500);

.

無效設(shè)置(){

// 設(shè)置每秒最大步數(shù):

stepper.setMaxSpeed(1000);

}

在循環(huán)中,我們首先使用函數(shù)設(shè)置我們希望電機(jī)運(yùn)行的速度?

設(shè)置速度()

. (您也可以將其放在代碼的設(shè)置部分中)。

stepper.runSpeed()

?輪詢電機(jī),當(dāng)一個(gè)步驟到期時(shí),它執(zhí)行 1 個(gè)步驟。這取決于設(shè)置的速度和自上一步以來的時(shí)間。如果要改變電機(jī)的方向,可以設(shè)置負(fù)轉(zhuǎn)速:?

stepper.setSpeed(-400);

?以另一種方式轉(zhuǎn)動電機(jī)。

無效循環(huán)(){

// 以每秒步數(shù)為單位設(shè)置電機(jī)的速度:

stepper.setSpeed(500);

// 以 setSpeed() 設(shè)置的恒定速度步進(jìn)電機(jī):

stepper.runSpeed();

}

在半步模式下,一轉(zhuǎn)需要 4096 步,因此 500 步/秒導(dǎo)致大約 7 rpm。

2.草圖控制步數(shù)或轉(zhuǎn)數(shù)

使用以下草圖,您可以控制速度、方向和步數(shù)/轉(zhuǎn)數(shù)。

在這種情況下,步進(jìn)電機(jī)以 500 步/秒順時(shí)針旋轉(zhuǎn) 1 圈,然后以 1000 步/秒逆時(shí)針旋轉(zhuǎn) 1 圈,最后以 1000 步/秒順時(shí)針旋轉(zhuǎn) 2 圈。

/* 使用 ULN2003 驅(qū)動板、AccelStepper 和 Arduino UNO 控制 28BYJ-48 步進(jìn)電機(jī)的示例草圖:步數(shù)/轉(zhuǎn)數(shù)。更多信息:https://www.makerguides.com */

// 包含 AccelStepper 庫:

#include

// 電機(jī)引腳定義:

#define motorPin1 8 // ULN2003 驅(qū)動器上的 IN1

#define motorPin2 9 // ULN2003 驅(qū)動器上的 IN2

#define motorPin3 10 // ULN2003 驅(qū)動器上的 IN3

#define motorPin4 11 // ULN2003 驅(qū)動器上的 IN4

// 定義AccelStepper接口類型;半步模式下的 4 線電機(jī):

#define MotorInterfaceType 8

// 使用引腳序列 IN1-IN3-IN2-IN4 進(jìn)行初始化,以便將 AccelStepper 庫與 28BYJ-48 步進(jìn)電機(jī)一起使用:

AccelStepper stepper = AccelStepper(MotorInterfaceType, motorPin1, motorPin3, motorPin2, motorPin4);

無效設(shè)置(){

// 設(shè)置每秒最大步數(shù):

stepper.setMaxSpeed(1000);

}

無效循環(huán)(){

// 將當(dāng)前位置設(shè)置為 0:

stepper.setCurrentPosition(0);

// 以 500 步/秒的速度向前運(yùn)行電機(jī),直到電機(jī)達(dá)到 4096 步(1 轉(zhuǎn)):

而(stepper.currentPosition()!= 4096){

stepper.setSpeed(500);

stepper.runSpeed();

}

延遲(1000);

// 將位置重置為 0:

stepper.setCurrentPosition(0);

// 以 1000 步/秒的速度向后運(yùn)行電機(jī),直到電機(jī)達(dá)到 -4096 步(1 轉(zhuǎn)):

而(stepper.currentPosition()!= -4096){

stepper.setSpeed(-1000);

stepper.runSpeed();

}

延遲(1000);

// 將位置重置為 0:

stepper.setCurrentPosition(0);

// 以 1000 步/秒的速度向前運(yùn)行電機(jī),直到電機(jī)達(dá)到 8192 步(2 轉(zhuǎn)):

而(stepper.currentPosition()!= 8192){

stepper.setSpeed(1000);

stepper.runSpeed();

}

延遲(3000);

}

下載該資料的人也在下載 下載該資料的人還在閱讀
更多 >

評論

查看更多

下載排行

本周

  1. 1山景DSP芯片AP8248A2數(shù)據(jù)手冊
  2. 1.06 MB  |  532次下載  |  免費(fèi)
  3. 2RK3399完整板原理圖(支持平板,盒子VR)
  4. 3.28 MB  |  339次下載  |  免費(fèi)
  5. 3TC358743XBG評估板參考手冊
  6. 1.36 MB  |  330次下載  |  免費(fèi)
  7. 4DFM軟件使用教程
  8. 0.84 MB  |  295次下載  |  免費(fèi)
  9. 5元宇宙深度解析—未來的未來-風(fēng)口還是泡沫
  10. 6.40 MB  |  227次下載  |  免費(fèi)
  11. 6迪文DGUS開發(fā)指南
  12. 31.67 MB  |  194次下載  |  免費(fèi)
  13. 7元宇宙底層硬件系列報(bào)告
  14. 13.42 MB  |  182次下載  |  免費(fèi)
  15. 8FP5207XR-G1中文應(yīng)用手冊
  16. 1.09 MB  |  178次下載  |  免費(fèi)

本月

  1. 1OrCAD10.5下載OrCAD10.5中文版軟件
  2. 0.00 MB  |  234315次下載  |  免費(fèi)
  3. 2555集成電路應(yīng)用800例(新編版)
  4. 0.00 MB  |  33566次下載  |  免費(fèi)
  5. 3接口電路圖大全
  6. 未知  |  30323次下載  |  免費(fèi)
  7. 4開關(guān)電源設(shè)計(jì)實(shí)例指南
  8. 未知  |  21549次下載  |  免費(fèi)
  9. 5電氣工程師手冊免費(fèi)下載(新編第二版pdf電子書)
  10. 0.00 MB  |  15349次下載  |  免費(fèi)
  11. 6數(shù)字電路基礎(chǔ)pdf(下載)
  12. 未知  |  13750次下載  |  免費(fèi)
  13. 7電子制作實(shí)例集錦 下載
  14. 未知  |  8113次下載  |  免費(fèi)
  15. 8《LED驅(qū)動電路設(shè)計(jì)》 溫德爾著
  16. 0.00 MB  |  6656次下載  |  免費(fèi)

總榜

  1. 1matlab軟件下載入口
  2. 未知  |  935054次下載  |  免費(fèi)
  3. 2protel99se軟件下載(可英文版轉(zhuǎn)中文版)
  4. 78.1 MB  |  537798次下載  |  免費(fèi)
  5. 3MATLAB 7.1 下載 (含軟件介紹)
  6. 未知  |  420027次下載  |  免費(fèi)
  7. 4OrCAD10.5下載OrCAD10.5中文版軟件
  8. 0.00 MB  |  234315次下載  |  免費(fèi)
  9. 5Altium DXP2002下載入口
  10. 未知  |  233046次下載  |  免費(fèi)
  11. 6電路仿真軟件multisim 10.0免費(fèi)下載
  12. 340992  |  191187次下載  |  免費(fèi)
  13. 7十天學(xué)會AVR單片機(jī)與C語言視頻教程 下載
  14. 158M  |  183279次下載  |  免費(fèi)
  15. 8proe5.0野火版下載(中文版免費(fèi)下載)
  16. 未知  |  138040次下載  |  免費(fèi)
主站蜘蛛池模板: 男宿舍里的呻吟h| 国产高清视频在线播放www色| 轻轻挺进女教师的身体| 国产亚洲一区在线| 啪啪啪社区| 九色91精品国产网站| 依人在线观看| 男生脱美女内裤内衣动态图| 国产小视频国产精品| qvod理论电影| 做i爱视频30分钟免费| 亚洲精品第五页中文字幕| 日本一区二区三区在线观看网站| 老师的玉足高跟鞋满足我| 国拍在线精品视频免费观看| 国产成A人片在线观看| YELLOW日本动漫高清免费| 亚洲成A人片在线观看中文L| 久久热这里只有 精品| G国产精品无马| 最近中文字幕2018MV高清在线| 亚洲精品AV一二三区无码| 水蜜桃亚洲一二三四在线| 青草国产在线视频免费| 免费人成视频19674不收费| 久久国产露脸老熟女熟69| 大胸美女裸身色诱网站| 99久久做夜夜爱天天做精品| 尤物国产在线精品三区| 亚洲va精品中文字幕| 无码成A毛片免费| 色欲档案之麻雀台上淫| 青草在线观看视频| 欧美AAAA片免费播放观看| 国产又粗又猛又爽黄老大爷| 国产精品.XX视频.XXTV | 中文字幕无码乱人伦蜜桃| 亚洲精品视频免费看| 亚洲爆乳少妇精品无码专区| 学生精品国产在线视频| 小妇人电影免费完整观看2021|