久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费

標(biāo)題: 電機(jī)調(diào)唆程序 [打印本頁]

作者: lifeng420922    時(shí)間: 2016-8-25 17:41
標(biāo)題: 電機(jī)調(diào)唆程序
基于labviewPWM電機(jī)調(diào)速
一、簡(jiǎn)介:
    此設(shè)計(jì)模擬工業(yè)控制現(xiàn)場(chǎng),通過調(diào)節(jié)Labview界面中的模擬儀表,通過RS232串口通信,把轉(zhuǎn)速控制信息通過串口傳送到單片機(jī)中,進(jìn)而利用單片機(jī)控制電動(dòng)機(jī)的轉(zhuǎn)速。
二、Labview前面板設(shè)計(jì):
1.左部分為通訊端口、波特率、數(shù)據(jù)位、奇偶校驗(yàn)位、停止位、延時(shí)等選擇端口。
2.中間為所調(diào)電壓的PWM波形,圖中藍(lán)綠色所示。
3.右部分顯示的是等效電壓的大小,圖中所示為2.35V。
4.下半部分為調(diào)節(jié)電壓的儀表和確定按鈕,當(dāng)調(diào)節(jié)好電壓,按下確定鍵后方能調(diào)節(jié)電機(jī)轉(zhuǎn)速。
三、Labview程序框圖:
1.     串口通訊部分:
2.PWM電壓波形顯示部分:
四、硬件設(shè)計(jì):
單片機(jī)IO端口的電流太小,不足以驅(qū)動(dòng)直流電機(jī);本設(shè)計(jì)通過I0端口外接ULN2003AN驅(qū)動(dòng)直流電動(dòng)機(jī)。
五、單片機(jī)部分程序:
/*********************************************關(guān)于頻率和占空比的確定,對(duì)于12M晶振,假定PWM輸出頻率為1KHZ,這樣定時(shí)中斷次數(shù) *
*設(shè)定為C=10,即0.01MS中斷一次,則TH0=FF,TL0=F6;由于設(shè)定中斷時(shí)間為0.01ms,這樣*
*可以設(shè)定占空比可從1-100變化。即0.01ms*100=1ms                              
******************************************************************************/
#include<reg52.h>  //52單片機(jī)頭文件
#include <intrins.h> //包含有左右循環(huán)移位子函數(shù)的庫
#define uint unsigned int    //宏定義
#define uchar unsigned char  //宏定義
#define V_TH0  0XFF                  
#define V_TL0  0XF6
uchar ZKB1;
sbit P1_2=P1^2;
void init_sys(void);            /*系統(tǒng)初始化函數(shù)*/   
void main()             //主函數(shù)
{
        init_sys();
         while(1)
      {
       /*對(duì)占空比值限定范圍*/
       if (ZKB1>99) ZKB1=1;
       if (ZKB1<1) ZKB1=99;
      }
}
void timer0(void) interrupt 1 using 2
{
       static uchar click=0;                  /*中斷次數(shù)計(jì)數(shù)器變量*/
       TH0=V_TH0;                                    /*恢復(fù)定時(shí)器初始值*/
       TL0=V_TL0;
       ++click;
       if (click>=100) click=0;
       if (click<=ZKB1)      /*當(dāng)小于占空比值時(shí)輸出低電平,高于時(shí)是高電平,從而實(shí)現(xiàn)占空比的調(diào)整*/
            P1_2=1;
     else
            P1_2=0;
}
void ser() interrupt 4
{
       RI=0;
       ZKB1=SBUF;
}
     /*系統(tǒng)初始化函數(shù)*/
void init_sys()
{
       ZKB1=40;
       TMOD=0x21;//設(shè)置定時(shí)器0工作方式1,定時(shí)器1為工作方式2      
    TH0=V_TH0; //定時(shí)0.01s
    TL0=V_TL0;   
       TH1=0xF3; //波特率2400
       TL1=0xF3;
    REN=1; //允許串口接收數(shù)據(jù)
       SM0=0;//串口工作方式1,8位數(shù)據(jù)傳送
       SM1=1;
       EA=1;//開總中斷     
       ES=1; //串口中斷開
       PS=1;    //串口中斷優(yōu)先級(jí)最高
       ET0=1;//開定時(shí)器0中斷            
       TR1=1; //開波特率
       TR0=1;//啟動(dòng)定時(shí)器0   
}
基于labview的PWM電機(jī)調(diào)速
一、簡(jiǎn)介:
    此設(shè)計(jì)模擬工業(yè)控制現(xiàn)場(chǎng),通過調(diào)節(jié)Labview界面中的模擬儀表,通過RS232串口通信,把轉(zhuǎn)速控制信息通過串口傳送到單片機(jī)中,進(jìn)而利用單片機(jī)控制電動(dòng)機(jī)的轉(zhuǎn)速。
二、Labview前面板設(shè)計(jì):
1.左部分為通訊端口、波特率、數(shù)據(jù)位、奇偶校驗(yàn)位、停止位、延時(shí)等選擇端口。
2.中間為所調(diào)電壓的PWM波形,圖中藍(lán)綠色所示。
3.右部分顯示的是等效電壓的大小,圖中所示為2.35V。
4.下半部分為調(diào)節(jié)電壓的儀表和確定按鈕,當(dāng)調(diào)節(jié)好電壓,按下確定鍵后方能調(diào)節(jié)電機(jī)轉(zhuǎn)速。
三、Labview程序框圖:
1.     串口通訊部分:
2.PWM電壓波形顯示部分:
四、硬件設(shè)計(jì):
單片機(jī)IO端口的電流太小,不足以驅(qū)動(dòng)直流電機(jī);本設(shè)計(jì)通過I0端口外接ULN2003AN驅(qū)動(dòng)直流電動(dòng)機(jī)。
五、單片機(jī)部分程序:
/*********************************************關(guān)于頻率和占空比的確定,對(duì)于12M晶振,假定PWM輸出頻率為1KHZ,這樣定時(shí)中斷次數(shù) *
*設(shè)定為C=10,即0.01MS中斷一次,則TH0=FF,TL0=F6;由于設(shè)定中斷時(shí)間為0.01ms,這樣*
*可以設(shè)定占空比可從1-100變化。即0.01ms*100=1ms                              
******************************************************************************/
#include<reg52.h>  //52單片機(jī)頭文件
#include <intrins.h> //包含有左右循環(huán)移位子函數(shù)的庫
#define uint unsigned int    //宏定義
#define uchar unsigned char  //宏定義
#define V_TH0  0XFF                  
#define V_TL0  0XF6
uchar ZKB1;
sbit P1_2=P1^2;
void init_sys(void);            /*系統(tǒng)初始化函數(shù)*/   
void main()             //主函數(shù)
{
        init_sys();
         while(1)
      {
       /*對(duì)占空比值限定范圍*/
       if (ZKB1>99) ZKB1=1;
       if (ZKB1<1) ZKB1=99;
      }
}
void timer0(void) interrupt 1 using 2
{
       static uchar click=0;                  /*中斷次數(shù)計(jì)數(shù)器變量*/
       TH0=V_TH0;                                    /*恢復(fù)定時(shí)器初始值*/
       TL0=V_TL0;
       ++click;
       if (click>=100) click=0;
       if (click<=ZKB1)      /*當(dāng)小于占空比值時(shí)輸出低電平,高于時(shí)是高電平,從而實(shí)現(xiàn)占空比的調(diào)整*/
            P1_2=1;
     else
            P1_2=0;
}
void ser() interrupt 4
{
       RI=0;
       ZKB1=SBUF;
}
     /*系統(tǒng)初始化函數(shù)*/
void init_sys()
{
       ZKB1=40;
       TMOD=0x21;//設(shè)置定時(shí)器0工作方式1,定時(shí)器1為工作方式2      
    TH0=V_TH0; //定時(shí)0.01s
    TL0=V_TL0;   
       TH1=0xF3; //波特率2400
       TL1=0xF3;
    REN=1; //允許串口接收數(shù)據(jù)
       SM0=0;//串口工作方式1,8位數(shù)據(jù)傳送
       SM1=1;
       EA=1;//開總中斷     
       ES=1; //串口中斷開
       PS=1;    //串口中斷優(yōu)先級(jí)最高
       ET0=1;//開定時(shí)器0中斷            
       TR1=1; //開波特率
       TR0=1;//啟動(dòng)定時(shí)器0   
}





歡迎光臨 (http://m.zg4o1577.cn/bbs/) Powered by Discuz! X3.1
主站蜘蛛池模板: 亚洲人高潮女人毛茸茸 | 99在线观看视频 | 精品国产伦一区二区三区 | 亚洲成人av| 亚洲精品一二三四 | 亚洲视频一区二区三区 | 国产片一区二区 | 日本不卡在线视频 | 久久精品欧美一区二区三区不卡 | 精品国产乱码久久久久久蜜柚 | 天天爽天天操 | 日韩高清中文字幕 | 国产视频一区二区在线 | 日韩黄色大片 | 久久精品国产免费 | 亚洲福利专区 | 亚洲欧美视频 | 欧美在线视频一区 | 伊人久久网站 | 在线播放亚洲 | 日皮视频在线观看 | 一区二区在线看 | 国产一区在线观看视频 | 国产小视频在线 | 久操视频在线观看 | 夜夜操天天干 | 免费的av | 青青草福利视频 | 亚洲国产小视频 | 人人澡人人爽 | 成人在线小视频 | 手机福利视频 | 伦一理一级一a一片 | 少妇一级淫片免费看 | 午夜欧美 | 成人免费视频一区二区 | 久久精品日韩 | 国产一区二区在线播放 | 中文字幕免费在线看线人动作大片 | 国产黄色三级 | 亚洲小视频在线观看 |