|
Altium Designer畫的基于L297A+L298N芯片步進電機驅動模塊的電路原理圖和PCB圖如下:(51hei附件中可下載工程文件)
0.png (66.53 KB, 下載次數: 108)
下載附件
2018-2-20 20:33 上傳
0.png (95.42 KB, 下載次數: 87)
下載附件
2018-2-20 20:34 上傳
資料包:
0.png (49.42 KB, 下載次數: 75)
下載附件
2018-2-20 20:34 上傳
驅動模塊的實物圖:
ALIM690.JPG (101.79 KB, 下載次數: 82)
下載附件
2018-2-19 02:52 上傳
接上步進電機后的圖片:
ALIM6900.JPG (87.3 KB, 下載次數: 71)
下載附件
2018-2-19 02:52 上傳
L297是步進電機專用控制器,它能產生4相控制信號, 可用于計算機控制的兩相雙極和四相單相步進電機,能夠用單四拍、雙四拍、四相八拍方式 控制步進電機。芯片內的PWM 斬波器電路可開關模式下調節步進電機繞組中的電流。
L298N 是一種雙H橋電機驅動芯片,其中每個H橋可以提供2A的電流,功率部分的供電電壓范圍是2.5-48v,邏輯部分5v供電,接受5vTTL電平。一般情況下,功率部分的電壓應大于6V否則芯片可能不能正常工作。
步進電機的控制實例
步進電機是數字控制電機,它將脈沖信號轉變成角位移,即給一個脈沖信號,步進電機就轉動一個角度,因此非常適合于單片機控制。步進電機可分為反應式步進電機(簡稱VR)、永磁式步進電機(簡稱PM)和混合式步進電機(簡稱HB)。
0.png (15.35 KB, 下載次數: 90)
下載附件
2018-2-20 20:30 上傳
控制器標注說明圖.jpg (109.43 KB, 下載次數: 77)
下載附件
2018-2-19 02:52 上傳
驅動模塊的接線圖:
兩相電機接線圖.jpg (86.71 KB, 下載次數: 74)
下載附件
2018-2-19 02:52 上傳
四相電機接線圖.jpg (90.02 KB, 下載次數: 67)
下載附件
2018-2-19 02:52 上傳
調試程序說明接線圖.jpg (97.69 KB, 下載次數: 79)
下載附件
2018-2-19 02:52 上傳
此板子有如下配套的單片機驅動程序:
001、正轉程序
002、反轉程序
003、工作方式改變程序
004、按鍵控制正反轉程序
005、按鍵控制啟動停止轉程序
006、調試程序
007、正轉_反轉_加速_減速_高速
008、正轉_反轉_按下轉松開停止
009、電機正轉5轉,停3秒,再反轉7轉,停止,依次循環
010、設定轉的圈數
011、按下正轉正轉90度,然后再按反轉,回原位
012、按下啟動鍵,正轉100步,再反轉100步
- /********************************************************
- 實現功能:按下啟動鍵,正轉100步,再反轉100步
- 使用芯片:AT89S52
- 晶振:11.0592MHZ
- 編譯環境:Keil
- 【聲明】此程序僅用于學習與參考,引用請注明版權和作者信息!
- ********************************************************/
- #include<reg52.h> //庫文件
- #define uchar unsigned char //字符型宏定義
- #define uint unsigned int //整型宏定義
- uint cnt=0; //設定轉動脈沖數值
- /********************************************************
- 控制位定義
- ********************************************************/
- sbit shi_neng=P1^0; // 使能控制位
- sbit fang_shi=P1^1; // 工作方式控制位
- sbit fang_xiang=P1^2;// 旋轉方向控制位
- sbit mai_chong=P1^3; // 脈沖控制位
- sbit qi_dong=P2^0;//啟動按鍵
- sbit ting_zhi=P2^1;//停止按鍵
- /********************************************************************
- 時間延時函數
- *********************************************************************/
- void Tdelay(uchar i)//延時程序
- {
- uchar m,n,s;
- for(m=i;m>0;m--)
- for(n=20;n>0;n--)
- for(s=248;s>0;s--);
- }
- /********************************************************
- 脈沖延時函數
- ********************************************************/
- void Mdelay(uint y)//延時函數
- {
- uchar j,k;
- for(j=0;j<y;j++)
- for(k=0;k<250;k++);
- }
- /********************************************************
- 主函數
- ********************************************************/
- main()
- {
- shi_neng=0; // 使能控制位
- fang_shi=1; // 工作方式控制
- fang_xiang=1;// 控制方向為正轉
- mai_chong=1; // 脈沖控制位
- cnt=800;
- while(1)
- {
- if(qi_dong==0)
- {
- Mdelay(3);
- while(!qi_dong)
- {
- shi_neng=1;
- fang_xiang=1;
- cnt=400;
- while(cnt--)
- {
- mai_chong=~mai_chong; //輸出時鐘脈沖
- Mdelay(3);
- }
-
- shi_neng=0;
- Tdelay(30);//毫秒
- shi_neng=1;
- fang_xiang=0;
- cnt=400;
- while(cnt--)
- {
- mai_chong=~mai_chong; //輸出時鐘脈沖
- Mdelay(3);
- }
- shi_neng=0;
- Tdelay(20);//毫秒
- }
- }
- }
-
- }
復制代碼
步進電機正轉_反轉_加速_減速_高速的單片機源程序如下:
- ////////////////////////匯誠科技////////////////////
- ///////////////////步進電機調試程序/////////////////
- #include<reg52.h>
- #define uchar unsigned char
- #define uint unsigned int
- uchar Y=10; //初始化速度
- /********************************************************
- 控制位定義
- ********************************************************/
- sbit shi_neng=P1^0; // 使能控制位
- sbit fang_shi=P1^1; // 工作方式控制位
- sbit fang_xiang=P1^2;// 旋轉方向控制位
- sbit mai_chong=P1^3; // 脈沖控制位
- sbit zheng_zhuan=P2^0; // 正轉
- sbit fan_zhuan=P2^1; // 反轉
- sbit jia_su=P2^2; // 加速
- sbit jian_su=P2^3; // 減速
- /********************************************************
- 延時函數
- ********************************************************/
- void delay(uchar i)//延時函數
- {
- uchar j,k;
- for(j=0;j<i;j++)
- for(k=0;k<180;k++);
- }
- /********************************************************
- 加速函數
- ********************************************************/
- void jia()
- {
- Y=Y-1;
- if(Y<=1){Y=1;}//如果速度值小于等于1,值保持不變
- }
- /********************************************************
- 減速函數
- ********************************************************/
- void jian()
- {
- Y=Y+1;
- if(Y>=100){Y=100;}
- }
- /********************************************************
- 主函數
- ********************************************************/
- main()
- {
- shi_neng=1; // 使能控制位
- fang_shi=1; // 工作方式控制位
- fang_xiang=1;// 旋轉方向控制位
- mai_chong=1; // 脈沖控制位
- while(1)
- {
- if(zheng_zhuan==0){fang_xiang=1;}
- if(fan_zhuan==0){fang_xiang=0;}
- if(jia_su==0){delay(10);while(!jia_su);jia();}
- if(jian_su==0){delay(10);while(!jian_su);jian();}
- mai_chong=~mai_chong; //輸出時鐘脈沖
- delay(Y); //延時(括號內數值越小,電機轉動速度越快)
-
- }
- }
復制代碼
【簡要說明】一、尺寸:長88mmX 寬68mmX高35mm
二、主要芯片:AT89S52 單片機、L298NL、298N(支持AT89S52編程)
三、工作電壓:輸入電壓(5V~30V )輸入電壓的大小由被控制電機的額定電壓決定。
四、可驅動直流(5~30V 之間電壓的直流電機或者步進電機)
五、最大輸出電流2A (瞬間峰值電流3A)
六、最大輸出功率25W
七、特點:
1 、具有信號指示
2 、轉速可調
3 、抗干擾能力強
4 、具有續流保護
5 、轉速、轉向、工作方式可根據程序靈活控制
6 、可單獨控制一臺步進電機
7 、根據需要自己編程可以靈活控制步進電機,實現多種功能;
8 、可實現正反轉
9 、采用光電隔離
10 、單片機P3口已用排針引出,可以方便使用者連接控制更多外圍設備。
0.png (12.95 KB, 下載次數: 69)
下載附件
2018-2-20 20:37 上傳
全部資料51hei下載地址:
|
-
-
S52步進電機驅動控制器DXP資料.rar
2018-2-19 02:53 上傳
點擊文件名下載附件
下載積分: 黑幣 -5
180.36 KB, 下載次數: 135, 下載積分: 黑幣 -5
-
-
S52步進電機驅動控制器產品使用手冊.doc
2018-2-19 02:53 上傳
點擊文件名下載附件
下載積分: 黑幣 -5
4.96 MB, 下載次數: 66, 下載積分: 黑幣 -5
-
-
S52步進電機驅動控制器原理圖.doc
2018-2-19 02:53 上傳
點擊文件名下載附件
下載積分: 黑幣 -5
39 KB, 下載次數: 107, 下載積分: 黑幣 -5
-
-
此版配套相應程序.rar
2018-2-19 02:54 上傳
點擊文件名下載附件
下載積分: 黑幣 -5
294.37 KB, 下載次數: 108, 下載積分: 黑幣 -5
-
-
該板調試程序.rar
2018-2-19 02:54 上傳
點擊文件名下載附件
下載積分: 黑幣 -5
26.74 KB, 下載次數: 70, 下載積分: 黑幣 -5
|