資料介紹
描述
我決定為所有單極步進(jìn)電機(jī)創(chuàng)建一個(gè)通用的 arduino 庫。最后,該電路建議使用UNL2003A芯片——廣泛用于控制單極步進(jìn)電機(jī)。
要在您的 arduino sketch 中使用這個(gè)庫,只需將Uni_polar_Stepper文件夾復(fù)制到 arduino 庫文件夾的根目錄中,例如C:\arduino-1.6.7\libraries
庫函數(shù)說明:
1) Uni_polar_Stepper(int pin1, int pin2, int pin3, int pin4) -這將在帶有步進(jìn)電機(jī)驅(qū)動(dòng)器引腳的 arduino 草圖中創(chuàng)建一個(gè) Uni_polar_Stepper 實(shí)例。意味著必須指定用于驅(qū)動(dòng)步進(jìn)電機(jī)的 arduino 板引腳
2) set_step_per_rev(int steps) -此函數(shù)將設(shè)置步進(jìn)電機(jī)完成 1 轉(zhuǎn)所需的步數(shù)。表示它將設(shè)置電機(jī)的步進(jìn)角(步進(jìn)分辨率)。必須輸入電機(jī)的步距角才能準(zhǔn)確控制
3) set_RPM(int rpm) –此函數(shù)將以 RPM 為單位設(shè)置電機(jī)速度,電機(jī)將以相同速度旋轉(zhuǎn),精度高達(dá) 95%
4) rotate_CW() -此函數(shù)將開始順時(shí)針旋轉(zhuǎn)電機(jī)。要連續(xù)順時(shí)針旋轉(zhuǎn)電機(jī),必須在連續(xù)循環(huán)中使用此功能
5) rotate_CCW() -此函數(shù)將開始逆時(shí)針旋轉(zhuǎn)電機(jī)。要連續(xù)逆時(shí)針旋轉(zhuǎn)電機(jī),必須在連續(xù)循環(huán)中使用此功能
6) rotate(int dir) -此函數(shù)將按照選定的方向旋轉(zhuǎn)電機(jī)。如果給定方向?yàn)?1,則電機(jī)將順時(shí)針旋轉(zhuǎn),反之亦然
7) rotate_one_rev(int dir) -此函數(shù)將在選定方向上將電機(jī)精確旋轉(zhuǎn) 1 圈
8) rotate_n_rev(int dir, int num) -此函數(shù)將在選定方向上旋轉(zhuǎn)電機(jī)所需的轉(zhuǎn)數(shù)
9) rotate_x_deg(int deg) –此函數(shù)將電機(jī)旋轉(zhuǎn)到所需角度,從 0 – 360o 向任一方向旋轉(zhuǎn),角度精度為 80 – 100%
例子:
1) 以 60 RPM 的速度沿任一方向連續(xù)旋轉(zhuǎn)電機(jī)
/*這個(gè)程序會(huì)連續(xù)旋轉(zhuǎn)4相單極步進(jìn)電機(jī)
* 60 RPM 時(shí)步距角為 1.8 度(200 步/轉(zhuǎn))
* 由 Ashutosh Bhatt 于 2016 年 12 月 10 日創(chuàng)建
*/
#include
#define steps 200 // 根據(jù)電機(jī)更改此步驟
Uni_polar_Stepper my_step_motor(8, 9, 10, 11);
內(nèi)部轉(zhuǎn)數(shù)=60;
voidsetup()
{
// 將你的設(shè)置代碼放在這里,運(yùn)行一次:
序列號(hào).begin(9600);
Serial.println("單極步進(jìn)電機(jī)庫測(cè)試程序");
my_step_motor.set_step_per_rev(步驟);
my_step_motor.set_RPM(rpm);
Serial.println("電機(jī)順時(shí)針旋轉(zhuǎn)");
}
無效循環(huán)()
{
my_step_motor.rotate_CW();
}
2) 連續(xù)順時(shí)針旋轉(zhuǎn)一圈,逆時(shí)針旋轉(zhuǎn)一圈
/*此程序?qū)⑿D(zhuǎn) 4 相單極步進(jìn)電機(jī)
* 7.5 度步距角(48 步/轉(zhuǎn))
* 順時(shí)針旋轉(zhuǎn) 1 圈 (CW) 和旋轉(zhuǎn) 1 圈
* 連續(xù)逆時(shí)針 (CCW) 30 RPM
* 由 Ashutosh Bhatt 于 2016 年 12 月 10 日創(chuàng)建
*/
#include
#定義步驟 48
Uni_polar_Stepper my_step_motor(8, 9, 10, 11);
內(nèi)部轉(zhuǎn)數(shù) = 30;
無效設(shè)置()
{
// 將你的設(shè)置代碼放在這里,運(yùn)行一次:
序列號(hào).begin(9600);
Serial.println("Ashutosh Bhatt 創(chuàng)建的單極步進(jìn)電機(jī)庫測(cè)試程序");
my_step_motor.set_step_per_rev(步驟);
my_step_motor.set_RPM(rpm);
}
無效循環(huán)()
{
Serial.println("電機(jī)順時(shí)針旋轉(zhuǎn)");
my_step_motor.rotate_one_rev(1);
延遲(1000);
Serial.println("電機(jī)逆時(shí)針旋轉(zhuǎn)");
my_step_motor.rotate_one_rev(0);
延遲(1000);
}
3) 連續(xù)以 100 RPM 順時(shí)針旋轉(zhuǎn)電機(jī),以 50 RPM 逆時(shí)針旋轉(zhuǎn)電機(jī)
/*這個(gè)程序首先會(huì)旋轉(zhuǎn)4相單極步進(jìn)電機(jī)
* 7.5 度步距角(48 步/轉(zhuǎn))
* 順時(shí)針 (CW) 以 100 RPM 旋轉(zhuǎn)幾圈,然后
* 逆時(shí)針 (CCW) 以 50 RPM 進(jìn)行一些旋轉(zhuǎn)
*連續(xù)
* 由 Ashutosh Bhatt 于 2016 年 12 月 10 日創(chuàng)建
*/
#include
#定義步驟 48
Uni_polar_Stepper my_step_motor(2, 3, 4, 5);
詮釋我;
無效設(shè)置()
{
序列號(hào).begin(9600);
Serial.println("Ashutosh Bhatt 創(chuàng)建的單極步進(jìn)電機(jī)庫測(cè)試程序");
my_step_motor.set_step_per_rev(步驟);
}
無效循環(huán)()
{
my_step_motor.set_RPM(100);
對(duì)于(i=0;i<100;i++)my_step_motor.rotate(1);
延遲(2000);
my_step_motor.set_RPM(50);
對(duì)于(i=0;i<100;i++)my_step_motor.rotate(0);
延遲(2000);
}
4) 以 20 RPM 的速度順時(shí)針旋轉(zhuǎn) 4 圈,以 10 RPM 的速度逆時(shí)針旋轉(zhuǎn) 2 圈。
/*這個(gè)程序首先會(huì)旋轉(zhuǎn)4相單極步進(jìn)電機(jī)
* 步距角為 1.8 度(200 步/轉(zhuǎn))
* 以 20 RPM 順時(shí)針 (CW) 旋轉(zhuǎn) 4 圈,然后
* 10 RPM 時(shí)逆時(shí)針 (CCW) 旋轉(zhuǎn) 2 圈
*連續(xù)
* 由 Ashutosh Bhatt 于 2016 年 12 月 10 日創(chuàng)建
*/
#include
#定義步驟 200
Uni_polar_Stepper my_step_motor(2, 3, 4, 5);
詮釋我;
無效設(shè)置()
{
序列號(hào).begin(9600);
Serial.println("Ashutosh Bhatt 創(chuàng)建的單極步進(jìn)電機(jī)庫測(cè)試程序");
my_step_motor.set_step_per_rev(步驟);
}
無效循環(huán)()
{
my_step_motor.set_RPM(20);
my_step_motor.rotate_n_rev(1, 4);
延遲(2000);
my_step_motor.set_RPM(10);
my_step_motor.rotate_n_rev(0, 2);
延遲(2000);
}
5) 以 30 RPM 的速度連續(xù)順時(shí)針旋轉(zhuǎn) 90o 和逆時(shí)針旋轉(zhuǎn) 90o
/*此程序?qū)⑿D(zhuǎn) 4 相單極電機(jī)
* 1.8 度步距角(200 步/轉(zhuǎn))在 30 RPM 至
* 連續(xù) 90 度順時(shí)針和 90 度逆時(shí)針
* 由 Ashutosh Bhatt 于 2016 年 10 月 22 日創(chuàng)建
*/
#include
# 定義 motor_steps 200
Uni_polar_Stepper my_step_motor(8, 9, 10, 11);
內(nèi)部轉(zhuǎn)數(shù) = 30;
無效設(shè)置()
{
// 將你的設(shè)置代碼放在這里,運(yùn)行一次:
序列號(hào).begin(9600);
Serial.println("單極步進(jìn)電機(jī)庫測(cè)試程序");
my_step_motor.set_step_per_rev(motor_steps);
my_step_motor.set_RPM(rpm);
Serial.println("電機(jī)來回旋轉(zhuǎn)90度");
}
無效循環(huán)()
{
my_step_motor.rotate_x_deg(90);
延遲(2000);
my_step_motor.rotate_x_deg(270);
延遲(2000);
}
?
- 步進(jìn)電機(jī)的加減速控制
- 單極步進(jìn)電機(jī)控制
- 基于51單片機(jī)的步進(jìn)電機(jī)控制程序 71次下載
- 基于DSP的步進(jìn)電機(jī)速度控制系統(tǒng) 29次下載
- 基于PLC步進(jìn)電機(jī)控制系統(tǒng)的設(shè)計(jì) 108次下載
- 步進(jìn)電機(jī)控制說明 10次下載
- 一種PLC控制步進(jìn)電機(jī)的分度算法 8次下載
- 使用dsPIC DSC實(shí)現(xiàn)步進(jìn)電機(jī)的控制 13次下載
- 如何使用FPGA實(shí)現(xiàn)步進(jìn)電機(jī)控制器 27次下載
- 步進(jìn)電機(jī)的基礎(chǔ)知識(shí)和使用51單片機(jī)控制步進(jìn)電機(jī)的程序免費(fèi)下載
- 步進(jìn)電機(jī)的簡介和步進(jìn)電機(jī)的驅(qū)動(dòng)方式及代碼免費(fèi)下載
- 使用dsPIC? DSC實(shí)現(xiàn)步進(jìn)電機(jī)的控制 15次下載
- 步進(jìn)電機(jī)的工作原理 84次下載
- 步進(jìn)電機(jī)控制 54次下載
- 步進(jìn)電機(jī)程序控制原理
- 步進(jìn)電機(jī)的控制原理與應(yīng)用實(shí)例 455次閱讀
- 步進(jìn)電機(jī)控制器電路圖 步進(jìn)電機(jī)控制器的分類及其特點(diǎn) 1578次閱讀
- 什么是步進(jìn)電機(jī)控制器?步進(jìn)電機(jī)控制器電路圖 775次閱讀
- 步進(jìn)電機(jī)控制系統(tǒng)是什么意思 542次閱讀
- 雙極性步進(jìn)電機(jī)的結(jié)構(gòu)與控制模式 326次閱讀
- 單極步進(jìn)電機(jī)驅(qū)動(dòng)器的電路設(shè)計(jì) 2852次閱讀
- 什么是步進(jìn)電機(jī)?步進(jìn)電機(jī)單極和雙極的區(qū)別 1.4w次閱讀
- 步進(jìn)電機(jī)控制器與伺服電機(jī)控制器的區(qū)別 8420次閱讀
- 步進(jìn)電機(jī)如何控制速度 1.5w次閱讀
- 步進(jìn)電機(jī)控制器原理_步進(jìn)電機(jī)控制器編程實(shí)例 1.6w次閱讀
- 步進(jìn)電機(jī)類型及其辨別 5854次閱讀
- 什么是步進(jìn)電機(jī)?步進(jìn)電機(jī)的特點(diǎn),分類與原理! 3.7w次閱讀
- 伺服電機(jī)與步進(jìn)電機(jī)控制的區(qū)別詳解 1.9w次閱讀
- 步進(jìn)電機(jī)控制系統(tǒng)的設(shè)計(jì)及應(yīng)用案例 1.4w次閱讀
- 單片機(jī)控制步進(jìn)電機(jī)的原理 8.4w次閱讀
下載排行
本周
- 1山景DSP芯片AP8248A2數(shù)據(jù)手冊(cè)
- 1.06 MB | 532次下載 | 免費(fèi)
- 2RK3399完整板原理圖(支持平板,盒子VR)
- 3.28 MB | 339次下載 | 免費(fèi)
- 3TC358743XBG評(píng)估板參考手冊(cè)
- 1.36 MB | 330次下載 | 免費(fèi)
- 4DFM軟件使用教程
- 0.84 MB | 295次下載 | 免費(fèi)
- 5元宇宙深度解析—未來的未來-風(fēng)口還是泡沫
- 6.40 MB | 227次下載 | 免費(fèi)
- 6迪文DGUS開發(fā)指南
- 31.67 MB | 194次下載 | 免費(fèi)
- 7元宇宙底層硬件系列報(bào)告
- 13.42 MB | 182次下載 | 免費(fèi)
- 8FP5207XR-G1中文應(yīng)用手冊(cè)
- 1.09 MB | 178次下載 | 免費(fèi)
本月
- 1OrCAD10.5下載OrCAD10.5中文版軟件
- 0.00 MB | 234315次下載 | 免費(fèi)
- 2555集成電路應(yīng)用800例(新編版)
- 0.00 MB | 33566次下載 | 免費(fèi)
- 3接口電路圖大全
- 未知 | 30323次下載 | 免費(fèi)
- 4開關(guān)電源設(shè)計(jì)實(shí)例指南
- 未知 | 21549次下載 | 免費(fèi)
- 5電氣工程師手冊(cè)免費(fèi)下載(新編第二版pdf電子書)
- 0.00 MB | 15349次下載 | 免費(fèi)
- 6數(shù)字電路基礎(chǔ)pdf(下載)
- 未知 | 13750次下載 | 免費(fèi)
- 7電子制作實(shí)例集錦 下載
- 未知 | 8113次下載 | 免費(fèi)
- 8《LED驅(qū)動(dòng)電路設(shè)計(jì)》 溫德爾著
- 0.00 MB | 6656次下載 | 免費(fèi)
總榜
- 1matlab軟件下載入口
- 未知 | 935054次下載 | 免費(fèi)
- 2protel99se軟件下載(可英文版轉(zhuǎn)中文版)
- 78.1 MB | 537798次下載 | 免費(fèi)
- 3MATLAB 7.1 下載 (含軟件介紹)
- 未知 | 420027次下載 | 免費(fèi)
- 4OrCAD10.5下載OrCAD10.5中文版軟件
- 0.00 MB | 234315次下載 | 免費(fèi)
- 5Altium DXP2002下載入口
- 未知 | 233046次下載 | 免費(fèi)
- 6電路仿真軟件multisim 10.0免費(fèi)下載
- 340992 | 191187次下載 | 免費(fèi)
- 7十天學(xué)會(huì)AVR單片機(jī)與C語言視頻教程 下載
- 158M | 183279次下載 | 免費(fèi)
- 8proe5.0野火版下載(中文版免費(fèi)下載)
- 未知 | 138040次下載 | 免費(fèi)
評(píng)論
查看更多