汽油發(fā)電機(jī)酒店專用發(fā)電機(jī)型號齊全
突破發(fā)、深入推進(jìn)制造業(yè)結(jié)構(gòu)調(diào)整、積極發(fā)展服務(wù)型制造和生產(chǎn)服務(wù)業(yè)、以及提高制造業(yè)際化發(fā)展水平。其中,對于重點(diǎn)領(lǐng)域可以則主要包含了:機(jī)器人和數(shù)控機(jī)床、航空航天設(shè)備、先進(jìn)軌道交通裝備等方面。展望未來,綠色環(huán)保的第次工業(yè)革命的腳步已經(jīng)來臨,錯(cuò)過前三次革命的中機(jī)械有望在這一次的機(jī)遇中突飛猛進(jìn)。同時(shí),以《中制造2025》為發(fā)展綱要,個(gè)化定制等新的模式也在不斷出現(xiàn),互聯(lián)網(wǎng)有望改變工業(yè)各環(huán)節(jié)的運(yùn)營
18065931931 郭經(jīng)理
步進(jìn)電動機(jī)是一種將電脈沖信號轉(zhuǎn)換成角位移或線位移的機(jī)電元件。步進(jìn)電動機(jī)的輸入量是脈沖序列,輸出量則為相應(yīng)的增量位移或步進(jìn)運(yùn)動。正常運(yùn)動情況下,它每轉(zhuǎn)一周具有固定的步數(shù);做連續(xù)步進(jìn)運(yùn)動時(shí),其旋轉(zhuǎn)轉(zhuǎn)速與輸入脈沖的頻率保持嚴(yán)格的對應(yīng)關(guān)系,不受電壓波動和負(fù)載變化的影響。由于步進(jìn)電動機(jī)能直接接受數(shù)字量的控制,所以特別適宜采用微機(jī)進(jìn)行控制。
該步進(jìn)電機(jī)為一四相步進(jìn)電機(jī),采用單極性直流電源供電。只要對步進(jìn)電機(jī)的各相繞組按合適的時(shí)序通電,就能使步進(jìn)電機(jī)步進(jìn)轉(zhuǎn)動。圖1是該四相反應(yīng)式步進(jìn)電機(jī)工作原理示意圖。
開始時(shí),開關(guān)SB接通電源,SA、SC、SD斷開,B相磁極和轉(zhuǎn)子0、3號齒對齊,同時(shí),轉(zhuǎn)子的1、4號齒就和C、D相繞組磁極產(chǎn)生錯(cuò)齒,2、5號齒就和D、A相繞組磁極產(chǎn)生錯(cuò)齒。當(dāng)開關(guān)SC接通電源,SB、SA、SD斷開時(shí),由于C相繞組的磁力線和1、4號齒之間磁力線的作用,使轉(zhuǎn)子轉(zhuǎn)動,1、4號齒和C相繞組的磁極對齊。
而0、3號齒和A、B相繞組產(chǎn)生錯(cuò)齒,2、5號齒就和A、D相繞組磁極產(chǎn)生錯(cuò)齒。依次類推,A、B、C、D四相繞組輪流供電,則轉(zhuǎn)子會沿著A、B、C、D方向轉(zhuǎn)動。四相步進(jìn)電機(jī)按照通電順序的不同,可分為單四拍、雙四拍、八拍三種工作方式。單四拍與雙四拍的步距角相等,但單四拍的轉(zhuǎn)動力矩小。八拍工作方式的步距角是單四拍與雙四拍的一半,因此,八拍工作方式既可以保持較高的轉(zhuǎn)動力矩又可以提高控制精度。
單四拍、雙四拍與八拍工作方式的電源通電時(shí)序與波形分別如圖2.a、b、c所示:
#include《reg52.h》
//unsigned char IRCOM[]={0x00,0x00,0x00,0x00,0x10,0x10};
unsigned char zhuangtai=0;
unsigned char code F_Rotaion[4]={0x03,0x05,0x0d,0x09};
void delay(uchar delay){
uchar i;
for(delay;delay》0;delay--){
for(i=123;i》0;i--)
}
}
/*
void delay1(int ms)
{
uchar y;
while(ms--)
{
for(y=0;y《250;y )
{
_nop_();
_nop_();
_nop_();
_nop_();
}
}
}
*/
void moto(){
unsigned char i;
for(i=0;i《4;i ){
P0=F_Rotaion[i];
delay(500);
}
}
void nmoto(){
unsigned char i;
for(i=3;i》=0;i--){
P0=F_Rotaion[i];
delay(500);
}
}
void stopmoto(){
P0=0x00;
}
void yunxing(){
if(zhuangtai==0){
stopmoto();
}
else if(zhuangtai==1){
moto();
}
else if(zhuangtai==2){
nmoto();
}
}
void jude(){
if(P3==0xef){
zhuangtai=0;
}
else if(P3==0xdf){
zhuangtai=1;
}
else if(P3==0xbf){
zhuangtai=2;
}
}
main(){
/*
IE=0x81;
TCON=0x01;
*/
P1=0x00;
P3=0xff;
jude();
yunxing();
}
/*void IR_IN()interrupt 0
{
uchar j,k,N=0;
EX0=0;
delay(15);
if(IRIN==1)
{
EX0 =1;
return;
}
while(!IRIN)
delay(1);
for(j=0;j《4;j )
{
for(k=0;k《8;k )
{
while(IRIN)
delay(1);
while(!IRIN)
delay(1);
while(IRIN)
{
delay(1);
N ;
if(N》=30)
{
EX0=1;
return;
}
}
IRCOM[j]=IRCOM[j]》》1;
if(N》=8)
IRCOM[j] = IRCOM[j] | 0x80;}
N=0;
}
if(IRCOM[2]!=~IRCOM[3])
{
EX0=1;
return;
}
if(IRCOM[0]!=0x00)
{
EX0=1;
return;
}
IRCOM[4]=IRCOM[2]&0x0F;
IRCOM[5]=IRCOM[2]》》4;
play();
beep();
EX0=1;
}